Hey Leute,
wie kann ich machen das wenn man im Knast ist nur im Knast nicht Alcatraz,
das man jede 40 Sekunden gespawnt wird.
Da ich nicht will das man den GBUG ausnutzt.
Hoffe mir kann wer weiterhelfen
Mfg
Strato.
Hey Leute,
wie kann ich machen das wenn man im Knast ist nur im Knast nicht Alcatraz,
das man jede 40 Sekunden gespawnt wird.
Da ich nicht will das man den GBUG ausnutzt.
Hoffe mir kann wer weiterhelfen
Mfg
Strato.
Mach sowas wie ein Gebiet und dann frag ab wenn der Spieler nicht im Gebiet ist wird er wieder hin geportet. Oder mit den Worldbounds.
Einfach einen Timer einbauen ungefähr so:
//in den /arrest befehl und halt auf die giveplayerid ausrichten
SetTimerEx("Knasti", 1000*40, 1, "i", playerid);
//unten im Script
forward Knasti(playerid);
public Knasti(playerid)
{
SetPlayerInterior(playerid, 6);
SetPlayerPos(playerid, X, Y, Z);//hier halt die Knast Koordinaten rein
return 1;
}
mfg.
Mache ja ein Knast und wenn die Person das gebiet verlässt soll er eins der Zellen rein geportet werden.
Wie kann man das überhaupt machen?
Mache ja ein Knast und wenn die Person das gebiet verlässt soll er eins der Zellen rein geportet werden.
Wie kann man das überhaupt machen?
Der Spieler kann dieses Feld dann nicht verlassen und sobald er es versucht, fliegt er wieder in dieses Feld !
mfg.
SetPlayerWorldBounds(playerid, 20.0, 0.0, 20.0, 0.0);
Wie funktioniert das so richtig?
//Edit
wo einfügen und wie weiss das teil wo es den spieler wieder hinbringen soll?
durch die xmin und x max und die ymin und ymax koordienaten
Wo füg ich das ein?
if(strcmp(cmd, "/arrest", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(gTeam[playerid] == 2 || IsACop(playerid) || PlayerInfo[playerid][pMember] == 12 || PlayerInfo[playerid][pLeader] == 12 || PlayerInfo[playerid][pMember] == 2 || PlayerInfo[playerid][pLeader] == 2 || PlayerInfo[playerid][pMember] == 3 || PlayerInfo[playerid][pLeader] == 3)
{
if(OnDuty[playerid] != 1 && PlayerInfo[playerid][pMember] == 1)
{
SendClientMessage(playerid, COLOR_GREY, " Du bist nicht im Dienst!");
return 1;
}
if(IsPlayerInRangeOfPoint(playerid,6.0, -1588.5958,710.0782,-5.2422))
{// Jail spot
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, "Benutze: /arrest [preis] [zeit (minuten)] [kaution (0=nein 1=ja)] [kationspreis]");
SendClientMessage(playerid, COLOR_GRAD2, "Tipp: Beim Normalfall 2.000$ + 3 Minuten pro Wanted und beim Stellen 1.000$ + 2 Minuten pro Wanted");
return 1;
}
moneys = strval(tmp);
if(moneys < 1 || moneys > 9999999) { SendClientMessage(playerid, COLOR_GREY, " Das Bußgeld muss zwischen 1 und 99999$ betragen!"); return 1; }
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, "Benutze: /arrest [preis] [zeit (minuten)] [kaution (0=nein 1=ja)] [kationspreis]");
SendClientMessage(playerid, COLOR_GRAD2, "Tipp: Beim Normalfall 2.000$ + 3 Minuten pro Wanted und beim Stellen 1.000$ + 2 Minuten pro Wanted");
return 1;
}
new time = strval(tmp);
if(time < 1 || time > 150) { SendClientMessage(playerid, COLOR_GREY, " Die Minuten der Haftzeit dürfen nicht unter 1 oder über 60 liegen !"); return 1; }
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, "Benutze: /arrest [preis] [zeit (minuten)] [kaution (0=nein 1=ja)] [kationspreis]");
SendClientMessage(playerid, COLOR_GRAD2, "Tipp: Beim Normalfall 2.000$ + 3 Minuten pro Wanted und beim Stellen 1.000$ + 2 Minuten pro Wanted");
return 1;
}
new bail = strval(tmp);
if(bail < 0 || bail > 1) { SendClientMessage(playerid, COLOR_GREY, " Die Möglichkeit einer Kaution kann entweder mit 0 abgelehnt-, oder mit 1 erlaubt werden !"); return 1; }
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, "Benutze: /arrest [preis] [zeit (minuten)] [kaution (0=nein 1=ja)] [kationspreis]");
SendClientMessage(playerid, COLOR_GRAD2, "Tipp: Beim Normalfall 2.000$ + 3 Minuten pro Wanted und beim Stellen 1.000$ + 2 Minuten pro Wanted");
return 1;
}
new bailprice = strval(tmp);
if(bailprice < 0 || bailprice > 3000000) { SendClientMessage(playerid, COLOR_GREY, " Der Kautionspreis darf nicht unter $1 oder über $3000000 liegen !"); return 1; }
new suspect = GetClosestPlayer(playerid);
if(IsACop(suspect))
{
SendClientMessage(playerid, COLOR_GRAD2, " Du kannst keinen Beamten einsperren!");
return 1;
}
if(IsPlayerConnected(suspect))
{
if(GetDistanceBetweenPlayers(playerid,suspect) < 5)
{
GetPlayerName(suspect, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
if(WantedLevel[suspect] < 1)
{
SendClientMessage(playerid, COLOR_GREY, " Der Spieler ist nicht gesucht!");
return 1;
}
new string2[256];
GivePlayerMoney(playerid, moneys/2);
FraktionsKasse[0] += moneys/2;
format(string, sizeof(string), "* Du hast %s eingesperrt für $%d!", giveplayer,moneys);
SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
format(string2, sizeof(string2), " << Gesuchter: %s wurde von %s Eingespert >>",giveplayer,sendername);
SendClientMessageToAll(COLOR_RED,string2);
GivePlayerMoney(suspect, -moneys);
format(string, sizeof(string), "Eingesperrt von %s ~n~ fuer $%d", sendername, moneys);
PlayerCuffed[giveplayerid] = 0;
GameTextForPlayer(suspect, string, 5000, 5);
ResetPlayerWeapons(suspect);
/*
if(PlayerInfo[playerid][pMember]==1||PlayerInfo[playerid][pLeader]==1)
{
format(string, sizeof(string), "<< LS Officer %s hat den Verdächtigen %s eingesperrt >>", sendername, giveplayer);
OOCNews(COLOR_LIGHTRED, string);
}
else if(PlayerInfo[playerid][pMember]==2||PlayerInfo[playerid][pLeader]==2)
{
format(string, sizeof(string), "<< SF Officer %s hat den Verdächtigen %s eingesperrt >>", sendername, giveplayer);
OOCNews(COLOR_LIGHTRED, string);
}
else if(PlayerInfo[playerid][pMember]==3||PlayerInfo[playerid][pLeader]==3)
{
format(string, sizeof(string), "<< Soldat %s hat den Verdächtigen %s eingesperrt >>", sendername, giveplayer);
OOCNews(COLOR_LIGHTRED, string);
}
*/
if(LSPDZellen == 0)//zelle1
{
SetPlayerInterior(suspect, 3);
SetPlayerPos(suspect,197.8290,161.8141,1003.0300);
LSPDZellen += 1;
UnFreeze(playerid);
PlayerCuffed[giveplayerid] = 0;
}
if(LSPDZellen == 1)//zelle2
{
SetPlayerInterior(suspect, 3);
SetPlayerPos(suspect,197.8312,174.6445,1003.0234);
LSPDZellen += 1;
UnFreeze(playerid);
PlayerCuffed[giveplayerid] = 0;
}
if(LSPDZellen == 2)//zelle3
{
SetPlayerInterior(suspect, 3);
SetPlayerPos(suspect,193.4911,174.3988,1003.0234);
LSPDZellen = 0;
UnFreeze(playerid);
PlayerCuffed[giveplayerid] = 0;
}
/*if(LSPDZellen == 0)//zelle4
{
SetPlayerPos(suspect,197.8290,161.8141,1003.0300);
LSPDZellen += 1;
}
if(LSPDZellen == 0)//zelle5
{
SetPlayerPos(suspect,197.8290,161.8141,1003.0300);
LSPDZellen += 1;
}
if(LSPDZellen == 0)//zelle6
{
SetPlayerPos(suspect,197.8290,161.8141,1003.0300);
LSPDZellen += 1;
}*/
PlayerInfo[suspect][pJailTime] = time * 60;
if(bail == 1)
{
JailPrice[suspect] = bailprice;
format(string, sizeof(string), "Du bist für %d Sekunden eingesperrt. Kaution: $%d", PlayerInfo[suspect][pJailTime], JailPrice[suspect]);
SendClientMessage(suspect, COLOR_LIGHTBLUE, string);
PlayerCuffed[giveplayerid] = 0;
}
else
{
JailPrice[suspect] = 0;
format(string, sizeof(string), "Du bist für %d Sekunden eingesperrt. Kaution: nicht möglich", PlayerInfo[suspect][pJailTime]);
SendClientMessage(suspect, COLOR_LIGHTBLUE, string);
PlayerCuffed[giveplayerid] = 0;
}
PlayerInfo[suspect][pJailed] = 1;
PlayerInfo[suspect][pArrested] += 1;
SetPlayerInterior(suspect, 6);
SetPlayerFree(suspect,playerid, "Verhaftet");
WantedPoints[suspect] = 0;
WantedLevel[suspect] = 0;
SetPlayerWantedLevel(suspect,0);
}//distance
}
}
else
{
SendClientMessage(playerid, COLOR_GREY, " Niemand zum Verhaften in deiner Nähe.");
return 1;
}
}
else
{
SendClientMessage(playerid, COLOR_GREY, " Du bist kein Beamter !");
return 1;
}
}//not connected
return 1;
}
if(KnastTime[playerid] > 0)
{
SetPlayerToKnast(playerid,Knast[playerid]);
SendClientMessage(playerid, COLOR_LIGHTRED, " Flüchten bringt nichts, zurück in die Zelle!");
SetPlayerInterior(playerid,3);
return 1;
}
if(PlayerInfo[playerid][pJailed] == 1)
{
SetPlayerInterior(playerid,3);
SetPlayerPos(playerid,197.8290,161.8141,1003.0300);
SetCameraBehindPlayer(playerid);
TogglePlayerControllable(playerid, 1);
SendClientMessage(playerid, COLOR_LIGHTRED, "Flüchten bringt nichts, zurück in die Zelle!");
return 1;
}
public OnPlayerSpawn(playerid){
SetPlayerWorldBounds(playerid, 20.0, 0.0, 20.0, 0.0);//das sind die xmin,xmax ymin und ymax koordinaten
return 1; }
Glaub das war es
Wo einfügen wie will das teil wissen wo er dan hinkommt???