Compare commits
	
		
			9 Commits
		
	
	
		
			2019-09-15
			...
			20200603-1
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
|  | 29c8051b96 | ||
|  | 896a1935a6 | ||
|  | b862bf944a | ||
|  | d57d8e87b1 | ||
|  | 9da5a40bef | ||
|  | d35bc1e515 | ||
|  | c4f0b331c0 | ||
|  | 2f6943495a | ||
|  | 7f4bf6daf1 | 
							
								
								
									
										45
									
								
								crafting.lua
									
									
									
									
									
								
							
							
						
						| @@ -136,3 +136,48 @@ minetest.register_craft( { | ||||
| 			{ "steel:sheet_metal", "steel:sheet_metal", "steel:sheet_metal" } | ||||
| 	}, | ||||
| }) | ||||
|  | ||||
| minetest.register_craft( { | ||||
| 	output = "basic_signs:sign_wall_glass 8", | ||||
| 	recipe = { | ||||
| 			{ "default:glass", "default:glass", "default:glass" }, | ||||
| 			{ "default:glass", "default:glass", "default:glass" }, | ||||
| 			{ "",              "default:glass", "" } | ||||
| 	}, | ||||
| }) | ||||
|  | ||||
| minetest.register_craft( { | ||||
| 	output = "basic_signs:sign_wall_obsidian_glass 8", | ||||
| 	recipe = { | ||||
| 			{ "default:obsidian_glass", "default:obsidian_glass", "default:obsidian_glass" }, | ||||
| 			{ "default:obsidian_glass", "default:obsidian_glass", "default:obsidian_glass" }, | ||||
| 			{ "",                       "default:obsidian_glass", "" } | ||||
| 	}, | ||||
| }) | ||||
|  | ||||
| minetest.register_craft( { | ||||
| 	output = "basic_signs:sign_wall_glass 3", | ||||
| 	recipe = { | ||||
| 			{ "xpanes:pane_flat", "xpanes:pane_flat", "xpanes:pane_flat" }, | ||||
| 			{ "xpanes:pane_flat", "xpanes:pane_flat", "xpanes:pane_flat" }, | ||||
| 			{ "",                 "xpanes:pane_flat", "" } | ||||
| 	}, | ||||
| }) | ||||
|  | ||||
| minetest.register_craft( { | ||||
| 	output = "basic_signs:sign_wall_obsidian_glass 3", | ||||
| 	recipe = { | ||||
| 			{ "xpanes:obsidian_pane_flat", "xpanes:obsidian_pane_flat", "xpanes:obsidian_pane_flat" }, | ||||
| 			{ "xpanes:obsidian_pane_flat", "xpanes:obsidian_pane_flat", "xpanes:obsidian_pane_flat" }, | ||||
| 			{ "",                       "xpanes:obsidian_pane_flat", "" } | ||||
| 	}, | ||||
| }) | ||||
|  | ||||
| minetest.register_craft( { | ||||
| 	output = "basic_signs:sign_wall_plastic 3", | ||||
| 	recipe = { | ||||
| 			{ "basic_materials:plastic_sheet", "basic_materials:plastic_sheet", "basic_materials:plastic_sheet" }, | ||||
| 			{ "basic_materials:plastic_sheet", "basic_materials:plastic_sheet", "basic_materials:plastic_sheet" }, | ||||
| 			{ "",                              "default:steel_ingot",           "" } | ||||
| 	}, | ||||
| }) | ||||
|   | ||||
							
								
								
									
										173
									
								
								init.lua
									
									
									
									
									
								
							
							
						
						| @@ -9,73 +9,92 @@ dofile(basic_signs.path .. "/crafting.lua") | ||||
