Re: Smarter NSTimer?
Re: Smarter NSTimer?
- Subject: Re: Smarter NSTimer?
- From: ChanMaxthon <email@hidden>
- Date: Wed, 02 Jul 2014 02:53:04 +0800
You can emulate this by adding up time differences between rendering frames. When the framerate-driven accumulator reaches a certain value fire your action, and accumulate only when conditions are met.
Sent from my iPad
> On Jul 2, 2014, at 02:21, William Squires <email@hidden> wrote:
>
> What would be the best way to make an NSTimer that could pause/un-pause its timing? Subclassing? Containment? Just roll my own with performWithSelector:afterDelay:? That is, if I (my code) creates a (smart) NSTimer with a duration of 5 seconds, then three seconds later I need to pause the timer, the timer should un-pause with 2 seconds left on it, not revert back to a duration of 5 seconds.
>
> Use-case:
> I have a (fictitious) FPS game in which the players or bots can "damage" the scenery by leaving blast marks. A timer should remove these "decorations" after a given delay, but I want the timers to pause if any players/bots are within line-of-sight of the decorations. The timer should then un-pause once all the players and bots are out of line-of-sight (self-repairing nanotech scenery, anyone?)
> With a normal timer, you'd have to [<timer> invalidate], and/or re-create a new NSTimer instance, which would reset the time.
> Another good use is a "smartly" timed weapon/power-up spawn point. If the player (or a bot) is too close, the timer will pause, preventing the spawning of the weapons/power-ups, but as soon as no players or bots are close by, the timer will resume, and a new weapon or power-up will spawn there. This would discourage "camping" around known spawn points! :)
>
> Or has this "wheel" already been invented?
>
>
> _______________________________________________
>
> Cocoa-dev mailing list (email@hidden)
>
> Please do not post admin requests or moderator comments to the list.
> Contact the moderators at cocoa-dev-admins(at)lists.apple.com
>
> Help/Unsubscribe/Update your Subscription:
>
> This email sent to email@hidden
_______________________________________________
Cocoa-dev mailing list (email@hidden)
Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden