02.03.2012, 15:08
This is my arrest system:
Timer Callback
What happend? Every 60 secs ALL the players are unjailed :/ is impossible to play! +REP!
pawn Код:
CMD:ar1(playerid, params[])
{
new id;
if(GetPlayerSkin(playerid) == 285 || GetPlayerSkin(playerid) == 282 || GetPlayerSkin(playerid) == 281 || GetPlayerSkin(playerid) == 283 || GetPlayerSkin(playerid) == 288)
if (sscanf(params, "u", id)) SendClientMessage(playerid, COLOR_LIGHTBLUE, "Usage: /ar1 [ID]");
if(GetDistanceBetweenPlayers(playerid,id)> 2)return SendClientMessage(playerid,COLOR_RED,"[INFO]You are to far from that player");
else if (id == INVALID_PLAYER_ID) SendClientMessage(playerid, COLOR_RED, "[INFO]Player not found");
else
{
SetPlayerPos(id, 226.69999694824,108.5,998.59997558594);
SetPlayerVirtualWorld(id, -1);
SetPlayerInterior(id, 10);
GivePlayerMoney(id, -1500);
ResetPlayerWeapons(id);
SendClientMessage(id, COLOR_GOLD, "[INFO]You have been Arrested, Your Sentence is 60 Seconds.");
SendClientMessage(playerid, COLOR_GOLD, "[INFO]Player Arrested succesfully. (Arrest type: 1)");
JailTime[playerid] = 60000;
JailTimer[playerid] = SetTimerEx("Unjail",60000,true,"i",playerid);
SetPlayerColor(id,orange);
TogglePlayerControllable(id, 1);
}
return 1;
}
pawn Код:
forward Unjail(playerid);
public Unjail(playerid)
{
new id;
//put it here
if(JailTime[id] <= 60000)
{
//teleport the out of jail
JailTime[id] = 60000;
KillTimer(JailTimer[id]);
SetPlayerPos(id, -2149,-2395.6000976563,30.200000762939);
SetPlayerInterior(id, 0);
SetPlayerVirtualWorld(id, 0);
SetPlayerColor(id,COLOR_WHITE);
SendClientMessage(id, COLOR_GOLD,"[INFO]You have been UnJailed, Now try to be a good civilian!");
}
return 1;
}