27.07.2016, 17:23
Hi. How to do a gui label, when player comes from AFK, for him will show label with text: You are AFK and 2 buttons ( 1 - play, 2 - still be AFK).
AFK system:
AFK system:
Code:
new AFKTime[MAX_PLAYERS]; new AFKTimer[MAX_PLAYERS]; new Text3D:label[MAX_PLAYERS]; forward AFKCheck(); public OnPlayerConnect(playerid) { AFKTimer[playerid] = SetTimer("AFKCheck",1000,1); label[playerid] = Create3DTextLabel(" ", 0xFFFFFFFF, 30.0, 40.0, 50.0, 40.0, 0); Attach3DTextLabelToPlayer(label[playerid], playerid, 0.0, 0.0, 0.7); return 1; } public OnPlayerUpdate(playerid) { AFKTime[playerid] = 0; Update3DTextLabelText(label[playerid], 0xFFFFFFFF, " "); return 1; } public AFKCheck() { new Float:Pos[3]; for(new i = 0; i < MAX_PLAYERS; i++) { GetPlayerPos(i,Pos[0],Pos[1],Pos[2]); if(IsPlayerInRangeOfPoint(i,2,Pos[0],Pos[1],Pos[2])) { AFKTime[i]++; } if(AFKTime[i] > 20) { new string[100]; format(string, sizeof string, "This player is AFK {00FF00}(%d Seconds)", AFKTime[i]); Update3DTextLabelText(label[i], 0xFFFFFFFF, string); } } return 1; }