minetest.register_node("sweet_machine:sweet_machine", { description = "Sweet Vending Machine", mesh = "sweet_machine.obj", tiles = {"sweet_machine.png"}, paramtype = "light", paramtype2 = "facedir", groups = {snappy=3}, drawtype = "mesh", collision_box = { type = "fixed", fixed = {-0.5, -0.5, -0.5, 0.5, 1.5, 0.5} }, selection_box = { type = "fixed", fixed = {-0.5, -0.5, -0.5, 0.5, 1.5, 0.5} }, expand = { top="placeholder" }, sounds = default.node_sound_wood_defaults(), on_rotate = screwdriver.rotate_simple, on_punch = function(pos, node, puncher, pointed_thing) local wielditem = puncher:get_wielded_item() local wieldname = wielditem:get_name() local fdir_to_fwd = { {0, -1}, {-1, 0}, {0, 1}, {1, 0} } local fdir = node.param2 local pos_drop = { x=pos.x+fdir_to_fwd[fdir+1][1], y=pos.y, z=pos.z+fdir_to_fwd[fdir+1][2] } if wieldname == "sweet_machine:coin" then wielditem:take_item() puncher:set_wielded_item(wielditem) minetest.spawn_item(pos_drop, "sweet_machine:chocolate") minetest.spawn_item(pos_drop, "sweet_machine:chocolate_cake") minetest.spawn_item(pos_drop, "sweet_machine:wafer_icecream") minetest.spawn_item(pos_drop, "sweet_machine:sweet") minetest.spawn_item(pos_drop, "sweet_machine:cookie") minetest.sound_play("insert_coin", { pos=pos, max_hear_distance = 5 }) else minetest.chat_send_player(puncher:get_player_name(), "Please insert a coin in the machine.") end end }) minetest.register_craft({ output = 'sweet_machine:sweet_machine', recipe = { {'default:steel_ingot','dye:blue','default:steel_ingot'}, {'default:steel_ingot','dye:blue','default:steel_ingot'}, {'default:steel_ingot','dye:blue','default:steel_ingot'}, } }) minetest.register_craftitem("sweet_machine:chocolate", { description = "Chocolate", inventory_image = "chocolate.png", on_use = minetest.item_eat(4), }) minetest.register_craftitem("sweet_machine:coin", { description = "Gold Coin (for sweet vending machine)", inventory_image = "coin.png", }) minetest.register_craftitem("sweet_machine:chocolate_cake", { description = "Chocolate Cake", inventory_image = "chocolate_cake.png", on_use = minetest.item_eat(8), }) minetest.register_craftitem("sweet_machine:chocolate_icecream", { description = "Chocolate Icecream", inventory_image = "chocolate_icecream.png", on_use = minetest.item_eat(5), }) minetest.register_craftitem("sweet_machine:wafer_icecream", { description = "Wafer Icecream", inventory_image = "wafer_icecream.png", on_use = minetest.item_eat(6), }) minetest.register_craftitem("sweet_machine:sweet", { description = "Sweet", inventory_image = "sweet.png", on_use = minetest.item_eat(3), }) minetest.register_craftitem("sweet_machine:cracker", { description = "Cracker", inventory_image = "cracker.png", on_use = minetest.item_eat(4), }) minetest.register_craftitem("sweet_machine:cookie", { description = "Cookie", inventory_image = "cookie.png", on_use = minetest.item_eat(3), })