11.08.2014, 08:35
hey guys, i have an arrest command that is supposed to put a player in jail for 30 seconds when a cop arrests them
it does put the player in jail perfectly but it doesnt release them after 30 seconds.
i cant seem to find what went wrong, i get no compile errors, which is good for the 6400 lines my gamemode now has
this is my /ar command
my forward
and now the public
it does put the player in jail perfectly but it doesnt release them after 30 seconds.
i cant seem to find what went wrong, i get no compile errors, which is good for the 6400 lines my gamemode now has
this is my /ar command
Код:
COMMAND:ar(playerid, params[]) { if(GetPlayerColor(playerid) == 0x0259EAAA) { new toplayer; if(!sscanf(params, "ui", toplayer)) { if(IsPlayerConnected(toplayer)) { new Float:X, Float:Y, Float:Z; GetPlayerPos(playerid, X,Y,Z); if(GetPlayerColor(toplayer) == 0x0259EAAA) return SendClientMessage(playerid, 0xAA3333AA, "You can't Arrest your Squad Mates!"); if(GetPlayerColor(toplayer) == 0xFFFFFFFF) return SendClientMessage(playerid, 0xAA3333AA, "This Player isn't Wanted!"); if(GetPlayerState(toplayer) == PLAYER_STATE_DRIVER) return SendClientMessage(playerid, 0xAA3333AA, "You Can only Arrest Criminals who are on Foot!"); if(GetPlayerState(toplayer) == PLAYER_STATE_PASSENGER) return SendClientMessage(playerid, 0xAA3333AA, "You Can only Arrest Criminals who are on Foot!"); if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER) return SendClientMessage(playerid, 0xAA3333AA, "You Cannot Arrest a Criminal while in a Vehicle!"); if(GetPlayerState(playerid) == PLAYER_STATE_PASSENGER) return SendClientMessage(playerid, 0xAA3333AA, "You Cannot Arrest a Criminal while in a Vehicle!"); if(IsPlayerInRangeOfPoint(toplayer, 5.0, X,Y,Z)) { new string[64]; new name[MAX_PLAYER_NAME], PlayerName[MAX_PLAYER_NAME]; GetPlayerName(playerid, name, sizeof(name)); GetPlayerName(toplayer, PlayerName, sizeof(PlayerName)); format(string, sizeof(string), "Officer %s Has Arrested and Jailed you for 60 Seconds!", name); SendClientMessage(playerid, 0x0259EAAA, string); format(string, sizeof(string), "%s Has Been Arrested!", PlayerName); SendClientMessageToAll(0x0259EAAA, string); SetPlayerPos(toplayer, 264.6288,77.5742,1001.0391); SetPlayerInterior(toplayer, 6); SetPlayerColor(toplayer, 0xFFFFFFFF);//Civilian Color SetPlayerWantedLevel(toplayer, 0); ResetPlayerWeapons(toplayer); jailed[toplayer] = 1; //SetTimerEx("UnJail",60000,false,"i",playerid); // original timer SetTimerEx("UnJail", 30000, 0, "i", playerid); // new timer return 1; } else return SendClientMessage(playerid, 0x0259EAAA, "You Are Not Near The Player."); } else return SendClientMessage(playerid, 0x0259EAAA, "Player Is Not Connected."); } else return SendClientMessage(playerid, 0x0259EAAA, "USAGE: /ar [PlayerId/PartOfName]"); } else return SendClientMessage(playerid, 0x0259EAAA, "You Are Not Cop!"); }
Код:
forward UnJail(playerid);
Код:
public UnJail(playerid) { for(new i; i < MAX_PLAYERS; i++) { if(jailed[i] == 1) { new pname[MAX_PLAYER_NAME]; new string[48]; GetPlayerName(i, pname, sizeof(pname)); SetPlayerPos(i, 255.2078,86.6854,1002.4453); SetPlayerInterior(i, 6); SetPlayerFacingAngle(i, 90); format(string, sizeof(string), "%s (%d) has been Released from Jail.", pname, i); SendClientMessageToAll(0xFFFFFFFF, string); jailed[i] = 0; } return 1; } return 1; }