diff options
-rwxr-xr-x | common.lua | 13 | ||||
-rw-r--r-- | textures/pipeworks_button_off.png | bin | 0 -> 7081 bytes | |||
-rw-r--r-- | textures/pipeworks_button_on.png | bin | 0 -> 6838 bytes | |||
-rwxr-xr-x | tubes.lua | 13 |
4 files changed, 18 insertions, 8 deletions
@@ -126,9 +126,18 @@ end function fs_helpers.cycling_button(meta, base, meta_name, values) local current_value = meta:get_int(meta_name) local new_value = (current_value + 1) % (#values) - local text = values[current_value + 1] + local val = values[current_value + 1] + local text + local texture_name = nil + --when we get a table, we know the caller wants an image_button + if type(val) == "table" then + text = val["text"] + texture_name = val["texture"] + else + text = val + end local field = "fs_helpers_cycling:"..new_value..":"..meta_name - return base..";"..field..";"..minetest.formspec_escape(text).."]" + return base..";"..(texture_name and texture_name..";" or "")..field..";"..minetest.formspec_escape(text).."]" end --------- diff --git a/textures/pipeworks_button_off.png b/textures/pipeworks_button_off.png Binary files differnew file mode 100644 index 0000000..1933742 --- /dev/null +++ b/textures/pipeworks_button_off.png diff --git a/textures/pipeworks_button_on.png b/textures/pipeworks_button_on.png Binary files differnew file mode 100644 index 0000000..bb34ceb --- /dev/null +++ b/textures/pipeworks_button_on.png @@ -249,6 +249,12 @@ if pipeworks.enable_mese_tube then end end end + local buttons_formspec = "" + for i = 0, 5 do + buttons_formspec = buttons_formspec .. fs_helpers.cycling_button(meta, + "image_button[7,"..(i)..";1,1", "l"..(i+1).."s", + {{text="",texture="pipeworks_button_off.png"}, {text="",texture="pipeworks_button_on.png"}}) + end meta:set_string("formspec", "size[8,11]".. "list[current_name;line1;1,0;6,1;]".. @@ -263,12 +269,7 @@ if pipeworks.enable_mese_tube then "image[0,3;1,1;pipeworks_yellow.png]".. "image[0,4;1,1;pipeworks_blue.png]".. "image[0,5;1,1;pipeworks_red.png]".. - fs_helpers.cycling_button(meta, "button[7,0;1,1", "l1s", {"Off", "On"}).. - fs_helpers.cycling_button(meta, "button[7,1;1,1", "l2s", {"Off", "On"}).. - fs_helpers.cycling_button(meta, "button[7,2;1,1", "l3s", {"Off", "On"}).. - fs_helpers.cycling_button(meta, "button[7,3;1,1", "l4s", {"Off", "On"}).. - fs_helpers.cycling_button(meta, "button[7,4;1,1", "l5s", {"Off", "On"}).. - fs_helpers.cycling_button(meta, "button[7,5;1,1", "l6s", {"Off", "On"}).. + buttons_formspec.. "list[current_player;main;0,7;8,4;]") end pipeworks.register_tube("pipeworks:mese_tube", "Sorting Pneumatic Tube Segment", mese_plain_textures, mese_noctr_textures, |