Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion Generals/Code/GameEngine/Include/Common/TunnelTracker.h
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,7 @@ class TunnelTracker : public MemoryPoolObject,
static void destroyObject( Object *obj, void *userData ); ///< Callback for Iterate Contained system
static void healObject( Object *obj, void *frames ); ///< Callback for Iterate Contained system

#if PRESERVE_TUNNEL_HEAL_STACKING || RETAIL_COMPATIBLE_CRC
#if RETAIL_COMPATIBLE_CRC || PRESERVE_TUNNEL_HEAL_STACKING
void healObjects(Real frames); ///< heal all objects within the tunnel
#else
void healObjects(); ///< heal all objects within the tunnel
Expand Down
2 changes: 1 addition & 1 deletion Generals/Code/GameEngine/Source/Common/RTS/Player.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -678,7 +678,7 @@ void Player::update()
}
}

#if !PRESERVE_TUNNEL_HEAL_STACKING && !RETAIL_COMPATIBLE_CRC
#if !(RETAIL_COMPATIBLE_CRC || PRESERVE_TUNNEL_HEAL_STACKING)
// TheSuperHackers @bugfix Stubbjax 26/09/2025 The Tunnel System now heals
// all units once per frame instead of once per frame per Tunnel Network.
TunnelTracker* tunnelSystem = getTunnelSystem();
Expand Down
4 changes: 2 additions & 2 deletions Generals/Code/GameEngine/Source/Common/RTS/TunnelTracker.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -277,7 +277,7 @@ void TunnelTracker::destroyObject( Object *obj, void * )

