Hilfe mit meinen Befehl

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
    Wenn ich eingesperrt bin im alkatraz oder in Normalen Gefängniss
    dann soll ich den Befehl /makeleader nicht benutzen können.
    Aber ich kann ihn trotzdem benutzten. Wo ist der Fehler ?


    if(strcmp(cmd, "/makeleader", true) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    if(PlayerInfo[playerid][pJailed] != 2 || PlayerInfo[playerid][pJailed] != 1)
    {
    if(PlayerInfo[playerid][pAdmin] < 1337)
    {
    SendClientMessage(playerid, COLOR_GRAD1, "Dazu bist du nicht befugt!");
    return 1;
    }
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
    SendClientMessage(playerid, COLOR_YELLOW, "Benutze: /makeleader [playerid/Name] [Nummer(1-24)]");
    SendClientMessage(playerid, COLOR_YELLOW, "Fraktionen: 1 LSPD, 2 FBI, 3 Bundeswehr, 4 Medic, 5 LCN, 6 Yakuza, 7 Präsi, 8 Hitman");
    SendClientMessage(playerid, COLOR_YELLOW, "Fraktionen: 9 CNN, 10 Taxi Company, 11 Fahrlehrer, 12 MS13, 13 Grove Street, 14 Ballas, 15 SF Biker Club, 16 Vagos");
    SendClientMessage(playerid, COLOR_YELLOW, "Fraktionen: 17 Aztecas, 18 Rifas, 19 RS, 20 Terror, 21 Wheelmen, 22 S.W.A.T Elite Troop, 23 Brigada, 24 O-Amt");
    return 1;
    }
    new para1;
    new level;
    para1 = ReturnUser(tmp);
    tmp = strtok(cmdtext, idx);
    level = strval(tmp);
    if(level > 24 || level < 0) { SendClientMessage(playerid, COLOR_GREY, " Geh nicht tiefer als Nummer 0, oder höher als Nummer 24!"); return 1; }
    if (PlayerInfo[playerid][pAdmin] >= 1337)
    {
    if(IsPlayerConnected(para1))
    {
    if(para1 != INVALID_PLAYER_ID)
    {
    if(PlayerInfo[para1][pMember] > 0 || PlayerInfo[para1][pFMember] < 255)
    {
    SendClientMessage(playerid, COLOR_GREY, " Dieser Player ist bereits/noch in einer Fraktion!");
    return 1;
    }
    if(PlayerInfo[para1][pFrakSperre] > 0)
    {
    SendClientMessage(playerid, COLOR_GREY, " Dieser Spieler hat FraktionsSperre!");
    return 1;
    }
    new ftext[32];
    if(level == 0) { ftext = "Zivilisten"; } else { ftext = Fracs[(level-1)]; }
    GetPlayerName(para1, giveplayer, sizeof(giveplayer));
    GetPlayerName(playerid, sendername, sizeof(sendername));
    format(string, sizeof(string), " Du hast %s die Leaderrechte der Fraktion %s gegeben.", giveplayer,ftext);
    SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
    format(string, sizeof(string), " Admin %s hat dich zum Leader von der Fraktion %s ernannt.", sendername,ftext);
    SendClientMessage(para1, COLOR_LIGHTBLUE, string);
    SendClientMessage(para1, COLOR_GRAD5, " Du kannst mit /help deine neuen Fraktionsbefehle betrachten");
    SendClientMessage(para1, COLOR_GRAD5, " Vergiss nicht: Du hast nun 4 Wochen Pflicht Leader in dieser Fraktion zu bleiben!");
    SendClientMessage(para1, COLOR_GRAD5, " Wenn du vor Ablauf der Frist rausgeworfen wirst, musst du die Rest der Zeit Zivilist bleiben.");
    gTeam[para1] = 0;
    PlayerInfo[para1][pTeam] = 0;
    PlayerInfo[para1][pRank] = 6;
    PlayerInfo[para1][pLeader] = level;
    PlayerInfo[para1][pGehalt] = 0;
    new iyear, imonth,iday;
    getdate(iyear, imonth, iday);
    format(string, sizeof(string), "%s[Level:%d] wurde von %s Als Leader der Fraktion %s eingeladen (%d-%d-%d)", giveplayer,PlayerInfo[para1][pLevel],sendername,ftext,imonth,iday,iyear);
    LeaderLog(string);
    if(level == 0)
    {
    gTeam[para1] = 3;
    PlayerInfo[para1][pTeam] = 3;
    PlayerInfo[para1][pMember] = 0;
    PlayerInfo[para1][pRank] = 0;
    PlayerInfo[para1][pChar] = 0;
    new rand = random(sizeof(CIV));
    SetSpawnInfo(para1, gTeam[para1], CIV[rand],0.0,0.0,0.0,0,0,0,0,0,0,0);
    PlayerInfo[para1][pModel] = CIV[rand];
    MedicBill[para1] = 0;
    SpawnPlayer(para1);
    }
    else if(level == 1) { PlayerInfo[para1][pChar] = 283; gTeam[para1] = 2; PlayerInfo[para1][pTeam] = 2; } // LOS SANTOS POLICE
    else if(level == 2) { PlayerInfo[para1][pChar] = 165; gTeam[para1] = 2; PlayerInfo[para1][pTeam] = 2; } // SAN FIERRO POLICE
    else if(level == 3) { PlayerInfo[para1][pChar] = 287; gTeam[para1] = 2; PlayerInfo[para1][pTeam] = 2; } // Bundeswehr
    else if(level == 4) { PlayerInfo[para1][pChar] = 275; gTeam[para1] = 4; PlayerInfo[para1][pTeam] = 4; } // Medic
    else if(level == 5) { PlayerInfo[para1][pChar] = 113; } // La Cosa Nostra
    else if(level == 6) { PlayerInfo[para1][pChar] = 120; } // Yakuza
    else if(level == 7) { PlayerInfo[para1][pChar] = 295; } // Mayor
    else if(level == 8) { PlayerInfo[para1][pChar] = 294; } // Hitmans
    else if(level == 9) { PlayerInfo[para1][pChar] = 187; } // CNN
    else if(level == 10) { PlayerInfo[para1][pChar] = 189; } // Taxi Cab Company
    else if(level == 11) { PlayerInfo[para1][pChar] = 240; } // Fahrschule
    else if(level == 12) { PlayerInfo[para1][pChar] = 120; } // Fuegos
    else if(level == 13) { PlayerInfo[para1][pChar] = 269; } // Grove Street
    else if(level == 14) { PlayerInfo[para1][pChar] = 103; } // Ballas
    else if(level == 15) { PlayerInfo[para1][pChar] = 247; } // Sf Biker Club
    else if(level == 16) { PlayerInfo[para1][pChar] = 110; } // Los Santos Vagos
    else if(level == 17) { PlayerInfo[para1][pChar] = 115; } // Varios Los Aztecas
    else if(level == 18) { PlayerInfo[para1][pChar] = 173; } // Los Santos Rifa
    else if(level == 19) { PlayerInfo[para1][pChar] = 19; } // Red Soldiers
    else if(level == 20) { PlayerInfo[para1][pChar] = 220; } // Terroristen
    else if(level == 21) { PlayerInfo[para1][pChar] = 47; } //Wheelmen
    else if(level == 22) { PlayerInfo[para1][pChar] = 285; } // S.W.A.T Elite Troop
    else if(level == 23) { PlayerInfo[para1][pChar] = 127; } // russenmafia
    else if(level == 24) { PlayerInfo[para1][pChar] = 71; } // Ordnungsamt
    SetPlayerSkin(para1, PlayerInfo[para1][pChar]);
    }
    }//not connected
    }
    else
    {
    SendClientMessage(playerid, COLOR_GRAD1, " ** INFO: Das ist ein Adminbefehl, Du bist nicht befugt!");
    }
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du hast ein Verbrechen begannen und musst es absitzen, Admin");
    GameTextForPlayer(playerid, "~w~Du bleibst~r~drinne", 10000, 1);
    }
    }
    return 1;
    }


    Hier nochmal die Abfrage
    if(PlayerInfo[playerid][pJailed] != 2 || PlayerInfo[playerid][pJailed] != 1)
    {
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du hast ein Verbrechen begannen und musst es absitzen, Admin");
    GameTextForPlayer(playerid, "~w~Du bleibst~r~drinne", 10000, 1);
    }
    }


    Bitte um Hilfe


    Scripter von LoE

  • Die if Abfrage ist immer Wahr :)
    Wenn variable nicht 2 ist ODER variable nicht 1 ist.


    Ich nehm mal an man ist im Gefängnis wenn diese Variable 1 oder 2 ist ?
    Dann musst du bei der if Abfrage einfach das || durch && ersetzen, das es dann heißt:
    Wenn die Variable nicht 1 UND nicht 2 ist.

  • Ein einfaches Beispiel:


    new a = 5;
    new b = 1;


    if (a == 5 && b == 1)
    ->Hier müssen BEIDE Bedingungen wahr/true sein, damit der If-Zweig ausgeführt wird.


    if(a == 5 || b == 1)
    -> Es würde reichen, wenn a den Wert 5 hat ODER wenn b den Wert 1 hat.


    Verstanden?