mirror of
https://github.com/TrinityCore/TrinityCore.git
synced 2026-01-16 07:30:42 +01:00
Core/Scripts: Fix Forgemaster Garfrost phases and equipment change.
This commit is contained in:
@@ -157,15 +157,19 @@ class boss_garfrost : public CreatureScript
|
||||
|
||||
void MovementInform(uint32 type, uint32 id)
|
||||
{
|
||||
if (type != POINT_MOTION_TYPE || id != POINT_FORGE)
|
||||
if (type != EFFECT_MOTION_TYPE || id != POINT_FORGE)
|
||||
return;
|
||||
|
||||
if (events.GetPhaseMask() & PHASE_TWO_MASK)
|
||||
{
|
||||
DoCast(me, SPELL_FORGE_BLADE);
|
||||
SetEquipmentSlots(false, EQUIP_ID_SWORD);
|
||||
}
|
||||
if (events.GetPhaseMask() & PHASE_THREE_MASK)
|
||||
{
|
||||
me->RemoveAurasDueToSpell(SPELL_FORGE_BLADE_HELPER);
|
||||
DoCast(me, SPELL_FORGE_MACE);
|
||||
SetEquipmentSlots(false, EQUIP_ID_MACE);
|
||||
}
|
||||
events.ScheduleEvent(EVENT_RESUME_ATTACK, 5000);
|
||||
}
|
||||
@@ -177,10 +181,6 @@ class boss_garfrost : public CreatureScript
|
||||
if (Aura* aura = target->GetAura(SPELL_PERMAFROST_HELPER))
|
||||
_permafrostStack = std::max<uint32>(_permafrostStack, aura->GetStackAmount());
|
||||
}
|
||||
else if (spell->Id == SPELL_FORGE_BLADE)
|
||||
SetEquipmentSlots(false, EQUIP_ID_SWORD);
|
||||
else if (spell->Id == SPELL_FORGE_MACE)
|
||||
SetEquipmentSlots(false, EQUIP_ID_MACE);
|
||||
}
|
||||
|
||||
uint32 GetData(uint32 /*type*/)
|
||||
@@ -205,7 +205,7 @@ class boss_garfrost : public CreatureScript
|
||||
case EVENT_THROW_SARONITE:
|
||||
if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0))
|
||||
{
|
||||
Talk(SAY_THROW_SARONITE);
|
||||
Talk(SAY_THROW_SARONITE, target->GetGUID());
|
||||
DoCast(target, SPELL_THROW_SARONITE);
|
||||
}
|
||||
events.ScheduleEvent(EVENT_THROW_SARONITE, urand(12500, 20000));
|
||||
@@ -217,7 +217,7 @@ class boss_garfrost : public CreatureScript
|
||||
case EVENT_DEEP_FREEZE:
|
||||
if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0))
|
||||
{
|
||||
Talk(SAY_CAST_DEEP_FREEZE);
|
||||
Talk(SAY_CAST_DEEP_FREEZE, target->GetGUID());
|
||||
DoCast(target, SPELL_DEEP_FREEZE);
|
||||
}
|
||||
events.ScheduleEvent(EVENT_DEEP_FREEZE, 35000, 0, PHASE_THREE);
|
||||
|
||||
Reference in New Issue
Block a user