Add minetest.get_connected_players()

master
Perttu Ahola 2012-03-30 13:45:51 +03:00
parent bbf3eebb1a
commit 80a64341f0
2 changed files with 16 additions and 7 deletions

View File

@ -837,6 +837,17 @@ function minetest.check_player_privs(name, privs)
return true, "" return true, ""
end end
function minetest.get_connected_players()
-- This could be optimized a bit, but leave that for later
local list = {}
for _, obj in pairs(minetest.env:get_objects_inside_radius({x=0,y=0,z=0}, 1000000)) do
if obj:get_player_name() then
table.insert(list, obj)
end
end
return list
end
-- --
-- Chat commands -- Chat commands
-- --

View File

@ -8,13 +8,11 @@ experimental = {}
experimental.player_visual_index = 0 experimental.player_visual_index = 0
function switch_player_visual() function switch_player_visual()
for _, obj in pairs(minetest.env:get_objects_inside_radius({x=0,y=0,z=0}, 1000000)) do for _, obj in pairs(minetest.get_connected_players()) do
if obj:get_player_name() then if experimental.player_visual_index == 0 then
if experimental.player_visual_index == 0 then obj:set_properties({visual="upright_sprite"})
obj:set_properties({visual="upright_sprite"}) else
else obj:set_properties({visual="cube"})
obj:set_properties({visual="cube"})
end
end end
end end
experimental.player_visual_index = (experimental.player_visual_index + 1) % 2 experimental.player_visual_index = (experimental.player_visual_index + 1) % 2