summaryrefslogtreecommitdiff
path: root/mesecons_random/init.lua
blob: 40112173731b68073e746cc318c850366bda5b88 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
-- REMOVESTONE

minetest.register_node("mesecons_random:removestone", {
	tiles = {"jeija_removestone.png"},
	inventory_image = minetest.inventorycube("jeija_removestone_inv.png"),
	groups = {cracky=3, mesecon=2},
	description="Removestone",
})

mesecon:register_effector(nil, "mesecons_random:removestone")

minetest.register_craft({
	output = 'mesecons_random:removestone 4',
	recipe = {
		{"", "default:cobble", ""},
		{"default:cobble", "group:mesecon_conductor_craftable", "default:cobble"},
		{"", "default:cobble", ""},
	}
})

mesecon:register_on_signal_on(function(pos, node)
	if node.name == "mesecons_random:removestone" then
		minetest.env:remove_node(pos)
	end
end)

-- GHOSTSTONE

minetest.register_node("mesecons_random:ghoststone", {
	description="ghoststone",
	tiles = {"jeija_ghoststone.png"},
	is_ground_content = true,
	inventory_image = minetest.inventorycube("jeija_ghoststone_inv.png"),
	groups = {cracky=3, mesecon=2},
	sounds = default.node_sound_stone_defaults(),
})

minetest.register_node("mesecons_random:ghoststone_active", {
	drawtype = "airlike",
	pointable = false,
	walkable = false,
	diggable = false,
	sunlight_propagates = true,
	groups = {mesecon=2},
})

mesecon:register_effector("mesecons_random:ghoststone_active", "mesecons_random:ghoststone")

minetest.register_craft({
	output = 'mesecons_random:ghoststone 4',
	recipe = {
		{"default:steel_ingot", "default:cobble", "default:steel_ingot"},
		{"default:cobble", "group:mesecon_conductor_craftable", "default:cobble"},
		{"default:steel_ingot", "default:cobble", "default:steel_ingot"},
	}
})

mesecon:register_on_signal_on(function(pos, node)
	if node.name == "mesecons_random:ghoststone" then
		minetest.env:add_node(pos, {name="mesecons_random:ghoststone_active"})
		nodeupdate(pos)
	end
end)

mesecon:register_on_signal_off(function(pos, node)
	if node.name == "mesecons_random:ghoststone_active" then
		minetest.env:add_node(pos, {name="mesecons_random:ghoststone"})
		nodeupdate(pos)
	end
end)