Skip to content

Commit cd69854

Browse files
committed
FXList fixes
1 parent f02d772 commit cd69854

4 files changed

Lines changed: 11 additions & 4 deletions

File tree

Core/GameEngineDevice/Source/W3DDevice/GameClient/Drawable/Draw/W3DModelDraw.cpp

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1049,6 +1049,10 @@ W3DModelDrawModuleData::W3DModelDrawModuleData() :
10491049

10501050
m_receivesDynamicLights = TRUE;
10511051

1052+
m_ignoreAnimScaling = FALSE;
1053+
m_ignoreRotation = FALSE;
1054+
m_showForOwnerOnly = FALSE;
1055+
10521056
// m_ignoreConditionStates defaults to all zero, which is what we want
10531057
}
10541058

GeneralsMD/Code/GameEngine/Include/GameLogic/Module/DelayedUpgradeBehavior.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -116,7 +116,7 @@ class DelayedUpgradeBehavior : public UpdateModule, public UpgradeMux
116116

117117
void triggerUpgrade();
118118

119-
virtual Bool resetUpgrade(UpgradeMaskType keyMask); // When this upgrade is removed, we reset our triggers.
119+
virtual Bool resetUpgrade(const UpgradeMaskType& keyMask); // When this upgrade is removed, we reset our triggers.
120120

121121
virtual void upgradeImplementation();
122122

GeneralsMD/Code/GameEngine/Source/GameClient/FXList.cpp

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -698,6 +698,7 @@ class ParticleSystemFXNugget : public FXNugget
698698
m_minAllowedHeight = -INFINITY;
699699
// m_createAtWaterHeight = FALSE;
700700
m_allowedSurfaceType = SURFACE_ALL;
701+
m_useSurfaceInfo = FALSE;
701702
}
702703

703704
virtual void doFXPos(const Coord3D *primary, const Matrix3D* primaryMtx, const Real /*primarySpeed*/, const Coord3D * /*secondary*/, const Real overrideRadius, FXSurfaceInfo* surfaceInfo) const
@@ -1072,11 +1073,13 @@ void FXList::doFXObj(const Object* primary, const Object* secondary) const
10721073
if (primary && primary->getShroudedStatus(playerIndex) > OBJECTSHROUD_PARTIAL_CLEAR)
10731074
return; //the primary object is fogged or shrouded so don't bother with the effect.
10741075

1076+
FXSurfaceInfo surfaceInfo; // Cached water/height
1077+
10751078
for (FXNuggetList::const_iterator it = m_nuggets.begin(); it != m_nuggets.end(); ++it)
10761079
{
10771080

10781081
// HERE THE PRIMARY IS THE GUY RECEIVING THE FX, AND SECONDARY MIGHT BE THE GUY DEALING IT
1079-
(*it)->doFXObj(primary, secondary);
1082+
(*it)->doFXObj(primary, secondary, &surfaceInfo);
10801083
}
10811084
}
10821085

GeneralsMD/Code/GameEngine/Source/GameLogic/Object/Behavior/DelayedUpgradeBehavior.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -202,9 +202,9 @@ void DelayedUpgradeBehavior::triggerUpgrade(void)
202202

203203
//-------------------------------------------------------------------------------------------------
204204
//-------------------------------------------------------------------------------------------------
205-
Bool DelayedUpgradeBehavior::resetUpgrade(UpgradeMaskType keyMask)
205+
Bool DelayedUpgradeBehavior::resetUpgrade(const UpgradeMaskType& keyMask)
206206
{
207-
// DEBUG_LOG(("DelayedUpgradeBehavior::resetUpgrade()."));
207+
DEBUG_LOG(("DelayedUpgradeBehavior::resetUpgrade()."));
208208
if (UpgradeMux::resetUpgrade(keyMask)) {
209209
m_triggerCompleted = FALSE;
210210
m_triggerFrame = 0;

0 commit comments

Comments
 (0)