Core/Spells: Implemented target type TARGET_DEST_DEST_TARGET_TOWARDS_CASTER
Port From (https://github.com/TrinityCore/TrinityCore/commit/80e22230c34106753cd6be57d9a496642e47216d)
This commit is contained in:
@@ -2836,7 +2836,7 @@ namespace Framework.Constants
|
|||||||
Unk145 = 145,
|
Unk145 = 145,
|
||||||
Unk146 = 146,
|
Unk146 = 146,
|
||||||
Unk147 = 147,
|
Unk147 = 147,
|
||||||
Unk148 = 148,
|
DestDestTargetTowardsCaster = 148,
|
||||||
Unk149 = 149,
|
Unk149 = 149,
|
||||||
UnitOwnCritter = 150, // own battle pet from UNIT_FIELD_CRITTER
|
UnitOwnCritter = 150, // own battle pet from UNIT_FIELD_CRITTER
|
||||||
Unk151 = 151,
|
Unk151 = 151,
|
||||||
|
|||||||
@@ -1185,6 +1185,18 @@ namespace Game.Spells
|
|||||||
case Targets.DestDestGround:
|
case Targets.DestDestGround:
|
||||||
dest.Position.posZ = m_caster.GetMapHeight(dest.Position.GetPositionX(), dest.Position.GetPositionY(), dest.Position.GetPositionZ());
|
dest.Position.posZ = m_caster.GetMapHeight(dest.Position.GetPositionX(), dest.Position.GetPositionY(), dest.Position.GetPositionZ());
|
||||||
break;
|
break;
|
||||||
|
case Targets.DestDestTargetTowardsCaster:
|
||||||
|
{
|
||||||
|
float dist = spellEffectInfo.CalcRadius(m_caster);
|
||||||
|
Position pos = dest.Position;
|
||||||
|
float angle = pos.GetAbsoluteAngle(m_caster) - m_caster.GetOrientation();
|
||||||
|
|
||||||
|
m_caster.MovePositionToFirstCollision(pos, dist, angle);
|
||||||
|
pos.SetOrientation(m_caster.GetAbsoluteAngle(dest.Position));
|
||||||
|
|
||||||
|
dest.Relocate(pos);
|
||||||
|
break;
|
||||||
|
}
|
||||||
default:
|
default:
|
||||||
{
|
{
|
||||||
float angle = targetType.CalcDirectionAngle();
|
float angle = targetType.CalcDirectionAngle();
|
||||||
|
|||||||
@@ -5198,7 +5198,7 @@ namespace Game.Spells
|
|||||||
new StaticData(SpellTargetObjectTypes.None, SpellTargetReferenceTypes.None, SpellTargetSelectionCategories.Nyi, SpellTargetCheckTypes.Default, SpellTargetDirectionTypes.None), // 145
|
new StaticData(SpellTargetObjectTypes.None, SpellTargetReferenceTypes.None, SpellTargetSelectionCategories.Nyi, SpellTargetCheckTypes.Default, SpellTargetDirectionTypes.None), // 145
|
||||||
new StaticData(SpellTargetObjectTypes.None, SpellTargetReferenceTypes.None, SpellTargetSelectionCategories.Nyi, SpellTargetCheckTypes.Default, SpellTargetDirectionTypes.None), // 146
|
new StaticData(SpellTargetObjectTypes.None, SpellTargetReferenceTypes.None, SpellTargetSelectionCategories.Nyi, SpellTargetCheckTypes.Default, SpellTargetDirectionTypes.None), // 146
|
||||||
new StaticData(SpellTargetObjectTypes.None, SpellTargetReferenceTypes.None, SpellTargetSelectionCategories.Nyi, SpellTargetCheckTypes.Default, SpellTargetDirectionTypes.None), // 147
|
new StaticData(SpellTargetObjectTypes.None, SpellTargetReferenceTypes.None, SpellTargetSelectionCategories.Nyi, SpellTargetCheckTypes.Default, SpellTargetDirectionTypes.None), // 147
|
||||||
new StaticData(SpellTargetObjectTypes.None, SpellTargetReferenceTypes.None, SpellTargetSelectionCategories.Nyi, SpellTargetCheckTypes.Default, SpellTargetDirectionTypes.None), // 148
|
new StaticData(SpellTargetObjectTypes.Dest, SpellTargetReferenceTypes.Dest, SpellTargetSelectionCategories.Default, SpellTargetCheckTypes.Default, SpellTargetDirectionTypes.None), // 148 TARGET_DEST_DEST_TARGET_TOWARDS_CASTER
|
||||||
new StaticData(SpellTargetObjectTypes.Dest, SpellTargetReferenceTypes.Caster, SpellTargetSelectionCategories.Default, SpellTargetCheckTypes.Default, SpellTargetDirectionTypes.Random), // 149
|
new StaticData(SpellTargetObjectTypes.Dest, SpellTargetReferenceTypes.Caster, SpellTargetSelectionCategories.Default, SpellTargetCheckTypes.Default, SpellTargetDirectionTypes.Random), // 149
|
||||||
new StaticData(SpellTargetObjectTypes.Unit, SpellTargetReferenceTypes.Caster, SpellTargetSelectionCategories.Default, SpellTargetCheckTypes.Default, SpellTargetDirectionTypes.None), // 150 TARGET_UNIT_OWN_CRITTER
|
new StaticData(SpellTargetObjectTypes.Unit, SpellTargetReferenceTypes.Caster, SpellTargetSelectionCategories.Default, SpellTargetCheckTypes.Default, SpellTargetDirectionTypes.None), // 150 TARGET_UNIT_OWN_CRITTER
|
||||||
new StaticData(SpellTargetObjectTypes.Unit, SpellTargetReferenceTypes.Caster, SpellTargetSelectionCategories.Area, SpellTargetCheckTypes.Enemy, SpellTargetDirectionTypes.None), // 151
|
new StaticData(SpellTargetObjectTypes.Unit, SpellTargetReferenceTypes.Caster, SpellTargetSelectionCategories.Area, SpellTargetCheckTypes.Enemy, SpellTargetDirectionTypes.None), // 151
|
||||||
|
|||||||
Reference in New Issue
Block a user