text: #pragma once
  
  template<typename _Object>
  class CStateControlFire : public CState<_Object> {
  	typedef	CState<_Object>		inherited;
  
  	u32				m_time_started;
  	u32				m_time_state_last_execute;
  
  public:
  
  					CStateControlFire	(_Object *obj) : inherited(obj) {}
  	virtual			~CStateControlFire	() {}
  
  	virtual void	reinit					();
  	virtual void	initialize				();
  	virtual void	execute					();
  	virtual void	finalize				();
  	virtual void	critical_finalize		();
  	virtual bool	check_completion		();
  	virtual bool	check_start_conditions	();
  	virtual void		remove_links					(CObject* object) { inherited::remove_links(object);}
  
  };
  
  #include "controller_state_attack_fire_inline.h"
  