aboutsummaryrefslogtreecommitdiff
path: root/src/server/scripts/Northrend
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2017-04-16 01:13:09 +0200
committerShauren <shauren.trinity@gmail.com>2017-04-16 01:13:09 +0200
commitc0eb6c313053d2437abf2e7fff9ab50645c98559 (patch)
treee9c79ce1a961355911fb2e8e04d0cd39b1c409c0 /src/server/scripts/Northrend
parent43510a258c83215efcf5e70a253523e8a4199502 (diff)
Core/Entities: Update updatefields to 7.2.0
Diffstat (limited to 'src/server/scripts/Northrend')
-rw-r--r--src/server/scripts/Northrend/ChamberOfAspects/RubySanctum/boss_halion.cpp3
-rw-r--r--src/server/scripts/Northrend/IcecrownCitadel/boss_sindragosa.cpp2
-rw-r--r--src/server/scripts/Northrend/Ulduar/Ulduar/boss_mimiron.cpp61
3 files changed, 5 insertions, 61 deletions
diff --git a/src/server/scripts/Northrend/ChamberOfAspects/RubySanctum/boss_halion.cpp b/src/server/scripts/Northrend/ChamberOfAspects/RubySanctum/boss_halion.cpp
index 81bbcec913e..ee7ebaad976 100644
--- a/src/server/scripts/Northrend/ChamberOfAspects/RubySanctum/boss_halion.cpp
+++ b/src/server/scripts/Northrend/ChamberOfAspects/RubySanctum/boss_halion.cpp
@@ -1734,7 +1734,8 @@ class spell_halion_twilight_cutter : public SpellScriptLoader
return;
Unit* caster = GetCaster();
- if (Unit* channelTarget = ObjectAccessor::GetUnit(*caster, caster->GetChannelObjectGuid()))
+ DynamicFieldStructuredView<ObjectGuid> channelObjects = caster->GetChannelObjects();
+ if (Unit* channelTarget = (channelObjects.size() == 1 ? ObjectAccessor::GetUnit(*caster, *channelObjects.begin()) : nullptr))
{
unitList.remove_if(TwilightCutterSelector(caster, channelTarget));
return;
diff --git a/src/server/scripts/Northrend/IcecrownCitadel/boss_sindragosa.cpp b/src/server/scripts/Northrend/IcecrownCitadel/boss_sindragosa.cpp
index 82182418752..5ccb7431db6 100644
--- a/src/server/scripts/Northrend/IcecrownCitadel/boss_sindragosa.cpp
+++ b/src/server/scripts/Northrend/IcecrownCitadel/boss_sindragosa.cpp
@@ -1104,7 +1104,7 @@ class spell_sindragosa_s_fury : public SpellScriptLoader
uint32 damage = (uint32(GetEffectValue() / _targetCount) * randomResist) / 10;
- SpellNonMeleeDamage damageInfo(GetCaster(), GetHitUnit(), GetSpellInfo()->Id, GetSpellInfo()->SchoolMask);
+ SpellNonMeleeDamage damageInfo(GetCaster(), GetHitUnit(), GetSpellInfo()->Id, GetSpell()->m_SpellVisual, GetSpellInfo()->SchoolMask);
damageInfo.damage = damage;
GetCaster()->DealSpellDamage(&damageInfo, false);
GetCaster()->SendSpellNonMeleeDamageLog(&damageInfo);
diff --git a/src/server/scripts/Northrend/Ulduar/Ulduar/boss_mimiron.cpp b/src/server/scripts/Northrend/Ulduar/Ulduar/boss_mimiron.cpp
index cb40e167bd7..b15c3a66fd0 100644
--- a/src/server/scripts/Northrend/Ulduar/Ulduar/boss_mimiron.cpp
+++ b/src/server/scripts/Northrend/Ulduar/Ulduar/boss_mimiron.cpp
@@ -1040,7 +1040,8 @@ class boss_vx_001 : public CreatureScript
// Handle rotation during SPELL_SPINNING_UP, SPELL_P3WX2_LASER_BARRAGE, SPELL_RAPID_BURST, and SPELL_HAND_PULSE_LEFT/RIGHT
if (me->HasUnitState(UNIT_STATE_CASTING))
{
- if (Creature* channelTarget = ObjectAccessor::GetCreature(*me, me->GetChannelObjectGuid()))
+ DynamicFieldStructuredView<ObjectGuid> channelObjects = me->GetChannelObjects();
+ if (Unit* channelTarget = (channelObjects.size() == 1 ? ObjectAccessor::GetUnit(*me, *channelObjects.begin()) : nullptr))
me->SetFacingToObject(channelTarget);
return;
}
@@ -1963,33 +1964,6 @@ class spell_mimiron_napalm_shell : public SpellScriptLoader
}
};
-// 63274 - P3Wx2 Laser Barrage -- HACK! Core will currently not set UNIT_FIELD_CHANNEL_OBJECT automatially if the spell targets more than a single target.
-class spell_mimiron_p3wx2_laser_barrage : public SpellScriptLoader
-{
- public:
- spell_mimiron_p3wx2_laser_barrage() : SpellScriptLoader("spell_mimiron_p3wx2_laser_barrage") { }
-
- class spell_mimiron_p3wx2_laser_barrage_SpellScript : public SpellScript
- {
- PrepareSpellScript(spell_mimiron_p3wx2_laser_barrage_SpellScript);
-
- void OnHit(SpellEffIndex /*effIndex*/)
- {
- GetCaster()->SetChannelObjectGuid(GetHitUnit()->GetGUID());
- }
-
- void Register() override
- {
- OnEffectHitTarget += SpellEffectFn(spell_mimiron_p3wx2_laser_barrage_SpellScript::OnHit, EFFECT_0, SPELL_EFFECT_APPLY_AURA);
- }
- };
-
- SpellScript* GetSpellScript() const override
- {
- return new spell_mimiron_p3wx2_laser_barrage_SpellScript();
- }
-};
-
// 64542 - Plasma Blast
class spell_mimiron_plasma_blast : public SpellScriptLoader
{
@@ -2365,35 +2339,6 @@ class spell_mimiron_self_repair : public SpellScriptLoader
}
};
-// 63414 - Spinning Up -- HACK! Core will currently not set UNIT_FIELD_CHANNEL_OBJECT automatially if the spell targets more than a single target.
-// eff0 will hit both caster and target due to hack in spellmgr.cpp, it is necessary because caster will interrupt itself if aura is not active on caster.
-class spell_mimiron_spinning_up : public SpellScriptLoader
-{
- public:
- spell_mimiron_spinning_up() : SpellScriptLoader("spell_mimiron_spinning_up") { }
-
- class spell_mimiron_spinning_up_SpellScript : public SpellScript
- {
- PrepareSpellScript(spell_mimiron_spinning_up_SpellScript);
-
- void OnHit(SpellEffIndex /*effIndex*/)
- {
- if (GetHitUnit() != GetCaster())
- GetCaster()->SetChannelObjectGuid(GetHitUnit()->GetGUID());
- }
-
- void Register() override
- {
- OnEffectHitTarget += SpellEffectFn(spell_mimiron_spinning_up_SpellScript::OnHit, EFFECT_0, SPELL_EFFECT_APPLY_AURA);
- }
- };
-
- SpellScript* GetSpellScript() const override
- {
- return new spell_mimiron_spinning_up_SpellScript();
- }
-};
-
// 64426 - Summon Scrap Bot
class spell_mimiron_summon_assault_bot : public SpellScriptLoader
{
@@ -2832,7 +2777,6 @@ void AddSC_boss_mimiron()
new spell_mimiron_fire_search();
new spell_mimiron_magnetic_core();
new spell_mimiron_napalm_shell();
- new spell_mimiron_p3wx2_laser_barrage();
new spell_mimiron_plasma_blast();
new spell_mimiron_proximity_explosion();
new spell_mimiron_proximity_mines();
@@ -2842,7 +2786,6 @@ void AddSC_boss_mimiron()
new spell_mimiron_rocket_strike_damage();
new spell_mimiron_rocket_strike_target_select();
new spell_mimiron_self_repair();
- new spell_mimiron_spinning_up();
new spell_mimiron_summon_assault_bot();
new spell_mimiron_summon_assault_bot_target();
new spell_mimiron_summon_fire_bot();