diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/server/game/AI/ScriptedAI/ScriptedGossip.cpp | 4 | ||||
-rw-r--r-- | src/server/game/Entities/Creature/GossipDef.cpp | 18 | ||||
-rw-r--r-- | src/server/game/Entities/Creature/GossipDef.h | 6 |
3 files changed, 10 insertions, 18 deletions
diff --git a/src/server/game/AI/ScriptedAI/ScriptedGossip.cpp b/src/server/game/AI/ScriptedAI/ScriptedGossip.cpp index 879b808d5d6..3050be3ada2 100644 --- a/src/server/game/AI/ScriptedAI/ScriptedGossip.cpp +++ b/src/server/game/AI/ScriptedAI/ScriptedGossip.cpp @@ -42,13 +42,13 @@ void ClearGossipMenuFor(Player* player) // Using provided text, not from DB void AddGossipItemFor(Player* player, GossipOptionNpc optionNpc, std::string text, uint32 sender, uint32 action) { - player->PlayerTalkClass->GetGossipMenu().AddMenuItem(0, -1, optionNpc, std::move(text), 0, GossipOptionFlags::None, {}, false, 0, "", {}, {}, sender, action); + player->PlayerTalkClass->GetGossipMenu().AddMenuItem(0, -1, optionNpc, std::move(text), 0, GossipOptionFlags::None, {}, 0, 0, false, 0, "", {}, {}, sender, action); } // Using provided texts, not from DB void AddGossipItemFor(Player* player, GossipOptionNpc optionNpc, std::string text, uint32 sender, uint32 action, std::string popupText, uint32 popupMoney, bool coded) { - player->PlayerTalkClass->GetGossipMenu().AddMenuItem(0, -1, optionNpc, std::move(text), 0, GossipOptionFlags::None, {}, coded, popupMoney, std::move(popupText), {}, {}, sender, action); + player->PlayerTalkClass->GetGossipMenu().AddMenuItem(0, -1, optionNpc, std::move(text), 0, GossipOptionFlags::None, {}, 0, 0, coded, popupMoney, std::move(popupText), {}, {}, sender, action); } // Uses gossip item info from DB diff --git a/src/server/game/Entities/Creature/GossipDef.cpp b/src/server/game/Entities/Creature/GossipDef.cpp index 2cf5aaa47e2..527a2bff379 100644 --- a/src/server/game/Entities/Creature/GossipDef.cpp +++ b/src/server/game/Entities/Creature/GossipDef.cpp @@ -41,8 +41,8 @@ GossipMenu::GossipMenu() GossipMenu::~GossipMenu() = default; uint32 GossipMenu::AddMenuItem(int32 gossipOptionId, int32 orderIndex, GossipOptionNpc optionNpc, std::string optionText, uint32 language, - GossipOptionFlags flags, Optional<int32> gossipNpcOptionId, bool boxCoded, uint32 boxMoney, std::string boxText, Optional<int32> spellId, - Optional<int32> overrideIconId, uint32 sender, uint32 action) + GossipOptionFlags flags, Optional<int32> gossipNpcOptionId, uint32 actionMenuId, uint32 actionPoiId, bool boxCoded, uint32 boxMoney, + std::string boxText, Optional<int32> spellId, Optional<int32> overrideIconId, uint32 sender, uint32 action) { ASSERT(_menuItems.size() <= GOSSIP_MAX_MENU_ITEMS); @@ -95,6 +95,8 @@ uint32 GossipMenu::AddMenuItem(int32 gossipOptionId, int32 orderIndex, GossipOpt menuItem.BoxText = std::move(boxText); menuItem.SpellID = spellId; menuItem.OverrideIconID = overrideIconId; + menuItem.ActionMenuID = actionMenuId; + menuItem.ActionPoiID = actionPoiId; menuItem.Sender = sender; menuItem.Action = action; return orderIndex; @@ -159,16 +161,8 @@ void GossipMenu::AddMenuItem(GossipMenuItems const& menuItem, uint32 sender, uin } AddMenuItem(menuItem.GossipOptionID, menuItem.OrderIndex, menuItem.OptionNpc, std::move(strOptionText), menuItem.Language, menuItem.Flags, - menuItem.GossipNpcOptionID, menuItem.BoxCoded, menuItem.BoxMoney, std::move(strBoxText), menuItem.SpellID, menuItem.OverrideIconID, sender, action); - AddGossipMenuItemData(menuItem.OrderIndex, menuItem.ActionMenuID, menuItem.ActionPoiID); -} - -void GossipMenu::AddGossipMenuItemData(uint32 menuItemId, uint32 gossipActionMenuId, uint32 gossipActionPoi) -{ - GossipMenuItem& menuItem = _menuItems[menuItemId]; - - menuItem.ActionMenuID = gossipActionMenuId; - menuItem.ActionPoiID = gossipActionPoi; + menuItem.GossipNpcOptionID, menuItem.ActionMenuID, menuItem.ActionPoiID, menuItem.BoxCoded, menuItem.BoxMoney, std::move(strBoxText), + menuItem.SpellID, menuItem.OverrideIconID, sender, action); } GossipMenuItem const* GossipMenu::GetItem(int32 gossipOptionId) const diff --git a/src/server/game/Entities/Creature/GossipDef.h b/src/server/game/Entities/Creature/GossipDef.h index b4f0cd61136..42d795b6296 100644 --- a/src/server/game/Entities/Creature/GossipDef.h +++ b/src/server/game/Entities/Creature/GossipDef.h @@ -157,8 +157,8 @@ class TC_GAME_API GossipMenu ~GossipMenu(); uint32 AddMenuItem(int32 gossipOptionId, int32 orderIndex, GossipOptionNpc optionNpc, std::string optionText, uint32 language, GossipOptionFlags flags, - Optional<int32> gossipNpcOptionId, bool boxCoded, uint32 boxMoney, std::string boxText, Optional<int32> spellId, - Optional<int32> overrideIconId, uint32 sender, uint32 action); + Optional<int32> gossipNpcOptionId, uint32 actionMenuId, uint32 actionPoiId, bool boxCoded, uint32 boxMoney, + std::string boxText, Optional<int32> spellId, Optional<int32> overrideIconId, uint32 sender, uint32 action); void AddMenuItem(uint32 menuId, uint32 menuItemId, uint32 sender, uint32 action); void AddMenuItem(GossipMenuItems const& menuItem, uint32 sender, uint32 action); @@ -167,8 +167,6 @@ class TC_GAME_API GossipMenu void SetLocale(LocaleConstant locale) { _locale = locale; } LocaleConstant GetLocale() const { return _locale; } - void AddGossipMenuItemData(uint32 menuItemId, uint32 gossipActionMenuId, uint32 gossipActionPoi); - uint32 GetMenuItemCount() const { return _menuItems.size(); |