diff options
author | Loïc Blot <nerzhul@users.noreply.github.com> | 2017-09-26 00:11:20 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-09-26 00:11:20 +0200 |
commit | 6f1c90720402415b62fb4d5e809ec7dbc1cd7f96 (patch) | |
tree | 6f94c2bbc2d343be50945a0074bc16da282a4bc1 /builtin | |
parent | 6df312a608912b3cb21d04532151e29e8b0c7301 (diff) | |
download | minetest-6f1c90720402415b62fb4d5e809ec7dbc1cd7f96.tar.gz minetest-6f1c90720402415b62fb4d5e809ec7dbc1cd7f96.tar.bz2 minetest-6f1c90720402415b62fb4d5e809ec7dbc1cd7f96.zip |
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
Diffstat (limited to 'builtin')
-rw-r--r-- | builtin/client/register.lua | 2 | ||||
-rw-r--r-- | builtin/game/register.lua | 1 | ||||
-rw-r--r-- | builtin/settingtypes.txt | 3 |
3 files changed, 6 insertions, 0 deletions
diff --git a/builtin/client/register.lua b/builtin/client/register.lua index cfc5abaa7..2b835c744 100644 --- a/builtin/client/register.lua +++ b/builtin/client/register.lua @@ -71,3 +71,5 @@ core.registered_on_dignode, core.register_on_dignode = make_registration() core.registered_on_punchnode, core.register_on_punchnode = make_registration() core.registered_on_placenode, core.register_on_placenode = make_registration() core.registered_on_item_use, core.register_on_item_use = make_registration() +core.registered_on_modchannel_message, core.register_on_modchannel_message = make_registration() +core.registered_on_modchannel_signal, core.register_on_modchannel_signal = make_registration() diff --git a/builtin/game/register.lua b/builtin/game/register.lua index 06c9c61d2..f5d4ea216 100644 --- a/builtin/game/register.lua +++ b/builtin/game/register.lua @@ -583,6 +583,7 @@ core.registered_on_punchplayers, core.register_on_punchplayer = make_registratio core.registered_on_priv_grant, core.register_on_priv_grant = make_registration() core.registered_on_priv_revoke, core.register_on_priv_revoke = make_registration() core.registered_can_bypass_userlimit, core.register_can_bypass_userlimit = make_registration() +core.registered_on_modchannel_message, core.register_on_modchannel_message = make_registration() -- -- Compatibility for on_mapgen_init() diff --git a/builtin/settingtypes.txt b/builtin/settingtypes.txt index 4cfd2fe53..926a881fe 100644 --- a/builtin/settingtypes.txt +++ b/builtin/settingtypes.txt @@ -928,6 +928,9 @@ player_transfer_distance (Player transfer distance) int 0 # Whether to allow players to damage and kill each other. enable_pvp (Player versus Player) bool true +# Enable mod channels support. +enable_mod_channels (Mod channels) bool false + # If this is set, players will always (re)spawn at the given position. static_spawnpoint (Static spawnpoint) string |