Skip to content

Commit f70794d

Browse files
authored
fix(contain): Fix compile errors with RETAIL_COMPATIBLE_CRC 0 (#1411)
1 parent 9c27651 commit f70794d

File tree

1 file changed

+7
-5
lines changed

1 file changed

+7
-5
lines changed

Generals/Code/GameEngine/Source/GameLogic/Object/Contain/OpenContain.cpp

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1279,6 +1279,8 @@ void OpenContain::orderAllPassengersToExit( CommandSourceType commandSource )
12791279
//-------------------------------------------------------------------------------------------------
12801280
void OpenContain::processDamageToContained()
12811281
{
1282+
const OpenContainModuleData* data = getOpenContainModuleData();
1283+
12821284
#if RETAIL_COMPATIBLE_CRC
12831285

12841286
const ContainedItemsList* items = getContainedItemsList();
@@ -1292,7 +1294,7 @@ void OpenContain::processDamageToContained()
12921294
Object *object = *it++;
12931295

12941296
//Calculate the damage to be inflicted on each unit.
1295-
Real damage = object->getBodyModule()->getMaxHealth() * getOpenContainModuleData()->m_damagePercentageToUnits;
1297+
Real damage = object->getBodyModule()->getMaxHealth() * data->m_damagePercentageToUnits;
12961298

12971299
DamageInfo damageInfo;
12981300
damageInfo.in.m_damageType = DAMAGE_UNRESISTABLE;
@@ -1301,7 +1303,7 @@ void OpenContain::processDamageToContained()
13011303
damageInfo.in.m_amount = damage;
13021304
object->attemptDamage( &damageInfo );
13031305

1304-
if( !object->isEffectivelyDead() && getOpenContainModuleData()->m_damagePercentageToUnits == 1.0f )
1306+
if( !object->isEffectivelyDead() && data->m_damagePercentageToUnits == 1.0f )
13051307
object->kill(); // in case we are carrying flame proof troops we have been asked to kill
13061308

13071309
// TheSuperHackers @info Calls to Object::attemptDamage and Object::kill will not remove
@@ -1349,16 +1351,16 @@ void OpenContain::processDamageToContained()
13491351
DEBUG_ASSERTCRASH( object, ("Contain list must not contain NULL element") );
13501352

13511353
// Calculate the damage to be inflicted on each unit.
1352-
Real damage = object->getBodyModule()->getMaxHealth() * percentDamage;
1354+
Real damage = object->getBodyModule()->getMaxHealth() * data->m_damagePercentageToUnits;
13531355

13541356
DamageInfo damageInfo;
13551357
damageInfo.in.m_damageType = DAMAGE_UNRESISTABLE;
1356-
damageInfo.in.m_deathType = data->m_isBurnedDeathToUnits ? DEATH_BURNED : DEATH_NORMAL;
1358+
damageInfo.in.m_deathType = DEATH_BURNED;
13571359
damageInfo.in.m_sourceID = getObject()->getID();
13581360
damageInfo.in.m_amount = damage;
13591361
object->attemptDamage( &damageInfo );
13601362

1361-
if( !object->isEffectivelyDead() && percentDamage == 1.0f )
1363+
if( !object->isEffectivelyDead() && data->m_damagePercentageToUnits == 1.0f )
13621364
object->kill(); // in case we are carrying flame proof troops we have been asked to kill
13631365

13641366
if ( object->isEffectivelyDead() )

0 commit comments

Comments
 (0)