86 lines
1.7 KiB
Lua
86 lines
1.7 KiB
Lua
local settings = table.copy(hub_manager.settings)
|
|
|
|
|
|
|
|
----------------------------------------------
|
|
-----------------GETTERS----------------------
|
|
----------------------------------------------
|
|
|
|
function hub_manager.get_hub_spawn_point()
|
|
return settings.hub_spawn_point
|
|
end
|
|
|
|
|
|
|
|
function hub_manager.get_additional_items()
|
|
return settings.hotbar_items
|
|
end
|
|
|
|
|
|
|
|
function hub_manager.get_prefix(name)
|
|
local meta = minetest.get_player_by_name(name):get_meta()
|
|
local prefix = meta:get_string("hub_manager:prefix")
|
|
local color = meta:get_string("hub_manager:prefix_color") or "#ffffff"
|
|
|
|
if prefix == "" then return "" end
|
|
return minetest.colorize(color, prefix) .. " "
|
|
end
|
|
|
|
|
|
|
|
function hub_manager.get_players_in_hub()
|
|
|
|
local in_hub = {}
|
|
local in_game = arena_lib.get_players_in_game()
|
|
|
|
for _, pl in pairs(minetest.get_connected_players()) do
|
|
local pl_name = pl:get_player_name()
|
|
if not in_game[pl_name] then
|
|
in_hub[pl_name] = true
|
|
end
|
|
end
|
|
|
|
return in_hub
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
----------------------------------------------
|
|
-----------------SETTERS----------------------
|
|
----------------------------------------------
|
|
|
|
function hub_manager.set_hub_physics(player)
|
|
player:set_physics_override(settings.physics)
|
|
end
|
|
|
|
|
|
|
|
function hub_manager.set_items(player)
|
|
|
|
local inv = player:get_inventory()
|
|
local hotbar_items = {
|
|
nil,
|
|
nil,
|
|
nil,
|
|
nil,
|
|
nil,
|
|
nil,
|
|
nil,
|
|
"hub_manager:settings"
|
|
}
|
|
local additional_items = hub_manager.get_additional_items()
|
|
|
|
-- eventuali oggetti aggiuntivi
|
|
for i = 1, #additional_items do
|
|
if additional_items[i] ~= "" then
|
|
hotbar_items[i] = additional_items[i]
|
|
end
|
|
end
|
|
|
|
inv:set_list("main", hotbar_items)
|
|
inv:set_list("craft", {})
|
|
end
|