Quote:
Originally Posted by Mionee
The following compiles, I've added comments to explain why I do things.
pawn Код:
new reducetimer[MAX_PLAYERS]; // timer variable
public OnPlayerUpdate(playerid) { if(GetPlayerWantedLevel(playerid) >= 1) { reducetimer[playerid] = SetTimerEx("ReduceWantedLevel", 60000, false, "i", playerid); // we store it in a variable so we can kill the timer later } return 1; }
forward ReduceWantedLevel(playerid); public ReduceWantedLevel(playerid) { if(GetPlayerWantedLevel(playerid) >= 1) { SetPlayerWantedLevel(playerid, GetPlayerWantedLevel(playerid) -1); } // if player has no wanted level left, kill the timer else if(GetPlayerWantedLevel(playerid) == 0) return KillTimer(reducetimer[playerid]); // theres no reason for this timer to keep running if they have no wanted level return 1; }
If you have any queries, please do ask. Also, I'm not entirely sure but I think it's very dodgy to use timers under OnPlayerUpdate.
|
Thanks for the code & for explaining .
I kinda messed it up so thats why i asked .
Thanks once again.
EDIT: Since you're discussing about wrong/right places of putting this timer , where should i put it ?