/kick System funktioniert nicht

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
  • Ich weiß nicht wo der Fehler liegt aber es Funzt einfach nicht:
    ocmd:kick(playerid,params[])
    {
    if(!isPlayerAnAdmin(playerid,2))return SendClientMessage(playerid,ROT,"Du bist kein Admin.");
    new pID, reason[128],string[128];
    if(sscanf(params,"us",pID,reason))return SendClientMessage(playerid,BLAU,"/kick [id] [grund]");
    format(string,sizeof(string),"AdmCmd: %s wurde von %s gekickt. Grund: %s",SpielerName(pID),SpielerName(playerid),reason);
    SendClientMessageToAll(ROT,string);
    Kick(pID);
    return 1;
    }


    Es kommt jedesmal die meldung AdmCmd: wurde von mr.Shore gekickt. Grund:

  • ocmd:kick(playerid,params[])
    {
    if(SpielerInfo[playerid][pAdminlevel] >= 1)
    {
    new pID, reason[128],string[128];
    if(sscanf(params,"us",pID,reason))return SendClientMessage(playerid,WEIß,"BENUTZE: /kick [id] [grund]");
    format(string,sizeof(string),"AdmCmd: %s wurde von %s gekickt. Grund: %s",SpielerName(pID),SpielerName(playerid),reason);
    SendClientMessageToAll(ROT,string);
    Kick(pID);
    }
    else
    {
    SendClientMessage(playerid, WEIß,"Du bist kein Teammitglied!");
    }
    return 1;
    }


    // gebe ich dir Dazu!


    stock SpielerName(playerid)
    {
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    return name;
    }


    Muss dan gehen! Du muss die Adminabfrage anpassen etc.


    //edit WICHTIG: ocmd: kommt nicht in ein Public sondern du muss das irgendwo frei im Script hinmachen! z.b über public OnPlayerCommandText

  • ocmd:kick(playerid,params[])
    {
    if(!isPlayerAnAdmin(playerid,2))return SendClientMessage(playerid,ROT,"Du bist kein Admin.");
    new pID, reason[128],string[128];
    if(sscanf(params,"us",pID,reason))return SendClientMessage(playerid,BLAU,"/kick [id] [grund]");
    format(string,sizeof(string),"AdmCmd: %s wurde von %s gekickt. Grund: %s",SpielerName(pID),SpielerName(playerid),reason);
    SendClientMessageToAll(ROT,string);
    SetTimerEx("kickplayer",100,0,"d",pID);
    return 1;
    }


    Dann ganz oben,
    forward kickplayer(pID);


    dann i.wo


    public kickplayer(pID)
    {
    return Kick(pID);
    }