[Gcblue-commits] gcb_wx/include/sim tcCounterMeasure.h,NONE,1.1
Status: Alpha
Brought to you by:
ddcforge
|
From: Dewitt C. <ddc...@us...> - 2006-05-04 22:47:11
|
Update of /cvsroot/gcblue/gcb_wx/include/sim In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv15744/include/sim Added Files: tcCounterMeasure.h Log Message: --- NEW FILE: tcCounterMeasure.h --- /** ** @file tcCounterMeasure.h */ /* Copyright (C) 2005 Dewitt Colclough (de...@gc...) ** All rights reserved. ** This file is part of the Global Conflict Blue (GCB) program. ** GCB is free software; you can redistribute it and/or modify ** it under the terms of version 2 of the GNU General Public License as ** published by the Free Software Foundation. ** GCB is distributed in the hope that it will be useful, ** but WITHOUT ANY WARRANTY; without even the implied warranty of ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ** GNU General Public License for more details. ** You should have received a copy of the GNU General Public License ** along with GCB; if not, write to the Free Software ** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA **/ #if _MSC_VER > 1000 #pragma once #endif #ifndef _TCCOUNTERMEASURE_H_ #define _TCCOUNTERMEASURE_H_ #include "tcGameObject.h" class tcStream; class tcUpdateStream; namespace database { class tcCounterMeasureDBObject; } /** * Class for countermeasures such as chaff, flares, decoys, noisemakers */ class tcCounterMeasure : public tcGameObject { public: protected: tcCounterMeasureDBObject* mpDBObject; void LaunchFrom(tcGameObject* obj, unsigned nLauncher); virtual void Update(double t); virtual tcUpdateStream& operator<<(tcUpdateStream& stream); virtual tcUpdateStream& operator>>(tcUpdateStream& stream); tcCounterMeasure(); tcCounterMeasure(const tcCounterMeasure& src); tcCounterMeasure(tcCounterMeasureDBObject* obj); virtual ~tcCounterMeasure(); private: double lastSeductionUpdate; int typeCode; void ApplyRestrictions(); bool IsChaff() const; bool IsFlare() const; void Move(float dt_s); void UpdateSeduction(double t); void UpdateSpeed(float dt_s); }; #endif |