diff options
| author | Shauren <shauren.trinity@gmail.com> | 2017-04-16 01:13:09 +0200 |
|---|---|---|
| committer | Shauren <shauren.trinity@gmail.com> | 2017-04-16 01:13:09 +0200 |
| commit | c0eb6c313053d2437abf2e7fff9ab50645c98559 (patch) | |
| tree | e9c79ce1a961355911fb2e8e04d0cd39b1c409c0 /src/server/scripts/Northrend | |
| parent | 43510a258c83215efcf5e70a253523e8a4199502 (diff) | |
Core/Entities: Update updatefields to 7.2.0
Diffstat (limited to 'src/server/scripts/Northrend')
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(); |
