if(strcmp(cmd, "/arrestALC", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(PlayerInfo[playerid][pTot] == 1)
{
SendClientMessage(playerid, COLOR_GREY, "Tote können keine Befehle benutzen!");
return 1;
}
if(gTeam[playerid] == 2)
{
if(OnDuty[playerid] != 1 && PlayerInfo[playerid][pMember] == 1)
{
SendClientMessage(playerid, COLOR_GREY, "Du bist nicht im Dienst!");
return 1;
}
if(!IsPlayerInRangeOfPoint(playerid,20.0, 1804.5670,-1580.3859,13.4552))
{// Jail spot
SendClientMessage(playerid, COLOR_GREY, "Sie sind nicht in der Nähe vom HSG!");
return 1;
}
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GREY, "Benutzung: /arrest [Preis] [Zeit (Minuten)] [Kaution (0=Nein 1=Ja)] [Kautionspreis]");
return 1;
}
moneys = strval(tmp);
if(moneys < 1 || moneys > 100000) { SendClientMessage(playerid, COLOR_GREY, "Der Gefängnispreis darf nicht unter $1 oder über $100000 liegen!"); return 1; }
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GREY, "Benutzung: /arrestALC [Preis] [Zeit (Minuten)] [Kaution (0=Nein 1=Ja)] [Kautionspreis]");
return 1;
}
new time = strval(tmp);
if(time < 1 || time > 60) { SendClientMessage(playerid, COLOR_GREY, "Die Minuten der Haftzeit dürfen nicht unter 1 oder über 60 Minuten liegen!"); return 1; }
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GREY, "Benutzung: /arrestALC [Preis] [Zeit (Minuten)] [Kaution (0=Nein 1=Ja)] [Kautionspreis]");
return 1;
}
new bail = strval(tmp);
if(bail < 0 || bail > 0) { SendClientMessage(playerid, COLOR_GREY, "Keine_Kaution"); return 1; }
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GREY, "Benutzung: /arrestALC [Preis] [Zeit (Minuten)] [Kaution (0=Nein 1=Ja)] [Kautionspreis]");
return 1;
}
new bailprice = strval(tmp);
if(bailprice < 0 || bailprice > 50000000) { SendClientMessage(playerid, COLOR_GREY, "Sie können nicht mehr als 5 Millionen einstellen!!"); return 1; }
new suspect = GetClosestPlayer(playerid);
if(IsACop(suspect))
{
SendClientMessage(playerid, COLOR_GREY, "Du kannst keinen Beamten einsperren!");
return 1;
}
if(IsPlayerConnected(suspect))
{
if(GetDistanceBetweenPlayers(playerid,suspect) < 30)
{
GetPlayerName(suspect, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
if(WantedLevel[suspect] < 5)
{
SendClientMessage(playerid, COLOR_GREY, "Der Spieler hat nicht 6 oder mehr Wanteds!");
return 1;
}
GivePlayerMoney(playerid, moneys);
format(string, sizeof(string), "* Du hast %s für $%d eingesperrt!", giveplayer, moneys);
SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
GivePlayerMoney(suspect, -moneys);
format(string, sizeof(string), "Eingesperrt von %s ~n~ für $%d", sendername, moneys);
GameTextForPlayer(suspect, string, 5000, 5);
ResetPlayerWeapons(suspect);
SetPlayerSpawn(suspect);
if(PlayerInfo[playerid][pMember]==1||PlayerInfo[playerid][pLeader]==1||PlayerInfo[playerid][pMember]==2||PlayerInfo[playerid][pLeader]==2)
{
format(string, sizeof(string), "<< 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), "<< 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);
}
else if(PlayerInfo[playerid][pMember]==21||PlayerInfo[playerid][pLeader]==21)
{
format(string, sizeof(string), "<< Fbi Agent %s hat den Verdächtigen %s eingesperrt >>", sendername, giveplayer);
OOCNews(COLOR_LIGHTRED, string);
}
SetPlayerInterior(suspect, 3);
SetPlayerPos(suspect,197.7353,176.2541,1003.0234);
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);
}
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);
}
PlayerInfo[suspect][pJailed] = 1;
PlayerInfo[suspect][pArrested] += 1;
SetPlayerFree(suspect,playerid, "Festgenommen!");
WantedPoints[suspect] = 0;
WantedLevel[suspect] = 0;
WantLawyer[suspect] = 1;
SetPlayerSpawn(suspect);
}//distance
}//not connected
else
{
SendClientMessage(playerid, COLOR_GREY, "Es ist kein gesuchter in ihrer Nähe.");
return 1;
}
}
else
{
SendClientMessage(playerid, COLOR_GREY, "Sie sind kein Staatsbeamter!");
return 1;
}
}//not connected
return 1;
}
Wie schaff ich dieses"Preis, Kaution...etc" wegzukriegen? Halt man soll einfach /arrestalc [id] und, wenn die Person in der Nähe ist wird er eingesperrt.
/arrest...
- Quetai
- Geschlossen
- Erledigt
-
-
if(strcmp(cmd, "/arrest", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(IsPlayerInRangeOfPoint(playerid, 20.0, 1804.5670, -1580.3859, 13.4552))
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GREY, "Benutze: /arrest [SpielerName/playerid]");
return 1;
}
new giveplayerid = ReturnUser(tmp);
if(IsPlayerConnected(giveplayerid))
{
// blablaalba
//So und hier den ganzen Arrest Kram!
}
}
else
{
SendClientMessage(playerid, COLOR_GREY, "Du bist nicht am Arrest Point");
}
}
} -
Okay, gut.
Eins noch. Ich will, dass der Spieler nur maximal 69 Wantedpunkte haben kann...ich hab's versucht, zwar kam die Fehlermeldung, dass der Spieler nur so und soviele Wantedpunkte haben kann, aber er erhielt trotzdem immer wieder die Wantedpunkte...
if(!strlen(result))
{
SendClientMessage(playerid, COLOR_GREY, "Benutzung: /su [Playerid/Name] [Wantedpunkte] [Verbrechen]");
return 1;
}
if(WantedAnzahl < 1 || WantedAnzahl > 69)
{
SendClientMessage(playerid, COLOR_GREY, "Du kannst mindestens 1 Wantedpunkt und maximal 69 Wantedpunkte vergeben!");
return 1;
}
else
{
WantedLevel[giveplayerid] += WantedAnzahl/10;
WantedPoints[giveplayerid] += WantedAnzahl;
PlayerInfo[playerid][pCrimes] += 1;
format(string, sizeof(string), "Du hast ein Verbrechen begangen (%s). Reporter: %s.",result,sendername);
SendClientMessage(giveplayerid, COLOR_LIGHTRED, string);
format(string, sizeof(string), "Aktuelles Wantedlevel: %d", WantedLevel[giveplayerid]);
SendClientMessage(giveplayerid, COLOR_YELLOW, string);
format(string, sizeof(string), "Aktuelle Wantedpunkte: %d", WantedPoints[giveplayerid]);
SendClientMessage(giveplayerid, COLOR_YELLOW, string);
}
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsACop(i))
{
SendClientMessage(i, COLOR_LIGHTRED, string);
format(string, sizeof(string), "Verbrechen: %s | Wantedlevel des Verbrechers: %d",result, WantedLevel[giveplayerid]);
SendClientMessage(i, COLOR_LIGHTRED, string);
}
}
return 1; -
breadfish.de
Hat das Thema geschlossen.