From 6f1c90720402415b62fb4d5e809ec7dbc1cd7f96 Mon Sep 17 00:00:00 2001 From: Loïc Blot Date: Tue, 26 Sep 2017 00:11:20 +0200 Subject: Implement mod communication channels (#6351) Implement network communication for channels * Implement ModChannel manager server side to route incoming messages from clients to other clients * Add signal handler switch on client & ModChannelMgr on client to handle channels * Add Lua API bindings + client packet sending + unittests * Implement server message sending * Add callback from received message handler to Lua API using registration method --- src/gamedef.h | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'src/gamedef.h') diff --git a/src/gamedef.h b/src/gamedef.h index e7fe6c4ab..8117319bc 100644 --- a/src/gamedef.h +++ b/src/gamedef.h @@ -33,6 +33,7 @@ class MtEventManager; class IRollbackManager; class EmergeManager; class Camera; +class ModChannel; class ModMetadata; namespace irr { namespace scene { @@ -78,4 +79,10 @@ public: virtual std::string getModStoragePath() const = 0; virtual bool registerModStorage(ModMetadata *storage) = 0; virtual void unregisterModStorage(const std::string &name) = 0; + + virtual bool joinModChannel(const std::string &channel) = 0; + virtual bool leaveModChannel(const std::string &channel) = 0; + virtual bool sendModChannelMessage(const std::string &channel, + const std::string &message) = 0; + virtual ModChannel *getModChannel(const std::string &channel) = 0; }; -- cgit v1.2.3