sscanf funktioniert nicht richtig -> Ban?

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
  • Hallo, immer wenn ich /ban SPIELER GRUND eingebe, wird der Spieler nicht gebannt und er returnt ab den sscanf Code.
    ocmd:ban(playerid,params[])
    {
    if(GetPVarInt(playerid,"Online") == 0)return SendClientMessage(playerid,COLOR_GRAU,"Du bist nicht eingeloggt und kannst diesen Befehl nicht verwenden.");
    new pID,string[256],reason[31];
    if(!isPlayerAnAdmin(playerid,3))return SendClientMessage(playerid,COLOR_GRAU,"Du hast nicht die benötigten Rechte für diesen Befehl.");
    if(GetPVarInt(playerid,"Adminduty") == 0)return SendClientMessage(playerid,COLOR_GRAU,"Du bist nicht im Admindienst.");
    if(sscanf(params,"us[31]",pID,reason))return SendClientMessage(playerid,COLOR_GRAU,"Benutzung: /ban [ID/Name][Grund]");
    if(!IsPlayerConnected(pID))return SendClientMessage(playerid,COLOR_GRAU,"Der angegebene Spieler ist nicht online.");
    if(playerid != pID)
    {
    if(GetPVarInt(pID,"Adminrang") > GetPVarInt(playerid,"Adminrang"))return SendClientMessage(playerid,COLOR_GRAU,"Du kannst kein ranghöheres Teammitglieder bannen.");
    }
    format(string,sizeof(string),"Teammitglied %s hat den Spieler %s gebannt, Grund: %s",SpielerName(playerid),SpielerName(pID),reason);
    SendClientMessageToAll(COLOR_ROT,string);
    TogglePlayerControllable(playerid,0);
    SetPVarInt(pID,"Gebannt",1);
    Kick(pID);
    return 1;
    }


    Gruß