// ------------------------------------------------------------------------
// heal all the objects within the tunnel system using the iterateContained function
#if PRESERVE_TUNNEL_HEAL_STACKING || RETAIL_COMPATIBLE_CRC
#if RETAIL_COMPATIBLE_CRC || PRESERVE_TUNNEL_HEAL_STACKING
void TunnelTracker::healObjects(Real frames)
{
iterateContained(healObject, &frames, FALSE);
Expand All @@ -301,7 +301,7 @@ void TunnelTracker::healObject( Object *obj, void *frames)
{

//get the number of frames to heal
#if PRESERVE_TUNNEL_HEAL_STACKING || RETAIL_COMPATIBLE_CRC
#if RETAIL_COMPATIBLE_CRC || PRESERVE_TUNNEL_HEAL_STACKING
Real *framesForFullHeal = (Real*)frames;
#else
UnsignedInt* framesForFullHeal = (UnsignedInt*)frames;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -158,7 +158,7 @@ void PoisonedBehavior::startPoisonedEffects( const DamageInfo *damageInfo )

// We are going to take the damage dealt by the original poisoner every so often for a while.
m_poisonDamageAmount = damageInfo->out.m_actualDamageDealt;
#if !RETAIL_COMPATIBLE_CRC && !PRESERVE_NO_XP_FROM_POISON_KILLS
#if !(RETAIL_COMPATIBLE_CRC || PRESERVE_NO_XP_FROM_POISON_KILLS)
// TheSuperHackers @bugfix Stubbjax 03/09/2025 Allow poison damage to award xp to the poison source.
m_poisonSource = damageInfo->in.m_sourceID;
#endif
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -593,7 +593,7 @@ void ActiveBody::attemptHealing( DamageInfo *damageInfo )
//(object pointer loses scope as soon as atteptdamage's caller ends)
m_lastDamageInfo = *damageInfo;
m_lastDamageCleared = false;
#if PRESERVE_STRUCTURE_STEALTH_DURING_REPAIR
#if RETAIL_COMPATIBLE_CRC || PRESERVE_STRUCTURE_STEALTH_DURING_REPAIR
m_lastDamageTimestamp = TheGameLogic->getFrame();
#endif
m_lastHealingTimestamp = TheGameLogic->getFrame();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ CrateCollideModuleData::CrateCollideModuleData()
m_executeAnimationFades = TRUE;
m_isBuildingPickup = FALSE;
m_isHumanOnlyPickup = FALSE;
m_allowMultiPickup = (PRESERVE_MULTI_CRATE_PICKUP != 0);
m_allowMultiPickup = (RETAIL_COMPATIBLE_CRC != 0 || PRESERVE_MULTI_CRATE_PICKUP != 0);
m_executeFX = nullptr;
m_pickupScience = SCIENCE_INVALID;
m_executionAnimationTemplate = AsciiString::TheEmptyString;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -437,7 +437,7 @@ UpdateSleepTime TunnelContain::update()
if (controllingPlayer)
{
TunnelTracker *tunnelSystem = controllingPlayer->getTunnelSystem();
#if PRESERVE_TUNNEL_HEAL_STACKING || RETAIL_COMPATIBLE_CRC
#if RETAIL_COMPATIBLE_CRC || PRESERVE_TUNNEL_HEAL_STACKING
if (tunnelSystem)
{
const TunnelContainModuleData* modData = getTunnelContainModuleData();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -1340,7 +1340,7 @@ class GenericObjectCreationNugget : public ObjectCreationNugget
}
}

#if !RETAIL_COMPATIBLE_CRC && !PRESERVE_NO_XP_FROM_OCL_KILLS
#if !(RETAIL_COMPATIBLE_CRC || PRESERVE_NO_XP_FROM_OCL_KILLS)
ObjectID sinkID = sourceObj->getExperienceTracker()->getExperienceSink();
firstObject->getExperienceTracker()->setExperienceSink(sinkID != INVALID_ID ? sinkID : sourceObj->getID());
#endif
Expand Down
2 changes: 1 addition & 1 deletion GeneralsMD/Code/GameEngine/Include/Common/TunnelTracker.h
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,7 @@ class TunnelTracker : public MemoryPoolObject,
static void destroyObject( Object *obj, void *userData ); ///< Callback for Iterate Contained system
static void healObject( Object *obj, void *frames ); ///< Callback for Iterate Contained system

#if PRESERVE_TUNNEL_HEAL_STACKING || RETAIL_COMPATIBLE_CRC
#if RETAIL_COMPATIBLE_CRC || PRESERVE_TUNNEL_HEAL_STACKING
void healObjects(Real frames); ///< heal all objects within the tunnel
#else
void healObjects(); ///< heal all objects within the tunnel
Expand Down
2 changes: 1 addition & 1 deletion GeneralsMD/Code/GameEngine/Source/Common/RTS/Player.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -716,7 +716,7 @@ void Player::update()
}
}

#if !PRESERVE_TUNNEL_HEAL_STACKING && !RETAIL_COMPATIBLE_CRC
#if !(RETAIL_COMPATIBLE_CRC || PRESERVE_TUNNEL_HEAL_STACKING)
// TheSuperHackers @bugfix Stubbjax 26/09/2025 The Tunnel System now heals
// all units once per frame instead of once per frame per Tunnel Network.
TunnelTracker* tunnelSystem = getTunnelSystem();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -278,7 +278,7 @@ void TunnelTracker::destroyObject( Object *obj, void * )

