//======== (C) Copyright 2002 Charles G. Cleveland All rights reserved. ========= // // The copyright to the contents herein is the property of Charles G. Cleveland. // The contents may be used and/or copied only with the written permission of // Charles G. Cleveland, or in accordance with the terms and conditions stipulated in // the agreement/contract under which the contents have been supplied. // // Purpose: // // $Workfile: AvHAlienTurret.h $ // $Date: 2002/07/23 16:57:05 $ // //------------------------------------------------------------------------------- // $Log: AvHAlienTurret.h,v $ // Revision 1.4 2002/07/23 16:57:05 Flayra // - Alien turret refactoring and fixing (the view offset in spawn() was causing them to always miss crouched players) // //=============================================================================== #ifndef AVH_ALIEN_TURRET_H #define AVH_ALIEN_TURRET_H #include "AvHTurret.h" #include "AvHAlienEquipmentConstants.h" #ifdef AVH_SERVER class AvHSpike : public CBaseEntity { public: virtual void Precache(void); virtual void Spawn(void); void EXPORT SpikeTouch(CBaseEntity *pOther); void EXPORT SpikeDeath(); void SetDamage(float inDamage); private: float mDamage; }; #endif class AvHAlienTurret : public AvHTurret { public: AvHAlienTurret(); AvHAlienTurret(AvHTechID inTechID, AvHMessageID inMessageID, char* inClassName, int inUser3); virtual bool Energize(float inEnergyAmount); virtual char* GetDeploySound() const; char* GetModelName() const; virtual bool GetIsOrganic() const; int GetIdle1Animation() const; int GetIdle2Animation() const; virtual int GetPointValue(void) const; virtual int GetXYRange() const; virtual int GetVerticalFOV() const; virtual int MoveTurret(void); virtual bool GetBaseClassAnimatesTurret() const; virtual int GetTakeDamageAnimation() const; virtual void ResetEntity(); virtual void Precache(void); virtual void SetNextAttack(); virtual void Shoot(const Vector &inOrigin, const Vector &inToEnemy, const Vector& inVecEnemyVelocity); virtual void Spawn(); protected: virtual float GetRateOfFire() const; private: void EXPORT PreBuiltThink(); int mEvent; float mEnergy; }; #endif