Esempio n. 1
0
 protected Timer(float duration, float elapsed, TimerFlags flags)
 {
     Duration     = duration;
     Elapsed      = elapsed;
     IsPaused     = (flags & TimerFlags.IsPaused) > 0;
     IsRepeatable = (flags & TimerFlags.IsRepeatable) > 0;
 }
Esempio n. 2
0
 public SingleTimer(Action <float> trigger = null, Action <float> tick = null, float duration = 0,
                    TimerFlags flags       = TimerFlags.IsPaused | TimerFlags.IsRepeatable | TimerFlags.ShouldResetOnRepeat,
                    float elapsed          = 0) : base(tick, duration, elapsed, flags)
 {
     Trigger             = trigger;
     shouldResetOnRepeat = (flags & TimerFlags.ShouldResetOnRepeat) > 0;
 }
Esempio n. 3
0
        public RepeatingTimer(Func <float, bool> trigger, Action <float> tick = null, float duration          = 0,
                              TimerFlags flags = TimerFlags.IsPaused | TimerFlags.IsRepeatable, float elapsed = 0) :
            base(tick, duration, elapsed, flags)
        {
            Debug.Assert((flags & TimerFlags.ShouldResetOnRepeat) == 0, "The ShouldResetOnRepeat flag can't be used " +
                         "with repeating timers (it doesn't logically make sense).");

            this.trigger = trigger;
        }
Esempio n. 4
0
        protected Timer(Action <float> tick, float duration, float elapsed, TimerFlags flags)
        {
            this.flags = flags;

            Tick         = tick;
            Duration     = duration;
            Elapsed      = elapsed;
            IsPaused     = (flags & TimerFlags.IsPaused) > 0;
            IsRepeatable = (flags & TimerFlags.IsRepeatable) > 0;
        }
Esempio n. 5
0
 // Single timers are repeatable by default (and start paused).
 public SingleTimer(Action <float> trigger = null, float duration = 0,
                    TimerFlags flags       = TimerFlags.IsPaused | TimerFlags.IsRepeatable, float elapsed = 0) :
     base(duration, elapsed, flags)
 {
     Trigger = trigger;
 }
Esempio n. 6
0
 // Just like single timers, repeatable timers are repeatable by default (and start paused).
 public RepeatingTimer(Func <float, bool> trigger, float duration = 0,
                       TimerFlags flags = TimerFlags.IsPaused | TimerFlags.IsRepeatable, float elapsed = 0) :
     base(duration, elapsed, flags)
 {
     this.trigger = trigger;
 }