diff --git a/mods/ITEMS/mcl_maps/init.lua b/mods/ITEMS/mcl_maps/init.lua index 893e7007..2f04796f 100644 --- a/mods/ITEMS/mcl_maps/init.lua +++ b/mods/ITEMS/mcl_maps/init.lua @@ -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