Merge pull request 'ITEMS/mcl_maps: send hud_flags only if actually changed' (#146) from fix-minimap-spam into master

Reviewed-on: https://git.minetest.land/Mineclonia/Mineclonia/pulls/146
Reviewed-by: erlehmann <nils+git.minetest.land@dieweltistgarnichtso.net>
This commit is contained in:
erlehmann 2021-09-15 17:20:34 +00:00
commit 3a78211be4
1 changed files with 12 additions and 6 deletions

View File

@ -43,13 +43,19 @@ end
-- Checks if player is still allowed to display the minimap
local function update_minimap(player)
local creative = minetest.is_creative_enabled(player:get_player_name())
if creative then
player:hud_set_flags({minimap=true, minimap_radar = true})
else
if has_item_in_hotbar(player, "mcl_maps:filled_map") then
player:hud_set_flags({minimap = true, minimap_radar = false})
local newstate=false
local oldstate=player:hud_get_flags().minimap
if creative or has_item_in_hotbar(player, "mcl_maps:filled_map") then
newstate=true
end
if oldstate ~= newstate then
if creative then
player:hud_set_flags({minimap = true, minimap_radar = true})
else
player:hud_set_flags({minimap = false, minimap_radar = false})
player:hud_set_flags({minimap = newstate, minimap_radar = false})
end
end
end