AvHAlienEquipment.h

 ifndef AVH_ALIEN_EQUIPMENT_H
define AVH_ALIEN_EQUIPMENT_H
include "../util/nowarnings.h"
include "../dlls/weapons.h"
include "AvHBasePlayerWeapon.h"
include "AvHConstants.h"
include "AvHEntities.h"
include "AvHBuildable.h"
include "AvHEntities.h"
include "AvHTurret.h"
class AvHAlienResourceTower : public AvHResourceTower
{
public:
AvHAlienResourceTower();
virtual int GetActiveAnimation() const; virtual char* GetDeploySound() const; virtual bool GetIsOrganic() const; virtual int GetPointValue() const; virtual char* GetModelName() const; virtual int GetSequenceForBoundingBox() const; char* GetActiveSoundList() const; void Killed(entvars_t* pevAttacker, int iGib); virtual void Materialize(); void Precache(); virtual void Spawn();
private:
void EXPORT AlienResourceThink();
};
class AvHAlienUpgradeBuilding : public AvHBaseBuildable
{
public:
AvHAlienUpgradeBuilding(AvHMessageID inMessageID, AvHTechID inTechID, char* inClassName, AvHUser3 inUser3);
virtual char* GetDeploySound() const = 0; virtual bool GetIsOrganic() const; virtual int GetPointValue() const; virtual AvHAlienUpgradeCategory GetUpgradeCategory() const = 0; virtual void Killed(entvars_t* pevAttacker, int iGib); virtual void Materialize(); virtual void Precache(); virtual void SetHasBeenBuilt(); virtual void Spawn();
private:
void EXPORT AlienBuildingThink();
};
//class AvHOffenseChamber : public AvHTurret
//{
//public:
// AvHOffenseChamber();
//
// virtual char* GetActiveSound() const;
// virtual char* GetAlertSound() const;
// virtual char* GetPingSound() const;
//
// virtual int GetRange() const;
//
// virtual void Precache();
//
// virtual void Spawn();
//};
class AvHDefenseChamber : public AvHAlienUpgradeBuilding
{
public:
AvHDefenseChamber();
virtual char* GetDeploySound() const; virtual char* GetModelName() const; void EXPORT RegenAliensThink(); virtual void SetHasBeenBuilt(); virtual AvHAlienUpgradeCategory GetUpgradeCategory() const;
};
class AvHSensoryChamber : public AvHAlienUpgradeBuilding
{
public:
AvHSensoryChamber();
virtual char* GetDeploySound() const; bool GetIsEntityInSight(CBaseEntity* inEntity); virtual char* GetModelName() const; virtual AvHAlienUpgradeCategory GetUpgradeCategory() const; virtual void Precache(); virtual void SetHasBeenBuilt();
};
class AvHMovementChamber : public AvHAlienUpgradeBuilding
{
public:
AvHMovementChamber();
virtual char* GetDeploySound() const; virtual char* GetModelName() const; virtual void Precache(); virtual void ResetEntity(); virtual void SetHasBeenBuilt(); void EXPORT EnergyAliensThink(); void EXPORT TeleportUse(CBaseEntity* inActivator, CBaseEntity* inCaller, USE_TYPE inUseType, float inValue); void EXPORT TeleportUseThink(); virtual AvHAlienUpgradeCategory GetUpgradeCategory() const;
private:
float mLastTimeScannedHives;
int mTeleportHiveIndex;
};
endif