Setadmin

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
  • Sers Community,
    ich habe ein /setadmin Funktion und in dieser Funktion muss ich ein GRUND eingeben siehe:

    ocmd:setadmin(playerid,params[])
    {
    if(!isPlayerAnAdmin(playerid,3))return SendClientMessage(playerid,HELLROT,"AdmCmd: Du besitzt keine Rechte, um diesen Befehl zu benutzen!");
    new pID,rank,string[256], reason;
    if(sscanf(params,"uis",pID,rank,reason))return SendClientMessage(playerid,HELLROT,"AdmCmd: Benutze /setadmin [SpielerID] [Rank] [Grund]");
    if(rank<0||rank>3)return SendClientMessage(playerid,HELLROT,"AdmCmd: Dieser Rank ist nicht vorhanden. Nur Ränge von [1 - 3] sind vorhanden.");
    format(string,sizeof(string),"AdmCmd: %s wurde vom Administrator %s zum Administrator/Supporter ernannt. ",SpielerName(pID),SpielerName(playerid),reason);
    SendClientMessageToAll(0xD3FF27FF,string);
    SetPVarInt(pID,"Adminlevel",rank);
    return 1;
    }


    Hab jetzt alle "reason's" weg gemacht geht leider nicht.
    & wie kann ich machen das dann bei mir steht. "Du hast %s zum Team Mitglied Rank "was auch immer" ernannt."
    Und bei ihm sollte dann stehen. "Administrator %s hat dich zum Team Mitglied Rank "was auch immer" ernannt."


    mfG,
    Ien_Levin

    :) SWAGETTI & YOLONAISE!

    Einmal editiert, zuletzt von John_Sanclear ()

  • Die Variable "reason" ist nicht als String deklariert. Da du aber eine Zeichenkette erstellen möchtest, musst du die Variable "reason" auch als String deklarieren.
    new reason[64]


    Und warum ist im String keine Formatierung für die Variable "reason" vorhanden?
    format(string,sizeof(string),"AdmCmd: %s wurde vom Administrator %s zum Administrator/Supporter ernannt. Grund: %s",SpielerName(pID),SpielerName(playerid),reason);


    Damit müsste es gehen. :)


    Deine 2. Frage kannst du genauso lösen. Du formatierst einfach einen zweiten String und sendest diesen dann an die playerid bzw. an die pID.