From 0c20a1b616fb1bc72e6db9fad061b12ee044602a Mon Sep 17 00:00:00 2001 From: ShadowNinja Date: Thu, 26 Sep 2013 10:30:36 -0400 Subject: Show area owners on the hud (inspired by landrush) --- hud.lua | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 hud.lua (limited to 'hud.lua') diff --git a/hud.lua b/hud.lua new file mode 100644 index 0000000..d7eea0d --- /dev/null +++ b/hud.lua @@ -0,0 +1,38 @@ +-- This is inspired by the landrush mod by Bremaweb + +areas.hud = {} + +minetest.register_globalstep(function(dtime) + for _, player in pairs(minetest.get_connected_players()) do + local name = player:get_player_name() + local pos = vector.round(player:getpos()) + local owners = areas:getNodeOwners(pos) + local ownerString = table.concat(owners, ", ") + if not areas.hud[name] then + areas.hud[name] = {} + areas.hud[name].ownersId = player:hud_add({ + hud_elem_type = "text", + name = "AreaOwners", + number = 0xFFFFFF, + position = {x=0, y=1}, + offset = {x=5, y=-40}, + direction = 0, + text = "Area owners: "..ownerString, + scale = {x=200, y=40}, + alignment = {x=1, y=1}, + }) + areas.hud[name].oldOwners = ownerString + return + end + if areas.hud[name].oldOwners ~= ownerString then + player:hud_change(areas.hud[name].ownersId, "text", + "Area owners: "..ownerString) + areas.hud[name].oldOwners = ownerString + end + end +end) + +minetest.register_on_leaveplayer(function(player) + areas.hud[player:get_player_name()] = nil +end) + -- cgit v1.2.3