From 2e144381742cad218e21c57843c350fa7935e562 Mon Sep 17 00:00:00 2001 From: hondacrx Date: Thu, 5 Jan 2023 16:48:11 -0500 Subject: [PATCH] Core/Gossip: Move setting ActionMenuID and ActionPoiID directly into GossipMenu::AddMenuItem and remove GossipMenu::AddGossipMenuItemData Port From (https://github.com/TrinityCore/TrinityCore/commit/c7e89d35768e7019a40babcdf1e57d025740bc98) --- Source/Game/Entities/Creature/Gossip.cs | 17 ++++++----------- Source/Game/Entities/Player/Player.cs | 4 ++-- Source/Game/Scripting/CoreScripts.cs | 4 ++-- 3 files changed, 10 insertions(+), 15 deletions(-) diff --git a/Source/Game/Entities/Creature/Gossip.cs b/Source/Game/Entities/Creature/Gossip.cs index 055d6b54d..45d1e0206 100644 --- a/Source/Game/Entities/Creature/Gossip.cs +++ b/Source/Game/Entities/Creature/Gossip.cs @@ -31,8 +31,8 @@ namespace Game.Misc public class GossipMenu { public uint AddMenuItem(int gossipOptionId, int orderIndex, GossipOptionNpc optionNpc, string optionText, uint language, - GossipOptionFlags flags, int? gossipNpcOptionId, bool boxCoded, uint boxMoney, string boxText, int? spellId, - int? overrideIconId, uint sender, uint action) + GossipOptionFlags flags, int? gossipNpcOptionId, uint actionMenuId, uint actionPoiId, bool boxCoded, uint boxMoney, + string boxText, int? spellId, int? overrideIconId, uint sender, uint action) { Cypher.Assert(_menuItems.Count <= SharedConst.MaxGossipMenuItems); @@ -77,6 +77,8 @@ namespace Game.Misc menuItem.BoxText = boxText; menuItem.SpellID = spellId; menuItem.OverrideIconID = overrideIconId; + menuItem.ActionMenuID = actionMenuId; + menuItem.ActionPoiID = actionPoiId; menuItem.Sender = sender; menuItem.Action = action; @@ -147,15 +149,8 @@ namespace Game.Misc } AddMenuItem(menuItem.GossipOptionID, (int)menuItem.OrderIndex, menuItem.OptionNpc, strOptionText, menuItem.Language, menuItem.Flags, - menuItem.GossipNpcOptionID, menuItem.BoxCoded, menuItem.BoxMoney, strBoxText, menuItem.SpellID, (int)menuItem.OverrideIconID, sender, action); - AddGossipMenuItemData(menuItem.OrderIndex, menuItem.ActionMenuID, menuItem.ActionPoiID); - } - - public void AddGossipMenuItemData(uint menuItemId, uint gossipActionMenuId, uint gossipActionPoi) - { - GossipMenuItem menuItem = _menuItems[menuItemId]; - menuItem.ActionMenuID = gossipActionMenuId; - menuItem.ActionPoiID = gossipActionPoi; + menuItem.GossipNpcOptionID, menuItem.ActionMenuID, menuItem.ActionPoiID, menuItem.BoxCoded, menuItem.BoxMoney, strBoxText, + menuItem.SpellID, menuItem.OverrideIconID, sender, action); } public GossipMenuItem GetItem(int gossipOptionId) diff --git a/Source/Game/Entities/Player/Player.cs b/Source/Game/Entities/Player/Player.cs index 229997a2e..5aeda9de2 100644 --- a/Source/Game/Entities/Player/Player.cs +++ b/Source/Game/Entities/Player/Player.cs @@ -7365,11 +7365,11 @@ namespace Game.Entities //Helpers public void AddGossipItem(GossipOptionNpc optionNpc, string text, uint sender, uint action) { - PlayerTalkClass.GetGossipMenu().AddMenuItem(0, -1, optionNpc, text, 0, GossipOptionFlags.None, null, false, 0, "", null, null, sender, action); + PlayerTalkClass.GetGossipMenu().AddMenuItem(0, -1, optionNpc, text, 0, GossipOptionFlags.None, null, 0, 0, false, 0, "", null, null, sender, action); } public void AddGossipItem(GossipOptionNpc optionNpc, string text, uint sender, uint action, string popupText, uint popupMoney, bool coded) { - PlayerTalkClass.GetGossipMenu().AddMenuItem(0, -1, optionNpc, text, 0, GossipOptionFlags.None, null, coded, popupMoney, popupText, null, null, sender, action); + PlayerTalkClass.GetGossipMenu().AddMenuItem(0, -1, optionNpc, text, 0, GossipOptionFlags.None, null, 0, 0, coded, popupMoney, popupText, null, null, sender, action); } public void AddGossipItem(uint gossipMenuID, uint gossipMenuItemID, uint sender, uint action) { diff --git a/Source/Game/Scripting/CoreScripts.cs b/Source/Game/Scripting/CoreScripts.cs index ca25f0a6f..96160ceda 100644 --- a/Source/Game/Scripting/CoreScripts.cs +++ b/Source/Game/Scripting/CoreScripts.cs @@ -59,12 +59,12 @@ namespace Game.Scripting // Using provided text, not from DB public static void AddGossipItemFor(Player player, GossipOptionNpc optionNpc, string text, uint sender, uint action) { - player.PlayerTalkClass.GetGossipMenu().AddMenuItem(0, -1, optionNpc, text, 0, GossipOptionFlags.None, null, false, 0, "", null, null, sender, action); + player.PlayerTalkClass.GetGossipMenu().AddMenuItem(0, -1, optionNpc, text, 0, GossipOptionFlags.None, null, 0, 0, false, 0, "", null, null, sender, action); } // Using provided texts, not from DB public static void AddGossipItemFor(Player player, GossipOptionNpc optionNpc, string text, uint sender, uint action, string popupText, uint popupMoney, bool coded) { - player.PlayerTalkClass.GetGossipMenu().AddMenuItem(0, -1, optionNpc, text, 0, GossipOptionFlags.None, null, coded, popupMoney, popupText, null, null, sender, action); + player.PlayerTalkClass.GetGossipMenu().AddMenuItem(0, -1, optionNpc, text, 0, GossipOptionFlags.None, null, 0, 0, coded, popupMoney, popupText, null, null, sender, action); } // Uses gossip item info from DB public static void AddGossipItemFor(Player player, uint gossipMenuID, uint gossipMenuItemID, uint sender, uint action)