/Aduty Befehl geht nicht richtig

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
  • Hallo zusammen,
    folgendes Problem, wenn man auf dem Server /aduty macht kommt folgende Message:
    Admin aduty hat sich zum Dienst gemeldet


    Hier der Code
    public OnPlayerCommandText(playerid, cmdtext[])


    {
    new tmp[250];
    new idx,giveplayerid,moneys,cmd[128];
    cmd = strtok(cmdtext,idx);


    if(strcmp(cmd, "/aduty", true) == 0)
    {
    new string[256], name[MAX_PLAYER_NAME];
    if(AdminDuty[playerid] == 0)
    {
    AdminDuty[playerid] = 1;
    format(string, sizeof(string), "*** Admin %s hat sich zum Dienst angemeldet ***", GetPlayerName(playerid, name, sizeof(name)));
    SetPlayerColor(playerid,ROT);
    SendClientMessageToAll(ROT, string);
    return 1;
    }
    if(AdminDuty[playerid] == 1)
    {
    AdminDuty[playerid] = 0;
    format(string, sizeof(string), "*** Admin %s hat denn Admin Dienst verlassen ***", GetPlayerName(playerid, name, sizeof(name)));
    SetPlayerColor(playerid,WEIß);
    SendClientMessageToAll(ORANGE, string);
    return 1;
    }
    return 1;
    }


    Ich hoffe ihr könnt mir helfen.
    LG
    Alex

  • Hir das müsste gehen (Nicht getestet):


    Spoiler anzeigen
    if(strcmp(cmd, "/aduty", true) == 0)
    {
    new string[256];
    if(AdminDuty[playerid] == 0)
    {
    AdminDuty[playerid] = 1;
    format(string, sizeof(string), "*** Admin %s hat sich zum Dienst angemeldet ***", PlayerName(playerid));
    SetPlayerColor(playerid,ROT);
    SendClientMessageToAll(ROT, string);
    return 1;
    }
    if(AdminDuty[playerid] == 1)
    {
    AdminDuty[playerid] = 0;
    format(string, sizeof(string), "*** Admin %s hat denn Admin Dienst verlassen ***", PlayerName(playerid));
    SetPlayerColor(playerid,WEIß);
    SendClientMessageToAll(ORANGE, string);
    return 1;
    }
    return 1;
    }

    //Für das mal gantz unten ein:
    stock PlayerName(playerid)
    {
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    return name;
    }

    Mit freundlichen Grüßen,


    Fabi.StaR :love::saint:


  • if (strcmp(cmd, "/adminduty", true) == 0 || strcmp(cmd, "/aduty", true) == 0)
    {
    if(PlayerInfo[playerid][pAdmin] >=1)
    {
    if(AdminDuty[playerid] == 0)
    {
    SendClientMessage(playerid,COLOR_YELLOW,"Du bist nun als Supporter im Dienst!");
    SetPlayerColor(playerid,0xFF66FFAA);
    AdminDuty[playerid] = 1;
    Mod[playerid] = Create3DTextLabel("*Supporter on Duty*",0xFF66FFAA,30.0,40.0,50.0,40.0,0);
    Attach3DTextLabelToPlayer(Mod[playerid], playerid, 0.0, 0.0, 0.4);
    GetPlayerName(playerid, sendername, sizeof(sendername));
    format(string,sizeof(string),"%s hat sich als Supporter angemeldet.*",sendername,playerid);
    SendClientMessageToAll(0xFF66FFAA, string);
    return 1;
    }


    else if(AdminDuty[playerid] == 1)
    {
    SendClientMessage(playerid,COLOR_YELLOW,"Du bist nun nichtmehr On Duty!");
    format(string,sizeof(string),"%s hat sich als Supporter abgemeldet.*",sendername,playerid);
    SendClientMessageToAll(0xFF66FFAA, string);
    Delete3DTextLabel(Mod[playerid]);
    Delete3DTextLabel(Mod[playerid]);
    AdminDuty[playerid] = 0;


    if(PlayerInfo[playerid][pMember] == 1 || PlayerInfo[playerid][pLeader] == 1)
    {
    }
    else
    {
    SetPlayerColor(playerid,TEAM_HIT_COLOR);
    }
    }
    return 1;
    }
    return 1;
    }