OCMD

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
  • hey, was ist daran falsch ?
    wenn ich den befehl ausführe steht nur da
    ..wurde von.. gekickt
    und nicht die namen?


    ocmd:kick(playerid,params[])
    {
    new pID, reason[128],string[128];
    if(sscanf(params,"us",pID,reason))return SendClientMessage(playerid,Farbe,"/kick [id] [grund]");
    format(string,sizeof(string),"AdmCmd: %s wurde von %s gekickt. Grund: %s",pID,playerid,reason);
    SendClientMessageToAll(Farbe,string);
    Kick(pID);
    return 1;
    }

  • pID und playerid sind in diesem Fall Integer, das heißt Zahlen, und keine Strings, so wie du es geschrieben hast (%s). Versuchs mal mit %d, dann sollte das klappen.


    Das mit dem Namen geht so:



    stock Spielername(id)
    {
    new name[MAX_PLAYER_NAME];
    GetPlayerName(id, name, sizeof name);
    return name;
    }


    new string[256];
    format(string, sizeof string, "AdmCmd: %s wurde von %s gekickt. Grund: %s", Spielername(pID), Spielername(playerid), reason);

  • achso, muss ich für ban befehl usw.. immer einen stock erstellen ?

  • Nein. Du erstellst einmal das stock "Spielername" und kannst es ab dem Zeitpunkt im ganzen Gamemode verwenden.

  • schon, aber für was hier ist das noch ?
    new string[256];
    format(string, sizeof string, "AdmCmd: %s wurde von %s gekickt. Grund: %s", Spielername(pID), Spielername(playerid), reason);

  • Na dein String, den du an alle per SendClientMessageToAll rausgibst. Das musst du selbstverständlich in deinen ban-Befehl, sofern du einen erstellst, hineinschreiben, damit auch jeder weiß, wer von wem gebannt wurde.