diff --git a/Game/Spells/Spell.cs b/Game/Spells/Spell.cs index c7a48c7e8..2ac984135 100644 --- a/Game/Spells/Spell.cs +++ b/Game/Spells/Spell.cs @@ -765,7 +765,7 @@ namespace Game.Spells if (st != null) { /// @todo fix this check - if (m_spellInfo.HasEffect(SpellEffectName.TeleportUnitsOld) || m_spellInfo.HasEffect(SpellEffectName.Bind)) + if (m_spellInfo.HasEffect(SpellEffectName.TeleportUnits) || m_spellInfo.HasEffect(SpellEffectName.Bind)) dest = new SpellDestination(st.target_X, st.target_Y, st.target_Z, st.target_Orientation, st.target_mapId); else if (st.target_mapId == m_caster.GetMapId()) dest = new SpellDestination(st.target_X, st.target_Y, st.target_Z, st.target_Orientation); diff --git a/Game/Spells/SpellManager.cs b/Game/Spells/SpellManager.cs index ea16fa3b8..3c0d7512b 100644 --- a/Game/Spells/SpellManager.cs +++ b/Game/Spells/SpellManager.cs @@ -1492,6 +1492,12 @@ namespace Game.Entities continue; } + // target facing is in degrees for 6484 & 9268... (blizz sucks) + if (effect.PositionFacing > 2 * Math.PI) + st.target_Orientation = effect.PositionFacing * (float)Math.PI / 180; + else + st.target_Orientation = effect.PositionFacing; + if (effect.TargetA.GetTarget() == Targets.DestDb || effect.TargetB.GetTarget() == Targets.DestDb) { var key = new KeyValuePair(spellId, effIndex);