// ------------------------------------------------------------------------
// heal all the objects within the tunnel system using the iterateContained function
#if PRESERVE_TUNNEL_HEAL_STACKING || RETAIL_COMPATIBLE_CRC
#if RETAIL_COMPATIBLE_CRC || PRESERVE_TUNNEL_HEAL_STACKING
void TunnelTracker::healObjects(Real frames)
{
iterateContained(healObject, &frames, FALSE);
Expand All @@ -302,7 +302,7 @@ void TunnelTracker::healObject( Object *obj, void *frames)
{

//get the number of frames to heal
#if PRESERVE_TUNNEL_HEAL_STACKING || RETAIL_COMPATIBLE_CRC
#if RETAIL_COMPATIBLE_CRC || PRESERVE_TUNNEL_HEAL_STACKING
Real *framesForFullHeal = (Real*)frames;
#else
UnsignedInt* framesForFullHeal = (UnsignedInt*)frames;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -159,7 +159,7 @@ void PoisonedBehavior::startPoisonedEffects( const DamageInfo *damageInfo )

// We are going to take the damage dealt by the original poisoner every so often for a while.
m_poisonDamageAmount = damageInfo->out.m_actualDamageDealt;
#if !RETAIL_COMPATIBLE_CRC && !PRESERVE_NO_XP_FROM_POISON_KILLS
#if !(RETAIL_COMPATIBLE_CRC || PRESERVE_NO_XP_FROM_POISON_KILLS)
// TheSuperHackers @bugfix Stubbjax 03/09/2025 Allow poison damage to award xp to the poison source.
m_poisonSource = damageInfo->in.m_sourceID;
#endif
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -842,7 +842,7 @@ void ActiveBody::attemptHealing( DamageInfo *damageInfo )
//(object pointer loses scope as soon as atteptdamage's caller ends)
m_lastDamageInfo = *damageInfo;
m_lastDamageCleared = false;
#if PRESERVE_STRUCTURE_STEALTH_DURING_REPAIR
#if RETAIL_COMPATIBLE_CRC || PRESERVE_STRUCTURE_STEALTH_DURING_REPAIR
m_lastDamageTimestamp = TheGameLogic->getFrame();
#endif
m_lastHealingTimestamp = TheGameLogic->getFrame();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,7 @@ CrateCollideModuleData::CrateCollideModuleData()
m_executeAnimationFades = TRUE;
m_isBuildingPickup = FALSE;
m_isHumanOnlyPickup = FALSE;
m_allowMultiPickup = (PRESERVE_MULTI_CRATE_PICKUP != 0);
m_allowMultiPickup = (RETAIL_COMPATIBLE_CRC != 0 || PRESERVE_MULTI_CRATE_PICKUP != 0);
m_executeFX = nullptr;
m_pickupScience = SCIENCE_INVALID;
m_executionAnimationTemplate = AsciiString::TheEmptyString;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -549,7 +549,7 @@ UpdateSleepTime TunnelContain::update()
if (controllingPlayer)
{
TunnelTracker *tunnelSystem = controllingPlayer->getTunnelSystem();
#if PRESERVE_TUNNEL_HEAL_STACKING || RETAIL_COMPATIBLE_CRC
#if RETAIL_COMPATIBLE_CRC || PRESERVE_TUNNEL_HEAL_STACKING
if (tunnelSystem)
{
const TunnelContainModuleData* modData = getTunnelContainModuleData();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -1428,7 +1428,7 @@ class GenericObjectCreationNugget : public ObjectCreationNugget
}
}

#if !RETAIL_COMPATIBLE_CRC && !PRESERVE_NO_XP_FROM_OCL_KILLS
#if !(RETAIL_COMPATIBLE_CRC || PRESERVE_NO_XP_FROM_OCL_KILLS)
ObjectID sinkID = sourceObj->getExperienceTracker()->getExperienceSink();
firstObject->getExperienceTracker()->setExperienceSink(sinkID != INVALID_ID ? sinkID : sourceObj->getID());
#endif
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -312,7 +312,7 @@ Bool StealthUpdate::allowedToStealth( Object *stealthOwner ) const

if( flags & STEALTH_NOT_WHILE_TAKING_DAMAGE && self->getBodyModule()->getLastDamageTimestamp() >= now - 1 )
{
#if PRESERVE_STRUCTURE_STEALTH_DURING_REPAIR
#if RETAIL_COMPATIBLE_CRC || PRESERVE_STRUCTURE_STEALTH_DURING_REPAIR
//Only if it's not healing damage.
if( self->getBodyModule()->getLastDamageInfo()->in.m_damageType != DAMAGE_HEALING )
#endif
Expand Down
Loading