From 34ffdaa4f69464e134b75ac6bd8cac46515d6a84 Mon Sep 17 00:00:00 2001 From: hondacrx Date: Thu, 29 Feb 2024 17:12:30 -0500 Subject: [PATCH] Core/Creatures: Allow toggling CREATURE_STATIC_FLAG_FLOATING, CREATURE_STATIC_FLAG_SESSILE and CREATURE_STATIC_FLAG_3_CANNOT_PENETRATE_WATER Port From (https://github.com/TrinityCore/TrinityCore/commit/d3738024587aa618826318fec7bcc6fe15d1f0e2) --- Source/Game/Entities/Creature/Creature.cs | 3 +++ 1 file changed, 3 insertions(+) diff --git a/Source/Game/Entities/Creature/Creature.cs b/Source/Game/Entities/Creature/Creature.cs index 347bf2088..3b7666d2f 100644 --- a/Source/Game/Entities/Creature/Creature.cs +++ b/Source/Game/Entities/Creature/Creature.cs @@ -3332,12 +3332,15 @@ namespace Game.Entities // Returns true if CREATURE_STATIC_FLAG_FLOATING is set which is disabling the gravity of the creature on spawn and reset public bool IsFloating() { return _staticFlags.HasFlag(CreatureStaticFlags.Floating); } + public void SetFloating(bool floating) { _staticFlags.ApplyFlag(CreatureStaticFlags.Floating, floating); SetDisableGravity(floating); } // Returns true if CREATURE_STATIC_FLAG_SESSILE is set which permanently roots the creature in place public bool IsSessile() { return _staticFlags.HasFlag(CreatureStaticFlags.Sessile); } + public void SetSessile(bool sessile) { _staticFlags.ApplyFlag(CreatureStaticFlags.Sessile, sessile); SetControlled(sessile, UnitState.Root); } // Returns true if CREATURE_STATIC_FLAG_3_CANNOT_PENETRATE_WATER is set which does not allow the creature to go below liquid surfaces public bool CannotPenetrateWater() { return _staticFlags.HasFlag(CreatureStaticFlags3.CannotPenetrateWater); } + public void SetCannotPenetrateWater(bool cannotPenetrateWater) { _staticFlags.ApplyFlag(CreatureStaticFlags3.CannotPenetrateWater, cannotPenetrateWater); } // Returns true if CREATURE_STATIC_FLAG_3_CANNOT_SWIM is set which prevents 'Amphibious' creatures from swimming when engaged public bool IsSwimDisabled() { return _staticFlags.HasFlag(CreatureStaticFlags3.CannotSwim); }