mirror of
https://github.com/TrinityCore/TrinityCore.git
synced 2026-01-15 23:20:36 +01:00
11
sql/updates/world/3.3.5/2021_06_10_00_world.sql
Normal file
11
sql/updates/world/3.3.5/2021_06_10_00_world.sql
Normal file
@@ -0,0 +1,11 @@
|
||||
-- Keristrasza
|
||||
UPDATE `creature_template` SET `unit_flags` = `unit_flags` &~ (262144|512|256) WHERE `entry` IN (26723,30540);
|
||||
|
||||
-- Broggok
|
||||
UPDATE `creature_template` SET `unit_flags` = `unit_flags` &~ (512|256|2) WHERE `entry` IN (17380,18601);
|
||||
|
||||
-- Spark of Ionar
|
||||
UPDATE `creature_template` SET `unit_flags` = `unit_flags` &~ (33554432|2), `spell_school_immune_mask` = 127 WHERE `entry` IN (28926,31867);
|
||||
DELETE FROM `spelldifficulty_dbc` WHERE `id` = 52667;
|
||||
INSERT INTO `spelldifficulty_dbc` (`id`, `spellid0`, `spellid1`, `spellid2`, `spellid3`) VALUES
|
||||
(52667,52667,59833,0,0);
|
||||
@@ -177,8 +177,6 @@ public:
|
||||
void Reset() override
|
||||
{
|
||||
Initialize();
|
||||
|
||||
me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
|
||||
}
|
||||
|
||||
/// @todo move them to center
|
||||
|
||||
@@ -71,7 +71,6 @@ public:
|
||||
me->setActive(true);
|
||||
me->SetFarVisible(true);
|
||||
me->SetVisible(false);
|
||||
me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
|
||||
me->SetCanFly(true);
|
||||
|
||||
me->GetPosition(x, y, z);
|
||||
|
||||
@@ -81,8 +81,6 @@ struct boss_keristrasza : public BossAI
|
||||
Initialize();
|
||||
_intenseColdList.clear();
|
||||
|
||||
me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_STUNNED);
|
||||
|
||||
RemovePrison(CheckContainmentSpheres());
|
||||
_Reset();
|
||||
}
|
||||
@@ -133,15 +131,13 @@ struct boss_keristrasza : public BossAI
|
||||
{
|
||||
if (remove)
|
||||
{
|
||||
me->SetImmuneToPC(false);
|
||||
me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
|
||||
me->SetImmuneToAll(false);
|
||||
if (me->HasAura(SPELL_FROZEN_PRISON))
|
||||
me->RemoveAurasDueToSpell(SPELL_FROZEN_PRISON);
|
||||
}
|
||||
else
|
||||
{
|
||||
me->SetImmuneToPC(true);
|
||||
me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
|
||||
me->SetImmuneToAll(true);
|
||||
DoCast(me, SPELL_FROZEN_PRISON, false);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -37,7 +37,8 @@ enum Spells
|
||||
SPELL_SPARK_DESPAWN = 52776,
|
||||
|
||||
// Spark of Ionar
|
||||
SPELL_SPARK_VISUAL_TRIGGER = 52667
|
||||
SPELL_SPARK_VISUAL_TRIGGER = 52667,
|
||||
SPELL_RANDOM_LIGHTNING_VISUAL = 52663
|
||||
};
|
||||
|
||||
enum Yells
|
||||
@@ -168,6 +169,7 @@ struct boss_ionar : public ScriptedAI
|
||||
{
|
||||
if (pSpark->IsAlive())
|
||||
{
|
||||
pSpark->SetReactState(REACT_PASSIVE);
|
||||
pSpark->SetSpeedRate(MOVE_RUN, 2.0f);
|
||||
pSpark->GetMotionMaster()->Clear();
|
||||
pSpark->GetMotionMaster()->MovePoint(DATA_POINT_CALLBACK, pos);
|
||||
@@ -190,8 +192,6 @@ struct boss_ionar : public ScriptedAI
|
||||
{
|
||||
lSparkList.Summon(summoned);
|
||||
|
||||
summoned->CastSpell(summoned, SPELL_SPARK_VISUAL_TRIGGER, true);
|
||||
|
||||
if (Unit* target = SelectTarget(SelectTargetMethod::Random, 0))
|
||||
{
|
||||
summoned->SetInCombatWith(target);
|
||||
@@ -307,7 +307,8 @@ struct npc_spark_of_ionar : public ScriptedAI
|
||||
void Reset() override
|
||||
{
|
||||
Initialize();
|
||||
me->SetReactState(REACT_PASSIVE);
|
||||
DoCastSelf(SPELL_SPARK_VISUAL_TRIGGER);
|
||||
DoCastSelf(SPELL_RANDOM_LIGHTNING_VISUAL);
|
||||
}
|
||||
|
||||
void MovementInform(uint32 uiType, uint32 uiPointId) override
|
||||
@@ -319,11 +320,6 @@ struct npc_spark_of_ionar : public ScriptedAI
|
||||
me->DespawnOrUnsummon();
|
||||
}
|
||||
|
||||
void DamageTaken(Unit* /*pDoneBy*/, uint32 &uiDamage) override
|
||||
{
|
||||
uiDamage = 0;
|
||||
}
|
||||
|
||||
void UpdateAI(uint32 uiDiff) override
|
||||
{
|
||||
// Despawn if the encounter is not running
|
||||
@@ -343,6 +339,7 @@ struct npc_spark_of_ionar : public ScriptedAI
|
||||
{
|
||||
Position pos = ionar->GetPosition();
|
||||
|
||||
me->SetReactState(REACT_PASSIVE);
|
||||
me->SetSpeedRate(MOVE_RUN, 2.0f);
|
||||
me->GetMotionMaster()->Clear();
|
||||
me->GetMotionMaster()->MovePoint(DATA_POINT_CALLBACK, pos);
|
||||
|
||||
@@ -119,8 +119,7 @@ class boss_broggok : public CreatureScript
|
||||
break;
|
||||
case ACTION_ACTIVATE_BROGGOK:
|
||||
me->SetReactState(REACT_AGGRESSIVE);
|
||||
me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
|
||||
me->SetImmuneToAll(false);
|
||||
me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE);
|
||||
DoZoneInCombat();
|
||||
events.ScheduleEvent(EVENT_SLIME_SPRAY, 10s);
|
||||
events.ScheduleEvent(EVENT_POISON_BOLT, 7s);
|
||||
@@ -128,8 +127,7 @@ class boss_broggok : public CreatureScript
|
||||
break;
|
||||
case ACTION_RESET_BROGGOK:
|
||||
me->SetReactState(REACT_PASSIVE);
|
||||
me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
|
||||
me->SetImmuneToAll(true);
|
||||
me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE);
|
||||
summons.DespawnAll();
|
||||
instance->SetBossState(DATA_BROGGOK, NOT_STARTED);
|
||||
if (GameObject * lever = instance->GetGameObject(DATA_BROGGOK_LEVER))
|
||||
|
||||
Reference in New Issue
Block a user