mirror of
https://github.com/mod-playerbots/azerothcore-wotlk.git
synced 2026-01-15 18:10:26 +00:00
fix(Core/Stratholme): Some adjustments to Jarien and Sothos fight (#10269)
This commit is contained in:
@@ -110,6 +110,8 @@ struct boss_jarien : public BossAI
|
||||
return !me->HasUnitState(UNIT_STATE_CASTING);
|
||||
});
|
||||
|
||||
me->SetReactState(REACT_PASSIVE);
|
||||
me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE | UNIT_FLAG_IMMUNE_TO_NPC);
|
||||
_talked = false;
|
||||
_phase = PHASE_TALK;
|
||||
}
|
||||
@@ -131,8 +133,6 @@ struct boss_jarien : public BossAI
|
||||
|
||||
void IsSummonedBy(Unit* /*summoner*/) override
|
||||
{
|
||||
me->SetReactState(REACT_PASSIVE);
|
||||
me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
|
||||
Talk(SAY_JARIEN_ON_SUMMON_0);
|
||||
|
||||
_scheduler.Schedule(6s, [this](TaskContext /*context*/)
|
||||
@@ -145,7 +145,7 @@ struct boss_jarien : public BossAI
|
||||
_talked = true;
|
||||
_phase = PHASE_FIGHT;
|
||||
me->SetReactState(REACT_AGGRESSIVE);
|
||||
me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
|
||||
me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE | UNIT_FLAG_IMMUNE_TO_NPC);
|
||||
});
|
||||
}
|
||||
|
||||
@@ -171,7 +171,10 @@ struct boss_jarien : public BossAI
|
||||
{
|
||||
me->SetFullHealth();
|
||||
DoCastSelf(SPELL_VENGEANCE);
|
||||
Talk(EMOTE_JARIEN_VENGEANCE);
|
||||
if (Creature* sothos = me->FindNearestCreature(NPC_SOTHOS, 200.f, false))
|
||||
{
|
||||
Talk(EMOTE_JARIEN_VENGEANCE, sothos);
|
||||
}
|
||||
_sothosDied = true;
|
||||
}
|
||||
}
|
||||
@@ -230,6 +233,8 @@ struct boss_sothos : public BossAI
|
||||
return !me->HasUnitState(UNIT_STATE_CASTING);
|
||||
});
|
||||
|
||||
me->SetReactState(REACT_PASSIVE);
|
||||
me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE | UNIT_FLAG_IMMUNE_TO_NPC);
|
||||
_talked = false;
|
||||
_phase = PHASE_TALK;
|
||||
}
|
||||
@@ -251,15 +256,12 @@ struct boss_sothos : public BossAI
|
||||
|
||||
void IsSummonedBy(Unit* /*summoner*/) override
|
||||
{
|
||||
me->SetReactState(REACT_PASSIVE);
|
||||
me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
|
||||
|
||||
_scheduler.Schedule(12s, [this](TaskContext /*context*/)
|
||||
{
|
||||
_talked = true;
|
||||
_phase = PHASE_FIGHT;
|
||||
me->SetReactState(REACT_AGGRESSIVE);
|
||||
me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
|
||||
me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE | UNIT_FLAG_IMMUNE_TO_NPC);
|
||||
})
|
||||
.Schedule(3s, [this](TaskContext /*context*/)
|
||||
{
|
||||
@@ -293,7 +295,10 @@ struct boss_sothos : public BossAI
|
||||
{
|
||||
me->SetFullHealth();
|
||||
DoCastSelf(SPELL_VENGEANCE);
|
||||
Talk(EMOTE_SOTHOS_VENGEANCE);
|
||||
if (Creature* jarien = me->FindNearestCreature(NPC_JARIEN, 200.f, false))
|
||||
{
|
||||
Talk(EMOTE_SOTHOS_VENGEANCE, jarien);
|
||||
}
|
||||
_jarienDied = true;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user