Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <a_samp>
- #define COLOR_WHITE 0xFFFFFF
- new AFK[MAX_PLAYERS];
- new string[64];
- new afkSeconds[MAX_PLAYERS];
- new afkMinutes[MAX_PLAYERS];
- new afkHours[MAX_PLAYERS];
- public OnPlayerConnect(playerid)
- {
- AFK[playerid] = 0;
- return 1;
- }
- public OnPlayerDisconnect(playerid, reason)
- {
- AFK[playerid] = 0;
- return 1;
- }
- public OnPlayerText(playerid, text[])
- {
- if(AFK[playerid])
- return SendClientMessage(playerid, COLOR_WHITE, "Your AFK , You Cant Talk, to back type : /unafk"),0;
- return 1;
- }
- public OnPlayerCommandText(playerid, cmdtext[])
- {
- if(AFK[playerid])
- return SendClientMessage(playerid, COLOR_WHITE, "Your AFK, You Cant Use Commands , for back Type : /unafk"),0;
- if (strcmp("/afk", cmdtext, true, 10) == 0)
- {
- new afkTimers[MAX_PLAYERS];
- afkTimers[playerid] = SetTimerEx("afkTimers", 1000, true, "i", playerid);
- AFK[playerid] = 1;
- SendClientMessage(playerid,COLOR_WHITE,"Your Now AFK, To Back Press : /unafk");
- format(string,sizeof(string),"%s Is Now AFK !",GetName(playerid));
- SendClientMessageToAll(COLOR_WHITE, string);
- TogglePlayerControllable(playerid, 0);
- ResetPlayerWeapons(playerid);
- return 1;
- }
- if (strcmp("/unafk", cmdtext, true, 10) == 0)
- {
- new afkTimers[MAX_PLAYERS];
- KillTimer(afkTimers[playerid]);
- AFK[playerid] = 0;
- SendClientMessage(playerid, COLOR_WHITE, "Your Back From AFK, Have Fun");
- format(string,sizeof(string),"%s Back From AFK !",GetName(playerid));
- SendClientMessageToAll(COLOR_WHITE, string);
- TogglePlayerControllable(playerid, 1);
- ResetPlayerWeapons(playerid);
- }
- return 0;
- }
- stock GetName(playerid)
- {
- new szName[MAX_PLAYER_NAME];
- GetPlayerName(playerid, szName, sizeof(szName));
- return szName;
- }
- forward afkTimers(playerid);
- public afkTimers(playerid)
- {
- new Float:X,Float:Y,Float:Z;
- format(string,sizeof(string),"%d");
- AFK[playerid] = Create3DTextLabel(string, 0xff22ff, X,Y,Z, 40.0, 0, 0);
- for(new i=0; i < MAX_PLAYERS; i++)
- {
- if(IsPlayerConnected(i) && AFK[i])
- {
- afkSeconds[i]++;
- if(afkSeconds[i] >= 60)
- {
- afkMinutes[i]++;
- if(afkMinutes[i] >= 60)
- {
- afkHours[i]++;
- }
- }
- }
- }
- return 1;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement