Hallo, bei dem Befehl Bankrob fängt er an die Bank zu überfallen aber er bricht dann direkt ab, weil ich die Bank angeblich verlassen habe. Obwohl ich sie nicht verlassen habe.
Ich würde mich freuen, wenn ihr mir helfen könnt.
Code
public OnPlayerTimer()
{
new string[128];
for(new i=0; i<MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
if(pIsRobbingBank[i] == 1)
{
if(!IsPlayerInRangeOfPoint(i, 30.0, 1459.0498,-1017.4116,25.4637))
{
pIsRobbingBank[i] = 0;
pRobbingTimer[i] = 0;
format(string, sizeof(string), "Bankräuber %s hat die Bank vorzeitig verlassen!", Spieler[i][Name]);
SendClientMessageToAll(COLOR_LIGHTBLUE, string);
SendClientMessage(i, COLOR_LIGHTBLUE, "Der Bank-Raub wurde abgebrochen.");
}
if(pRobbingTimer[i] > 0)
{
pRobbingTimer[i] --;
if(pRobbingTimer[i] == 180)
{
SendClientMessage(i, COLOR_LIGHTBLUE, "Noch 3 Minuten bis die Bank erfolgreich ausgeraubt wurde!");
}
if(pRobbingTimer[i] == 120)
{
SendClientMessage(i, COLOR_LIGHTBLUE, "Noch 2 Minuten bis die Bank erfolgreich ausgeraubt wurde!");
}
if(pRobbingTimer[i] == 60)
{
SendClientMessage(i, COLOR_LIGHTBLUE, "Noch 1 Minute bis die Bank erfolgreich ausgeraubt wurde!");
}
if(pRobbingTimer[i] <= 0)
{
new preis = randomex(20000, 80000);
format(string, sizeof(string), "%s hat erfolgreich die Bank ausgeraubt. ($%d)", Spieler[i][Name], preis);
SendClientMessageToAll(COLOR_LIGHTBLUE, string);
GivePlayerMoney(i, preis);
SendClientMessage(i, COLOR_LIGHTBLUE, "Nun sieh zu, dass du hier abhaust!");
pIsRobbingBank[i] = 0;
pRobbingTimer[i] = 0;
Server[Staatskasse] -= preis;
}
}
}
}
}
return 1;
}
Alles anzeigen
Ongamemodeinit:
Code
ocmd:bankrob(playerid, params[])
{
new cops, string[128];
if(Spieler[playerid][Level] < 3)return SendClientMessage(playerid, COLOR_GRAD1, "Das kannst du erst ab Level 3!");
if(!IsPlayerInRangeOfPoint(playerid, 6.0, 1424.3530,-1004.1053,1639.7909))return SendClientMessage(playerid, COLOR_GRAD1, "Du befindest dich nicht am Banktresor.");
if(Fraktion[Spieler[playerid][Frak]][Staat] == 1)return SendClientMessage(playerid, COLOR_GRAD1, "Du kannst als Beamter keine Bank ausrauben.");
if(gettime() < BankRobTime)return SendClientMessage(playerid, COLOR_GRAD1, "Die Bank wurde vor kurzem ausgeraubt, komm später wieder!");
for(new i=0; i<MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
if(Fraktion[Spieler[i][Frak]][Polizei] == 1)
{
cops++;
}
}
}
if(cops < 1)return SendClientMessage(playerid, COLOR_GRAD1, "Es müssen mindestens 2 Beamte online sein!");
BankRobTime = gettime()+(120*120); // Erst in 2 Stunden wieder
GiveWanted("Niemand", playerid, "Bankraub", MAX_WANTEDBANKRAUB);
SendClientMessage(playerid, COLOR_RED, "Du hast ein Verbrechen begangen. (Bankraub) Reporter: Unbekannt");
format(string, sizeof(string), "HQ: %s (ID: %d) hat ein Verbrechen begangen: Bankraub, over.", Spieler[playerid][Name], playerid);
SendHQMessage(COLOR_DARKBLUE, string);
format(string, sizeof(string), "HQ: Reporter: Unbekannt, Aktuelles Wantedlevel: %d, over.", Spieler[playerid][Wanted]);
SendHQMessage(COLOR_DARKBLUE, string);
pIsRobbingBank[playerid] = 1;
pRobbingTimer[playerid] = 240;
format(string, sizeof(string), "%s raubt die Bank in Los Santos aus!", Spieler[playerid][Name]);
SendClientMessageToAll(COLOR_LIGHTBLUE, string);
return 1;
}
Alles anzeigen