aboutsummaryrefslogtreecommitdiff
path: root/src/server/scripts
diff options
context:
space:
mode:
Diffstat (limited to 'src/server/scripts')
-rw-r--r--src/server/scripts/CMakeLists.txt2
-rw-r--r--src/server/scripts/EasternKingdoms/zone_eastern_plaguelands.cpp57
-rw-r--r--src/server/scripts/Northrend/FrozenHalls/PitOfSaron/boss_scourgelord_tyrannus.cpp12
-rw-r--r--src/server/scripts/Northrend/Ulduar/Ulduar/boss_flame_leviathan.cpp3
-rw-r--r--src/server/scripts/Outland/zone_terokkar_forest.cpp160
-rw-r--r--src/server/scripts/Spells/spell_dk.cpp8
6 files changed, 111 insertions, 131 deletions
diff --git a/src/server/scripts/CMakeLists.txt b/src/server/scripts/CMakeLists.txt
index 32e7421465a..ea0b058b91d 100644
--- a/src/server/scripts/CMakeLists.txt
+++ b/src/server/scripts/CMakeLists.txt
@@ -38,7 +38,6 @@ PrepareScripts(Spells scripts_STAT_SRCS)
PrepareScripts(Commands scripts_STAT_SRCS)
if(SCRIPTS)
- PrepareScripts(Commands scripts_STAT_SRCS)
PrepareScripts(Custom scripts_STAT_SRCS)
PrepareScripts(World scripts_STAT_SRCS)
PrepareScripts(OutdoorPvP scripts_STAT_SRCS)
@@ -73,6 +72,7 @@ include_directories(
${CMAKE_SOURCE_DIR}/src/server/game/Addons
${CMAKE_SOURCE_DIR}/src/server/game/AI
${CMAKE_SOURCE_DIR}/src/server/game/AI/CoreAI
+ ${CMAKE_SOURCE_DIR}/src/server/game/AI/PlayerAI
${CMAKE_SOURCE_DIR}/src/server/game/AI/ScriptedAI
${CMAKE_SOURCE_DIR}/src/server/game/AI/SmartScripts
${CMAKE_SOURCE_DIR}/src/server/game/AuctionHouse
diff --git a/src/server/scripts/EasternKingdoms/zone_eastern_plaguelands.cpp b/src/server/scripts/EasternKingdoms/zone_eastern_plaguelands.cpp
index ce0ebf4d129..4cc72715868 100644
--- a/src/server/scripts/EasternKingdoms/zone_eastern_plaguelands.cpp
+++ b/src/server/scripts/EasternKingdoms/zone_eastern_plaguelands.cpp
@@ -19,7 +19,7 @@
/* ScriptData
SDName: Eastern_Plaguelands
SD%Complete: 100
-SDComment: Quest support: 5211, 5742. Special vendor Augustus the Touched
+SDComment: Quest support: 5211. Special vendor Augustus the Touched
SDCategory: Eastern Plaguelands
EndScriptData */
@@ -27,7 +27,6 @@ EndScriptData */
npc_ghoul_flayer
npc_augustus_the_touched
npc_darrowshire_spirit
-npc_tirion_fordring
EndContentData */
#include "ScriptMgr.h"
@@ -133,63 +132,9 @@ public:
};
};
-/*######
-## npc_tirion_fordring
-######*/
-
-#define GOSSIP_HELLO "I am ready to hear your tale, Tirion."
-#define GOSSIP_SELECT1 "Thank you, Tirion. What of your identity?"
-#define GOSSIP_SELECT2 "That is terrible."
-#define GOSSIP_SELECT3 "I will, Tirion."
-
-class npc_tirion_fordring : public CreatureScript
-{
-public:
- npc_tirion_fordring() : CreatureScript("npc_tirion_fordring") { }
-
- bool OnGossipSelect(Player* player, Creature* creature, uint32 /*sender*/, uint32 action) override
- {
- player->PlayerTalkClass->ClearMenus();
- switch (action)
- {
- case GOSSIP_ACTION_INFO_DEF+1:
- player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_SELECT1, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 2);
- player->SEND_GOSSIP_MENU(4493, creature->GetGUID());
- break;
- case GOSSIP_ACTION_INFO_DEF+2:
- player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_SELECT2, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 3);
- player->SEND_GOSSIP_MENU(4494, creature->GetGUID());
- break;
- case GOSSIP_ACTION_INFO_DEF+3:
- player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_SELECT3, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 4);
- player->SEND_GOSSIP_MENU(4495, creature->GetGUID());
- break;
- case GOSSIP_ACTION_INFO_DEF+4:
- player->CLOSE_GOSSIP_MENU();
- player->AreaExploredOrEventHappens(5742);
- break;
- }
- return true;
- }
-
- bool OnGossipHello(Player* player, Creature* creature) override
- {
- if (creature->IsQuestGiver())
- player->PrepareQuestMenu(creature->GetGUID());
-
- if (player->GetQuestStatus(5742) == QUEST_STATUS_INCOMPLETE && player->getStandState() == UNIT_STAND_STATE_SIT)
- player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_HELLO, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+1);
-
- player->SEND_GOSSIP_MENU(player->GetGossipTextId(creature), creature->GetGUID());
-
- return true;
- }
-};
-
void AddSC_eastern_plaguelands()
{
new npc_ghoul_flayer();
new npc_augustus_the_touched();
new npc_darrowshire_spirit();
- new npc_tirion_fordring();
}
diff --git a/src/server/scripts/Northrend/FrozenHalls/PitOfSaron/boss_scourgelord_tyrannus.cpp b/src/server/scripts/Northrend/FrozenHalls/PitOfSaron/boss_scourgelord_tyrannus.cpp
index 96bd0aaa35e..5410f403ab9 100644
--- a/src/server/scripts/Northrend/FrozenHalls/PitOfSaron/boss_scourgelord_tyrannus.cpp
+++ b/src/server/scripts/Northrend/FrozenHalls/PitOfSaron/boss_scourgelord_tyrannus.cpp
@@ -22,6 +22,7 @@
#include "pit_of_saron.h"
#include "Vehicle.h"
#include "Player.h"
+#include "PlayerAI.h"
enum Yells
{
@@ -438,9 +439,10 @@ class spell_tyrannus_overlord_brand : public SpellScriptLoader
if (GetTarget()->GetTypeId() != TYPEID_PLAYER)
return;
- oldAI = GetTarget()->GetAI();
- oldAIState = GetTarget()->IsAIEnabled;
- GetTarget()->SetAI(new player_overlord_brandAI(GetTarget()->ToPlayer(), GetCasterGUID()));
+ Player* pTarget = GetTarget()->ToPlayer();
+ oldAI = pTarget->AI();
+ oldAIState = pTarget->IsAIEnabled;
+ GetTarget()->SetAI(new player_overlord_brandAI(pTarget, GetCasterGUID()));
GetTarget()->IsAIEnabled = true;
}
@@ -450,7 +452,7 @@ class spell_tyrannus_overlord_brand : public SpellScriptLoader
return;
GetTarget()->IsAIEnabled = oldAIState;
- UnitAI* thisAI = GetTarget()->GetAI();
+ PlayerAI* thisAI = GetTarget()->ToPlayer()->AI();
GetTarget()->SetAI(oldAI);
delete thisAI;
}
@@ -461,7 +463,7 @@ class spell_tyrannus_overlord_brand : public SpellScriptLoader
AfterEffectRemove += AuraEffectRemoveFn(spell_tyrannus_overlord_brand_AuraScript::OnRemove, EFFECT_0, SPELL_AURA_DUMMY, AURA_EFFECT_HANDLE_REAL);
}
- UnitAI* oldAI;
+ PlayerAI* oldAI;
bool oldAIState;
};
diff --git a/src/server/scripts/Northrend/Ulduar/Ulduar/boss_flame_leviathan.cpp b/src/server/scripts/Northrend/Ulduar/Ulduar/boss_flame_leviathan.cpp
index 6dfc3bf01e7..98827fb3e00 100644
--- a/src/server/scripts/Northrend/Ulduar/Ulduar/boss_flame_leviathan.cpp
+++ b/src/server/scripts/Northrend/Ulduar/Ulduar/boss_flame_leviathan.cpp
@@ -334,7 +334,8 @@ class boss_flame_leviathan : public CreatureScript
void SpellHit(Unit* /*caster*/, SpellInfo const* spell) override
{
if (spell->Id == SPELL_START_THE_ENGINE)
- ASSERT_NOTNULL(me->GetVehicleKit())->InstallAllAccessories(false);
+ if (Vehicle* vehicleKit = me->GetVehicleKit())
+ vehicleKit->InstallAllAccessories(false);
if (spell->Id == SPELL_ELECTROSHOCK)
me->InterruptSpell(CURRENT_CHANNELED_SPELL);
diff --git a/src/server/scripts/Outland/zone_terokkar_forest.cpp b/src/server/scripts/Outland/zone_terokkar_forest.cpp
index 04ec1e4dc07..4b757544d65 100644
--- a/src/server/scripts/Outland/zone_terokkar_forest.cpp
+++ b/src/server/scripts/Outland/zone_terokkar_forest.cpp
@@ -46,13 +46,13 @@ EndContentData */
enum UnkorTheRuthless
{
- SAY_SUBMIT = 0,
-
- FACTION_HOSTILE = 45,
- FACTION_FRIENDLY = 35,
- QUEST_DONTKILLTHEFATONE = 9889,
-
- SPELL_PULVERIZE = 2676
+ SAY_SUBMIT = 0,
+ REQUIRED_KILL_COUNT = 10,
+ FACTION_FRIENDLY = 35,
+ FACTION_HOSTILE = 45,
+ SPELL_PULVERIZE = 2676,
+ QUEST_DONTKILLTHEFATONE = 9889,
+ NPC_BOULDERFIST_INVADER = 18260
};
class npc_unkor_the_ruthless : public CreatureScript
@@ -116,7 +116,7 @@ public:
Player* groupie = itr->GetSource();
if (groupie &&
groupie->GetQuestStatus(QUEST_DONTKILLTHEFATONE) == QUEST_STATUS_INCOMPLETE &&
- groupie->GetReqKillOrCastCurrentCount(QUEST_DONTKILLTHEFATONE, 18260) == 10)
+ groupie->GetReqKillOrCastCurrentCount(QUEST_DONTKILLTHEFATONE, NPC_BOULDERFIST_INVADER) == REQUIRED_KILL_COUNT)
{
groupie->AreaExploredOrEventHappens(QUEST_DONTKILLTHEFATONE);
if (!CanDoQuest)
@@ -125,7 +125,7 @@ public:
}
}
else if (player->GetQuestStatus(QUEST_DONTKILLTHEFATONE) == QUEST_STATUS_INCOMPLETE &&
- player->GetReqKillOrCastCurrentCount(QUEST_DONTKILLTHEFATONE, 18260) == 10)
+ player->GetReqKillOrCastCurrentCount(QUEST_DONTKILLTHEFATONE, NPC_BOULDERFIST_INVADER) == REQUIRED_KILL_COUNT)
{
player->AreaExploredOrEventHappens(QUEST_DONTKILLTHEFATONE);
CanDoQuest = true;
@@ -170,6 +170,11 @@ public:
## npc_infested_root_walker
######*/
+enum InfestedRootWalker
+{
+ SPELL_SUMMON_WOOD_MITES = 39130
+};
+
class npc_infested_root_walker : public CreatureScript
{
public:
@@ -193,7 +198,7 @@ public:
if (me->GetHealth() <= damage)
if (rand32() % 100 < 75)
//Summon Wood Mites
- DoCast(me, 39130, true);
+ DoCast(me, SPELL_SUMMON_WOOD_MITES, true);
}
};
};
@@ -201,6 +206,12 @@ public:
/*######
## npc_skywing
######*/
+
+enum Skywing
+{
+ QUEST_SKYWING = 10898
+};
+
class npc_skywing : public CreatureScript
{
public:
@@ -225,7 +236,7 @@ public:
switch (waypointId)
{
case 8:
- player->AreaExploredOrEventHappens(10898);
+ player->AreaExploredOrEventHappens(QUEST_SKYWING);
break;
}
}
@@ -239,7 +250,7 @@ public:
return;
Player* player = who->ToPlayer();
- if (player && player->GetQuestStatus(10898) == QUEST_STATUS_INCOMPLETE)
+ if (player && player->GetQuestStatus(QUEST_SKYWING) == QUEST_STATUS_INCOMPLETE)
if (me->IsWithinDistInMap(who, 10.0f))
Start(false, false, who->GetGUID());
}
@@ -257,6 +268,11 @@ public:
## npc_rotting_forest_rager
######*/
+enum RottingForestRager
+{
+ SPELL_SUMMON_LOTS_OF_WOOD_MITES = 39134
+};
+
class npc_rotting_forest_rager : public CreatureScript
{
public:
@@ -279,8 +295,8 @@ public:
if (done_by->GetTypeId() == TYPEID_PLAYER)
if (me->GetHealth() <= damage)
if (rand32() % 100 < 75)
- //Summon Lots of Wood Mights
- DoCast(me, 39134, true);
+ //Summon Lots of Wood Mites
+ DoCast(me, SPELL_SUMMON_LOTS_OF_WOOD_MITES, true);
}
};
};
@@ -289,19 +305,22 @@ public:
## npc_floon
######*/
-#define GOSSIP_FLOON1 "You owe Sim'salabim money. Hand them over or die!"
-#define GOSSIP_FLOON2 "Hand over the money or die...again!"
-
enum Floon
{
- SAY_FLOON_ATTACK = 0,
-
- SPELL_SILENCE = 6726,
- SPELL_FROSTBOLT = 9672,
- SPELL_FROST_NOVA = 11831,
-
- FACTION_HOSTILE_FL = 1738,
- QUEST_CRACK_SKULLS = 10009
+ SAY_FLOON_ATTACK = 0,
+ OPTION_ID_PAY_UP_OR_DIE = 0,
+ OPTION_ID_COLLECT_A_DEBT = 0,
+ FACTION_HOSTILE_FLOON = 1738,
+ MENU_ID_PAY_UP_OR_DIE = 7731,
+ MENU_ID_COLLECT_A_DEBT = 7732,
+ GOSSIP_FLOON_STRANGE_SOUNDS = 9442,
+ GOSSIP_HE_ALREADY_KILLED_ME = 9443,
+
+ SPELL_SILENCE = 6726,
+ SPELL_FROSTBOLT = 9672,
+ SPELL_FROST_NOVA = 11831,
+
+ QUEST_CRACKIN_SOME_SKULLS = 10009
};
class npc_floon : public CreatureScript
@@ -314,13 +333,13 @@ public:
player->PlayerTalkClass->ClearMenus();
if (action == GOSSIP_ACTION_INFO_DEF)
{
- player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_FLOON2, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+1);
- player->SEND_GOSSIP_MENU(9443, creature->GetGUID());
+ player->ADD_GOSSIP_ITEM_DB(MENU_ID_PAY_UP_OR_DIE, OPTION_ID_PAY_UP_OR_DIE, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+1);
+ player->SEND_GOSSIP_MENU(GOSSIP_HE_ALREADY_KILLED_ME, creature->GetGUID());
}
if (action == GOSSIP_ACTION_INFO_DEF+1)
{
player->CLOSE_GOSSIP_MENU();
- creature->setFaction(FACTION_HOSTILE_FL);
+ creature->setFaction(FACTION_HOSTILE_FLOON);
creature->AI()->Talk(SAY_FLOON_ATTACK, player);
creature->AI()->AttackStart(player);
}
@@ -329,10 +348,10 @@ public:
bool OnGossipHello(Player* player, Creature* creature) override
{
- if (player->GetQuestStatus(QUEST_CRACK_SKULLS) == QUEST_STATUS_INCOMPLETE)
- player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_FLOON1, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF);
+ if (player->GetQuestStatus(QUEST_CRACKIN_SOME_SKULLS) == QUEST_STATUS_INCOMPLETE)
+ player->ADD_GOSSIP_ITEM_DB(MENU_ID_COLLECT_A_DEBT, OPTION_ID_COLLECT_A_DEBT, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF);
- player->SEND_GOSSIP_MENU(9442, creature->GetGUID());
+ player->SEND_GOSSIP_MENU(GOSSIP_FLOON_STRANGE_SOUNDS, creature->GetGUID());
return true;
}
@@ -403,15 +422,16 @@ public:
######*/
enum IslaStarmaneData
{
- SAY_PROGRESS_1 = 0,
- SAY_PROGRESS_2 = 1,
- SAY_PROGRESS_3 = 2,
- SAY_PROGRESS_4 = 3,
-
- QUEST_EFTW_H = 10052,
- QUEST_EFTW_A = 10051,
- GO_CAGE = 182794,
- SPELL_CAT = 32447,
+ SAY_PROGRESS_1 = 0,
+ SAY_PROGRESS_2 = 1,
+ SAY_PROGRESS_3 = 2,
+ SAY_PROGRESS_4 = 3,
+ GO_DISTANCE = 10,
+ FACTION_ESCORTEE = 113,
+ ESCAPE_FROM_FIREWING_POINT_A = 10051,
+ ESCAPE_FROM_FIREWING_POINT_H = 10052,
+ SPELL_TRAVEL_FORM_CAT = 32447,
+ GO_CAGE = 182794
};
class npc_isla_starmane : public CreatureScript
@@ -432,7 +452,7 @@ public:
switch (waypointId)
{
case 0:
- if (GameObject* Cage = me->FindNearestGameObject(GO_CAGE, 10))
+ if (GameObject* Cage = me->FindNearestGameObject(GO_CAGE, GO_DISTANCE))
Cage->SetGoState(GO_STATE_ACTIVE);
break;
case 2:
@@ -447,16 +467,16 @@ public:
case 29:
Talk(SAY_PROGRESS_4, player);
if (player->GetTeam() == ALLIANCE)
- player->GroupEventHappens(QUEST_EFTW_A, me);
+ player->GroupEventHappens(ESCAPE_FROM_FIREWING_POINT_A, me);
else if (player->GetTeam() == HORDE)
- player->GroupEventHappens(QUEST_EFTW_H, me);
+ player->GroupEventHappens(ESCAPE_FROM_FIREWING_POINT_H, me);
me->SetInFront(player);
break;
case 30:
me->HandleEmoteCommand(EMOTE_ONESHOT_WAVE);
break;
case 31:
- DoCast(me, SPELL_CAT);
+ DoCast(me, SPELL_TRAVEL_FORM_CAT);
me->SetWalk(false);
break;
}
@@ -472,19 +492,19 @@ public:
if (Player* player = GetPlayerForEscort())
{
if (player->GetTeam() == ALLIANCE)
- player->FailQuest(QUEST_EFTW_A);
+ player->FailQuest(ESCAPE_FROM_FIREWING_POINT_A);
else if (player->GetTeam() == HORDE)
- player->FailQuest(QUEST_EFTW_H);
+ player->FailQuest(ESCAPE_FROM_FIREWING_POINT_H);
}
}
};
bool OnQuestAccept(Player* player, Creature* creature, Quest const* quest) override
{
- if (quest->GetQuestId() == QUEST_EFTW_H || quest->GetQuestId() == QUEST_EFTW_A)
+ if (quest->GetQuestId() == ESCAPE_FROM_FIREWING_POINT_H || quest->GetQuestId() == ESCAPE_FROM_FIREWING_POINT_A)
{
ENSURE_AI(npc_escortAI, (creature->AI()))->Start(true, false, player->GetGUID());
- creature->setFaction(113);
+ creature->setFaction(FACTION_ESCORTEE);
}
return true;
}
@@ -498,10 +518,20 @@ public:
/*######
## go_skull_pile
######*/
-#define GOSSIP_S_DARKSCREECHER_AKKARAI "Summon Darkscreecher Akkarai"
-#define GOSSIP_S_KARROG "Summon Karrog"
-#define GOSSIP_S_GEZZARAK_THE_HUNTRESS "Summon Gezzarak the Huntress"
-#define GOSSIP_S_VAKKIZ_THE_WINDRAGER "Summon Vakkiz the Windrager"
+
+enum SkullPile
+{
+ OPTION_ID_GEZZARAK_THE_HUNTRESS = 0,
+ OPTION_ID_DARKSCREECHER_AKKARAI = 1,
+ OPTION_ID_KARROG = 2,
+ OPTION_ID_VAKKIZ_THE_WINDRAGER = 3,
+ GOSSIP_MENU_ID_SKULL_PILE = 8660,
+ ADVERSARIAL_BLOOD = 11885,
+ SUMMON_GEZZARAK_THE_HUNTRESS = 40632,
+ SUMMON_KARROG = 40640,
+ SUMMON_DARKSCREECHER_AKKARAI = 40642,
+ SUMMON_VAKKIZ_THE_WINDRAGER = 40644
+};
class go_skull_pile : public GameObjectScript
{
@@ -520,12 +550,12 @@ public:
bool OnGossipHello(Player* player, GameObject* go) override
{
- if ((player->GetQuestStatus(11885) == QUEST_STATUS_INCOMPLETE) || player->GetQuestRewardStatus(11885))
+ if ((player->GetQuestStatus(ADVERSARIAL_BLOOD) == QUEST_STATUS_INCOMPLETE) || player->GetQuestRewardStatus(ADVERSARIAL_BLOOD))
{
- player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_S_DARKSCREECHER_AKKARAI, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 1);
- player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_S_KARROG, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 2);
- player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_S_GEZZARAK_THE_HUNTRESS, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 3);
- player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_S_VAKKIZ_THE_WINDRAGER, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 4);
+ player->ADD_GOSSIP_ITEM_DB(GOSSIP_MENU_ID_SKULL_PILE, OPTION_ID_GEZZARAK_THE_HUNTRESS, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 1);
+ player->ADD_GOSSIP_ITEM_DB(GOSSIP_MENU_ID_SKULL_PILE, OPTION_ID_DARKSCREECHER_AKKARAI, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 2);
+ player->ADD_GOSSIP_ITEM_DB(GOSSIP_MENU_ID_SKULL_PILE, OPTION_ID_KARROG, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 3);
+ player->ADD_GOSSIP_ITEM_DB(GOSSIP_MENU_ID_SKULL_PILE, OPTION_ID_VAKKIZ_THE_WINDRAGER, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 4);
}
player->SEND_GOSSIP_MENU(go->GetGOInfo()->questgiver.gossipID, go->GetGUID());
@@ -537,16 +567,16 @@ public:
switch (action)
{
case GOSSIP_ACTION_INFO_DEF + 1:
- player->CastSpell(player, 40642, false);
+ player->CastSpell(player, SUMMON_GEZZARAK_THE_HUNTRESS, false);
break;
case GOSSIP_ACTION_INFO_DEF + 2:
- player->CastSpell(player, 40640, false);
+ player->CastSpell(player, SUMMON_DARKSCREECHER_AKKARAI, false);
break;
case GOSSIP_ACTION_INFO_DEF + 3:
- player->CastSpell(player, 40632, false);
+ player->CastSpell(player, SUMMON_KARROG, false);
break;
case GOSSIP_ACTION_INFO_DEF + 4:
- player->CastSpell(player, 40644, false);
+ player->CastSpell(player, SUMMON_VAKKIZ_THE_WINDRAGER, false);
break;
}
}
@@ -558,7 +588,9 @@ public:
enum Slim
{
- FACTION_CONSORTIUM = 933
+ FACTION_CONSORTIUM = 933,
+ NPC_TEXT_NEITHER_SLIM_NOR_SHADY = 9895,
+ NPC_TEXT_I_SEE_YOU_ARE_A_FRIEND = 9896
};
class npc_slim : public CreatureScript
@@ -580,10 +612,10 @@ public:
if (creature->IsVendor() && player->GetReputationRank(FACTION_CONSORTIUM) >= REP_FRIENDLY)
{
player->ADD_GOSSIP_ITEM(GOSSIP_ICON_VENDOR, GOSSIP_TEXT_BROWSE_GOODS, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_TRADE);
- player->SEND_GOSSIP_MENU(9896, creature->GetGUID());
+ player->SEND_GOSSIP_MENU(NPC_TEXT_I_SEE_YOU_ARE_A_FRIEND, creature->GetGUID());
}
else
- player->SEND_GOSSIP_MENU(9895, creature->GetGUID());
+ player->SEND_GOSSIP_MENU(NPC_TEXT_NEITHER_SLIM_NOR_SHADY, creature->GetGUID());
return true;
}
diff --git a/src/server/scripts/Spells/spell_dk.cpp b/src/server/scripts/Spells/spell_dk.cpp
index 3cea620559a..7c2bb0bfaa5 100644
--- a/src/server/scripts/Spells/spell_dk.cpp
+++ b/src/server/scripts/Spells/spell_dk.cpp
@@ -22,7 +22,7 @@
*/
#include "Player.h"
-#include "UnitAI.h"
+#include "PlayerAI.h"
#include "ScriptMgr.h"
#include "SpellScript.h"
#include "SpellAuraEffects.h"
@@ -1909,7 +1909,7 @@ public:
if (!player || player->GetGhoulResurrectGhoulGUID().IsEmpty())
return;
- oldAI = player->GetAI();
+ oldAI = player->AI();
oldAIState = player->IsAIEnabled;
player->SetAI(new player_ghoulAI(player, player->GetGhoulResurrectGhoulGUID()));
player->IsAIEnabled = true;
@@ -1922,7 +1922,7 @@ public:
return;
player->IsAIEnabled = oldAIState;
- UnitAI* thisAI = player->GetAI();
+ PlayerAI* thisAI = player->AI();
player->SetAI(oldAI);
delete thisAI;
@@ -1943,7 +1943,7 @@ public:
AfterEffectRemove += AuraEffectRemoveFn(spell_dk_raise_ally_AuraScript::OnRemove, EFFECT_1, SPELL_AURA_DUMMY, AURA_EFFECT_HANDLE_REAL);
}
- UnitAI* oldAI;
+ PlayerAI* oldAI;
bool oldAIState;
};