diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/server/game/Chat/Chat.cpp | 1 | ||||
-rw-r--r-- | src/server/game/Chat/Chat.h | 1 | ||||
-rw-r--r-- | src/server/game/Chat/Commands/Level3.cpp | 21 |
3 files changed, 23 insertions, 0 deletions
diff --git a/src/server/game/Chat/Chat.cpp b/src/server/game/Chat/Chat.cpp index 26a8da94ec8..9ee79281e5a 100644 --- a/src/server/game/Chat/Chat.cpp +++ b/src/server/game/Chat/Chat.cpp @@ -487,6 +487,7 @@ ChatCommand * ChatHandler::getCommandTable() { "gameobject_scripts", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadGameObjectScriptsCommand, "", NULL }, { "gossip_menu", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadGossipMenuCommand, "", 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_loot_template", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadLootTemplatesItemCommand, "", NULL }, { "item_set_names", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadItemSetNamesCommand, "", NULL }, diff --git a/src/server/game/Chat/Chat.h b/src/server/game/Chat/Chat.h index d4fd0dc3038..630a8668e49 100644 --- a/src/server/game/Chat/Chat.h +++ b/src/server/game/Chat/Chat.h @@ -381,6 +381,7 @@ class ChatHandler bool HandleReloadGameTeleCommand(const char* args); bool HandleReloadGossipMenuCommand(const char* args); bool HandleReloadGossipMenuOptionCommand(const char* args); + bool HandleReloadGossipScriptsCommand(const char* args); bool HandleReloadGOQuestRelationsCommand(const char* args); bool HandleReloadGOQuestInvRelationsCommand(const char* args); bool HandleReloadItemEnchantementsCommand(const char* args); diff --git a/src/server/game/Chat/Commands/Level3.cpp b/src/server/game/Chat/Commands/Level3.cpp index b1eb5aac6fa..b56c97d9886 100644 --- a/src/server/game/Chat/Commands/Level3.cpp +++ b/src/server/game/Chat/Commands/Level3.cpp @@ -143,6 +143,7 @@ bool ChatHandler::HandleReloadAllScriptsCommand(const char*) sLog.outString("Re-Loading Scripts..."); HandleReloadGameObjectScriptsCommand("a"); + HandleReloadGossipScriptsCommand("a"); HandleReloadEventScriptsCommand("a"); HandleReloadQuestEndScriptsCommand("a"); HandleReloadQuestStartScriptsCommand("a"); @@ -818,6 +819,26 @@ bool ChatHandler::HandleReloadItemSetNamesCommand(const char*) 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) { if (sWorld.IsScriptScheduled()) |