From dc021efd8a347e9ead677ed04c7f7f0a583a177b Mon Sep 17 00:00:00 2001 From: hondacrx Date: Sun, 3 Oct 2021 13:15:39 -0400 Subject: [PATCH] Core/Gossip: Update GossipOptionIcon enum Port From (https://github.com/TrinityCore/TrinityCore/commit/5c287929b216bf6d3818d77f507beb8dfb617a43) --- Source/Framework/Constants/GossipConst.cs | 68 +++++++++++++++-------- Source/Game/Globals/ObjectManager.cs | 2 +- Source/Scripts/World/GameObject.cs | 26 ++++----- Source/Scripts/World/NpcInnkeeper.cs | 4 +- 4 files changed, 62 insertions(+), 38 deletions(-) diff --git a/Source/Framework/Constants/GossipConst.cs b/Source/Framework/Constants/GossipConst.cs index b1fb6f8eb..984db7fa5 100644 --- a/Source/Framework/Constants/GossipConst.cs +++ b/Source/Framework/Constants/GossipConst.cs @@ -45,28 +45,52 @@ namespace Framework.Constants public enum GossipOptionIcon { - Chat = 0, // White Chat Bubble - Vendor = 1, // Brown Bag - Taxi = 2, // Flightmarker (Paperplane) - Trainer = 3, // Brown Book (Trainer) - Interact1 = 4, // Golden Interaction Wheel - Interact2 = 5, // Golden Interaction Wheel - MoneyBag = 6, // Brown Bag (With Gold Coin In Lower Corner) - Talk = 7, // White Chat Bubble (With "..." Inside) - Tabard = 8, // White Tabard - Battle = 9, // Two Crossed Swords - Dot = 10, // Yellow Dot/Point - Chat11 = 11, // White Chat Bubble - Chat12 = 12, // White Chat Bubble - Chat13 = 13, // White Chat Bubble - Unk14 = 14, // Invalid - Do Not Use - Unk15 = 15, // Invalid - Do Not Use - Chat16 = 16, // White Chat Bubble - Chat17 = 17, // White Chat Bubble - Chat18 = 18, // White Chat Bubble - Chat19 = 19, // White Chat Bubble - Chat20 = 20, // White Chat Bubble - Chat21 = 21, // transmogrifier? + None = 0, // White chat bubble. Default + Vendor = 1, // Brown bag + TaxiNode = 2, // White wing + Trainer = 3, // Brown book + SpiritHealer = 4, // Golden interaction wheel (with red center) + Binder = 5, // Golden interaction wheel + Banker = 6, // Brown bag (with gold coin in lower corner) + PetitionVendor = 7, // White chat bubble (with "..." inside) + TabardVendor = 8, // White tabard + BattleMaster = 9, // Two crossed swords + Auctioneer = 10, // Stack of gold coins + TalentMaster = 11, // White chat bubble + StableMaster = 12, // White chat bubble + PetSpecializationMaster = 13, // White chat bubble + GuildBanker = 14, // White chat bubble + SpellClick = 15, // White chat bubble + DisableXPGain = 16, // White chat bubble + EnableXPGain = 17, // White chat bubble + Mailbox = 18, // White chat bubble + WorldPVPQueue = 19, // White chat bubble + DungeonFinder = 20, // White chat bubble + ArtifactRespec = 21, // White chat bubble + CemeterySelect = 22, // White chat bubble + SpecializationMaster = 23, // White chat bubble + GlyphMaster = 24, // White chat bubble + ScenarioQueue = 25, // White chat bubble + GarrisonArchitect = 26, // White chat bubble + GarrisonMission = 27, // White chat bubble + GarrisonShipment = 28, // Brown document + GarrisonTradeskill = 29, // White chat bubble + GarrisonRecruitment = 30, // White chat bubble + AdventureMap = 31, // White chat bubble + GarrisonTalent = 32, // White chat bubble + ContributionCollector = 33, // White chat bubble + Transmogrify = 34, // Purple helm + AzeriteRespec = 35, // White chat bubble + IslandsQueue = 36, // White chat bubble + UIItemInteraction = 37, // White chat bubble + WorldMap = 38, // White chat bubble + Unk39 = 39, // + ChromieTime = 40, // White chat bubble + Unk41 = 41, // + RuneforgeCrafting = 42, // White chat bubble + GuideRecruiter = 43, // White chat bubble + RuneforgeUpgrading = 44, // White chat bubble + CovenantRenown = 45, // White chat bubble Max } diff --git a/Source/Game/Globals/ObjectManager.cs b/Source/Game/Globals/ObjectManager.cs index 79464f18d..0e5a2758e 100644 --- a/Source/Game/Globals/ObjectManager.cs +++ b/Source/Game/Globals/ObjectManager.cs @@ -631,7 +631,7 @@ namespace Game if (gMenuItem.OptionIcon >= GossipOptionIcon.Max) { Log.outError(LogFilter.Sql, $"Table gossip_menu_option for MenuId {gMenuItem.MenuId}, OptionIndex {gMenuItem.OptionIndex} has unknown icon id {gMenuItem.OptionIcon}. Replacing with GossipOptionIcon.Chat"); - gMenuItem.OptionIcon = GossipOptionIcon.Chat; + gMenuItem.OptionIcon = GossipOptionIcon.None; } if (gMenuItem.OptionBroadcastTextId != 0) diff --git a/Source/Scripts/World/GameObject.cs b/Source/Scripts/World/GameObject.cs index 2ac85806b..0a7bf4ac0 100644 --- a/Source/Scripts/World/GameObject.cs +++ b/Source/Scripts/World/GameObject.cs @@ -607,8 +607,8 @@ namespace Scripts.World.GameObjects if (me.GetGoType() == GameObjectTypes.QuestGiver) /* != GAMEOBJECT_TYPE_QUESTGIVER) */ player.PrepareQuestMenu(me.GetGUID()); /* return true*/ - player.AddGossipItem(GossipOptionIcon.Chat, GossipConst.GossipFelCrystalforgeItem1, eTradeskill.GossipSenderMain, eTradeskill.GossipActionInfoDef); - player.AddGossipItem(GossipOptionIcon.Chat, GossipConst.GossipFelCrystalforgeItem5, eTradeskill.GossipSenderMain, eTradeskill.GossipActionInfoDef + 1); + player.AddGossipItem(GossipOptionIcon.None, GossipConst.GossipFelCrystalforgeItem1, eTradeskill.GossipSenderMain, eTradeskill.GossipActionInfoDef); + player.AddGossipItem(GossipOptionIcon.None, GossipConst.GossipFelCrystalforgeItem5, eTradeskill.GossipSenderMain, eTradeskill.GossipActionInfoDef + 1); player.SendGossipMenu(GossipConst.GossipFelCrystalforgeText, me.GetGUID()); @@ -623,17 +623,17 @@ namespace Scripts.World.GameObjects { case eTradeskill.GossipActionInfoDef: player.CastSpell(player, SpellIds.Create1FlaskOfBeast, false); - player.AddGossipItem(GossipOptionIcon.Chat, GossipConst.GossipFelCrystalforgeItemReturn, eTradeskill.GossipSenderMain, eTradeskill.GossipActionInfoDef + 2); + player.AddGossipItem(GossipOptionIcon.None, GossipConst.GossipFelCrystalforgeItemReturn, eTradeskill.GossipSenderMain, eTradeskill.GossipActionInfoDef + 2); player.SendGossipMenu(GossipConst.GossipFelCrystalforgeItemTextReturn, me.GetGUID()); break; case eTradeskill.GossipActionInfoDef + 1: player.CastSpell(player, SpellIds.Create5FlaskOfBeast, false); - player.AddGossipItem(GossipOptionIcon.Chat, GossipConst.GossipFelCrystalforgeItemReturn, eTradeskill.GossipSenderMain, eTradeskill.GossipActionInfoDef + 2); + player.AddGossipItem(GossipOptionIcon.None, GossipConst.GossipFelCrystalforgeItemReturn, eTradeskill.GossipSenderMain, eTradeskill.GossipActionInfoDef + 2); player.SendGossipMenu(GossipConst.GossipFelCrystalforgeItemTextReturn, me.GetGUID()); break; case eTradeskill.GossipActionInfoDef + 2: - player.AddGossipItem(GossipOptionIcon.Chat, GossipConst.GossipFelCrystalforgeItem1, eTradeskill.GossipSenderMain, eTradeskill.GossipActionInfoDef); - player.AddGossipItem(GossipOptionIcon.Chat, GossipConst.GossipFelCrystalforgeItem5, eTradeskill.GossipSenderMain, eTradeskill.GossipActionInfoDef + 1); + player.AddGossipItem(GossipOptionIcon.None, GossipConst.GossipFelCrystalforgeItem1, eTradeskill.GossipSenderMain, eTradeskill.GossipActionInfoDef); + player.AddGossipItem(GossipOptionIcon.None, GossipConst.GossipFelCrystalforgeItem5, eTradeskill.GossipSenderMain, eTradeskill.GossipActionInfoDef + 1); player.SendGossipMenu(GossipConst.GossipFelCrystalforgeText, me.GetGUID()); break; } @@ -651,8 +651,8 @@ namespace Scripts.World.GameObjects if (me.GetGoType() == GameObjectTypes.QuestGiver) /* != GAMEOBJECT_TYPE_QUESTGIVER) */ player.PrepareQuestMenu(me.GetGUID()); /* return true*/ - player.AddGossipItem(GossipOptionIcon.Chat, GossipConst.GossipBashirCrystalforgeItem1, eTradeskill.GossipSenderMain, eTradeskill.GossipActionInfoDef); - player.AddGossipItem(GossipOptionIcon.Chat, GossipConst.GossipBashirCrystalforgeItem5, eTradeskill.GossipSenderMain, eTradeskill.GossipActionInfoDef + 1); + player.AddGossipItem(GossipOptionIcon.None, GossipConst.GossipBashirCrystalforgeItem1, eTradeskill.GossipSenderMain, eTradeskill.GossipActionInfoDef); + player.AddGossipItem(GossipOptionIcon.None, GossipConst.GossipBashirCrystalforgeItem5, eTradeskill.GossipSenderMain, eTradeskill.GossipActionInfoDef + 1); player.SendGossipMenu(GossipConst.GossipBashirCrystalforgeText, me.GetGUID()); @@ -667,17 +667,17 @@ namespace Scripts.World.GameObjects { case eTradeskill.GossipActionInfoDef: player.CastSpell(player, SpellIds.Create1FlaskOfSorcerer, false); - player.AddGossipItem(GossipOptionIcon.Chat, GossipConst.GossipBashirCrystalforgeItemReturn, eTradeskill.GossipSenderMain, eTradeskill.GossipActionInfoDef + 2); + player.AddGossipItem(GossipOptionIcon.None, GossipConst.GossipBashirCrystalforgeItemReturn, eTradeskill.GossipSenderMain, eTradeskill.GossipActionInfoDef + 2); player.SendGossipMenu(GossipConst.GossipBashirCrystalforgeItemTextReturn, me.GetGUID()); break; case eTradeskill.GossipActionInfoDef + 1: player.CastSpell(player, SpellIds.Create5FlaskOfSorcerer, false); - player.AddGossipItem(GossipOptionIcon.Chat, GossipConst.GossipBashirCrystalforgeItemReturn, eTradeskill.GossipSenderMain, eTradeskill.GossipActionInfoDef + 2); + player.AddGossipItem(GossipOptionIcon.None, GossipConst.GossipBashirCrystalforgeItemReturn, eTradeskill.GossipSenderMain, eTradeskill.GossipActionInfoDef + 2); player.SendGossipMenu(GossipConst.GossipBashirCrystalforgeItemTextReturn, me.GetGUID()); break; case eTradeskill.GossipActionInfoDef + 2: - player.AddGossipItem(GossipOptionIcon.Chat, GossipConst.GossipBashirCrystalforgeItem1, eTradeskill.GossipSenderMain, eTradeskill.GossipActionInfoDef); - player.AddGossipItem(GossipOptionIcon.Chat, GossipConst.GossipBashirCrystalforgeItem5, eTradeskill.GossipSenderMain, eTradeskill.GossipActionInfoDef + 1); + player.AddGossipItem(GossipOptionIcon.None, GossipConst.GossipBashirCrystalforgeItem1, eTradeskill.GossipSenderMain, eTradeskill.GossipActionInfoDef); + player.AddGossipItem(GossipOptionIcon.None, GossipConst.GossipBashirCrystalforgeItem5, eTradeskill.GossipSenderMain, eTradeskill.GossipActionInfoDef + 1); player.SendGossipMenu(GossipConst.GossipBashirCrystalforgeText, me.GetGUID()); break; } @@ -909,7 +909,7 @@ namespace Scripts.World.GameObjects QuestStatus status = player.GetQuestStatus(QuestIds.DoingYourDuty); if (status == QuestStatus.Incomplete || status == QuestStatus.Complete || status == QuestStatus.Rewarded) { - player.AddGossipItem(GossipOptionIcon.Chat, GossipConst.GossipUseOuthouse, eTradeskill.GossipSenderMain, eTradeskill.GossipActionInfoDef + 1); + player.AddGossipItem(GossipOptionIcon.None, GossipConst.GossipUseOuthouse, eTradeskill.GossipSenderMain, eTradeskill.GossipActionInfoDef + 1); player.SendGossipMenu(GossipConst.GossipOuthouseVacant, me.GetGUID()); } else diff --git a/Source/Scripts/World/NpcInnkeeper.cs b/Source/Scripts/World/NpcInnkeeper.cs index c41c223a7..a75f8645d 100644 --- a/Source/Scripts/World/NpcInnkeeper.cs +++ b/Source/Scripts/World/NpcInnkeeper.cs @@ -72,7 +72,7 @@ namespace Scripts.World.NpcInnkeeper localizedEntry = Gossip.LocaleTrickOrTreat0; break; } - player.AddGossipItem(GossipOptionIcon.Chat, localizedEntry, eTradeskill.GossipSenderMain, eTradeskill.GossipActionInfoDef + 1); + player.AddGossipItem(GossipOptionIcon.None, localizedEntry, eTradeskill.GossipSenderMain, eTradeskill.GossipActionInfoDef + 1); } if (me.IsQuestGiver()) @@ -116,7 +116,7 @@ namespace Scripts.World.NpcInnkeeper default: localizedEntry = Gossip.LocaleInnkeeper0; break; } - player.AddGossipItem(GossipOptionIcon.Interact1, localizedEntry, eTradeskill.GossipSenderMain, eTradeskill.GossipActionInn); + player.AddGossipItem(GossipOptionIcon.Binder, localizedEntry, eTradeskill.GossipSenderMain, eTradeskill.GossipActionInn); } player.TalkedToCreature(me.GetEntry(), me.GetGUID());