Aduty Hilfe bei meinen Command bitte

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
  • Kann mir bitte jemand helfen den befehl so zumachen das wen man /aduty macht on duty und off duty gehen kann?



    dcmd_aoffd(playerid,params[])
    {
    #pragma unused params
    new aname[MAX_PLAYER_NAME];
    GetPlayerName(playerid, aname, sizeof(aname));
    if(SInfo[playerid][pAdmin] >= 1)
    {
    new string[128];
    format(string,sizeof(string),"Administrator %s ist nun außer Dienst!",aname);
    SendClientMessageToAll(0xFF6E00FF,string);
    SetPlayerColor(playerid, 0xAAAAAA00);
    Delete3DTextLabel(Spielerlabel[playerid]);
    }
    return 1;
    }
    dcmd_aond(playerid,params[])
    {
    #pragma unused params
    new aname[MAX_PLAYER_NAME];
    GetPlayerName(playerid, aname, sizeof(aname));
    if(SInfo[playerid][pAdmin] >= 1)
    {
    new string[128];
    format(string,sizeof(string),"Administrator %s ist nun im Dienst!",aname);
    SendClientMessageToAll(0xFF00E1FF,string);
    SetPlayerColor(playerid,0xFF00E1FF);
    Spielerlabel[playerid] = Create3DTextLabel("Supporter OnDuty", 0xEB0000FF, 0, 0, 1.0, 20.0,-1,0);
    Attach3DTextLabelToPlayer(Spielerlabel[playerid], playerid, 0.0, 0.0, 0.7);
    }
    return 1;
    }

  • Dafür brauchst du ein Spielerarray oder du erweiterst dein enum welches SInfo als index dient um einen variable.
    so kannst du diese abfragen mit einer if abfrage in der funktion ob die variable den wert 1 hat oder 0 . Sollte sie zum beispiel den wert 1 haben so führst du den code von aoffd was nach der abfrage kommt ob der spieler ein admin ist oder nicht

  • Werde nachher nochmal gucken ob ich sowas noch rumfliegen habe ;)


    MFG

    Mit freundlichen Grüßen
    [color=#696969][i][b]Maxi
    [tabmenu]
    [tab='Signatur!']

    [tab='Mein Computer System']

    • Gehäuse Delux SH891 Midi-Tower (ATX) schwarz
    • Netzteil 650 Watt Corsair VS650
    • Festplatte 1000GB SATA III 7200upm
    • Mainboard AM3 Gigabyte GA-970A-UD3P (Chipsatz:AMD 970/SB950/ATX)
    • NVIDIA Geforce GTX 770 Gainward Phantom
    • 8192MB DDR3 Single Channel 1600MHz
    • Prozessor AM3+ (FX-Serie) AMD FX-8350 8x 4.0 GHz


    [tab='Meine Handys']

    • HTC ONE M8
    • Samsung S3 mini
    • Vll bald HTC ONE M7


    [tab='Mein Steam Account = 1']

  • Ok danke weil das kann mir helfen ich Brauche halt was wo ich auch gucken kann weil wen man das so schreibt dann kann ich das nocht nicht so gut weil ich noch kein richtiger Scripter bin Ich lerne aber trz danke euch beiden :D



    new IsOnDuty[MAX_PLAYERS]; <= oben ins Skript ist ein global deklariertes Array
    dcmd_duty(playerid,params[])
    {
    #pragma unused params
    new aname[MAX_PLAYER_NAME];
    GetPlayerName(playerid, aname, sizeof(aname));
    if(SInfo[playerid][pAdmin] >= 1)
    {
    new string[128];
    if(IsOnDuty[playerid] == 1) <= Abfrage ob der Spieler schon Duty ist wenn ja wird die variable wieder auf 0 gesetzt und der Spieler geht aus dem Dienst
    {
    format(string,sizeof(string),"Administrator %s ist nun außer Dienst!",aname);
    SendClientMessageToAll(0xFF6E00FF,string);
    SetPlayerColor(playerid, 0xAAAAAA00);
    Delete3DTextLabel(Spielerlabel[playerid]);
    IsOnDuty[playerid] = 0;
    }
    else <= Wenn die Bedingung oben nicht zutrifft geht der Spieler in den Dienst
    {
    format(string,sizeof(string),"Administrator %s ist nun im Dienst!",aname);
    SendClientMessageToAll(0xFF00E1FF,string);
    SetPlayerColor(playerid,0xFF00E1FF);
    Spielerlabel[playerid] = Create3DTextLabel("Supporter OnDuty", 0xEB0000FF, 0, 0, 1.0, 20.0,-1,0);
    Attach3DTextLabelToPlayer(Spielerlabel[playerid], playerid, 0.0, 0.0, 0.7);
    IsOnDuty[playerid] = 1;
    }
    }
    return 1;
    }



  • Vielen dank jetzt versteh ich es danke :D aber es kommt ein warning das es nicht genutzt wird also der hier symbol is never used: "dcmd_duty"