09.01.2017, 15:33
# keywords are PAWN directives, you cannot use them to compare with PAWN natives. Secondly, what are you trying to do with 'char' arrays here? You must have a look over them first before using it. I won't say that player arrays are better than timers. It depends on what you want to do. For instance, if you want to build an anti-spam, you can use GetTickCount to store the last tick and compare it to the current one. Where as on a situation where you need to display random messages every 'X' seconds, I'd prefer a timer.
EDIT : I thought of adding more to this post. To avoid more timers, GetTickCount can also be used with OnPlayerUpdate. But it should be mostly used for short time in game purposes only. An example fit for this would be spawn kill protection. The issue is that OnPlayerUpdate is not called when the game is paused. So if many statements are given under it that are to be executed after given time, it would all get called directly when the player resumes.
EDIT : I thought of adding more to this post. To avoid more timers, GetTickCount can also be used with OnPlayerUpdate. But it should be mostly used for short time in game purposes only. An example fit for this would be spawn kill protection. The issue is that OnPlayerUpdate is not called when the game is paused. So if many statements are given under it that are to be executed after given time, it would all get called directly when the player resumes.