mirror of
https://github.com/TrinityCore/TrinityCore.git
synced 2026-01-16 07:30:42 +01:00
Scripts/ICC: move Sister Svalna to her own file
I've almost guttered her, so lets try it more gently this time
This commit is contained in:
1272
src/server/scripts/Northrend/IcecrownCitadel/boss_sister_svalna.cpp
Normal file
1272
src/server/scripts/Northrend/IcecrownCitadel/boss_sister_svalna.cpp
Normal file
File diff suppressed because it is too large
Load Diff
@@ -15,14 +15,15 @@
|
||||
* with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include "ScriptMgr.h"
|
||||
#include "icecrown_citadel.h"
|
||||
#include "GameObject.h"
|
||||
#include "GameObjectAI.h"
|
||||
#include "icecrown_citadel.h"
|
||||
#include "InstanceScript.h"
|
||||
#include "Player.h"
|
||||
#include "ScriptedGossip.h"
|
||||
#include "ScriptMgr.h"
|
||||
#include "Spell.h"
|
||||
#include "SpellInfo.h"
|
||||
#include "SpellMgr.h"
|
||||
|
||||
static std::vector<uint32> const TeleportSpells =
|
||||
@@ -94,11 +95,11 @@ class at_frozen_throne_teleport : public AreaTriggerScript
|
||||
}
|
||||
|
||||
if (InstanceScript* instance = player->GetInstanceScript())
|
||||
if (instance->GetBossState(DATA_PROFESSOR_PUTRICIDE) == DONE &&
|
||||
instance->GetBossState(DATA_BLOOD_QUEEN_LANA_THEL) == DONE &&
|
||||
instance->GetBossState(DATA_SINDRAGOSA) == DONE &&
|
||||
instance->GetBossState(DATA_THE_LICH_KING) != IN_PROGRESS)
|
||||
{
|
||||
if (instance->GetBossState(DATA_PROFESSOR_PUTRICIDE) == DONE && instance->GetBossState(DATA_BLOOD_QUEEN_LANA_THEL) == DONE &&
|
||||
instance->GetBossState(DATA_SINDRAGOSA) == DONE && instance->GetBossState(DATA_THE_LICH_KING) != IN_PROGRESS)
|
||||
player->CastSpell(player, FROZEN_THRONE_TELEPORT, true);
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
File diff suppressed because it is too large
Load Diff
@@ -21,24 +21,10 @@
|
||||
#include "CreatureAIImpl.h"
|
||||
#include "ScriptMgr.h"
|
||||
|
||||
struct Position;
|
||||
enum TriggerCastFlags : uint32;
|
||||
|
||||
#define ICCScriptName "instance_icecrown_citadel"
|
||||
#define DataHeader "IC"
|
||||
#define DataHeader "IC"
|
||||
|
||||
uint32 const EncounterCount = 13;
|
||||
uint32 const WeeklyNPCs = 9;
|
||||
uint32 const MaxHeroicAttempts = 50;
|
||||
|
||||
// Defined in boss_valithria_dreamwalker.cpp
|
||||
extern Position const ValithriaSpawnPos;
|
||||
// Defined in boss_sindragosa.cpp
|
||||
extern Position const SindragosaSpawnPos;
|
||||
// Defined in boss_the_lich_king.cpp
|
||||
extern Position const TerenasSpawn;
|
||||
extern Position const TerenasSpawnHeroic;
|
||||
extern Position const SpiritWardenSpawn;
|
||||
|
||||
// Shared spells used by more than one script
|
||||
enum ICSharedSpells
|
||||
@@ -547,6 +533,21 @@ enum ICAreaIds
|
||||
AREA_ICECROWN_CITADEL = 4812
|
||||
};
|
||||
|
||||
struct Position;
|
||||
enum TriggerCastFlags : uint32;
|
||||
|
||||
// Defined in boss_valithria_dreamwalker.cpp
|
||||
extern Position const ValithriaSpawnPos;
|
||||
// Defined in boss_sindragosa.cpp
|
||||
extern Position const SindragosaSpawnPos;
|
||||
// Defined in boss_the_lich_king.cpp
|
||||
extern Position const TerenasSpawn;
|
||||
extern Position const TerenasSpawnHeroic;
|
||||
extern Position const SpiritWardenSpawn;
|
||||
|
||||
uint32 const WeeklyNPCs = 9;
|
||||
uint32 const MaxHeroicAttempts = 50;
|
||||
|
||||
class spell_trigger_spell_from_caster : public SpellScriptLoader
|
||||
{
|
||||
public:
|
||||
|
||||
@@ -110,15 +110,15 @@ struct WeeklyQuest
|
||||
// when changing the content, remember to update SetData, DATA_BLOOD_QUICKENING_STATE case for NPC_ALRIN_THE_AGILE index
|
||||
WeeklyQuest const WeeklyQuestData[WeeklyNPCs] =
|
||||
{
|
||||
{NPC_INFILTRATOR_MINCHAR, {QUEST_DEPROGRAMMING_10, QUEST_DEPROGRAMMING_25 }}, // Deprogramming
|
||||
{NPC_KOR_KRON_LIEUTENANT, {QUEST_SECURING_THE_RAMPARTS_10, QUEST_SECURING_THE_RAMPARTS_25 }}, // Securing the Ramparts
|
||||
{NPC_ROTTING_FROST_GIANT_10, {QUEST_SECURING_THE_RAMPARTS_10, QUEST_SECURING_THE_RAMPARTS_25 }}, // Securing the Ramparts
|
||||
{NPC_ROTTING_FROST_GIANT_25, {QUEST_SECURING_THE_RAMPARTS_10, QUEST_SECURING_THE_RAMPARTS_25 }}, // Securing the Ramparts
|
||||
{NPC_ALCHEMIST_ADRIANNA, {QUEST_RESIDUE_RENDEZVOUS_10, QUEST_RESIDUE_RENDEZVOUS_25 }}, // Residue Rendezvous
|
||||
{NPC_ALRIN_THE_AGILE, {QUEST_BLOOD_QUICKENING_10, QUEST_BLOOD_QUICKENING_25 }}, // Blood Quickening
|
||||
{NPC_INFILTRATOR_MINCHAR_BQ, {QUEST_BLOOD_QUICKENING_10, QUEST_BLOOD_QUICKENING_25 }}, // Blood Quickening
|
||||
{NPC_MINCHAR_BEAM_STALKER, {QUEST_BLOOD_QUICKENING_10, QUEST_BLOOD_QUICKENING_25 }}, // Blood Quickening
|
||||
{NPC_VALITHRIA_DREAMWALKER_QUEST, {QUEST_RESPITE_FOR_A_TORNMENTED_SOUL_10, QUEST_RESPITE_FOR_A_TORNMENTED_SOUL_25}} // Respite for a Tormented Soul
|
||||
{ NPC_INFILTRATOR_MINCHAR, { QUEST_DEPROGRAMMING_10, QUEST_DEPROGRAMMING_25 } }, // Deprogramming
|
||||
{ NPC_KOR_KRON_LIEUTENANT, { QUEST_SECURING_THE_RAMPARTS_10, QUEST_SECURING_THE_RAMPARTS_25 } }, // Securing the Ramparts
|
||||
{ NPC_ROTTING_FROST_GIANT_10, { QUEST_SECURING_THE_RAMPARTS_10, QUEST_SECURING_THE_RAMPARTS_25 } }, // Securing the Ramparts
|
||||
{ NPC_ROTTING_FROST_GIANT_25, { QUEST_SECURING_THE_RAMPARTS_10, QUEST_SECURING_THE_RAMPARTS_25 } }, // Securing the Ramparts
|
||||
{ NPC_ALCHEMIST_ADRIANNA, { QUEST_RESIDUE_RENDEZVOUS_10, QUEST_RESIDUE_RENDEZVOUS_25 } }, // Residue Rendezvous
|
||||
{ NPC_ALRIN_THE_AGILE, { QUEST_BLOOD_QUICKENING_10, QUEST_BLOOD_QUICKENING_25 } }, // Blood Quickening
|
||||
{ NPC_INFILTRATOR_MINCHAR_BQ, { QUEST_BLOOD_QUICKENING_10, QUEST_BLOOD_QUICKENING_25 } }, // Blood Quickening
|
||||
{ NPC_MINCHAR_BEAM_STALKER, { QUEST_BLOOD_QUICKENING_10, QUEST_BLOOD_QUICKENING_25 } }, // Blood Quickening
|
||||
{ NPC_VALITHRIA_DREAMWALKER_QUEST, { QUEST_RESPITE_FOR_A_TORNMENTED_SOUL_10, QUEST_RESPITE_FOR_A_TORNMENTED_SOUL_25 } } // Respite for a Tormented Soul
|
||||
};
|
||||
|
||||
// NPCs spawned at Light's Hammer on Lich King dead
|
||||
|
||||
Reference in New Issue
Block a user