forked from VoxeLibre/VoxeLibre
Upgrade hudbars to 2.3.2
This commit is contained in:
parent
a430772c16
commit
49d5e49999
|
@ -11,7 +11,8 @@ this mod will place them accordingly.
|
||||||
position should be displayed correctly on every screen size.
|
position should be displayed correctly on every screen size.
|
||||||
|
|
||||||
## Current version
|
## Current version
|
||||||
The current version is 2.1.0.
|
The current version is 2.3.2.
|
||||||
|
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
|
This software uses [semantic versioning](http://semver.org), as defined by version 2.0.0 of the SemVer
|
||||||
standard.
|
standard.
|
||||||
|
@ -39,6 +40,7 @@ Translations:
|
||||||
* Italian: Hamlet
|
* Italian: Hamlet
|
||||||
* Malay: muhdnurhidayat
|
* Malay: muhdnurhidayat
|
||||||
* Russian: Imk
|
* Russian: Imk
|
||||||
|
* Spanish: wuniversales
|
||||||
|
|
||||||
This program is free software. It comes without any warranty, to
|
This program is free software. It comes without any warranty, to
|
||||||
the extent permitted by applicable law. You can redistribute it
|
the extent permitted by applicable law. You can redistribute it
|
||||||
|
|
|
@ -213,22 +213,8 @@ function hb.register_hudbar(identifier, text_color, label, textures, default_sta
|
||||||
z_index = 1,
|
z_index = 1,
|
||||||
})
|
})
|
||||||
end
|
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 = 0,
|
|
||||||
})
|
|
||||||
end
|
|
||||||
end
|
end
|
||||||
local bar_image, bar_size
|
local bar_image, bgicon, bar_size
|
||||||
if hb.settings.bar_type == "progress_bar" then
|
if hb.settings.bar_type == "progress_bar" then
|
||||||
bar_image = textures.bar
|
bar_image = textures.bar
|
||||||
-- NOTE: Intentionally set to nil. For some reason, on some systems,
|
-- NOTE: Intentionally set to nil. For some reason, on some systems,
|
||||||
|
@ -240,13 +226,20 @@ function hb.register_hudbar(identifier, text_color, label, textures, default_sta
|
||||||
bar_size = nil
|
bar_size = nil
|
||||||
elseif hb.settings.bar_type == "statbar_classic" or hb.settings.bar_type == "statbar_modern" then
|
elseif hb.settings.bar_type == "statbar_classic" or hb.settings.bar_type == "statbar_modern" then
|
||||||
bar_image = textures.icon
|
bar_image = textures.icon
|
||||||
|
bgicon = textures.bgicon
|
||||||
bar_size = {x=24, y=24}
|
bar_size = {x=24, y=24}
|
||||||
end
|
end
|
||||||
|
local text2
|
||||||
|
if hb.settings.bar_type == "statbar_modern" then
|
||||||
|
text2 = bgicon
|
||||||
|
end
|
||||||
ids.bar = player:hud_add({
|
ids.bar = player:hud_add({
|
||||||
hud_elem_type = "statbar",
|
hud_elem_type = "statbar",
|
||||||
position = pos,
|
position = pos,
|
||||||
text = bar_image,
|
text = bar_image,
|
||||||
|
text2 = text2,
|
||||||
number = barnumber,
|
number = barnumber,
|
||||||
|
item = bgiconnumber,
|
||||||
alignment = {x=-1,y=-1},
|
alignment = {x=-1,y=-1},
|
||||||
offset = offset,
|
offset = offset,
|
||||||
direction = 0,
|
direction = 0,
|
||||||
|
@ -321,6 +314,9 @@ function hb.change_hudbar(player, identifier, new_value, new_max_value, new_icon
|
||||||
|
|
||||||
local name = player:get_player_name()
|
local name = player:get_player_name()
|
||||||
local hudtable = hb.get_hudtable(identifier)
|
local hudtable = hb.get_hudtable(identifier)
|
||||||
|
if not hudtable.hudstate[name] then
|
||||||
|
return false
|
||||||
|
end
|
||||||
local value_changed, max_changed = false, false
|
local value_changed, max_changed = false, false
|
||||||
|
|
||||||
if new_value ~= nil then
|
if new_value ~= nil then
|
||||||
|
@ -418,10 +414,9 @@ function hb.hide_hudbar(player, identifier)
|
||||||
end
|
end
|
||||||
player:hud_change(hudtable.hudids[name].bg, "scale", {x=0,y=0})
|
player:hud_change(hudtable.hudids[name].bg, "scale", {x=0,y=0})
|
||||||
player:hud_change(hudtable.hudids[name].text, "text", "")
|
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
|
end
|
||||||
player:hud_change(hudtable.hudids[name].bar, "number", 0)
|
player:hud_change(hudtable.hudids[name].bar, "number", 0)
|
||||||
|
player:hud_change(hudtable.hudids[name].bar, "item", 0)
|
||||||
hudtable.hudstate[name].hidden = true
|
hudtable.hudstate[name].hidden = true
|
||||||
return true
|
return true
|
||||||
end
|
end
|
||||||
|
@ -442,9 +437,10 @@ function hb.unhide_hudbar(player, identifier)
|
||||||
end
|
end
|
||||||
player:hud_change(hudtable.hudids[name].text, "text", make_label(hudtable.format_string, hudtable.format_string_config, hudtable.label, value, max))
|
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
|
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
|
end
|
||||||
player:hud_change(hudtable.hudids[name].bar, "number", hb.value_to_barlength(value, max))
|
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
|
hudtable.hudstate[name].hidden = false
|
||||||
return true
|
return true
|
||||||
end
|
end
|
||||||
|
@ -500,7 +496,7 @@ local function custom_hud(player)
|
||||||
local breath_max = player:get_properties().breath_max
|
local breath_max = player:get_properties().breath_max
|
||||||
local hide_breath
|
local hide_breath
|
||||||
if breath >= breath_max and hb.settings.autohide_breath == true then hide_breath = true else hide_breath = false end
|
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
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -524,7 +520,7 @@ local function update_hud(player)
|
||||||
hb.hide_hudbar(player, "breath")
|
hb.hide_hudbar(player, "breath")
|
||||||
else
|
else
|
||||||
hb.unhide_hudbar(player, "breath")
|
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
|
end
|
||||||
--health
|
--health
|
||||||
update_health(player)
|
update_health(player)
|
||||||
|
|
Loading…
Reference in New Issue