aboutsummaryrefslogtreecommitdiff
path: root/src/server/scripts/Northrend
diff options
context:
space:
mode:
authorModoX <moardox@gmail.com>2024-12-29 00:17:07 +0100
committerModoX <moardox@gmail.com>2024-12-29 00:17:07 +0100
commit6b96facee3389f79e579e8a325440051891fa27e (patch)
tree0692c6ce3310971b57f84d55fcb3c4e73ad1a739 /src/server/scripts/Northrend
parent309ba22a15e5e0b4321b99f7157ccb18e0adc8dd (diff)
Core/AI: Remove default arguments for inter-script communication
Diffstat (limited to 'src/server/scripts/Northrend')
-rw-r--r--src/server/scripts/Northrend/AzjolNerub/Ahnkahet/boss_prince_taldaram.cpp11
-rw-r--r--src/server/scripts/Northrend/AzjolNerub/AzjolNerub/boss_hadronox.cpp10
-rw-r--r--src/server/scripts/Northrend/ChamberOfAspects/RubySanctum/boss_halion.cpp12
-rw-r--r--src/server/scripts/Northrend/IcecrownCitadel/boss_blood_prince_council.cpp10
-rw-r--r--src/server/scripts/Northrend/IcecrownCitadel/boss_lady_deathwhisper.cpp12
-rw-r--r--src/server/scripts/Northrend/IcecrownCitadel/boss_lord_marrowgar.cpp2
-rw-r--r--src/server/scripts/Northrend/IcecrownCitadel/boss_the_lich_king.cpp13
-rw-r--r--src/server/scripts/Northrend/Naxxramas/boss_maexxna.cpp13
-rw-r--r--src/server/scripts/Northrend/zone_borean_tundra.cpp11
9 files changed, 67 insertions, 27 deletions
diff --git a/src/server/scripts/Northrend/AzjolNerub/Ahnkahet/boss_prince_taldaram.cpp b/src/server/scripts/Northrend/AzjolNerub/Ahnkahet/boss_prince_taldaram.cpp
index 5694682b7bd..637dc68e499 100644
--- a/src/server/scripts/Northrend/AzjolNerub/Ahnkahet/boss_prince_taldaram.cpp
+++ b/src/server/scripts/Northrend/AzjolNerub/Ahnkahet/boss_prince_taldaram.cpp
@@ -54,7 +54,9 @@ enum PrinceTaldaramMisc
{
DATA_EMBRACE_DMG = 20000,
H_DATA_EMBRACE_DMG = 40000,
- SUMMON_GROUP_CONTROLLERS = 1
+ SUMMON_GROUP_CONTROLLERS = 1,
+
+ DATA_FLAME_SPHERE_TARGET_GUID = 0,
};
enum PrinceTaldaramYells
@@ -123,7 +125,7 @@ struct boss_prince_taldaram : public BossAI
case NPC_FLAME_SPHERE_1:
case NPC_FLAME_SPHERE_2:
case NPC_FLAME_SPHERE_3:
- summon->AI()->SetGUID(_flameSphereTargetGUID);
+ summon->AI()->SetGUID(_flameSphereTargetGUID, DATA_FLAME_SPHERE_TARGET_GUID);
break;
case NPC_JEDOGA_CONTROLLER:
summon->CastSpell(me, SPELL_BEAM_VISUAL);
@@ -307,8 +309,11 @@ struct npc_prince_taldaram_flame_sphere : public ScriptedAI
_events.ScheduleEvent(EVENT_DESPAWN, 13s);
}
- void SetGUID(ObjectGuid const& guid, int32 /*id*/) override
+ void SetGUID(ObjectGuid const& guid, int32 id) override
{
+ if (id != DATA_FLAME_SPHERE_TARGET_GUID)
+ return;
+
_flameSphereTargetGUID = guid;
}
diff --git a/src/server/scripts/Northrend/AzjolNerub/AzjolNerub/boss_hadronox.cpp b/src/server/scripts/Northrend/AzjolNerub/AzjolNerub/boss_hadronox.cpp
index 9a295622a7b..f0ee0c58f96 100644
--- a/src/server/scripts/Northrend/AzjolNerub/AzjolNerub/boss_hadronox.cpp
+++ b/src/server/scripts/Northrend/AzjolNerub/AzjolNerub/boss_hadronox.cpp
@@ -116,7 +116,8 @@ enum Data
{
DATA_CRUSHER_PACK_ID = 1,
DATA_HADRONOX_ENTERED_COMBAT,
- DATA_HADRONOX_WEBBED_DOORS
+ DATA_HADRONOX_WEBBED_DOORS,
+ DATA_ANUBAR_GUID,
};
enum Creatures
@@ -264,8 +265,11 @@ struct boss_hadronox : public BossAI
nerubian->DespawnOrUnsummon();
}
- void SetGUID(ObjectGuid const& guid, int32 /*id*/) override
+ void SetGUID(ObjectGuid const& guid, int32 id) override
{
+ if (id != DATA_ANUBAR_GUID)
+ return;
+
_anubar.push_back(guid);
}
@@ -664,7 +668,7 @@ struct npc_hadronox_foeAI : public ScriptedAI
{
ScriptedAI::InitializeAI();
if (Creature* hadronox = _instance->GetCreature(DATA_HADRONOX))
- hadronox->AI()->SetGUID(me->GetGUID());
+ hadronox->AI()->SetGUID(me->GetGUID(), DATA_ANUBAR_GUID);
}
void MovementInform(uint32 type, uint32 id) override
diff --git a/src/server/scripts/Northrend/ChamberOfAspects/RubySanctum/boss_halion.cpp b/src/server/scripts/Northrend/ChamberOfAspects/RubySanctum/boss_halion.cpp
index 0d9673d354b..be50f9066d4 100644
--- a/src/server/scripts/Northrend/ChamberOfAspects/RubySanctum/boss_halion.cpp
+++ b/src/server/scripts/Northrend/ChamberOfAspects/RubySanctum/boss_halion.cpp
@@ -179,7 +179,8 @@ enum Misc
DATA_MATERIAL_DAMAGE_TAKEN = 2,
DATA_STACKS_DISPELLED = 3,
DATA_FIGHT_PHASE = 4,
- DATA_SPAWNED_FLAMES = 5
+ DATA_SPAWNED_FLAMES = 5,
+ DATA_ROOT_GUID = 6,
};
enum OrbCarrierSeats
@@ -1110,7 +1111,7 @@ class npc_meteor_strike : public CreatureScript
{
Position pos = me->GetNearPosition(5.0f, frand(-static_cast<float>(M_PI / 6.0f), static_cast<float>(M_PI / 6.0f)));
if (Creature* flame = me->SummonCreature(NPC_METEOR_STRIKE_FLAME, pos, TEMPSUMMON_TIMED_DESPAWN, 25s))
- flame->AI()->SetGUID(me->GetGUID());
+ flame->AI()->SetGUID(me->GetGUID(), DATA_ROOT_GUID);
}
}
@@ -1139,8 +1140,11 @@ class npc_meteor_strike_flame : public CreatureScript
SetCombatMovement(false);
}
- void SetGUID(ObjectGuid const& guid, int32 /*id*/) override
+ void SetGUID(ObjectGuid const& guid, int32 id) override
{
+ if (id != DATA_ROOT_GUID)
+ return;
+
_rootOwnerGuid = guid;
_events.ScheduleEvent(EVENT_SPAWN_METEOR_FLAME, Milliseconds(800));
}
@@ -1170,7 +1174,7 @@ class npc_meteor_strike_flame : public CreatureScript
Position pos = me->GetNearPosition(5.0f, frand(-static_cast<float>(M_PI / 6.0f), static_cast<float>(M_PI / 6.0f)));
if (Creature* flame = me->SummonCreature(NPC_METEOR_STRIKE_FLAME, pos, TEMPSUMMON_TIMED_DESPAWN, 25s))
- flame->AI()->SetGUID(_rootOwnerGuid);
+ flame->AI()->SetGUID(_rootOwnerGuid, DATA_ROOT_GUID);
}
void EnterEvadeMode(EvadeReason /*why*/) override { }
diff --git a/src/server/scripts/Northrend/IcecrownCitadel/boss_blood_prince_council.cpp b/src/server/scripts/Northrend/IcecrownCitadel/boss_blood_prince_council.cpp
index ccbed6d6e31..0ca2b57d1eb 100644
--- a/src/server/scripts/Northrend/IcecrownCitadel/boss_blood_prince_council.cpp
+++ b/src/server/scripts/Northrend/IcecrownCitadel/boss_blood_prince_council.cpp
@@ -170,7 +170,8 @@ enum Misc
SUMMON_PRINCES_GROUP = 1,
DATA_INTRO = 2,
DATA_INTRO_DONE = 3,
- DATA_PRINCE_EVADE = 4
+ DATA_PRINCE_EVADE = 4,
+ DATA_CHASE_TARGET_GUID = 5,
};
class StandUpEvent : public BasicEvent
@@ -698,7 +699,7 @@ struct boss_prince_taldaram_icc : public BloodPrincesBossAI
Talk(EMOTE_TALDARAM_FLAME, target);
if (target)
- summon->AI()->SetGUID(target->GetGUID());
+ summon->AI()->SetGUID(target->GetGUID(), DATA_CHASE_TARGET_GUID);
}
void UpdateAI(uint32 diff) override
@@ -930,8 +931,11 @@ struct npc_ball_of_flame : public ScriptedAI
}
}
- void SetGUID(ObjectGuid const& guid, int32 /*id*/) override
+ void SetGUID(ObjectGuid const& guid, int32 id) override
{
+ if (id != DATA_CHASE_TARGET_GUID)
+ return;
+
_chaseGUID = guid;
}
diff --git a/src/server/scripts/Northrend/IcecrownCitadel/boss_lady_deathwhisper.cpp b/src/server/scripts/Northrend/IcecrownCitadel/boss_lady_deathwhisper.cpp
index b6948a05f50..b28d92a4175 100644
--- a/src/server/scripts/Northrend/IcecrownCitadel/boss_lady_deathwhisper.cpp
+++ b/src/server/scripts/Northrend/IcecrownCitadel/boss_lady_deathwhisper.cpp
@@ -166,6 +166,11 @@ enum Actions
ACTION_START_INTRO
};
+enum LadyDeathwhisperData
+{
+ DATA_VENGEFUL_SHADE_TARGET_GUID = 0
+};
+
#define NPC_DARNAVAN RAID_MODE<uint32>(NPC_DARNAVAN_10, NPC_DARNAVAN_25, NPC_DARNAVAN_10, NPC_DARNAVAN_25)
#define NPC_DARNAVAN_CREDIT RAID_MODE<uint32>(NPC_DARNAVAN_CREDIT_10, NPC_DARNAVAN_CREDIT_25, NPC_DARNAVAN_CREDIT_10, NPC_DARNAVAN_CREDIT_25)
#define QUEST_DEPROGRAMMING RAID_MODE<uint32>(QUEST_DEPROGRAMMING_10, QUEST_DEPROGRAMMING_25, QUEST_DEPROGRAMMING_10, QUEST_DEPROGRAMMING_25)
@@ -477,7 +482,7 @@ struct boss_lady_deathwhisper : public BossAI
case NPC_VENGEFUL_SHADE:
if (_nextVengefulShadeTargetGUID.empty())
break;
- summon->AI()->SetGUID(_nextVengefulShadeTargetGUID.front());
+ summon->AI()->SetGUID(_nextVengefulShadeTargetGUID.front(), DATA_VENGEFUL_SHADE_TARGET_GUID);
_nextVengefulShadeTargetGUID.pop_front();
break;
case NPC_CULT_ADHERENT:
@@ -782,8 +787,11 @@ struct npc_vengeful_shade : public ScriptedAI
});
}
- void SetGUID(ObjectGuid const& guid, int32 /*id*/) override
+ void SetGUID(ObjectGuid const& guid, int32 id) override
{
+ if (id != DATA_VENGEFUL_SHADE_TARGET_GUID)
+ return;
+
_targetGUID = guid;
}
diff --git a/src/server/scripts/Northrend/IcecrownCitadel/boss_lord_marrowgar.cpp b/src/server/scripts/Northrend/IcecrownCitadel/boss_lord_marrowgar.cpp
index b7236028725..9de7dea9523 100644
--- a/src/server/scripts/Northrend/IcecrownCitadel/boss_lord_marrowgar.cpp
+++ b/src/server/scripts/Northrend/IcecrownCitadel/boss_lord_marrowgar.cpp
@@ -291,7 +291,7 @@ struct boss_lord_marrowgar : public BossAI
return &_coldflameLastPos;
}
- ObjectGuid GetGUID(int32 type /*= 0 */) const override
+ ObjectGuid GetGUID(int32 type) const override
{
switch (type)
{
diff --git a/src/server/scripts/Northrend/IcecrownCitadel/boss_the_lich_king.cpp b/src/server/scripts/Northrend/IcecrownCitadel/boss_the_lich_king.cpp
index a4cf8553ea9..a8eac473250 100644
--- a/src/server/scripts/Northrend/IcecrownCitadel/boss_the_lich_king.cpp
+++ b/src/server/scripts/Northrend/IcecrownCitadel/boss_the_lich_king.cpp
@@ -358,13 +358,11 @@ enum MiscData
SOUND_PAIN = 17360, // separate sound, not attached to any text
EQUIP_ASHBRINGER_GLOWING = 50442,
- EQUIP_BROKEN_FROSTMOURNE = 50840
-};
+ EQUIP_BROKEN_FROSTMOURNE = 50840,
-enum Misc
-{
DATA_PLAGUE_STACK = 70337,
DATA_VILE = 45814622,
+ DATA_GRABBED_PLAYER_GUID = 0,
GOSSIP_MENU_START_INTRO = 10993
};
@@ -1500,8 +1498,11 @@ struct npc_valkyr_shadowguard : public ScriptedAI
}
}
- void SetGUID(ObjectGuid const& guid, int32 /*id*/) override
+ void SetGUID(ObjectGuid const& guid, int32 id) override
{
+ if (id != DATA_GRABBED_PLAYER_GUID)
+ return;
+
_grabbedPlayer = guid;
}
@@ -2304,7 +2305,7 @@ class spell_the_lich_king_valkyr_target_search : public SpellScript
_target = Trinity::Containers::SelectRandomContainerElement(targets);
targets.clear();
targets.push_back(_target);
- GetCaster()->GetAI()->SetGUID(_target->GetGUID());
+ GetCaster()->GetAI()->SetGUID(_target->GetGUID(), DATA_GRABBED_PLAYER_GUID);
}
void ReplaceTarget(std::list<WorldObject*>& targets)
diff --git a/src/server/scripts/Northrend/Naxxramas/boss_maexxna.cpp b/src/server/scripts/Northrend/Naxxramas/boss_maexxna.cpp
index 7a2b208929b..9aa6f4d2636 100644
--- a/src/server/scripts/Northrend/Naxxramas/boss_maexxna.cpp
+++ b/src/server/scripts/Northrend/Naxxramas/boss_maexxna.cpp
@@ -69,6 +69,11 @@ enum Events
EVENT_SUMMON,
};
+enum MaexxnaData
+{
+ DATA_WEBWRAP_VICTIM_GUID = 0
+};
+
const float WEB_WRAP_MOVE_SPEED = 20.0f;
struct WebTargetSelector
@@ -143,7 +148,7 @@ struct boss_maexxna : public BossAI
target->RemoveAura(SPELL_WEB_SPRAY);
if (Creature* wrap = DoSummon(NPC_WEB_WRAP, WrapPositions[wrapPos], 70s, TEMPSUMMON_TIMED_DESPAWN))
{
- wrap->AI()->SetGUID(target->GetGUID()); // handles application of debuff
+ wrap->AI()->SetGUID(target->GetGUID(), DATA_WEBWRAP_VICTIM_GUID); // handles application of debuff
target->GetMotionMaster()->MoveJump(WrapPositions[wrapPos], WEB_WRAP_MOVE_SPEED, WEB_WRAP_MOVE_SPEED); // move after stun to avoid stun cancelling move
}
}
@@ -188,10 +193,14 @@ struct npc_webwrap : public NullCreatureAI
me->SetVisible(false);
}
- void SetGUID(ObjectGuid const& guid, int32 /*id*/) override
+ void SetGUID(ObjectGuid const& guid, int32 id) override
{
+ if (id != DATA_WEBWRAP_VICTIM_GUID)
+ return;
+
if (!guid)
return;
+
victimGUID = guid;
if (Unit* victim = ObjectAccessor::GetUnit(*me, victimGUID))
{
diff --git a/src/server/scripts/Northrend/zone_borean_tundra.cpp b/src/server/scripts/Northrend/zone_borean_tundra.cpp
index 1bdff8f8adf..b4ac065ce14 100644
--- a/src/server/scripts/Northrend/zone_borean_tundra.cpp
+++ b/src/server/scripts/Northrend/zone_borean_tundra.cpp
@@ -1260,7 +1260,9 @@ enum BloodsporeRuination
NPC_BLOODMAGE_LAURITH = 25381,
SAY_BLOODMAGE_LAURITH = 0,
EVENT_TALK = 1,
- EVENT_RESET_ORIENTATION
+ EVENT_RESET_ORIENTATION,
+
+ DATA_FACING_PLAYER_GUID = 0
};
// 45997 - Bloodspore Ruination
@@ -1270,7 +1272,7 @@ class spell_q11719_bloodspore_ruination_45997 : public SpellScript
{
if (Unit* caster = GetCaster())
if (Creature* laurith = caster->FindNearestCreature(NPC_BLOODMAGE_LAURITH, 100.0f))
- laurith->AI()->SetGUID(caster->GetGUID());
+ laurith->AI()->SetGUID(caster->GetGUID(), DATA_FACING_PLAYER_GUID);
}
void Register() override
@@ -1289,8 +1291,11 @@ struct npc_bloodmage_laurith : public ScriptedAI
_playerGUID.Clear();
}
- void SetGUID(ObjectGuid const& guid, int32 /*id*/) override
+ void SetGUID(ObjectGuid const& guid, int32 id) override
{
+ if (id != DATA_FACING_PLAYER_GUID)
+ return;
+
if (!_playerGUID.IsEmpty())
return;