Replacement for Minimal Development Test (PR) (#9450)
							
								
								
									
										295
									
								
								games/minimal/mods/basetools/init.lua
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,295 @@ | ||||
| -- | ||||
| -- Tool definitions | ||||
| -- | ||||
|  | ||||
| --[[ TOOLS SUMMARY: | ||||
|  | ||||
| Tool types: | ||||
|  | ||||
| * Hand: basic tool/weapon (just for convenience, not optimized for testing) | ||||
| * Pickaxe: dig cracky | ||||
| * Axe: dig choppy | ||||
| * Shovel: dig crumbly | ||||
| * Shears: dig snappy | ||||
| * Sword: deal damage | ||||
| * Dagger: deal damage, but faster | ||||
|  | ||||
| Tool materials: | ||||
|  | ||||
| * Dirt: dig nodes of rating 3, one use only | ||||
| * Wood: dig nodes of rating 3 | ||||
| * Stone: dig nodes of rating 3 or 2 | ||||
| * Steel: dig nodes of rating 3, 2 or 1 | ||||
| * Mese: dig "everything" instantly | ||||
| ]] | ||||
|  | ||||
| -- The hand | ||||
| minetest.register_item(":", { | ||||
| 	type = "none", | ||||
| 	wield_image = "wieldhand.png", | ||||
| 	wield_scale = {x=1,y=1,z=2.5}, | ||||
| 	tool_capabilities = { | ||||
| 		full_punch_interval = 1.0, | ||||
| 		max_drop_level = 0, | ||||
| 		groupcaps = { | ||||
| 			crumbly = {times={[3]=1.50}, uses=0, maxlevel=0}, | ||||
| 			snappy = {times={[3]=1.50}, uses=0, maxlevel=0}, | ||||
| 			oddly_breakable_by_hand = {times={[1]=7.00,[2]=4.00,[3]=2.00}, uses=0, maxlevel=0}, | ||||
| 		}, | ||||
| 		damage_groups = {fleshy=1}, | ||||
| 	} | ||||
| }) | ||||
|  | ||||
| -- Mese Pickaxe: special tool that digs "everything" instantly | ||||
| minetest.register_tool("basetools:pick_mese", { | ||||
| 	description = "Mese Pickaxe", | ||||
| 	inventory_image = "basetools_mesepick.png", | ||||
| 	tool_capabilities = { | ||||
| 		full_punch_interval = 1.0, | ||||
| 		max_drop_level=3, | ||||
| 		groupcaps={ | ||||
| 			cracky={times={[1]=0.0, [2]=0.0, [3]=0.0}, maxlevel=255}, | ||||
| 			crumbly={times={[1]=0.0, [2]=0.0, [3]=0.0}, maxlevel=255}, | ||||
| 			snappy={times={[1]=0.0, [2]=0.0, [3]=0.0}, maxlevel=255}, | ||||
| 			choppy={times={[1]=0.0, [2]=0.0, [3]=0.0}, maxlevel=255}, | ||||
| 			dig_immediate={times={[1]=0.0, [2]=0.0, [3]=0.0}, maxlevel=255}, | ||||
| 		}, | ||||
| 	}, | ||||
| }) | ||||
|  | ||||
|  | ||||
| -- | ||||
| -- Pickaxes: Dig cracky | ||||
| -- | ||||
|  | ||||
| -- This should break after only 1 use | ||||
| minetest.register_tool("basetools:pick_dirt", { | ||||
| 	description = "Dirt Pickaxe", | ||||
| 	inventory_image = "basetools_dirtpick.png", | ||||
| 	tool_capabilities = { | ||||
| 		max_drop_level=0, | ||||
| 		groupcaps={ | ||||
| 			cracky={times={[3]=2.00}, uses=1, maxlevel=0} | ||||
| 		}, | ||||
| 	}, | ||||
| }) | ||||
|  | ||||
| minetest.register_tool("basetools:pick_wood", { | ||||
| 	description = "Wooden Pickaxe", | ||||
| 	inventory_image = "basetools_woodpick.png", | ||||
| 	tool_capabilities = { | ||||
| 		max_drop_level=0, | ||||
| 		groupcaps={ | ||||
| 			cracky={times={[3]=2.00}, uses=30, maxlevel=0} | ||||
| 		}, | ||||
| 	}, | ||||
| }) | ||||
| minetest.register_tool("basetools:pick_stone", { | ||||
| 	description = "Stone Pickaxe", | ||||
| 	inventory_image = "basetools_stonepick.png", | ||||
| 	tool_capabilities = { | ||||
| 		max_drop_level=0, | ||||
| 		groupcaps={ | ||||
| 			cracky={times={[2]=1.20, [3]=0.80}, uses=60, maxlevel=0} | ||||
| 		}, | ||||
| 	}, | ||||
| }) | ||||
| minetest.register_tool("basetools:pick_steel", { | ||||
| 	description = "Steel Pickaxe", | ||||
| 	inventory_image = "basetools_steelpick.png", | ||||
| 	tool_capabilities = { | ||||
| 		max_drop_level=1, | ||||
| 		groupcaps={ | ||||
| 			cracky={times={[1]=4.00, [2]=1.60, [3]=1.00}, uses=90, maxlevel=0} | ||||
| 		}, | ||||
| 	}, | ||||
| }) | ||||
| minetest.register_tool("basetools:pick_steel_l1", { | ||||
| 	description = "Steel Pickaxe Level 1", | ||||
| 	inventory_image = "basetools_steelpick_l1.png", | ||||
| 	tool_capabilities = { | ||||
| 		max_drop_level=1, | ||||
| 		groupcaps={ | ||||
| 			cracky={times={[1]=4.00, [2]=1.60, [3]=1.00}, uses=90, maxlevel=1} | ||||
| 		}, | ||||
| 	}, | ||||
| }) | ||||
| minetest.register_tool("basetools:pick_steel_l2", { | ||||
| 	description = "Steel Pickaxe Level 2", | ||||
| 	inventory_image = "basetools_steelpick_l2.png", | ||||
| 	tool_capabilities = { | ||||
| 		max_drop_level=1, | ||||
| 		groupcaps={ | ||||
| 			cracky={times={[1]=4.00, [2]=1.60, [3]=1.00}, uses=90, maxlevel=2} | ||||
| 		}, | ||||
| 	}, | ||||
| }) | ||||
|  | ||||
| -- | ||||
| -- Shovels (dig crumbly) | ||||
| -- | ||||
|  | ||||
| minetest.register_tool("basetools:shovel_wood", { | ||||
| 	description = "Wooden Shovel", | ||||
| 	inventory_image = "basetools_woodshovel.png", | ||||
| 	tool_capabilities = { | ||||
| 		max_drop_level=0, | ||||
| 		groupcaps={ | ||||
| 			crumbly={times={[3]=0.50}, uses=30, maxlevel=0} | ||||
| 		}, | ||||
| 	}, | ||||
| }) | ||||
| minetest.register_tool("basetools:shovel_stone", { | ||||
| 	description = "Stone Shovel", | ||||
| 	inventory_image = "basetools_stoneshovel.png", | ||||
| 	tool_capabilities = { | ||||
| 		max_drop_level=0, | ||||
| 		groupcaps={ | ||||
| 			crumbly={times={[2]=0.50, [3]=0.30}, uses=60, maxlevel=0} | ||||
| 		}, | ||||
| 	}, | ||||
| }) | ||||
| minetest.register_tool("basetools:shovel_steel", { | ||||
| 	description = "Steel Shovel", | ||||
| 	inventory_image = "basetools_steelshovel.png", | ||||
| 	tool_capabilities = { | ||||
| 		max_drop_level=1, | ||||
| 		groupcaps={ | ||||
| 			crumbly={times={[1]=1.00, [2]=0.70, [3]=0.60}, uses=90, maxlevel=0} | ||||
| 		}, | ||||
| 	}, | ||||
| }) | ||||
|  | ||||
| -- | ||||
| -- Axes (dig choppy) | ||||
| -- | ||||
|  | ||||
| minetest.register_tool("basetools:axe_wood", { | ||||
| 	description = "Wooden Axe", | ||||
| 	inventory_image = "basetools_woodaxe.png", | ||||
| 	tool_capabilities = { | ||||
| 		max_drop_level=0, | ||||
| 		groupcaps={ | ||||
| 			choppy={times={[3]=0.80}, uses=30, maxlevel=0}, | ||||
| 		}, | ||||
| 	}, | ||||
| }) | ||||
| minetest.register_tool("basetools:axe_stone", { | ||||
| 	description = "Stone Axe", | ||||
| 	inventory_image = "basetools_stoneaxe.png", | ||||
| 	tool_capabilities = { | ||||
| 		max_drop_level=0, | ||||
| 		groupcaps={ | ||||
| 			choppy={times={[2]=1.00, [3]=0.60}, uses=60, maxlevel=0}, | ||||
| 		}, | ||||
| 	}, | ||||
| }) | ||||
| minetest.register_tool("basetools:axe_steel", { | ||||
| 	description = "Steel Axe", | ||||
| 	inventory_image = "basetools_steelaxe.png", | ||||
| 	tool_capabilities = { | ||||
| 		max_drop_level=1, | ||||
| 		groupcaps={ | ||||
| 			choppy={times={[1]=2.00, [2]=0.80, [3]=0.40}, uses=90, maxlevel=0}, | ||||
| 		}, | ||||
| 	}, | ||||
| }) | ||||
|  | ||||
| -- | ||||
| -- Shears (dig snappy) | ||||
| -- | ||||
|  | ||||
| minetest.register_tool("basetools:shears_wood", { | ||||
| 	description = "Wooden Shears", | ||||
| 	inventory_image = "basetools_woodshears.png", | ||||
| 	tool_capabilities = { | ||||
| 		max_drop_level=0, | ||||
| 		groupcaps={ | ||||
| 			snappy={times={[3]=1.00}, uses=30, maxlevel=0}, | ||||
| 		}, | ||||
| 	}, | ||||
| }) | ||||
| minetest.register_tool("basetools:shears_stone", { | ||||
| 	description = "Stone Shears", | ||||
| 	inventory_image = "basetools_stoneshears.png", | ||||
| 	tool_capabilities = { | ||||
| 		max_drop_level=0, | ||||
| 		groupcaps={ | ||||
| 			snappy={times={[2]=1.00, [3]=0.50}, uses=60, maxlevel=0}, | ||||
| 		}, | ||||
| 	}, | ||||
| }) | ||||
| minetest.register_tool("basetools:shears_steel", { | ||||
| 	description = "Steel Shears", | ||||
| 	inventory_image = "basetools_steelshears.png", | ||||
| 	tool_capabilities = { | ||||
| 		max_drop_level=1, | ||||
| 		groupcaps={ | ||||
| 			snappy={times={[1]=1.00, [2]=0.50, [3]=0.25}, uses=90, maxlevel=0}, | ||||
| 		}, | ||||
| 	}, | ||||
| }) | ||||
|  | ||||
| -- | ||||
| -- Swords (deal damage) | ||||
| -- | ||||
|  | ||||
| minetest.register_tool("basetools:sword_wood", { | ||||
| 	description = "Wooden Sword", | ||||
| 	inventory_image = "basetools_woodsword.png", | ||||
| 	tool_capabilities = { | ||||
| 		full_punch_interval = 1.0, | ||||
| 		damage_groups = {fleshy=2}, | ||||
| 	} | ||||
| }) | ||||
| minetest.register_tool("basetools:sword_stone", { | ||||
| 	description = "Stone Sword", | ||||
| 	inventory_image = "basetools_stonesword.png", | ||||
| 	tool_capabilities = { | ||||
| 		full_punch_interval = 1.0, | ||||
| 		max_drop_level=0, | ||||
| 		damage_groups = {fleshy=4}, | ||||
| 	} | ||||
| }) | ||||
| minetest.register_tool("basetools:sword_steel", { | ||||
| 	description = "Steel Sword", | ||||
| 	inventory_image = "basetools_steelsword.png", | ||||
| 	tool_capabilities = { | ||||
| 		full_punch_interval = 1.0, | ||||
| 		max_drop_level=1, | ||||
| 		damage_groups = {fleshy=6}, | ||||
| 	} | ||||
| }) | ||||
|  | ||||
| -- Fire/Ice sword: Deal damage to non-fleshy damage groups | ||||
| minetest.register_tool("basetools:sword_fire", { | ||||
| 	description = "Fire Sword", | ||||
| 	inventory_image = "basetools_firesword.png", | ||||
| 	tool_capabilities = { | ||||
| 		full_punch_interval = 1.0, | ||||
| 		max_drop_level=0, | ||||
| 		damage_groups = {icy=6}, | ||||
| 	} | ||||
| }) | ||||
| minetest.register_tool("basetools:sword_ice", { | ||||
| 	description = "Ice Sword", | ||||
| 	inventory_image = "basetools_icesword.png", | ||||
| 	tool_capabilities = { | ||||
| 		full_punch_interval = 1.0, | ||||
| 		max_drop_level=0, | ||||
| 		damage_groups = {firy=6}, | ||||
| 	} | ||||
| }) | ||||
|  | ||||
| -- | ||||
| -- Dagger: Low damage, fast punch interval | ||||
| -- | ||||
| minetest.register_tool("basetools:dagger_steel", { | ||||
| 	description = "Steel Dagger", | ||||
| 	inventory_image = "basetools_steeldagger.png", | ||||
| 	tool_capabilities = { | ||||
| 		full_punch_interval = 0.5, | ||||
| 		max_drop_level=0, | ||||
| 		damage_groups = {fleshy=2}, | ||||
| 	} | ||||
| }) | ||||
							
								
								
									
										2
									
								
								games/minimal/mods/basetools/mod.conf
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,2 @@ | ||||
| name = basetools | ||||
| description = Contains basic digging tools | ||||
							
								
								
									
										
											BIN
										
									
								
								games/minimal/mods/basetools/textures/basetools_dirtpick.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 307 B | 
							
								
								
									
										
											BIN
										
									
								
								games/minimal/mods/basetools/textures/basetools_firesword.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 190 B | 
							
								
								
									
										
											BIN
										
									
								
								games/minimal/mods/basetools/textures/basetools_icesword.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 190 B | 
							
								
								
									
										
											BIN
										
									
								
								games/minimal/mods/basetools/textures/basetools_mesepick.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 155 B | 
							
								
								
									
										
											BIN
										
									
								
								games/minimal/mods/basetools/textures/basetools_steelaxe.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 131 B | 
							
								
								
									
										
											BIN
										
									
								
								games/minimal/mods/basetools/textures/basetools_steeldagger.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 154 B | 
							
								
								
									
										
											BIN
										
									
								
								games/minimal/mods/basetools/textures/basetools_steelpick.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 159 B | 
							
								
								
									
										
											BIN
										
									
								
								games/minimal/mods/basetools/textures/basetools_steelpick_l1.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 190 B | 
							
								
								
									
										
											BIN
										
									
								
								games/minimal/mods/basetools/textures/basetools_steelpick_l2.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 177 B | 
							
								
								
									
										
											BIN
										
									
								
								games/minimal/mods/basetools/textures/basetools_steelshears.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 208 B | 
							
								
								
									
										
											BIN
										
									
								
								games/minimal/mods/basetools/textures/basetools_steelshovel.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 140 B | 
							
								
								
									
										
											BIN
										
									
								
								games/minimal/mods/basetools/textures/basetools_steelsword.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 163 B | 
							
								
								
									
										
											BIN
										
									
								
								games/minimal/mods/basetools/textures/basetools_stoneaxe.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 130 B | 
							
								
								
									
										
											BIN
										
									
								
								games/minimal/mods/basetools/textures/basetools_stonepick.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 155 B | 
							
								
								
									
										
											BIN
										
									
								
								games/minimal/mods/basetools/textures/basetools_stoneshears.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 224 B | 
							
								
								
									
										
											BIN
										
									
								
								games/minimal/mods/basetools/textures/basetools_stoneshovel.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 134 B | 
							
								
								
									
										
											BIN
										
									
								
								games/minimal/mods/basetools/textures/basetools_stonesword.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 159 B | 
							
								
								
									
										
											BIN
										
									
								
								games/minimal/mods/basetools/textures/basetools_woodaxe.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 121 B | 
							
								
								
									
										
											BIN
										
									
								
								games/minimal/mods/basetools/textures/basetools_woodpick.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 149 B | 
							
								
								
									
										
											BIN
										
									
								
								games/minimal/mods/basetools/textures/basetools_woodshears.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 212 B | 
							
								
								
									
										
											BIN
										
									
								
								games/minimal/mods/basetools/textures/basetools_woodshovel.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 133 B | 
							
								
								
									
										
											BIN
										
									
								
								games/minimal/mods/basetools/textures/basetools_woodsword.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 139 B |