#include <a_samp> new Passenger[MAX_PLAYERS]; new Prisoned[MAX_PLAYERS]; new PrisonTime[MAX_PLAYERS]; #define COLOR_YELLOW 0xFFFF00AA public Timer() { new i; for(i=0;i<MAX_PLAYERS;i++) { if (IsPlayerConnected(i)) { if (Prisoned[i]) { if (PrisonTime[i]>0) { JailTime(i); } else { GameTextForPlayer(i, "You unjail", 1000, 6); UnJail(i); } } } } SetTimer("Timer",1000,0); } public JailTime(playerid) { new msg[256]; new m,s; m=PrisonTime[playerid]/60; s=PrisonTime[playerid]%60; format(msg, sizeof(msg), "~y~%d:%d",m,s); GameTextForPlayer(playerid, msg, 1500, 3); PrisonTime[playerid]--; } public UnJail(playerid) { Prisoned[playerid]=0; SetPlayerInterior(playerid,0); SetPlayerPos(playerid,1544.319,-1672.961,13.5581); } public Jail(playerid,srok) { Prisoned[playerid]=1; SetPlayerInterior(playerid,6); SetPlayerPos(playerid,265.4426, 79.16441, 1001.039); PrisonTime[playerid]=srok; } public OnGameModeInit() { print("GameModeInit()"); Timer(); return 1; } public OnPlayerDisconnect(playerid) { printf("OnPlayerDisconnect(%d)", playerid); Passenger[playerid]=0; Prisoned[playerid]=0; PrisonTime[playerid]=0; return 1; } public OnPlayerSpawn(playerid) { printf("OnPlayerSpawn(%d)", playerid); if (Prisoned[playerid]==1) { Jail(playerid,PrisonTime[playerid]); } else { Passenger[playerid]=0; } return 1; } public OnPlayerDeath(playerid, killerid, reason) { SendDeathMessage(killerid,playerid,reason); if (Prisoned[killerid]) { PrisonTime[killerid]+=20; SendClientMessage(playerid,COLOR_YELLOW,"*** Вашему убийци добавили пару годиков за убийство =)"); SendClientMessage(killerid,COLOR_YELLOW,"*** Тебе добавили 20 секунд за убийство"); } if (IsPlayerInAnyVehicle(killerid)) { if (Passenger[killerid]==0) { Jail(killerid,40); SendClientMessage(playerid,COLOR_YELLOW,"*** Вашего убийцу посадили в тюрьму drive-by"); SendClientMessage(killerid,COLOR_YELLOW,"*** Тебя посадили в тюрьму за drive-by"); } } return 1; } public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger) { printf("OnPlayerEnterVehicle(%d, %d, %d)", playerid, vehicleid,ispassenger); if (ispassenger==1) { Passenger[playerid]=1; } return 1; } public OnPlayerExitVehicle(playerid, vehicleid) { printf("OnPlayerExitVehicle(%d, %d)", playerid, vehicleid); Passenger[playerid]=0; return 1; } |