mirror of
https://gitlab.com/4w/mtimer.git
synced 2024-11-28 10:13:50 +01:00
add color configuration
This commit is contained in:
parent
970bf47ec0
commit
34c78e20af
1
init.lua
1
init.lua
@ -8,6 +8,7 @@ mtimer = {
|
|||||||
meta = {
|
meta = {
|
||||||
visible = { key = 'mtimer:visible', default = 'true' },
|
visible = { key = 'mtimer:visible', default = 'true' },
|
||||||
position = { key = 'mtimer:position', default = 'bl' },
|
position = { key = 'mtimer:position', default = 'bl' },
|
||||||
|
color = { key = 'mtimer:color', default = '#ffffffFF' },
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -20,6 +20,10 @@ Invisible=Unsichtbar
|
|||||||
mTimer Position=mTimer-Position
|
mTimer Position=mTimer-Position
|
||||||
Click the position you want to place the timer at.=Auf die Stelle klicken, an der der Timer angezeigt werden soll.
|
Click the position you want to place the timer at.=Auf die Stelle klicken, an der der Timer angezeigt werden soll.
|
||||||
|
|
||||||
|
# Set Color
|
||||||
|
mTimer Color=mTimer-Farbe
|
||||||
|
Use `@1` format only!=Ausschließlich `@1`-Format benutzen!
|
||||||
|
|
||||||
# Generic Formspec Strings
|
# Generic Formspec Strings
|
||||||
Default=Standard
|
Default=Standard
|
||||||
Exit=Verlassen
|
Exit=Verlassen
|
||||||
|
@ -27,6 +27,7 @@ mtimer.show_formspec.set_visibility = function (player_name)
|
|||||||
button[0,0.5;2,1;visible;]]..S('Visible')..[[]
|
button[0,0.5;2,1;visible;]]..S('Visible')..[[]
|
||||||
button[2,0.5;2,1;invisible;]]..S('Invisible')..[[]
|
button[2,0.5;2,1;invisible;]]..S('Invisible')..[[]
|
||||||
button[4,0.5;2,1;default;]]..S('Default')..[[]
|
button[4,0.5;2,1;default;]]..S('Default')..[[]
|
||||||
|
|
||||||
button_exit[0,1.5;3,1;exit;]]..S('Exit')..[[]
|
button_exit[0,1.5;3,1;exit;]]..S('Exit')..[[]
|
||||||
button[3,1.5;3,1;back;]]..S('Main Menu')..[[]
|
button[3,1.5;3,1;back;]]..S('Main Menu')..[[]
|
||||||
]])
|
]])
|
||||||
@ -57,9 +58,34 @@ mtimer.show_formspec.set_position = function (player_name)
|
|||||||
button_exit[0,5.5;2,1;exit;]]..S('Exit')..[[]
|
button_exit[0,5.5;2,1;exit;]]..S('Exit')..[[]
|
||||||
button[2,5.5;2,1;back;]]..S('Main Menu')..[[]
|
button[2,5.5;2,1;back;]]..S('Main Menu')..[[]
|
||||||
button[4,5.5;2,1;default;]]..S('Default')..[[]
|
button[4,5.5;2,1;default;]]..S('Default')..[[]
|
||||||
|
|
||||||
]])
|
]])
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
||||||
|
mtimer.show_formspec.set_color = function (player_name)
|
||||||
|
local player = minetest.get_player_by_name(player_name)
|
||||||
|
local color = player:get_meta():get_string(m.meta.color.key)
|
||||||
|
|
||||||
|
local hexcolor = table.concat({
|
||||||
|
'#',
|
||||||
|
minetest.colorize('#ce5c00', 'rr'),
|
||||||
|
minetest.colorize('#4e9a06', 'gg'),
|
||||||
|
minetest.colorize('#729fcf', 'bb'),
|
||||||
|
'AA'
|
||||||
|
})
|
||||||
|
|
||||||
|
minetest.show_formspec(player_name, 'mtimer:set_color', [[
|
||||||
|
size[6.85,2.7]
|
||||||
|
label[0,-0.125;]]..S('mTimer Color')..[[]
|
||||||
|
field_close_on_enter[color;false]
|
||||||
|
|
||||||
|
field[0.25,0.75;3,1;color;;]]..color..[[]
|
||||||
|
box[3,0.55;0.65,0.65;]]..color..[[]
|
||||||
|
button[3.85,0.45;3,1;default;]]..S('Default')..[[]
|
||||||
|
|
||||||
|
label[-0.05,1.45;]]..S('Use `@1` format only!', hexcolor)..[[]
|
||||||
|
|
||||||
|
button_exit[-0.05,2;3.45,1;exit;]]..S('Exit')..[[]
|
||||||
|
button[3.44,2;3.4,1;back;]]..S('Main Menu')..[[]
|
||||||
|
]])
|
||||||
|
end
|
||||||
|
@ -10,6 +10,7 @@ minetest.register_on_player_receive_fields(function(player, formname, fields)
|
|||||||
if formname == 'mtimer:main_menu' then
|
if formname == 'mtimer:main_menu' then
|
||||||
if fields.set_visibility then f.set_visibility(name) end
|
if fields.set_visibility then f.set_visibility(name) end
|
||||||
if fields.set_position then f.set_position(name) end
|
if fields.set_position then f.set_position(name) end
|
||||||
|
if fields.set_color then f.set_color(name) end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
||||||
@ -36,6 +37,22 @@ minetest.register_on_player_receive_fields(function(player, formname, fields)
|
|||||||
end
|
end
|
||||||
|
|
||||||
|
|
||||||
|
-- Set timer text color
|
||||||
|
if formname == 'mtimer:set_color' then
|
||||||
|
local attr = m.meta.color
|
||||||
|
local color = ''
|
||||||
|
|
||||||
|
if fields.color then
|
||||||
|
local valid = fields.color:match('^#'..('[0-9a-fA-F]'):rep(8)..'$')
|
||||||
|
local color = valid and fields.color or attr.default
|
||||||
|
meta:set_string(attr.key, color)
|
||||||
|
end
|
||||||
|
|
||||||
|
if fields.default then meta:set_string(attr.key, attr.default) end
|
||||||
|
if not fields.quit then mtimer.show_formspec.set_color(name) end
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
-- Back to menu from all formspecs
|
-- Back to menu from all formspecs
|
||||||
if fields.back then f.main_menu(name) end
|
if fields.back then f.main_menu(name) end
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user