How about keeping track of the amount of time paused and the remaining time on 
the timer is a function of the next interval - the elapsed paused time?

Seems like an overly simple proposal, but would that work if?

On Jul 1, 2014, at 2:21 PM, William Squires 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 (Cocoa-dev@lists.apple.com)
> 
> 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:
> https://lists.apple.com/mailman/options/cocoa-dev/zav%40mac.com
> 
> This email sent to z...@mac.com

_______________________________________________

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

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:
https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Reply via email to