mirror of
https://github.com/minetest-mods/technic.git
synced 2024-12-24 18:00:29 +01:00
Unify and simplify LED/Lamp node definition
This commit is contained in:
parent
d623715d94
commit
4775d98fb7
@ -84,21 +84,12 @@ local function lamp_toggle(pos, node, player)
|
||||
end
|
||||
end
|
||||
|
||||
minetest.register_node("technic:lv_lamp", {
|
||||
description = desc,
|
||||
local common_fields = {
|
||||
drawtype = "nodebox",
|
||||
node_box = {
|
||||
type = "fixed",
|
||||
fixed = {0.5,0.5,0.5,-0.5,-0.2,-0.5}
|
||||
},
|
||||
collision_box = {
|
||||
type = "fixed",
|
||||
fixed = {0.5,0.5,0.5,-0.5,-0.2,-0.5}
|
||||
},
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {0.5,0.5,0.5,-0.5,-0.2,-0.5}
|
||||
},
|
||||
tiles = {
|
||||
"technic_lv_lamp_top.png",
|
||||
"technic_lv_lamp_bottom.png",
|
||||
@ -107,56 +98,50 @@ minetest.register_node("technic:lv_lamp", {
|
||||
"technic_lv_lamp_side.png",
|
||||
"technic_lv_lamp_side.png"
|
||||
},
|
||||
groups = {cracky = 2, technic_machine = 1, technic_lv = 1},
|
||||
connect_sides = {"front", "back", "left", "right", "top"},
|
||||
can_dig = technic.machine_can_dig,
|
||||
technic_run = lamp_run,
|
||||
on_destruct = illuminate,
|
||||
on_rightclick = lamp_toggle
|
||||
}
|
||||
|
||||
local ndef
|
||||
|
||||
ndef = {
|
||||
description = desc,
|
||||
groups = {cracky = 2, technic_machine = 1, technic_lv = 1},
|
||||
on_construct = function(pos)
|
||||
local meta = minetest.get_meta(pos)
|
||||
meta:set_string("infotext", desc)
|
||||
meta:set_int("LV_EU_demand", demand)
|
||||
end,
|
||||
on_destruct = illuminate,
|
||||
on_rightclick = lamp_toggle
|
||||
})
|
||||
end
|
||||
}
|
||||
|
||||
minetest.register_node("technic:lv_lamp_active", {
|
||||
for k, v in pairs(common_fields) do
|
||||
ndef[k] = v
|
||||
end
|
||||
|
||||
minetest.register_node("technic:lv_lamp", ndef)
|
||||
|
||||
|
||||
ndef = {
|
||||
description = active_desc,
|
||||
drawtype = "nodebox",
|
||||
node_box = {
|
||||
type = "fixed",
|
||||
fixed = {0.5, 0.5, 0.5, -0.5, -0.2, -0.5}
|
||||
},
|
||||
collision_box = {
|
||||
type = "fixed",
|
||||
fixed = {0.5, 0.5, 0.5, -0.5, -0.2, -0.5}
|
||||
},
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {0.5, 0.5, 0.5, -0.5, -0.2, -0.5}
|
||||
},
|
||||
tiles = {
|
||||
"technic_lv_lamp_top.png",
|
||||
"technic_lv_lamp_bottom.png",
|
||||
"technic_lv_lamp_side.png",
|
||||
"technic_lv_lamp_side.png",
|
||||
"technic_lv_lamp_side.png",
|
||||
"technic_lv_lamp_side.png"
|
||||
},
|
||||
paramtype = "light",
|
||||
light_source = 14,
|
||||
drop = "technic:lv_lamp",
|
||||
groups = {cracky = 2, technic_machine = 1, technic_lv = 1, not_in_creative_inventory = 1},
|
||||
connect_sides = {"front", "back", "left", "right", "top"},
|
||||
can_dig = technic.machine_can_dig,
|
||||
technic_run = lamp_run,
|
||||
technic_on_disable = function(pos)
|
||||
illuminate(pos, false)
|
||||
technic.swap_node(pos, "technic:lv_lamp")
|
||||
end,
|
||||
on_destruct = illuminate,
|
||||
on_rightclick = lamp_toggle,
|
||||
})
|
||||
}
|
||||
|
||||
for k, v in pairs(common_fields) do
|
||||
ndef[k] = v
|
||||
end
|
||||
|
||||
minetest.register_node("technic:lv_lamp_active", ndef)
|
||||
|
||||
|
||||
technic.register_machine("LV", "technic:lv_lamp", technic.receiver)
|
||||
technic.register_machine("LV", "technic:lv_lamp_active", technic.receiver)
|
||||
|
@ -22,21 +22,12 @@ local function led_run(pos, node)
|
||||
end
|
||||
end
|
||||
|
||||
minetest.register_node("technic:lv_led", {
|
||||
description = desc,
|
||||
local common_fields = {
|
||||
drawtype = "nodebox",
|
||||
node_box = {
|
||||
type = "fixed",
|
||||
fixed = {0.5, 0.5, 0.5, -0.5, 0.3, -0.5}
|
||||
},
|
||||
collision_box = {
|
||||
type = "fixed",
|
||||
fixed = {0.5, 0.5, 0.5, -0.5, 0.3, -0.5}
|
||||
},
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {0.5, 0.5, 0.5, -0.5, 0.3, -0.5}
|
||||
},
|
||||
tiles = {
|
||||
"technic_lv_led_top.png",
|
||||
"technic_lv_led.png",
|
||||
@ -45,55 +36,51 @@ minetest.register_node("technic:lv_led", {
|
||||
"technic_lv_led_side2.png",
|
||||
"technic_lv_led_side2.png",
|
||||
},
|
||||
inventory_image = "technic_lv_led_inv.png",
|
||||
sunlight_propagates = true,
|
||||
groups = {cracky = 2, technic_machine = 1, technic_lv = 1},
|
||||
|
||||
connect_sides = {"front", "back", "left", "right", "top", "bottom"},
|
||||
can_dig = technic.machine_can_dig,
|
||||
technic_run = led_run,
|
||||
}
|
||||
|
||||
local ndef
|
||||
|
||||
ndef = {
|
||||
description = desc,
|
||||
inventory_image = "technic_lv_led_inv.png",
|
||||
sunlight_propagates = true,
|
||||
groups = {cracky = 2, technic_machine = 1, technic_lv = 1},
|
||||
|
||||
on_construct = function(pos)
|
||||
local meta = minetest.get_meta(pos)
|
||||
meta:set_string("infotext", desc)
|
||||
meta:set_int("LV_EU_demand", demand)
|
||||
end,
|
||||
})
|
||||
}
|
||||
|
||||
minetest.register_node("technic:lv_led_active", {
|
||||
for k, v in pairs(common_fields) do
|
||||
ndef[k] = v
|
||||
end
|
||||
|
||||
minetest.register_node("technic:lv_led", ndef)
|
||||
|
||||
|
||||
ndef = {
|
||||
description = active_desc,
|
||||
drawtype = "nodebox",
|
||||
node_box = {
|
||||
type = "fixed",
|
||||
fixed = {0.5, 0.5, 0.5, -0.5, 0.3, -0.5}
|
||||
},
|
||||
collision_box = {
|
||||
type = "fixed",
|
||||
fixed = {0.5, 0.5, 0.5, -0.5, 0.3, -0.5}
|
||||
},
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {0.5, 0.5, 0.5, -0.5, 0.3, -0.5}
|
||||
},
|
||||
tiles = {
|
||||
"technic_lv_led_top.png",
|
||||
"technic_lv_led.png",
|
||||
"technic_lv_led_side.png",
|
||||
"technic_lv_led_side2.png",
|
||||
"technic_lv_led_side2.png",
|
||||
"technic_lv_led_side2.png",
|
||||
},
|
||||
inventory_image = "technic_lv_led_inv.png",
|
||||
paramtype = "light",
|
||||
light_source = 9,
|
||||
drop = "technic:lv_led",
|
||||
sunlight_propagates = true,
|
||||
groups = {cracky = 2, technic_machine = 1, technic_lv = 1, not_in_creative_inventory = 1},
|
||||
connect_sides = {"front", "back", "left", "right", "top", "bottom"},
|
||||
can_dig = technic.machine_can_dig,
|
||||
technic_run = led_run,
|
||||
technic_on_disable = function(pos)
|
||||
technic.swap_node(pos, "technic:lv_led")
|
||||
end,
|
||||
})
|
||||
}
|
||||
|
||||
for k, v in pairs(common_fields) do
|
||||
ndef[k] = v
|
||||
end
|
||||
|
||||
minetest.register_node("technic:lv_led_active", ndef)
|
||||
|
||||
|
||||
technic.register_machine("LV", "technic:lv_led", technic.receiver)
|
||||
technic.register_machine("LV", "technic:lv_led_active", technic.receiver)
|
||||
|
Loading…
Reference in New Issue
Block a user