forked from nalc/homedecor_modpack
		
	Always return the ItemStack for on_rightclick to comply with the API.
This commit is contained in:
		| @@ -29,6 +29,7 @@ minetest.register_node("computer:vanio", { | |||||||
| 	on_rightclick = function(pos, node, clicker, itemstack) | 	on_rightclick = function(pos, node, clicker, itemstack) | ||||||
| 		node.name = "computer:vanio_off" | 		node.name = "computer:vanio_off" | ||||||
| 		minetest.set_node(pos, node) | 		minetest.set_node(pos, node) | ||||||
|  | 		return itemstack | ||||||
| 	end | 	end | ||||||
| }) | }) | ||||||
|  |  | ||||||
| @@ -48,6 +49,7 @@ minetest.register_node("computer:vanio_off", { | |||||||
| 	on_rightclick = function(pos, node, clicker, itemstack) | 	on_rightclick = function(pos, node, clicker, itemstack) | ||||||
| 		node.name = "computer:vanio" | 		node.name = "computer:vanio" | ||||||
| 		minetest.set_node(pos, node) | 		minetest.set_node(pos, node) | ||||||
|  | 		return itemstack | ||||||
| 	end | 	end | ||||||
| }) | }) | ||||||
|  |  | ||||||
| @@ -168,6 +170,7 @@ minetest.register_node("computer:monitor", { | |||||||
| 	on_rightclick = function(pos, node, clicker, itemstack) | 	on_rightclick = function(pos, node, clicker, itemstack) | ||||||
| 		node.name = "computer:monitor_on" | 		node.name = "computer:monitor_on" | ||||||
| 		minetest.set_node(pos, node) | 		minetest.set_node(pos, node) | ||||||
|  | 		return itemstack | ||||||
| 	end | 	end | ||||||
| }) | }) | ||||||
|  |  | ||||||
| @@ -186,6 +189,7 @@ minetest.register_node("computer:monitor_on", { | |||||||
| 	on_rightclick = function(pos, node, clicker, itemstack) | 	on_rightclick = function(pos, node, clicker, itemstack) | ||||||
| 		node.name = "computer:monitor" | 		node.name = "computer:monitor" | ||||||
| 		minetest.set_node(pos, node) | 		minetest.set_node(pos, node) | ||||||
|  | 		return itemstack | ||||||
| 	end | 	end | ||||||
| }) | }) | ||||||
|  |  | ||||||
| @@ -294,12 +298,13 @@ minetest.register_node("computer:server", { | |||||||
| 	on_rightclick = function(pos, node, clicker, itemstack) | 	on_rightclick = function(pos, node, clicker, itemstack) | ||||||
| 		node.name = "computer:server_on" | 		node.name = "computer:server_on" | ||||||
| 		minetest.set_node(pos, node) | 		minetest.set_node(pos, node) | ||||||
|  | 		return itemstack | ||||||
| 	end, | 	end, | ||||||
| 	on_place = function(itemstack, placer, pointed_thing) | 	on_place = function(itemstack, placer, pointed_thing) | ||||||
| 		local pos = pointed_thing.above | 		local pos = pointed_thing.above | ||||||
| 		if minetest.get_node({x=pos.x, y=pos.y+1, z=pos.z}).name ~= "air" then | 		if minetest.get_node({x=pos.x, y=pos.y+1, z=pos.z}).name ~= "air" then | ||||||
| 			minetest.chat_send_player( placer:get_player_name(), "Not enough vertical space to place a server!" ) | 			minetest.chat_send_player( placer:get_player_name(), "Not enough vertical space to place a server!" ) | ||||||
| 			return | 			return itemstack | ||||||
| 		end | 		end | ||||||
| 		return minetest.item_place(itemstack, placer, pointed_thing) | 		return minetest.item_place(itemstack, placer, pointed_thing) | ||||||
| 	end | 	end | ||||||
| @@ -333,5 +338,6 @@ minetest.register_node("computer:server_on", { | |||||||
| 	on_rightclick = function(pos, node, clicker, itemstack) | 	on_rightclick = function(pos, node, clicker, itemstack) | ||||||
| 		node.name = "computer:server" | 		node.name = "computer:server" | ||||||
| 		minetest.set_node(pos, node) | 		minetest.set_node(pos, node) | ||||||
|  | 		return itemstack | ||||||
| 	end | 	end | ||||||
| }) | }) | ||||||
|   | |||||||
| @@ -27,11 +27,12 @@ computer.register = function (name, def) | |||||||
| 		node_box = def.node_box, | 		node_box = def.node_box, | ||||||
| 		selection_box = def.node_box, | 		selection_box = def.node_box, | ||||||
| 		on_rightclick = function (pos, node, clicker, itemstack) | 		on_rightclick = function (pos, node, clicker, itemstack) | ||||||
| 			if (def.on_turn_off) then | 			if def.on_turn_off and def.on_turn_off(pos, node, clicker, itemstack) then | ||||||
| 				if (def.on_turn_off(pos, node, clicker, itemstack)) then return end | 				return itemstack | ||||||
| 			end | 			end | ||||||
| 			node.name = OFFSTATE | 			node.name = OFFSTATE | ||||||
| 			minetest.set_node(pos, node) | 			minetest.set_node(pos, node) | ||||||
|  | 			return itemstack | ||||||
| 		end | 		end | ||||||
| 	}) | 	}) | ||||||
| 	minetest.register_node(OFFSTATE, { | 	minetest.register_node(OFFSTATE, { | ||||||
| @@ -50,11 +51,12 @@ computer.register = function (name, def) | |||||||
| 		node_box = def.node_box_off or def.node_box, | 		node_box = def.node_box_off or def.node_box, | ||||||
| 		selection_box = def.node_box_off or def.node_box, | 		selection_box = def.node_box_off or def.node_box, | ||||||
| 		on_rightclick = function (pos, node, clicker, itemstack) | 		on_rightclick = function (pos, node, clicker, itemstack) | ||||||
| 			if (def.on_turn_on) then | 			if def.on_turn_on and def.on_turn_on(pos, node, clicker, itemstack) then | ||||||
| 				if (def.on_turn_on(pos, node, clicker, itemstack)) then return end | 				return itemstack | ||||||
| 			end | 			end | ||||||
| 			node.name = ONSTATE | 			node.name = ONSTATE | ||||||
| 			minetest.set_node(pos, node) | 			minetest.set_node(pos, node) | ||||||
|  | 			return itemstack | ||||||
| 		end, | 		end, | ||||||
| 		drop = ONSTATE | 		drop = ONSTATE | ||||||
| 	}) | 	}) | ||||||
|   | |||||||
| @@ -276,7 +276,8 @@ minetest.register_node("computer:tetris_arcade", { | |||||||
| 		end | 		end | ||||||
| 		if minetest.get_node({x=pos.x, y=pos.y+1, z=pos.z}).name ~= "air" then | 		if minetest.get_node({x=pos.x, y=pos.y+1, z=pos.z}).name ~= "air" then | ||||||
| 			minetest.chat_send_player(placer:get_player_name(), "No room for place the Arcade!") | 			minetest.chat_send_player(placer:get_player_name(), "No room for place the Arcade!") | ||||||
| 		return end | 			return itemstack | ||||||
|  | 		end | ||||||
| 		local dir = placer:get_look_dir() | 		local dir = placer:get_look_dir() | ||||||
| 		local node = {name="computer:tetris_arcade", param1=0, param2 = minetest.dir_to_facedir(dir)} | 		local node = {name="computer:tetris_arcade", param1=0, param2 = minetest.dir_to_facedir(dir)} | ||||||
| 		minetest.set_node(pos, node) | 		minetest.set_node(pos, node) | ||||||
|   | |||||||
| @@ -84,8 +84,9 @@ for _, f in ipairs(flame_types) do | |||||||
| 			{name=f.."_fire_animated.png", animation={type="vertical_frames",  | 			{name=f.."_fire_animated.png", animation={type="vertical_frames",  | ||||||
| 			aspect_w=16, aspect_h=16, length=1.5}}, | 			aspect_w=16, aspect_h=16, length=1.5}}, | ||||||
| 		}, | 		}, | ||||||
| 		on_rightclick = function (pos, node, clicker) | 		on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) | ||||||
| 			start_smoke(pos, node, clicker) | 			start_smoke(pos, node, clicker) | ||||||
|  | 			return itemstack | ||||||
| 		end, | 		end, | ||||||
| 		on_destruct = function (pos) | 		on_destruct = function (pos) | ||||||
| 			stop_smoke(pos) | 			stop_smoke(pos) | ||||||
| @@ -113,8 +114,9 @@ minetest.register_node("fake_fire:fancy_fire", { | |||||||
| 		tiles = { | 		tiles = { | ||||||
| 		{name="fake_fire_animated.png",  | 		{name="fake_fire_animated.png",  | ||||||
| 		animation={type='vertical_frames', aspect_w=16, aspect_h=16, length=1}}, {name='fake_fire_logs.png'}}, | 		animation={type='vertical_frames', aspect_w=16, aspect_h=16, length=1}}, {name='fake_fire_logs.png'}}, | ||||||
| 		on_rightclick = function (pos, node, clicker) | 		on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) | ||||||
| 			start_smoke(pos, node, clicker) | 			start_smoke(pos, node, clicker) | ||||||
|  | 			return itemstack | ||||||
| 		end, | 		end, | ||||||
| 		on_destruct = function (pos) | 		on_destruct = function (pos) | ||||||
| 			stop_smoke(pos) | 			stop_smoke(pos) | ||||||
| @@ -161,9 +163,10 @@ for _, m in ipairs(materials) do | |||||||
| 			type = "fixed", | 			type = "fixed", | ||||||
| 			fixed = {-0.5, -0.5, -0.5, 0.5, 0, 0.5}, | 			fixed = {-0.5, -0.5, -0.5, 0.5, 0, 0.5}, | ||||||
| 		}, | 		}, | ||||||
| 		on_rightclick = function (pos, node, clicker) | 		on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) | ||||||
| 			local chimney = 1 | 			local chimney = 1 | ||||||
| 			start_smoke(pos, node, clicker, chimney) | 			start_smoke(pos, node, clicker, chimney) | ||||||
|  | 			return itemstack | ||||||
| 		end, | 		end, | ||||||
| 		on_destruct = function (pos) | 		on_destruct = function (pos) | ||||||
| 			stop_smoke(pos) | 			stop_smoke(pos) | ||||||
|   | |||||||
| @@ -114,7 +114,7 @@ homedecor.register("sink", { | |||||||
|  |  | ||||||
| --Taps | --Taps | ||||||
|  |  | ||||||
| local function taps_on_rightclick(pos, node, clicker) | local function taps_on_rightclick(pos, node, clicker, itemstack, pointed_thing) | ||||||
| 	local below = minetest.get_node_or_nil({x=pos.x, y=pos.y-1, z=pos.z}) | 	local below = minetest.get_node_or_nil({x=pos.x, y=pos.y-1, z=pos.z}) | ||||||
| 	if below and | 	if below and | ||||||
| 	  below.name == "homedecor:shower_tray" or | 	  below.name == "homedecor:shower_tray" or | ||||||
| @@ -129,6 +129,7 @@ local function taps_on_rightclick(pos, node, clicker) | |||||||
| 		} | 		} | ||||||
| 		homedecor.start_particle_spawner(pos, node, particledef, "homedecor_faucet") | 		homedecor.start_particle_spawner(pos, node, particledef, "homedecor_faucet") | ||||||
| 	end | 	end | ||||||
|  | 	return itemstack | ||||||
| end | end | ||||||
|  |  | ||||||
| homedecor.register("taps", { | homedecor.register("taps", { | ||||||
| @@ -225,7 +226,7 @@ homedecor.register("shower_head", { | |||||||
| 	selection_box = sh_cbox, | 	selection_box = sh_cbox, | ||||||
| 	walkable = false, | 	walkable = false, | ||||||
| 	on_rotate = screwdriver.disallow, | 	on_rotate = screwdriver.disallow, | ||||||
| 	on_rightclick = function (pos, node, clicker) | 	on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) | ||||||
| 		local below = minetest.get_node_or_nil({x=pos.x, y=pos.y-2.0, z=pos.z}) | 		local below = minetest.get_node_or_nil({x=pos.x, y=pos.y-2.0, z=pos.z}) | ||||||
| 		if below and below.name == "homedecor:shower_tray" then | 		if below and below.name == "homedecor:shower_tray" then | ||||||
| 			local particledef = { | 			local particledef = { | ||||||
| @@ -237,6 +238,7 @@ homedecor.register("shower_head", { | |||||||
| 			} | 			} | ||||||
| 			homedecor.start_particle_spawner(pos, node, particledef, "homedecor_shower") | 			homedecor.start_particle_spawner(pos, node, particledef, "homedecor_shower") | ||||||
| 		end | 		end | ||||||
|  | 		return itemstack | ||||||
| 	end, | 	end, | ||||||
| 	on_destruct = function(pos) | 	on_destruct = function(pos) | ||||||
| 		homedecor.stop_particle_spawner(pos) | 		homedecor.stop_particle_spawner(pos) | ||||||
|   | |||||||
| @@ -79,10 +79,11 @@ for i in ipairs(bedcolors) do | |||||||
| 		after_dig_node = function(pos) | 		after_dig_node = function(pos) | ||||||
| 			homedecor.unextend_bed(pos, color) | 			homedecor.unextend_bed(pos, color) | ||||||
| 		end, | 		end, | ||||||
| 		on_rightclick = function(pos, node, clicker) | 		on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) | ||||||
| 			if minetest.get_modpath("beds") then | 			if minetest.get_modpath("beds") then | ||||||
| 				beds.on_rightclick(pos, clicker) | 				beds.on_rightclick(pos, clicker) | ||||||
| 			else return end | 			end | ||||||
|  | 			return itemstack | ||||||
| 		end | 		end | ||||||
| 	}) | 	}) | ||||||
|  |  | ||||||
| @@ -104,10 +105,11 @@ for i in ipairs(bedcolors) do | |||||||
| 		after_dig_node = function(pos) | 		after_dig_node = function(pos) | ||||||
| 			homedecor.unextend_bed(pos, color) | 			homedecor.unextend_bed(pos, color) | ||||||
| 		end, | 		end, | ||||||
| 		on_rightclick = function(pos, node, clicker) | 		on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) | ||||||
| 			if minetest.get_modpath("beds") then | 			if minetest.get_modpath("beds") then | ||||||
| 				beds.on_rightclick(pos, clicker) | 				beds.on_rightclick(pos, clicker) | ||||||
| 			else return end | 			end | ||||||
|  | 			return itemstack | ||||||
| 		end, | 		end, | ||||||
| 		drop = "homedecor:bed_"..color.."_regular" | 		drop = "homedecor:bed_"..color.."_regular" | ||||||
| 	}) | 	}) | ||||||
| @@ -137,10 +139,11 @@ for i in ipairs(bedcolors) do | |||||||
| 				inv:add_item("main", "homedecor:bed_"..color.."_regular 2") | 				inv:add_item("main", "homedecor:bed_"..color.."_regular 2") | ||||||
| 			end | 			end | ||||||
| 		end, | 		end, | ||||||
| 		on_rightclick = function(pos, node, clicker) | 		on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) | ||||||
| 			if minetest.get_modpath("beds") then | 			if minetest.get_modpath("beds") then | ||||||
| 				beds.on_rightclick(pos, clicker) | 				beds.on_rightclick(pos, clicker) | ||||||
| 			else return end | 			end | ||||||
|  | 			return itemstack | ||||||
| 		end | 		end | ||||||
| 	}) | 	}) | ||||||
|  |  | ||||||
|   | |||||||
| @@ -112,7 +112,7 @@ for c in ipairs(bookcolors) do | |||||||
| 		drop = "homedecor:book_"..color, | 		drop = "homedecor:book_"..color, | ||||||
| 		walkable = false, | 		walkable = false, | ||||||
| 		on_dig = book_dig, | 		on_dig = book_dig, | ||||||
| 		on_rightclick = function(pos, node, clicker) | 		on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) | ||||||
| 			local meta = minetest.get_meta(pos) | 			local meta = minetest.get_meta(pos) | ||||||
| 			local player_name = clicker:get_player_name() | 			local player_name = clicker:get_player_name() | ||||||
| 			local title = meta:get_string("title") or "" | 			local title = meta:get_string("title") or "" | ||||||
| @@ -136,6 +136,7 @@ for c in ipairs(bookcolors) do | |||||||
| 			end | 			end | ||||||
| 			player_current_book[player_name] = pos | 			player_current_book[player_name] = pos | ||||||
| 			minetest.show_formspec(player_name, BOOK_FORMNAME, formspec) | 			minetest.show_formspec(player_name, BOOK_FORMNAME, formspec) | ||||||
|  | 			return itemstack | ||||||
| 		end, | 		end, | ||||||
| 		on_punch = function(pos, node, puncher, pointed_thing) | 		on_punch = function(pos, node, puncher, pointed_thing) | ||||||
| 			local fdir = node.param2 | 			local fdir = node.param2 | ||||||
|   | |||||||
| @@ -252,8 +252,9 @@ for i in ipairs(sides) do | |||||||
| 			on_construct = function(pos) | 			on_construct = function(pos) | ||||||
| 				minetest.get_meta(pos):set_int("closed", 1) | 				minetest.get_meta(pos):set_int("closed", 1) | ||||||
| 			end, | 			end, | ||||||
| 			on_rightclick = function(pos, node, clicker) | 			on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) | ||||||
| 				homedecor.flip_door(pos, node, clicker, doorname, side) | 				homedecor.flip_door(pos, node, clicker, doorname, side) | ||||||
|  | 				return itemstack | ||||||
| 			end, | 			end, | ||||||
| 		    -- both left and right doors may be used for open or closed doors | 		    -- both left and right doors may be used for open or closed doors | ||||||
| 		    -- so they have to have both action_on and action_off and just | 		    -- so they have to have both action_on and action_off and just | ||||||
| @@ -385,8 +386,9 @@ for i in ipairs(gates_list) do | |||||||
| 			type = "fixed", | 			type = "fixed", | ||||||
| 			fixed = gate_models_closed[i] | 			fixed = gate_models_closed[i] | ||||||
| 		}, | 		}, | ||||||
| 		on_rightclick = function(pos, node, clicker) | 		on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) | ||||||
| 			homedecor.flip_gate(pos, node, clicker, gate, "closed") | 			homedecor.flip_gate(pos, node, clicker, gate, "closed") | ||||||
|  | 			return itemstack | ||||||
| 		end, | 		end, | ||||||
|         mesecons = { |         mesecons = { | ||||||
|             effector = { |             effector = { | ||||||
| @@ -413,8 +415,9 @@ for i in ipairs(gates_list) do | |||||||
| 		tiles[3] | 		tiles[3] | ||||||
| 	} | 	} | ||||||
|     def.drop = "homedecor:gate_"..gate.."_closed" |     def.drop = "homedecor:gate_"..gate.."_closed" | ||||||
| 	def.on_rightclick = function(pos, node, clicker) | 	def.on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) | ||||||
|         homedecor.flip_gate(pos, node, clicker, gate, "open") |         homedecor.flip_gate(pos, node, clicker, gate, "open") | ||||||
|  |         return itemstack | ||||||
| 	end | 	end | ||||||
|     def.mesecons.effector = { |     def.mesecons.effector = { | ||||||
|         action_off = function(pos,node) homedecor.flip_gate(pos,node,player,gate, "open") end |         action_off = function(pos,node) homedecor.flip_gate(pos,node,player,gate, "open") end | ||||||
| @@ -605,8 +608,9 @@ homedecor.register("door_japanese_closed", { | |||||||
| 		fixed = {-0.5, -0.5, -0.0625, 0.5, 1.5, 0}, | 		fixed = {-0.5, -0.5, -0.0625, 0.5, 1.5, 0}, | ||||||
| 	}, | 	}, | ||||||
| 	expand = { top = "placeholder" }, | 	expand = { top = "placeholder" }, | ||||||
| 	on_rightclick = function(pos, node, clicker) | 	on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) | ||||||
| 		minetest.set_node(pos, {name = "homedecor:door_japanese_open", param2 = node.param2}) | 		minetest.set_node(pos, {name = "homedecor:door_japanese_open", param2 = node.param2}) | ||||||
|  | 		return itemstack | ||||||
| 	end | 	end | ||||||
| }) | }) | ||||||
|  |  | ||||||
| @@ -628,8 +632,9 @@ homedecor.register("door_japanese_open", { | |||||||
| 		fixed = {-1.5, -0.5, -0.0625, -0.5, 1.5, 0}, | 		fixed = {-1.5, -0.5, -0.0625, -0.5, 1.5, 0}, | ||||||
| 	}, | 	}, | ||||||
| 	expand = { top = "placeholder" }, | 	expand = { top = "placeholder" }, | ||||||
| 	on_rightclick = function(pos, node, clicker) | 	on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) | ||||||
| 		minetest.set_node(pos, {name = "homedecor:door_japanese_closed", param2 = node.param2}) | 		minetest.set_node(pos, {name = "homedecor:door_japanese_closed", param2 = node.param2}) | ||||||
|  | 		return itemstack | ||||||
| 	end, | 	end, | ||||||
| 	drop = "homedecor:door_japanese_closed", | 	drop = "homedecor:door_japanese_closed", | ||||||
| }) | }) | ||||||
|   | |||||||
| @@ -84,9 +84,10 @@ for i in ipairs(chaircolors) do | |||||||
| 		collision_box = kc_cbox, | 		collision_box = kc_cbox, | ||||||
| 		groups = {snappy=2,choppy=2,oddly_breakable_by_hand=2}, | 		groups = {snappy=2,choppy=2,oddly_breakable_by_hand=2}, | ||||||
| 		sounds = default.node_sound_wood_defaults(), | 		sounds = default.node_sound_wood_defaults(), | ||||||
| 		on_rightclick = function(pos, node, clicker) | 		on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) | ||||||
| 			pos.y = pos.y+0 -- where do I put my ass ? | 			pos.y = pos.y+0 -- where do I put my ass ? | ||||||
| 			homedecor.sit(pos, node, clicker) | 			homedecor.sit(pos, node, clicker) | ||||||
|  | 			return itemstack | ||||||
| 		end | 		end | ||||||
| 	}) | 	}) | ||||||
|  |  | ||||||
|   | |||||||
| @@ -169,7 +169,7 @@ homedecor.register("toaster", { | |||||||
| 			{-0.0625, -0.5, -0.125, 0.125, -0.3125, 0.125}, -- NodeBox1 | 			{-0.0625, -0.5, -0.125, 0.125, -0.3125, 0.125}, -- NodeBox1 | ||||||
| 		}, | 		}, | ||||||
| 	}, | 	}, | ||||||
| 	on_rightclick = function(pos, node, clicker) | 	on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) | ||||||
| 		local fdir = node.param2 | 		local fdir = node.param2 | ||||||
| 		minetest.set_node(pos, { name = "homedecor:toaster_loaf", param2 = fdir }) | 		minetest.set_node(pos, { name = "homedecor:toaster_loaf", param2 = fdir }) | ||||||
| 		minetest.sound_play("toaster", { | 		minetest.sound_play("toaster", { | ||||||
| @@ -177,6 +177,7 @@ homedecor.register("toaster", { | |||||||
| 			gain = 1.0, | 			gain = 1.0, | ||||||
| 			max_hear_distance = 5 | 			max_hear_distance = 5 | ||||||
| 		}) | 		}) | ||||||
|  | 		return itemstack | ||||||
| 	end | 	end | ||||||
| }) | }) | ||||||
|  |  | ||||||
| @@ -199,9 +200,10 @@ homedecor.register("toaster_loaf", { | |||||||
| 			{0.0625, -0.3125, -0.0935, 0.0935, -0.25, 0.0935}, -- NodeBox3 | 			{0.0625, -0.3125, -0.0935, 0.0935, -0.25, 0.0935}, -- NodeBox3 | ||||||
| 		}, | 		}, | ||||||
| 	}, | 	}, | ||||||
| 	on_rightclick = function(pos, node, clicker) | 	on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) | ||||||
| 		local fdir = node.param2 | 		local fdir = node.param2 | ||||||
| 		minetest.set_node(pos, { name = "homedecor:toaster", param2 = fdir }) | 		minetest.set_node(pos, { name = "homedecor:toaster", param2 = fdir }) | ||||||
|  | 		return itemstack | ||||||
| 	end, | 	end, | ||||||
| 	drop = "homedecor:toaster" | 	drop = "homedecor:toaster" | ||||||
| }) | }) | ||||||
|   | |||||||
| @@ -117,7 +117,7 @@ homedecor.register("kitchen_faucet", { | |||||||
| 	selection_box = kf_cbox, | 	selection_box = kf_cbox, | ||||||
| 	walkable = false, | 	walkable = false, | ||||||
| 	on_rotate = screwdriver.disallow, | 	on_rotate = screwdriver.disallow, | ||||||
| 	on_rightclick = function(pos, node, clicker) | 	on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) | ||||||
| 		local below = minetest.get_node_or_nil({x=pos.x, y=pos.y-1, z=pos.z}) | 		local below = minetest.get_node_or_nil({x=pos.x, y=pos.y-1, z=pos.z}) | ||||||
| 		if below and | 		if below and | ||||||
| 		  below.name == "homedecor:sink" or | 		  below.name == "homedecor:sink" or | ||||||
| @@ -131,6 +131,7 @@ homedecor.register("kitchen_faucet", { | |||||||
| 			} | 			} | ||||||
| 			homedecor.start_particle_spawner(pos, node, particledef, "homedecor_faucet") | 			homedecor.start_particle_spawner(pos, node, particledef, "homedecor_faucet") | ||||||
| 		end | 		end | ||||||
|  | 		return itemstack | ||||||
| 	end, | 	end, | ||||||
| 	on_destruct = homedecor.stop_particle_spawner | 	on_destruct = homedecor.stop_particle_spawner | ||||||
| }) | }) | ||||||
|   | |||||||
| @@ -179,8 +179,9 @@ homedecor.register("fishtank", { | |||||||
| 	collision_box = ft_cbox, | 	collision_box = ft_cbox, | ||||||
| 	groups = {cracky=3,oddly_breakable_by_hand=3}, | 	groups = {cracky=3,oddly_breakable_by_hand=3}, | ||||||
| 	sounds = default.node_sound_glass_defaults(), | 	sounds = default.node_sound_glass_defaults(), | ||||||
| 	on_rightclick = function(pos, node, clicker) | 	on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) | ||||||
| 		minetest.set_node(pos, {name = "homedecor:fishtank_lighted", param2 = node.param2}) | 		minetest.set_node(pos, {name = "homedecor:fishtank_lighted", param2 = node.param2}) | ||||||
|  | 		return itemstack | ||||||
| 	end | 	end | ||||||
| }) | }) | ||||||
|  |  | ||||||
| @@ -201,8 +202,9 @@ homedecor.register("fishtank_lighted", { | |||||||
| 	collision_box = ft_cbox, | 	collision_box = ft_cbox, | ||||||
| 	groups = {cracky=3,oddly_breakable_by_hand=3,not_in_creative_inventory=1}, | 	groups = {cracky=3,oddly_breakable_by_hand=3,not_in_creative_inventory=1}, | ||||||
| 	sounds = default.node_sound_glass_defaults(), | 	sounds = default.node_sound_glass_defaults(), | ||||||
| 	on_rightclick = function(pos, node, clicker) | 	on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) | ||||||
| 		minetest.set_node(pos, {name = "homedecor:fishtank", param2 = node.param2}) | 		minetest.set_node(pos, {name = "homedecor:fishtank", param2 = node.param2}) | ||||||
|  | 		return itemstack | ||||||
| 	end, | 	end, | ||||||
| 	drop = "homedecor:fishtank", | 	drop = "homedecor:fishtank", | ||||||
| }) | }) | ||||||
|   | |||||||
| @@ -81,10 +81,11 @@ homedecor.register("calendar", { | |||||||
| 	legacy_wallmounted = true, | 	legacy_wallmounted = true, | ||||||
| 	sounds = default.node_sound_defaults(), | 	sounds = default.node_sound_defaults(), | ||||||
| 	infotext = "Date (right-click to update):\n" .. os.date("%Y-%m-%d"), -- ISO 8601 format | 	infotext = "Date (right-click to update):\n" .. os.date("%Y-%m-%d"), -- ISO 8601 format | ||||||
| 	on_rightclick = function(pos, node, clicker) | 	on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) | ||||||
| 		local meta = minetest.get_meta(pos) | 		local meta = minetest.get_meta(pos) | ||||||
| 		local date = os.date("%Y-%m-%d") | 		local date = os.date("%Y-%m-%d") | ||||||
| 		meta:set_string("infotext", "Date (right-click to update):\n"..date) | 		meta:set_string("infotext", "Date (right-click to update):\n"..date) | ||||||
|  | 		return itemstack | ||||||
| 	end | 	end | ||||||
| }) | }) | ||||||
|  |  | ||||||
|   | |||||||
| @@ -125,12 +125,13 @@ for c in ipairs(curtaincolors) do | |||||||
| 		paramtype2 = 'wallmounted', | 		paramtype2 = 'wallmounted', | ||||||
| 		selection_box = { type = "wallmounted" }, | 		selection_box = { type = "wallmounted" }, | ||||||
| 	-- Open the curtains | 	-- Open the curtains | ||||||
| 		on_rightclick = function(pos, node, clicker, itemstack) | 		on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) | ||||||
| 			local topnode = minetest.get_node({x=pos.x, y=pos.y+1.0, z=pos.z}) | 			local topnode = minetest.get_node({x=pos.x, y=pos.y+1.0, z=pos.z}) | ||||||
| 			if string.find(topnode.name, "homedecor:curtainrod") then | 			if string.find(topnode.name, "homedecor:curtainrod") then | ||||||
| 				local fdir = node.param2 | 				local fdir = node.param2 | ||||||
| 				minetest.set_node(pos, { name = "homedecor:curtain_open_"..color, param2 = fdir }) | 				minetest.set_node(pos, { name = "homedecor:curtain_open_"..color, param2 = fdir }) | ||||||
| 			end | 			end | ||||||
|  | 			return itemstack | ||||||
| 		end | 		end | ||||||
| 	}) | 	}) | ||||||
|  |  | ||||||
| @@ -147,12 +148,13 @@ for c in ipairs(curtaincolors) do | |||||||
| 		paramtype2 = 'wallmounted', | 		paramtype2 = 'wallmounted', | ||||||
| 		selection_box = { type = "wallmounted" }, | 		selection_box = { type = "wallmounted" }, | ||||||
| 	-- Close the curtains | 	-- Close the curtains | ||||||
| 		on_rightclick = function(pos, node, clicker, itemstack) | 		on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) | ||||||
| 			local topnode = minetest.get_node({x=pos.x, y=pos.y+1.0, z=pos.z}) | 			local topnode = minetest.get_node({x=pos.x, y=pos.y+1.0, z=pos.z}) | ||||||
| 			if string.find(topnode.name, "homedecor:curtainrod") then | 			if string.find(topnode.name, "homedecor:curtainrod") then | ||||||
| 				local fdir = node.param2 | 				local fdir = node.param2 | ||||||
| 				minetest.set_node(pos, { name = "homedecor:curtain_"..color, param2 = fdir }) | 				minetest.set_node(pos, { name = "homedecor:curtain_"..color, param2 = fdir }) | ||||||
| 			end | 			end | ||||||
|  | 			return itemstack | ||||||
| 		end | 		end | ||||||
| 	}) | 	}) | ||||||
|  |  | ||||||
|   | |||||||
| @@ -57,6 +57,7 @@ minetest.register_node("inbox:empty", { | |||||||
| 				"default:chest_locked", | 				"default:chest_locked", | ||||||
| 				inbox.get_inbox_insert_formspec(pos)) | 				inbox.get_inbox_insert_formspec(pos)) | ||||||
| 		end | 		end | ||||||
|  | 		return itemstack | ||||||
| 	end, | 	end, | ||||||
| 	can_dig = function(pos,player) | 	can_dig = function(pos,player) | ||||||
| 		local meta = minetest.get_meta(pos); | 		local meta = minetest.get_meta(pos); | ||||||
|   | |||||||
| @@ -39,9 +39,10 @@ for i in ipairs(lavalamps_list) do | |||||||
| 	    }, | 	    }, | ||||||
| 		groups = {snappy=2,cracky=3,oddly_breakable_by_hand=3}, | 		groups = {snappy=2,cracky=3,oddly_breakable_by_hand=3}, | ||||||
| 		sounds = default.node_sound_glass_defaults(), | 		sounds = default.node_sound_glass_defaults(), | ||||||
| 		on_rightclick = function(pos, node, clicker) | 		on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) | ||||||
| 	        node.name = "lavalamp:"..colour.."_off" | 	        node.name = "lavalamp:"..colour.."_off" | ||||||
| 	        minetest.set_node(pos, node) | 	        minetest.set_node(pos, node) | ||||||
|  | 			return itemstack | ||||||
| 	    end, | 	    end, | ||||||
| 	}) | 	}) | ||||||
|  |  | ||||||
| @@ -64,9 +65,10 @@ for i in ipairs(lavalamps_list) do | |||||||
| 		groups = {snappy=2,cracky=3,oddly_breakable_by_hand=3, not_in_creative_inventory=1}, | 		groups = {snappy=2,cracky=3,oddly_breakable_by_hand=3, not_in_creative_inventory=1}, | ||||||
| 		sounds = default.node_sound_glass_defaults(), | 		sounds = default.node_sound_glass_defaults(), | ||||||
| 		drop = "lavalamp:"..colour, | 		drop = "lavalamp:"..colour, | ||||||
| 		on_rightclick = function(pos, node, clicker) | 		on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) | ||||||
| 	        node.name = "lavalamp:"..colour | 	        node.name = "lavalamp:"..colour | ||||||
| 	        minetest.set_node(pos, node) | 	        minetest.set_node(pos, node) | ||||||
|  | 			return itemstack | ||||||
| 	    end, | 	    end, | ||||||
| 	}) | 	}) | ||||||
|  |  | ||||||
|   | |||||||
| @@ -24,13 +24,14 @@ for i in ipairs(lrfurn.colors) do | |||||||
| 		groups = {snappy=3}, | 		groups = {snappy=3}, | ||||||
| 		sounds = default.node_sound_wood_defaults(), | 		sounds = default.node_sound_wood_defaults(), | ||||||
| 		node_box = armchair_cbox, | 		node_box = armchair_cbox, | ||||||
| 		on_rightclick = function(pos, node, clicker) | 		on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) | ||||||
| 			if not clicker:is_player() then | 			if not clicker:is_player() then | ||||||
| 				return | 				return itemstack | ||||||
| 			end | 			end | ||||||
| 			pos.y = pos.y-0.5 | 			pos.y = pos.y-0.5 | ||||||
| 			clicker:setpos(pos) | 			clicker:setpos(pos) | ||||||
| 			clicker:set_hp(20) | 			clicker:set_hp(20) | ||||||
|  | 			return itemstack | ||||||
| 		end | 		end | ||||||
| 	}) | 	}) | ||||||
|  |  | ||||||
|   | |||||||
| @@ -46,13 +46,14 @@ for i in ipairs(lrfurn.colors) do | |||||||
| 			end | 			end | ||||||
| 			return itemstack | 			return itemstack | ||||||
| 		end, | 		end, | ||||||
| 		on_rightclick = function(pos, node, clicker) | 		on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) | ||||||
| 			if not clicker:is_player() then | 			if not clicker:is_player() then | ||||||
| 				return | 				return itemstack | ||||||
| 			end | 			end | ||||||
| 			pos.y = pos.y-0.5 | 			pos.y = pos.y-0.5 | ||||||
| 			clicker:setpos(pos) | 			clicker:setpos(pos) | ||||||
| 			clicker:set_hp(20) | 			clicker:set_hp(20) | ||||||
|  | 			return itemstack | ||||||
| 		end | 		end | ||||||
| 	}) | 	}) | ||||||
|  |  | ||||||
|   | |||||||
| @@ -48,13 +48,14 @@ for i in ipairs(lrfurn.colors) do | |||||||
| 			end | 			end | ||||||
| 			return itemstack | 			return itemstack | ||||||
| 		end, | 		end, | ||||||
| 		on_rightclick = function(pos, node, clicker) | 		on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) | ||||||
| 			if not clicker:is_player() then | 			if not clicker:is_player() then | ||||||
| 				return | 				return itemstack | ||||||
| 			end | 			end | ||||||
| 			pos.y = pos.y-0.5 | 			pos.y = pos.y-0.5 | ||||||
| 			clicker:setpos(pos) | 			clicker:setpos(pos) | ||||||
| 			clicker:set_hp(20) | 			clicker:set_hp(20) | ||||||
|  | 			return itemstack | ||||||
| 		end | 		end | ||||||
| 	}) | 	}) | ||||||
|  |  | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user