mirror of
https://github.com/mod-playerbots/azerothcore-wotlk.git
synced 2026-02-03 02:53:48 +00:00
fix(Scripts/Karazhan): Chess Event. (#14736)
This commit is contained in:
@@ -9183,32 +9183,47 @@ Pet* Player::CreatePet(uint32 creatureEntry, uint32 spellID /*= 0*/)
|
||||
return pet;
|
||||
}
|
||||
|
||||
void Player::StopCastingCharm()
|
||||
void Player::StopCastingCharm(Aura* except /*= nullptr*/)
|
||||
{
|
||||
Unit* charm = GetCharm();
|
||||
if (!charm)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
if (charm->GetTypeId() == TYPEID_UNIT)
|
||||
{
|
||||
if (charm->ToCreature()->HasUnitTypeMask(UNIT_MASK_PUPPET))
|
||||
{
|
||||
((Puppet*)charm)->UnSummon();
|
||||
}
|
||||
else if (charm->IsVehicle())
|
||||
{
|
||||
ExitVehicle();
|
||||
}
|
||||
}
|
||||
|
||||
if (GetCharmGUID())
|
||||
charm->RemoveCharmAuras();
|
||||
{
|
||||
charm->RemoveAurasByType(SPELL_AURA_MOD_CHARM, ObjectGuid::Empty, except);
|
||||
charm->RemoveAurasByType(SPELL_AURA_MOD_POSSESS_PET, ObjectGuid::Empty, except);
|
||||
charm->RemoveAurasByType(SPELL_AURA_MOD_POSSESS, ObjectGuid::Empty, except);
|
||||
charm->RemoveAurasByType(SPELL_AURA_AOE_CHARM, ObjectGuid::Empty, except);
|
||||
}
|
||||
|
||||
if (GetCharmGUID())
|
||||
{
|
||||
LOG_FATAL("entities.player", "Player {} ({} is not able to uncharm unit ({})", GetName(), GetGUID().ToString(), GetCharmGUID().ToString());
|
||||
|
||||
if (charm->GetCharmerGUID())
|
||||
{
|
||||
LOG_FATAL("entities.player", "Charmed unit has charmer {}", charm->GetCharmerGUID().ToString());
|
||||
ABORT();
|
||||
}
|
||||
else
|
||||
{
|
||||
SetCharm(charm, false);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -13031,15 +13046,15 @@ bool ItemPosCount::isContainedIn(ItemPosCountVec const& vec) const
|
||||
return false;
|
||||
}
|
||||
|
||||
void Player::StopCastingBindSight()
|
||||
void Player::StopCastingBindSight(Aura* except /*= nullptr*/)
|
||||
{
|
||||
if (WorldObject* target = GetViewpoint())
|
||||
{
|
||||
if (target->isType(TYPEMASK_UNIT))
|
||||
{
|
||||
((Unit*)target)->RemoveAurasByType(SPELL_AURA_BIND_SIGHT, GetGUID());
|
||||
((Unit*)target)->RemoveAurasByType(SPELL_AURA_MOD_POSSESS, GetGUID());
|
||||
((Unit*)target)->RemoveAurasByType(SPELL_AURA_MOD_POSSESS_PET, GetGUID());
|
||||
((Unit*)target)->RemoveAurasByType(SPELL_AURA_BIND_SIGHT, GetGUID(), except);
|
||||
((Unit*)target)->RemoveAurasByType(SPELL_AURA_MOD_POSSESS, GetGUID(), except);
|
||||
((Unit*)target)->RemoveAurasByType(SPELL_AURA_MOD_POSSESS_PET, GetGUID(), except);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2298,8 +2298,8 @@ public:
|
||||
void SetSeer(WorldObject* target) { m_seer = target; }
|
||||
void SetViewpoint(WorldObject* target, bool apply);
|
||||
[[nodiscard]] WorldObject* GetViewpoint() const;
|
||||
void StopCastingCharm();
|
||||
void StopCastingBindSight();
|
||||
void StopCastingCharm(Aura* except = nullptr);
|
||||
void StopCastingBindSight(Aura* except = nullptr);
|
||||
|
||||
[[nodiscard]] uint32 GetSaveTimer() const { return m_nextSave; }
|
||||
void SetSaveTimer(uint32 timer) { m_nextSave = timer; }
|
||||
|
||||
@@ -18575,15 +18575,15 @@ bool Unit::SetCharmedBy(Unit* charmer, CharmType type, AuraApplication const* au
|
||||
// Charmer stop charming
|
||||
if (playerCharmer)
|
||||
{
|
||||
playerCharmer->StopCastingCharm();
|
||||
playerCharmer->StopCastingBindSight();
|
||||
playerCharmer->StopCastingCharm(aurApp ? aurApp->GetBase() : nullptr);
|
||||
playerCharmer->StopCastingBindSight(aurApp ? aurApp->GetBase() : nullptr);
|
||||
}
|
||||
|
||||
// Charmed stop charming
|
||||
if (GetTypeId() == TYPEID_PLAYER)
|
||||
{
|
||||
ToPlayer()->StopCastingCharm();
|
||||
ToPlayer()->StopCastingBindSight();
|
||||
ToPlayer()->StopCastingCharm(aurApp ? aurApp->GetBase() : nullptr);
|
||||
ToPlayer()->StopCastingBindSight(aurApp ? aurApp->GetBase() : nullptr);
|
||||
}
|
||||
|
||||
// StopCastingCharm may remove a possessed pet?
|
||||
@@ -18695,8 +18695,11 @@ bool Unit::SetCharmedBy(Unit* charmer, CharmType type, AuraApplication const* au
|
||||
SetUInt32Value(UNIT_FIELD_PET_NAME_TIMESTAMP, uint32(GameTime::GetGameTime().count())); // cast can't be helped
|
||||
}
|
||||
}
|
||||
GetMotionMaster()->MoveFollow(charmer, PET_FOLLOW_DIST, GetFollowAngle());
|
||||
playerCharmer->CharmSpellInitialize();
|
||||
if (playerCharmer->m_seer != this)
|
||||
{
|
||||
GetMotionMaster()->MoveFollow(charmer, PET_FOLLOW_DIST, GetFollowAngle());
|
||||
playerCharmer->CharmSpellInitialize();
|
||||
}
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
|
||||
@@ -2461,6 +2461,8 @@ public:
|
||||
|
||||
std::string GetDebugInfo() const override;
|
||||
|
||||
[[nodiscard]] uint32 GetOldFactionId() const { return _oldFactionId; }
|
||||
|
||||
protected:
|
||||
explicit Unit (bool isWorldObject);
|
||||
|
||||
|
||||
@@ -289,10 +289,6 @@ void WorldSession::HandleGossipHelloOpcode(WorldPacket& recvData)
|
||||
if (unit->GetNpcFlags() == UNIT_NPC_FLAG_NONE)
|
||||
return;
|
||||
|
||||
// xinef: do not allow to open gossip when npc is in combat
|
||||
if (unit->GetNpcFlags() == UNIT_NPC_FLAG_GOSSIP && unit->IsInCombat()) // should work on all flags?
|
||||
return;
|
||||
|
||||
// set faction visible if needed
|
||||
if (FactionTemplateEntry const* factionTemplateEntry = sFactionTemplateStore.LookupEntry(unit->GetFaction()))
|
||||
_player->GetReputationMgr().SetVisible(factionTemplateEntry);
|
||||
|
||||
@@ -4470,7 +4470,13 @@ void SpellMgr::LoadSpellInfoCorrections()
|
||||
{
|
||||
spellInfo->AttributesEx2 |= SPELL_ATTR2_IGNORE_LINE_OF_SIGHT;
|
||||
});
|
||||
|
||||
// Game In Session
|
||||
ApplySpellFix({ 39331 }, [](SpellInfo* spellInfo)
|
||||
{
|
||||
spellInfo->Effects[EFFECT_0].Effect = SPELL_EFFECT_APPLY_AURA;
|
||||
spellInfo->Attributes |= SPELL_ATTR0_NO_AURA_CANCEL;
|
||||
spellInfo->AuraInterruptFlags |= AURA_INTERRUPT_FLAG_CHANGE_MAP;
|
||||
});
|
||||
// Death Ray Warning Visual, Death Ray Damage Visual
|
||||
ApplySpellFix({ 63882, 63886 }, [](SpellInfo* spellInfo)
|
||||
{
|
||||
|
||||
2092
src/server/scripts/EasternKingdoms/Karazhan/boss_chess_event.cpp
Normal file
2092
src/server/scripts/EasternKingdoms/Karazhan/boss_chess_event.cpp
Normal file
File diff suppressed because it is too large
Load Diff
@@ -60,6 +60,10 @@ public:
|
||||
OperaEvent = urand(EVENT_OZ, EVENT_RAJ);
|
||||
OzDeathCount = 0;
|
||||
OptionalBossCount = 0;
|
||||
|
||||
_chessTeam = TEAM_NEUTRAL;
|
||||
_chessGamePhase = CHESS_PHASE_NOT_STARTED;
|
||||
_chessEvent = NOT_STARTED;
|
||||
}
|
||||
|
||||
void OnCreatureCreate(Creature* creature) override
|
||||
@@ -88,6 +92,27 @@ public:
|
||||
creature->Respawn(true);
|
||||
}
|
||||
break;
|
||||
case NPC_PAWN_H:
|
||||
case NPC_KNIGHT_H:
|
||||
case NPC_QUEEN_H:
|
||||
case NPC_BISHOP_H:
|
||||
case NPC_ROOK_H:
|
||||
case NPC_KING_H:
|
||||
case NPC_PAWN_A:
|
||||
case NPC_KNIGHT_A:
|
||||
case NPC_QUEEN_A:
|
||||
case NPC_BISHOP_A:
|
||||
case NPC_ROOK_A:
|
||||
case NPC_KING_A:
|
||||
_chessPiecesGUID.insert(creature->GetGUID());
|
||||
creature->SetHealth(creature->GetMaxHealth());
|
||||
break;
|
||||
case NPC_CHESS_EVENT_MEDIVH_CHEAT_FIRES:
|
||||
_medivhCheatFiresGUID.insert(creature->GetGUID());
|
||||
break;
|
||||
case NPC_ECHO_OF_MEDIVH:
|
||||
_echoOfMedivhGUID = creature->GetGUID();
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
@@ -160,6 +185,82 @@ public:
|
||||
|
||||
break;
|
||||
}
|
||||
case DATA_CHESS_EVENT:
|
||||
{
|
||||
_chessEvent = data;
|
||||
|
||||
switch (data)
|
||||
{
|
||||
case IN_PROGRESS:
|
||||
case SPECIAL:
|
||||
{
|
||||
DoCastSpellOnPlayers(SPELL_GAME_IN_SESSION);
|
||||
for (ObjectGuid const& chessPieceGUID : _chessPiecesGUID)
|
||||
{
|
||||
if (Creature* piece = instance->GetCreature(chessPieceGUID))
|
||||
{
|
||||
if (_chessTeam == TEAM_ALLIANCE)
|
||||
{
|
||||
if (piece->GetFaction() == CHESS_FACTION_ALLIANCE)
|
||||
{
|
||||
piece->SetNpcFlag(UNIT_NPC_FLAG_GOSSIP);
|
||||
}
|
||||
}
|
||||
else if (_chessTeam == TEAM_HORDE)
|
||||
{
|
||||
if (piece->GetFaction() == CHESS_FACTION_HORDE)
|
||||
{
|
||||
piece->SetNpcFlag(UNIT_NPC_FLAG_GOSSIP);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
piece->SetNpcFlag(UNIT_NPC_FLAG_GOSSIP);
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
default:
|
||||
DoRemoveAurasDueToSpellOnPlayers(SPELL_GAME_IN_SESSION);
|
||||
break;
|
||||
}
|
||||
break;
|
||||
}
|
||||
case CHESS_EVENT_TEAM:
|
||||
_chessTeam = data;
|
||||
break;
|
||||
case DATA_CHESS_REINIT_PIECES:
|
||||
for (ObjectGuid const& chessPieceGUID : _chessPiecesGUID)
|
||||
{
|
||||
if (Creature* piece = instance->GetCreature(chessPieceGUID))
|
||||
{
|
||||
piece->RemoveAllAuras();
|
||||
piece->setDeathState(JUST_RESPAWNED);
|
||||
piece->SetHealth(piece->GetMaxHealth());
|
||||
float x, y, z, o;
|
||||
piece->GetHomePosition(x, y, z, o);
|
||||
piece->NearTeleportTo(x, y, z, o);
|
||||
piece->AI()->DoAction(ACTION_CHESS_PIECE_RESET_ORIENTATION);
|
||||
piece->RemoveUnitFlag(UNIT_FLAG_NOT_SELECTABLE);
|
||||
piece->RemoveNpcFlag(UNIT_NPC_FLAG_GOSSIP);
|
||||
piece->AI()->Reset();
|
||||
}
|
||||
}
|
||||
|
||||
for (ObjectGuid const& medivhCheatFireGUID : _medivhCheatFiresGUID)
|
||||
{
|
||||
if (Creature* fire = instance->GetCreature(medivhCheatFireGUID))
|
||||
{
|
||||
fire->DespawnOrUnsummon();
|
||||
}
|
||||
}
|
||||
|
||||
_medivhCheatFiresGUID.clear();
|
||||
break;
|
||||
case DATA_CHESS_GAME_PHASE:
|
||||
_chessGamePhase = data;
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
@@ -189,10 +290,6 @@ public:
|
||||
DoRespawnCreature(_barnesGUID, true);
|
||||
}
|
||||
break;
|
||||
case DATA_CHESS:
|
||||
if (state == DONE)
|
||||
DoRespawnGameObject(DustCoveredChest, DAY);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
@@ -291,6 +388,12 @@ public:
|
||||
return OperaEvent;
|
||||
case DATA_OPERA_OZ_DEATHCOUNT:
|
||||
return OzDeathCount;
|
||||
case CHESS_EVENT_TEAM:
|
||||
return _chessTeam;
|
||||
case DATA_CHESS_GAME_PHASE:
|
||||
return _chessGamePhase;
|
||||
case DATA_CHESS_EVENT:
|
||||
return _chessEvent;
|
||||
}
|
||||
|
||||
return 0;
|
||||
@@ -332,6 +435,10 @@ public:
|
||||
return ImageGUID;
|
||||
case DATA_NIGHTBANE:
|
||||
return m_uiNightBaneGUID;
|
||||
case DATA_ECHO_OF_MEDIVH:
|
||||
return _echoOfMedivhGUID;
|
||||
case DATA_DUST_COVERED_CHEST:
|
||||
return DustCoveredChest;
|
||||
}
|
||||
|
||||
return ObjectGuid::Empty;
|
||||
@@ -341,8 +448,10 @@ public:
|
||||
uint32 OperaEvent;
|
||||
uint32 OzDeathCount;
|
||||
uint32 OptionalBossCount;
|
||||
//uint32 m_auiEncounter[MAX_ENCOUNTERS];
|
||||
//uint32 m_uiTeam;
|
||||
uint32 _chessTeam;
|
||||
uint32 _chessGamePhase;
|
||||
uint32 _chessEvent;
|
||||
|
||||
ObjectGuid m_uiCurtainGUID;
|
||||
ObjectGuid m_uiStageDoorLeftGUID;
|
||||
ObjectGuid m_uiStageDoorRightGUID;
|
||||
@@ -350,20 +459,22 @@ public:
|
||||
ObjectGuid m_uiTerestianGUID;
|
||||
ObjectGuid m_uiMoroesGUID;
|
||||
ObjectGuid m_uiNightBaneGUID;
|
||||
//ObjectGuid EchoOfMedivhGUID;
|
||||
ObjectGuid m_uiLibraryDoor; // Door at Shade of Aran
|
||||
ObjectGuid m_uiMassiveDoor; // Door at Netherspite
|
||||
ObjectGuid m_uiSideEntranceDoor; // Side Entrance
|
||||
ObjectGuid m_uiGamesmansDoor; // Door before Chess
|
||||
ObjectGuid m_uiGamesmansExitDoor; // Door after Chess
|
||||
ObjectGuid m_uiNetherspaceDoor; // Door at Malchezaar
|
||||
//ObjectGuid m_uiServantsAccessDoor; // Door to Brocken Stair
|
||||
ObjectGuid MastersTerraceDoor[2];
|
||||
ObjectGuid ImageGUID;
|
||||
ObjectGuid DustCoveredChest;
|
||||
ObjectGuid m_uiRelayGUID;
|
||||
ObjectGuid _barnesGUID;
|
||||
ObjectGuid _echoOfMedivhGUID;
|
||||
|
||||
GuidVector _operaDecorations[EVENT_RAJ];
|
||||
GuidSet _chessPiecesGUID;
|
||||
GuidSet _medivhCheatFiresGUID;
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
@@ -36,7 +36,7 @@ enum KZDataTypes
|
||||
DATA_ARAN = 6,
|
||||
DATA_TERESTIAN = 7,
|
||||
DATA_NETHERSPITE = 8,
|
||||
DATA_CHESS = 9,
|
||||
DATA_CHESS_EVENT = 9,
|
||||
DATA_MALCHEZZAR = 10,
|
||||
DATA_NIGHTBANE = 11,
|
||||
DATA_SERVANT_QUARTERS = 12,
|
||||
@@ -60,40 +60,63 @@ enum KZDataTypes
|
||||
DATA_GO_SIDE_ENTRANCE_DOOR = 29,
|
||||
DATA_PRINCE = 30,
|
||||
DATA_SPAWN_OPERA_DECORATIONS = 31,
|
||||
DATA_MIDNIGHT = 32
|
||||
DATA_MIDNIGHT = 32,
|
||||
|
||||
// Chess Event
|
||||
CHESS_EVENT_TEAM = 33,
|
||||
DATA_CHESS_REINIT_PIECES = 34,
|
||||
DATA_CHESS_GAME_PHASE = 35,
|
||||
DATA_ECHO_OF_MEDIVH = 36,
|
||||
DATA_DUST_COVERED_CHEST = 37
|
||||
};
|
||||
|
||||
enum KZOperaEvents
|
||||
{
|
||||
EVENT_OZ = 1,
|
||||
EVENT_HOOD = 2,
|
||||
EVENT_RAJ = 3
|
||||
EVENT_OZ = 1,
|
||||
EVENT_HOOD = 2,
|
||||
EVENT_RAJ = 3
|
||||
};
|
||||
|
||||
enum KZMiscCreatures
|
||||
enum KZCreatures
|
||||
{
|
||||
NPC_HYAKISS_THE_LURKER = 16179,
|
||||
NPC_ROKAD_THE_RAVAGER = 16181,
|
||||
NPC_SHADIKITH_THE_GLIDER = 16180,
|
||||
NPC_TERESTIAN_ILLHOOF = 15688,
|
||||
NPC_MOROES = 15687,
|
||||
NPC_ATTUMEN_THE_HUNTSMAN = 15550,
|
||||
NPC_ATTUMEN_THE_HUNTSMAN_MOUNTED = 16152,
|
||||
NPC_MIDNIGHT = 16151,
|
||||
NPC_NIGHTBANE = 17225,
|
||||
NPC_HYAKISS_THE_LURKER = 16179,
|
||||
NPC_ROKAD_THE_RAVAGER = 16181,
|
||||
NPC_SHADIKITH_THE_GLIDER = 16180,
|
||||
NPC_TERESTIAN_ILLHOOF = 15688,
|
||||
NPC_MOROES = 15687,
|
||||
NPC_ATTUMEN_THE_HUNTSMAN = 15550,
|
||||
NPC_ATTUMEN_THE_HUNTSMAN_MOUNTED = 16152,
|
||||
NPC_MIDNIGHT = 16151,
|
||||
NPC_NIGHTBANE = 17225,
|
||||
|
||||
// Trash
|
||||
NPC_COLDMIST_WIDOW = 16171,
|
||||
NPC_COLDMIST_STALKER = 16170,
|
||||
NPC_SHADOWBAT = 16173,
|
||||
NPC_VAMPIRIC_SHADOWBAT = 16175,
|
||||
NPC_GREATER_SHADOWBAT = 16174,
|
||||
NPC_PHASE_HOUND = 16178,
|
||||
NPC_DREADBEAST = 16177,
|
||||
NPC_SHADOWBEAST = 16176,
|
||||
NPC_KILREK = 17229,
|
||||
NPC_RELAY = 17645,
|
||||
NPC_BARNES = 16812
|
||||
NPC_COLDMIST_WIDOW = 16171,
|
||||
NPC_COLDMIST_STALKER = 16170,
|
||||
NPC_SHADOWBAT = 16173,
|
||||
NPC_VAMPIRIC_SHADOWBAT = 16175,
|
||||
NPC_GREATER_SHADOWBAT = 16174,
|
||||
NPC_PHASE_HOUND = 16178,
|
||||
NPC_DREADBEAST = 16177,
|
||||
NPC_SHADOWBEAST = 16176,
|
||||
NPC_KILREK = 17229,
|
||||
NPC_RELAY = 17645,
|
||||
NPC_BARNES = 16812,
|
||||
|
||||
// Chess Event
|
||||
NPC_ECHO_OF_MEDIVH = 16816,
|
||||
NPC_PAWN_H = 17469,
|
||||
NPC_PAWN_A = 17211,
|
||||
NPC_KNIGHT_H = 21748,
|
||||
NPC_KNIGHT_A = 21664,
|
||||
NPC_QUEEN_H = 21750,
|
||||
NPC_QUEEN_A = 21683,
|
||||
NPC_BISHOP_H = 21747,
|
||||
NPC_BISHOP_A = 21682,
|
||||
NPC_ROOK_H = 21726,
|
||||
NPC_ROOK_A = 21160,
|
||||
NPC_KING_H = 21752,
|
||||
NPC_KING_A = 21684,
|
||||
NPC_CHESS_EVENT_MEDIVH_CHEAT_FIRES = 22521
|
||||
};
|
||||
|
||||
enum KZGameObjectIds
|
||||
@@ -124,14 +147,39 @@ enum KZGameObjectIds
|
||||
|
||||
enum KZMisc
|
||||
{
|
||||
OPTIONAL_BOSS_REQUIRED_DEATH_COUNT = 50
|
||||
OPTIONAL_BOSS_REQUIRED_DEATH_COUNT = 50,
|
||||
|
||||
ACTION_CHESS_PIECE_RESET_ORIENTATION = 1
|
||||
};
|
||||
|
||||
enum KarazhanSpells
|
||||
{
|
||||
SPELL_RATTLED = 32437,
|
||||
SPELL_OVERLOAD = 29766,
|
||||
SPELL_BLINK = 29884
|
||||
SPELL_RATTLED = 32437,
|
||||
SPELL_OVERLOAD = 29766,
|
||||
SPELL_BLINK = 29884,
|
||||
|
||||
// Chess Event
|
||||
SPELL_GAME_IN_SESSION = 39331,
|
||||
SPELL_HAND_OF_MEDIVH = 39339, // 1st cheat: AOE spell burn cell under enemy chesspieces.
|
||||
SPELL_FURY_OF_MEDIVH = 39383 // 2nd cheat: Berserk own chesspieces.
|
||||
};
|
||||
|
||||
enum KarazhanChessGamePhase
|
||||
{
|
||||
CHESS_PHASE_NOT_STARTED = 0,
|
||||
CHESS_PHASE_PVE_WARMUP = 1, // Medivh has been spoken too but king isn't controlled yet
|
||||
CHESS_PHASE_INPROGRESS_PVE = 2,
|
||||
CHESS_PHASE_FAILED = 3,
|
||||
CHESS_PHASE_PVE_FINISHED = 4,
|
||||
CHESS_PHASE_PVP_WARMUP = 5,
|
||||
CHESS_PHASE_INPROGRESS_PVP = 6 // Get back to PVE_FINISHED after that
|
||||
};
|
||||
|
||||
enum KarazhanChessGameFactions
|
||||
{
|
||||
CHESS_FACTION_HORDE = 1689,
|
||||
CHESS_FACTION_ALLIANCE = 1690,
|
||||
CHESS_FACTION_BOTH = 536
|
||||
};
|
||||
|
||||
template <class AI, class T>
|
||||
|
||||
@@ -68,6 +68,7 @@ void AddSC_instance_karazhan(); //Karazhan
|
||||
void AddSC_boss_servant_quarters();
|
||||
void AddSC_boss_attumen();
|
||||
void AddSC_boss_curator();
|
||||
void AddSC_boss_chess_event();
|
||||
void AddSC_boss_maiden_of_virtue();
|
||||
void AddSC_boss_shade_of_aran();
|
||||
void AddSC_boss_malchezaar();
|
||||
@@ -220,6 +221,7 @@ void AddEasternKingdomsScripts()
|
||||
AddSC_boss_servant_quarters();
|
||||
AddSC_boss_attumen();
|
||||
AddSC_boss_curator();
|
||||
AddSC_boss_chess_event();
|
||||
AddSC_boss_maiden_of_virtue();
|
||||
AddSC_boss_shade_of_aran();
|
||||
AddSC_boss_malchezaar();
|
||||
|
||||
Reference in New Issue
Block a user