mirror of
https://github.com/liyunfan1223/azerothcore-wotlk.git
synced 2026-08-08 15:58:04 +00:00
fix(Scripts/Temple of AhnQiraj): Sartura's Sundering Cleave should be… (#13184)
... casted on Whirlwind end.
This commit is contained in:
@@ -0,0 +1,2 @@
|
|||||||
|
--
|
||||||
|
DELETE FROM `spell_linked_spell` WHERE `spell_trigger`=26084;
|
||||||
@@ -49,14 +49,15 @@ enum events
|
|||||||
EVENT_SPELL_BERSERK = 4,
|
EVENT_SPELL_BERSERK = 4,
|
||||||
EVENT_SARTURA_AGGRO_RESET = 5,
|
EVENT_SARTURA_AGGRO_RESET = 5,
|
||||||
EVENT_SARTURA_AGGRO_RESET_END = 6,
|
EVENT_SARTURA_AGGRO_RESET_END = 6,
|
||||||
|
EVENT_SARTURA_SUNDERING_CLEAVE = 7,
|
||||||
|
|
||||||
// Sartura's Royal Guard
|
// Sartura's Royal Guard
|
||||||
EVENT_GUARD_WHIRLWIND = 7,
|
EVENT_GUARD_WHIRLWIND = 8,
|
||||||
EVENT_GUARD_WHIRLWIND_RANDOM = 8,
|
EVENT_GUARD_WHIRLWIND_RANDOM = 9,
|
||||||
EVENT_GUARD_WHIRLWIND_END = 9,
|
EVENT_GUARD_WHIRLWIND_END = 10,
|
||||||
EVENT_GUARD_KNOCKBACK = 10,
|
EVENT_GUARD_KNOCKBACK = 11,
|
||||||
EVENT_GUARD_AGGRO_RESET = 11,
|
EVENT_GUARD_AGGRO_RESET = 12,
|
||||||
EVENT_GUARD_AGGRO_RESET_END = 12
|
EVENT_GUARD_AGGRO_RESET_END = 13
|
||||||
};
|
};
|
||||||
|
|
||||||
struct boss_sartura : public BossAI
|
struct boss_sartura : public BossAI
|
||||||
@@ -99,6 +100,7 @@ struct boss_sartura : public BossAI
|
|||||||
events.ScheduleEvent(EVENT_SARTURA_WHIRLWIND, 30000);
|
events.ScheduleEvent(EVENT_SARTURA_WHIRLWIND, 30000);
|
||||||
events.ScheduleEvent(EVENT_SARTURA_AGGRO_RESET, urand(45000, 55000));
|
events.ScheduleEvent(EVENT_SARTURA_AGGRO_RESET, urand(45000, 55000));
|
||||||
events.ScheduleEvent(EVENT_SPELL_BERSERK, 10 * 60000);
|
events.ScheduleEvent(EVENT_SPELL_BERSERK, 10 * 60000);
|
||||||
|
events.ScheduleEvent(EVENT_SARTURA_SUNDERING_CLEAVE, 2400ms, 3s);
|
||||||
}
|
}
|
||||||
|
|
||||||
void JustDied(Unit* /*killer*/) override
|
void JustDied(Unit* /*killer*/) override
|
||||||
@@ -121,14 +123,6 @@ struct boss_sartura : public BossAI
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void SpellHit(Unit* /*caster*/, SpellInfo const* spell) override
|
|
||||||
{
|
|
||||||
if (spell->Id != SPELL_SUNDERING_CLEAVE)
|
|
||||||
return;
|
|
||||||
|
|
||||||
me->RemoveAura(SPELL_SUNDERING_CLEAVE);
|
|
||||||
}
|
|
||||||
|
|
||||||
void UpdateAI(uint32 diff) override
|
void UpdateAI(uint32 diff) override
|
||||||
{
|
{
|
||||||
if (!UpdateVictim())
|
if (!UpdateVictim())
|
||||||
@@ -203,6 +197,18 @@ struct boss_sartura : public BossAI
|
|||||||
berserked = true;
|
berserked = true;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
case EVENT_SARTURA_SUNDERING_CLEAVE:
|
||||||
|
if (whirlwind)
|
||||||
|
{
|
||||||
|
Milliseconds whirlwindTimer = events.GetTimeUntilEvent(EVENT_SARTURA_WHIRLWIND_END);
|
||||||
|
events.RescheduleEvent(EVENT_SARTURA_SUNDERING_CLEAVE, whirlwindTimer + 500ms);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
DoCastVictim(SPELL_SUNDERING_CLEAVE, false);
|
||||||
|
events.RescheduleEvent(EVENT_SARTURA_SUNDERING_CLEAVE, 2400ms, 3s);
|
||||||
|
}
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@@ -238,14 +244,6 @@ struct npc_sartura_royal_guard : public ScriptedAI
|
|||||||
events.ScheduleEvent(EVENT_GUARD_KNOCKBACK, 10000);
|
events.ScheduleEvent(EVENT_GUARD_KNOCKBACK, 10000);
|
||||||
}
|
}
|
||||||
|
|
||||||
void SpellHit(Unit* /*caster*/, SpellInfo const* spell) override
|
|
||||||
{
|
|
||||||
if (spell->Id != SPELL_SUNDERING_CLEAVE)
|
|
||||||
return;
|
|
||||||
|
|
||||||
me->RemoveAura(SPELL_SUNDERING_CLEAVE);
|
|
||||||
}
|
|
||||||
|
|
||||||
void UpdateAI(uint32 diff) override
|
void UpdateAI(uint32 diff) override
|
||||||
{
|
{
|
||||||
if (!UpdateVictim())
|
if (!UpdateVictim())
|
||||||
|
|||||||
Reference in New Issue
Block a user