From 2569303de453ae13d7550214d0d3bbda90f12310 Mon Sep 17 00:00:00 2001 From: mo Date: Fri, 4 Sep 2026 17:48:10 +0100 Subject: [PATCH] fix: correct T4 FX element type values (#990) * fix: correct T4 FX element type values * chore: adjust all game FxElemType enums --------- Co-authored-by: Jan Laupetin --- src/Common/Game/IW3/IW3_Assets.h | 29 ++++++++--------- src/Common/Game/IW4/IW4_Assets.h | 33 ++++++++++---------- src/Common/Game/IW5/IW5_Assets.h | 33 ++++++++++---------- src/Common/Game/QOS/QOS_Assets.h | 29 ++++++++--------- src/Common/Game/T4/T4_Assets.h | 31 +++++++++--------- src/Common/Game/T5/T5_Assets.h | 33 ++++++++++---------- src/Common/Game/T6/T6_Assets.h | 33 ++++++++++---------- src/ZoneCode/Game/T4/XAssets/FxEffectDef.txt | 4 +-- 8 files changed, 116 insertions(+), 109 deletions(-) diff --git a/src/Common/Game/IW3/IW3_Assets.h b/src/Common/Game/IW3/IW3_Assets.h index 6e97a936..4b7be821 100644 --- a/src/Common/Game/IW3/IW3_Assets.h +++ b/src/Common/Game/IW3/IW3_Assets.h @@ -3581,20 +3581,21 @@ namespace IW3 enum FxElemType { - FX_ELEM_TYPE_SPRITE_BILLBOARD = 0x0, - FX_ELEM_TYPE_SPRITE_ORIENTED = 0x1, - FX_ELEM_TYPE_TAIL = 0x2, - FX_ELEM_TYPE_TRAIL = 0x3, - FX_ELEM_TYPE_CLOUD = 0x4, - FX_ELEM_TYPE_MODEL = 0x5, - FX_ELEM_TYPE_OMNI_LIGHT = 0x6, - FX_ELEM_TYPE_SPOT_LIGHT = 0x7, - FX_ELEM_TYPE_SOUND = 0x8, - FX_ELEM_TYPE_DECAL = 0x9, - FX_ELEM_TYPE_RUNNER = 0xA, - FX_ELEM_TYPE_COUNT = 0xB, - FX_ELEM_TYPE_LAST_SPRITE = 0x3, - FX_ELEM_TYPE_LAST_DRAWN = 0x7, + FX_ELEM_TYPE_SPRITE_BILLBOARD, + FX_ELEM_TYPE_SPRITE_ORIENTED, + FX_ELEM_TYPE_TAIL, + FX_ELEM_TYPE_TRAIL, + FX_ELEM_TYPE_CLOUD, + FX_ELEM_TYPE_MODEL, + FX_ELEM_TYPE_OMNI_LIGHT, + FX_ELEM_TYPE_SPOT_LIGHT, + FX_ELEM_TYPE_SOUND, + FX_ELEM_TYPE_DECAL, + FX_ELEM_TYPE_RUNNER, + + FX_ELEM_TYPE_COUNT, + FX_ELEM_TYPE_LAST_SPRITE = FX_ELEM_TYPE_TRAIL, + FX_ELEM_TYPE_LAST_DRAWN = FX_ELEM_TYPE_SPOT_LIGHT, }; union FxElemVisuals diff --git a/src/Common/Game/IW4/IW4_Assets.h b/src/Common/Game/IW4/IW4_Assets.h index e3d63d32..0fed8149 100644 --- a/src/Common/Game/IW4/IW4_Assets.h +++ b/src/Common/Game/IW4/IW4_Assets.h @@ -2467,22 +2467,23 @@ namespace IW4 enum FxElemType { - FX_ELEM_TYPE_SPRITE_BILLBOARD = 0x0, - FX_ELEM_TYPE_SPRITE_ORIENTED = 0x1, - FX_ELEM_TYPE_TAIL = 0x2, - FX_ELEM_TYPE_TRAIL = 0x3, - FX_ELEM_TYPE_CLOUD = 0x4, - FX_ELEM_TYPE_SPARK_CLOUD = 0x5, - FX_ELEM_TYPE_SPARK_FOUNTAIN = 0x6, - FX_ELEM_TYPE_MODEL = 0x7, - FX_ELEM_TYPE_OMNI_LIGHT = 0x8, - FX_ELEM_TYPE_SPOT_LIGHT = 0x9, - FX_ELEM_TYPE_SOUND = 0xA, - FX_ELEM_TYPE_DECAL = 0xB, - FX_ELEM_TYPE_RUNNER = 0xC, - FX_ELEM_TYPE_COUNT = 0xD, - FX_ELEM_TYPE_LAST_SPRITE = 0x3, - FX_ELEM_TYPE_LAST_DRAWN = 0x9, + FX_ELEM_TYPE_SPRITE_BILLBOARD, + FX_ELEM_TYPE_SPRITE_ORIENTED, + FX_ELEM_TYPE_TAIL, + FX_ELEM_TYPE_TRAIL, + FX_ELEM_TYPE_CLOUD, + FX_ELEM_TYPE_SPARK_CLOUD, + FX_ELEM_TYPE_SPARK_FOUNTAIN, + FX_ELEM_TYPE_MODEL, + FX_ELEM_TYPE_OMNI_LIGHT, + FX_ELEM_TYPE_SPOT_LIGHT, + FX_ELEM_TYPE_SOUND, + FX_ELEM_TYPE_DECAL, + FX_ELEM_TYPE_RUNNER, + + FX_ELEM_TYPE_COUNT, + FX_ELEM_TYPE_LAST_SPRITE = FX_ELEM_TYPE_TRAIL, + FX_ELEM_TYPE_LAST_DRAWN = FX_ELEM_TYPE_SPOT_LIGHT, }; struct FxIntRange diff --git a/src/Common/Game/IW5/IW5_Assets.h b/src/Common/Game/IW5/IW5_Assets.h index 47caeaa4..301cac70 100644 --- a/src/Common/Game/IW5/IW5_Assets.h +++ b/src/Common/Game/IW5/IW5_Assets.h @@ -4842,22 +4842,23 @@ namespace IW5 enum FxElemType { - FX_ELEM_TYPE_SPRITE_BILLBOARD = 0x0, - FX_ELEM_TYPE_SPRITE_ORIENTED = 0x1, - FX_ELEM_TYPE_TAIL = 0x2, - FX_ELEM_TYPE_TRAIL = 0x3, - FX_ELEM_TYPE_CLOUD = 0x4, - FX_ELEM_TYPE_SPARK_CLOUD = 0x5, - FX_ELEM_TYPE_SPARK_FOUNTAIN = 0x6, - FX_ELEM_TYPE_MODEL = 0x7, - FX_ELEM_TYPE_OMNI_LIGHT = 0x8, - FX_ELEM_TYPE_SPOT_LIGHT = 0x9, - FX_ELEM_TYPE_SOUND = 0xA, - FX_ELEM_TYPE_DECAL = 0xB, - FX_ELEM_TYPE_RUNNER = 0xC, - FX_ELEM_TYPE_COUNT = 0xD, - FX_ELEM_TYPE_LAST_SPRITE = 0x3, - FX_ELEM_TYPE_LAST_DRAWN = 0x9 + FX_ELEM_TYPE_SPRITE_BILLBOARD, + FX_ELEM_TYPE_SPRITE_ORIENTED, + FX_ELEM_TYPE_TAIL, + FX_ELEM_TYPE_TRAIL, + FX_ELEM_TYPE_CLOUD, + FX_ELEM_TYPE_SPARK_CLOUD, + FX_ELEM_TYPE_SPARK_FOUNTAIN, + FX_ELEM_TYPE_MODEL, + FX_ELEM_TYPE_OMNI_LIGHT, + FX_ELEM_TYPE_SPOT_LIGHT, + FX_ELEM_TYPE_SOUND, + FX_ELEM_TYPE_DECAL, + FX_ELEM_TYPE_RUNNER, + + FX_ELEM_TYPE_COUNT, + FX_ELEM_TYPE_LAST_SPRITE = FX_ELEM_TYPE_TRAIL, + FX_ELEM_TYPE_LAST_DRAWN = FX_ELEM_TYPE_SPOT_LIGHT }; struct FxElemDef diff --git a/src/Common/Game/QOS/QOS_Assets.h b/src/Common/Game/QOS/QOS_Assets.h index f520d09e..f6f8479f 100644 --- a/src/Common/Game/QOS/QOS_Assets.h +++ b/src/Common/Game/QOS/QOS_Assets.h @@ -2363,20 +2363,21 @@ namespace QOS enum FxElemType { - FX_ELEM_TYPE_SPRITE_BILLBOARD = 0x0, - FX_ELEM_TYPE_SPRITE_ORIENTED = 0x1, - FX_ELEM_TYPE_TAIL = 0x2, - FX_ELEM_TYPE_TRAIL = 0x3, - FX_ELEM_TYPE_CLOUD = 0x4, - FX_ELEM_TYPE_MODEL = 0x5, - FX_ELEM_TYPE_OMNI_LIGHT = 0x6, - FX_ELEM_TYPE_SPOT_LIGHT = 0x7, - FX_ELEM_TYPE_SOUND = 0x8, - FX_ELEM_TYPE_DECAL = 0x9, - FX_ELEM_TYPE_RUNNER = 0xA, - FX_ELEM_TYPE_COUNT = 0xB, - FX_ELEM_TYPE_LAST_SPRITE = 0x3, - FX_ELEM_TYPE_LAST_DRAWN = 0x7, + FX_ELEM_TYPE_SPRITE_BILLBOARD, + FX_ELEM_TYPE_SPRITE_ORIENTED, + FX_ELEM_TYPE_TAIL, + FX_ELEM_TYPE_TRAIL, + FX_ELEM_TYPE_CLOUD, + FX_ELEM_TYPE_MODEL, + FX_ELEM_TYPE_OMNI_LIGHT, + FX_ELEM_TYPE_SPOT_LIGHT, + FX_ELEM_TYPE_SOUND, + FX_ELEM_TYPE_DECAL, + FX_ELEM_TYPE_RUNNER, + + FX_ELEM_TYPE_COUNT, + FX_ELEM_TYPE_LAST_SPRITE = FX_ELEM_TYPE_TRAIL, + FX_ELEM_TYPE_LAST_DRAWN = FX_ELEM_TYPE_SPOT_LIGHT, }; union FxElemVisuals diff --git a/src/Common/Game/T4/T4_Assets.h b/src/Common/Game/T4/T4_Assets.h index 35cd7ff1..115a4439 100644 --- a/src/Common/Game/T4/T4_Assets.h +++ b/src/Common/Game/T4/T4_Assets.h @@ -4168,21 +4168,22 @@ namespace T4 enum FxElemType { - FX_ELEM_TYPE_SPRITE_BILLBOARD = 0x0, - FX_ELEM_TYPE_SPRITE_ORIENTED = 0x1, - FX_ELEM_TYPE_TAIL = 0x2, - FX_ELEM_TYPE_TRAIL = 0x3, - FX_ELEM_TYPE_CLOUD = 0x4, - FX_ELEM_TYPE_SPARK_CLOUD = 0x5, - FX_ELEM_TYPE_MODEL = 0x6, - FX_ELEM_TYPE_OMNI_LIGHT = 0x7, - FX_ELEM_TYPE_SPOT_LIGHT = 0x8, - FX_ELEM_TYPE_SOUND = 0x9, - FX_ELEM_TYPE_DECAL = 0xA, - FX_ELEM_TYPE_RUNNER = 0xB, - FX_ELEM_TYPE_COUNT = 0xC, - FX_ELEM_TYPE_LAST_SPRITE = 0x3, - FX_ELEM_TYPE_LAST_DRAWN = 0x8, + FX_ELEM_TYPE_SPRITE_BILLBOARD, + FX_ELEM_TYPE_SPRITE_ORIENTED, + FX_ELEM_TYPE_TAIL, + FX_ELEM_TYPE_LINE, + FX_ELEM_TYPE_TRAIL, + FX_ELEM_TYPE_CLOUD, + FX_ELEM_TYPE_MODEL, + FX_ELEM_TYPE_OMNI_LIGHT, + FX_ELEM_TYPE_SPOT_LIGHT, + FX_ELEM_TYPE_SOUND, + FX_ELEM_TYPE_DECAL, + FX_ELEM_TYPE_RUNNER, + + FX_ELEM_TYPE_COUNT, + FX_ELEM_TYPE_LAST_SPRITE = FX_ELEM_TYPE_TRAIL, + FX_ELEM_TYPE_LAST_DRAWN = FX_ELEM_TYPE_SPOT_LIGHT, }; union FxElemVisuals diff --git a/src/Common/Game/T5/T5_Assets.h b/src/Common/Game/T5/T5_Assets.h index 37c8ddd9..07bf3268 100644 --- a/src/Common/Game/T5/T5_Assets.h +++ b/src/Common/Game/T5/T5_Assets.h @@ -5104,22 +5104,23 @@ namespace T5 enum FxElemType : char { - FX_ELEM_TYPE_SPRITE_BILLBOARD = 0x0, - FX_ELEM_TYPE_SPRITE_ORIENTED = 0x1, - FX_ELEM_TYPE_SPRITE_ROTATED = 0x2, - FX_ELEM_TYPE_TAIL = 0x3, - FX_ELEM_TYPE_LINE = 0x4, - FX_ELEM_TYPE_TRAIL = 0x5, - FX_ELEM_TYPE_CLOUD = 0x6, - FX_ELEM_TYPE_MODEL = 0x7, - FX_ELEM_TYPE_OMNI_LIGHT = 0x8, - FX_ELEM_TYPE_SPOT_LIGHT = 0x9, - FX_ELEM_TYPE_SOUND = 0xA, - FX_ELEM_TYPE_DECAL = 0xB, - FX_ELEM_TYPE_RUNNER = 0xC, - FX_ELEM_TYPE_COUNT = 0xD, - FX_ELEM_TYPE_LAST_SPRITE = 0x5, - FX_ELEM_TYPE_LAST_DRAWN = 0x9, + FX_ELEM_TYPE_SPRITE_BILLBOARD, + FX_ELEM_TYPE_SPRITE_ORIENTED, + FX_ELEM_TYPE_SPRITE_ROTATED, + FX_ELEM_TYPE_TAIL, + FX_ELEM_TYPE_LINE, + FX_ELEM_TYPE_TRAIL, + FX_ELEM_TYPE_CLOUD, + FX_ELEM_TYPE_MODEL, + FX_ELEM_TYPE_OMNI_LIGHT, + FX_ELEM_TYPE_SPOT_LIGHT, + FX_ELEM_TYPE_SOUND, + FX_ELEM_TYPE_DECAL, + FX_ELEM_TYPE_RUNNER, + + FX_ELEM_TYPE_COUNT, + FX_ELEM_TYPE_LAST_SPRITE = FX_ELEM_TYPE_TRAIL, + FX_ELEM_TYPE_LAST_DRAWN = FX_ELEM_TYPE_SPOT_LIGHT, }; struct FxElemDef diff --git a/src/Common/Game/T6/T6_Assets.h b/src/Common/Game/T6/T6_Assets.h index 422087ef..4ed3d959 100644 --- a/src/Common/Game/T6/T6_Assets.h +++ b/src/Common/Game/T6/T6_Assets.h @@ -5437,22 +5437,23 @@ namespace T6 enum FxElemType : char { - FX_ELEM_TYPE_SPRITE_BILLBOARD = 0x0, - FX_ELEM_TYPE_SPRITE_ORIENTED = 0x1, - FX_ELEM_TYPE_SPRITE_ROTATED = 0x2, - FX_ELEM_TYPE_TAIL = 0x3, - FX_ELEM_TYPE_LINE = 0x4, - FX_ELEM_TYPE_TRAIL = 0x5, - FX_ELEM_TYPE_CLOUD = 0x6, - FX_ELEM_TYPE_MODEL = 0x7, - FX_ELEM_TYPE_OMNI_LIGHT = 0x8, - FX_ELEM_TYPE_SPOT_LIGHT = 0x9, - FX_ELEM_TYPE_SOUND = 0xA, - FX_ELEM_TYPE_DECAL = 0xB, - FX_ELEM_TYPE_RUNNER = 0xC, - FX_ELEM_TYPE_COUNT = 0xD, - FX_ELEM_TYPE_LAST_SPRITE = 0x5, - FX_ELEM_TYPE_LAST_DRAWN = 0x9, + FX_ELEM_TYPE_SPRITE_BILLBOARD, + FX_ELEM_TYPE_SPRITE_ORIENTED, + FX_ELEM_TYPE_SPRITE_ROTATED, + FX_ELEM_TYPE_TAIL, + FX_ELEM_TYPE_LINE, + FX_ELEM_TYPE_TRAIL, + FX_ELEM_TYPE_CLOUD, + FX_ELEM_TYPE_MODEL, + FX_ELEM_TYPE_OMNI_LIGHT, + FX_ELEM_TYPE_SPOT_LIGHT, + FX_ELEM_TYPE_SOUND, + FX_ELEM_TYPE_DECAL, + FX_ELEM_TYPE_RUNNER, + + FX_ELEM_TYPE_COUNT, + FX_ELEM_TYPE_LAST_SPRITE = FX_ELEM_TYPE_TRAIL, + FX_ELEM_TYPE_LAST_DRAWN = FX_ELEM_TYPE_SPOT_LIGHT, }; struct FxElemDef diff --git a/src/ZoneCode/Game/T4/XAssets/FxEffectDef.txt b/src/ZoneCode/Game/T4/XAssets/FxEffectDef.txt index a67beac5..0d3a2eb7 100644 --- a/src/ZoneCode/Game/T4/XAssets/FxEffectDef.txt +++ b/src/ZoneCode/Game/T4/XAssets/FxEffectDef.txt @@ -28,9 +28,9 @@ set string soundName; set condition material FxElemDef::elemType == FX_ELEM_TYPE_SPRITE_BILLBOARD || FxElemDef::elemType == FX_ELEM_TYPE_SPRITE_ORIENTED || FxElemDef::elemType == FX_ELEM_TYPE_TAIL +|| FxElemDef::elemType == FX_ELEM_TYPE_LINE || FxElemDef::elemType == FX_ELEM_TYPE_TRAIL -|| FxElemDef::elemType == FX_ELEM_TYPE_CLOUD -|| FxElemDef::elemType == FX_ELEM_TYPE_SPARK_CLOUD; +|| FxElemDef::elemType == FX_ELEM_TYPE_CLOUD; // FxEffectDefRef use FxEffectDefRef;