diff --git a/src/game/Chat.cpp b/src/game/Chat.cpp index 23457fdf7..b49aab964 100644 --- a/src/game/Chat.cpp +++ b/src/game/Chat.cpp @@ -423,6 +423,8 @@ ChatCommand * ChatHandler::getCommandTable() { "gameobject_questrelation", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadGOQuestRelationsCommand, "", NULL }, { "gameobject_scripts", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadGameObjectScriptsCommand, "", NULL }, { "gameobject_battleground", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadBattleEventCommand, "", NULL }, + { "gossip_menu", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadGossipMenuCommand, "", NULL }, + { "gossip_menu_option", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadGossipMenuOptionCommand, "", NULL }, { "item_enchantment_template", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadItemEnchantementsCommand, "", NULL }, { "item_loot_template", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadLootTemplatesItemCommand, "", NULL }, { "item_required_target", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadItemRequiredTragetCommand, "", NULL }, @@ -439,7 +441,6 @@ ChatCommand * ChatHandler::getCommandTable() { "mangos_string", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadMangosStringCommand, "", NULL }, { "milling_loot_template", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadLootTemplatesMillingCommand, "", NULL }, { "npc_gossip", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadNpcGossipCommand, "", NULL }, - { "npc_option", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadNpcOptionCommand, "", NULL }, { "npc_spellclick_spells", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadSpellClickSpellsCommand, "",NULL}, { "npc_trainer", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadNpcTrainerCommand, "", NULL }, { "npc_vendor", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadNpcVendorCommand, "", NULL }, diff --git a/src/game/Chat.h b/src/game/Chat.h index a96dce943..665696a10 100644 --- a/src/game/Chat.h +++ b/src/game/Chat.h @@ -335,6 +335,8 @@ class ChatHandler bool HandleReloadGameGraveyardZoneCommand(const char* args); bool HandleReloadGameObjectScriptsCommand(const char* args); bool HandleReloadGameTeleCommand(const char* args); + bool HandleReloadGossipMenuCommand(const char* args); + bool HandleReloadGossipMenuOptionCommand(const char* args); bool HandleReloadGOQuestRelationsCommand(const char* args); bool HandleReloadGOQuestInvRelationsCommand(const char* args); bool HandleReloadItemEnchantementsCommand(const char* args); @@ -362,7 +364,6 @@ class ChatHandler bool HandleReloadMailLevelRewardCommand(const char* args); bool HandleReloadMangosStringCommand(const char* args); bool HandleReloadNpcGossipCommand(const char* args); - bool HandleReloadNpcOptionCommand(const char* args); bool HandleReloadNpcTrainerCommand(const char* args); bool HandleReloadNpcVendorCommand(const char* args); bool HandleReloadPageTextsCommand(const char* args); diff --git a/src/game/Creature.h b/src/game/Creature.h index e6e46fe79..e9031c251 100644 --- a/src/game/Creature.h +++ b/src/game/Creature.h @@ -164,7 +164,7 @@ struct CreatureLocale std::vector SubName; }; -struct NpcOptionLocale +struct GossipMenuItemsLocale { std::vector OptionText; std::vector BoxText; diff --git a/src/game/Level3.cpp b/src/game/Level3.cpp index 4320b5ae0..aa72b0256 100644 --- a/src/game/Level3.cpp +++ b/src/game/Level3.cpp @@ -102,7 +102,6 @@ bool ChatHandler::HandleReloadAllLootCommand(const char*) bool ChatHandler::HandleReloadAllNpcCommand(const char* /*args*/) { HandleReloadNpcGossipCommand("a"); - HandleReloadNpcOptionCommand("a"); HandleReloadNpcTrainerCommand("a"); HandleReloadNpcVendorCommand("a"); HandleReloadPointsOfInterestCommand("a"); @@ -252,6 +251,22 @@ bool ChatHandler::HandleReloadCreatureQuestInvRelationsCommand(const char*) return true; } +bool ChatHandler::HandleReloadGossipMenuCommand(const char*) +{ + sLog.outString( "Re-Loading `gossip_menu` Table!" ); + sObjectMgr.LoadGossipMenu(); + SendGlobalSysMessage("DB table `gossip_menu` reloaded."); + return true; +} + +bool ChatHandler::HandleReloadGossipMenuOptionCommand(const char*) +{ + sLog.outString( "Re-Loading `gossip_menu_option` Table!" ); + sObjectMgr.LoadGossipMenuItems(); + SendGlobalSysMessage("DB table `gossip_menu_option` reloaded."); + return true; +} + bool ChatHandler::HandleReloadGOQuestRelationsCommand(const char*) { sLog.outString( "Loading Quests Relations... (`gameobject_questrelation`)" ); @@ -404,15 +419,6 @@ bool ChatHandler::HandleReloadMangosStringCommand(const char*) return true; } -bool ChatHandler::HandleReloadNpcOptionCommand(const char*) -{ - sLog.outString( "Re-Loading `npc_option` Table!" ); - //sObjectMgr.LoadGossipMenu(); - //sObjectMgr.LoadGossipMenuItems(); - SendGlobalSysMessage("DB table `npc_option` reloaded."); - return true; -} - bool ChatHandler::HandleReloadNpcGossipCommand(const char*) { sLog.outString( "Re-Loading `npc_gossip` Table!" ); diff --git a/src/game/ObjectMgr.cpp b/src/game/ObjectMgr.cpp index 2bacdaa39..3166d34ed 100644 --- a/src/game/ObjectMgr.cpp +++ b/src/game/ObjectMgr.cpp @@ -338,9 +338,9 @@ void ObjectMgr::LoadCreatureLocales() sLog.outString( ">> Loaded %lu creature locale strings", (unsigned long)mCreatureLocaleMap.size() ); } -void ObjectMgr::LoadNpcOptionLocales() +void ObjectMgr::LoadGossipMenuItemsLocales() { - mNpcOptionLocaleMap.clear(); // need for reload case + mGossipMenuItemsLocaleMap.clear(); // need for reload case QueryResult *result = WorldDatabase.Query("SELECT menu_id,id," "option_text_loc1,box_text_loc1,option_text_loc2,box_text_loc2," @@ -370,7 +370,7 @@ void ObjectMgr::LoadNpcOptionLocales() uint16 menuId = fields[0].GetUInt16(); uint16 id = fields[1].GetUInt16(); - NpcOptionLocale& data = mNpcOptionLocaleMap[MAKE_PAIR32(menuId,id)]; + GossipMenuItemsLocale& data = mGossipMenuItemsLocaleMap[MAKE_PAIR32(menuId,id)]; for(int i = 1; i < MAX_LOCALE; ++i) { @@ -404,7 +404,7 @@ void ObjectMgr::LoadNpcOptionLocales() delete result; sLog.outString(); - sLog.outString( ">> Loaded %lu gossip_menu_option locale strings", (unsigned long)mNpcOptionLocaleMap.size() ); + sLog.outString( ">> Loaded %lu gossip_menu_option locale strings", (unsigned long)mGossipMenuItemsLocaleMap.size() ); } void ObjectMgr::LoadPointOfInterestLocales() diff --git a/src/game/ObjectMgr.h b/src/game/ObjectMgr.h index dbb9bed72..2fc21293e 100644 --- a/src/game/ObjectMgr.h +++ b/src/game/ObjectMgr.h @@ -162,7 +162,7 @@ typedef UNORDERED_MAP QuestLocaleMap; typedef UNORDERED_MAP NpcTextLocaleMap; typedef UNORDERED_MAP PageTextLocaleMap; typedef UNORDERED_MAP MangosStringLocaleMap; -typedef UNORDERED_MAP NpcOptionLocaleMap; +typedef UNORDERED_MAP GossipMenuItemsLocaleMap; typedef UNORDERED_MAP PointOfInterestLocaleMap; typedef std::multimap QuestRelations; @@ -556,7 +556,7 @@ class ObjectMgr void LoadQuestLocales(); void LoadNpcTextLocales(); void LoadPageTextLocales(); - void LoadNpcOptionLocales(); + void LoadGossipMenuItemsLocales(); void LoadPointOfInterestLocales(); void LoadInstanceTemplate(); void LoadMailLevelRewards(); @@ -703,10 +703,10 @@ class ObjectMgr if(itr==mPageTextLocaleMap.end()) return NULL; return &itr->second; } - NpcOptionLocale const* GetNpcOptionLocale(uint32 entry) const + GossipMenuItemsLocale const* GetGossipMenuItemsLocale(uint32 entry) const { - NpcOptionLocaleMap::const_iterator itr = mNpcOptionLocaleMap.find(entry); - if(itr==mNpcOptionLocaleMap.end()) return NULL; + GossipMenuItemsLocaleMap::const_iterator itr = mGossipMenuItemsLocaleMap.find(entry); + if(itr==mGossipMenuItemsLocaleMap.end()) return NULL; return &itr->second; } PointOfInterestLocale const* GetPointOfInterestLocale(uint32 poi_id) const @@ -949,7 +949,7 @@ class ObjectMgr NpcTextLocaleMap mNpcTextLocaleMap; PageTextLocaleMap mPageTextLocaleMap; MangosStringLocaleMap mMangosStringLocaleMap; - NpcOptionLocaleMap mNpcOptionLocaleMap; + GossipMenuItemsLocaleMap mGossipMenuItemsLocaleMap; PointOfInterestLocaleMap mPointOfInterestLocaleMap; RespawnTimes mCreatureRespawnTimes; RespawnTimes mGORespawnTimes; diff --git a/src/game/Player.cpp b/src/game/Player.cpp index 7d962bb3c..dc8958d58 100644 --- a/src/game/Player.cpp +++ b/src/game/Player.cpp @@ -12304,7 +12304,7 @@ void Player::PrepareGossipMenu(WorldObject *pSource, uint32 menuId) { uint32 idxEntry = MAKE_PAIR32(menuId, itr->second.id); - if (NpcOptionLocale const *no = sObjectMgr.GetNpcOptionLocale(idxEntry)) + if (GossipMenuItemsLocale const *no = sObjectMgr.GetGossipMenuItemsLocale(idxEntry)) { if (no->OptionText.size() > (size_t)loc_idx && !no->OptionText[loc_idx].empty()) strOptionText = no->OptionText[loc_idx]; diff --git a/src/game/World.cpp b/src/game/World.cpp index d9b966c19..c91bba636 100644 --- a/src/game/World.cpp +++ b/src/game/World.cpp @@ -1176,7 +1176,7 @@ void World::SetInitialWorldSettings() sObjectMgr.LoadQuestLocales(); sObjectMgr.LoadNpcTextLocales(); sObjectMgr.LoadPageTextLocales(); - sObjectMgr.LoadNpcOptionLocales(); + sObjectMgr.LoadGossipMenuItemsLocales(); sObjectMgr.LoadPointOfInterestLocales(); sObjectMgr.SetDBCLocaleIndex(GetDefaultDbcLocale()); // Get once for all the locale index of DBC language (console/broadcasts) sLog.outString( ">>> Localization strings loaded" ); diff --git a/src/shared/revision_nr.h b/src/shared/revision_nr.h index 6f531c376..7883c9cec 100644 --- a/src/shared/revision_nr.h +++ b/src/shared/revision_nr.h @@ -1,4 +1,4 @@ #ifndef __REVISION_NR_H__ #define __REVISION_NR_H__ - #define REVISION_NR "8927" + #define REVISION_NR "8928" #endif // __REVISION_NR_H__