mirror of
https://github.com/ptitSeb/Serious-Engine
synced 2024-11-22 18:30:27 +01:00
260 lines
9.4 KiB
C++
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
|