Scripts/Northrend: moved scripted into their corresponding namespace (part 2)

This commit is contained in:
Ovahlord committed 2023-12-09 00:21:22 +01:00
1 parent 7ad103d20f
commit 93d8ed48b7
104 files changed
+486 -16

No files matched your search

@@ -20,6 +20,8 @@
#include "CreatureAIImpl.h"
namespace Ankahet
{
#define AhnKahetScriptName "instance_ahnkahet"
#define DataHeader "AK"
@@ -87,5 +89,6 @@ inline AI* GetAhnKahetAI(T* obj)
{
return GetInstanceAI<AI>(obj, AhnKahetScriptName);
}
}
#endif // AHNKAHET_H_
@@ -21,6 +21,8 @@
#include "ScriptedCreature.h"
#include "TemporarySummon.h"
namespace Ankahet::Armanitar
{
enum Spells
{
SPELL_BASH = 57094, // Victim
@@ -232,9 +234,12 @@ public:
return GetAhnKahetAI<npc_amanitar_mushroomsAI>(creature);
}
};
}
void AddSC_boss_amanitar()
{
using namespace Ankahet;
using namespace Ankahet::Armanitar;
new boss_amanitar();
new npc_amanitar_mushrooms();
}
@@ -21,6 +21,8 @@
#include "SpellAuras.h"
#include "SpellScript.h"
namespace Ankahet::ElderNadox
{
enum Yells
{
SAY_AGGRO = 0,
@@ -287,9 +289,12 @@ class achievement_respect_your_elders : public AchievementCriteriaScript
return target && target->GetAI()->GetData(DATA_RESPECT_YOUR_ELDERS);
}
};
}
void AddSC_boss_elder_nadox()
{
using namespace Ankahet;
using namespace Ankahet::ElderNadox;
new boss_elder_nadox();
new npc_ahnkahar_nerubian();
new spell_ahn_kahet_swarm();
@@ -31,6 +31,8 @@
#include "SpellMgr.h"
#include "TemporarySummon.h"
namespace Ankahet::HeraldVolazj
{
enum Spells
{
SPELL_INSANITY = 57496, //Dummy
@@ -296,8 +298,11 @@ public:
return GetAhnKahetAI<boss_volazjAI>(creature);
}
};
}
void AddSC_boss_volazj()
{
using namespace Ankahet;
using namespace Ankahet::HeraldVolazj;
new boss_volazj();
}
@@ -27,6 +27,8 @@
#include "ObjectAccessor.h"
#include "ScriptedCreature.h"
namespace Ankahet::JedogaShadowseeker
{
enum Yells
{
TEXT_AGGRO = 0,
@@ -603,9 +605,12 @@ class achievement_volunteer_work : public AchievementCriteriaScript
return false;
}
};
}
void AddSC_boss_jedoga_shadowseeker()
{
using namespace Ankahet;
using namespace Ankahet::JedogaShadowseeker;
new boss_jedoga_shadowseeker();
new npc_jedoga_initiand();
new npc_jedogas_aufseher_trigger();
@@ -28,6 +28,8 @@
#include "Spell.h"
#include "SpellScript.h"
namespace Ankahet::PrinceTaldaram
{
enum Spells
{
SPELL_BLOODTHIRST = 55968, // Trigger Spell + add aura
@@ -494,9 +496,12 @@ class spell_prince_taldaram_flame_sphere_summon : public SpellScriptLoader
return new spell_prince_taldaram_flame_sphere_summon_SpellScript();
}
};
}
void AddSC_boss_taldaram()
{
using namespace Ankahet;
using namespace Ankahet::PrinceTaldaram;
new boss_prince_taldaram();
new npc_prince_taldaram_flame_sphere();
new go_prince_taldaram_sphere();
@@ -26,6 +26,8 @@
#include "SpellInfo.h"
#include "SpellScript.h"
namespace Ankahet
{
DoorData const doorData[] =
{
{ GO_PRINCE_TALDARAM_GATE, DATA_PRINCE_TALDARAM, DOOR_TYPE_PASSAGE },
@@ -301,9 +303,11 @@ class spell_combined_toxins : public AuraScript
DoCheckEffectProc.Register(&spell_combined_toxins::CheckProc, EFFECT_0, SPELL_AURA_PROC_TRIGGER_DAMAGE);
}
};
}
void AddSC_instance_ahnkahet()
{
using namespace Ankahet;
new instance_ahnkahet();
RegisterSpellScript(spell_combined_toxins);
}
@@ -20,6 +20,8 @@
#include "CreatureAIImpl.h"
namespace AzjolNerub
{
#define AzjolNerubScriptName "instance_azjol_nerub"
#define DataHeader "AN"
@@ -71,5 +73,6 @@ inline AI* GetAzjolNerubAI(T* obj)
{
return GetInstanceAI<AI>(obj, AzjolNerubScriptName);
}
}
#endif // AZJOL_NERUB_H_
@@ -27,6 +27,8 @@
#include "SpellScript.h"
#include "TemporarySummon.h"
namespace AzjolNerub::Anubarak
{
enum Spells
{
SPELL_EMERGE = 53500,
@@ -697,9 +699,12 @@ class spell_anubarak_carrion_beetles : public SpellScriptLoader
return new spell_anubarak_carrion_beetles_AuraScript();
}
};
}
void AddSC_boss_anub_arak()
{
using namespace AzjolNerub;
using namespace AzjolNerub::Anubarak;
new boss_anub_arak();
new npc_anubarak_anub_ar_darter();
@@ -26,6 +26,8 @@
#include "SpellAuraEffects.h"
#include "TemporarySummon.h"
namespace AzjolNerub::Hadronox
{
enum Events
{
// Hadronox
@@ -1124,9 +1126,12 @@ class achievement_hadronox_denied : public AchievementCriteriaScript
return false;
}
};
}
void AddSC_boss_hadronox()
{
using namespace AzjolNerub;
using namespace AzjolNerub::Hadronox;
new boss_hadronox();
new npc_anub_ar_crusher();
@@ -29,6 +29,8 @@
#include "SpellScript.h"
#include "TemporarySummon.h"
namespace AzjolNerub::KrikthirTheGatewatcher
{
enum Events
{
// Krik'thir the Gatewatcher
@@ -1047,9 +1049,12 @@ class achievement_watch_him_die : public AchievementCriteriaScript
return true;
}
};
}
void AddSC_boss_krik_thir()
{
using namespace AzjolNerub;
using namespace AzjolNerub::KrikthirTheGatewatcher;
new boss_krik_thir();
new npc_watcher_gashra();
@@ -22,6 +22,8 @@
#include "CreatureAI.h"
#include "InstanceScript.h"
namespace AzjolNerub
{
DoorData const doorData[] =
{
{ GO_KRIKTHIR_DOOR, DATA_KRIKTHIR, DOOR_TYPE_PASSAGE },
@@ -131,8 +133,10 @@ class instance_azjol_nerub : public InstanceMapScript
return new instance_azjol_nerub_InstanceScript(map);
}
};
}
void AddSC_instance_azjol_nerub()
{
new instance_azjol_nerub();
using namespace AzjolNerub;
new instance_azjol_nerub();
}
@@ -25,6 +25,8 @@
#include "ScriptedCreature.h"
#include "TemporarySummon.h"
namespace ObsidianSanctum::Sartharion
{
enum Enums
{
//Sartharion Yell
@@ -517,8 +519,11 @@ public:
return GetObsidianSanctumAI<boss_sartharionAI>(creature);
}
};
}
void AddSC_boss_sartharion()
{
using namespace ObsidianSanctum;
using namespace ObsidianSanctum::Sartharion;
new boss_sartharion();
}
@@ -25,6 +25,8 @@
0 - Sartharion
*/
namespace ObsidianSanctum
{
BossBoundaryData const boundaries =
{
{ DATA_SARTHARION, new RectangleBoundary(3218.86f, 3275.69f, 484.68f, 572.4f) }
@@ -117,8 +119,10 @@ public:
return new instance_obsidian_sanctum_InstanceMapScript(map);
}
};
}
void AddSC_instance_obsidian_sanctum()
{
using namespace ObsidianSanctum;
new instance_obsidian_sanctum();
}
@@ -26,6 +26,8 @@
#include "ScriptedCreature.h"
#include "TemporarySummon.h"
namespace ObsidianSanctum
{
enum Enums
{
//Mini bosses common spells
@@ -1049,9 +1051,11 @@ class achievement_twilight_zone : public AchievementCriteriaScript
return target && target->GetAI()->GetData(TWILIGHT_ACHIEVEMENTS) == 3;
}
};
}
void AddSC_obsidian_sanctum()
{
using namespace ObsidianSanctum;
new npc_vesperon();
new npc_shadron();
new npc_tenebron();
@@ -23,6 +23,8 @@
#define OSScriptName "instance_obsidian_sanctum"
#define DataHeader "OS"
namespace ObsidianSanctum
{
uint32 const EncounterCount = 5;
enum OSDataTypes
@@ -53,5 +55,6 @@ inline AI* GetObsidianSanctumAI(T* obj)
{
return GetInstanceAI<AI>(obj, OSScriptName);
}
}
#endif // OBSIDIAN_SANCTUM_H_
@@ -22,6 +22,8 @@
#include "SpellAuras.h"
#include "SpellScript.h"
namespace RubySanctum::BaltharusTheWarmorn
{
enum Texts
{
SAY_BALTHARUS_INTRO = 0, // Your power wanes, ancient one.... Soon you will join your friends.
@@ -357,9 +359,11 @@ class spell_baltharus_enervating_brand_trigger : public SpellScriptLoader
return new spell_baltharus_enervating_brand_trigger_SpellScript();
}
};
}
void AddSC_boss_baltharus_the_warborn()
{
using namespace RubySanctum::BaltharusTheWarmorn;
new boss_baltharus_the_warborn();
new npc_baltharus_the_warborn_clone();
new spell_baltharus_enervating_brand_trigger();
@@ -22,6 +22,8 @@
#include "ruby_sanctum.h"
#include "ScriptedCreature.h"
namespace RubySanctum::GeneralZarithrian
{
enum Texts
{
SAY_AGGRO = 0, // Alexstrasza has chosen capable allies.... A pity that I must END YOU!
@@ -272,9 +274,12 @@ class npc_onyx_flamecaller : public CreatureScript
return GetRubySanctumAI<npc_onyx_flamecallerAI>(creature);
}
};
}
void AddSC_boss_general_zarithrian()
{
using namespace RubySanctum;
using namespace RubySanctum::GeneralZarithrian;
new boss_general_zarithrian();
new npc_onyx_flamecaller();
}
@@ -32,6 +32,8 @@
#include "TemporarySummon.h"
#include "Vehicle.h"
namespace RubySanctum::Halion
{
enum Texts
{
// Shared
@@ -1875,11 +1877,12 @@ class spell_halion_blazing_aura : public SpellScriptLoader
return new spell_halion_blazing_aura_SpellScript();
}
};
}
void AddSC_boss_halion()
{
using namespace RubySanctum;
using namespace RubySanctum::Halion;
new boss_halion();
new boss_twilight_halion();
@@ -22,6 +22,8 @@
#include "ScriptedCreature.h"
#include "SpellScript.h"
namespace RubySanctum::SavianaRagefire
{
enum Texts
{
SAY_AGGRO = 0, // You will sssuffer for this intrusion! (17528)
@@ -284,9 +286,12 @@ class spell_saviana_conflagration_throwback : public SpellScriptLoader
return new spell_saviana_conflagration_throwback_SpellScript();
}
};
}
void AddSC_boss_saviana_ragefire()
{
using namespace RubySanctum;
using namespace RubySanctum::SavianaRagefire;
new boss_saviana_ragefire();
new spell_saviana_conflagration_init();
new spell_saviana_conflagration_throwback();
@@ -24,6 +24,8 @@
#include "InstanceScript.h"
#include "Map.h"
namespace RubySanctum
{
Position const HalionControllerSpawnPos = { 3156.037f, 533.2656f, 72.97205f, 0.0f };
BossBoundaryData const boundaries =
@@ -206,8 +208,10 @@ class instance_ruby_sanctum : public InstanceMapScript
return new instance_ruby_sanctum_InstanceMapScript(map);
}
};
}
void AddSC_instance_ruby_sanctum()
{
using namespace RubySanctum;
new instance_ruby_sanctum();
}
@@ -24,6 +24,8 @@
#include "ScriptedGossip.h"
#include "SpellScript.h"
namespace RubySanctum
{
enum Texts
{
SAY_XERESTRASZA_EVENT = 0,
@@ -214,9 +216,11 @@ class spell_ruby_sanctum_rallying_shout : public SpellScriptLoader
return new spell_ruby_sanctum_rallying_shout_SpellScript();
}
};
}
void AddSC_ruby_sanctum()
{
using namespace RubySanctum;
new npc_xerestrasza();
new at_baltharus_plateau();
new spell_ruby_sanctum_rallying_shout();
@@ -23,6 +23,8 @@
#define RSScriptName "instance_ruby_sanctum"
#define DataHeader "RS"
namespace RubySanctum
{
uint32 const EncounterCount = 4;
enum RSDataTypes
@@ -134,5 +136,6 @@ inline AI* GetRubySanctumAI(T* obj)
{
return GetInstanceAI<AI>(obj, RSScriptName);
}
}
#endif // RUBY_SANCTUM_H_
@@ -30,6 +30,9 @@ EndScriptData */
#include "SpellScript.h"
#include "TemporarySummon.h"
#include "trial_of_the_champion.h"
namespace TrialOfTheChampion::ArgentChallenge
{
/*
enum Yells
{
@@ -679,9 +682,12 @@ class spell_paletress_summon_memory : public SpellScriptLoader
return new spell_paletress_summon_memory_SpellScript();
}
};
}
void AddSC_boss_argent_challenge()
{
using namespace TrialOfTheChampion;
using namespace TrialOfTheChampion::ArgentChallenge;
new boss_eadric();
new spell_eadric_radiance();
new boss_paletress();
@@ -27,6 +27,8 @@ EndScriptData */
#include "ScriptedEscortAI.h"
#include "trial_of_the_champion.h"
namespace TrialOfTheChampion::BlackKnight
{
enum Spells
{
//phase 1
@@ -377,9 +379,12 @@ public:
return GetTrialOfTheChampionAI<npc_black_knight_skeletal_gryphonAI>(creature);
}
};
}
void AddSC_boss_black_knight()
{
using namespace TrialOfTheChampion;
using namespace TrialOfTheChampion::BlackKnight;
new boss_black_knight();
new npc_risen_ghoul();
new npc_black_knight_skeletal_gryphon();
@@ -31,6 +31,8 @@ EndScriptData */
#include "trial_of_the_champion.h"
#include "Vehicle.h"
namespace TrialOfTheChampion::GrandChampions
{
enum Spells
{
//Vehicle
@@ -1026,9 +1028,12 @@ public:
return GetTrialOfTheChampionAI<boss_rouge_toc5AI>(creature);
}
};
}
void AddSC_boss_grand_champions()
{
using namespace TrialOfTheChampion;
using namespace TrialOfTheChampion::GrandChampions;
new generic_vehicleAI_toc5();
new boss_warrior_toc5();
new boss_mage_toc5();
@@ -32,6 +32,8 @@ EndScriptData */
#include "Player.h"
#include "trial_of_the_champion.h"
namespace TrialOfTheChampion
{
#define MAX_ENCOUNTER 4
class instance_trial_of_the_champion : public InstanceMapScript
@@ -338,8 +340,10 @@ public:
return new instance_trial_of_the_champion_InstanceMapScript(map);
}
};
}
void AddSC_instance_trial_of_the_champion()
{
using namespace TrialOfTheChampion;
new instance_trial_of_the_champion();
}
@@ -39,6 +39,8 @@ EndContentData */
#include "trial_of_the_champion.h"
#include "Vehicle.h"
namespace TrialOfTheChampion
{
enum Yells
{
SAY_INTRO_1 = 0,
@@ -493,8 +495,10 @@ public:
return GetTrialOfTheChampionAI<npc_announcer_toc5AI>(creature);
}
};
}
void AddSC_trial_of_the_champion()
{
using namespace TrialOfTheChampion;
new npc_announcer_toc5();
}
@@ -20,6 +20,8 @@
#include "CreatureAIImpl.h"
namespace TrialOfTheChampion
{
#define ToCScriptName "instance_trial_of_the_champion"
#define DataHeader "TC"
@@ -134,5 +136,6 @@ inline AI* GetTrialOfTheChampionAI(T* obj)
{
return GetInstanceAI<AI>(obj, ToCScriptName);
}
}
#endif
@@ -31,6 +31,8 @@
#include "TemporarySummon.h"
#include "trial_of_the_crusader.h"
namespace TrialOfTheCrusader::AnubarakTrial
{
enum Yells
{
SAY_INTRO = 0,
@@ -900,9 +902,12 @@ class spell_anubarak_leeching_swarm : public SpellScriptLoader
return new spell_anubarak_leeching_swarm_AuraScript();
}
};
}
void AddSC_boss_anubarak_trial()
{
using namespace TrialOfTheCrusader;
using namespace TrialOfTheCrusader::AnubarakTrial;
new boss_anubarak_trial();
new npc_swarm_scarab();
new npc_nerubian_burrower();
@@ -28,6 +28,8 @@
#include "TemporarySummon.h"
#include "trial_of_the_crusader.h"
namespace TrialOfTheCrusader::FactionChampions
{
enum Yells
{
SAY_KILL_PLAYER = 6
@@ -2393,9 +2395,12 @@ class spell_toc_heroism : public SpellScriptLoader
return new spell_toc_heroism_SpellScript();
}
};
}
void AddSC_boss_faction_champions()
{
using namespace TrialOfTheCrusader;
using namespace TrialOfTheCrusader::FactionChampions;
new boss_toc_champion_controller();
new npc_toc_druid();
new npc_toc_shaman();
@@ -24,6 +24,8 @@
#include "SpellScript.h"
#include "trial_of_the_crusader.h"
namespace TrialOfTheCrusader::LordJaraxxus
{
enum Yells
{
SAY_INTRO = 0,
@@ -607,9 +609,12 @@ public:
return new spell_fel_streak_visual_SpellScript();
}
};
}
void AddSC_boss_jaraxxus()
{
using namespace TrialOfTheCrusader;
using namespace TrialOfTheCrusader::LordJaraxxus;
new boss_jaraxxus();
new npc_legion_flame();
new npc_infernal_volcano();
@@ -28,6 +28,8 @@
#include "trial_of_the_crusader.h"
#include "Vehicle.h"
namespace TrialOfTheCrusader::NorthrendBeats
{
enum Yells
{
// Gormok
@@ -1418,9 +1420,12 @@ public:
return new spell_jormungars_paralysis_AuraScript();
}
};
}
void AddSC_boss_northrend_beasts()
{
using namespace TrialOfTheCrusader;
using namespace TrialOfTheCrusader::NorthrendBeats;
new boss_gormok();
new npc_snobold_vassal();
new npc_firebomb();
@@ -32,6 +32,8 @@
#include "SpellScript.h"
#include "trial_of_the_crusader.h"
namespace TrialOfTheCrusader::TwinValkyr
{
enum Texts
{
SAY_AGGRO = 0,
@@ -869,9 +871,12 @@ class spell_power_of_the_twins : public SpellScriptLoader
return new spell_power_of_the_twins_AuraScript();
}
};
}
void AddSC_boss_twin_valkyr()
{
using namespace TrialOfTheCrusader;
using namespace TrialOfTheCrusader::TwinValkyr;
new boss_fjola();
new boss_eydis();
new npc_unleashed_light();
@@ -26,6 +26,8 @@
#include "TemporarySummon.h"
#include "trial_of_the_crusader.h"
namespace TrialOfTheCrusader
{
BossBoundaryData const boundaries =
{
{ BOSS_BEASTS, new CircleBoundary(Position(563.26f, 139.6f), 75.0) },
@@ -733,8 +735,10 @@ class instance_trial_of_the_crusader : public InstanceMapScript
return new instance_trial_of_the_crusader_InstanceMapScript(map);
}
};
}
void AddSC_instance_trial_of_the_crusader()
{
using namespace TrialOfTheCrusader;
new instance_trial_of_the_crusader();
}
@@ -30,6 +30,8 @@
#include "TemporarySummon.h"
#include "trial_of_the_crusader.h"
namespace TrialOfTheCrusader
{
enum Yells
{
// Highlord Tirion Fordring - 34996
@@ -1048,9 +1050,11 @@ class npc_varian_toc : public CreatureScript
return GetTrialOfTheCrusaderAI<npc_varian_tocAI>(creature);
}
};
}
void AddSC_trial_of_the_crusader()
{
using namespace TrialOfTheCrusader;
new boss_lich_king_toc();
new npc_announcer_toc10();
new npc_fizzlebang_toc();
@@ -20,11 +20,13 @@
#include "CreatureAIImpl.h"
struct Position;
namespace TrialOfTheCrusader
{
#define ToCrScriptName "instance_trial_of_the_crusader"
#define DataHeader "TCR"
struct Position;
enum TCRDataTypes
{
BOSS_BEASTS = 0,
@@ -224,5 +226,6 @@ inline AI* GetTrialOfTheCrusaderAI(T* obj)
{
return GetInstanceAI<AI>(obj, ToCrScriptName);
}
}
#endif
@@ -25,6 +25,8 @@
#include "ObjectAccessor.h"
#include "ScriptedCreature.h"
namespace DrakTharonKeep::KingDread
{
enum Spells
{
SPELL_BELLOWING_ROAR = 22686, // fears the group, can be resisted/dispelled
@@ -301,9 +303,12 @@ class achievement_king_dred : public AchievementCriteriaScript
return false;
}
};
}
void AddSC_boss_king_dred()
{
using namespace DrakTharonKeep;
using namespace DrakTharonKeep::KingDread;
new boss_king_dred();
new npc_drakkari_gutripper();
new npc_drakkari_scytheclaw();
@@ -24,6 +24,8 @@
#include "ScriptedCreature.h"
#include "SpellScript.h"
namespace DrakTharonKeep::Novos
{
enum Yells
{
SAY_AGGRO = 0,
@@ -396,9 +398,12 @@ class spell_novos_summon_minions : public SpellScriptLoader
return new spell_novos_summon_minions_SpellScript();
}
};
}
void AddSC_boss_novos()
{
using namespace DrakTharonKeep;
using namespace DrakTharonKeep::Novos;
new boss_novos();
new npc_crystal_channel_target();
new spell_novos_summon_minions();
@@ -20,6 +20,8 @@
#include "ScriptedCreature.h"
#include "SpellScript.h"
namespace DrakTharonKeep::TharonJa
{
/*
* Known Issues: Spell 49356 and 53463 will be interrupted for an unknown reason
*/
@@ -235,9 +237,12 @@ class spell_tharon_ja_clear_gift_of_tharon_ja : public SpellScriptLoader
return new spell_tharon_ja_clear_gift_of_tharon_ja_SpellScript();
}
};
}
void AddSC_boss_tharon_ja()
{
using namespace DrakTharonKeep;
using namespace DrakTharonKeep::TharonJa;
new boss_tharon_ja();
new spell_tharon_ja_clear_gift_of_tharon_ja();
}
@@ -24,6 +24,8 @@
#include "SpellAuraEffects.h"
#include "SpellScript.h"
namespace DrakTharonKeep::Trollgore
{
enum Spells
{
SPELL_INFECTED_WOUND = 49637,
@@ -345,9 +347,12 @@ class achievement_consumption_junction : public AchievementCriteriaScript
return false;
}
};
}
void AddSC_boss_trollgore()
{
using namespace DrakTharonKeep;
using namespace DrakTharonKeep::Trollgore;
new boss_trollgore();
new npc_drakkari_invader();
new spell_trollgore_consume();
@@ -20,6 +20,8 @@
#include "CreatureAIImpl.h"
namespace DrakTharonKeep
{
#define DrakTharonKeepScriptName "instance_drak_tharon_keep"
#define DataHeader "DTK"
@@ -91,5 +93,6 @@ inline AI* GetDrakTharonKeepAI(T* obj)
{
return GetInstanceAI<AI>(obj, DrakTharonKeepScriptName);
}
}
#endif // DRAK_THARON_KEEP_H_
@@ -22,6 +22,8 @@
#include "Map.h"
#include "ScriptedCreature.h"
namespace DrakTharonKeep
{
class instance_drak_tharon_keep : public InstanceMapScript
{
public:
@@ -169,8 +171,10 @@ class instance_drak_tharon_keep : public InstanceMapScript
return new instance_drak_tharon_keep_InstanceScript(map);
}
};
}
void AddSC_instance_drak_tharon_keep()
{
using namespace DrakTharonKeep;
new instance_drak_tharon_keep();
}
@@ -25,6 +25,8 @@
#include "SpellAuraEffects.h"
#include "SpellScript.h"
namespace ForgeOfSouls::Bronjahm
{
enum Yells
{
SAY_AGGRO = 0,
@@ -394,9 +396,12 @@ class achievement_bronjahm_soul_power : public AchievementCriteriaScript
return target && target->GetAI()->GetData(DATA_SOUL_POWER) >= 4;
}
};
}
void AddSC_boss_bronjahm()
{
using namespace ForgeOfSouls;
using namespace ForgeOfSouls::Bronjahm;
new boss_bronjahm();
new npc_corrupted_soul_fragment();
new spell_bronjahm_magic_bane();
@@ -28,6 +28,8 @@
#include "SpellScript.h"
#include "TemporarySummon.h"
namespace ForgeOfSouls::DevourerOfSouls
{
/*
* @todo
* - Fix model id during unleash soul -> seems DB issue 36503 is missing (likewise 36504 is also missing).
@@ -496,9 +498,12 @@ class achievement_three_faced : public AchievementCriteriaScript
return false;
}
};
}
void AddSC_boss_devourer_of_souls()
{
using namespace ForgeOfSouls;
using namespace ForgeOfSouls::DevourerOfSouls;
new boss_devourer_of_souls();
new spell_devourer_of_souls_mirrored_soul();
new spell_devourer_of_souls_mirrored_soul_proc();
@@ -21,6 +21,8 @@
#include "ScriptedCreature.h"
#include "ScriptedGossip.h"
namespace ForgeOfSouls
{
enum Events
{
EVENT_NONE,
@@ -275,9 +277,11 @@ public:
return GetForgeOfSoulsAI<npc_jaina_fosAI>(creature);
}
};
}
void AddSC_forge_of_souls()
{
using namespace ForgeOfSouls;
new npc_sylvanas_fos();
new npc_jaina_fos();
}
@@ -20,6 +20,8 @@
#include "CreatureAIImpl.h"
namespace ForgeOfSouls
{
#define FoSScriptName "instance_forge_of_souls"
#define DataHeader "FOS"
@@ -62,5 +64,6 @@ inline AI* GetForgeOfSoulsAI(T* obj)
{
return GetInstanceAI<AI>(obj, FoSScriptName);
}
}
#endif // FORGE_OF_SOULS_H_
@@ -23,7 +23,8 @@
#include "Map.h"
#include "Player.h"
namespace ForgeOfSouls
{
BossBoundaryData const boundaries =
{
{ DATA_BRONJAHM, new CircleBoundary(Position(5297.3f, 2506.45f), 100.96) },
@@ -129,8 +130,10 @@ class instance_forge_of_souls : public InstanceMapScript
return new instance_forge_of_souls_InstanceScript(map);
}
};
}
void AddSC_instance_forge_of_souls()
{
using namespace ForgeOfSouls;
new instance_forge_of_souls();
}
@@ -21,6 +21,10 @@
#include "InstanceScript.h"
#include "SpellMgr.h"
namespace HallsOfReflection::Falric
{
using namespace HallsOfReflection::FarlicAndMarwyn;
enum Texts
{
SAY_AGGRO = 0,
@@ -154,8 +158,11 @@ class boss_falric : public CreatureScript
return GetHallsOfReflectionAI<boss_falricAI>(creature);
}
};
}
void AddSC_boss_falric()
{
using namespace HallsOfReflection;
using namespace HallsOfReflection::Falric;
new boss_falric();
}
@@ -19,6 +19,8 @@
#include "halls_of_reflection.h"
#include "InstanceScript.h"
namespace HallsOfReflection::FarlicAndMarwyn
{
boss_horAI::boss_horAI(Creature* creature, uint32 bossId) : BossAI(creature, bossId)
{
}
@@ -51,3 +53,4 @@ void boss_horAI::JustSummoned(Creature* summon)
{
summons.Summon(summon);
}
}
@@ -20,6 +20,8 @@
#include "ScriptedCreature.h"
namespace HallsOfReflection::FarlicAndMarwyn
{
// Base class for FALRIC and MARWYN
struct boss_horAI : BossAI
{
@@ -28,5 +30,6 @@ struct boss_horAI : BossAI
void DoAction(int32 actionId) override;
void JustSummoned(Creature* summon) override;
};
}
#endif // boss_horAI_h__
@@ -22,6 +22,10 @@
#include "SpellAuraEffects.h"
#include "SpellScript.h"
namespace HallsOfReflection::Marwyn
{
using namespace HallsOfReflection::FarlicAndMarwyn;
enum Texts
{
SAY_AGGRO = 0,
@@ -164,9 +168,12 @@ class spell_marwyn_shared_suffering : public SpellScriptLoader
return new spell_marwyn_shared_suffering_AuraScript();
}
};
}
void AddSC_boss_marwyn()
{
using namespace HallsOfReflection;
using namespace HallsOfReflection::Marwyn;
new boss_marwyn();
new spell_marwyn_shared_suffering();
}
@@ -29,6 +29,8 @@
#include "TemporarySummon.h"
#include "Transport.h"
namespace HallsOfReflection
{
enum Text
{
SAY_JAINA_INTRO_1 = 0,
@@ -2857,9 +2859,11 @@ class spell_hor_quel_delars_will : public SpellScript
OnEffectHitTarget.Register(&spell_hor_quel_delars_will::HandleReagent, EFFECT_0, SPELL_EFFECT_FORCE_CAST);
}
};
}
void AddSC_halls_of_reflection()
{
using namespace HallsOfReflection;
new at_hor_intro_start();
new at_hor_waves_restarter();
new at_hor_impenetrable_door();
@@ -22,6 +22,8 @@
#include "EventProcessor.h"
#include "ObjectGuid.h"
namespace HallsOfReflection
{
#define HoRScriptName "instance_halls_of_reflection"
#define DataHeader "HOR"
@@ -224,5 +226,6 @@ inline AI* GetHallsOfReflectionAI(T* obj)
{
return GetInstanceAI<AI>(obj, HoRScriptName);
}
}
#endif // HALLS_OF_REFLECTION_H_
@@ -28,6 +28,8 @@
#include "Transport.h"
#include "TransportMgr.h"
namespace HallsOfReflection
{
Position const JainaSpawnPos = { 5236.659f, 1929.894f, 707.7781f, 0.8726646f }; // Jaina Spawn Position
Position const SylvanasSpawnPos = { 5236.667f, 1929.906f, 707.7781f, 0.8377581f }; // Sylvanas Spawn Position (sniffed)
Position const JainaSpawnPos2 = { 5549.011f, 2257.041f, 733.0120f, 1.153993f }; // Jaina Spawn Position 2
@@ -798,8 +800,10 @@ class instance_halls_of_reflection : public InstanceMapScript
return new instance_halls_of_reflection_InstanceMapScript(map);
}
};
}
void AddSC_instance_halls_of_reflection()
{
using namespace HallsOfReflection;
new instance_halls_of_reflection();
}
@@ -25,6 +25,8 @@
#include "SpellAuras.h"
#include "SpellScript.h"
namespace PitOfSaron::ForgemasterGarfrost
{
enum Yells
{
SAY_AGGRO = 0,
@@ -331,9 +333,12 @@ class achievement_doesnt_go_to_eleven : public AchievementCriteriaScript
return false;
}
};
}
void AddSC_boss_garfrost()
{
using namespace PitOfSaron;
using namespace PitOfSaron::ForgemasterGarfrost;
new boss_garfrost();
new spell_garfrost_permafrost();
new achievement_doesnt_go_to_eleven();
@@ -28,6 +28,8 @@
#include "TemporarySummon.h"
#include "Vehicle.h"
namespace PitOfSaron::KrickAndIck
{
enum Spells
{
SPELL_MIGHTY_KICK = 69021, //ick's spell
@@ -716,9 +718,12 @@ class spell_krick_pursuit_confusion : public SpellScriptLoader
return new spell_krick_pursuit_confusion_AuraScript();
}
};
}
void AddSC_boss_ick()
{
using namespace PitOfSaron;
using namespace PitOfSaron::KrickAndIck;
new boss_ick();
new boss_krick();
new spell_krick_explosive_barrage();
@@ -27,6 +27,8 @@
#include "TemporarySummon.h"
#include "Vehicle.h"
namespace PitOfSaron::ScourgelordTyrannus
{
enum Yells
{
// Gorkun
@@ -544,9 +546,12 @@ class at_tyrannus_event_starter : public AreaTriggerScript
return false;
}
};
}
void AddSC_boss_tyrannus()
{
using namespace PitOfSaron;
using namespace PitOfSaron::ScourgelordTyrannus;
new boss_tyrannus();
new boss_rimefang();
new spell_tyrannus_overlord_brand();
@@ -23,6 +23,8 @@
#include "pit_of_saron.h"
#include "Player.h"
namespace PitOfSaron
{
// positions for Martin Victus (37591) and Gorkun Ironskull (37592)
Position const SlaveLeaderPos = {689.7158f, -104.8736f, 513.7360f, 0.0f};
// position for Jaina and Sylvanas
@@ -302,8 +304,10 @@ class instance_pit_of_saron : public InstanceMapScript
return new instance_pit_of_saron_InstanceScript(map);
}
};
}
void AddSC_instance_pit_of_saron()
{
using namespace PitOfSaron;
new instance_pit_of_saron();
}
@@ -26,6 +26,8 @@
#include "SpellScript.h"
#include "Vehicle.h"
namespace PitOfSaron
{
enum Spells
{
SPELL_FIREBALL = 69583, //Ymirjar Flamebearer
@@ -379,9 +381,11 @@ public:
return true;
}
};
}
void AddSC_pit_of_saron()
{
using namespace PitOfSaron;
new npc_ymirjar_flamebearer();
new npc_iceborn_protodrake();
new npc_geist_ambusher();
@@ -21,6 +21,8 @@
#include "CreatureAIImpl.h"
#include "EventProcessor.h"
namespace PitOfSaron
{
#define PoSScriptName "instance_pit_of_saron"
#define DataHeader "POS"
@@ -126,5 +128,6 @@ inline AI* GetPitOfSaronAI(T* obj)
{
return GetInstanceAI<AI>(obj, PoSScriptName);
}
}
#endif // PIT_OF_SARON_H_
@@ -26,6 +26,8 @@
#include "ScriptedCreature.h"
#include "SpellInfo.h"
namespace Gundrak::DrakkariColossus
{
enum Texts
{
// Drakkari Elemental
@@ -479,9 +481,12 @@ public:
return GetGundrakAI<npc_living_mojoAI>(creature);
}
};
}
void AddSC_boss_drakkari_colossus()
{
using namespace Gundrak;
using namespace Gundrak::DrakkariColossus;
new boss_drakkari_colossus();
new boss_drakkari_elemental();
new npc_living_mojo();
@@ -19,6 +19,8 @@
#include "gundrak.h"
#include "ScriptedCreature.h"
namespace Gundrak::Eck
{
enum Texts
{
EMOTE_SPAWN = 0
@@ -118,8 +120,11 @@ class boss_eck : public CreatureScript
return GetGundrakAI<boss_eckAI>(creature);
}
};
}
void AddSC_boss_eck()
{
using namespace Gundrak;
using namespace Gundrak::Eck;
new boss_eck();
}
@@ -22,6 +22,8 @@
#include "SpellInfo.h"
#include "SpellScript.h"
namespace Gundrak::GalDarah
{
enum Spells
{
SPELL_IMPALING_CHARGE = 54956,
@@ -323,9 +325,12 @@ class achievement_share_the_love : public AchievementCriteriaScript
return false;
}
};
}
void AddSC_boss_gal_darah()
{
using namespace Gundrak;
using namespace Gundrak::GalDarah;
new boss_gal_darah();
new spell_gal_darah_impaling_charge();
new spell_gal_darah_stampede_charge();
@@ -21,6 +21,8 @@
#include "SpellInfo.h"
#include "SpellScript.h"
namespace Gundrak::Moorabi
{
enum Spells
{
SPELL_SUMMON_PHANTOM = 55205,
@@ -246,9 +248,12 @@ class spell_moorabi_mojo_frenzy : public SpellScriptLoader
return new spell_moorabi_mojo_frenzy_AuraScript();
}
};
}
void AddSC_boss_moorabi()
{
using namespace Gundrak;
using namespace Gundrak::Moorabi;
new boss_moorabi();
new achievement_less_rabi();
new spell_moorabi_mojo_frenzy();
@@ -23,6 +23,8 @@
#include "SpellAuras.h"
#include "TemporarySummon.h"
namespace Gundrak::SladRan
{
enum Spells
{
SPELL_POISON_NOVA = 55081,
@@ -311,9 +313,12 @@ class achievement_snakes_whyd_it_have_to_be_snakes : public AchievementCriteriaS
return false;
}
};
}
void AddSC_boss_slad_ran()
{
using namespace Gundrak;
using namespace Gundrak::SladRan;
new boss_slad_ran();
new npc_slad_ran_constrictor();
new npc_slad_ran_viper();
@@ -20,6 +20,8 @@
#include "CreatureAIImpl.h"
namespace Gundrak
{
#define GundrakScriptName "instance_gundrak"
#define DataHeader "GD"
@@ -98,5 +100,6 @@ inline AI* GetGundrakAI(T* obj)
{
return GetInstanceAI<AI>(obj, GundrakScriptName);
}
}
#endif // GUNDRAK_H_
@@ -24,6 +24,8 @@
#include "InstanceScript.h"
#include "Map.h"
namespace Gundrak
{
DoorData const doorData[] =
{
{ GO_GAL_DARAH_DOOR_1, DATA_GAL_DARAH, DOOR_TYPE_PASSAGE },
@@ -377,9 +379,11 @@ class go_gundrak_altar : public GameObjectScript
return new go_gundrak_altarAI(go);
}
};
}
void AddSC_instance_gundrak()
{
using namespace Gundrak;
new instance_gundrak();
new go_gundrak_altar();
}
@@ -29,6 +29,8 @@
#include "SpellScript.h"
#include "TemporarySummon.h"
namespace IcecrownCitadel::BloodPrinceCouncil
{
enum Texts
{
// Blood Queen Lana'Thel
@@ -1506,9 +1508,12 @@ class at_blood_prince_council_start_intro : public AreaTriggerScript
return true;
}
};
}
void AddSC_boss_blood_prince_council()
{
using namespace IcecrownCitadel;
using namespace IcecrownCitadel::BloodPrinceCouncil;
new boss_blood_council_controller();
new boss_prince_keleseth_icc();
new boss_prince_taldaram_icc();
@@ -27,6 +27,8 @@
#include "SpellMgr.h"
#include "SpellScript.h"
namespace IcecrownCitadel::BloodQueenLanaThel
{
enum Texts
{
SAY_AGGRO = 0,
@@ -814,9 +816,12 @@ class achievement_once_bitten_twice_shy_v : public AchievementCriteriaScript
return false;
}
};
}
void AddSC_boss_blood_queen_lana_thel()
{
using namespace IcecrownCitadel;
using namespace IcecrownCitadel::BloodQueenLanaThel;
new boss_blood_queen_lana_thel();
new spell_blood_queen_vampiric_bite();
new spell_blood_queen_frenzied_bloodthirst();
@@ -27,6 +27,8 @@
#include "SpellAuras.h"
#include "SpellScript.h"
namespace IcecrownCitadel::DeathbringerSaurfang
{
enum ScriptTexts
{
// Deathbringer Saurfang
@@ -1367,9 +1369,12 @@ class achievement_ive_gone_and_made_a_mess : public AchievementCriteriaScript
return false;
}
};
}
void AddSC_boss_deathbringer_saurfang()
{
using namespace IcecrownCitadel;
using namespace IcecrownCitadel::DeathbringerSaurfang;
new boss_deathbringer_saurfang();
new npc_high_overlord_saurfang_icc();
new npc_muradin_bronzebeard_icc();
@@ -26,6 +26,8 @@
#include "SpellMgr.h"
#include "SpellScript.h"
namespace IcecrownCitadel::Festergut
{
enum ScriptTexts
{
SAY_STINKY_DEAD = 0,
@@ -480,9 +482,12 @@ class achievement_flu_shot_shortage : public AchievementCriteriaScript
return false;
}
};
}
void AddSC_boss_festergut()
{
using namespace IcecrownCitadel;
using namespace IcecrownCitadel::Festergut;
new boss_festergut();
new npc_stinky_icc();
new spell_festergut_pungent_blight();
@@ -37,6 +37,8 @@
#include "TransportMgr.h"
#include "Vehicle.h"
namespace IcecrownCitadel::IcecrownGunshipBattle
{
enum Texts
{
// High Overlord Saurfang
@@ -2432,9 +2434,12 @@ class achievement_im_on_a_boat : public AchievementCriteriaScript
return target->GetAI() && target->GetAI()->GetData(ACTION_SHIP_VISITS) <= 2;
}
};
}
void AddSC_boss_icecrown_gunship_battle()
{
using namespace IcecrownCitadel;
using namespace IcecrownCitadel::IcecrownGunshipBattle;
new npc_gunship();
new npc_high_overlord_saurfang_igb();
new npc_muradin_bronzebeard_igb();
@@ -27,6 +27,8 @@
#include "SpellScript.h"
#include "TemporarySummon.h"
namespace IcecrownCitadel::LadyDeathwhisper
{
enum ScriptTexts
{
// Lady Deathwhisper
@@ -883,9 +885,12 @@ class spell_deathwhisper_summon_spirits : public SpellScriptLoader
return new spell_deathwhisper_summon_spirits_SpellScript();
}
};
}
void AddSC_boss_lady_deathwhisper()
{
using namespace IcecrownCitadel;
using namespace IcecrownCitadel::LadyDeathwhisper;
new boss_lady_deathwhisper();
new npc_cult_fanatic();
new npc_cult_adherent();
@@ -28,6 +28,8 @@
#include "SpellScript.h"
#include "TemporarySummon.h"
namespace IcecrownCitadel::LordMarrowgar
{
enum ScriptTexts
{
SAY_ENTER_ZONE = 0,
@@ -758,9 +760,12 @@ class at_lord_marrowgar_entrance : public OnlyOnceAreaTriggerScript
}
};
}
void AddSC_boss_lord_marrowgar()
{
using namespace IcecrownCitadel;
using namespace IcecrownCitadel::LordMarrowgar;
new boss_lord_marrowgar();
new npc_coldflame();
new npc_bone_spike();
@@ -31,6 +31,8 @@
#include "TemporarySummon.h"
#include "Vehicle.h"
namespace IcecrownCitadel::ProfessorPutricide
{
enum Say
{
// Festergut
@@ -1607,9 +1609,12 @@ class spell_stinky_precious_decimate : public SpellScriptLoader
return new spell_stinky_precious_decimate_SpellScript();
}
};
}
void AddSC_boss_professor_putricide()
{
using namespace IcecrownCitadel;
using namespace IcecrownCitadel::ProfessorPutricide;
new boss_professor_putricide();
new npc_volatile_ooze();
new npc_gas_cloud();
@@ -26,6 +26,8 @@
#include "SpellScript.h"
#include "TemporarySummon.h"
namespace IcecrownCitadel::Rotface
{
// KNOWN BUGS:
// ~ No Slime Spray animation directly at target spot
@@ -852,9 +854,12 @@ class spell_rotface_vile_gas_trigger : public SpellScriptLoader
return new spell_rotface_vile_gas_trigger_SpellScript();
}
};
}
void AddSC_boss_rotface()
{
using namespace IcecrownCitadel;
using namespace IcecrownCitadel::Rotface;
new boss_rotface();
new npc_little_ooze();
new npc_big_ooze();
@@ -29,6 +29,8 @@
#include "SpellScript.h"
#include "TemporarySummon.h"
namespace IcecrownCitadel::Sindragosa
{
enum Texts
{
SAY_AGGRO = 0, // You are fools to have come to this place! The icy winds of Northrend will consume your souls!
@@ -1630,9 +1632,12 @@ class achievement_all_you_can_eat : public AchievementCriteriaScript
return target->GetAI()->GetData(DATA_MYSTIC_BUFFET_STACK) <= 5;
}
};
}
void AddSC_boss_sindragosa()
{
using namespace IcecrownCitadel;
using namespace IcecrownCitadel::Sindragosa;
new boss_sindragosa();
new npc_ice_tomb();
new npc_spinestalker();
@@ -32,6 +32,8 @@
#include "Vehicle.h"
#include "Weather.h"
namespace IcecrownCitadel::TheLichKing
{
enum Texts
{
// The Lich King
@@ -3154,9 +3156,12 @@ class achievement_neck_deep_in_vile : public AchievementCriteriaScript
return !target->GetAI()->GetData(DATA_VILE);
}
};
}
void AddSC_boss_the_lich_king()
{
using namespace IcecrownCitadel;
using namespace IcecrownCitadel::TheLichKing;
new boss_the_lich_king();
new npc_tirion_fordring_tft();
new npc_shambling_horror_icc();
@@ -28,6 +28,8 @@
#include "SpellAuraEffects.h"
#include "SpellScript.h"
namespace IcecrownCitadel::ValithriaDreamwalker
{
enum Texts
{
// The Lich King
@@ -1449,9 +1451,12 @@ class achievement_portal_jockey : public AchievementCriteriaScript
return target && !target->GetAI()->GetData(MISSED_PORTALS);
}
};
}
void AddSC_boss_valithria_dreamwalker()
{
using namespace IcecrownCitadel;
using namespace IcecrownCitadel::ValithriaDreamwalker;
new boss_valithria_dreamwalker();
new npc_green_dragon_combat_trigger();
new npc_the_lich_king_controller();
@@ -29,6 +29,8 @@
#include "TemporarySummon.h"
#include "VehicleDefines.h"
namespace IcecrownCitadel
{
enum ICCTexts
{
// Highlord Tirion Fordring (at Light's Hammer)
@@ -1976,9 +1978,11 @@ class at_icc_start_frostwing_gauntlet : public AreaTriggerScript
return true;
}
};
}
void AddSC_icecrown_citadel()
{
using namespace IcecrownCitadel;
new npc_highlord_tirion_fordring_lh();
new npc_frost_freeze_trap();
new boss_sister_svalna();
@@ -24,6 +24,8 @@
struct Position;
enum TriggerCastFlags : uint32;
namespace IcecrownCitadel
{
#define ICCScriptName "instance_icecrown_citadel"
#define DataHeader "IC"
@@ -31,11 +33,17 @@ uint32 const EncounterCount = 13;
uint32 const WeeklyNPCs = 9;
// Defined in boss_sindragosa.cpp
extern Position const SindragosaSpawnPos;
namespace Sindragosa
{
extern Position const SindragosaSpawnPos;
}
// Defined in boss_the_lich_king.cpp
extern Position const TerenasSpawn;
extern Position const TerenasSpawnHeroic;
extern Position const SpiritWardenSpawn;
namespace TheLichKing
{
extern Position const TerenasSpawn;
extern Position const TerenasSpawnHeroic;
extern Position const SpiritWardenSpawn;
}
// Shared spells used by more than one script
enum ICSharedSpells
@@ -504,5 +512,6 @@ inline AI* GetIcecrownCitadelAI(T* obj)
{
return GetInstanceAI<AI>(obj, ICCScriptName);
}
}
#endif // ICECROWN_CITADEL_H_
@@ -27,6 +27,8 @@
#include "SpellMgr.h"
#include "Transport.h"
namespace IcecrownCitadel
{
static std::vector<uint32> const TeleportSpells =
{
LIGHT_S_HAMMER_TELEPORT, // 0
@@ -106,9 +108,11 @@ class at_frozen_throne_teleport : public AreaTriggerScript
return true;
}
};
}
void AddSC_icecrown_citadel_teleport()
{
using namespace IcecrownCitadel;
new icecrown_citadel_teleport();
new at_frozen_throne_teleport();
}
@@ -28,6 +28,8 @@
#include "Transport.h"
#include "TransportMgr.h"
namespace IcecrownCitadel
{
enum EventIds
{
EVENT_PLAYERS_GUNSHIP_SPAWN = 22663,
@@ -389,8 +391,8 @@ class instance_icecrown_citadel : public InstanceMapScript
FrostwyrmGUIDs.erase(creature->GetSpawnId());
if (FrostwyrmGUIDs.empty())
{
instance->LoadGrid(SindragosaSpawnPos.GetPositionX(), SindragosaSpawnPos.GetPositionY());
if (Creature* boss = instance->SummonCreature(NPC_SINDRAGOSA, SindragosaSpawnPos))
instance->LoadGrid(Sindragosa::SindragosaSpawnPos.GetPositionX(), Sindragosa::SindragosaSpawnPos.GetPositionY());
if (Creature* boss = instance->SummonCreature(NPC_SINDRAGOSA, Sindragosa::SindragosaSpawnPos))
boss->AI()->DoAction(ACTION_START_FROSTWYRM);
}
break;
@@ -1251,7 +1253,7 @@ class instance_icecrown_citadel : public InstanceMapScript
}
break;
case EVENT_TELEPORT_TO_FROSTMOURNE: // Harvest Soul (normal mode)
if (Creature* terenas = instance->SummonCreature(NPC_TERENAS_MENETHIL_FROSTMOURNE, TerenasSpawn, SummonCreatureExtraArgs().SetSummonDuration(63000)))
if (Creature* terenas = instance->SummonCreature(NPC_TERENAS_MENETHIL_FROSTMOURNE, TheLichKing::TerenasSpawn, SummonCreatureExtraArgs().SetSummonDuration(63000)))
{
terenas->AI()->DoAction(ACTION_FROSTMOURNE_INTRO);
std::list<Creature*> triggers;
@@ -1263,7 +1265,7 @@ class instance_icecrown_citadel : public InstanceMapScript
visual->CastSpell(visual, SPELL_FROSTMOURNE_TELEPORT_VISUAL, true);
}
if (Creature* warden = instance->SummonCreature(NPC_SPIRIT_WARDEN, SpiritWardenSpawn, SummonCreatureExtraArgs().SetSummonDuration(63000)))
if (Creature* warden = instance->SummonCreature(NPC_SPIRIT_WARDEN, TheLichKing::SpiritWardenSpawn, SummonCreatureExtraArgs().SetSummonDuration(63000)))
{
terenas->AI()->AttackStart(warden);
warden->GetThreatManager().AddThreat(terenas, 300000.0f, nullptr, true, true);
@@ -1346,8 +1348,10 @@ class instance_icecrown_citadel : public InstanceMapScript
return new instance_icecrown_citadel_InstanceMapScript(map);
}
};
}
void AddSC_instance_icecrown_citadel()
{
using namespace IcecrownCitadel;
new instance_icecrown_citadel();
}
@@ -19,6 +19,8 @@
#include "ScriptedCreature.h"
#include "BattlegroundIC.h"
namespace IsleOfConquest
{
enum BossSpells
{
SPELL_BRUTAL_STRIKE = 58460,
@@ -126,8 +128,10 @@ public:
return new boss_ioc_horde_allianceAI(creature);
}
};
}
void AddSC_boss_ioc_horde_alliance()
{
using namespace IsleOfConquest;
new boss_ioc_horde_alliance();
}
@@ -28,6 +28,8 @@
#include "SpellScript.h"
#include "Vehicle.h"
namespace IsleOfConquest
{
// TO-DO: This should be done with SmartAI, but yet it does not correctly support vehicles's AIs.
// Even adding ReactState Passive we still have issues using SmartAI.
@@ -302,9 +304,11 @@ class spell_ioc_seaforium_blast_credit : public SpellScriptLoader
return new spell_ioc_seaforium_blast_credit_SpellScript();
}
};
}
void AddSC_isle_of_conquest()
{
using namespace IsleOfConquest;
new npc_four_car_garage();
new npc_ioc_gunship_captain();
new spell_ioc_gunship_portal();
@@ -22,6 +22,8 @@
#include "Player.h"
#include "ScriptedCreature.h"
namespace Naxxramas::AnubRekhan
{
enum AnubSays
{
SAY_AGGRO = 0,
@@ -255,10 +257,12 @@ class at_anubrekhan_entrance : public OnlyOnceAreaTriggerScript
return true;
}
};
}
void AddSC_boss_anubrekhan()
{
using namespace Naxxramas;
using namespace Naxxramas::AnubRekhan;
new boss_anubrekhan();
new at_anubrekhan_entrance();
}
@@ -24,6 +24,8 @@
#include "SpellAuras.h"
#include "SpellInfo.h"
namespace Naxxramas::Faerlina
{
enum Yells
{
SAY_GREET = 0,
@@ -278,9 +280,12 @@ class at_faerlina_entrance : public OnlyOnceAreaTriggerScript
return true;
}
};
}
void AddSC_boss_faerlina()
{
using namespace Naxxramas;
using namespace Naxxramas::Faerlina;
new boss_faerlina();
new npc_faerlina_add();
new at_faerlina_entrance();
@@ -28,6 +28,8 @@
#include "SpellAuraEffects.h"
#include "SpellScript.h"
namespace Naxxramas::FourHorsemen
{
enum Horseman
{
THANE = DATA_THANE,
@@ -742,9 +744,12 @@ class spell_four_horsemen_mark : public SpellScriptLoader
return new spell_four_horsemen_mark_AuraScript();
}
};
}
void AddSC_boss_four_horsemen()
{
using namespace Naxxramas;
using namespace Naxxramas::FourHorsemen;
new boss_four_horsemen_baron();
new boss_four_horsemen_thane();
new boss_four_horsemen_lady();
@@ -23,6 +23,8 @@
#include "ScriptedCreature.h"
#include "SpellScript.h"
namespace Naxxramas::Gluth
{
enum Texts
{
EMOTE_SPOTS_ONE = 0,
@@ -470,9 +472,12 @@ public:
return GetNaxxramasAI<npc_zombie_chowAI>(creature);
}
};
}
void AddSC_boss_gluth()
{
using namespace Naxxramas;
using namespace Naxxramas::Gluth;
new boss_gluth();
new spell_gluth_decimate();
new spell_gluth_zombiechow_search();
@@ -26,6 +26,8 @@
#include "ScriptedCreature.h"
#include "SpellScript.h"
namespace Naxxramas::Gothik
{
/* Constants */
enum Yells
{
@@ -991,9 +993,12 @@ class spell_gothik_shadow_bolt_volley : public SpellScriptLoader
return new spell_gothik_shadow_bolt_volley_SpellScript();
}
};
}
void AddSC_boss_gothik()
{
using namespace Naxxramas;
using namespace Naxxramas::Gothik;
new boss_gothik();
new npc_gothik_minion_livingtrainee();
new npc_gothik_minion_livingknight();
@@ -21,6 +21,8 @@
#include "SpellAuraEffects.h"
#include "SpellScript.h"
namespace Naxxramas::Grobbulus
{
enum Spells
{
SPELL_BOMBARD_SLIME = 28280,
@@ -210,9 +212,12 @@ class spell_grobbulus_poison_cloud : public SpellScriptLoader
return new spell_grobbulus_poison_cloud_AuraScript();
}
};
}
void AddSC_boss_grobbulus()
{
using namespace Naxxramas;
using namespace Naxxramas::Grobbulus;
new boss_grobbulus();
new npc_grobbulus_poison_cloud();
new spell_grobbulus_mutating_injection();
@@ -26,6 +26,8 @@
#include "ScriptedCreature.h"
#include "SpellScript.h"
namespace Naxxramas::Heigan
{
enum Spells
{
SPELL_DECREPIT_FEVER = 29998, // 25-man: 55011
@@ -273,9 +275,12 @@ class achievement_safety_dance : public AchievementCriteriaScript
return false;
}
};
}
void AddSC_boss_heigan()
{
using namespace Naxxramas;
using namespace Naxxramas::Heigan;
new boss_heigan();
new spell_heigan_eruption();
new achievement_safety_dance();
@@ -28,6 +28,8 @@
#include "SpellScript.h"
#include "TemporarySummon.h"
namespace Naxxramas::Kelthuzard
{
enum Texts
{
SAY_AGGRO = 7,
@@ -985,9 +987,12 @@ class achievement_just_cant_get_enough : public AchievementCriteriaScript
return false;
}
};
}
void AddSC_boss_kelthuzad()
{
using namespace Naxxramas;
using namespace Naxxramas::Kelthuzard;
new boss_kelthuzad();
new npc_kelthuzad_skeleton();
new npc_kelthuzad_banshee();
@@ -22,6 +22,8 @@
#include "SpellAuras.h"
#include "SpellScript.h"
namespace Naxxramas::Loatheb
{
enum Spells
{
SPELL_NECROTIC_AURA = 55593,
@@ -193,9 +195,12 @@ class spell_loatheb_deathbloom : public SpellScriptLoader
return new spell_loatheb_deathbloom_AuraScript();
}
};
}
void AddSC_boss_loatheb()
{
using namespace Naxxramas;
using namespace Naxxramas::Loatheb;
new boss_loatheb();
new achievement_spore_loser();
new spell_loatheb_deathbloom();
@@ -25,6 +25,8 @@
#include "SpellMgr.h"
#include "SpellScript.h"
namespace Naxxramas::Maexxna
{
enum Spells
{
SPELL_WEB_WRAP = 28622,
@@ -248,9 +250,12 @@ public:
return GetNaxxramasAI<npc_webwrapAI>(creature);
}
};
}
void AddSC_boss_maexxna()
{
using namespace Naxxramas;
using namespace Naxxramas::Maexxna;
new boss_maexxna();
new npc_webwrap();
}
@@ -20,6 +20,8 @@
#include "naxxramas.h"
#include "ScriptedCreature.h"
namespace Naxxramas::Noth
{
enum Phases
{
PHASE_NONE,
@@ -342,8 +344,11 @@ public:
return GetNaxxramasAI<boss_nothAI>(creature);
}
};
}
void AddSC_boss_noth()
{
using namespace Naxxramas;
using namespace Naxxramas::Noth;
new boss_noth();
}
@@ -20,6 +20,8 @@
#include "naxxramas.h"
#include "ScriptedCreature.h"
namespace Naxxramas::Patchwerk
{
enum Spells
{
SPELL_HATEFUL_STRIKE = 28308,
@@ -183,8 +185,11 @@ public:
return GetNaxxramasAI<boss_patchwerkAI>(creature);
}
};
}
void AddSC_boss_patchwerk()
{
using namespace Naxxramas;
using namespace Naxxramas::Patchwerk;
new boss_patchwerk();
}
@@ -23,6 +23,8 @@
#include "ScriptedCreature.h"
#include "SpellInfo.h"
namespace Naxxramas::Razuvious
{
enum Yells
{
SAY_AGGRO = 0,
@@ -232,9 +234,12 @@ class npc_dk_understudy : public CreatureScript
return GetNaxxramasAI<npc_dk_understudyAI>(creature);
}
};
}
void AddSC_boss_razuvious()
{
using namespace Naxxramas;
using namespace Naxxramas::Razuvious;
new boss_razuvious();
new npc_dk_understudy();
}
@@ -28,6 +28,8 @@
#include "SpellScript.h"
#include "TemporarySummon.h"
namespace Naxxramas::Sapphiron
{
enum Yells
{
EMOTE_AIR_PHASE = 0,
@@ -634,9 +636,12 @@ class achievement_the_hundred_club : public AchievementCriteriaScript
return target && target->GetAI()->GetData(DATA_THE_HUNDRED_CLUB);
}
};
}
void AddSC_boss_sapphiron()
{
using namespace Naxxramas;
using namespace Naxxramas::Sapphiron;
new boss_sapphiron();
RegisterNaxxramasCreatureAI(npc_sapphiron_blizzard);
new go_sapphiron_birth();
Loaded 100 of 104 files, more files were not shown because too many files have changed in this diff. Show more