Gefängnis Geht nicht

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 Liebe Breadfish Community,
    Ich habe bei meinem pRP_Edit ein Problem mit dem Gefängniss, wenn ich jemanden einsperren möchte spawnt diese Person sofort wieder am
    Spawn.


    Hier das /einsperren System, hoffe mir kann jemand helfen.


    Danke im Vorraus.


    Hier der Code:

    COMMAND:einsperren(playerid,params[])
    {
    if(ImTutorial[playerid] != 0)return SendClientMessage(playerid,SAMP_ROT,""ACCINFO"Du hast keine erlaubnis diesen Befehl benutzen zu drüfen.");
    if(GetPVarInt(playerid,"Eingeloggt") == 0)return SendClientMessage(playerid,SAMP_WEISS,""ACCINFO"Du bist nicht eingeloggt!");
    if(Spieler[playerid][pAWAYFROMKEYBOARD] == 1)return SendClientMessage(playerid,SAMP_WEISS,"Du bist im AFK-Modus und kannst somit keine Befehle nutzen."),SendClientMessage(playerid,SAMP_WEISS,""#HTML_BLAU"Verwendung:"#HTML_WEISS" /back");
    if(Spieler[playerid][pInPrison] == 1)return SendClientMessage(playerid,SAMP_WEISS,"Du bist im Prison.");
    if(Spieler[playerid][pFriedhof] == 1)return SendClientMessage(playerid,SAMP_WEISS,"Du bist nicht in der Lage zu schrieben.");
    if(Spieler[playerid][pDeath] == 1)return SendClientMessage(playerid,SAMP_WEISS,"Du bist verletzt.");
    if(Spieler[playerid][pJailed] != 0)return SendClientMessage(playerid,SAMP_WEISS,"Du bist im Gefängnis.");
    if(Spieler[playerid][pTazerd] == 1)return SendClientMessage(playerid,SAMP_WEISS,"Du bist K.O/getazert.");
    if(Spieler[playerid][pCuffed] == 1)return SendClientMessage(playerid,SAMP_WEISS,"Du bist gefesselt.");
    new kaution,pID,string[128];
    if(isPlayerInFrakt(playerid,1) || isPlayerInFrakt(playerid,2) || isPlayerInFrakt(playerid,6))
    { //sapd zellen seite 1 //sapd zellen seite 2 //alka //fbi einjail punkt
    if(IsPlayerInRangeOfPoint(playerid,15,1536.0076,-1667.9462,13.3828) || IsPlayerInRangeOfPoint(playerid,15,1536.0240,-1677.7863,13.3828) || IsPlayerInRangeOfPoint(playerid,15,2581.0930,-1288.2515,1044.1250) || IsPlayerInRangeOfPoint(playerid,15,221.5675,113.1803,999.0156))
    {
    if(Spieler[playerid][pDuty] == 0)return SendClientMessage(playerid,SAMP_WEISS,"Du bist nicht im Dienst.");
    if(sscanf(params,"ui",pID,kaution))return SendClientMessage(playerid,SAMP_WEISS,""#HTML_BLAU"Benutze:"#HTML_WEISS"/einsperren [playerid/Name][Kaution 1 = gestellt,2 = nicht gestellt]");
    if(kaution<1||kaution>2)return SendClientMessage(playerid,SAMP_WEISS,""#HTML_BLAU"Benutze:"#HTML_WEISS"/einsperren [playerid/Name][Kaution 1 = gestellt,2 = nicht gestellt]");
    if(!IsPlayerConnected(pID))return SendClientMessage(playerid,SAMP_WEISS,"Der angegebene Spieler ist nicht eingeloggt!");
    if(GetPVarInt(pID,"Eingeloggt") == 0)return SendClientMessage(playerid,SAMP_WEISS,"Der angegebene Spieler ist nicht eingeloggt!");
    if(IsPlayerNPC(pID))return SendClientMessage(playerid,SAMP_WEISS,"Das kannst du nicht!");
    if(pID == playerid)return SendClientMessage(playerid,SAMP_WEISS,"Du kannst dich nicht selbst ins Gefängnis einsperren.");
    if(!ProxDetectorS(5.0,playerid,pID))return SendClientMessage(playerid,SAMP_WEISS,"Der angegebene Spieler ist nicht in deiner Nähe!");
    if(Spieler[pID][pJailed] != 0)return SendClientMessage(playerid,SAMP_WEISS,"Spieler ist bereits im Gefängnis.");
    if(Spieler[pID][pWantedPoints] == 0)return SendClientMessage(playerid,SAMP_WEISS,"Spieler hat keine Wanteds.");
    if(kaution == 1){Spieler[pID][pJailTime] = Spieler[pID][pWantedPoints]*30; Spieler[pID][pKaution] = 1;}
    else Spieler[pID][pJailTime] = Spieler[pID][pWantedPoints]*45; Spieler[pID][pKaution] = 2;
    if(IsPlayerInRangeOfPoint(pID,15,1547.1372,-1669.6622,13.5669) || IsPlayerInRangeOfPoint(pID,15,1547.1372,-1669.6622,13.5669)) Spieler[pID][pJailed] = 1;
    if(IsPlayerInRangeOfPoint(pID,15,1547.1372,-1669.6622,13.5669)) Spieler[pID][pJailed] = 3;
    if(IsPlayerInRangeOfPoint(pID,15,1547.1372,-1669.6622,13.5669)) Spieler[pID][pJailed] = 2;
    format(string,sizeof(string),"Du hast den Gesuchten %s eingesperrt. Wert: %i$",SpielerName(pID),Spieler[pID][pWantedPoints] * 5);
    SendClientMessage(playerid,SAMP_WEISS,string);
    SendClientMessageToAll(SAMP_WEISS,"*----------[ "#HTML_ROT"Goverment Meldung"#HTML_WEISS" ]----------*");
    format(string,sizeof(string),"%s %s hat den Gesuchten %s eingesperrt!",SpielerFraktionsRangName(playerid),SpielerName(playerid),SpielerName(pID));
    SendClientMessageToAll(0x00489184,string);
    ACMoney(pID,-Spieler[pID][pWantedPoints] * 5);
    fverwaltungen[16][Geld] += Spieler[pID][pWantedPoints] * 5;
    Spieler[pID][pWantedPoints] = 0;
    SetPlayerWantedLevel(pID,0);
    Spieler[pID][pJailedCount]++;
    SpawnPlayerEx(pID);
    format(string,sizeof(string),"HQ: An alle Einheiten, %s %s hat die gesuchte Person %s eingesperrt.",SpielerFraktionsRangName(playerid),SpielerName(playerid),SpielerName(pID));
    ForEachPlayer(i)
    {
    if(IsPlayerConnected(i))
    {
    if(isPlayerInFrakt(i,1) || isPlayerInFrakt(i,2) || isPlayerInFrakt(i,6) || isPlayerInFrakt(i,16))
    {
    SendClientMessage(i,0x000FFF87,string);
    }
    }
    }
    return 1;
    }
    return SendClientMessage(playerid,SAMP_WEISS,"Nicht an den Zellen.");
    }
    return SendClientMessage(playerid,SAMP_WEISS,""ACCINFO"Du bist nicht in der jeweiligen Fraktion.");
    }

  • COMMAND:spawnplayer(playerid,params[])
    {
    if(ImTutorial[playerid] != 0)return SendClientMessage(playerid,SAMP_ROT,""ACCINFO"Du hast keine erlaubnis diesen Befehl benutzen zu drüfen.");
    if(GetPVarInt(playerid,"Eingeloggt") == 0)return SendClientMessage(playerid,SAMP_WEISS,""ACCINFO"Du bist nicht eingeloggt!");
    if(Spieler[playerid][pAWAYFROMKEYBOARD] == 1)return SendClientMessage(playerid,SAMP_WEISS,"Du bist im AFK-Modus und kannst somit keine Befehle nutzen."),SendClientMessage(playerid,SAMP_WEISS,""#HTML_BLAU"Verwendung:"#HTML_WEISS" /back");
    new pID,string[128];
    if(!isPlayerAnAdmin(playerid,1))return SendClientMessage(playerid,SAMP_ROT,""ACCINFO"Du bist kein Admin Mitglied oder hast nicht den erforderlichen Rang.");
    if(sscanf(params,"u",pID))return SendClientMessage(playerid,SAMP_WEISS,""#HTML_BLAU"Benutze:"#HTML_WEISS"/spawnplayer [playerid/Name]");
    if(!IsPlayerConnected(pID))return SendClientMessage(playerid,SAMP_WEISS,"Der angegebene Spieler ist nicht eingeloggt!");
    if(GetPVarInt(pID,"Eingeloggt") == 0)return SendClientMessage(playerid,SAMP_WEISS,"Der angegebene Spieler ist nicht eingeloggt!");
    if(IsPlayerNPC(pID))return SendClientMessage(playerid,SAMP_WEISS,"Das kannst du nicht!");
    format(string,sizeof(string),"AdminBefehl: Der Admin %s (ID:%i) hat den Spieler %s (ID:%i) gespawnt.",Spieler[playerid][pName],playerid,Spieler[pID][pName],pID);
    SendAdminMessage(LEUCHTENDESROT,string);
    SendClientMessage(playerid,GRUEN,string);
    SaveAccount(pID);
    Spieler[pID][pIssureKiller] = -1;
    Spieler[pID][pFriedhof] = 0;
    Spieler[pID][pRobProtect] = 0;
    Spieler[pID][pFriedhofTime] = 0;
    Spieler[pID][pInHospital] = 0;
    Spieler[pID][pRevived] = 0;
    Spieler[pID][pNextDeath] = 0;
    Spieler[pID][pDeath] = 0;
    Spieler[pID][pDeathTime] = 0;
    return SpawnPlayerEx(pID);


  • stock SpawnPlayerEx(playerid)
    {
    if(!IsPlayerConnected(playerid))return 0;
    if(IsPlayerInAnyVehicle(playerid)) RemovePlayerFromVehicle(playerid);
    ClearAnimations(playerid);
    SpawnPlayer(playerid);
    return 1;
    }

  • Da hast du deine Antwort du fragt nicht ab ob er kanst hat
    das heiß du musst abfragen ob er knast hat und ihn dort hin porten zb so



    stock SpawnPlayerEx(playerid)
    {
    if(!IsPlayerConnected(playerid))return 0;
    if(IsPlayerInAnyVehicle(playerid)) RemovePlayerFromVehicle(playerid);
    ClearAnimations(playerid);
    if{Spieler[pID][pJailedCount] >= 1)
    {
    SetPlayerPos(playerid,x,y,z); //hier die position vom knast hin
    SetPlayerInterior(playerid,ID); //wenn dieser in einem Interior ist dann hier die id hin!
    }
    else{SpawnPlayer(playerid);}
    return 1;
    }


    versuch es ma so ;)


    //edit fehler im code ebend angepasst
    //edit2 hälfte vergessen vom code :/ :D

  • wo muss ich das einfügen. über dem hier:


    • stock SpawnPlayerEx(playerid)
    • {
    • if(!IsPlayerConnected(playerid))return 0;
    • if(IsPlayerInAnyVehicle(playerid)) RemovePlayerFromVehicle(playerid);
    • ClearAnimations(playerid);
    • SpawnPlayer(playerid);
    • return 1;
    • }

    ????