//========= Copyright © 1996-2005, Valve Corporation, All rights reserved. ============//
//
// Purpose: 
//
//=============================================================================//

#ifndef	HLW_NPC_COMBINE_H
#define	HLW_NPC_COMBINE_H

//#include "npc_combine.h"
#include "npc_combines.h"

#include "hl2wars/npc/ai_behavior_placabletank.h"


//class CHLW_NPC_Combine : public CNPC_Combine
class CHLW_NPC_Combine : public CNPC_CombineS
{
	//DECLARE_CLASS( CHLW_NPC_Combine, CNPC_Combine );
	DECLARE_CLASS( CHLW_NPC_Combine, CNPC_CombineS );
public:
	CHLW_NPC_Combine()
	{
	}


	//---------------------------------
	void			Spawn();
	void			Precache( void );

	bool			CreateBehaviors();
	
	//---------------------------------
	// Behavior
	//---------------------------------
	void			PrescheduleThink( void );
	virtual int		SelectSchedule( void );
	//void			StartTask( const Task_t *pTask );

	virtual bool	ShouldFindCover() { return true; }

	virtual int		TranslateSchedule( int scheduleType );
	virtual void	HandleAnimEvent( animevent_t *pEvent );
	Activity		NPC_TranslateActivity( Activity eNewActivity );

	int				OnTakeDamage_Alive( const CTakeDamageInfo &info );

	WeaponProficiency_t CalcWeaponProficiency( CBaseCombatWeapon *pWeapon );
	//---------------------------------
	// Unit info
	//---------------------------------
	void			InitUnitIndex();


private:
	CAI_PlacableTankBehavior	m_PlacableTankBehavior;

private:
	DECLARE_DATADESC();
};

#endif	//HLW_NPC_COMBINE_H
