| | |
| | | "image[4,1;1,1;default_furnace_fire_bg.png]".. |
| | | "list[current_player;main;0,5;8,4;]".. |
| | | "listring[]" |
| | | |
| | | |
| | | local desc = S("Fuel-Fired %s Generator"):format(tier) |
| | | |
| | | |
| | | local run = function(pos, node) |
| | | local meta = minetest.get_meta(pos) |
| | | local burn_time = meta:get_int("burn_time") |
| | |
| | | -- Burn another piece of fuel |
| | | if burn_time == 0 then |
| | | local inv = meta:get_inventory() |
| | | if not inv:is_empty("src") then |
| | | if not inv:is_empty("src") then |
| | | local fuellist = inv:get_list("src") |
| | | local fuel |
| | | local afterfuel |
| | |
| | | } |
| | | )..pipeworks.button_label |
| | | end |
| | | meta:set_string("formspec", |
| | | meta:set_string("formspec", |
| | | "size[8, 9]".. |
| | | "label[0, 0;"..minetest.formspec_escape(desc).."]".. |
| | | "list[current_name;src;3, 1;1, 1;]".. |
| | |
| | | "technic_"..ltier.."_generator_side.png"..tentry, |
| | | "technic_"..ltier.."_generator_side.png"..tentry, |
| | | "technic_"..ltier.."_generator_front.png" |
| | | }, |
| | | }, |
| | | paramtype2 = "facedir", |
| | | groups = groups, |
| | | connect_sides = {"bottom", "back", "left", "right"}, |
| | |
| | | fs_helpers.on_receive_fields(pos, fields) |
| | | local meta = minetest.get_meta(pos) |
| | | local node = minetest.get_node(pos) |
| | | local form = generator_formspec |
| | | local form_buttons = "" |
| | | if not string.find(node.name, ":lv_") then |
| | | form_buttons = fs_helpers.cycling_button( |
| | |
| | | technic_run = run, |
| | | technic_on_disable = function(pos, node) |
| | | local timer = minetest.get_node_timer(pos) |
| | | timer:start(1) |
| | | end, |
| | | timer:start(1) |
| | | end, |
| | | on_timer = function(pos, node) |
| | | local meta = minetest.get_meta(pos) |
| | | local node = minetest.get_node(pos) |
| | | |
| | | -- Connected back? |
| | | if meta:get_int(tier.."_EU_timeout") > 0 then return false end |
| | | |
| | | |
| | | local burn_time = meta:get_int("burn_time") or 0 |
| | | |
| | | if burn_time <= 0 then |
| | |
| | | } |
| | | )..pipeworks.button_label |
| | | end |
| | | meta:set_string("formspec", |
| | | meta:set_string("formspec", |
| | | "size[8, 9]".. |
| | | "label[0, 0;"..minetest.formspec_escape(desc).."]".. |
| | | "list[current_name;src;3, 1;1, 1;]".. |
| | |
| | | local burn_time = meta:get_int("burn_time") |
| | | local percent = math.floor(burn_time / burn_totaltime * 100) |
| | | |
| | | meta:set_string("formspec", |
| | | meta:set_string("formspec", |
| | | "size[8, 9]".. |
| | | "label[0, 0;"..minetest.formspec_escape(desc).."]".. |
| | | "list[current_name;src;3, 1;1, 1;]".. |