Funktion help AFK System

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
  • /* Afk System */
    if(strcmp(cmdtext,"/afk", true) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    if(SpielerInfo[playerid][pAWAYFROMKEYBOARD] == 1)
    {
    new AFKMODUS[MAX_PLAYER_NAME];
    GetPlayerName(playerid, AFKMODUS, sizeof(AFKMODUS));
    format(string, sizeof(string), "Spieler %s ist in den AFK-Modus gegangen !", AFKMODUS);
    ProxDetector(30.0, playerid, string, COLOR_LIGHTRED,COLOR_LIGHTRED,COLOR_LIGHTRED,COLOR_LIGHTRED,COLOR_LIGHTRED);
    TextDrawShowForPlayer(playerid,LOGINSCREEN);
    TextDrawHideForPlayer(playerid,SERVERUHR);
    TextDrawHideForPlayer(playerid,SERVERDATUM);
    SendClientMessage(playerid,COLOR_WHITE,"Du befindest dich nun im AFK-Modus Tippe /AFK um aus dem AFK-Modus rauszugehen !");
    }
    if(SpielerInfo[playerid][pAWAYFROMKEYBOARD] == 0)
    {
    new AFKMODUS[MAX_PLAYER_NAME];
    GetPlayerName(playerid, AFKMODUS, sizeof(AFKMODUS));
    format(string, sizeof(string), "Spieler %s ist vom AFK-Modus Zurück gekommen !", AFKMODUS);
    ProxDetector(30.0, playerid, string, COLOR_LIGHTRED,COLOR_LIGHTRED,COLOR_LIGHTRED,COLOR_LIGHTRED,COLOR_LIGHTRED);
    TextDrawHideForPlayer(playerid,LOGINSCREEN);
    TextDrawShowForPlayer(playerid,SERVERUHR);
    TextDrawShowForPlayer(playerid,SERVERDATUM);
    }
    return 1;
    }
    return 1;
    }


    Ich will diesen Befehl machen das er 2 Funktionen hat also ersten /AFK zum ersten mal ein gibt geht er in AFK Modus und wenn er nochmal das gleiche eingibt geht er ausem AFK modus
    ich hoffe ihr könnt mir helfen mit freundlichen Grüßen iN3XT_


    Since 2012

  • Ich habe das Problem das da immer steht


    Spieler %s ist vom AFK-Modus Zurück gekommen ! das kommt immer aber ich war noch nichtmal im AFK Modus und wenn ich dann wieder /AFK eingebe kommt das gleiche nochmal und immer so weiter


    Since 2012

  • Du hast vergessen die Variable pAWAYFROMKEYBOARD zu setzen. Probiers mal so
    if(strcmp(cmdtext,"/afk", true) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    if(SpielerInfo[playerid][pAWAYFROMKEYBOARD] == 0)
    {
    new AFKMODUS[MAX_PLAYER_NAME];
    GetPlayerName(playerid, AFKMODUS, sizeof(AFKMODUS));
    format(string, sizeof(string), "Spieler %s ist in den AFK-Modus gegangen !", AFKMODUS);
    ProxDetector(30.0, playerid, string, COLOR_LIGHTRED,COLOR_LIGHTRED,COLOR_LIGHTRED,COLOR_LIGHTRED,COLOR_LIGHTRED);
    TextDrawShowForPlayer(playerid,LOGINSCREEN);
    TextDrawHideForPlayer(playerid,SERVERUHR);
    TextDrawHideForPlayer(playerid,SERVERDATUM);
    SendClientMessage(playerid,COLOR_WHITE,"Du befindest dich nun im AFK-Modus Tippe /AFK um aus dem AFK-Modus rauszugehen!");
    SpielerInfo[playerid][pAWAYFROMKEYBOARD] = 1;
    }
    if(SpielerInfo[playerid][pAWAYFROMKEYBOARD] == 1)
    {
    new AFKMODUS[MAX_PLAYER_NAME];
    GetPlayerName(playerid, AFKMODUS, sizeof(AFKMODUS));
    format(string, sizeof(string), "Spieler %s ist vom AFK-Modus Zurück gekommen!", AFKMODUS);
    ProxDetector(30.0, playerid, string, COLOR_LIGHTRED,COLOR_LIGHTRED,COLOR_LIGHTRED,COLOR_LIGHTRED,COLOR_LIGHTRED);
    TextDrawHideForPlayer(playerid,LOGINSCREEN);
    TextDrawShowForPlayer(playerid,SERVERUHR);
    TextDrawShowForPlayer(playerid,SERVERDATUM);
    SpielerInfo[playerid][pAWAYFROMKEYBOARD] = 0;
    }
    }
    return 1;
    }
    *Code ungetestet