was ist hier falsch ?

Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • ocmd:su(playerid,params[])
    {
    if(!isPlayerInFrakt(playerid,1))return SendClientMessage(playerid,GRAU,"Du bist kein Polizist!");
    new pID,Wantedlevel,reason[128],Nachricht[128];
    if(sscanf(params,"ud",pID,Wantedlevel,reason))return SendClientMessage(playerid,GELB,"/su [id] [Wanted] [Grund]");
    if(Wantedlevel<1||Wantedlevel<6)return SendClientMessage(playerid,GRAU,"Gebe bitte eine gültige Wantedzahl ein");
    SetPVarInt(pID,"Wanted",Wantedlevel ++);
    format(Nachricht,sizeof(Nachricht),"**Du hast von Officer %s wanteds bekommen **Grund:%s",SpielerName(playerid),reason);
    SendClientMessage(pID,GELB,Nachricht);
    SetPlayerWantedLevel(playerid,Wantedlevel ++);
    return 1;
    }


    also mein /su sys. was ist falsch ? was fehlt
    Danke im Voraus
    denn wenn ich /su [id] [Grund] mache dann bekomm ich die wanteds -.-

    -Ted.

    Einmal editiert, zuletzt von Ted. ()

  • ocmd:su(playerid, params[])
    {
    new giveplayerid, reason[128], wanted, string[256];
    if(isPlayerInFrakt(playerid,1))
    {
    if(sscanf(params, "uus[128]", giveplayerid, wanted, reason)) return SendClientMessage(playerid, COLOR_GREY,"Info: /su [playerid/name] [Wanted] [Grund]");
    else if(giveplayerid == INVALID_PLAYER_ID) return SendClientMessage(playerid, COLOR_LIGHTRED,"SERVER: Kein aktiver Spieler!");
    else if(IsPlayerNPC(giveplayerid)) return SendClientMessage(playerid, COLOR_LIGHTRED,"SERVER: Bei einem NPC nicht möglich!");
    else
    {
    format(string, sizeof(string), "** Du hast von Officer %s Wanted erhalten: %d, Grund: %s ", GetName(giveplayerid), wanted, reason);
    SendClientMessage(giveplayerid, GELB, string);
    new wps = GetPlayerWantedLevel(giveplayerid);
    SetPlayerWantedLevel(giveplayerid, wps + wanted);
    }
    }
    else return SendClientMessage(playerid, COLOR_LIGHTRED, "{FF003F}SERVER: {FFFFFF}Du darfst diesen Befehl nicht benutzen!");
    return 1;
    }

  • Das ist ebenfalls nicht richtig,Bibaboring.
    ""uus[128]""
    Das zweite u ist definitiv nicht richtig ;).


    Mal vom Ausgangscode ausgehen:
    ocmd:su(playerid,params[])
    {
    if(!isPlayerInFrakt(playerid,1))return SendClientMessage(playerid,GRAU,"Du bist kein Polizist!");
    new pID,Wantedlevel,reason[128],Nachricht[128];
    if(sscanf(params,"ud",pID,Wantedlevel,reason))return SendClientMessage(playerid,GELB,"/su [id] [Wanted] [Grund]");
    // die sscanf Zeile ist nicht korrekt.
    // du willst 3 Eingabewert ( ID , Wanted , Grund ) , lässt aber nur nach 2 suchen ( u [ pID ] , d [ Wantedlevel ] ). Es fehlt noch ein s für den Grund ( reason).
    if(Wantedlevel<1||Wantedlevel<6)return SendClientMessage(playerid,GRAU,"Gebe bitte eine gültige Wantedzahl ein");
    // Die if Abfrage ist auch nicht richtig.
    // Der zweite Teil müsste Wantedlevel > 6 sein. Denn wenn Wantedlevel < 1 ist,ist es auch < 6
    SetPVarInt(pID,"Wanted",Wantedlevel ++);
    // **
    // Was du dort hast,würde WantedLevel immer nur um 1 erhöhen.
    // Du solltest erst per GetPVarInt den aktuellen "Wanted" Wert abfragen und dann um Wantedlevel erhöhen
    format(Nachricht,sizeof(Nachricht),"**Du hast von Officer %s wanteds bekommen **Grund:%s",SpielerName(playerid),reason);
    SendClientMessage(pID,GELB,Nachricht);
    // Hier wie bei **
    // Nur via GetPlayerWantedLevel abfragen.
    SetPlayerWantedLevel(playerid,Wantedlevel ++);
    return 1;
    }

  • Huch, ist mir garnicht aufgefallen.


    ocmd:su(playerid, params[])
    {
    new giveplayerid, reason[128], wanted, string[256];
    if(PlayerInfo[playerid][pAdmin] >= 3)
    {
    if(sscanf(params, "uds[128]", giveplayerid, wanted, reason)) return SendClientMessage(playerid, COLOR_GREY,"Info: /su [playerid/name] [Wanted] [Grund]");
    else if(giveplayerid == INVALID_PLAYER_ID) return SendClientMessage(playerid, COLOR_LIGHTRED,"SERVER: Kein aktiver Spieler!");
    else if(IsPlayerNPC(giveplayerid)) return SendClientMessage(playerid, COLOR_LIGHTRED,"SERVER: Bei einem NPC nicht möglich!");
    else
    {
    format(string, sizeof(string), "** Du hast von Officer %s Wanted erhalten: %d, Grund: %s ", GetName(giveplayerid), wanted, reason);
    SendClientMessage(giveplayerid, COLOR_LIGHTRED, string);
    new wps = GetPlayerWantedLevel(giveplayerid);
    SetPlayerWantedLevel(giveplayerid, wps + wanted);
    }
    }
    else return SendClientMessage(playerid, COLOR_LIGHTRED, "{FF003F}SERVER: {FFFFFF}Du darfst diesen Befehl nicht benutzen!");
    return 1;
    }