Wanted Kill Spawn 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
  • Hallo und Frohes neues Jahr


    Mein Script besitzt ein Jail system und zwar es ist halt so das wenn ein spieler mit wanteds stirbt spawnt er im Knast.
    Wenn man aber in eine Gang oder Mafia ist spawnt man in der Base. Die User die in eine Fight Faction sind haben
    ein ganz andrenen OnPlayerDeath . Deswegen kann ich die Funktion auch nicht unter onplayerdeath einfügen.
    Man spawnt manchmal im Knast als FightFaction aber manchmal in der Base. z.B wenn die Bank ausgeraubt wird
    und der Spieler der in eine Gang/Mafia ist mit wanteds getötet wird spawnt er in der Base der Bankraub ist zu ende auf jeden Fall
    aber trotzdem spawnt er in der Base.
    Wie kann ich die Funktion so schreiben dass sie einfach für alle gilt obwohl die Gang/Mafien nichts mit OnPlayerDeath zu tun hat.




    stock IsAFightFaction(Faction){
    if(Faction == 5 || Faction == 6 || Faction == 13 || Faction == 14 || Faction == 16 || Faction == 17 || Faction == 23 || Faction == 25 || Faction == 12)
    return 1;
    return 0;
    }




    if(newstate == PLAYER_STATE_WASTED)
    {
    if(WantedLevel[playerid] >= 1)
    {
    new price = WantedLevel[playerid] * 1000;
    new count;
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    if(IsPlayerConnected(i))
    {
    if(IsACop(i) && CrimInRange(70.0, playerid,i))
    {
    count = 1;
    format(string, sizeof(string), "GEFANGEN", price);
    GameTextForPlayer(i, string, 2000, 1);
    ConsumingMoney[i] = 1;
    FraktionsKasse[0] += price/2;
    FraktionsKasse[1] += price/2;
    FraktionsKasse[2] += price/2;
    PlayerPlaySound(i, 1058, 0.0, 0.0, 0.0);
    }
    }
    }
    if(count == 1)
    {
    if(WantedLevel[playerid] >= 1)
    {
    GivePlayerMoney(playerid, -price);
    PlayerInfo[playerid][pWantedDeaths] += 1;
    PlayerInfo[playerid][pJailed] = 1;
    SpawnPlayer(playerid);
    PlayerInfo[playerid][pJailTime] = (WantedLevel[playerid] * 120);
    format(string, sizeof(string), "Du musst für %d Sekunden ins Gefängnis-[Strafe: $%d]", PlayerInfo[playerid][pJailTime], price);
    GameTextForPlayer(playerid, "~r~ARRESTED", 2300,5);
    SendClientMessage(playerid,rot, string);
    WantedPoints[playerid] = 0;
    WantedLevel[playerid] = 0;
    SetPlayerVirtualWorld(playerid, 0);
    }
    }
    }
    }


    Biete dringend um Hilfe ;)


    MFG


  • if(WantedLevel[playerid] >= 1)


    Es ist nur so manchmal funktioniert die Funktion für alle da sie nicht unter public OnPlayerDeath steht
    und manchmal nicht.


    Das Problem ist dass wenn man 1 Wanted hat genau das passiert. Aber wenn man 2 Wanteds hat oder mehr
    funktioniert alles richtig .


    MFG

    Einmal editiert, zuletzt von HandsUper ()