--[[ TechAge ======= Copyright (C) 2019 Joachim Stolberg AGPL v3 See LICENSE.txt for more information Keep only one formspec active per player ]]-- local P2S = minetest.pos_to_string local ActiveFormspecs = {} local ActivePlayer = {} function techage.is_activeformspec(pos) return ActiveFormspecs[P2S(pos)] end function techage.set_activeformspec(pos, player) local name = player and player:get_player_name() if name then if ActivePlayer[name] then ActiveFormspecs[ActivePlayer[name]] = nil end ActivePlayer[name] = P2S(pos) ActiveFormspecs[P2S(pos)] = true end end function techage.reset_activeformspec(pos, player) local name = player and player:get_player_name() if name then if ActivePlayer[name] then ActiveFormspecs[ActivePlayer[name]] = nil ActivePlayer[name] = nil end end end minetest.register_on_leaveplayer(function(player) local name = player:get_player_name() if ActivePlayer[name] then ActiveFormspecs[ActivePlayer[name]] = nil ActivePlayer[name] = nil end end)