Core: Add support for reloading gossip_scripts + add missing SQL for earlier inserted commands (gossip_menu and gossip_menu_option)
Thanks to Kaelima Fixes issue 2433 --HG-- branch : trunk
This commit is contained in:
@@ -584,6 +584,9 @@ INSERT INTO `command` VALUES
|
|||||||
('reload gameobject_scripts',3,'Syntax: .reload gameobject_scripts\nReload gameobject_scripts table.'),
|
('reload gameobject_scripts',3,'Syntax: .reload gameobject_scripts\nReload gameobject_scripts table.'),
|
||||||
('reload game_graveyard_zone',3,'Syntax: .reload game_graveyard_zone\nReload game_graveyard_zone table.'),
|
('reload game_graveyard_zone',3,'Syntax: .reload game_graveyard_zone\nReload game_graveyard_zone table.'),
|
||||||
('reload game_tele',3,'Syntax: .reload game_tele\nReload game_tele table.'),
|
('reload game_tele',3,'Syntax: .reload game_tele\nReload game_tele table.'),
|
||||||
|
('reload gossip_menu',3,'Syntax: .reload gossip_menu\nReload gossip_menu table.'),
|
||||||
|
('reload gossip_menu_option',3,'Syntax: .reload gossip_menu_option\nReload gossip_menu_option table.'),
|
||||||
|
('reload gossip_scripts',3,'Syntax: .reload gossip_scripts\nReload gossip_scripts table.'),
|
||||||
('reload gm_tickets',3,'Syntax: .reload gm_tickets\nReload gm_tickets table.'),
|
('reload gm_tickets',3,'Syntax: .reload gm_tickets\nReload gm_tickets table.'),
|
||||||
('reload item_enchantment_template',3,'Syntax: .reload item_enchantment_template\nReload item_enchantment_template table.'),
|
('reload item_enchantment_template',3,'Syntax: .reload item_enchantment_template\nReload item_enchantment_template table.'),
|
||||||
('reload item_loot_template',3,'Syntax: .reload item_loot_template\nReload item_loot_template table.'),
|
('reload item_loot_template',3,'Syntax: .reload item_loot_template\nReload item_loot_template table.'),
|
||||||
|
|||||||
@@ -0,0 +1,5 @@
|
|||||||
|
DELETE FROM `command` WHERE `name` IN ('reload gossip_menu','reload gossip_menu_option','reload gossip_scripts');
|
||||||
|
INSERT INTO `command` (`name`,`security`,`help`) VALUES
|
||||||
|
('reload gossip_menu',3, 'Syntax: .reload gossip_menu\nReload gossip_menu table.'),
|
||||||
|
('reload gossip_menu_option',3, 'Syntax: .reload gossip_menu_option\nReload gossip_menu_option table.'),
|
||||||
|
('reload gossip_scripts',3, 'Syntax: .reload gossip_scripts\nReload gossip_scripts table.'),
|
||||||
@@ -487,6 +487,7 @@ ChatCommand * ChatHandler::getCommandTable()
|
|||||||
{ "gameobject_scripts", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadGameObjectScriptsCommand, "", NULL },
|
{ "gameobject_scripts", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadGameObjectScriptsCommand, "", NULL },
|
||||||
{ "gossip_menu", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadGossipMenuCommand, "", NULL },
|
{ "gossip_menu", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadGossipMenuCommand, "", NULL },
|
||||||
{ "gossip_menu_option", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadGossipMenuOptionCommand, "", NULL },
|
{ "gossip_menu_option", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadGossipMenuOptionCommand, "", NULL },
|
||||||
|
{ "gossip_scripts", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadGossipScriptsCommand, "", NULL },
|
||||||
{ "item_enchantment_template", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadItemEnchantementsCommand, "", NULL },
|
{ "item_enchantment_template", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadItemEnchantementsCommand, "", NULL },
|
||||||
{ "item_loot_template", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadLootTemplatesItemCommand, "", NULL },
|
{ "item_loot_template", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadLootTemplatesItemCommand, "", NULL },
|
||||||
{ "item_set_names", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadItemSetNamesCommand, "", NULL },
|
{ "item_set_names", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadItemSetNamesCommand, "", NULL },
|
||||||
|
|||||||
@@ -381,6 +381,7 @@ class ChatHandler
|
|||||||
bool HandleReloadGameTeleCommand(const char* args);
|
bool HandleReloadGameTeleCommand(const char* args);
|
||||||
bool HandleReloadGossipMenuCommand(const char* args);
|
bool HandleReloadGossipMenuCommand(const char* args);
|
||||||
bool HandleReloadGossipMenuOptionCommand(const char* args);
|
bool HandleReloadGossipMenuOptionCommand(const char* args);
|
||||||
|
bool HandleReloadGossipScriptsCommand(const char* args);
|
||||||
bool HandleReloadGOQuestRelationsCommand(const char* args);
|
bool HandleReloadGOQuestRelationsCommand(const char* args);
|
||||||
bool HandleReloadGOQuestInvRelationsCommand(const char* args);
|
bool HandleReloadGOQuestInvRelationsCommand(const char* args);
|
||||||
bool HandleReloadItemEnchantementsCommand(const char* args);
|
bool HandleReloadItemEnchantementsCommand(const char* args);
|
||||||
|
|||||||
@@ -143,6 +143,7 @@ bool ChatHandler::HandleReloadAllScriptsCommand(const char*)
|
|||||||
|
|
||||||
sLog.outString("Re-Loading Scripts...");
|
sLog.outString("Re-Loading Scripts...");
|
||||||
HandleReloadGameObjectScriptsCommand("a");
|
HandleReloadGameObjectScriptsCommand("a");
|
||||||
|
HandleReloadGossipScriptsCommand("a");
|
||||||
HandleReloadEventScriptsCommand("a");
|
HandleReloadEventScriptsCommand("a");
|
||||||
HandleReloadQuestEndScriptsCommand("a");
|
HandleReloadQuestEndScriptsCommand("a");
|
||||||
HandleReloadQuestStartScriptsCommand("a");
|
HandleReloadQuestStartScriptsCommand("a");
|
||||||
@@ -818,6 +819,26 @@ bool ChatHandler::HandleReloadItemSetNamesCommand(const char*)
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool ChatHandler::HandleReloadGossipScriptsCommand(const char* arg)
|
||||||
|
{
|
||||||
|
if (sWorld.IsScriptScheduled())
|
||||||
|
{
|
||||||
|
SendSysMessage("DB scripts used currently, please attempt reload later.");
|
||||||
|
SetSentErrorMessage(true);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (*arg != 'a')
|
||||||
|
sLog.outString("Re-Loading Scripts from `gossip_scripts`...");
|
||||||
|
|
||||||
|
sObectMgr.LoadGossipScripts();
|
||||||
|
|
||||||
|
if (*arg != 'a')
|
||||||
|
SendGlobalGMSysMessage("DB table `gossip_scripts` reloaded.");
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
bool ChatHandler::HandleReloadGameObjectScriptsCommand(const char* arg)
|
bool ChatHandler::HandleReloadGameObjectScriptsCommand(const char* arg)
|
||||||
{
|
{
|
||||||
if (sWorld.IsScriptScheduled())
|
if (sWorld.IsScriptScheduled())
|
||||||
|
|||||||
Reference in New Issue
Block a user