Warn/Unwarn ?

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
  • Also ein Warn Befehl hab ich hier schonmal:


    if(strcmp(cmd, "/warn", true) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
    SendClientMessage(playerid, COLOR_GRAD2, "Fehler: /warn [playerid] [grund].");
    return true;
    }
    new giveplayerid;
    new sendername[MAX_PLAYER_NAME];
    new giveplayer[MAX_PLAYER_NAME];
    giveplayerid = ReturnUser(tmp);
    if(SpielerInfo[playerid][Adminlevel] >= 2)
    {
    if(IsPlayerConnected(giveplayerid))
    {
    if(giveplayerid != INVALID_PLAYER_ID)
    {
    GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
    GetPlayerName(playerid, sendername, sizeof(sendername));
    new length = strlen(cmdtext);
    while ((idx < length) && (cmdtext[idx] <= ' '))
    {
    idx++;
    }
    new offset = idx;
    new result[64];
    while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
    {
    result[idx - offset] = cmdtext[idx];
    idx++;
    }
    result[idx - offset] = EOS;
    if(!strlen(result))
    {
    SendClientMessage(playerid, COLOR_GRAD2, "FEHLER: /warn [playerid] [grund].");
    return true;
    }
    if(SpielerInfo[giveplayerid][Adminlevel] > SpielerInfo[playerid][Adminlevel])
    {
    SendClientMessage(playerid, COLOR_GRAD2, "Du kannst diesen Spieler nicht verwarnen, da er ein höheres Adminlevel hat als du!");
    return true;
    }
    SpielerInfo[giveplayerid][pWarns] += 1;
    if(SpielerInfo[giveplayerid][pWarns] >= 3)
    {
    new year, month,day;
    getdate(year, month, day);
    format(string, sizeof(string), "AdmCmd: %s wurde von %s gebannt, Grund: %s (%d-%d-%d).", giveplayer, sendername, (result),month,day,year);
    format(string, sizeof(string), "AdmCmd: %s wurde von %s gebannt(hat 3 Warnungen), Grund: %s.", giveplayer, sendername, (result));
    SendClientMessageToAll(COLOR_LIGHTRED, string);
    SpielerInfo[giveplayerid][pLevel] = 999;
    Ban(giveplayerid);
    return true;
    }
    format(string, sizeof(string), "Du hast %s gewarnt, Grund: %s.", giveplayer, (result));
    SendClientMessage(playerid, COLOR_LIGHTRED, string);
    format(string, sizeof(string), "Du wurdest von %s verwarnt, Grund: %s.", sendername, (result));
    SendClientMessage(giveplayerid, COLOR_LIGHTRED, string);
    return true;
    }
    }//not connected
    }
    else
    {
    format(string, sizeof(string), " %d ist kein aktiver Spieler.", giveplayerid);
    SendClientMessage(playerid, COLOR_GRAD1, string);
    }
    }
    return true;
    }