/*****************************************************************************
 * $Id: game_base_combat.hh,v 1.28 2006/08/10 03:18:58 devel Exp $
 * @file
 * @author	Jim E. Brooks  http://www.jimbrooks.org
 * @brief	Air combat.
 *//*
 * LEGAL:	COPYRIGHT (C) 2004 JIM E. BROOKS
 *          THIS SOURCE CODE IS RELEASED UNDER THE TERMS
 *          OF THE GNU GENERAL PUBLIC LICENSE (GPL).
 *****************************************************************************/

#if COMPILING_GAME
#ifndef GAME_BASE_COMBAT_HH
#define GAME_BASE_COMBAT_HH 1

#include "game_base.hh"

void
CombatFireGuns( Craft& craft, bool chase );

void
DrawExplosion( Dyna& dyna, int fireballCnt, fp fireballSize, fp offs );

void
Listener_GameBase_JoystickButton( eJoyButton button );

#include "game_base_tracer.hh"

////////////////////////////////////////////////////////////////////////////////
/// @brief DynaModel object that can be a target and explode (collided).
/// @remarks DynaModelTargets are expensive because they potentially can
/// slow down collision-detection (tracer fire).
class DynaModelTarget : public DynaModel
{
private:
	PREVENT_COPYING(DynaModelTarget)
	typedef DynaModel Parent;

public:
						DynaModelTarget( QuadrantPtrc q, const Position& pos, const vector<string>& fnameModelVec );
						~DynaModelTarget();
	const string		GetName( void ) { return string("DynaModelTarget"); }
	int					Animate( void );
	void				Draw( void );

	void SetVertexCnt( uint vcnt ) { }				// OBJECT NOP
	void SetWorldVertexs( WorldVertex* wv ) { }		// OBJECT NOP
};

#endif // GAME_BASE_COMBAT_HH
#endif // COMPILING_GAME
