aboutsummaryrefslogtreecommitdiff
path: root/src/server/scripts/EasternKingdoms
diff options
context:
space:
mode:
authorVincent-Michael <Vincent_Michael@gmx.de>2014-04-05 20:43:05 +0200
committerVincent-Michael <Vincent_Michael@gmx.de>2014-04-05 20:43:05 +0200
commite4b14b943d3a2aa5d7b41107adc8c5236b86d1af (patch)
tree2ef54a0bc7d4f5385b9266afe528265ed9f35f8d /src/server/scripts/EasternKingdoms
parenta903c335024d0ef4a3d9899587fcd0b10a92b31e (diff)
parent29610b250dd5017f068264d9b1a37748c9f30feb (diff)
Merge branch 'master' of github.com:TrinityCore/TrinityCore into 4.3.4
Conflicts: sql/old/3.3.5a/TDB52_to_TDB53_updates/world/2013_07_24_00_world_spell_script_names.sql sql/updates/world/2013_07_24_00_world_spell_script_names.sql sql/updates/world/2013_07_24_00_world_spell_script_names_335.sql src/server/game/Achievements/AchievementMgr.cpp src/server/game/Achievements/AchievementMgr.h src/server/game/Battlegrounds/ArenaTeamMgr.cpp src/server/game/Chat/ChatLink.cpp src/server/game/DataStores/DBCStores.cpp src/server/game/DataStores/DBCStructure.h src/server/game/DataStores/DBCfmt.h src/server/game/Entities/DynamicObject/DynamicObject.h src/server/game/Entities/Object/Object.cpp src/server/game/Entities/Player/Player.cpp src/server/game/Entities/Unit/StatSystem.cpp src/server/game/Entities/Unit/Unit.cpp src/server/game/Entities/Unit/Unit.h src/server/game/Groups/Group.cpp src/server/game/Handlers/QuestHandler.cpp src/server/game/Miscellaneous/SharedDefines.h src/server/game/Spells/Auras/SpellAuraEffects.cpp src/server/game/Spells/Auras/SpellAuras.cpp src/server/game/World/World.h src/server/scripts/Commands/cs_character.cpp src/server/scripts/Commands/cs_lookup.cpp src/server/scripts/Commands/cs_titles.cpp src/server/scripts/EasternKingdoms/ZulAman/boss_halazzi.cpp src/server/scripts/EasternKingdoms/ZulAman/boss_zuljin.cpp src/server/scripts/EasternKingdoms/ZulGurub/boss_jeklik.cpp src/server/scripts/Kalimdor/zone_darkshore.cpp src/server/scripts/Kalimdor/zone_mulgore.cpp src/server/scripts/Kalimdor/zone_tanaris.cpp src/server/scripts/Northrend/IcecrownCitadel/boss_the_lich_king.cpp src/server/scripts/Spells/spell_dk.cpp src/server/scripts/Spells/spell_mage.cpp src/server/scripts/Spells/spell_rogue.cpp src/server/shared/Database/Implementation/CharacterDatabase.cpp src/server/shared/Database/Implementation/CharacterDatabase.h src/tools/vmap4_extractor/mpq_libmpq04.h
Diffstat (limited to 'src/server/scripts/EasternKingdoms')
-rw-r--r--src/server/scripts/EasternKingdoms/AlteracValley/boss_balinda.cpp7
-rw-r--r--src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockSpire/boss_rend_blackhand.cpp7
-rw-r--r--src/server/scripts/EasternKingdoms/BlackrockMountain/BlackwingLair/boss_nefarian.cpp2
-rw-r--r--src/server/scripts/EasternKingdoms/BlackrockMountain/BlackwingLair/instance_blackwing_lair.cpp22
-rw-r--r--src/server/scripts/EasternKingdoms/BlackrockMountain/MoltenCore/boss_majordomo_executus.cpp2
-rw-r--r--src/server/scripts/EasternKingdoms/Karazhan/karazhan.cpp11
-rw-r--r--src/server/scripts/EasternKingdoms/ScarletMonastery/boss_headless_horseman.cpp6
-rw-r--r--src/server/scripts/EasternKingdoms/Stratholme/instance_stratholme.cpp20
-rw-r--r--src/server/scripts/EasternKingdoms/SunwellPlateau/boss_kalecgos.cpp4
-rw-r--r--src/server/scripts/EasternKingdoms/zone_blasted_lands.cpp33
-rw-r--r--src/server/scripts/EasternKingdoms/zone_ghostlands.cpp2
-rw-r--r--src/server/scripts/EasternKingdoms/zone_westfall.cpp75
12 files changed, 65 insertions, 126 deletions
diff --git a/src/server/scripts/EasternKingdoms/AlteracValley/boss_balinda.cpp b/src/server/scripts/EasternKingdoms/AlteracValley/boss_balinda.cpp
index ab135a2fd78..0b031f54ea0 100644
--- a/src/server/scripts/EasternKingdoms/AlteracValley/boss_balinda.cpp
+++ b/src/server/scripts/EasternKingdoms/AlteracValley/boss_balinda.cpp
@@ -50,7 +50,12 @@ public:
struct npc_water_elementalAI : public ScriptedAI
{
- npc_water_elementalAI(Creature* creature) : ScriptedAI(creature) { }
+ npc_water_elementalAI(Creature* creature) : ScriptedAI(creature)
+ {
+ waterBoltTimer = 3 * IN_MILLISECONDS;
+ resetTimer = 5 * IN_MILLISECONDS;
+ balindaGUID = 0;
+ }
uint32 waterBoltTimer;
uint64 balindaGUID;
diff --git a/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockSpire/boss_rend_blackhand.cpp b/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockSpire/boss_rend_blackhand.cpp
index 8989a8065dc..0cb96a519e7 100644
--- a/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockSpire/boss_rend_blackhand.cpp
+++ b/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockSpire/boss_rend_blackhand.cpp
@@ -164,7 +164,12 @@ public:
struct boss_rend_blackhandAI : public BossAI
{
- boss_rend_blackhandAI(Creature* creature) : BossAI(creature, DATA_WARCHIEF_REND_BLACKHAND) { }
+ boss_rend_blackhandAI(Creature* creature) : BossAI(creature, DATA_WARCHIEF_REND_BLACKHAND)
+ {
+ gythEvent = false;
+ victorGUID = 0;
+ portcullisGUID = 0;
+ }
void Reset() OVERRIDE
{
diff --git a/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackwingLair/boss_nefarian.cpp b/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackwingLair/boss_nefarian.cpp
index f3bcbb2526a..a4397de92a7 100644
--- a/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackwingLair/boss_nefarian.cpp
+++ b/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackwingLair/boss_nefarian.cpp
@@ -342,7 +342,7 @@ public:
nefarian->setActive(true);
nefarian->SetCanFly(true);
nefarian->SetDisableGravity(true);
- nefarian->AI()->DoCastAOE(SPELL_SHADOWFLAME_INITIAL);
+ nefarian->CastSpell((Unit*)NULL, SPELL_SHADOWFLAME_INITIAL);
nefarian->GetMotionMaster()->MovePoint(1, NefarianLoc[1]);
}
events.CancelEvent(EVENT_MIND_CONTROL);
diff --git a/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackwingLair/instance_blackwing_lair.cpp b/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackwingLair/instance_blackwing_lair.cpp
index 39d2a6d87d5..560f2e2e995 100644
--- a/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackwingLair/instance_blackwing_lair.cpp
+++ b/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackwingLair/instance_blackwing_lair.cpp
@@ -56,6 +56,28 @@ public:
{
instance_blackwing_lair_InstanceMapScript(Map* map) : InstanceScript(map)
{
+ // Razorgore
+ EggCount = 0;
+ EggEvent = 0;
+ RazorgoreTheUntamedGUID = 0;
+ RazorgoreDoorGUID = 0;
+ // Vaelastrasz the Corrupt
+ VaelastraszTheCorruptGUID = 0;
+ VaelastraszDoorGUID = 0;
+ // Broodlord Lashlayer
+ BroodlordLashlayerGUID = 0;
+ BroodlordDoorGUID = 0;
+ // 3 Dragons
+ FiremawGUID = 0;
+ EbonrocGUID = 0;
+ FlamegorGUID = 0;
+ ChrommagusDoorGUID = 0;
+ // Chormaggus
+ ChromaggusGUID = 0;
+ NefarianDoorGUID = 0;
+ // Nefarian
+ LordVictorNefariusGUID = 0;
+ NefarianGUID = 0;
SetBossNumber(EncounterCount);
}
diff --git a/src/server/scripts/EasternKingdoms/BlackrockMountain/MoltenCore/boss_majordomo_executus.cpp b/src/server/scripts/EasternKingdoms/BlackrockMountain/MoltenCore/boss_majordomo_executus.cpp
index d2bd82447dc..653992cacdf 100644
--- a/src/server/scripts/EasternKingdoms/BlackrockMountain/MoltenCore/boss_majordomo_executus.cpp
+++ b/src/server/scripts/EasternKingdoms/BlackrockMountain/MoltenCore/boss_majordomo_executus.cpp
@@ -107,7 +107,7 @@ class boss_majordomo : public CreatureScript
{
instance->UpdateEncounterState(ENCOUNTER_CREDIT_KILL_CREATURE, me->GetEntry(), me);
me->setFaction(35);
- me->AI()->EnterEvadeMode();
+ EnterEvadeMode();
Talk(SAY_DEFEAT);
_JustDied();
events.ScheduleEvent(EVENT_OUTRO_1, 32000);
diff --git a/src/server/scripts/EasternKingdoms/Karazhan/karazhan.cpp b/src/server/scripts/EasternKingdoms/Karazhan/karazhan.cpp
index 241ac85faa2..b5c3bdd86d4 100644
--- a/src/server/scripts/EasternKingdoms/Karazhan/karazhan.cpp
+++ b/src/server/scripts/EasternKingdoms/Karazhan/karazhan.cpp
@@ -584,10 +584,13 @@ public:
arca->MonsterYell(SAY_DIALOG_ARCANAGOS_8, LANG_UNIVERSAL, NULL);
return 5000;
case 12:
- arca->GetMotionMaster()->MovePoint(0, -11010.82f, -1761.18f, 156.47f);
- arca->setActive(true);
- arca->InterruptNonMeleeSpells(true);
- arca->SetSpeed(MOVE_FLIGHT, 2.0f);
+ if (arca)
+ {
+ arca->GetMotionMaster()->MovePoint(0, -11010.82f, -1761.18f, 156.47f);
+ arca->setActive(true);
+ arca->InterruptNonMeleeSpells(true);
+ arca->SetSpeed(MOVE_FLIGHT, 2.0f);
+ }
return 10000;
case 13:
me->MonsterYell(SAY_DIALOG_MEDIVH_9, LANG_UNIVERSAL, NULL);
diff --git a/src/server/scripts/EasternKingdoms/ScarletMonastery/boss_headless_horseman.cpp b/src/server/scripts/EasternKingdoms/ScarletMonastery/boss_headless_horseman.cpp
index 31219e18121..ad87b2d8d3d 100644
--- a/src/server/scripts/EasternKingdoms/ScarletMonastery/boss_headless_horseman.cpp
+++ b/src/server/scripts/EasternKingdoms/ScarletMonastery/boss_headless_horseman.cpp
@@ -787,7 +787,11 @@ public:
struct npc_pulsing_pumpkinAI : public ScriptedAI
{
- npc_pulsing_pumpkinAI(Creature* creature) : ScriptedAI(creature) { }
+ npc_pulsing_pumpkinAI(Creature* creature) : ScriptedAI(creature)
+ {
+ sprouted = false;
+ debuffGUID = 0;
+ }
bool sprouted;
uint64 debuffGUID;
diff --git a/src/server/scripts/EasternKingdoms/Stratholme/instance_stratholme.cpp b/src/server/scripts/EasternKingdoms/Stratholme/instance_stratholme.cpp
index d8518085b26..9ceaf8cb85b 100644
--- a/src/server/scripts/EasternKingdoms/Stratholme/instance_stratholme.cpp
+++ b/src/server/scripts/EasternKingdoms/Stratholme/instance_stratholme.cpp
@@ -310,6 +310,15 @@ class instance_stratholme : public InstanceMapScript
{
HandleGameObject(ziggurat4GUID, false);
HandleGameObject(ziggurat5GUID, false);
+ }
+ if (data == DONE || data == NOT_STARTED)
+ {
+ HandleGameObject(ziggurat4GUID, true);
+ HandleGameObject(ziggurat5GUID, true);
+ }
+ if (data == DONE)
+ {
+ HandleGameObject(portGauntletGUID, true);
if (GetData(TYPE_BARON_RUN) == IN_PROGRESS)
{
DoRemoveAurasDueToSpellOnPlayers(SPELL_BARON_ULTIMATUM);
@@ -318,18 +327,13 @@ class instance_stratholme : public InstanceMapScript
for (Map::PlayerList::const_iterator itr = players.begin(); itr != players.end(); ++itr)
if (Player* player = itr->GetSource())
if (player->GetQuestStatus(QUEST_DEAD_MAN_PLEA) == QUEST_STATUS_INCOMPLETE)
+ {
player->AreaExploredOrEventHappens(QUEST_DEAD_MAN_PLEA);
-
+ player->KilledMonsterCredit(NPC_YSIDA);
+ }
SetData(TYPE_BARON_RUN, DONE);
}
}
- if (data == DONE || data == NOT_STARTED)
- {
- HandleGameObject(ziggurat4GUID, true);
- HandleGameObject(ziggurat5GUID, true);
- }
- if (data == DONE)
- HandleGameObject(portGauntletGUID, true);
EncounterState[5] = data;
break;
case TYPE_SH_AELMAR:
diff --git a/src/server/scripts/EasternKingdoms/SunwellPlateau/boss_kalecgos.cpp b/src/server/scripts/EasternKingdoms/SunwellPlateau/boss_kalecgos.cpp
index 294443da0e7..46bd5bcbfdc 100644
--- a/src/server/scripts/EasternKingdoms/SunwellPlateau/boss_kalecgos.cpp
+++ b/src/server/scripts/EasternKingdoms/SunwellPlateau/boss_kalecgos.cpp
@@ -234,7 +234,7 @@ public:
{
if (me->GetDistance(CENTER_X, CENTER_Y, DRAGON_REALM_Z) >= 75)
{
- me->AI()->EnterEvadeMode();
+ EnterEvadeMode();
return;
}
if (HealthBelowPct(10) && !isEnraged)
@@ -733,7 +733,7 @@ public:
Creature* Kalecgos = ObjectAccessor::GetCreature(*me, KalecgosGUID);
if (Kalecgos && !Kalecgos->IsInCombat())
{
- me->AI()->EnterEvadeMode();
+ EnterEvadeMode();
return;
}
diff --git a/src/server/scripts/EasternKingdoms/zone_blasted_lands.cpp b/src/server/scripts/EasternKingdoms/zone_blasted_lands.cpp
index 3fcd3c093b7..bc09983fee1 100644
--- a/src/server/scripts/EasternKingdoms/zone_blasted_lands.cpp
+++ b/src/server/scripts/EasternKingdoms/zone_blasted_lands.cpp
@@ -17,11 +17,7 @@
/*
Blasted_Lands
-Quest support: 3628. Teleporter to Rise of the Defiler.
-*/
-
-/*
-npc_deathly_usher
+Quest support: 3628.
*/
#include "ScriptMgr.h"
@@ -31,10 +27,6 @@ npc_deathly_usher
#include "Player.h"
#include "Group.h"
-/*######
-## npc_deathly_usher
-######*/
-
enum DeathlyUsher
{
SPELL_TELEPORT_SINGLE = 12885,
@@ -42,28 +34,6 @@ enum DeathlyUsher
SPELL_TELEPORT_GROUP = 27686
};
-class npc_deathly_usher : public CreatureScript
-{
-public:
- npc_deathly_usher() : CreatureScript("npc_deathly_usher") { }
-
- struct npc_deathly_usherAI : public ScriptedAI
- {
- npc_deathly_usherAI(Creature* creature) : ScriptedAI(creature) { }
-
- void sGossipSelect(Player* player, uint32 /*sender*/, uint32 /*action*/) OVERRIDE
- {
- player->CLOSE_GOSSIP_MENU();
- me->CastSpell(player, SPELL_TELEPORT_GROUP, true);
- }
- };
-
- CreatureAI* GetAI(Creature* creature) const OVERRIDE
- {
- return new npc_deathly_usherAI(creature);
- }
-};
-
/*#####
# spell_razelikh_teleport_group
#####*/
@@ -113,6 +83,5 @@ class spell_razelikh_teleport_group : public SpellScriptLoader
void AddSC_blasted_lands()
{
- new npc_deathly_usher();
new spell_razelikh_teleport_group();
}
diff --git a/src/server/scripts/EasternKingdoms/zone_ghostlands.cpp b/src/server/scripts/EasternKingdoms/zone_ghostlands.cpp
index a6e9e8d0342..7787137834e 100644
--- a/src/server/scripts/EasternKingdoms/zone_ghostlands.cpp
+++ b/src/server/scripts/EasternKingdoms/zone_ghostlands.cpp
@@ -96,7 +96,7 @@ public:
Summ1->Attack(me, true);
Summ2->Attack(player, true);
}
- me->AI()->AttackStart(Summ1);
+ AttackStart(Summ1);
}
break;
case 19:
diff --git a/src/server/scripts/EasternKingdoms/zone_westfall.cpp b/src/server/scripts/EasternKingdoms/zone_westfall.cpp
index 350ceead706..d01806028c6 100644
--- a/src/server/scripts/EasternKingdoms/zone_westfall.cpp
+++ b/src/server/scripts/EasternKingdoms/zone_westfall.cpp
@@ -19,13 +19,12 @@
/* ScriptData
SDName: Westfall
SD%Complete: 90
-SDComment: Quest support: 155, 1651
+SDComment: Quest support: 1651
SDCategory: Westfall
EndScriptData */
/* ContentData
npc_daphne_stilwell
-npc_defias_traitor
EndContentData */
#include "ScriptMgr.h"
@@ -202,79 +201,7 @@ public:
};
};
-/*######
-## npc_defias_traitor
-######*/
-enum DefiasSays
-{
- SAY_START = 0,
- SAY_PROGRESS = 1,
- SAY_END = 2,
- SAY_AGGRO = 3
-};
-
-
-#define QUEST_DEFIAS_BROTHERHOOD 155
-
-class npc_defias_traitor : public CreatureScript
-{
-public:
- npc_defias_traitor() : CreatureScript("npc_defias_traitor") { }
-
- bool OnQuestAccept(Player* player, Creature* creature, Quest const* quest) OVERRIDE
- {
- if (quest->GetQuestId() == QUEST_DEFIAS_BROTHERHOOD)
- {
- if (npc_escortAI* pEscortAI = CAST_AI(npc_defias_traitor::npc_defias_traitorAI, creature->AI()))
- pEscortAI->Start(true, true, player->GetGUID());
-
- creature->AI()->Talk(SAY_START, player);
- }
-
- return true;
- }
-
- CreatureAI* GetAI(Creature* creature) const OVERRIDE
- {
- return new npc_defias_traitorAI(creature);
- }
-
- struct npc_defias_traitorAI : public npc_escortAI
- {
- npc_defias_traitorAI(Creature* creature) : npc_escortAI(creature) { Reset(); }
-
- void WaypointReached(uint32 waypointId) OVERRIDE
- {
- Player* player = GetPlayerForEscort();
- if (!player)
- return;
-
- switch (waypointId)
- {
- case 35:
- SetRun(false);
- break;
- case 36:
- Talk(SAY_PROGRESS, player);
- break;
- case 44:
- Talk(SAY_END, player);
- player->GroupEventHappens(QUEST_DEFIAS_BROTHERHOOD, me);
- break;
- }
- }
-
- void EnterCombat(Unit* who) OVERRIDE
- {
- Talk(SAY_AGGRO, who);
- }
-
- void Reset() OVERRIDE { }
- };
-};
-
void AddSC_westfall()
{
new npc_daphne_stilwell();
- new npc_defias_traitor();
}