Compare commits

...

18 Commits

Author SHA1 Message Date
Wuzzy dd2a9a008d Add mailmap for Wuzzy 2022-08-01 13:57:41 +02:00
Wuzzy 812b2538ff Version 2.3.3 2021-07-08 15:43:14 +02:00
Wuzzy 906f7876f7 Version 2.3.2 2021-07-08 15:42:11 +02:00
Wuzzy a44de6230b Fix massive hud_change spam (hide/unhide) 2021-07-08 15:34:50 +02:00
Wuzzy 0684bac45b Version 2.3.1 2020-07-11 03:41:09 +02:00
Wuzzy 183d727635 Revert "12×12 textures, compress textures"
This reverts commit 746945dd0f.
2020-07-11 03:38:16 +02:00
Wuzzy f1001432eb Revert "Tweak breath icons"
This reverts commit 5d65623d90.
2020-07-11 03:38:14 +02:00
Wuzzy a41453964a Version 2.3.0 2020-07-11 03:28:39 +02:00
Wuzzy 5d65623d90 Tweak breath icons 2020-07-11 03:28:01 +02:00
Wuzzy f6d539249e More bg icon cleanup 2020-07-11 03:25:35 +02:00
Wuzzy 746945dd0f 12×12 textures, compress textures 2020-07-11 03:09:14 +02:00
Wuzzy 37eff8b2d2 Fix breath bar that was broken by MT 5.3.0 2020-07-11 02:59:12 +02:00
Wuzzy 844fff43de Use MT native support for "background icons" 2020-07-11 02:57:23 +02:00
Wuzzy a250d2a350 Add z-index to HUD elements 2020-04-07 01:06:49 +02:00
Wuzzy 7993feac07 Version 2.2.2 2020-03-13 18:11:13 +01:00
Wuzzy b19b5f090a Fix another crash 2020-03-13 18:10:52 +01:00
Wuzzy 9a8a3f0f8c Version 2.2.1 2020-03-13 07:55:01 +01:00
Wuzzy 2eb2df946b Add nil check in hb.change_hudbar 2020-03-13 07:53:24 +01:00
3 changed files with 22 additions and 20 deletions

2
.mailmap Normal file
View File

@ -0,0 +1,2 @@
Wuzzy <Wuzzy@disroot.org> <Wuzzy2@mail.ru>
Wuzzy <Wuzzy@disroot.org> <almikes@aol.com>

View File

