Brauche hilfe bei den befehlen /dm und /dmoff

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 ich habe mir mal ein DM befehl gemacht der geht so: public OnPlayerCommandText(playerid, cmdtext[])
    if((InDm1[playerid] == 1) && strcmp(cmd,"/dmoff",true)) { return SendClientMessage(playerid,Rot,"Schreibe /dmoff um das DeathMatch zu verlassen."); }
    if (strcmp("/dm", cmdtext, true, 10) == 0) // cmd xD
    {
    if(dm[playerid] == 1) // Wenn bereits in dm ist
    {
    return SendClientMessage(playerid,Rot,"Du bist bereits in der DM Arena! Schreibe /dmoff um rauszukommen!");
    }
    dm[playerid] = 1;
    SetPlayerPos(playerid,1953.8955,-1364.6393,24.1484); // Spieler an die DM pos setzen...
    ResetPlayerWeapons(playerid); // Alle waffen wegnehmen erstmal
    GivePlayerWeapon(playerid,26,99999);
    GivePlayerWeapon(playerid,28,99999);
    return 1;
    }


    if (strcmp("/dmoff", cmdtext, true, 10) == 0) // cmd xD
    {
    if(dm[playerid] == 0) // Wenn nicht in dm ist
    {
    return SendClientMessage(playerid,Rot,"Du bist nicht im Dm!");
    }
    dm[playerid] = 0;
    SpawnPlayer(playerid); // Spieler spawnen...
    ResetPlayerWeapons(playerid); // Alle waffen wegnehmen erstmal
    SendClientMessage(playerid,Rot,"Du bist aus den Dm rausgegangen.");
    return 1;
    }nun kommt meine frage Wie mache ich das wen ich eingebe /dm das dann nur noch der befehl /dmoff geht (und /dm halt weil da steht dan ja eh sie sind in dm ). Ist ser wichtig sonst ist das dm scheisse dann macht z.b. einer /dm und dann /stunt und dann ist er beim stunt und das soll dan net mehr gehen dann soll z.b /stunt nich mehr gehen wen man in dm ist ich hoffe ihr könnt mir helfen


    MfG
    Kiddy_Noobtuber :thumbup:

  • wie jetzt? Bin irgendwie etwas verwirrt heute, Kanst du mir da smal zeigen also als PAWN Code

  • public OnPlayerCommandText(playerid, cmdtext[])
    new event(MAX_PLAYERS) //oder so lang nimme gemacht


    if((InDm1[playerid] == 1) && strcmp(cmd,"/dmoff",true)) { return SendClientMessage(playerid,Rot,"Schreibe /dmoff um das DeathMatch zu verlassen."); }
    if (strcmp("/dm", cmdtext, true, 10) == 0) // cmd xD
    {
    if(event[playerid] == 1)
    {
    }
    else
    {
    if(dm[playerid] == 1) // Wenn bereits in dm ist
    {
    return SendClientMessage(playerid,Rot,"Du bist bereits in der DM Arena! Schreibe /dmoff um rauszukommen!");
    }
    dm[playerid] = 1;
    SetPlayerPos(playerid,1953.8955,-1364.6393,24.1484); // Spieler an die DM pos setzen...
    ResetPlayerWeapons(playerid); // Alle waffen wegnehmen erstmal
    GivePlayerWeapon(playerid,26,99999);
    GivePlayerWeapon(playerid,28,99999);
    return 1;
    }


    if (strcmp("/dmoff", cmdtext, true, 10) == 0) // cmd xD
    {
    if(dm[playerid] == 0) // Wenn nicht in dm ist
    {
    return SendClientMessage(playerid,Rot,"Du bist nicht im Dm!");
    }
    dm[playerid] = 0;
    SpawnPlayer(playerid); // Spieler spawnen...
    ResetPlayerWeapons(playerid); // Alle waffen wegnehmen erstmal
    SendClientMessage(playerid,Rot,"Du bist aus den Dm rausgegangen.");
    return 1;
    }


    bin mir da nich sicher hab grad andere Probleme.
    Lass dir da am besten von nem Experten helfen^^

  • das ist dan doch die selbe funktion wie die InDm1 oder net weil das InDm1 amcht ja das er erkent das er in ein dm drin ist oder nicht und eigend lich soll die funktin die befehle auch sperren bzw weg denken. Ahm ja un Klammer fehler hast du auc drine :D

  • Ist doch dann genau das selbe wie InDm1 weil das mach genau das

  • so ahbe es gelöst habe was vergessen bei den ganzen anderen befehlen