| local S, NS = dofile(basic_signs.path .. "/intllib.lua") | ||||
| basic_signs.gettext = S | ||||
|  | ||||
| function basic_signs.check_for_floor(pointed_thing) | ||||
| 	if pointed_thing.above.x == pointed_thing.under.x | ||||
| 		  and pointed_thing.above.z == pointed_thing.under.z | ||||
| 		  and pointed_thing.above.y > pointed_thing.under.y then | ||||
| 		return true | ||||
| 	end | ||||
| end | ||||
|  | ||||
| function basic_signs.determine_sign_type(pos, placer, itemstack, pointed_thing) | ||||
|  | ||||
| 	local playername = placer:get_player_name() | ||||
| 	local pt_name = minetest.get_node(pointed_thing.under).name | ||||
| 	local node = minetest.get_node(pos)  -- since we're in after-place, this will be the wall sign itself | ||||
|  | ||||
| 	if minetest.is_protected(pointed_thing.under, playername) then | ||||
| 		minetest.record_protection_violation(pointed_thing.under, playername) | ||||
| 		return itemstack | ||||
| 	end | ||||
|  | ||||
| 	local newparam2 = minetest.dir_to_facedir(placer:get_look_dir()) | ||||
|  | ||||
| 	if minetest.registered_nodes[pt_name] and | ||||
| 	   minetest.registered_nodes[pt_name].on_rightclick and | ||||
| 	   not placer:get_player_control().sneak then | ||||
| 		return minetest.registered_nodes[pt_name].on_rightclick(pos, node, placer, itemstack, pointed_thing) | ||||
| 	elseif signs_lib.check_for_pole(pos, pointed_thing) then | ||||
| 		minetest.swap_node(pos, {name = "default:sign_wall_wood_onpole",  param2 = node.param2}) | ||||
| 	elseif signs_lib.check_for_ceiling(pointed_thing) then | ||||
| 		minetest.swap_node(pos, {name = "default:sign_wall_wood_hanging", param2 = newparam2}) | ||||
| 	elseif basic_signs.check_for_floor(pointed_thing) then | ||||
| 		minetest.swap_node(pos, {name = "basic_signs:yard_sign",              param2 = newparam2}) | ||||
| 	end | ||||
| 	signs_lib.update_sign(pos) | ||||
|  | ||||
| 	if not creative.is_enabled_for(playername) then | ||||
| 		itemstack:take_item() | ||||
| 	end | ||||
| 	return itemstack | ||||
| end | ||||
|  | ||||
| local def | ||||
|  | ||||
| local wgroups = table.copy(signs_lib.standard_wood_groups) | ||||
| wgroups.not_in_creative_inventory = 1 | ||||
|  | ||||
| local sgroups = table.copy(signs_lib.standard_steel_groups) | ||||
| sgroups.not_in_creative_inventory = 1 | ||||
|  | ||||
| minetest.override_item("default:sign_wall_wood", { | ||||
| 	after_place_node = basic_signs.determine_sign_type | ||||
| }) | ||||
|  | ||||
| signs_lib.register_sign("basic_signs:sign_wall_locked", { | ||||
| 	description = S("Locked Sign"), | ||||
| 	tiles = { | ||||
| 		"basic_signs_sign_wall_locked.png", | ||||
| 		"signs_lib_sign_wall_steel_edges.png", | ||||
| 		"signs_lib_sign_wall_steel_edges.png" | ||||
| 	}, | ||||
| 	inventory_image = "basic_signs_sign_wall_locked_inv.png", | ||||
| 	locked = true, | ||||
| 	entity_info = "standard", | ||||
| 	allow_hanging = true, | ||||
| 	allow_widefont = true | ||||
| 	allow_widefont = true, | ||||
| 	allow_onpole = true, | ||||
| 	allow_onpole_horizontal = true, | ||||
| 	allow_yard = true, | ||||
| }) | ||||
|  | ||||
| signs_lib.register_sign("basic_signs:sign_wall_glass", { | ||||
| 	description = S("Glass Sign"), | ||||
| 	yard_mesh = "signs_lib_standard_sign_yard_two_sticks.obj", | ||||
| 	tiles = { | ||||
| 		{ name = "basic_signs_sign_wall_glass.png", backface_culling = true}, | ||||
| 		"basic_signs_sign_wall_glass_edges.png", | ||||
| 		"basic_signs_pole_mount_glass.png", | ||||
| 		nil, | ||||
| 		"default_steel_block.png" -- the sticks on back of the yard sign model | ||||
| 	}, | ||||
| 	inventory_image = "basic_signs_sign_wall_glass_inv.png", | ||||
| 	default_color = "c", | ||||
| 	entity_info = "standard", | ||||
| 	sounds = default.node_sound_glass_defaults(), | ||||
| 	groups = {cracky = 3, oddly_breakable_by_hand = 3}, | ||||
| 	allow_hanging = true, | ||||
| 	allow_widefont = true, | ||||
| 	allow_onpole = true, | ||||
| 	allow_onpole_horizontal = true, | ||||
| 	allow_yard = true, | ||||
| 	use_texture_alpha = true, | ||||
| }) | ||||
|  | ||||
| signs_lib.register_sign("basic_signs:sign_wall_obsidian_glass", { | ||||
| 	description = S("Obsidian Glass Sign"), | ||||
| 	yard_mesh = "signs_lib_standard_sign_yard_two_sticks.obj", | ||||
| 	tiles = { | ||||
| 		{ name = "basic_signs_sign_wall_obsidian_glass.png", backface_culling = true}, | ||||
| 		"basic_signs_sign_wall_obsidian_glass_edges.png", | ||||
| 		"basic_signs_pole_mount_obsidian_glass.png", | ||||
| 		nil, | ||||
| 		"default_steel_block.png" -- the sticks on back of the yard sign model | ||||
| 	}, | ||||
| 	inventory_image = "basic_signs_sign_wall_obsidian_glass_inv.png", | ||||
| 	default_color = "c", | ||||
| 	entity_info = "standard", | ||||
| 	sounds = default.node_sound_glass_defaults(), | ||||
| 	groups = {cracky = 3}, | ||||
| 	allow_hanging = true, | ||||
| 	allow_widefont = true, | ||||
| 	allow_onpole = true, | ||||
| 	allow_onpole_horizontal = true, | ||||
| 	allow_yard = true, | ||||
| 	use_texture_alpha = true, | ||||
| }) | ||||
|  | ||||
| minetest.register_alias("locked_sign:sign_wall_locked", "basic_signs:sign_wall_locked") | ||||
|  | ||||
| signs_lib.register_sign("basic_signs:sign_wall_plastic", { | ||||
| 	description = S("Plastic Sign"), | ||||
| 	yard_mesh = "signs_lib_standard_sign_yard_two_sticks.obj", | ||||
| 	tiles = { | ||||
| 		"basic_signs_sign_wall_plastic.png", | ||||
| 		"basic_signs_sign_wall_plastic_edges.png", | ||||
| 		"basic_signs_pole_mount_plastic.png", | ||||
| 		nil, | ||||
| 		"default_steel_block.png" -- the sticks on back of the yard sign model | ||||
| 	}, | ||||
| 	inventory_image = "basic_signs_sign_wall_plastic_inv.png", | ||||
| 	default_color = "0", | ||||
| 	entity_info = "standard", | ||||
| 	sounds = default.node_sound_leaves_defaults(), | ||||
| 	groups = {snappy = 3, flammable = 2}, | ||||
| 	allow_hanging = true, | ||||
| 	allow_widefont = true, | ||||
| 	allow_onpole = true, | ||||
| 	allow_onpole_horizontal = true, | ||||
| 	allow_yard = true, | ||||
| 	use_texture_alpha = true, | ||||
| }) | ||||
|  | ||||
| -- array : color, translated color, default text color | ||||
|  | ||||
| @@ -97,47 +116,39 @@ for i, color in ipairs(sign_colors) do | ||||
| 		description = S("Sign (@1, steel)", color[2]), | ||||
| 		paramtype2 = "facedir", | ||||
| 		selection_box = cbox, | ||||
| 		mesh = "signs_lib_standard_wall_sign_facedir.obj", | ||||
| 		mesh = "signs_lib_standard_facedir_sign_wall.obj", | ||||
| 		tiles = { | ||||
| 			"basic_signs_steel_"..color[1]..".png", | ||||
| 			"signs_lib_sign_wall_steel_edges.png", | ||||
| 			nil, | ||||
| 			nil, | ||||
| 			"default_steel_block.png" | ||||
| 		}, | ||||
| 		inventory_image = "basic_signs_steel_"..color[1].."_inv.png", | ||||
| 		groups = signs_lib.standard_steel_groups, | ||||
| 		sounds = signs_lib.standard_steel_sign_sounds, | ||||
| 		default_color = color[3], | ||||
| 		entity_info = { | ||||
| 			mesh = "signs_lib_standard_wall_sign_entity.obj", | ||||
| 			mesh = "signs_lib_standard_sign_entity_wall.obj", | ||||
| 			yaw = signs_lib.standard_yaw | ||||
| 		}, | ||||
| 		allow_hanging = true, | ||||
| 		allow_widefont = true | ||||
| 		allow_widefont = true, | ||||
| 		allow_onpole = true, | ||||
| 		allow_onpole_horizontal = true, | ||||
| 		allow_yard = true, | ||||
| 	}) | ||||
|  | ||||
| 	minetest.register_alias("basic_signs:sign_wall_steel_"..color[1].."_onpole",       "basic_signs:sign_steel_"..color[1].."_onpole") | ||||
| 	minetest.register_alias("basic_signs:sign_wall_steel_"..color[1].."_onpole_horiz", "basic_signs:sign_steel_"..color[1].."_onpole_horiz") | ||||
| 	minetest.register_alias("basic_signs:sign_wall_steel_"..color[1].."_hanging",      "basic_signs:sign_steel_"..color[1].."_hanging") | ||||
| 	minetest.register_alias("basic_signs:sign_wall_steel_"..color[1].."_yard",         "basic_signs:sign_steel_"..color[1].."_yard") | ||||
|  | ||||
| 	table.insert(signs_lib.lbm_restore_nodes, "signs:sign_wall_"..color[1]) | ||||
| 	minetest.register_alias("signs:sign_wall_"..color[1],                  "basic_signs:sign_wall_steel_"..color[1]) | ||||
|  | ||||
| 	minetest.register_alias("signs:sign_"..color[1].."_onpole",       "basic_signs:sign_steel_"..color[1].."_onpole") | ||||
| 	minetest.register_alias("signs:sign_"..color[1].."_onpole_horiz", "basic_signs:sign_steel_"..color[1].."_onpole_horiz") | ||||
| 	minetest.register_alias("signs:sign_"..color[1].."_hanging",      "basic_signs:sign_steel_"..color[1].."_hanging") | ||||
| 	minetest.register_alias("signs:sign_"..color[1].."_yard",         "basic_signs:sign_steel_"..color[1].."_yard") | ||||
| end | ||||
|  | ||||
| signs_lib.register_sign("basic_signs:yard_sign", { | ||||
| 	description = "Wooden yard sign", | ||||
| 	paramtype2 = "facedir", | ||||
| 	selection_box = signs_lib.make_selection_boxes(35, 34.5, false, 0, -1.25, -19.69, true), | ||||
| 	mesh = "basic_signs_yard_sign.obj", | ||||
| 	tiles = { | ||||
| 		"signs_lib_sign_wall_wooden.png", | ||||
| 		"signs_lib_sign_wall_wooden_edges.png", | ||||
| 		"default_wood.png" | ||||
| 	}, | ||||
| 	inventory_image = "default_sign_wood.png", | ||||
| 	entity_info = { | ||||
| 		mesh = "basic_signs_yard_sign_entity.obj", | ||||
| 		yaw = signs_lib.standard_yaw | ||||
| 	}, | ||||
| 	groups = wgroups, | ||||
| 	drop = "default:sign_wall_wood", | ||||
| 	allow_onpole = false, | ||||
| 	allow_widefont = true | ||||
| }) | ||||
|  | ||||
| table.insert(signs_lib.lbm_restore_nodes, "signs:sign_yard") | ||||
| minetest.register_alias("signs:sign_yard", "basic_signs:yard_sign") | ||||
|   | ||||
| @@ -1,85 +0,0 @@ | ||||
| # Blender v2.79 (sub 0) OBJ File: 'basic_signs wooden yard sign.blend' | ||||
| # www.blender.org | ||||
| o Cube | ||||
| v 0.437500 -0.250000 -0.000000 | ||||
| v 0.437500 -0.250000 -0.062500 | ||||
| v 0.437500 0.375000 0.000000 | ||||
| v 0.437500 0.375000 -0.062500 | ||||
| v -0.437500 -0.250000 -0.000000 | ||||
| v -0.437500 -0.250000 -0.062500 | ||||
| v -0.437500 0.375000 0.000000 | ||||
| v -0.437500 0.375000 -0.062500 | ||||
| v 0.437500 -0.250000 -0.000000 | ||||
| v 0.437500 -0.250000 -0.062500 | ||||
| v 0.437500 0.375000 0.000000 | ||||
| v 0.437500 0.375000 -0.062500 | ||||
| v -0.437500 -0.250000 -0.000000 | ||||
| v -0.437500 -0.250000 -0.062500 | ||||
| v -0.437500 0.375000 0.000000 | ||||
| v -0.437500 0.375000 -0.062500 | ||||
| v 0.062500 -0.500000 0.000000 | ||||
| v 0.062500 0.250000 0.000000 | ||||
| v 0.062500 -0.500000 0.062500 | ||||
| v 0.062500 0.250000 0.062500 | ||||
| v -0.062500 -0.500000 0.000000 | ||||
| v -0.062500 0.250000 0.000000 | ||||
| v -0.062500 -0.500000 0.062500 | ||||
| v -0.062500 0.250000 0.062500 | ||||
| vt 0.468750 0.812500 | ||||
| vt 0.031250 0.812500 | ||||
| vt 0.031250 0.187500 | ||||
| vt 0.468750 0.187500 | ||||
| vt 0.531250 0.812500 | ||||
| vt 0.968750 0.812500 | ||||
| vt 0.968750 0.187500 | ||||
| vt 0.531250 0.187500 | ||||
| vt 0.234375 0.000000 | ||||
| vt 0.234375 1.000000 | ||||
| vt 0.015625 1.000000 | ||||
| vt 0.015625 -0.000000 | ||||
| vt 0.609375 -0.000000 | ||||
| vt 0.609375 1.000000 | ||||
| vt 0.390625 1.000000 | ||||
| vt 0.390625 -0.000000 | ||||
| vt 0.765625 0.000000 | ||||
| vt 0.765625 1.000000 | ||||
| vt 0.000000 0.750000 | ||||
| vt 2.000000 0.750000 | ||||
| vt 2.000000 0.875000 | ||||
| vt 0.000000 0.875000 | ||||
| vt 0.000000 0.125000 | ||||
| vt 2.000000 0.125000 | ||||
| vt 2.000000 0.375000 | ||||
| vt 0.000000 0.375000 | ||||
| vt 2.000000 0.500000 | ||||
| vt 0.000000 0.500000 | ||||
| vt 0.812500 0.875000 | ||||
| vt 0.562500 0.875000 | ||||
| vt 0.562500 1.000000 | ||||
| vt 0.812500 1.000000 | ||||
| vt 0.125000 0.875000 | ||||
| vt 0.375000 0.875000 | ||||
| vt 0.375000 1.000000 | ||||
| vt 0.125000 1.000000 | ||||
| vn 0.0000 0.0000 -1.0000 | ||||
| vn 0.0000 -0.0000 1.0000 | ||||
| vn 0.0000 -1.0000 0.0000 | ||||
| vn 0.0000 1.0000 0.0000 | ||||
| vn 1.0000 0.0000 0.0000 | ||||
| vn -1.0000 0.0000 0.0000 | ||||
| g Cube_Cube_front-back | ||||
| s off | ||||
| f 8/1/1 4/2/1 2/3/1 6/4/1 | ||||
| f 3/5/2 7/6/2 5/7/2 1/8/2 | ||||
| g Cube_Cube_edges | ||||
| f 13/9/3 14/10/3 10/11/3 9/12/3 | ||||
| f 11/13/4 12/14/4 16/15/4 15/16/4 | ||||
| f 11/13/5 9/17/5 10/18/5 12/14/5 | ||||
| f 13/9/6 15/16/6 16/15/6 14/10/6 | ||||
| g Cube_Cube_default_wood | ||||
| f 17/19/5 18/20/5 20/21/5 19/22/5 | ||||
| f 19/23/2 20/24/2 24/25/2 23/26/2 | ||||
| f 23/26/6 24/25/6 22/27/6 21/28/6 | ||||
| f 21/28/1 22/27/1 18/20/1 17/19/1 | ||||
| f 19/29/3 23/30/3 21/31/3 17/32/3 | ||||
| f 24/33/4 20/34/4 18/35/4 22/36/4 | ||||
| @@ -1,15 +0,0 @@ | ||||
| # Blender v2.79 (sub 0) OBJ File: 'basic_signs wooden yard sign.blend' | ||||
| # www.blender.org | ||||
| o Plane | ||||
| v 0.406250 -0.218750 -0.074219 | ||||
| v -0.406250 -0.218750 -0.074219 | ||||
| v 0.406250 0.343750 -0.074219 | ||||
| v -0.406250 0.343750 -0.074219 | ||||
| vt 0.000000 0.000000 | ||||
| vt 1.000000 0.000000 | ||||
| vt 1.000000 1.000000 | ||||
| vt 0.000000 1.000000 | ||||
| vn 0.0000 -0.0000 -1.0000 | ||||
| g Plane_Plane_None | ||||
| s off | ||||
| f 1/1/1 2/2/1 4/3/1 3/4/1 | ||||
							
								
								
									
										
											BIN
										
									
								
								textures/basic_signs_pole_mount_glass.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 772 B | 
							
								
								
									
										
											BIN
										
									
								
								textures/basic_signs_pole_mount_obsidian_glass.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 672 B | 
							
								
								
									
										
											BIN
										
									
								
								textures/basic_signs_pole_mount_plastic.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 913 B | 
							
								
								
									
										
											BIN
										
									
								
								textures/basic_signs_sign_wall_glass.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 1.1 KiB | 
							
								
								
									
										
											BIN
										
									
								
								textures/basic_signs_sign_wall_glass_edges.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 178 B | 
							
								
								
									
										
											BIN
										
									
								
								textures/basic_signs_sign_wall_glass_inv.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 276 B | 
							
								
								
									
										
											BIN
										
									
								
								textures/basic_signs_sign_wall_obsidian_glass.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 592 B | 
							
								
								
									
										
											BIN
										
									
								
								textures/basic_signs_sign_wall_obsidian_glass_edges.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 156 B | 
							
								
								
									
										
											BIN
										
									
								
								textures/basic_signs_sign_wall_obsidian_glass_inv.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 305 B | 
							
								
								
									
										
											BIN
										
									
								
								textures/basic_signs_sign_wall_plastic.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 159 B | 
							
								
								
									
										
											BIN
										
									
								
								textures/basic_signs_sign_wall_plastic_edges.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 348 B | 
							
								
								
									
										
											BIN
										
									
								
								textures/basic_signs_sign_wall_plastic_inv.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 116 B |