diff options
Diffstat (limited to 'src/server/game/Scripting')
| -rw-r--r-- | src/server/game/Scripting/ScriptMgr.cpp | 10 | ||||
| -rw-r--r-- | src/server/game/Scripting/ScriptMgr.h | 4 |
2 files changed, 9 insertions, 5 deletions
diff --git a/src/server/game/Scripting/ScriptMgr.cpp b/src/server/game/Scripting/ScriptMgr.cpp index db5e09c5d2a..f2613b0267c 100644 --- a/src/server/game/Scripting/ScriptMgr.cpp +++ b/src/server/game/Scripting/ScriptMgr.cpp @@ -33,6 +33,7 @@ #include "Player.h" #include "WorldPacket.h" #include "WorldSession.h" +#include "Chat.h" // namespace // { @@ -972,12 +973,15 @@ OutdoorPvP* ScriptMgr::CreateOutdoorPvP(OutdoorPvPData const* data) return tmpscript->GetOutdoorPvP(); } -std::vector<ChatCommand*> ScriptMgr::GetChatCommands() +std::vector<ChatCommand> ScriptMgr::GetChatCommands() { - std::vector<ChatCommand*> table; + std::vector<ChatCommand> table; FOR_SCRIPTS_RET(CommandScript, itr, end, table) - table.push_back(itr->second->GetCommands()); + { + std::vector<ChatCommand> cmds = itr->second->GetCommands(); + table.insert(table.end(), cmds.begin(), cmds.end()); + } return table; } diff --git a/src/server/game/Scripting/ScriptMgr.h b/src/server/game/Scripting/ScriptMgr.h index 7e1751244fd..a2024a5ccba 100644 --- a/src/server/game/Scripting/ScriptMgr.h +++ b/src/server/game/Scripting/ScriptMgr.h @@ -554,7 +554,7 @@ class CommandScript : public ScriptObject public: // Should return a pointer to a valid command table (ChatCommand array) to be used by ChatHandler. - virtual ChatCommand* GetCommands() const = 0; + virtual std::vector<ChatCommand> GetCommands() const = 0; }; class WeatherScript : public ScriptObject, public UpdatableScript<Weather> @@ -1014,7 +1014,7 @@ class ScriptMgr public: /* CommandScript */ - std::vector<ChatCommand*> GetChatCommands(); + std::vector<ChatCommand> GetChatCommands(); public: /* WeatherScript */ |
