Core/Auras: Implemented SPELL_AURA_MOD_ROOT_DISABLE_GRAVITY

Port From (https://github.com/TrinityCore/TrinityCore/commit/dbed48becc30e10b4b17d95f595056d08a987bad)
This commit is contained in:
hondacrx
2023-01-05 17:26:59 -05:00
parent a14038d374
commit 7d6b86fb2e
4 changed files with 29 additions and 4 deletions
+4 -1
View File
@@ -5245,7 +5245,7 @@ namespace Game.Entities
MoveSetCompoundState setCompoundState = new();
// manual send package (have code in HandleEffect(this, AURA_EFFECT_HANDLE_SEND_FOR_CLIENT, true); that must not be re-applied.
if (HasAuraType(AuraType.ModRoot) || HasAuraType(AuraType.ModRoot2))
if (HasAuraType(AuraType.ModRoot) || HasAuraType(AuraType.ModRoot2) || HasAuraType(AuraType.ModRootDisableGravity))
setCompoundState.StateChanges.Add(new MoveSetCompoundState.MoveStateChange(ServerOpcodes.MoveRoot, m_movementCounter++));
if (HasAuraType(AuraType.FeatherFall))
@@ -5257,6 +5257,9 @@ namespace Game.Entities
if (HasAuraType(AuraType.Hover))
setCompoundState.StateChanges.Add(new MoveSetCompoundState.MoveStateChange(ServerOpcodes.MoveSetHovering, m_movementCounter++));
if (HasAuraType(AuraType.ModRootDisableGravity) || HasAuraType(AuraType.ModStunDisableGravity))
setCompoundState.StateChanges.Add(new MoveSetCompoundState.MoveStateChange(ServerOpcodes.MoveDisableGravity, m_movementCounter++));
if (HasAuraType(AuraType.CanTurnWhileFalling))
setCompoundState.StateChanges.Add(new MoveSetCompoundState.MoveStateChange(ServerOpcodes.MoveSetCanTurnWhileFalling, m_movementCounter++));
+2 -2
View File
@@ -1223,7 +1223,7 @@ namespace Game.Entities
SetStunned(false);
break;
case UnitState.Root:
if (HasAuraType(AuraType.ModRoot) || HasAuraType(AuraType.ModRoot2) || GetVehicle() != null || (IsCreature() && ToCreature().GetMovementTemplate().IsRooted()))
if (HasAuraType(AuraType.ModRoot) || HasAuraType(AuraType.ModRoot2) || HasAuraType(AuraType.ModRootDisableGravity) || GetVehicle() != null || (IsCreature() && ToCreature().GetMovementTemplate().IsRooted()))
return;
ClearUnitState(state);
@@ -1258,7 +1258,7 @@ namespace Game.Entities
if (HasUnitState(UnitState.Stunned) || HasAuraType(AuraType.ModStun) || HasAuraType(AuraType.ModStunDisableGravity))
SetStunned(true);
if (HasUnitState(UnitState.Root) || HasAuraType(AuraType.ModRoot) || HasAuraType(AuraType.ModRoot2))
if (HasUnitState(UnitState.Root) || HasAuraType(AuraType.ModRoot) || HasAuraType(AuraType.ModRoot2) || HasAuraType(AuraType.ModRootDisableGravity))
SetRooted(true);
if (HasUnitState(UnitState.Confused) || HasAuraType(AuraType.ModConfuse))
+1 -1
View File
@@ -1819,7 +1819,7 @@ namespace Game.Entities
public bool HasInvisibilityAura() { return HasAuraType(AuraType.ModInvisibility); }
public bool IsFeared() { return HasAuraType(AuraType.ModFear); }
public bool IsFrozen() { return HasAuraState(AuraStateType.Frozen); }
public bool HasRootAura() { return HasAuraType(AuraType.ModRoot) || HasAuraType(AuraType.ModRoot2); }
public bool HasRootAura() { return HasAuraType(AuraType.ModRoot) || HasAuraType(AuraType.ModRoot2) || HasAuraType(AuraType.ModRootDisableGravity); }
public bool IsPolymorphed()
{
uint transformId = GetTransformSpell();