forked from minetest-mods/technic
Improve injector interface
Make the injector's mode button lag-resistant. Display the mode on the button, as is done with other machines' toggle buttons. Describe the modes using the same words that are now used to distinguish the corresponding pipeworks objects. Expand name to "self-contained injector", now that the pipeworks objects are also called "injector". Show injector item image along with the item name at the head of the form.
This commit is contained in:
parent
daa6135211
commit
8275091347
@ -52,9 +52,8 @@ Upgrade Slots = Verbesserungsfaecher
|
||||
In: = Rein:
|
||||
Out: = Raus:
|
||||
Slot %d = Fach %d
|
||||
Mode: %s = Methode: %s
|
||||
single items = Einzelstuecke
|
||||
whole stacks = Ganzer Stapel
|
||||
Itemwise = Einzelstuecke
|
||||
Stackwise = Ganzer Stapel
|
||||
|
||||
## Machine names
|
||||
# $1: Tier
|
||||
@ -77,7 +76,7 @@ Hydro %s Generator = %s Wassermuehle
|
||||
Nuclear %s Generator Core = %s Reaktorkern
|
||||
Small Solar %s Generator = %s Solarmodul
|
||||
Wind %s Generator = %s Windmuehle
|
||||
Injector = Injektor
|
||||
Self-Contained Injector = Selbstversorger-Injektor
|
||||
Constructor Mk%d = Konstruktor Modell %d
|
||||
Frame = Rahmen
|
||||
Frame Motor = Rahmenmotor
|
||||
|
@ -48,6 +48,8 @@ Inventory move disallowed due to protection =
|
||||
%s Improperly Placed = %s No Colocado Apropiadamente
|
||||
Range = Alcance
|
||||
Enable/Disable = Habilitar/Deshabilitar
|
||||
Itemwise =
|
||||
Stackwise =
|
||||
|
||||
## Machine names
|
||||
# $1: Tier
|
||||
@ -70,7 +72,7 @@ Hydro %s Generator = Molino de Agua %s
|
||||
Nuclear %s Generator Core = Nucleo de Reactor Nuclear %s
|
||||
Small Solar %s Generator = Panel Solar %s
|
||||
Wind %s Generator = Molino de Viento %s
|
||||
Injector =
|
||||
Self-Contained Injector =
|
||||
Constructor Mk%d =
|
||||
Frame =
|
||||
Frame Motor =
|
||||
|
@ -49,9 +49,8 @@ Upgrade Slots =
|
||||
In: = Ingresso:
|
||||
Out: = Uscita:
|
||||
Slot %d =
|
||||
Mode: %s = Modalità: %s
|
||||
single items = Singolo elemento
|
||||
whole stacks = pila completa
|
||||
Itemwise = Singolo elemento
|
||||
Stackwise = pila completa
|
||||
|
||||
## Machine names
|
||||
# $1: Tier
|
||||
@ -74,7 +73,7 @@ Hydro %s Generator = Turbina Elettrica %s
|
||||
Nuclear %s Generator Core = Reattore nucleare %s
|
||||
Small Solar %s Generator = %s Pannello solare
|
||||
Wind %s Generator = %s Generatore eolico
|
||||
Injector = Ignettore
|
||||
Self-Contained Injector = Ignettore
|
||||
Constructor Mk%d = Costruttore Mk%d
|
||||
Frame = Cornice
|
||||
Frame Motor = Cornice del motore
|
||||
|
@ -54,9 +54,8 @@ Upgrade Slots =
|
||||
In: =
|
||||
Out: =
|
||||
Slot %d =
|
||||
Mode: %s =
|
||||
single items =
|
||||
whole stacks =
|
||||
Itemwise =
|
||||
Stackwise =
|
||||
Ignoring Mesecon Signal =
|
||||
Controlled by Mesecon Signal =
|
||||
|
||||
@ -82,7 +81,7 @@ Hydro %s Generator =
|
||||
Nuclear %s Generator Core =
|
||||
Small Solar %s Generator =
|
||||
Wind %s Generator =
|
||||
Injector =
|
||||
Self-Contained Injector =
|
||||
Constructor Mk%d =
|
||||
Frame =
|
||||
Frame Motor =
|
||||
|
@ -54,8 +54,21 @@ minetest.register_craft({
|
||||
}
|
||||
})
|
||||
|
||||
local function set_injector_formspec(meta)
|
||||
local is_stack = meta:get_string("mode") == "whole stacks"
|
||||
meta:set_string("formspec",
|
||||
"invsize[8,9;]"..
|
||||
"item_image[0,0;1,1;technic:injector]"..
|
||||
"label[1,0;"..S("Self-Contained Injector").."]"..
|
||||
(is_stack and
|
||||
"button[0,1;2,1;mode_item;"..S("Stackwise").."]" or
|
||||
"button[0,1;2,1;mode_stack;"..S("Itemwise").."]")..
|
||||
"list[current_name;main;0,2;8,2;]"..
|
||||
"list[current_player;main;0,5;8,4;]")
|
||||
end
|
||||
|
||||
minetest.register_node("technic:injector", {
|
||||
description = S("Injector"),
|
||||
description = S("Self-Contained Injector"),
|
||||
tiles = {"technic_injector_top.png", "technic_injector_bottom.png", "technic_injector_side.png",
|
||||
"technic_injector_side.png", "technic_injector_side.png", "technic_injector_side.png"},
|
||||
groups = {snappy=2, choppy=2, oddly_breakable_by_hand=2, tubedevice=1},
|
||||
@ -63,17 +76,11 @@ minetest.register_node("technic:injector", {
|
||||
sounds = default.node_sound_wood_defaults(),
|
||||
on_construct = function(pos)
|
||||
local meta = minetest.env:get_meta(pos)
|
||||
meta:set_string("formspec",
|
||||
"invsize[8,9;]"..
|
||||
"label[0,0;"..S("Injector").."]"..
|
||||
"button[0,1;.8,.8;mode;]"..
|
||||
"label[.8,1;"..S("Mode: %s"):format("single items").."]"..
|
||||
"list[current_name;main;0,2;8,2;]"..
|
||||
"list[current_player;main;0,5;8,4;]")
|
||||
meta:set_string("infotext", S("Injector"))
|
||||
meta:set_string("infotext", S("Self-Contained Injector"))
|
||||
local inv = meta:get_inventory()
|
||||
inv:set_size("main", 8*4)
|
||||
meta:set_string("mode","single items")
|
||||
set_injector_formspec(meta)
|
||||
end,
|
||||
can_dig = function(pos,player)
|
||||
local meta = minetest.env:get_meta(pos);
|
||||
@ -82,22 +89,9 @@ minetest.register_node("technic:injector", {
|
||||
end,
|
||||
on_receive_fields = function(pos, formanme, fields, sender)
|
||||
local meta = minetest.env:get_meta(pos)
|
||||
local mode=meta:get_string("mode")
|
||||
if fields.mode then
|
||||
if mode == "single items" then
|
||||
mode = "whole stacks"
|
||||
else
|
||||
mode = "single items"
|
||||
end
|
||||
meta:set_string("mode", mode)
|
||||
end
|
||||
meta:set_string("formspec",
|
||||
"invsize[8,9;]"..
|
||||
"label[0,0;"..S("Injector").."]"..
|
||||
"button[0,1;.8,.8;mode;]"..
|
||||
"label[.8,1;"..S("Mode: %s"):format(S(mode)).."]"..
|
||||
"list[current_name;main;0,2;8,2;]"..
|
||||
"list[current_player;main;0,5;8,4;]")
|
||||
if fields.mode_item then meta:set_string("mode", "single items") end
|
||||
if fields.mode_stack then meta:set_string("mode", "whole stacks") end
|
||||
set_injector_formspec(meta)
|
||||
end,
|
||||
allow_metadata_inventory_put = technic.machine_inventory_put,
|
||||
allow_metadata_inventory_take = technic.machine_inventory_take,
|
||||
|
Loading…
Reference in New Issue
Block a user