diff options
author | Treeston <treeston.mmoc@gmail.com> | 2018-01-01 17:07:39 +0100 |
---|---|---|
committer | Shauren <shauren.trinity@gmail.com> | 2021-04-27 23:49:36 +0200 |
commit | 0aed5a35efd0305c1c3046430a1b348f2049a1c5 (patch) | |
tree | bc6695de95bb8d342692f714bffb0367145346f3 /src/server/game/Handlers/QuestHandler.cpp | |
parent | f4ef40d9686135088a76c90a3f9de6a6bc10e8f0 (diff) |
Core/AI: Kick Gossip functions upstairs, from UnitAI to CreatureAI - they only make sense for Creatures anyway.
Also change a very ugly hack in GetDialogStatus. Ew.
(cherry picked from commit eacfa9d89afcfad0cbd0715c8a84890c3ccd1c74)
Diffstat (limited to 'src/server/game/Handlers/QuestHandler.cpp')
-rw-r--r-- | src/server/game/Handlers/QuestHandler.cpp | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/src/server/game/Handlers/QuestHandler.cpp b/src/server/game/Handlers/QuestHandler.cpp index a02fa586775..52ed231c53f 100644 --- a/src/server/game/Handlers/QuestHandler.cpp +++ b/src/server/game/Handlers/QuestHandler.cpp @@ -19,6 +19,7 @@ #include "Battleground.h" #include "Common.h" #include "Creature.h" +#include "CreatureAI.h" #include "DatabaseEnv.h" #include "DB2Stores.h" #include "GameObject.h" @@ -34,7 +35,6 @@ #include "QuestPackets.h" #include "ReputationMgr.h" #include "ScriptMgr.h" -#include "UnitAI.h" #include "World.h" void WorldSession::HandleQuestgiverStatusQueryOpcode(WorldPackets::Quest::QuestGiverStatusQuery& packet) @@ -93,7 +93,7 @@ void WorldSession::HandleQuestgiverHelloOpcode(WorldPackets::Quest::QuestGiverHe creature->SetHomePosition(creature->GetPosition()); _player->PlayerTalkClass->ClearMenus(); - if (creature->GetAI()->GossipHello(_player)) + if (creature->AI()->GossipHello(_player)) return; _player->PrepareGossipMenu(creature, creature->GetCreatureTemplate()->GossipMenuId, true); @@ -388,7 +388,6 @@ void WorldSession::HandleQuestgiverChooseRewardOpcode(WorldPackets::Quest::Quest case TYPEID_PLAYER: { //For AutoSubmition was added plr case there as it almost same exclute AI script cases. - Unit* unitQGiver = object->ToUnit(); // Send next quest if (Quest const* nextQuest = _player->GetNextQuest(packet.QuestGiverGUID, quest)) { @@ -403,8 +402,8 @@ void WorldSession::HandleQuestgiverChooseRewardOpcode(WorldPackets::Quest::Quest } _player->PlayerTalkClass->ClearMenus(); - if (UnitAI* qGiverAI = unitQGiver->GetAI()) - qGiverAI->QuestReward(_player, quest, packet.Choice.LootItemType, packet.Choice.Item.ItemID); + if (Creature* creatureQGiver = object->ToCreature()) + creatureQGiver->AI()->QuestReward(_player, quest, packet.Choice.LootItemType, packet.Choice.Item.ItemID); break; } case TYPEID_GAMEOBJECT: |