protected override void OnSpellStart()
 {
     base.OnSpellStart();
     r_hasFired = false;
     timer = new Timer(updateDelay);
     enabled = true;
     if (ticksOnStart)
     {
         timer.ForceTickTime();
     }
 }
 protected override void OnAwake()
 {
     base.OnAwake();
     if(TriggerEvent == GeneralTriggerEvent.Timed)
     {
         _tickTimer = _tickTime;
         if (_tickOnStart)
         {
             _tickTimer.ForceTickTime();
         }
     }
     if(TriggerEvent == GeneralTriggerEvent.Awake)
     {
         DoEventTriggered(new GeneralEventArgs(GeneralTriggerEvent.Awake));
     }
 }
 protected override void OnSpellStart()
 {
     base.OnSpellStart();
     enabled = r_enabled;
     timedEvent = new Timer(_timeTrigger);
     if (_tickOnStart)
     {
         timedEvent.ForceTickTime();
     }
 }