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, +})  | 
