Adminbefehle Buggen

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
  • N'Abend.
    Ich mal wieder. Seit heute Buggen die Adminbefehle "/kick", "/verban" & "/freeze". Ich habe jediglich, seit gestern Abend, ein paar Objekte eingefügt & nun Buggen die Befehle. Wie Buggen sie? - Nunja, nun können alle User andere User Kicken, Verbannen & Freezen. Admins hingegen bekommen die Nachricht "Du darfst diesen Befehl nicht nutzen!".

    Zeilen
    ocmd:kick(playerid,params[])
    {
    if(sUser[playerid][AdminLevel]>=1)return SendClientMessage(playerid,ROT,"[Warnung] Du darfst diesen Befehl nicht nutzen!");
    new pID, str[64], str2[128], ThePlayer[MAX_PLAYER_NAME];
    if(sscanf(params,"us",pID,str))return SendClientMessage(playerid,BLAU,"Verwendung: /kick [ID] [Grund]");
    if(pID == INVALID_PLAYER_ID)return SendClientMessage(playerid, ROT, "[Warnung] Ungültiger User!");
    if(pID == playerid)return SendClientMessage(playerid, ROT, "[Warnung] Du kannst dich nicht selber Kicken!");
    GetPlayerName(pID,ThePlayer,sizeof(ThePlayer));
    format(str2,sizeof(str2),"%s wurde von New Lost verbannt!(Grund: %s)",ThePlayer,str[0] ? str : "<Kein Grund>");
    SendClientMessageToAll(ROT,str2);
    Kick(pID);
    return 1;
    }

    Zeilen
    ocmd:verban(playerid,params[])
    {
    if(sUser[playerid][AdminLevel]>=1)return SendClientMessage(playerid,ROT,"[Warnung] Du darfst diesen Befehl nicht nutzen!");
    new pID, str[64], str2[128], ThePlayer[MAX_PLAYER_NAME];
    if(sscanf(params,"us",pID,str))return SendClientMessage(playerid,BLAU,"Verwendung: /verban [ID] [Grund]");
    if(pID == INVALID_PLAYER_ID)return SendClientMessage(playerid, ROT, "[Warnung] Ungültiger User!");
    if(pID == playerid)return SendClientMessage(playerid, ROT, "[Warnung] Du kannst dich nicht selber Bannen!");
    GetPlayerName(pID,ThePlayer,sizeof(ThePlayer));
    format(str2,sizeof(str2),"%s wurde von New Lost verbannt!(Grund: %s)",ThePlayer,str[0] ? str : "<Kein Grund>");
    SendClientMessageToAll(ROT,str2);
    Ban(pID);
    return 1;
    }

    Zeilen
    ocmd:freeze(playerid,params[])
    {
    if(sUser[playerid][AdminLevel]>=1)return SendClientMessage(playerid,ROT,"[Warnung] Du darfst diesen Befehl nicht nutzen!");
    new pID, str[64],str2[128],ThePlayer[MAX_PLAYER_NAME];
    if(sscanf(params,"us",pID,str))return SendClientMessage(playerid,BLAU,"Verwendung: /freeze [ID] [Grund]");
    if(pID==INVALID_PLAYER_ID)return SendClientMessage(playerid,ROT,"[Warnung] Ungültiger User!");
    if(pID==playerid)return SendClientMessage(playerid,ROT,"[Warnung] Du kannst dich nicht selber Freezen!");
    GetPlayerName(pID,ThePlayer,sizeof(ThePlayer));
    format(str2,sizeof(str2),"%s wurde Gefreezed!(Grund: %s)",ThePlayer,str[0]?str:"<Kein Grund>");
    TogglePlayerControllable(pID,0);
    GameTextForPlayer(playerid, "FREEZED", 5, 2);
    return 1;
    }
    Wie gesagt, vorher ging es, aber seitdem ich die Objekte drin habe, buggt es. Auch wenn ich die Objekte rausnehme, bleibt es so..

    Hoffe ihr könnt mir da weiter Helfen.


    MfG


    //Edit: Verbessert

  • if(sUser[playerid][AdminLevel]>=1)return SendClientMessage(playerid,ROT,"[Warnung] Du darfst diesen Befehl nicht nutzen!");
    musst du zu:
    if(sUser[playerid][AdminLevel]<1)return SendClientMessage(playerid,ROT,"[Warnung] Du darfst diesen Befehl nicht nutzen!");
    machen da sonst alle drunter dies machen dürften und drüber nicht :D