Core/Scripts: unified scripted gossip/quest api

Port From (https://github.com/TrinityCore/TrinityCore/commit/6604849716bc73d82a4cdbf8c66bb188086ceae4)
This commit is contained in:
hondacrx
2020-05-22 13:28:20 -04:00
parent 87b63b0975
commit c2aee387a8
30 changed files with 1642 additions and 1367 deletions
+5 -4
View File
@@ -578,7 +578,7 @@ namespace Game.Entities
switch (questGiver.GetTypeId())
{
case TypeId.Unit:
Global.ScriptMgr.OnQuestAccept(this, (questGiver.ToCreature()), quest);
PlayerTalkClass.ClearMenus();
questGiver.ToCreature().GetAI().QuestAccept(this, quest);
break;
case TypeId.Item:
@@ -606,7 +606,7 @@ namespace Game.Entities
break;
}
case TypeId.GameObject:
Global.ScriptMgr.OnQuestAccept(this, questGiver.ToGameObject(), quest);
PlayerTalkClass.ClearMenus();
questGiver.ToGameObject().GetAI().QuestAccept(this, quest);
break;
default:
@@ -1817,11 +1817,12 @@ namespace Game.Entities
List<uint> qr;
List<uint> qir;
PlayerTalkClass.ClearMenus();
switch (questgiver.GetTypeId())
{
case TypeId.GameObject:
{
QuestGiverStatus questStatus = (QuestGiverStatus)Global.ScriptMgr.GetDialogStatus(this, questgiver.ToGameObject());
QuestGiverStatus questStatus = (QuestGiverStatus)questgiver.ToGameObject().GetAI().GetDialogStatus(this);
if (questStatus != QuestGiverStatus.ScriptedNoStatus)
return questStatus;
qr = Global.ObjectMgr.GetGOQuestRelationBounds(questgiver.GetEntry());
@@ -1830,7 +1831,7 @@ namespace Game.Entities
}
case TypeId.Unit:
{
QuestGiverStatus questStatus = (QuestGiverStatus)Global.ScriptMgr.GetDialogStatus(this, questgiver.ToCreature());
QuestGiverStatus questStatus = (QuestGiverStatus)questgiver.ToCreature().GetAI().GetDialogStatus(this);
if (questStatus != QuestGiverStatus.ScriptedNoStatus)
return questStatus;
qr = Global.ObjectMgr.GetCreatureQuestRelationBounds(questgiver.GetEntry());