SA-MP Forums Archive
Checking time left in settimerex. - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: SA-MP Scripting and Plugins (https://sampforum.blast.hk/forumdisplay.php?fid=8)
+--- Forum: Scripting Help (https://sampforum.blast.hk/forumdisplay.php?fid=12)
+--- Thread: Checking time left in settimerex. (/showthread.php?tid=526959)



Checking time left in settimerex. - WildWave - 20.07.2014

Hey guys so i try to check when someone in mute how much time he have to be unmuted
so this is what i done :
PHP код:
new TimeUnMute[MAX_PLAYERS];
TimeUnMute[playerid] = SetTimerEx("MuteEnd"30000false"dd"playerid);
if(
InMute[playerid] == 1) return SendFormatMessage(playeridred"You can talk more %d seconds",TimeUnMute[playerid]),0
And its dosent work, why?


Re: Checking time left in settimerex. - GeekSiMo - 20.07.2014

Use GetTickCount :When the Timer Begin and store it in a variable, and in OnPlayerText variable2 = variable - gettikecount
https://sampwiki.blast.hk/wiki/GetTickCount


Re: Checking time left in settimerex. - WildWave - 20.07.2014

Quote:
Originally Posted by GeekSiMo
Посмотреть сообщение
Use GetTickCount :When the Timer Begin and store it in a variable, and in OnPlayerText variable2 = variable - gettikecount
https://sampwiki.blast.hk/wiki/GetTickCount
Dosent understand


Re: Checking time left in settimerex. - Scottas - 20.07.2014

because TimeUnMute is only a handler (that's what SetTimerEx returs), not a some kind of counter.
pawn Код:
new TimeUnMute[MAX_PLAYERS]
       MuteStart[MAX_PLAYERS];

TimeUnMute[playerid] = SetTimerEx("MuteEnd", 30000, false, "dd", playerid);
MuteStart[playerid] = GetTickCount();

if(InMute[playerid] == 1) return SendFormatMessage(playerid, red, "You can talk more %d seconds",(GetTickCount()-MuteStart[playerid])/1000),0;



Re: Checking time left in settimerex. - WildWave - 20.07.2014

Quote:
Originally Posted by Scottas
Посмотреть сообщение
because TimeUnMute is only a handler (that's what SetTimerEx returs), not a some kind of counter.
pawn Код:
new TimeUnMute[MAX_PLAYERS]
       MuteStart[MAX_PLAYERS];

TimeUnMute[playerid] = SetTimerEx("MuteEnd", 30000, false, "dd", playerid);
MuteStart[playerid] = GetTickCount();

if(InMute[playerid] == 1) return SendFormatMessage(playerid, red, "You can talk more %d seconds",(GetTickCount()-MuteStart[playerid])/1000),0;
Thanks !


Re: Checking time left in settimerex. - WildWave - 20.07.2014

Quote:
Originally Posted by Scottas
Посмотреть сообщение
because TimeUnMute is only a handler (that's what SetTimerEx returs), not a some kind of counter.
pawn Код:
new TimeUnMute[MAX_PLAYERS]
       MuteStart[MAX_PLAYERS];

TimeUnMute[playerid] = SetTimerEx("MuteEnd", 30000, false, "dd", playerid);
MuteStart[playerid] = GetTickCount();

if(InMute[playerid] == 1) return SendFormatMessage(playerid, red, "You can talk more %d seconds",(GetTickCount()-MuteStart[playerid])/1000),0;
Still dont work.


Re: Checking time left in settimerex. - Jefff - 20.07.2014

pawn Код:
new TimeUnMute[MAX_PLAYERS];

TimeUnMute[playerid] = gettime() + 30; // 30sec

if(TimeUnMute[playerid] > 0)
{
    new TimeToEnd = (TimeUnMute[playerid] - gettime());
    if(TimeToEnd > 0) return !SendFormatMessage(playerid, red, "You can talk more %d seconds",TimeToEnd);
    TimeUnMute[playerid] = 0;
}