Innactive players
#1

Hello
I have one question
How to get if player is in inactive state (look attachment)

Shall I do it:
-with timers and if player pos. is the same for like 1.5 mins (BAD WAY)
-or if player press (ESC....)button?
-IS THERE ANY FUNCTION TO GET IF PLAYER IS IN THAT STATE (look attachment)

Regards kalanerik99 (DARKBO$$)
Reply
#2

https://sampforum.blast.hk/showthread.php?tid=281590
https://sampforum.blast.hk/showthread.php?tid=479616
Reply
#3

Any other posibility?
Reply
#4

pawn Код:
new PlayaTick[MAX_PLAYERS];

bool:IsPlayerAFK(playerid)
{
    return ( (GetTickCount() - PlayaTick[playerid] ) > 650);
}

public OnPlayerUpdate(playerid)
{
    PlayaTick[playerid] = GetTickCount();
    return 1;
}
Reply
#5

How this should work what doest it do

I made this but nothing pls help

THIS IS REALLY SIMPLE DESIGN (2 SECONDS OF MAKING =) )

PHP код:
new PlayaTick[MAX_PLAYERS];
bool:IsPlayerAFK(playerid)
{
return ( (
GetTickCount() - PlayaTick[playerid] ) > 650);
}
public 
OnPlayerUpdate(playerid)
{
new 
string[512],name[512];
PlayaTick[playerid] = GetTickCount();
foreach(new 
Player)
{
if(
IsPlayerAFK(i))
{
GetPlayerName(i,name,sizeof(name));
format(string,sizeof(string),"%s is inactive",name);
SendClientMessageToAll(-1,string);
}
}
return 
1;

Reply
#6

pawn Код:
new PlayaTick[MAX_PLAYERS], bool:PlayerAFK[MAX_PLAYERS char];

// OnGameModeInit
SetTimer("ScanPlayers",1000,true);

// OnPlayerConnect
PlayerAFK{playerid} = false;

// somewhere in GameMode
forward ScanPlayers();
public ScanPlayers()
{
    static string[40], name[MAX_PLAYER_NAME], Tick;
    Tick = GetTickCount();
    foreach(new i : Player)
    {
        if(((Tick - PlayaTick[i)) > 750))
        {
            if(!PlayerAFK{i})
            {
                PlayerAFK{i} = true;
                GetPlayerName(i,name,sizeof(name));
                format(string,sizeof(string),"%s is inactive",name);
                SendClientMessageToAll(-1,string);
            }
        }
        else
        {
            if(PlayerAFK{i})
            {
                PlayerAFK{i} = false; // player is back from AFK
            }
        }
    }
}

public OnPlayerUpdate(playerid)
{
    PlayaTick[playerid] = GetTickCount();
    return 1;
}
Reply
#7

How would you do it without timer

Like me
Reply
#8

You can't show info without timer
Reply
#9

Why not?
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)