mirror of
https://github.com/ptitSeb/Serious-Engine
synced 2024-11-22 18:30:27 +01:00
917 lines
48 KiB
C++
917 lines
48 KiB
C++
/*
|
|
* This file is generated by Entity Class Compiler, (c) CroTeam 1997-98
|
|
*/
|
|
|
|
#line 4 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
|
|
#include "StdH.h"
|
|
|
|
#include <EntitiesMP/EnemySpawner.h>
|
|
#include <EntitiesMP/EnemySpawner_tables.h>
|
|
void CEnemySpawner::SetDefaultProperties(void) {
|
|
m_penTarget = NULL;
|
|
m_strDescription = "";
|
|
m_strName = "Enemy spawner";
|
|
m_fInnerCircle = 0.0f;
|
|
m_fOuterCircle = 0.0f;
|
|
m_tmDelay = 0.0f;
|
|
m_tmSingleWait = 0.1f;
|
|
m_tmGroupWait = 0.1f;
|
|
m_ctGroupSize = 1;
|
|
m_ctTotal = 1;
|
|
m_penPatrol = NULL;
|
|
m_estType = EST_SIMPLE ;
|
|
m_bTelefrag = FALSE ;
|
|
m_bSpawnEffect = TRUE ;
|
|
m_bDoubleInSerious = FALSE ;
|
|
m_penSeriousTarget = NULL;
|
|
m_bFirstPass = TRUE ;
|
|
m_soSpawn.SetOwner(this);
|
|
m_soSpawn.Stop_internal();
|
|
m_iInGroup = 0;
|
|
m_iEnemiesTriggered = 0;
|
|
m_penTacticsHolder = NULL;
|
|
m_bTacticsAutostart = TRUE ;
|
|
CRationalEntity::SetDefaultProperties();
|
|
}
|
|
|
|
#line 68 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
void CEnemySpawner::Precache(void)
|
|
#line 69 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
{
|
|
#line 70 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
PrecacheClass (CLASS_BASIC_EFFECT , BET_TELEPORT );
|
|
#line 71 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
}
|
|
|
|
#line 74 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
const CTString & CEnemySpawner::GetDescription(void)const
|
|
#line 75 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
{
|
|
#line 76 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
((CTString &) m_strDescription ) . PrintF ("-><none>");
|
|
#line 77 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
if(m_penTarget != NULL ){
|
|
#line 78 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
((CTString &) m_strDescription ) . PrintF ("->%s" , m_penTarget -> GetName ());
|
|
#line 79 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
if(m_penSeriousTarget != NULL ){
|
|
#line 80 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
((CTString &) m_strDescription ) . PrintF ("->%s, %s" ,
|
|
#line 81 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
m_penTarget -> GetName () , m_penSeriousTarget -> GetName ());
|
|
#line 82 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
}
|
|
#line 83 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
}
|
|
#line 84 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
((CTString &) m_strDescription ) = EnemySpawnerType_enum . NameForValue (INDEX (m_estType ))
|
|
#line 85 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
+ m_strDescription ;
|
|
#line 86 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
return m_strDescription ;
|
|
#line 87 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
}
|
|
|
|
#line 91 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
BOOL CEnemySpawner::CheckTemplateValid(CEntity * pen)
|
|
#line 92 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
{
|
|
#line 93 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
if(pen == NULL || ! IsDerivedFromClass (pen , "Enemy Base")){
|
|
#line 94 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
return FALSE ;
|
|
#line 95 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
}
|
|
#line 96 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
if(m_estType == EST_TELEPORTER ){
|
|
#line 97 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
return ! (((CEnemyBase &) * pen ) . m_bTemplate );
|
|
#line 98 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
}else {
|
|
#line 99 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
return ((CEnemyBase &) * pen ) . m_bTemplate ;
|
|
#line 100 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
}
|
|
#line 101 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
}
|
|
|
|
#line 103 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
BOOL CEnemySpawner::IsTargetValid(SLONG slPropertyOffset,CEntity * penTarget)
|
|
#line 104 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
{
|
|
#line 105 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
if(slPropertyOffset == offsetof (CEnemySpawner , m_penTarget ))
|
|
#line 106 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
{
|
|
#line 107 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
return CheckTemplateValid (penTarget );
|
|
#line 108 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
}
|
|
#line 109 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
else if(slPropertyOffset == offsetof (CEnemySpawner , m_penPatrol ))
|
|
#line 110 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
{
|
|
#line 111 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
return (penTarget != NULL && IsDerivedFromClass (penTarget , "Enemy Marker"));
|
|
#line 112 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
}
|
|
#line 113 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
else if(slPropertyOffset == offsetof (CEnemySpawner , m_penSeriousTarget ))
|
|
#line 114 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
{
|
|
#line 115 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
return CheckTemplateValid (penTarget );
|
|
#line 116 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
}
|
|
#line 117 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
else if(slPropertyOffset == offsetof (CEnemySpawner , m_penTacticsHolder ))
|
|
#line 118 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
{
|
|
#line 119 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
if(IsOfClass (penTarget , "TacticsHolder")){return TRUE ;}
|
|
#line 120 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
else {return FALSE ;}
|
|
#line 121 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
}
|
|
#line 122 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
return CEntity :: IsTargetValid (slPropertyOffset , penTarget );
|
|
#line 123 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
}
|
|
|
|
#line 127 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
BOOL CEnemySpawner::FillEntityStatistics(EntityStats * pes)
|
|
#line 128 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
{
|
|
#line 129 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
if(m_penTarget == NULL ){return FALSE ;}
|
|
#line 130 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
m_penTarget -> FillEntityStatistics (pes );
|
|
#line 131 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
pes -> es_ctCount = m_ctTotal ;
|
|
#line 132 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
pes -> es_strName += " (spawned)";
|
|
#line 133 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
if(m_penSeriousTarget != NULL ){
|
|
#line 134 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
pes -> es_strName += " (has serious)";
|
|
#line 135 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
}
|
|
#line 136 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
return TRUE ;
|
|
#line 137 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
}
|
|
|
|
#line 140 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
void CEnemySpawner::SpawnEntity(BOOL bCopy) {
|
|
#line 142 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
if(CheckTemplateValid (m_penTarget )){
|
|
#line 144 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
CEntity * pen = NULL ;
|
|
#line 145 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
if(bCopy ){
|
|
#line 147 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
pen = GetWorld () -> CopyEntityInWorld (* m_penTarget ,
|
|
#line 148 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
CPlacement3D (FLOAT3D (- 32000.0f + FRnd () * 200.0f , - 32000.0f + FRnd () * 200.0f , 0) , ANGLE3D (0 , 0 , 0)));
|
|
#line 151 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
pen -> End ();
|
|
#line 152 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
CEnemyBase * peb = ((CEnemyBase *) pen );
|
|
#line 153 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
peb -> m_bTemplate = FALSE ;
|
|
#line 154 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
if(m_estType == EST_RESPAWNER
|
|
#line 155 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
|| m_estType == EST_MAINTAINGROUP || m_estType == EST_RESPAWNGROUP ){
|
|
#line 156 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
peb -> m_penSpawnerTarget = this ;
|
|
#line 157 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
}
|
|
#line 158 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
if(m_penPatrol != NULL ){
|
|
#line 159 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
peb -> m_penMarker = m_penPatrol ;
|
|
#line 160 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
}
|
|
#line 161 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
pen -> Initialize ();
|
|
#line 162 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
}else {
|
|
#line 163 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
pen = m_penTarget ;
|
|
#line 164 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
m_penTarget = NULL ;
|
|
#line 165 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
}
|
|
#line 168 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
FLOAT fEntityR = 0;
|
|
#line 169 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
if(pen -> en_pciCollisionInfo != NULL ){
|
|
#line 170 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
fEntityR = pen -> en_pciCollisionInfo -> GetMaxFloorRadius ();
|
|
#line 171 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
}
|
|
#line 172 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
FLOAT fOuterCircle = ClampDn (m_fOuterCircle - fEntityR , 0.0f);
|
|
#line 173 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
FLOAT fInnerCircle = ClampUp (m_fInnerCircle + fEntityR , fOuterCircle );
|
|
#line 175 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
FLOAT fR = fInnerCircle + FRnd () * (fOuterCircle - fInnerCircle );
|
|
#line 176 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
FLOAT fA = FRnd () * 360.0f;
|
|
#line 177 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
CPlacement3D pl (FLOAT3D (CosFast (fA ) * fR , 0.05f , SinFast (fA ) * fR ) , ANGLE3D (0 , 0 , 0));
|
|
#line 178 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
pl . RelativeToAbsolute (GetPlacement ());
|
|
#line 181 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
pen -> Teleport (pl , m_bTelefrag );
|
|
#line 184 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
if(m_bSpawnEffect ){
|
|
#line 185 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
ESpawnEffect ese ;
|
|
#line 186 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
ese . colMuliplier = C_WHITE | CT_OPAQUE ;
|
|
#line 187 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
ese . betType = BET_TELEPORT ;
|
|
#line 188 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
ese . vNormal = FLOAT3D (0 , 1 , 0);
|
|
#line 189 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
FLOATaabbox3D box ;
|
|
#line 190 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
pen -> GetBoundingBox (box );
|
|
#line 191 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
FLOAT fEntitySize = box . Size () . MaxNorm () * 2;
|
|
#line 192 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
ese . vStretch = FLOAT3D (fEntitySize , fEntitySize , fEntitySize );
|
|
#line 193 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
CEntityPointer penEffect = CreateEntity (pl , CLASS_BASIC_EFFECT );
|
|
#line 194 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
penEffect -> Initialize (ese );
|
|
#line 195 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
}
|
|
#line 198 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
if(m_penTacticsHolder != NULL ){
|
|
#line 199 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
if(IsOfClass (m_penTacticsHolder , "TacticsHolder")){
|
|
#line 200 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
CEnemyBase * peb = ((CEnemyBase *) pen );
|
|
#line 201 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
peb -> m_penTacticsHolder = m_penTacticsHolder ;
|
|
#line 202 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
if(m_bTacticsAutostart ){
|
|
#line 204 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
peb -> StartTacticsNow ();
|
|
#line 205 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
}
|
|
#line 206 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
}
|
|
#line 207 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
}
|
|
#line 209 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
}
|
|
#line 210 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
}
|
|
|
|
#line 213 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
BOOL CEnemySpawner::HandleEvent(const CEntityEvent & ee)
|
|
#line 214 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
{
|
|
#line 215 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
if(ee . ee_slEvent == EVENTCODE_ETrigger )
|
|
#line 216 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
{
|
|
#line 217 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
ETrigger eTrigger = ((ETrigger &) ee );
|
|
#line 218 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
if(IsDerivedFromClass (eTrigger . penCaused , "Enemy Base")
|
|
#line 219 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
&& (m_estType == EST_MAINTAINGROUP || m_estType == EST_RESPAWNGROUP )){
|
|
#line 220 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
m_iEnemiesTriggered ++;
|
|
#line 221 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
}
|
|
#line 222 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
}
|
|
#line 223 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
return CRationalEntity :: HandleEvent (ee );
|
|
#line 224 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
}
|
|
|
|
#line 228 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
SLONG CEnemySpawner::GetUsedMemory(void)
|
|
#line 229 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
{
|
|
#line 231 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
SLONG slUsedMemory = sizeof (CEnemySpawner ) - sizeof (CRationalEntity ) + CRationalEntity :: GetUsedMemory ();
|
|
#line 233 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
slUsedMemory += m_strDescription . Length ();
|
|
#line 234 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
slUsedMemory += m_strName . Length ();
|
|
#line 235 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
slUsedMemory += 1 * sizeof (CSoundObject);
|
|
#line 236 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
return slUsedMemory ;
|
|
#line 237 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
}
|
|
BOOL CEnemySpawner::
|
|
#line 242 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
SpawnGroup(const CEntityEvent &__eeInput) {
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT STATE_CEnemySpawner_SpawnGroup
|
|
ASSERTMSG(__eeInput.ee_slEvent==EVENTCODE_EVoid, "CEnemySpawner::SpawnGroup expects 'EVoid' as input!"); const EVoid &e = (const EVoid &)__eeInput;
|
|
#line 245 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
m_iInGroup = 0;
|
|
#line 247 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
Jump(STATE_CURRENT,0x01300003, FALSE, EInternal());return TRUE;}BOOL CEnemySpawner::H0x01300003_SpawnGroup_03(const CEntityEvent &__eeInput){
|
|
ASSERT(__eeInput.ee_slEvent==EVENTCODE_EInternal);
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT 0x01300003
|
|
if(!(TRUE )){ Jump(STATE_CURRENT,0x01300004, FALSE, EInternal());return TRUE;}
|
|
#line 250 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
SpawnEntity (TRUE );
|
|
#line 253 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
m_ctTotal --;
|
|
#line 255 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
if(m_ctTotal <= 0){
|
|
#line 257 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
Return(STATE_CURRENT,EEnd ());
|
|
#line 257 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
return TRUE;
|
|
#line 258 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
}
|
|
#line 261 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
m_iInGroup ++;
|
|
#line 263 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
if(m_iEnemiesTriggered > 0 && m_estType == EST_RESPAWNGROUP ){
|
|
#line 264 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
if(! m_bFirstPass ){
|
|
#line 265 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
m_iEnemiesTriggered --;
|
|
#line 266 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
}
|
|
#line 267 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
}else if(m_iEnemiesTriggered > 0){
|
|
#line 268 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
m_iEnemiesTriggered --;
|
|
#line 269 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
}
|
|
#line 272 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
if(m_iInGroup >= m_ctGroupSize ){
|
|
#line 273 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
if(! (m_estType == EST_MAINTAINGROUP && m_iEnemiesTriggered > 0)){
|
|
#line 275 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
Return(STATE_CURRENT,EReturn ());
|
|
#line 275 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
return TRUE;
|
|
#line 276 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
}
|
|
#line 277 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
}
|
|
#line 280 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
SetTimerAfter(m_tmSingleWait );
|
|
Jump(STATE_CURRENT, 0x01300001, FALSE, EBegin());return TRUE;}BOOL CEnemySpawner::H0x01300001_SpawnGroup_01(const CEntityEvent &__eeInput) {
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT 0x01300001
|
|
switch(__eeInput.ee_slEvent){case(EVENTCODE_EBegin):{const EBegin&e= (EBegin&)__eeInput;
|
|
return TRUE;}ASSERT(FALSE);break;case(EVENTCODE_ETimer):{const ETimer&e= (ETimer&)__eeInput;
|
|
UnsetTimer();Jump(STATE_CURRENT,0x01300002, FALSE, EInternal());return TRUE;}ASSERT(FALSE);break;default:{return FALSE;}ASSERT(FALSE);break;
|
|
#line 284 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
}return TRUE;}BOOL CEnemySpawner::H0x01300002_SpawnGroup_02(const CEntityEvent &__eeInput){
|
|
ASSERT(__eeInput.ee_slEvent==EVENTCODE_EInternal);
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT 0x01300002
|
|
Jump(STATE_CURRENT,0x01300003, FALSE, EInternal());return TRUE;
|
|
#line 285 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
}BOOL CEnemySpawner::H0x01300004_SpawnGroup_04(const CEntityEvent &__eeInput) {
|
|
ASSERT(__eeInput.ee_slEvent==EVENTCODE_EInternal);
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT 0x01300004
|
|
ASSERT(FALSE); return TRUE;};BOOL CEnemySpawner::
|
|
#line 289 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
Simple(const CEntityEvent &__eeInput) {
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT STATE_CEnemySpawner_Simple
|
|
ASSERTMSG(__eeInput.ee_slEvent==EVENTCODE_EVoid, "CEnemySpawner::Simple expects 'EVoid' as input!"); const EVoid &e = (const EVoid &)__eeInput;
|
|
#line 292 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
SetTimerAt(THINKTIME_NEVER);
|
|
Jump(STATE_CURRENT, 0x01300006, FALSE, EBegin());return TRUE;}BOOL CEnemySpawner::H0x01300006_Simple_01(const CEntityEvent &__eeInput) {
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT 0x01300006
|
|
switch(__eeInput.ee_slEvent){case(EVENTCODE_EBegin):{const EBegin&e= (EBegin&)__eeInput;
|
|
return TRUE;}ASSERT(FALSE);break;case(EVENTCODE_ETrigger):{const ETrigger&e= (ETrigger&)__eeInput;
|
|
UnsetTimer();Jump(STATE_CURRENT,0x01300007, FALSE, EInternal());return TRUE;}ASSERT(FALSE);break;case(EVENTCODE_EStart):{const EStart&e= (EStart&)__eeInput;
|
|
UnsetTimer();Jump(STATE_CURRENT,0x01300007, FALSE, EInternal());return TRUE;}ASSERT(FALSE);break;default:{return FALSE;}ASSERT(FALSE);break;
|
|
#line 297 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
}return TRUE;}BOOL CEnemySpawner::H0x01300007_Simple_02(const CEntityEvent &__eeInput){
|
|
ASSERT(__eeInput.ee_slEvent==EVENTCODE_EInternal);
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT 0x01300007
|
|
|
|
#line 300 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
if(!(m_tmDelay > 0)){ Jump(STATE_CURRENT,0x0130000a, FALSE, EInternal());return TRUE;}
|
|
#line 302 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
SetTimerAfter(m_tmDelay );
|
|
Jump(STATE_CURRENT, 0x01300008, FALSE, EBegin());return TRUE;}BOOL CEnemySpawner::H0x01300008_Simple_03(const CEntityEvent &__eeInput) {
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT 0x01300008
|
|
switch(__eeInput.ee_slEvent) {case EVENTCODE_EBegin: return TRUE;case EVENTCODE_ETimer: Jump(STATE_CURRENT,0x01300009, FALSE, EInternal()); return TRUE;default: return FALSE; }}BOOL CEnemySpawner::H0x01300009_Simple_04(const CEntityEvent &__eeInput){
|
|
ASSERT(__eeInput.ee_slEvent==EVENTCODE_EInternal);
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT 0x01300009
|
|
;Jump(STATE_CURRENT,0x0130000a, FALSE, EInternal());return TRUE;}BOOL CEnemySpawner::H0x0130000a_Simple_05(const CEntityEvent &__eeInput){
|
|
ASSERT(__eeInput.ee_slEvent==EVENTCODE_EInternal);
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT 0x0130000a
|
|
|
|
#line 306 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
Jump(STATE_CURRENT,0x0130000f, FALSE, EInternal());return TRUE;}BOOL CEnemySpawner::H0x0130000f_Simple_10(const CEntityEvent &__eeInput){
|
|
ASSERT(__eeInput.ee_slEvent==EVENTCODE_EInternal);
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT 0x0130000f
|
|
if(!(TRUE )){ Jump(STATE_CURRENT,0x01300010, FALSE, EInternal());return TRUE;}
|
|
#line 308 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
STATE_CEnemySpawner_SpawnGroup, TRUE;
|
|
Jump(STATE_CURRENT, 0x0130000b, FALSE, EBegin());return TRUE;}BOOL CEnemySpawner::H0x0130000b_Simple_06(const CEntityEvent &__eeInput) {
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT 0x0130000b
|
|
switch(__eeInput.ee_slEvent) {case EVENTCODE_EBegin: Call(STATE_CURRENT, STATE_CEnemySpawner_SpawnGroup, TRUE, EVoid());return TRUE;case EVENTCODE_EReturn: Jump(STATE_CURRENT,0x0130000c, FALSE, __eeInput); return TRUE;default: return FALSE; }}BOOL CEnemySpawner::H0x0130000c_Simple_07(const CEntityEvent &__eeInput){
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT 0x0130000c
|
|
const EReturn&__e= (EReturn&)__eeInput;
|
|
;
|
|
#line 310 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
SetTimerAfter(m_tmGroupWait );
|
|
Jump(STATE_CURRENT, 0x0130000d, FALSE, EBegin());return TRUE;}BOOL CEnemySpawner::H0x0130000d_Simple_08(const CEntityEvent &__eeInput) {
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT 0x0130000d
|
|
switch(__eeInput.ee_slEvent) {case EVENTCODE_EBegin: return TRUE;case EVENTCODE_ETimer: Jump(STATE_CURRENT,0x0130000e, FALSE, EInternal()); return TRUE;default: return FALSE; }}BOOL CEnemySpawner::H0x0130000e_Simple_09(const CEntityEvent &__eeInput){
|
|
ASSERT(__eeInput.ee_slEvent==EVENTCODE_EInternal);
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT 0x0130000e
|
|
;Jump(STATE_CURRENT,0x0130000f, FALSE, EInternal());return TRUE;
|
|
#line 311 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
}BOOL CEnemySpawner::H0x01300010_Simple_11(const CEntityEvent &__eeInput) {
|
|
ASSERT(__eeInput.ee_slEvent==EVENTCODE_EInternal);
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT 0x01300010
|
|
ASSERT(FALSE); return TRUE;};BOOL CEnemySpawner::
|
|
#line 315 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
Teleporter(const CEntityEvent &__eeInput) {
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT STATE_CEnemySpawner_Teleporter
|
|
ASSERTMSG(__eeInput.ee_slEvent==EVENTCODE_EVoid, "CEnemySpawner::Teleporter expects 'EVoid' as input!"); const EVoid &e = (const EVoid &)__eeInput;
|
|
#line 318 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
SetTimerAt(THINKTIME_NEVER);
|
|
Jump(STATE_CURRENT, 0x01300012, FALSE, EBegin());return TRUE;}BOOL CEnemySpawner::H0x01300012_Teleporter_01(const CEntityEvent &__eeInput) {
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT 0x01300012
|
|
switch(__eeInput.ee_slEvent){case(EVENTCODE_EBegin):{const EBegin&e= (EBegin&)__eeInput;
|
|
return TRUE;}ASSERT(FALSE);break;case(EVENTCODE_ETrigger):{const ETrigger&e= (ETrigger&)__eeInput;
|
|
UnsetTimer();Jump(STATE_CURRENT,0x01300013, FALSE, EInternal());return TRUE;}ASSERT(FALSE);break;case(EVENTCODE_EStart):{const EStart&e= (EStart&)__eeInput;
|
|
UnsetTimer();Jump(STATE_CURRENT,0x01300013, FALSE, EInternal());return TRUE;}ASSERT(FALSE);break;default:{return FALSE;}ASSERT(FALSE);break;
|
|
#line 323 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
}return TRUE;}BOOL CEnemySpawner::H0x01300013_Teleporter_02(const CEntityEvent &__eeInput){
|
|
ASSERT(__eeInput.ee_slEvent==EVENTCODE_EInternal);
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT 0x01300013
|
|
|
|
#line 326 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
if(!(m_tmDelay > 0)){ Jump(STATE_CURRENT,0x01300016, FALSE, EInternal());return TRUE;}
|
|
#line 328 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
SetTimerAfter(m_tmDelay );
|
|
Jump(STATE_CURRENT, 0x01300014, FALSE, EBegin());return TRUE;}BOOL CEnemySpawner::H0x01300014_Teleporter_03(const CEntityEvent &__eeInput) {
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT 0x01300014
|
|
switch(__eeInput.ee_slEvent) {case EVENTCODE_EBegin: return TRUE;case EVENTCODE_ETimer: Jump(STATE_CURRENT,0x01300015, FALSE, EInternal()); return TRUE;default: return FALSE; }}BOOL CEnemySpawner::H0x01300015_Teleporter_04(const CEntityEvent &__eeInput){
|
|
ASSERT(__eeInput.ee_slEvent==EVENTCODE_EInternal);
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT 0x01300015
|
|
;Jump(STATE_CURRENT,0x01300016, FALSE, EInternal());return TRUE;}BOOL CEnemySpawner::H0x01300016_Teleporter_05(const CEntityEvent &__eeInput){
|
|
ASSERT(__eeInput.ee_slEvent==EVENTCODE_EInternal);
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT 0x01300016
|
|
|
|
#line 332 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
SpawnEntity (FALSE );
|
|
#line 335 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
Return(STATE_CURRENT,EEnd ());
|
|
#line 335 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
return TRUE; ASSERT(FALSE); return TRUE;};BOOL CEnemySpawner::
|
|
#line 339 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
Respawner(const CEntityEvent &__eeInput) {
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT STATE_CEnemySpawner_Respawner
|
|
ASSERTMSG(__eeInput.ee_slEvent==EVENTCODE_EVoid, "CEnemySpawner::Respawner expects 'EVoid' as input!"); const EVoid &e = (const EVoid &)__eeInput;
|
|
#line 342 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
Jump(STATE_CURRENT,0x01300031, FALSE, EInternal());return TRUE;}BOOL CEnemySpawner::H0x01300031_Respawner_26(const CEntityEvent &__eeInput){
|
|
ASSERT(__eeInput.ee_slEvent==EVENTCODE_EInternal);
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT 0x01300031
|
|
if(!(TRUE )){ Jump(STATE_CURRENT,0x01300032, FALSE, EInternal());return TRUE;}
|
|
#line 344 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
SetTimerAt(THINKTIME_NEVER);
|
|
Jump(STATE_CURRENT, 0x01300018, FALSE, EBegin());return TRUE;}BOOL CEnemySpawner::H0x01300018_Respawner_01(const CEntityEvent &__eeInput) {
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT 0x01300018
|
|
switch(__eeInput.ee_slEvent){case(EVENTCODE_EBegin):{const EBegin&e= (EBegin&)__eeInput;
|
|
|
|
#line 346 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
if(! m_bFirstPass && m_iEnemiesTriggered > 0){
|
|
#line 347 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
UnsetTimer();Jump(STATE_CURRENT,0x01300019, FALSE, EInternal());return TRUE;
|
|
#line 348 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
}
|
|
#line 349 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
return TRUE;
|
|
#line 350 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
}ASSERT(FALSE);break;case(EVENTCODE_ETrigger):{const ETrigger&e= (ETrigger&)__eeInput;
|
|
UnsetTimer();Jump(STATE_CURRENT,0x01300019, FALSE, EInternal());return TRUE;}ASSERT(FALSE);break;case(EVENTCODE_EStart):{const EStart&e= (EStart&)__eeInput;
|
|
UnsetTimer();Jump(STATE_CURRENT,0x01300019, FALSE, EInternal());return TRUE;}ASSERT(FALSE);break;default:{return FALSE;}ASSERT(FALSE);break;
|
|
#line 354 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
}return TRUE;}BOOL CEnemySpawner::H0x01300019_Respawner_02(const CEntityEvent &__eeInput){
|
|
ASSERT(__eeInput.ee_slEvent==EVENTCODE_EInternal);
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT 0x01300019
|
|
|
|
#line 357 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
if(!(m_tmDelay > 0 && m_bFirstPass )){ Jump(STATE_CURRENT,0x0130001c, FALSE, EInternal());return TRUE;}
|
|
#line 359 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
SetTimerAfter(m_tmDelay );
|
|
Jump(STATE_CURRENT, 0x0130001a, FALSE, EBegin());return TRUE;}BOOL CEnemySpawner::H0x0130001a_Respawner_03(const CEntityEvent &__eeInput) {
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT 0x0130001a
|
|
switch(__eeInput.ee_slEvent) {case EVENTCODE_EBegin: return TRUE;case EVENTCODE_ETimer: Jump(STATE_CURRENT,0x0130001b, FALSE, EInternal()); return TRUE;default: return FALSE; }}BOOL CEnemySpawner::H0x0130001b_Respawner_04(const CEntityEvent &__eeInput){
|
|
ASSERT(__eeInput.ee_slEvent==EVENTCODE_EInternal);
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT 0x0130001b
|
|
;Jump(STATE_CURRENT,0x0130001c, FALSE, EInternal());return TRUE;}BOOL CEnemySpawner::H0x0130001c_Respawner_05(const CEntityEvent &__eeInput){
|
|
ASSERT(__eeInput.ee_slEvent==EVENTCODE_EInternal);
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT 0x0130001c
|
|
|
|
#line 362 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
if(!(m_estType == EST_RESPAWNGROUP )){ Jump(STATE_CURRENT,0x0130002e, FALSE, EInternal());return TRUE;}
|
|
#line 363 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
if(!(m_bFirstPass )){ Jump(STATE_CURRENT,0x01300026, FALSE, EInternal());return TRUE;}
|
|
#line 364 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
STATE_CEnemySpawner_SpawnGroup, TRUE;
|
|
Jump(STATE_CURRENT, 0x0130001d, FALSE, EBegin());return TRUE;}BOOL CEnemySpawner::H0x0130001d_Respawner_06(const CEntityEvent &__eeInput) {
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT 0x0130001d
|
|
switch(__eeInput.ee_slEvent) {case EVENTCODE_EBegin: Call(STATE_CURRENT, STATE_CEnemySpawner_SpawnGroup, TRUE, EVoid());return TRUE;case EVENTCODE_EReturn: Jump(STATE_CURRENT,0x0130001e, FALSE, __eeInput); return TRUE;default: return FALSE; }}BOOL CEnemySpawner::H0x0130001e_Respawner_07(const CEntityEvent &__eeInput){
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT 0x0130001e
|
|
const EReturn&__e= (EReturn&)__eeInput;
|
|
;Jump(STATE_CURRENT,0x01300025, FALSE, EInternal());return TRUE;}BOOL CEnemySpawner::H0x01300026_Respawner_15(const CEntityEvent &__eeInput){
|
|
ASSERT(__eeInput.ee_slEvent==EVENTCODE_EInternal);
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT 0x01300026
|
|
if(!(m_iEnemiesTriggered >= m_ctGroupSize )){ Jump(STATE_CURRENT,0x01300024, FALSE, EInternal());return TRUE;}
|
|
#line 366 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
if(!(m_tmGroupWait > 0)){ Jump(STATE_CURRENT,0x01300021, FALSE, EInternal());return TRUE;}SetTimerAfter(m_tmGroupWait );
|
|
Jump(STATE_CURRENT, 0x0130001f, FALSE, EBegin());return TRUE;}BOOL CEnemySpawner::H0x0130001f_Respawner_08(const CEntityEvent &__eeInput) {
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT 0x0130001f
|
|
switch(__eeInput.ee_slEvent) {case EVENTCODE_EBegin: return TRUE;case EVENTCODE_ETimer: Jump(STATE_CURRENT,0x01300020, FALSE, EInternal()); return TRUE;default: return FALSE; }}BOOL CEnemySpawner::H0x01300020_Respawner_09(const CEntityEvent &__eeInput){
|
|
ASSERT(__eeInput.ee_slEvent==EVENTCODE_EInternal);
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT 0x01300020
|
|
;Jump(STATE_CURRENT,0x01300021, FALSE, EInternal());return TRUE;}BOOL CEnemySpawner::H0x01300021_Respawner_10(const CEntityEvent &__eeInput){
|
|
ASSERT(__eeInput.ee_slEvent==EVENTCODE_EInternal);
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT 0x01300021
|
|
|
|
#line 367 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
STATE_CEnemySpawner_SpawnGroup, TRUE;
|
|
Jump(STATE_CURRENT, 0x01300022, FALSE, EBegin());return TRUE;}BOOL CEnemySpawner::H0x01300022_Respawner_11(const CEntityEvent &__eeInput) {
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT 0x01300022
|
|
switch(__eeInput.ee_slEvent) {case EVENTCODE_EBegin: Call(STATE_CURRENT, STATE_CEnemySpawner_SpawnGroup, TRUE, EVoid());return TRUE;case EVENTCODE_EReturn: Jump(STATE_CURRENT,0x01300023, FALSE, __eeInput); return TRUE;default: return FALSE; }}BOOL CEnemySpawner::H0x01300023_Respawner_12(const CEntityEvent &__eeInput){
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT 0x01300023
|
|
const EReturn&__e= (EReturn&)__eeInput;
|
|
;Jump(STATE_CURRENT,0x01300024, FALSE, EInternal());return TRUE;}BOOL CEnemySpawner::H0x01300024_Respawner_13(const CEntityEvent &__eeInput){
|
|
ASSERT(__eeInput.ee_slEvent==EVENTCODE_EInternal);
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT 0x01300024
|
|
Jump(STATE_CURRENT,0x01300025, FALSE, EInternal());return TRUE;}
|
|
BOOL CEnemySpawner::H0x01300025_Respawner_14(const CEntityEvent &__eeInput){
|
|
ASSERT(__eeInput.ee_slEvent==EVENTCODE_EInternal);
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT 0x01300025
|
|
Jump(STATE_CURRENT,0x0130002d, FALSE, EInternal());return TRUE;}BOOL CEnemySpawner::H0x0130002e_Respawner_23(const CEntityEvent &__eeInput){
|
|
ASSERT(__eeInput.ee_slEvent==EVENTCODE_EInternal);
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT 0x0130002e
|
|
if(!(TRUE )){ Jump(STATE_CURRENT,0x0130002c, FALSE, EInternal());return TRUE;}
|
|
#line 371 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
if(!(m_tmGroupWait > 0 && ! m_bFirstPass )){ Jump(STATE_CURRENT,0x01300029, FALSE, EInternal());return TRUE;}SetTimerAfter(m_tmGroupWait );
|
|
Jump(STATE_CURRENT, 0x01300027, FALSE, EBegin());return TRUE;}BOOL CEnemySpawner::H0x01300027_Respawner_16(const CEntityEvent &__eeInput) {
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT 0x01300027
|
|
switch(__eeInput.ee_slEvent) {case EVENTCODE_EBegin: return TRUE;case EVENTCODE_ETimer: Jump(STATE_CURRENT,0x01300028, FALSE, EInternal()); return TRUE;default: return FALSE; }}BOOL CEnemySpawner::H0x01300028_Respawner_17(const CEntityEvent &__eeInput){
|
|
ASSERT(__eeInput.ee_slEvent==EVENTCODE_EInternal);
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT 0x01300028
|
|
;Jump(STATE_CURRENT,0x01300029, FALSE, EInternal());return TRUE;}BOOL CEnemySpawner::H0x01300029_Respawner_18(const CEntityEvent &__eeInput){
|
|
ASSERT(__eeInput.ee_slEvent==EVENTCODE_EInternal);
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT 0x01300029
|
|
|
|
#line 372 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
STATE_CEnemySpawner_SpawnGroup, TRUE;
|
|
Jump(STATE_CURRENT, 0x0130002a, FALSE, EBegin());return TRUE;}BOOL CEnemySpawner::H0x0130002a_Respawner_19(const CEntityEvent &__eeInput) {
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT 0x0130002a
|
|
switch(__eeInput.ee_slEvent) {case EVENTCODE_EBegin: Call(STATE_CURRENT, STATE_CEnemySpawner_SpawnGroup, TRUE, EVoid());return TRUE;case EVENTCODE_EReturn: Jump(STATE_CURRENT,0x0130002b, FALSE, __eeInput); return TRUE;default: return FALSE; }}BOOL CEnemySpawner::H0x0130002b_Respawner_20(const CEntityEvent &__eeInput){
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT 0x0130002b
|
|
const EReturn&__e= (EReturn&)__eeInput;
|
|
;Jump(STATE_CURRENT,0x0130002c, FALSE, EInternal());return TRUE;}BOOL CEnemySpawner::H0x0130002c_Respawner_21(const CEntityEvent &__eeInput){
|
|
ASSERT(__eeInput.ee_slEvent==EVENTCODE_EInternal);
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT 0x0130002c
|
|
Jump(STATE_CURRENT,0x0130002d, FALSE, EInternal());return TRUE;}
|
|
BOOL CEnemySpawner::H0x0130002d_Respawner_22(const CEntityEvent &__eeInput){
|
|
ASSERT(__eeInput.ee_slEvent==EVENTCODE_EInternal);
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT 0x0130002d
|
|
|
|
#line 383 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
if(m_estType == EST_MAINTAINGROUP ){
|
|
#line 385 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
m_ctGroupSize = 1;
|
|
#line 386 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
}
|
|
#line 389 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
m_bFirstPass = FALSE ;
|
|
#line 392 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
SetTimerAfter(0.1f);
|
|
Jump(STATE_CURRENT, 0x0130002f, FALSE, EBegin());return TRUE;}BOOL CEnemySpawner::H0x0130002f_Respawner_24(const CEntityEvent &__eeInput) {
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT 0x0130002f
|
|
switch(__eeInput.ee_slEvent) {case EVENTCODE_EBegin: return TRUE;case EVENTCODE_ETimer: Jump(STATE_CURRENT,0x01300030, FALSE, EInternal()); return TRUE;default: return FALSE; }}BOOL CEnemySpawner::H0x01300030_Respawner_25(const CEntityEvent &__eeInput){
|
|
ASSERT(__eeInput.ee_slEvent==EVENTCODE_EInternal);
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT 0x01300030
|
|
;Jump(STATE_CURRENT,0x01300031, FALSE, EInternal());return TRUE;
|
|
#line 393 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
}BOOL CEnemySpawner::H0x01300032_Respawner_27(const CEntityEvent &__eeInput) {
|
|
ASSERT(__eeInput.ee_slEvent==EVENTCODE_EInternal);
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT 0x01300032
|
|
ASSERT(FALSE); return TRUE;};BOOL CEnemySpawner::
|
|
#line 396 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
DestroyableInactive(const CEntityEvent &__eeInput) {
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT STATE_CEnemySpawner_DestroyableInactive
|
|
ASSERTMSG(__eeInput.ee_slEvent==EVENTCODE_EVoid, "CEnemySpawner::DestroyableInactive expects 'EVoid' as input!"); const EVoid &e = (const EVoid &)__eeInput;
|
|
#line 398 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
SetTimerAt(THINKTIME_NEVER);
|
|
Jump(STATE_CURRENT, 0x01300034, FALSE, EBegin());return TRUE;}BOOL CEnemySpawner::H0x01300034_DestroyableInactive_01(const CEntityEvent &__eeInput) {
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT 0x01300034
|
|
switch(__eeInput.ee_slEvent) {case EVENTCODE_EBegin: return TRUE;case EVENTCODE_EActivate: Jump(STATE_CURRENT,0x01300035, FALSE, __eeInput); return TRUE;default: return FALSE; }}BOOL CEnemySpawner::H0x01300035_DestroyableInactive_02(const CEntityEvent &__eeInput){
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT 0x01300035
|
|
const EActivate&__e= (EActivate&)__eeInput;
|
|
;
|
|
#line 399 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
Jump(STATE_CURRENT, STATE_CEnemySpawner_DestroyableActive, TRUE, EVoid());return TRUE; ASSERT(FALSE); return TRUE;};BOOL CEnemySpawner::
|
|
#line 402 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
DestroyableActiveSpawning(const CEntityEvent &__eeInput) {
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT STATE_CEnemySpawner_DestroyableActiveSpawning
|
|
ASSERTMSG(__eeInput.ee_slEvent==EVENTCODE_EVoid, "CEnemySpawner::DestroyableActiveSpawning expects 'EVoid' as input!"); const EVoid &e = (const EVoid &)__eeInput;
|
|
#line 405 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
Jump(STATE_CURRENT,0x0130003b, FALSE, EInternal());return TRUE;}BOOL CEnemySpawner::H0x0130003b_DestroyableActiveSpawning_05(const CEntityEvent &__eeInput){
|
|
ASSERT(__eeInput.ee_slEvent==EVENTCODE_EInternal);
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT 0x0130003b
|
|
if(!(TRUE )){ Jump(STATE_CURRENT,0x0130003c, FALSE, EInternal());return TRUE;}
|
|
#line 407 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
STATE_CEnemySpawner_SpawnGroup, TRUE;
|
|
Jump(STATE_CURRENT, 0x01300037, FALSE, EBegin());return TRUE;}BOOL CEnemySpawner::H0x01300037_DestroyableActiveSpawning_01(const CEntityEvent &__eeInput) {
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT 0x01300037
|
|
switch(__eeInput.ee_slEvent) {case EVENTCODE_EBegin: Call(STATE_CURRENT, STATE_CEnemySpawner_SpawnGroup, TRUE, EVoid());return TRUE;case EVENTCODE_EReturn: Jump(STATE_CURRENT,0x01300038, FALSE, __eeInput); return TRUE;default: return FALSE; }}BOOL CEnemySpawner::H0x01300038_DestroyableActiveSpawning_02(const CEntityEvent &__eeInput){
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT 0x01300038
|
|
const EReturn&__e= (EReturn&)__eeInput;
|
|
;
|
|
#line 409 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
SetTimerAfter(m_tmGroupWait );
|
|
Jump(STATE_CURRENT, 0x01300039, FALSE, EBegin());return TRUE;}BOOL CEnemySpawner::H0x01300039_DestroyableActiveSpawning_03(const CEntityEvent &__eeInput) {
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT 0x01300039
|
|
switch(__eeInput.ee_slEvent) {case EVENTCODE_EBegin: return TRUE;case EVENTCODE_ETimer: Jump(STATE_CURRENT,0x0130003a, FALSE, EInternal()); return TRUE;default: return FALSE; }}BOOL CEnemySpawner::H0x0130003a_DestroyableActiveSpawning_04(const CEntityEvent &__eeInput){
|
|
ASSERT(__eeInput.ee_slEvent==EVENTCODE_EInternal);
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT 0x0130003a
|
|
;Jump(STATE_CURRENT,0x0130003b, FALSE, EInternal());return TRUE;
|
|
#line 410 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
}BOOL CEnemySpawner::H0x0130003c_DestroyableActiveSpawning_06(const CEntityEvent &__eeInput) {
|
|
ASSERT(__eeInput.ee_slEvent==EVENTCODE_EInternal);
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT 0x0130003c
|
|
ASSERT(FALSE); return TRUE;};BOOL CEnemySpawner::
|
|
#line 412 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
DestroyableActive(const CEntityEvent &__eeInput) {
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT STATE_CEnemySpawner_DestroyableActive
|
|
ASSERTMSG(__eeInput.ee_slEvent==EVENTCODE_EVoid, "CEnemySpawner::DestroyableActive expects 'EVoid' as input!"); const EVoid &e = (const EVoid &)__eeInput;
|
|
#line 414 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
STATE_CEnemySpawner_DestroyableActiveSpawning, TRUE;
|
|
Jump(STATE_CURRENT, 0x0130003e, FALSE, EBegin());return TRUE;}BOOL CEnemySpawner::H0x0130003e_DestroyableActive_01(const CEntityEvent &__eeInput) {
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT 0x0130003e
|
|
switch(__eeInput.ee_slEvent) {case EVENTCODE_EBegin: Call(STATE_CURRENT, STATE_CEnemySpawner_DestroyableActiveSpawning, TRUE, EVoid());return TRUE;case EVENTCODE_EDeactivate: Jump(STATE_CURRENT,0x0130003f, FALSE, __eeInput); return TRUE;default: return FALSE; }}BOOL CEnemySpawner::H0x0130003f_DestroyableActive_02(const CEntityEvent &__eeInput){
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT 0x0130003f
|
|
const EDeactivate&__e= (EDeactivate&)__eeInput;
|
|
;
|
|
#line 415 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
Jump(STATE_CURRENT, STATE_CEnemySpawner_DestroyableInactive, TRUE, EVoid());return TRUE; ASSERT(FALSE); return TRUE;};BOOL CEnemySpawner::
|
|
#line 419 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
Destroyable(const CEntityEvent &__eeInput) {
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT STATE_CEnemySpawner_Destroyable
|
|
ASSERTMSG(__eeInput.ee_slEvent==EVENTCODE_EVoid, "CEnemySpawner::Destroyable expects 'EVoid' as input!"); const EVoid &e = (const EVoid &)__eeInput;
|
|
#line 422 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
STATE_CEnemySpawner_DestroyableInactive, TRUE;
|
|
Jump(STATE_CURRENT, 0x01300041, FALSE, EBegin());return TRUE;}BOOL CEnemySpawner::H0x01300041_Destroyable_01(const CEntityEvent &__eeInput) {
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT 0x01300041
|
|
switch(__eeInput.ee_slEvent) {case EVENTCODE_EBegin: Call(STATE_CURRENT, STATE_CEnemySpawner_DestroyableInactive, TRUE, EVoid());return TRUE;case EVENTCODE_EStop: Jump(STATE_CURRENT,0x01300042, FALSE, __eeInput); return TRUE;default: return FALSE; }}BOOL CEnemySpawner::H0x01300042_Destroyable_02(const CEntityEvent &__eeInput){
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT 0x01300042
|
|
const EStop&__e= (EStop&)__eeInput;
|
|
;
|
|
#line 424 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
Return(STATE_CURRENT,EEnd ());
|
|
#line 424 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
return TRUE; ASSERT(FALSE); return TRUE;};BOOL CEnemySpawner::
|
|
#line 427 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
Main(const CEntityEvent &__eeInput) {
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT STATE_CEnemySpawner_Main
|
|
ASSERTMSG(__eeInput.ee_slEvent==EVENTCODE_EVoid, "CEnemySpawner::Main expects 'EVoid' as input!"); const EVoid &e = (const EVoid &)__eeInput;
|
|
#line 429 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
InitAsEditorModel ();
|
|
#line 430 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
SetPhysicsFlags (EPF_MODEL_IMMATERIAL );
|
|
#line 431 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
SetCollisionFlags (ECF_IMMATERIAL );
|
|
#line 434 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
SetModel (MODEL_ENEMYSPAWNER );
|
|
#line 435 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
SetModelMainTexture (TEXTURE_ENEMYSPAWNER );
|
|
#line 437 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
if(m_tmSingleWait <= 0.0f){m_tmSingleWait = 0.05f;}
|
|
#line 438 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
if(m_tmGroupWait <= 0.0f){m_tmGroupWait = 0.05f;}
|
|
#line 441 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
if(m_fInnerCircle > m_fOuterCircle ){
|
|
#line 442 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
m_fInnerCircle = m_fOuterCircle ;
|
|
#line 443 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
}
|
|
#line 445 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
if(m_estType == EST_RESPAWNERBYONE ){
|
|
#line 446 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
m_estType = EST_MAINTAINGROUP ;
|
|
#line 447 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
}
|
|
#line 450 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
if(m_penTarget != NULL ){
|
|
#line 451 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
if(! IsDerivedFromClass (m_penTarget , "Enemy Base")){
|
|
#line 452 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
WarningMessage ("Target '%s' is of wrong class!" , m_penTarget -> GetName ());
|
|
#line 453 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
m_penTarget = NULL ;
|
|
#line 454 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
}
|
|
#line 455 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
}
|
|
#line 456 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
if(m_penSeriousTarget != NULL ){
|
|
#line 457 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
if(! IsDerivedFromClass (m_penSeriousTarget , "Enemy Base")){
|
|
#line 458 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
WarningMessage ("Target '%s' is of wrong class!" , m_penSeriousTarget -> GetName ());
|
|
#line 459 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
m_penSeriousTarget = NULL ;
|
|
#line 460 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
}
|
|
#line 461 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
}
|
|
#line 464 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
SetTimerAfter(_pTimer -> TickQuantum );
|
|
Jump(STATE_CURRENT, 0x01300043, FALSE, EBegin());return TRUE;}BOOL CEnemySpawner::H0x01300043_Main_01(const CEntityEvent &__eeInput) {
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT 0x01300043
|
|
switch(__eeInput.ee_slEvent) {case EVENTCODE_EBegin: return TRUE;case EVENTCODE_ETimer: Jump(STATE_CURRENT,0x01300044, FALSE, EInternal()); return TRUE;default: return FALSE; }}BOOL CEnemySpawner::H0x01300044_Main_02(const CEntityEvent &__eeInput){
|
|
ASSERT(__eeInput.ee_slEvent==EVENTCODE_EInternal);
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT 0x01300044
|
|
;
|
|
#line 467 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
if(! GetSP () -> sp_bUseExtraEnemies && ! GetSP () -> sp_bSinglePlayer
|
|
#line 468 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
&& ! (GetSpawnFlags () & SPF_SINGLEPLAYER )){
|
|
#line 469 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
Destroy ();
|
|
#line 470 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
Return(STATE_CURRENT,EVoid());
|
|
#line 470 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
return TRUE;
|
|
#line 471 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
}
|
|
#line 473 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
if(m_bDoubleInSerious && GetSP () -> sp_gdGameDifficulty == CSessionProperties :: GD_EXTREME ){
|
|
#line 474 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
m_ctGroupSize *= 2;
|
|
#line 475 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
m_ctTotal *= 2;
|
|
#line 476 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
}
|
|
#line 477 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
if(m_penSeriousTarget != NULL && GetSP () -> sp_gdGameDifficulty == CSessionProperties :: GD_EXTREME ){
|
|
#line 478 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
m_penTarget = m_penSeriousTarget ;
|
|
#line 479 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
}
|
|
#line 481 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
if(m_estType == EST_MAINTAINGROUP ){
|
|
#line 482 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
m_iEnemiesTriggered = m_ctGroupSize ;
|
|
#line 483 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
}
|
|
#line 485 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
m_bFirstPass = TRUE ;
|
|
#line 487 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
SetTimerAt(THINKTIME_NEVER);
|
|
Jump(STATE_CURRENT, 0x01300045, FALSE, EBegin());return TRUE;}BOOL CEnemySpawner::H0x01300045_Main_03(const CEntityEvent &__eeInput) {
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT 0x01300045
|
|
switch(__eeInput.ee_slEvent){case(EVENTCODE_EBegin):{const EBegin&e= (EBegin&)__eeInput;
|
|
|
|
#line 489 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
if(m_estType == EST_SIMPLE ){
|
|
#line 490 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
Call(STATE_CURRENT, STATE_CEnemySpawner_Simple, TRUE, EVoid());return TRUE;
|
|
#line 491 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
}else if(m_estType == EST_TELEPORTER ){
|
|
#line 492 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
Call(STATE_CURRENT, STATE_CEnemySpawner_Teleporter, TRUE, EVoid());return TRUE;
|
|
#line 493 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
}else if(m_estType == EST_RESPAWNER
|
|
#line 494 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
|| m_estType == EST_TRIGGERED || m_estType == EST_RESPAWNGROUP ){
|
|
#line 495 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
Call(STATE_CURRENT, STATE_CEnemySpawner_Respawner, TRUE, EVoid());return TRUE;
|
|
#line 496 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
}else if(m_estType == EST_MAINTAINGROUP ){
|
|
#line 497 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
m_ctGroupSize = 1;
|
|
#line 498 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
Call(STATE_CURRENT, STATE_CEnemySpawner_Respawner, TRUE, EVoid());return TRUE;
|
|
#line 499 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
}
|
|
#line 500 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
else if(m_estType == EST_DESTROYABLE ){
|
|
#line 501 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
Call(STATE_CURRENT, STATE_CEnemySpawner_Destroyable, TRUE, EVoid());return TRUE;
|
|
#line 502 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
}
|
|
#line 503 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
}ASSERT(FALSE);break;case(EVENTCODE_EDeactivate):{const EDeactivate&e= (EDeactivate&)__eeInput;
|
|
|
|
#line 505 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
UnsetTimer();Jump(STATE_CURRENT,0x01300046, FALSE, EInternal());return TRUE;
|
|
#line 506 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
}ASSERT(FALSE);break;case(EVENTCODE_EStop):{const EStop&e= (EStop&)__eeInput;
|
|
|
|
#line 508 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
UnsetTimer();Jump(STATE_CURRENT,0x01300046, FALSE, EInternal());return TRUE;
|
|
#line 509 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
}ASSERT(FALSE);break;case(EVENTCODE_EEnd):{const EEnd&e= (EEnd&)__eeInput;
|
|
|
|
#line 511 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
UnsetTimer();Jump(STATE_CURRENT,0x01300046, FALSE, EInternal());return TRUE;
|
|
#line 512 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
}ASSERT(FALSE);break;default: return FALSE; break;
|
|
#line 513 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
}return TRUE;}BOOL CEnemySpawner::H0x01300046_Main_04(const CEntityEvent &__eeInput){
|
|
ASSERT(__eeInput.ee_slEvent==EVENTCODE_EInternal);
|
|
#undef STATE_CURRENT
|
|
#define STATE_CURRENT 0x01300046
|
|
|
|
#line 515 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
Destroy ();
|
|
#line 517 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
Return(STATE_CURRENT,EVoid());
|
|
#line 517 "D:/SE1_GPL/Sources/EntitiesMP/EnemySpawner.es"
|
|
return TRUE; ASSERT(FALSE); return TRUE;}; |