Serious-Engine/Sources/EntitiesMP/ExotechLarva.h
2016-03-11 15:57:17 +02:00

260 lines
9.4 KiB
C++

/*
* This file is generated by Entity Class Compiler, (c) CroTeam 1997-98
*/
#ifndef _EntitiesMP_ExotechLarva_INCLUDED
#define _EntitiesMP_ExotechLarva_INCLUDED 1
#include <EntitiesMP/ModelHolder2.h>
#include <EntitiesMP/Projectile.h>
#include <EntitiesMP/SoundHolder.h>
#include <EntitiesMP/BloodSpray.h>
#include <EntitiesMP/CannonBall.h>
#include <EntitiesMP/ExotechLarvaCharger.h>
#include <EntitiesMP/LarvaOffspring.h>
extern DECL_DLL CEntityPropertyEnumType LarvaTarget_enum;
enum LarvaTarget {
LT_NONE = 0,
LT_ENEMY = 1,
LT_RECHARGER = 2,
};
DECL_DLL inline void ClearToDefault(LarvaTarget &e) { e = (LarvaTarget)0; } ;
#define EVENTCODE_ELarvaArmDestroyed 0x015a0000
class DECL_DLL ELarvaArmDestroyed : public CEntityEvent {
public:
ELarvaArmDestroyed();
CEntityEvent *MakeCopy(void);
INDEX iArm;
};
DECL_DLL inline void ClearToDefault(ELarvaArmDestroyed &e) { e = ELarvaArmDestroyed(); } ;
#define EVENTCODE_ELarvaRechargePose 0x015a0001
class DECL_DLL ELarvaRechargePose : public CEntityEvent {
public:
ELarvaRechargePose();
CEntityEvent *MakeCopy(void);
BOOL bStart;
};
DECL_DLL inline void ClearToDefault(ELarvaRechargePose &e) { e = ELarvaRechargePose(); } ;
extern "C" DECL_DLL CDLLEntityClass CExotechLarva_DLLClass;
class CExotechLarva : public CEnemyBase {
public:
DECL_DLL virtual void SetDefaultProperties(void);
CEntityPointer m_penMarkerNew;
CEntityPointer m_penMarkerOld;
FLOAT m_fStopRadius;
FLOAT m_fStretch;
FLOAT m_fLarvaHealth;
FLOAT m_fRechargePerSecond;
enum LarvaTarget m_ltTarget;
CEntityPointer m_penFirstRechargeTarget;
BOOL m_bRechargedAtLeastOnce;
FLOAT3D m_vFirePosLeftPlasmaRel;
FLOAT3D m_vFirePosRightPlasmaRel;
FLOAT3D m_vFirePosTailRel;
FLOAT3D m_vFirePosLeftLaserAbs;
FLOAT3D m_vFirePosRightLaserAbs;
BOOL m_bLeftArmActive;
BOOL m_bRightArmActive;
INDEX m_iExplodingArm;
FLOAT m_fMaxRechargedHealth;
BOOL m_bExploding;
BOOL m_bActive;
BOOL m_bRechargePose;
BOOL m_bLaserActive;
BOOL m_bInitialMove;
CEntityPointer m_penRecharger;
FLOAT m_tmLastTargateChange;
CPlacement3D m_plExpArmPos;
FLOAT3D m_aExpArmRot;
CPlacement3D m_plExpGunPos;
FLOAT3D m_aExpGunRot;
FLOAT3D m_vExpDamage;
INDEX m_iExplosions;
INDEX m_iRnd;
BOOL m_bRecharging;
CEntityPointer m_penDeathInflictor;
FLOAT m_tmDontFireLaserBefore;
FLOAT m_fMinimumLaserWait;
BOOL m_bRenderLeftLaser;
BOOL m_bRenderRightLaser;
FLOAT3D m_vLeftLaserTarget;
FLOAT3D m_vRightLaserTarget;
BOOL m_bInvulnerable;
CEntityPointer m_penLeftArmDestroyTarget;
CEntityPointer m_penRightArmDestroyTarget;
CEntityPointer m_penDeathTarget;
CSoundObject m_soFire1;
CSoundObject m_soFire2;
CSoundObject m_soFire3;
CSoundObject m_soVoice;
CSoundObject m_soChirp;
CSoundObject m_soLaser;
#line 192 "D:/SE1_GPL/Sources/EntitiesMP/ExotechLarva.es"
BOOL IsTargetValid(SLONG slPropertyOffset,CEntity * penTarget);
#line 207 "D:/SE1_GPL/Sources/EntitiesMP/ExotechLarva.es"
BOOL DoSafetyChecks(void);
#line 219 "D:/SE1_GPL/Sources/EntitiesMP/ExotechLarva.es"
void FindNewTarget();
#line 244 "D:/SE1_GPL/Sources/EntitiesMP/ExotechLarva.es"
BOOL AnyPlayerCloserThen(FLOAT fDistance);
#line 266 "D:/SE1_GPL/Sources/EntitiesMP/ExotechLarva.es"
void PerhapsChangeTarget();
#line 276 "D:/SE1_GPL/Sources/EntitiesMP/ExotechLarva.es"
class CWorldSettingsController * GetWSC(void);
#line 289 "D:/SE1_GPL/Sources/EntitiesMP/ExotechLarva.es"
void ShakeItBaby(FLOAT tmShaketime,FLOAT fPower,BOOL bFadeIn);
#line 309 "D:/SE1_GPL/Sources/EntitiesMP/ExotechLarva.es"
void ShootTailProjectile(void);
#line 327 "D:/SE1_GPL/Sources/EntitiesMP/ExotechLarva.es"
BOOL IsOnMarker(CEntity * penMarker);
#line 335 "D:/SE1_GPL/Sources/EntitiesMP/ExotechLarva.es"
FLOAT DistanceXZ(CEntity * E1,CEntity * E2);
#line 344 "D:/SE1_GPL/Sources/EntitiesMP/ExotechLarva.es"
void SpawnWingDebris();
#line 357 "D:/SE1_GPL/Sources/EntitiesMP/ExotechLarva.es"
void ReceiveDamage(CEntity * penInflictor,enum DamageType dmtType,
#line 358 "D:/SE1_GPL/Sources/EntitiesMP/ExotechLarva.es"
FLOAT fDamageAmmount,const FLOAT3D & vHitPoint,const FLOAT3D & vDirection);
#line 500 "D:/SE1_GPL/Sources/EntitiesMP/ExotechLarva.es"
virtual CTString GetPlayerKillDescription(const CTString & strPlayerName,const EDeath & eDeath);
#line 507 "D:/SE1_GPL/Sources/EntitiesMP/ExotechLarva.es"
void * GetEntityInfo(void);
#line 511 "D:/SE1_GPL/Sources/EntitiesMP/ExotechLarva.es"
virtual const CTFileName & GetComputerMessageName(void)const;
#line 516 "D:/SE1_GPL/Sources/EntitiesMP/ExotechLarva.es"
void Precache(void);
#line 563 "D:/SE1_GPL/Sources/EntitiesMP/ExotechLarva.es"
CModelObject * PlasmaLeftModel(void);
#line 568 "D:/SE1_GPL/Sources/EntitiesMP/ExotechLarva.es"
CModelObject * PlasmaRightModel(void);
#line 574 "D:/SE1_GPL/Sources/EntitiesMP/ExotechLarva.es"
BOOL RechargerActive();
#line 641 "D:/SE1_GPL/Sources/EntitiesMP/ExotechLarva.es"
void RemoveWing(INDEX iArm);
#line 652 "D:/SE1_GPL/Sources/EntitiesMP/ExotechLarva.es"
ANGLE GetArmsPitch(void);
#line 660 "D:/SE1_GPL/Sources/EntitiesMP/ExotechLarva.es"
ULONG SetDesiredMovement(void);
#line 696 "D:/SE1_GPL/Sources/EntitiesMP/ExotechLarva.es"
void MoveToMarker(CEntity * penMarker);
#line 708 "D:/SE1_GPL/Sources/EntitiesMP/ExotechLarva.es"
void PreMoving();
#line 746 "D:/SE1_GPL/Sources/EntitiesMP/ExotechLarva.es"
void RenderParticles(void);
#line 771 "D:/SE1_GPL/Sources/EntitiesMP/ExotechLarva.es"
void SizeModel(void);
#line 776 "D:/SE1_GPL/Sources/EntitiesMP/ExotechLarva.es"
void UpdateFiringPos();
#line 781 "D:/SE1_GPL/Sources/EntitiesMP/ExotechLarva.es"
void BlowUp(void);
#line 787 "D:/SE1_GPL/Sources/EntitiesMP/ExotechLarva.es"
void EnemyPostInit(void);
#line 797 "D:/SE1_GPL/Sources/EntitiesMP/ExotechLarva.es"
void FireLaser(void);
#line 867 "D:/SE1_GPL/Sources/EntitiesMP/ExotechLarva.es"
void ExplodeLaser(void);
#define STATE_CExotechLarva_BeWounded 0x015a0002
BOOL
#line 928 "D:/SE1_GPL/Sources/EntitiesMP/ExotechLarva.es"
BeWounded(const CEntityEvent &__eeInput);
#define STATE_CExotechLarva_ArmExplosion 0x015a0003
BOOL
#line 932 "D:/SE1_GPL/Sources/EntitiesMP/ExotechLarva.es"
ArmExplosion(const CEntityEvent &__eeInput);
BOOL H0x015a0004_ArmExplosion_01(const CEntityEvent &__eeInput);
BOOL H0x015a0005_ArmExplosion_02(const CEntityEvent &__eeInput);
BOOL H0x015a0006_ArmExplosion_03(const CEntityEvent &__eeInput);
BOOL H0x015a0007_ArmExplosion_04(const CEntityEvent &__eeInput);
BOOL H0x015a0008_ArmExplosion_05(const CEntityEvent &__eeInput);
BOOL H0x015a0009_ArmExplosion_06(const CEntityEvent &__eeInput);
#define STATE_CExotechLarva_Die 0x015a000a
BOOL
#line 1035 "D:/SE1_GPL/Sources/EntitiesMP/ExotechLarva.es"
Die(const CEntityEvent &__eeInput);
BOOL H0x015a000b_Die_01(const CEntityEvent &__eeInput);
BOOL H0x015a000c_Die_02(const CEntityEvent &__eeInput);
BOOL H0x015a000d_Die_03(const CEntityEvent &__eeInput);
BOOL H0x015a000e_Die_04(const CEntityEvent &__eeInput);
#define STATE_CExotechLarva_Fire 0x015a000f
BOOL
#line 1132 "D:/SE1_GPL/Sources/EntitiesMP/ExotechLarva.es"
Fire(const CEntityEvent &__eeInput);
BOOL H0x015a0010_Fire_01(const CEntityEvent &__eeInput);
BOOL H0x015a0011_Fire_02(const CEntityEvent &__eeInput);
BOOL H0x015a0012_Fire_03(const CEntityEvent &__eeInput);
BOOL H0x015a0013_Fire_04(const CEntityEvent &__eeInput);
BOOL H0x015a0014_Fire_05(const CEntityEvent &__eeInput);
BOOL H0x015a0015_Fire_06(const CEntityEvent &__eeInput);
BOOL H0x015a0016_Fire_07(const CEntityEvent &__eeInput);
BOOL H0x015a0017_Fire_08(const CEntityEvent &__eeInput);
BOOL H0x015a0018_Fire_09(const CEntityEvent &__eeInput);
BOOL H0x015a0019_Fire_10(const CEntityEvent &__eeInput);
BOOL H0x015a001a_Fire_11(const CEntityEvent &__eeInput);
BOOL H0x015a001b_Fire_12(const CEntityEvent &__eeInput);
BOOL H0x015a001c_Fire_13(const CEntityEvent &__eeInput);
BOOL H0x015a001d_Fire_14(const CEntityEvent &__eeInput);
#define STATE_CExotechLarva_Hit 0x015a001e
BOOL
#line 1194 "D:/SE1_GPL/Sources/EntitiesMP/ExotechLarva.es"
Hit(const CEntityEvent &__eeInput);
#define STATE_CExotechLarva_BeIdle 0x015a001f
BOOL
#line 1198 "D:/SE1_GPL/Sources/EntitiesMP/ExotechLarva.es"
BeIdle(const CEntityEvent &__eeInput);
BOOL H0x015a0020_BeIdle_01(const CEntityEvent &__eeInput);
BOOL H0x015a0021_BeIdle_02(const CEntityEvent &__eeInput);
BOOL H0x015a0022_BeIdle_03(const CEntityEvent &__eeInput);
BOOL H0x015a0023_BeIdle_04(const CEntityEvent &__eeInput);
BOOL H0x015a0024_BeIdle_05(const CEntityEvent &__eeInput);
BOOL H0x015a0025_BeIdle_06(const CEntityEvent &__eeInput);
#define STATE_CExotechLarva_LarvaLoop 0x015a0026
BOOL
#line 1212 "D:/SE1_GPL/Sources/EntitiesMP/ExotechLarva.es"
LarvaLoop(const CEntityEvent &__eeInput);
BOOL H0x015a0027_LarvaLoop_01(const CEntityEvent &__eeInput);
BOOL H0x015a0028_LarvaLoop_02(const CEntityEvent &__eeInput);
#define STATE_CExotechLarva_Main 1
BOOL
#line 1369 "D:/SE1_GPL/Sources/EntitiesMP/ExotechLarva.es"
Main(const CEntityEvent &__eeInput);
BOOL H0x015a0029_Main_01(const CEntityEvent &__eeInput);
BOOL H0x015a002a_Main_02(const CEntityEvent &__eeInput);
BOOL H0x015a002b_Main_03(const CEntityEvent &__eeInput);
BOOL H0x015a002c_Main_04(const CEntityEvent &__eeInput);
BOOL H0x015a002d_Main_05(const CEntityEvent &__eeInput);
BOOL H0x015a002e_Main_06(const CEntityEvent &__eeInput);
BOOL H0x015a002f_Main_07(const CEntityEvent &__eeInput);
BOOL H0x015a0030_Main_08(const CEntityEvent &__eeInput);
};
#endif // _EntitiesMP_ExotechLarva_INCLUDED