forked from minetest-mods/mesecons
Solarpanel: cleanup (#504)
This commit is contained in:
parent
e1cffdedbf
commit
8dec053996
Binary file not shown.
Before Width: | Height: | Size: 55 KiB After Width: | Height: | Size: 54 KiB |
Binary file not shown.
Before Width: | Height: | Size: 3.3 KiB After Width: | Height: | Size: 3.1 KiB |
|
@ -1,98 +1,60 @@
|
|||
-- Solar Panel
|
||||
minetest.register_node("mesecons_solarpanel:solar_panel_on", {
|
||||
drawtype = "nodebox",
|
||||
tiles = { "jeija_solar_panel.png", },
|
||||
inventory_image = "jeija_solar_panel.png",
|
||||
wield_image = "jeija_solar_panel.png",
|
||||
paramtype = "light",
|
||||
paramtype2 = "wallmounted",
|
||||
walkable = false,
|
||||
is_ground_content = false,
|
||||
node_box = {
|
||||
type = "wallmounted",
|
||||
wall_bottom = { -7/16, -8/16, -7/16, 7/16, -7/16, 7/16 },
|
||||
wall_top = { -7/16, 7/16, -7/16, 7/16, 8/16, 7/16 },
|
||||
wall_side = { -8/16, -7/16, -7/16, -7/16, 7/16, 7/16 },
|
||||
},
|
||||
selection_box = {
|
||||
type = "wallmounted",
|
||||
wall_bottom = { -7/16, -8/16, -7/16, 7/16, -7/16, 7/16 },
|
||||
wall_top = { -7/16, 7/16, -7/16, 7/16, 8/16, 7/16 },
|
||||
wall_side = { -8/16, -7/16, -7/16, -7/16, 7/16, 7/16 },
|
||||
},
|
||||
drop = "mesecons_solarpanel:solar_panel_off",
|
||||
groups = {dig_immediate=3, not_in_creative_inventory = 1},
|
||||
sounds = default.node_sound_glass_defaults(),
|
||||
mesecons = {receptor = {
|
||||
state = mesecon.state.on,
|
||||
rules = mesecon.rules.wallmounted_get,
|
||||
}},
|
||||
on_blast = mesecon.on_blastnode,
|
||||
})
|
||||
|
||||
-- Solar Panel
|
||||
minetest.register_node("mesecons_solarpanel:solar_panel_off", {
|
||||
drawtype = "nodebox",
|
||||
tiles = { "jeija_solar_panel.png", },
|
||||
inventory_image = "jeija_solar_panel.png",
|
||||
wield_image = "jeija_solar_panel.png",
|
||||
paramtype = "light",
|
||||
paramtype2 = "wallmounted",
|
||||
walkable = false,
|
||||
is_ground_content = false,
|
||||
node_box = {
|
||||
type = "wallmounted",
|
||||
wall_bottom = { -7/16, -8/16, -7/16, 7/16, -7/16, 7/16 },
|
||||
wall_top = { -7/16, 7/16, -7/16, 7/16, 8/16, 7/16 },
|
||||
wall_side = { -8/16, -7/16, -7/16, -7/16, 7/16, 7/16 },
|
||||
},
|
||||
selection_box = {
|
||||
type = "wallmounted",
|
||||
wall_bottom = { -7/16, -8/16, -7/16, 7/16, -7/16, 7/16 },
|
||||
wall_top = { -7/16, 7/16, -7/16, 7/16, 8/16, 7/16 },
|
||||
wall_side = { -8/16, -7/16, -7/16, -7/16, 7/16, 7/16 },
|
||||
},
|
||||
groups = {dig_immediate=3},
|
||||
mesecon.register_node("mesecons_solarpanel:solar_panel", {
|
||||
description = "Solar Panel",
|
||||
drawtype = "nodebox",
|
||||
tiles = {"mesecons_solarpanel.png"},
|
||||
inventory_image = "mesecons_solarpanel.png",
|
||||
wield_image = "mesecons_solarpanel.png",
|
||||
paramtype = "light",
|
||||
paramtype2 = "wallmounted",
|
||||
walkable = false,
|
||||
is_ground_content = false,
|
||||
node_box = {
|
||||
type = "wallmounted",
|
||||
wall_bottom = {-7/16, -8/16, -7/16, 7/16, -7/16, 7/16},
|
||||
wall_top = {-7/16, 7/16, -7/16, 7/16, 8/16, 7/16},
|
||||
wall_side = {-8/16, -7/16, -7/16, -7/16, 7/16, 7/16},
|
||||
},
|
||||
sounds = default.node_sound_glass_defaults(),
|
||||
on_blast = mesecon.on_blastnode,
|
||||
},{
|
||||
groups = {dig_immediate = 3},
|
||||
mesecons = {receptor = {
|
||||
state = mesecon.state.off,
|
||||
rules = mesecon.rules.wallmounted_get,
|
||||
rules = mesecon.rules.wallmounted_get
|
||||
}}
|
||||
},{
|
||||
groups = {dig_immediate = 3, not_in_creative_inventory = 1},
|
||||
mesecons = {receptor = {
|
||||
state = mesecon.state.on,
|
||||
rules = mesecon.rules.wallmounted_get
|
||||
}},
|
||||
on_blast = mesecon.on_blastnode,
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "mesecons_solarpanel:solar_panel_off 1",
|
||||
output = "mesecons_solarpanel:solar_panel_off",
|
||||
recipe = {
|
||||
{"mesecons_materials:silicon", "mesecons_materials:silicon"},
|
||||
{"mesecons_materials:silicon", "mesecons_materials:silicon"},
|
||||
}
|
||||
})
|
||||
|
||||
minetest.register_abm(
|
||||
{nodenames = {"mesecons_solarpanel:solar_panel_off"},
|
||||
minetest.register_abm({
|
||||
label = "Solar Panel On/Off",
|
||||
nodenames = {
|
||||
"mesecons_solarpanel:solar_panel_off",
|
||||
"mesecons_solarpanel:solar_panel_on"
|
||||
},
|
||||
interval = 1,
|
||||
chance = 1,
|
||||
catch_up = false,
|
||||
action = function(pos, node)
|
||||
local light = minetest.get_node_light(pos)
|
||||
|
||||
if light >= 12 then
|
||||
if light >= 12 and node.name == "mesecons_solarpanel:solar_panel_off" then
|
||||
node.name = "mesecons_solarpanel:solar_panel_on"
|
||||
minetest.swap_node(pos, node)
|
||||
mesecon.receptor_on(pos, mesecon.rules.wallmounted_get(node))
|
||||
end
|
||||
end,
|
||||
})
|
||||
|
||||
minetest.register_abm(
|
||||
{nodenames = {"mesecons_solarpanel:solar_panel_on"},
|
||||
interval = 1,
|
||||
chance = 1,
|
||||
action = function(pos, node)
|
||||
local light = minetest.get_node_light(pos)
|
||||
|
||||
if light < 12 then
|
||||
elseif light < 12 and node.name == "mesecons_solarpanel:solar_panel_on" then
|
||||
node.name = "mesecons_solarpanel:solar_panel_off"
|
||||
minetest.swap_node(pos, node)
|
||||
mesecon.receptor_off(pos, mesecon.rules.wallmounted_get(node))
|
||||
|
|
Binary file not shown.
Before Width: | Height: | Size: 612 B |
BIN
mesecons_solarpanel/textures/mesecons_solarpanel.png
Normal file
BIN
mesecons_solarpanel/textures/mesecons_solarpanel.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 607 B |
Loading…
Reference in New Issue
Block a user