Core/Quest: Fix crash caused by disabled quests

Port From (https://github.com/TrinityCore/TrinityCore/commit/330881518a5912939a2a26a7f3dbc64ccf74b5cc)
This commit is contained in:
hondacrx
2021-09-26 14:29:52 -04:00
parent fdc78a2350
commit c67811c52e
2 changed files with 3 additions and 9 deletions
+3 -3
View File
@@ -44,7 +44,7 @@ namespace Game.Chat
return false;
Quest quest = Global.ObjectMgr.GetQuestTemplate(entry);
if (quest == null)
if (quest == null || Global.DisableMgr.IsDisabledFor(DisableType.Quest, entry, null))
{
handler.SendSysMessage(CypherStrings.CommandQuestNotfound, entry);
return false;
@@ -86,7 +86,7 @@ namespace Game.Chat
Quest quest = Global.ObjectMgr.GetQuestTemplate(entry);
// If player doesn't have the quest
if (quest == null || player.GetQuestStatus(entry) == QuestStatus.None)
if (quest == null || player.GetQuestStatus(entry) == QuestStatus.None || Global.DisableMgr.IsDisabledFor(DisableType.Quest, entry, null))
{
handler.SendSysMessage(CypherStrings.CommandQuestNotfound, entry);
return false;
@@ -240,7 +240,7 @@ namespace Game.Chat
Quest quest = Global.ObjectMgr.GetQuestTemplate(entry);
// If player doesn't have the quest
if (quest == null || player.GetQuestStatus(entry) != QuestStatus.Complete)
if (quest == null || player.GetQuestStatus(entry) != QuestStatus.Complete || Global.DisableMgr.IsDisabledFor(DisableType.Quest, entry, null))
{
handler.SendSysMessage(CypherStrings.CommandQuestNotfound, entry);
return false;
-6
View File
@@ -367,12 +367,6 @@ namespace Game
}
return false;
case DisableType.Quest:
if (refe == null)
return true;
Player player1 = refe.ToPlayer();
if (player1 != null)
if (player1.IsGameMaster())
return false;
return true;
case DisableType.Battleground:
case DisableType.OutdoorPVP: