]> git.lizzy.rs Git - Crafter.git/commitdiff
Fix only one player being able to run on a server
authoroilboi <47129783+oilboi@users.noreply.github.com>
Thu, 28 May 2020 05:06:54 +0000 (01:06 -0400)
committeroilboi <47129783+oilboi@users.noreply.github.com>
Thu, 28 May 2020 05:06:54 +0000 (01:06 -0400)
mods/player/player_mechanics.lua

index 21899e1a62afc3dd689d8c61ce0d10554830123c..26e31efa36ab59e6aa34e3183e40e60607a6cd66 100644 (file)
@@ -1,7 +1,8 @@
-local player_state_channel = minetest.mod_channel_join("player.player_movement_state")
+local player_state_channels = {}
 
 minetest.register_on_modchannel_message(function(channel_name, sender, message)
-       if channel_name == "player.player_movement_state" then
+       local channel_decyphered = channel_name:gsub(sender,"")
+       if channel_decyphered == ":player_movement_state" then
                local player = minetest.get_player_by_name(sender)
                local meta = player:get_meta()
                meta:set_string("player.player_movement_state", message)
@@ -9,6 +10,8 @@ minetest.register_on_modchannel_message(function(channel_name, sender, message)
 end)
 
 minetest.register_on_joinplayer(function(player)
+       local name = player:get_player_name()
+       player_state_channels[name] = minetest.mod_channel_join(name..":player_movement_state")
        player:set_physics_override({jump=1.25,gravity=1.25})
        local meta = player:get_meta()
        meta:set_string("player.player_movement_state", "0")