diff options
Diffstat (limited to 'mesecons_solarpanel')
-rw-r--r-- | mesecons_solarpanel/depends.txt | 2 | ||||
-rw-r--r-- | mesecons_solarpanel/init.lua | 39 |
2 files changed, 41 insertions, 0 deletions
diff --git a/mesecons_solarpanel/depends.txt b/mesecons_solarpanel/depends.txt new file mode 100644 index 0000000..bc7b062 --- /dev/null +++ b/mesecons_solarpanel/depends.txt @@ -0,0 +1,2 @@ +mesecons +mesecons_materials diff --git a/mesecons_solarpanel/init.lua b/mesecons_solarpanel/init.lua new file mode 100644 index 0000000..f64b4b2 --- /dev/null +++ b/mesecons_solarpanel/init.lua @@ -0,0 +1,39 @@ +-- Solar Panel +minetest.register_node("mesecons_solarpanel:solar_panel", { + drawtype = "raillike", + tile_images = {"jeija_solar_panel.png"}, + inventory_image = "jeija_solar_panel.png", + wield_image = "jeija_solar_panel.png", + paramtype = "light", + walkable = false, + is_ground_content = true, + selection_box = { + type = "fixed", + }, + furnace_burntime = 5, + material = minetest.digprop_dirtlike(0.1), + description="Solar Panel", +}) + +minetest.register_craft({ + output = '"mesecons_solarpanel:solar_panel" 1', + recipe = { + {'"mesecons_materials:silicon"', '"mesecons_materials:silicon"'}, + {'"mesecons_materials:silicon"', '"mesecons_materials:silicon"'}, + } +}) + +minetest.register_abm( + {nodenames = {"mesecons_solarpanel:solar_panel"}, + interval = 0.1, + chance = 1, + action = function(pos, node, active_object_count, active_object_count_wider) + local light = minetest.env:get_node_light(pos, nil) + if light == nil then light = 0 end + if light >= 12 then + mesecon:receptor_on(pos) + else + mesecon:receptor_off(pos) + end + end, +}) |