public void Disable() { m_Enabled = false; if ( m_Timer != null ) { if ( m_Timer.Running ) m_Timer.Stop(); m_Timer = null; } }
public void Enable() { m_Enabled = true; if ( m_Timer == null ) m_Timer = new AutoCombatBrainTimer( this ); }
// call Act() after AT MOST this much time ( could be sooner ) public void DelayThink( TimeSpan duration ) { if ( Enabled ) { if ( m_Timer == null ) m_Timer = new AutoCombatBrainTimer( this ); else if ( m_Timer.Running ) { if ( m_Timer.Next > DateTime.Now + duration ) m_Timer.Stop(); else return; // we need to call it sooner, so ignore } m_Timer.Delay = duration; m_Timer.Start(); } }