text: //========= Copyright Valve Corporation, All rights reserved. ============//
  // boss_alpha_nuke_attack.h
  // Michael Booth, November 2010
  
  #ifndef BOSS_ALPHA_NUKE_ATTACK_H
  #define BOSS_ALPHA_NUKE_ATTACK_H
  
  #ifdef TF_RAID_MODE
  
  class CBossAlphaNukeAttack : public Action< CBossAlpha >
  {
  public:
  	virtual ActionResult< CBossAlpha >	OnStart( CBossAlpha *me, Action< CBossAlpha > *priorAction );
  	virtual ActionResult< CBossAlpha >	Update( CBossAlpha *me, float interval );
  	virtual void					OnEnd( CBossAlpha *me, Action< CBossAlpha > *nextAction );
  
  	// if anything interrupts this action, abort it
  	virtual ActionResult< CBossAlpha >	OnSuspend( CBossAlpha *me, Action< CBossAlpha > *interruptingAction )	{ return Done(); }
  
  	virtual EventDesiredResult< CBossAlpha > OnInjured( CBossAlpha *me, const CTakeDamageInfo &info );
  
  	virtual const char *GetName( void ) const	{ return "NukeAttack"; }		// return name of this action
  
  private:
  	CountdownTimer m_shakeTimer;
  	CountdownTimer m_chargeUpTimer;
  };
  
  #endif // TF_RAID_MODE
  
  #endif // BOSS_ALPHA_NUKE_ATTACK_H
  