@ -11,7 +11,8 @@ this mod will place them accordingly.
position should be displayed correctly on every screen size.
## Current version
The current version is 2.2.0.
The current version is 2.3.3.
It works for Minetest 5.3.0.
This software uses [semantic versioning](http://semver.org), as defined by version 2.0.0 of the SemVer
standard.

View File

@ -200,6 +200,7 @@ function hb.register_hudbar(identifier, text_color, label, textures, default_sta
text = "hudbars_bar_background.png",
alignment = {x=1,y=1},
offset = { x = offset.x - 1, y = offset.y - 1 },
z_index = 0,
})
if textures.icon ~= nil then
ids.icon = player:hud_add({
@ -209,23 +210,11 @@ function hb.register_hudbar(identifier, text_color, label, textures, default_sta
text = textures.icon,
alignment = {x=-1,y=1},
offset = { x = offset.x - 3, y = offset.y },
})
end
elseif hb.settings.bar_type == "statbar_modern" then
if textures.bgicon ~= nil then
ids.bg = player:hud_add({
hud_elem_type = "statbar",
position = pos,
text = textures.bgicon,
number = bgiconnumber,
alignment = {x=-1,y=-1},
offset = { x = offset.x, y = offset.y },
direction = 0,
size = {x=24, y=24},
z_index = 1,
})
end
end
local bar_image, bar_size
local bar_image, bgicon, bar_size
if hb.settings.bar_type == "progress_bar" then
bar_image = textures.bar
-- NOTE: Intentionally set to nil. For some reason, on some systems,
@ -237,17 +226,21 @@ function hb.register_hudbar(identifier, text_color, label, textures, default_sta
bar_size = nil
elseif hb.settings.bar_type == "statbar_classic" or hb.settings.bar_type == "statbar_modern" then
bar_image = textures.icon
bgicon = textures.bgicon
bar_size = {x=24, y=24}
end
ids.bar = player:hud_add({
hud_elem_type = "statbar",
position = pos,
text = bar_image,
text2 = bgicon,
number = barnumber,
item = bgiconnumber,
alignment = {x=-1,y=-1},
offset = offset,
direction = 0,
size = bar_size,
z_index = 1,
})
if hb.settings.bar_type == "progress_bar" then
ids.text = player:hud_add({
@ -258,6 +251,7 @@ function hb.register_hudbar(identifier, text_color, label, textures, default_sta
number = text_color,
direction = 0,
offset = { x = offset.x + 2, y = offset.y - 1},
z_index = 2,
})
end
-- Do not forget to update hb.get_hudbar_state if you add new fields to the state table
@ -316,6 +310,9 @@ function hb.change_hudbar(player, identifier, new_value, new_max_value, new_icon
local name = player:get_player_name()
local hudtable = hb.get_hudtable(identifier)
if not hudtable.hudstate[name] then
return false
end
local value_changed, max_changed = false, false
if new_value ~= nil then
@ -407,16 +404,16 @@ function hb.hide_hudbar(player, identifier)
local name = player:get_player_name()
local hudtable = hb.get_hudtable(identifier)
if hudtable == nil then return false end
if hudtable.hudstate[name].hidden == true then return true end
if hb.settings.bar_type == "progress_bar" then
if hudtable.hudids[name].icon ~= nil then
player:hud_change(hudtable.hudids[name].icon, "scale", {x=0,y=0})
end
player:hud_change(hudtable.hudids[name].bg, "scale", {x=0,y=0})
player:hud_change(hudtable.hudids[name].text, "text", "")
elseif hb.settings.bar_type == "statbar_modern" then
player:hud_change(hudtable.hudids[name].bg, "number", 0)
end
player:hud_change(hudtable.hudids[name].bar, "number", 0)
player:hud_change(hudtable.hudids[name].bar, "item", 0)
hudtable.hudstate[name].hidden = true
return true
end
@ -426,6 +423,7 @@ function hb.unhide_hudbar(player, identifier)
local name = player:get_player_name()
local hudtable = hb.get_hudtable(identifier)
if hudtable == nil then return false end
if hudtable.hudstate[name].hidden == false then return true end
local value = hudtable.hudstate[name].value
local max = hudtable.hudstate[name].max
if hb.settings.bar_type == "progress_bar" then
@ -437,9 +435,10 @@ function hb.unhide_hudbar(player, identifier)
end
player:hud_change(hudtable.hudids[name].text, "text", make_label(hudtable.format_string, hudtable.format_string_config, hudtable.label, value, max))
elseif hb.settings.bar_type == "statbar_modern" then
player:hud_change(hudtable.hudids[name].bg, "number", hb.settings.statbar_length)
player:hud_change(hudtable.hudids[name].bar, "scale", {x=1,y=1})
end
player:hud_change(hudtable.hudids[name].bar, "number", hb.value_to_barlength(value, max))
player:hud_change(hudtable.hudids[name].bar, "item", hb.value_to_barlength(max, max))
hudtable.hudstate[name].hidden = false
return true
end
@ -495,7 +494,7 @@ local function custom_hud(player)
local breath_max = player:get_properties().breath_max
local hide_breath
if breath >= breath_max and hb.settings.autohide_breath == true then hide_breath = true else hide_breath = false end
hb.init_hudbar(player, "breath", math.min(breath, breath_max-1), breath_max-1, hide_breath or hide)
hb.init_hudbar(player, "breath", math.min(breath, breath_max), breath_max, hide_breath or hide)
end
end
@ -519,7 +518,7 @@ local function update_hud(player)
hb.hide_hudbar(player, "breath")
else
hb.unhide_hudbar(player, "breath")
hb.change_hudbar(player, "breath", math.min(breath, breath_max-1), breath_max-1)
hb.change_hudbar(player, "breath", math.min(breath, breath_max), breath_max)
end
--health
update_health(player)