From a103b8aaba70caf3e2b59a849bb5a3678f08e946 Mon Sep 17 00:00:00 2001 From: Stubbjax Date: Fri, 28 Nov 2025 00:01:27 +1100 Subject: [PATCH] bugfix: Weapon effects now show for hidden objects that are not explicitly stealthed --- Generals/Code/GameEngine/Source/GameLogic/Object/Weapon.cpp | 1 + GeneralsMD/Code/GameEngine/Source/GameLogic/Object/Weapon.cpp | 1 + 2 files changed, 2 insertions(+) diff --git a/Generals/Code/GameEngine/Source/GameLogic/Object/Weapon.cpp b/Generals/Code/GameEngine/Source/GameLogic/Object/Weapon.cpp index a104f9d9da..005d5ace98 100644 --- a/Generals/Code/GameEngine/Source/GameLogic/Object/Weapon.cpp +++ b/Generals/Code/GameEngine/Source/GameLogic/Object/Weapon.cpp @@ -890,6 +890,7 @@ UnsignedInt WeaponTemplate::fireWeaponTemplate const Bool isVisible = outerDrawable && outerDrawable->isVisible(); if (!isVisible // if user watching cannot see us + && sourceObj->testStatus(OBJECT_STATUS_STEALTHED) // if unit is stealthed (like a Pathfinder) && !sourceObj->isKindOf(KINDOF_MINE) // and not a mine (which always do the FX, even if hidden)... && !isPlayFXWhenStealthed() // and not a weapon marked to playwhenstealthed ) diff --git a/GeneralsMD/Code/GameEngine/Source/GameLogic/Object/Weapon.cpp b/GeneralsMD/Code/GameEngine/Source/GameLogic/Object/Weapon.cpp index 996a06cb1e..d9b9431ad8 100644 --- a/GeneralsMD/Code/GameEngine/Source/GameLogic/Object/Weapon.cpp +++ b/GeneralsMD/Code/GameEngine/Source/GameLogic/Object/Weapon.cpp @@ -921,6 +921,7 @@ UnsignedInt WeaponTemplate::fireWeaponTemplate const Bool isVisible = outerDrawable && outerDrawable->isVisible(); if (!isVisible // if user watching cannot see us + && sourceObj->testStatus(OBJECT_STATUS_STEALTHED) // if unit is stealthed (like a Pathfinder) && !sourceObj->isKindOf(KINDOF_MINE) // and not a mine (which always do the FX, even if hidden)... && !isPlayFXWhenStealthed() // and not a weapon marked to playwhenstealthed )