diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/server/game/Entities/Player/Player.cpp | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp index 16584677921..6b6ccd358da 100644 --- a/src/server/game/Entities/Player/Player.cpp +++ b/src/server/game/Entities/Player/Player.cpp @@ -15925,16 +15925,18 @@ QuestGiverStatus Player::GetQuestDialogStatus(Object* questgiver) { case TYPEID_GAMEOBJECT: { - if (auto questStatus = questgiver->ToGameObject()->AI()->GetDialogStatus(this)) - return *questStatus; + if (auto ai = questgiver->ToGameObject()->AI()) + if (auto questStatus = ai->GetDialogStatus(this)) + return *questStatus; qr = sObjectMgr->GetGOQuestRelationBounds(questgiver->GetEntry()); qir = sObjectMgr->GetGOQuestInvolvedRelationBounds(questgiver->GetEntry()); break; } case TYPEID_UNIT: { - if (auto questStatus = questgiver->ToCreature()->AI()->GetDialogStatus(this)) - return *questStatus; + if (auto ai = questgiver->ToCreature()->AI()) + if (auto questStatus = ai->GetDialogStatus(this)) + return *questStatus; qr = sObjectMgr->GetCreatureQuestRelationBounds(questgiver->GetEntry()); qir = sObjectMgr->GetCreatureQuestInvolvedRelationBounds(questgiver->GetEntry()); break; |