16.10.2011, 17:04
OnPlayerPause
OnPlayerUnPause and IsPlayerPaused
(needs OnPlayerPause above)
pawn Code:
forward OnPlayerPause(playerid);
new OPP_Timer[MAX_PLAYERS];
public OnPlayerUpdate(playerid)
{
KillTimer(OPP_Timer[playerid]);
OPP_Timer[playerid] = SetTimerEx("OnPlayerPause", 1000, 0, "i", playerid);
return 1;
}
(needs OnPlayerPause above)
pawn Code:
public OnPlayerPause(playerid)
{
OPP_PlayerPaused[playerid] = true;
}
forward OnPlayerUnPause(playerid);
new bool:OPP_PlayerPaused[MAX_PLAYERS] = {false, ...};
public OnPlayerConnect(playerid)
{
OPP_PlayerPaused[playerid] = false;
return 1;
}
#define IsPlayerPaused(playerid) (OPP_PlayerPaused[playerid])
public OnPlayerUpdate(playerid)
{
if (OPP_PlayerPaused[playerid])
{
OPP_PlayerPaused[playerid] = false;
SetTimerEx("OnPlayerUnPause", 0, 0, "i", playerid);
}
return 1;
}