diff options
| -rw-r--r-- | sql/updates/world/master/2025_11_12_00_world.sql | 8 | ||||
| -rw-r--r-- | src/server/game/Globals/ObjectMgr.cpp | 3 |
2 files changed, 11 insertions, 0 deletions
diff --git a/sql/updates/world/master/2025_11_12_00_world.sql b/sql/updates/world/master/2025_11_12_00_world.sql new file mode 100644 index 00000000000..8476583c765 --- /dev/null +++ b/sql/updates/world/master/2025_11_12_00_world.sql @@ -0,0 +1,8 @@ +-- CREATURE_STATIC_FLAG_4_PREVENT_SWIM +UPDATE `creature_template_difficulty` ctd +LEFT JOIN `creature_template` AS ct ON ct.`entry`=ctd.`Entry` +SET ctd.`StaticFlags4`= ctd.`StaticFlags4` | 0x01000000 +WHERE (ct.`unit_flags2` & 0x01000000) != 0 AND ct.`entry` != 48182; + +UPDATE `creature_template` SET `unit_flags2`= `unit_flags2` &~ 0x01000000; +UPDATE `creature_template_difficulty` SET `StaticFlags4`=`StaticFlags4` | 0x01000000 WHERE `Entry` IN (60292,55996,54470,54199,54192,53772,53740,50748,50741,50051,39943,42102,41610,41595,63172,63201,63356,64055,67057,73166); diff --git a/src/server/game/Globals/ObjectMgr.cpp b/src/server/game/Globals/ObjectMgr.cpp index 1b9857defad..59ffb63a4b0 100644 --- a/src/server/game/Globals/ObjectMgr.cpp +++ b/src/server/game/Globals/ObjectMgr.cpp @@ -1638,6 +1638,9 @@ void ObjectMgr::ChooseCreatureFlags(CreatureTemplate const* cInfo, uint64* npcFl if (staticFlags.HasFlag(CREATURE_STATIC_FLAG_3_CANNOT_TURN)) *unitFlags2 |= UNIT_FLAG2_CANNOT_TURN; + if (staticFlags.HasFlag(CREATURE_STATIC_FLAG_4_PREVENT_SWIM)) + *unitFlags2 |= UNIT_FLAG2_AI_WILL_ONLY_SWIM_IF_TARGET_SWIMS; + if (staticFlags.HasFlag(CREATURE_STATIC_FLAG_5_INTERACT_WHILE_HOSTILE)) *unitFlags2 |= UNIT_FLAG2_INTERACT_WHILE_HOSTILE; } |
