]> git.lizzy.rs Git - Crafter.git/blob - mods/cake/init.lua
2cb5b263eb0389d0ec70786fdd4d22a54a3b086d
[Crafter.git] / mods / cake / init.lua
1 -- GENERATED CODE
2 -- Node Box Editor, version 0.9.0
3 -- Namespace: test
4 -- 
5 -- the higher it is the more it's "eaten"
6 for i = 0,13 do
7         local missing_slice
8         if i == 0 then
9                 missing_slice = "cake_side.png"
10         else
11                 missing_slice = "cake_inner.png"
12         end
13         minetest.register_node("cake:cake_"..i, {
14                 description = "Cake",
15                 tiles = {
16                         "cake_top.png",
17                         "cake_bottom.png",
18                         "cake_side.png",
19                         "cake_side.png",
20                         missing_slice,
21                         "cake_side.png"
22                 },
23                 drawtype = "nodebox",
24                 paramtype = "light",
25                 node_box = {
26                         type = "fixed",
27                         fixed = {
28                                 {-7/16, -8/16, -7/16, 7/16, -1/16, (7-i)/16}, -- Cake
29                         }
30                 },
31                 drop = "",
32                 sounds = main.woolSound(),
33                 groups = {wool=1,cake=i,falling_node=1},
34                 on_construct = function(pos)
35                         --randomly cake eats itself
36                         if math.random() > 0.995 then
37                                 minetest.set_node(pos, {name="cake:cursed_cake_1"})
38                         end
39                 end,
40                 on_rightclick = function(pos, node, clicker, itemstack, pointed_thing)
41                         clicker:set_hp(clicker:get_hp()+5)
42                         if i == 13 then
43                         minetest.sound_play("eat_finish",{pos=pos,gain=0.2,pitch=math.random(90,100)/100})
44                         minetest.remove_node(pos)
45                         return
46                 else
47                         minetest.sound_play("eat",{pos=pos,gain=0.2,pitch=math.random(90,100)/100})
48                         minetest.set_node(pos, {name="cake:cake_"..i+1})
49                 end
50                 end,
51         })
52 end
53
54 for i = 0,13 do
55         local missing_slice
56         if i == 0 then
57                 missing_slice = "cake_side.png^[colorize:red:140"
58         else
59                 missing_slice = "cake_inner.png^[colorize:red:140"
60         end
61         minetest.register_node("cake:cursed_cake_"..i, {
62                 description = "CURSED CAKE",
63                 tiles = {
64                         "cake_top.png^[colorize:red:140",
65                         "cake_bottom.png^[colorize:red:140",
66                         "cake_side.png^[colorize:red:140",
67                         "cake_side.png^[colorize:red:140",
68                         missing_slice,
69                         "cake_side.png^[colorize:red:140"
70                 },
71                 drawtype = "nodebox",
72                 paramtype = "light",
73                 node_box = {
74                         type = "fixed",
75                         fixed = {
76                                 {-7/16, -8/16, -7/16, 7/16, -1/16, (7-i)/16}, -- Cake
77                         }
78                 },
79                 drop = "",
80                 sounds = main.woolSound(),
81                 groups = {wool=1,cursed_cake=i,falling_node=1},
82                 on_construct = function(pos)
83                         local timer = minetest.get_node_timer(pos)
84                         timer:start(0.2)
85                 end,
86                 on_rightclick = function(pos, node, clicker, itemstack, pointed_thing)
87                         clicker:set_hp(clicker:get_hp()-5)
88                 end,
89                 on_timer = function(pos, elapsed)
90                         if i == 13 then 
91                         minetest.sound_play("eat_finish",{pos=pos,gain=0.2,pitch=math.random(90,100)/100}) 
92                         minetest.remove_node(pos)
93                         return
94                 else
95                         minetest.sound_play("eat",{pos=pos,gain=0.2,pitch=math.random(90,100)/100})
96                         minetest.set_node(pos, {name="cake:cursed_cake_"..i+1})
97                 end
98                 end,
99         })
100 end
101
102
103 minetest.register_craft({
104         output = "cake:cake_1",
105         recipe = {
106                 {"weather:snowball","weather:snowball","weather:snowball"},
107                 {"farming:wheat","farming:wheat","farming:wheat"},
108         }
109 })
110
111