Balkan SA:MP

PAWN skriptanje, gamemodovi, filterskripte, include fajlovi, mape, pluginovi => Razgovor u vezi PAWN - skriptanja => Temu započeo: Sottra poslato Mart 30, 2015, 21:25:50 POSLE PODNE

Naslov: [Pomoc] AFK
Poruka od: Sottra poslato Mart 30, 2015, 21:25:50 POSLE PODNE
Skripta koju koristim: Moja
Detaljan opis problema: Stavicu dole koji sam INC uzeo i sve kako je trebalo dodao sam u svoj GM. Kako sad da napravim da pise iznad igraca koliko vremena je afk i kako da napravim da kicka igraca kad afka pola sata? Hvala unapred
Dio skripte: #include <a_samp>

#define MAX_AFK_TIME 60000

enum e_STATE
{
e_STATE_UPDATING,
e_STATE_NONE,
e_STATE_CONNECTED
};

new gLastUpdate[MAX_PLAYERS], e_STATE:gState[MAX_PLAYERS] = {e_STATE_NONE, ...};

forward PAUSE_CheckPlayers();
forward OnPlayerPause(playerid);
forward PAUSE_OnGameModeInit();
forward PAUSE_OnPlayerConnect(playerid);
forward PAUSE_OnPlayerDisconnect(playerid, reason);
forward PAUSE_OnPlayerUpdate(playerid);

public PAUSE_OnGameModeInit()
{
    SetTimer("CheckPlayers", 1000, 1);
return 1;
}

public PAUSE_OnPlayerConnect(playerid)
{
    gState[playerid] = e_STATE_CONNECTED;
return 1;
}

public PAUSE_OnPlayerDisconnect(playerid, reason)
{
gState[playerid] = e_STATE_NONE;
return 1;
}

public PAUSE_OnPlayerUpdate(playerid)
{
gLastUpdate[playerid] = GetTickCount();
gState[playerid] = e_STATE_UPDATING;
return 1;
}

public PAUSE_CheckPlayers()
{
for(new i; i < MAX_PLAYERS; ++i)
{
if((gState[i] == e_STATE_UPDATING) && (GetTickCount() - MAX_AFK_TIME >= gLastUpdate[i]))
{
CallLocalFunction("OnPlayerPause", "d", i);
}
}
return 1;
}

Neke slike/video za lakse dobivanje pomoci(neobavezno): //
Naslov: Odg: [Pomoc] AFK
Poruka od: K ROSE poslato Mart 30, 2015, 21:50:08 POSLE PODNE
Evo ti ovako..
Nabrzaka sam otkuco,ako bude kakva greskica i eror postavi ispod

#undef MAX_PLAYERS
#define MAX_PLAYERS 200 //K

#define COLOR_GREEN 0x33AA33AA

new afkTime[MAX_PLAYERS];

forward oneSecond();
public oneSecond()
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i) && !IsPlayerNPC(i))
{
//Label pocinje pokazivati kada igrac nije u igrici 30 sekundi
if(afkTime[i] >= 30)
{
new caption[32];
format(caption, sizeof(caption), "AFK - %s seconds.", afkTime[i]);
SetPlayerChatBubble(i, caption, COLOR_GREEN, 20.0, 1500);
}

afkTime[i]++;
}
}

return 1;
}

public OnGameModeInit()
{
SetTimer("oneSecond", 1000, true);

return 1;
}

public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
afkTime[playerid] = 0;

return 1;
}

public OnPlayerConnect(playerid)
{
afkTime[playerid] = 0;

return 1;
}
Naslov: Odg: [Pomoc] AFK
Poruka od: Sottra poslato Mart 30, 2015, 22:59:36 POSLE PODNE
Jel sad kad stavim taj kod što si napiso jel mi treba onaj include što sam gore naveo jel ga mogu ukloniti?
Naslov: Odg: [Pomoc] AFK
Poruka od: K ROSE poslato Mart 30, 2015, 23:17:44 POSLE PODNE
Ne treba ti Include,ovo sam ti otkucao i to ubaci u svoj gamemod.
Naslov: Odg: [Pomoc] AFK
Poruka od: Sottra poslato Mart 31, 2015, 11:10:56 PRE PODNE
Hvala, možete lock.