mirror of
https://github.com/minetest/minetest.git
synced 2024-11-30 03:23:45 +01:00
Add minetest.is_player (#7013)
* Add minetest.is_player * First use for is_player
This commit is contained in:
parent
0268c9d7c9
commit
880a25c921
@ -5,12 +5,11 @@
|
||||
--
|
||||
|
||||
function core.check_player_privs(name, ...)
|
||||
local arg_type = type(name)
|
||||
if (arg_type == "userdata" or arg_type == "table") and
|
||||
name.get_player_name then -- If it quacks like a Player...
|
||||
if core.is_player(name) then
|
||||
name = name:get_player_name()
|
||||
elseif arg_type ~= "string" then
|
||||
error("Invalid core.check_player_privs argument type: " .. arg_type, 2)
|
||||
elseif type(name) ~= "string" then
|
||||
error("core.check_player_privs expects a player or playername as " ..
|
||||
"argument.", 2)
|
||||
end
|
||||
|
||||
local requested_privs = {...}
|
||||
@ -70,6 +69,16 @@ function core.get_connected_players()
|
||||
return temp_table
|
||||
end
|
||||
|
||||
|
||||
function core.is_player(player)
|
||||
-- a table being a player is also supported because it quacks sufficiently
|
||||
-- like a player if it has the is_player function
|
||||
local t = type(player)
|
||||
return (t == "userdata" or t == "table") and
|
||||
type(player.is_player) == "function" and player:is_player()
|
||||
end
|
||||
|
||||
|
||||
function minetest.player_exists(name)
|
||||
return minetest.get_auth_handler().get_auth(name) ~= nil
|
||||
end
|
||||
|
@ -3013,6 +3013,7 @@ These functions return the leftover itemstack.
|
||||
|
||||
### Misc.
|
||||
* `minetest.get_connected_players()`: returns list of `ObjectRefs`
|
||||
* `minetest.is_player(o)`: boolean, whether `o` is a player
|
||||
* `minetest.player_exists(name)`: boolean, whether player exists (regardless of online status)
|
||||
* `minetest.hud_replace_builtin(name, hud_definition)`
|
||||
* Replaces definition of a builtin hud element
|
||||
|
Loading…
Reference in New Issue
Block a user