[9371] Implement .reload all_gossips

* For reload `gossip_menu`, `gossip_menu_option`, `gossip_scripts`,
  `npc_gossip`, `points_of_interest` by single command.
* Also fixed reloading `points_of_interest`.
This commit is contained in:
VladimirMangos 2010-02-14 00:50:38 +03:00
parent 51b1fa9802
commit 6d4693e770
5 changed files with 20 additions and 3 deletions

View file

@ -389,6 +389,7 @@ ChatCommand * ChatHandler::getCommandTable()
{ "all_achievement",SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadAllAchievementCommand,"", NULL },
{ "all_area", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadAllAreaCommand, "", NULL },
{ "all_eventai", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadAllEventAICommand, "", NULL },
{ "all_gossips", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadAllGossipsCommand, "", NULL },
{ "all_item", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadAllItemCommand, "", NULL },
{ "all_locales", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadAllLocalesCommand, "", NULL },
{ "all_loot", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadAllLootCommand, "", NULL },

View file

@ -308,6 +308,7 @@ class ChatHandler
bool HandleReloadAllCommand(const char* args);
bool HandleReloadAllAchievementCommand(const char* args);
bool HandleReloadAllAreaCommand(const char* args);
bool HandleReloadAllGossipsCommand(const char* args);
bool HandleReloadAllItemCommand(const char* args);
bool HandleReloadAllLootCommand(const char* args);
bool HandleReloadAllNpcCommand(const char* args);

View file

@ -65,6 +65,7 @@ bool ChatHandler::HandleReloadAllCommand(const char*)
HandleReloadAllQuestCommand("");
HandleReloadAllSpellCommand("");
HandleReloadAllItemCommand("");
HandleReloadAllGossipsCommand("");
HandleReloadAllLocalesCommand("");
HandleReloadMailLevelRewardCommand("");
@ -99,8 +100,9 @@ bool ChatHandler::HandleReloadAllLootCommand(const char*)
return true;
}
bool ChatHandler::HandleReloadAllNpcCommand(const char* /*args*/)
bool ChatHandler::HandleReloadAllNpcCommand(const char* args)
{
if(*args!='a') // will be reloaded from all_gossips
HandleReloadNpcGossipCommand("a");
HandleReloadNpcTrainerCommand("a");
HandleReloadNpcVendorCommand("a");
@ -168,6 +170,17 @@ bool ChatHandler::HandleReloadAllSpellCommand(const char*)
return true;
}
bool ChatHandler::HandleReloadAllGossipsCommand(const char* args)
{
HandleReloadGossipMenuCommand("a");
HandleReloadGossipMenuOptionCommand("a");
if(*args!='a') // already reload from all_scripts
HandleReloadGossipScriptsCommand("a");
HandleReloadNpcGossipCommand("a");
HandleReloadPointsOfInterestCommand("a");
return true;
}
bool ChatHandler::HandleReloadAllItemCommand(const char*)
{
HandleReloadPageTextsCommand("a");

View file

@ -6424,6 +6424,8 @@ void ObjectMgr::LoadReputationOnKill()
void ObjectMgr::LoadPointsOfInterest()
{
mPointsOfInterest.clear(); // need for reload case
uint32 count = 0;
// 0 1 2 3 4 5

View file

@ -1,4 +1,4 @@
#ifndef __REVISION_NR_H__
#define __REVISION_NR_H__
#define REVISION_NR "9370"
#define REVISION_NR "9371"
#endif // __REVISION_NR_H__