mirror of
https://github.com/minetest-mods/mesecons.git
synced 2024-08-21 05:24:11 +02:00
The LIGHT_MAX global is created in the legacy.lua file in the default mod; it states that it's there for backwards compatibility, but it would be better to reference the proper value inside the default table.
62 lines
1.9 KiB
Lua
62 lines
1.9 KiB
Lua
-- MESELAMPS
|
|
-- A lamp is "is an electrical device used to create artificial light" (wikipedia)
|
|
-- guess what?
|
|
|
|
mesecon_lamp_box = {
|
|
type = "wallmounted",
|
|
wall_top = {-0.3125,0.375,-0.3125,0.3125,0.5,0.3125},
|
|
wall_bottom = {-0.3125,-0.5,-0.3125,0.3125,-0.375,0.3125},
|
|
wall_side = {-0.375,-0.3125,-0.3125,-0.5,0.3125,0.3125},
|
|
}
|
|
|
|
minetest.register_node("mesecons_lamp:lamp_on", {
|
|
drawtype = "nodebox",
|
|
tiles = {"jeija_meselamp_on.png"},
|
|
paramtype = "light",
|
|
paramtype2 = "wallmounted",
|
|
legacy_wallmounted = true,
|
|
sunlight_propagates = true,
|
|
walkable = true,
|
|
light_source = default.LIGHT_MAX,
|
|
node_box = mesecon_lamp_box,
|
|
selection_box = mesecon_lamp_box,
|
|
groups = {dig_immediate=3,not_in_creative_inventory=1, mesecon_effector_on = 1},
|
|
drop="mesecons_lamp:lamp_off 1",
|
|
sounds = default.node_sound_glass_defaults(),
|
|
mesecons = {effector = {
|
|
action_off = function (pos, node)
|
|
minetest.swap_node(pos, {name = "mesecons_lamp:lamp_off", param2 = node.param2})
|
|
end
|
|
}}
|
|
})
|
|
|
|
minetest.register_node("mesecons_lamp:lamp_off", {
|
|
drawtype = "nodebox",
|
|
tiles = {"jeija_meselamp_off.png"},
|
|
inventory_image = "jeija_meselamp.png",
|
|
wield_image = "jeija_meselamp.png",
|
|
paramtype = "light",
|
|
paramtype2 = "wallmounted",
|
|
sunlight_propagates = true,
|
|
walkable = true,
|
|
node_box = mesecon_lamp_box,
|
|
selection_box = mesecon_lamp_box,
|
|
groups = {dig_immediate=3, mesecon_receptor_off = 1, mesecon_effector_off = 1},
|
|
description="Meselamp",
|
|
sounds = default.node_sound_glass_defaults(),
|
|
mesecons = {effector = {
|
|
action_on = function (pos, node)
|
|
minetest.swap_node(pos, {name = "mesecons_lamp:lamp_on", param2 = node.param2})
|
|
end
|
|
}}
|
|
})
|
|
|
|
minetest.register_craft({
|
|
output = "mesecons_lamp:lamp_off 1",
|
|
recipe = {
|
|
{"", "default:glass", ""},
|
|
{"group:mesecon_conductor_craftable", "default:steel_ingot", "group:mesecon_conductor_craftable"},
|
|
{"", "default:glass", ""},
|
|
}
|
|
})
|