Implement .reload all_gossips, .reload quest_poi, .reload locales_gossip_menu_option. Original code by VladimirMangos, ported by Ramus. Closes issue #3466, issue #3637 and issue #3477
--HG-- branch : trunk
This commit is contained in:
@@ -446,6 +446,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 },
|
||||
@@ -494,6 +495,7 @@ ChatCommand * ChatHandler::getCommandTable()
|
||||
{ "locales_achievement_reward", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadLocalesAchievementRewardCommand,"", NULL },
|
||||
{ "locales_creature", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadLocalesCreatureCommand, "", NULL },
|
||||
{ "locales_gameobject", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadLocalesGameobjectCommand, "", NULL },
|
||||
{ "locales_gossip_menu_option", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadLocalesGossipMenuOptionCommand, "", NULL },
|
||||
{ "locales_item", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadLocalesItemCommand, "", NULL },
|
||||
{ "locales_item_set_name", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadLocalesItemSetNameCommand, "", NULL },
|
||||
{ "locales_npc_text", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadLocalesNpcTextCommand, "", NULL },
|
||||
@@ -513,6 +515,7 @@ ChatCommand * ChatHandler::getCommandTable()
|
||||
{ "points_of_interest", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadPointsOfInterestCommand, "",NULL},
|
||||
{ "prospecting_loot_template", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadLootTemplatesProspectingCommand,"", NULL },
|
||||
{ "quest_end_scripts", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadQuestEndScriptsCommand, "", NULL },
|
||||
{ "quest_poi", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadQuestPOICommand, "", NULL },
|
||||
{ "quest_start_scripts", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadQuestStartScriptsCommand, "", NULL },
|
||||
{ "quest_template", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadQuestTemplateCommand, "", NULL },
|
||||
{ "reference_loot_template", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadLootTemplatesReferenceCommand, "", NULL },
|
||||
|
||||
@@ -348,6 +348,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);
|
||||
@@ -389,6 +390,7 @@ class ChatHandler
|
||||
bool HandleReloadLocalesAchievementRewardCommand(const char* args);
|
||||
bool HandleReloadLocalesCreatureCommand(const char* args);
|
||||
bool HandleReloadLocalesGameobjectCommand(const char* args);
|
||||
bool HandleReloadLocalesGossipMenuOptionCommand(const char* args);
|
||||
bool HandleReloadLocalesItemCommand(const char* args);
|
||||
bool HandleReloadLocalesItemSetNameCommand(const char* args);
|
||||
bool HandleReloadLocalesNpcTextCommand(const char* args);
|
||||
@@ -418,6 +420,7 @@ class ChatHandler
|
||||
bool HandleReloadSpellClickSpellsCommand(const char* args);
|
||||
bool HandleReloadQuestAreaTriggersCommand(const char* args);
|
||||
bool HandleReloadQuestEndScriptsCommand(const char* args);
|
||||
bool HandleReloadQuestPOICommand(const char* args);
|
||||
bool HandleReloadQuestStartScriptsCommand(const char* args);
|
||||
bool HandleReloadQuestTemplateCommand(const char* args);
|
||||
bool HandleReloadReservedNameCommand(const char*);
|
||||
|
||||
@@ -73,6 +73,7 @@ bool ChatHandler::HandleReloadAllCommand(const char*)
|
||||
HandleReloadAllQuestCommand("");
|
||||
HandleReloadAllSpellCommand("");
|
||||
HandleReloadAllItemCommand("");
|
||||
HandleReloadAllGossipsCommand("");
|
||||
HandleReloadAllLocalesCommand("");
|
||||
|
||||
HandleReloadAccessRequirementCommand("");
|
||||
@@ -111,9 +112,10 @@ bool ChatHandler::HandleReloadAllLootCommand(const char*)
|
||||
return true;
|
||||
}
|
||||
|
||||
bool ChatHandler::HandleReloadAllNpcCommand(const char* /*args*/)
|
||||
bool ChatHandler::HandleReloadAllNpcCommand(const char* args)
|
||||
{
|
||||
HandleReloadNpcGossipCommand("a");
|
||||
if(*args != 'a') // will be reloaded from all_gossips
|
||||
HandleReloadNpcGossipCommand("a");
|
||||
HandleReloadNpcTrainerCommand("a");
|
||||
HandleReloadNpcVendorCommand("a");
|
||||
HandleReloadPointsOfInterestCommand("a");
|
||||
@@ -124,6 +126,7 @@ bool ChatHandler::HandleReloadAllNpcCommand(const char* /*args*/)
|
||||
bool ChatHandler::HandleReloadAllQuestCommand(const char* /*args*/)
|
||||
{
|
||||
HandleReloadQuestAreaTriggersCommand("a");
|
||||
HandleReloadQuestPOICommand("a");
|
||||
HandleReloadQuestTemplateCommand("a");
|
||||
|
||||
sLog.outString("Re-Loading Quests Relations...");
|
||||
@@ -180,6 +183,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");
|
||||
@@ -192,6 +206,7 @@ bool ChatHandler::HandleReloadAllLocalesCommand(const char* /*args*/)
|
||||
HandleReloadLocalesAchievementRewardCommand("a");
|
||||
HandleReloadLocalesCreatureCommand("a");
|
||||
HandleReloadLocalesGameobjectCommand("a");
|
||||
HandleReloadLocalesGossipMenuOptionCommand("a");
|
||||
HandleReloadLocalesItemCommand("a");
|
||||
HandleReloadLocalesNpcTextCommand("a");
|
||||
HandleReloadLocalesPageTextCommand("a");
|
||||
@@ -651,6 +666,14 @@ bool ChatHandler::HandleReloadPointsOfInterestCommand(const char*)
|
||||
return true;
|
||||
}
|
||||
|
||||
bool ChatHandler::HandleReloadQuestPOICommand(const char*)
|
||||
{
|
||||
sLog.outString( "Re-Loading Quest POI ..." );
|
||||
sObjectMgr.LoadQuestPOI();
|
||||
SendGlobalGMSysMessage("DB Table `quest_poi` and `quest_poi_points` reloaded.");
|
||||
return true;
|
||||
}
|
||||
|
||||
bool ChatHandler::HandleReloadSpellClickSpellsCommand(const char*)
|
||||
{
|
||||
sLog.outString("Re-Loading `npc_spellclick_spells` Table!");
|
||||
@@ -1048,6 +1071,14 @@ bool ChatHandler::HandleReloadLocalesGameobjectCommand(const char* /*arg*/)
|
||||
return true;
|
||||
}
|
||||
|
||||
bool ChatHandler::HandleReloadLocalesGossipMenuOptionCommand(const char* /*arg*/)
|
||||
{
|
||||
sLog.outString( "Re-Loading Locales Gossip Menu Option ... ");
|
||||
sObjectMgr.LoadGossipMenuItemsLocales();
|
||||
SendGlobalGMSysMessage("DB table `locales_gossip_menu_option` reloaded.");
|
||||
return true;
|
||||
}
|
||||
|
||||
bool ChatHandler::HandleReloadLocalesItemCommand(const char* /*arg*/)
|
||||
{
|
||||
sLog.outString("Re-Loading Locales Item ... ");
|
||||
|
||||
@@ -20335,7 +20335,7 @@ bool Player::canSeeOrDetect(Unit const* u, bool detect, bool inVisibleList, bool
|
||||
return true;
|
||||
|
||||
// Arena visibility before arena start
|
||||
if (InArena() && GetBattleground() && GetBattleground()->GetStatus() == STATUS_WAIT_JOIN)
|
||||
if (InArena() && GetBattleground()->GetStatus() == STATUS_WAIT_JOIN)
|
||||
if (const Player* target = u->GetCharmerOrOwnerPlayerOrPlayerItself())
|
||||
return GetBGTeam() == target->GetBGTeam();
|
||||
|
||||
|
||||
@@ -6986,6 +6986,8 @@ void ObjectMgr::LoadReputationSpilloverTemplate()
|
||||
|
||||
void ObjectMgr::LoadPointsOfInterest()
|
||||
{
|
||||
mPointsOfInterest.clear(); // need for reload case
|
||||
|
||||
uint32 count = 0;
|
||||
|
||||
// 0 1 2 3 4 5 6
|
||||
@@ -7036,6 +7038,8 @@ void ObjectMgr::LoadPointsOfInterest()
|
||||
|
||||
void ObjectMgr::LoadQuestPOI()
|
||||
{
|
||||
mQuestPOIMap.clear(); // need for reload case
|
||||
|
||||
uint32 count = 0;
|
||||
|
||||
// 0 1 2 3
|
||||
|
||||
Reference in New Issue
Block a user