Add minetest.get_connected_players()

This commit is contained in:
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, ""
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
--

View File

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