Skip to content
Merged
Show file tree
Hide file tree
Changes from 2 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 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