Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #if defined _daused_included
- #endinput
- #else
- #define _daused_included
- #endif
- new
- d_AfkTeszt[MAX_PLAYERS] = false,
- d_Afkzik[MAX_PLAYERS] = false,
- d_Timer[MAX_PLAYERS] = false,
- Float:d_CameraPosok[MAX_PLAYERS][3];
- forward OnPlayerPause(playerid);
- forward OnPlayerUnPause(playerid);
- static
- bool:daused_g_HasOPP = false,
- bool:daused_g_HasOPUP = false;
- #if defined FILTERSCRIPT
- public OnFilterScriptInit()
- {
- daused_g_HasOPP = funcidx("OnPlayerPause") != -1;
- daused_g_HasOPUP = funcidx("OnPlayerUnPause") != -1;
- return
- CallLocalFunction("daused_OnFilterScriptInit", "");
- }
- #if defined _ALS_OnFilterScriptInit
- #undef OnFilterScriptInit
- #else
- #define _ALS_OnFilterScriptInit
- #endif
- #define OnFilterScriptInit daused_OnFilterScriptInit
- forward daused_OnFilterScriptInit();
- #else
- public OnGameModeInit()
- {
- daused_g_HasOPP = funcidx("OnPlayerPause") != -1;
- daused_g_HasOPUP = funcidx("OnPlayerUnPause") != -1;
- if(funcidx("daused_OnGameModeInit") != -1)
- {
- return CallLocalFunction("daused_OnGameModeInit", "");
- }
- return true;
- }
- #if defined _ALS_OnGameModeInit
- #undef OnGameModeInit
- #else
- #define _ALS_OnGameModeInit
- #endif
- #define OnGameModeInit daused_OnGameModeInit
- forward daused_OnGameModeInit();
- #endif
- public OnPlayerUpdate(playerid)
- {
- d_AfkTeszt[playerid]++;
- return CallLocalFunction("daused_OnPlayerUpdate", "i", playerid);
- }
- #if defined _ALS_OnPlayerUpdate
- #undef OnPlayerUpdate
- #else
- #define _ALS_OnPlayerUpdate
- #endif
- #define OnPlayerUpdate daused_OnPlayerUpdate
- forward daused_OnPlayerUpdate(playerid);
- public OnPlayerConnect(playerid)
- {
- d_Timer[playerid] = SetTimerEx("CheckIfPaused", 500, true, "i", playerid);
- d_AfkTeszt[playerid] = 0;
- d_Afkzik[playerid] = false;
- d_Timer[playerid] = false;
- return CallLocalFunction("daused_OnPlayerConnect", "i", playerid);
- }
- #if defined _ALS_OnPlayerConnect
- #undef OnPlayerConnect
- #else
- #define _ALS_OnPlayerConnect
- #endif
- #define OnPlayerConnect daused_OnPlayerConnect
- forward daused_OnPlayerConnect(playerid);
- public OnPlayerDisconnect(playerid, reason)
- {
- KillTimer(d_Timer[playerid]);
- d_AfkTeszt[playerid] = 0;
- d_Afkzik[playerid] = false;
- d_Timer[playerid] = false;
- return CallLocalFunction("daused_OnPlayerDisconnect", "ii", playerid, reason);
- }
- #if defined _ALS_OnPlayerDisconnect
- #undef OnPlayerDisconnect
- #else
- #define _ALS_OnPlayerDisconnect
- #endif
- #define OnPlayerDisconnect daused_OnPlayerDisconnect
- forward daused_OnPlayerDisconnect(playerid, reason);
- forward CheckIfPaused(playerid);
- public CheckIfPaused(playerid)
- {
- new
- Float:CameraPos[3];
- GetPlayerCameraPos(playerid, CameraPos[0], CameraPos[1], CameraPos[2]);
- if(d_AfkTeszt[playerid] && d_Afkzik[playerid] && !InvalidStates(playerid))
- {
- d_Afkzik[playerid] = false;
- if(daused_g_HasOPUP)
- {
- CallLocalFunction("OnPlayerUnPause", "i", playerid);
- }
- }
- else if(!d_AfkTeszt[playerid] && !d_Afkzik[playerid] && (d_CameraPosok[playerid][0] == CameraPos[0]) && (d_CameraPosok[playerid][1] == CameraPos[1]) && (d_CameraPosok[playerid][2] == CameraPos[2]) && !InvalidStates(playerid))
- {
- d_Afkzik[playerid] = true;
- if(daused_g_HasOPP)
- {
- CallLocalFunction("OnPlayerPause", "i", playerid);
- }
- }
- GetPlayerCameraPos(playerid, d_CameraPosok[playerid][0], d_CameraPosok[playerid][1], d_CameraPosok[playerid][2]);
- d_AfkTeszt[playerid] = 0;
- return true;
- }
- stock bool:IsPlayerPaused(playerid)
- return d_Afkzik[playerid];
- stock InvalidStates(playerid)
- {
- new
- pState = GetPlayerState(playerid);
- if(pState == 0 || pState == 7)
- return true;
- else
- return false;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement