An absolute ton of changes, add new tool types and rename old ones, armor and ores are still WIP

This commit is contained in:
KaadmY 2017-05-17 08:57:14 -07:00
parent 6693590126
commit 823261023a
90 changed files with 1208 additions and 953 deletions

View File

@ -307,9 +307,9 @@ achievements.register_achievement(
"hardened_miner",
{
title = "Hardened Miner",
description = "Craft 3 carbon steel pickaxes.",
description = "Craft 3 Carbon Steel pickaxes.",
times = 3,
craftitem = "default:pick_carbonsteel",
craftitem = "default:pick_carbon_steel",
})
-- Dirt/soil

View File

@ -12,7 +12,7 @@ armor.materials = {
{"wood", "group:planks", 15, "Wooden"},
{"steel", "default:ingot_steel", 30, "Steel"},
{"chainmail", "armor:chainmail_sheet", 45, "Chainmail"},
{"carbonsteel", "default:ingot_carbonsteel", 60, "Carbonsteel"},
{"carbon_steel", "default:ingot_carbon_steel", 60, "Carbon Steel"},
}
-- Usable slots
@ -242,24 +242,24 @@ crafting.register_craft(
-- Armor pieces
for mat_index, _ in ipairs(armor.materials) do
local def = armor.materials[mat_index]
local mat = def[1]
for mat_index, matdef in ipairs(armor.materials) do
local mat = matdef[1]
local armor_def = math.floor(def[3] / #armor.slots)
local armor_def = math.floor(matdef[3] / #armor.slots)
-- print("Material " .. mat .. ": " .. armor_def)
for _, slot in ipairs(armor.slots) do
local slot_pretty = slot:gsub(
local prettystring = slot:gsub(
"(%a)([%w_']*)",
function(first, rest)
return first:upper()..rest:lower()
end)
minetest.register_craftitem(
"armor:" .. slot .. "_" .. mat,
{
description = def[4] .. " " .. slot_pretty,
description = matdef[4] .. " " .. prettystring,
inventory_image = "armor_" .. slot .. "_" .. mat .. "_inventory.png",
wield_image = "armor_" .. slot .. "_" .. mat .. "_inventory.png",
@ -278,7 +278,7 @@ for mat_index, _ in ipairs(armor.materials) do
{
output = "armor:helmet_" .. mat,
items = {
def[2] .. " 5",
matdef[2] .. " 5",
}
})
@ -286,7 +286,7 @@ for mat_index, _ in ipairs(armor.materials) do
{
output = "armor:chestplate_" .. mat,
items = {
def[2] .. " 8",
matdef[2] .. " 8",
}
})
@ -294,7 +294,7 @@ for mat_index, _ in ipairs(armor.materials) do
{
output = "armor:boots_" .. mat,
items = {
def[2] .. " 6",
matdef[2] .. " 6",
}
})
end

View File

Before

Width:  |  Height:  |  Size: 266 B

After

Width:  |  Height:  |  Size: 266 B

View File

Before

Width:  |  Height:  |  Size: 421 B

After

Width:  |  Height:  |  Size: 421 B

View File

Before

Width:  |  Height:  |  Size: 363 B

After

Width:  |  Height:  |  Size: 363 B

View File

Before

Width:  |  Height:  |  Size: 413 B

After

Width:  |  Height:  |  Size: 413 B

View File

Before

Width:  |  Height:  |  Size: 301 B

After

Width:  |  Height:  |  Size: 301 B

View File

Before

Width:  |  Height:  |  Size: 441 B

After

Width:  |  Height:  |  Size: 441 B

View File

@ -44,6 +44,12 @@ function crafting.register_craft(def)
"Tried to register an existing craft " .. itemkey .. ", allowing")
end
if not minetest.registered_items[itemstack:get_name()] then
minetest.log("warning",
"Trying to register craft " .. itemkey
.. " that has an unknown output item")
end
local craftdef = {
output = itemstack,
items = def.items or crafting.default_craftdef.items,

View File

@ -3,173 +3,56 @@
-- Recipes
--
-- Pickaxes
-- Autogenerated tools
local tool_types = {
pick = {
wood = "group:planks 3",
stone = "group:stone 3",
wrought_iron = "default:ingot_wrought_iron 3",
steel = "default:ingot_steel 3",
carbon_steel = "default:ingot_carbon_steel 3",
bronze = "default:ingot_bronze 3",
},
shovel = {
wood = "group:planks 3",
stone = "group:stone 3",
wrought_iron = "default:ingot_wrought_iron 3",
steel = "default:ingot_steel 3",
carbon_steel = "default:ingot_carbon_steel 3",
bronze = "default:ingot_bronze 3",
},
axe= {
wood = "group:planks 3",
stone = "group:stone 3",
wrought_iron = "default:ingot_wrought_iron 3",
steel = "default:ingot_steel 3",
carbon_steel = "default:ingot_carbon_steel 3",
bronze = "default:ingot_bronze 3",
},
spear = {
wood = "group:planks 2",
stone = "group:stone 2",
wrought_iron = "default:ingot_wrought_iron 2",
steel = "default:ingot_steel 2",
carbon_steel = "default:ingot_carbon_steel 2",
bronze = "default:ingot_bronze 2",
},
}
for tool_name, tool_type in pairs(tool_types) do
for material_name, material_item in pairs(tool_type) do
crafting.register_craft(
{
output = "default:pick_wood",
output = "default:" .. tool_name .. "_" .. material_name,
items = {
"group:planks 2",
"default:fiber 4",
"default:stick 3",
}
})
crafting.register_craft(
{
output = "default:pick_stone",
items = {
"group:stone 2",
"default:fiber 4",
"default:stick 3",
}
})
crafting.register_craft(
{
output = "default:pick_steel",
items = {
"default:ingot_steel 2",
"default:fiber 4",
"default:stick 3",
}
})
crafting.register_craft(
{
output = "default:pick_carbonsteel",
items = {
"default:ingot_carbonsteel 2",
"default:fiber 4",
"default:stick 3",
}
})
-- Shovels
crafting.register_craft(
{
output = "default:shovel_wood",
items = {
"group:planks 2",
"default:fiber 4",
"default:stick 3",
}
})
crafting.register_craft(
{
output = "default:shovel_stone",
items = {
"group:stone 2",
"default:fiber 4",
"default:stick 3",
}
})
crafting.register_craft(
{
output = "default:shovel_steel",
items = {
"default:ingot_steel 2",
"default:fiber 4",
"default:stick 3",
}
})
crafting.register_craft(
{
output = "default:shovel_carbonsteel",
items = {
"default:ingot_carbonsteel 2",
"default:fiber 4",
"default:stick 3",
}
})
-- Axes
crafting.register_craft(
{
output = "default:axe_wood",
items = {
"group:planks 2",
"default:fiber 4",
"default:stick 3",
}
})
crafting.register_craft(
{
output = "default:axe_stone",
items = {
"group:stone 2",
"default:fiber 4",
"default:stick 3",
}
})
crafting.register_craft(
{
output = "default:axe_steel",
items = {
"default:ingot_steel 2",
"default:fiber 4",
"default:stick 3",
}
})
crafting.register_craft(
{
output = "default:axe_carbonsteel",
items = {
"default:ingot_carbonsteel 2",
"default:fiber 4",
"default:stick 3",
}
})
-- Spears
crafting.register_craft(
{
output = "default:spear_wood",
items = {
"group:planks 2",
"default:fiber 4",
"default:stick 3",
}
})
crafting.register_craft(
{
output = "default:spear_stone",
items = {
"group:stone 2",
"default:fiber 4",
"default:stick 3",
}
})
crafting.register_craft(
{
output = "default:spear_steel",
items = {
"default:ingot_steel 2",
"default:fiber 4",
"default:stick 3",
}
})
crafting.register_craft(
{
output = "default:spear_carbonsteel",
items = {
"default:ingot_carbonsteel 2",
material_item,
"default:fiber 4",
"default:stick 3",
}
})
end
end
-- Broadsword
@ -183,17 +66,49 @@ crafting.register_craft(
}
})
-- Items
-- Shears
crafting.register_craft(
{
output = "default:dust_carbonsteel",
output = "default:shears",
items = {
"default:lump_coal 2",
"default:lump_iron 3",
"default:ingot_wrought_iron 2",
"default:fiber 2",
"default:stick 2",
}
})
-- Minerals
crafting.register_craft(
{
output = "default:ingot_steel 2",
items = {
"default:lump_coal",
"default:ingot_steel 4",
}
})
crafting.register_craft(
{
output = "default:ingot_carbon_steel 2",
items = {
"default:lump_coal 2",
"default:ingot_wrought_iron 7",
}
})
crafting.register_craft(
{
output = "default:lump_bronze 2",
items = {
"default:lump_tin 2",
"default:lump_copper 5",
}
})
-- Items
crafting.register_craft(
{
output = "default:rope 2",
@ -293,6 +208,14 @@ crafting.register_craft(
-- Block nodes
crafting.register_craft(
{
output = "default:block_wrought_iron",
items = {
"default:ingot_wrought_iron 9",
}
})
crafting.register_craft(
{
output = "default:block_steel",
@ -301,6 +224,22 @@ crafting.register_craft(
}
})
crafting.register_craft(
{
output = "default:block_carbon_steel",
items = {
"default:ingot_carbon_steel 9",
}
})
crafting.register_craft(
{
output = "default:block_bronze",
items = {
"default:ingot_bronze 9",
}
})
crafting.register_craft(
{
output = "default:block_coal",
@ -333,7 +272,7 @@ crafting.register_craft(
output = "default:heated_dirt_path",
items = {
"default:dirt_path",
"default:ingot_steel",
"default:ingot_wrought_iron",
}
})

View File

@ -1,8 +1,10 @@
--
-- Cooking
-- Crafting/creation
--
-- Cooking
minetest.register_craft(
{
type = "cooking",
@ -31,26 +33,10 @@ minetest.register_craft(
{
type = "cooking",
output = "default:lump_coal",
recipe = "default:tree",
recipe = "group:tree",
cooktime = 4,
})
minetest.register_craft(
{
type = "cooking",
output = "default:lump_coal",
recipe = "default:tree_oak",
cooktime = 5,
})
minetest.register_craft(
{
type = "cooking",
output = "default:lump_coal",
recipe = "default:tree_birch",
cooktime = 5,
})
minetest.register_craft(
{
type = "cooking",
@ -62,7 +48,7 @@ minetest.register_craft(
minetest.register_craft(
{
type = "cooking",
output = "default:ingot_steel",
output = "default:ingot_wrought_iron",
recipe = "default:lump_iron",
cooktime = 3,
})
@ -70,22 +56,12 @@ minetest.register_craft(
minetest.register_craft(
{
type = "cooking",
output = "default:ingot_carbonsteel",
recipe = "default:dust_carbonsteel",
cooktime = 5,
output = "default:ingot_bronze",
recipe = "default:lump_bronze",
cooktime = 6,
})
minetest.register_craft(
{
type = "cooking",
output = "default:lump_sugar",
recipe = "default:papyrus",
cooktime = 7,
})
--
-- Fuels
--
minetest.register_craft(
{
@ -115,13 +91,6 @@ minetest.register_craft(
burntime = 2,
})
minetest.register_craft(
{
type = "fuel",
recipe = "default:apple",
burntime = 3,
})
minetest.register_craft(
{
type = "fuel",
@ -136,34 +105,6 @@ minetest.register_craft(
burntime = 5,
})
minetest.register_craft(
{
type = "fuel",
recipe = "group:planks",
burntime = 5,
})
minetest.register_craft(
{
type = "fuel",
recipe = "default:torch",
burntime = 5,
})
minetest.register_craft(
{
type = "fuel",
recipe = "group:sapling",
burntime = 7,
})
minetest.register_craft(
{
type = "fuel",
recipe = "default:fertilizer",
burntime = 8,
})
minetest.register_craft(
{
type = "fuel",
@ -171,11 +112,25 @@ minetest.register_craft(
burntime = 9,
})
minetest.register_craft(
{
type = "fuel",
recipe = "default:torch",
burntime = 7,
})
minetest.register_craft(
{
type = "fuel",
recipe = "group:sapling",
burntime = 4,
})
minetest.register_craft(
{
type = "fuel",
recipe = "default:sign",
burntime = 10,
burntime = 6,
})
minetest.register_craft(
@ -188,43 +143,15 @@ minetest.register_craft(
minetest.register_craft(
{
type = "fuel",
recipe = "default:fence",
burntime = 10,
})
minetest.register_craft(
{
type = "fuel",
recipe = "default:fence_oak",
burntime = 11,
})
minetest.register_craft(
{
type = "fuel",
recipe = "default:fence_birch",
burntime = 11,
})
minetest.register_craft(
{
type = "fuel",
recipe = "default:planks_oak",
burntime = 12,
})
minetest.register_craft(
{
type = "fuel",
recipe = "default:planks_birch",
burntime = 12,
recipe = "group:fence",
burntime = 8,
})
minetest.register_craft(
{
type = "fuel",
recipe = "default:frame",
burntime = 12,
burntime = 13,
})
minetest.register_craft(
@ -238,35 +165,35 @@ minetest.register_craft(
{
type = "fuel",
recipe = "group:tree",
burntime = 20,
burntime = 22,
})
minetest.register_craft(
{
type = "fuel",
recipe = "default:chest",
burntime = 24,
burntime = 25,
})
minetest.register_craft(
{
type = "fuel",
recipe = "default:bookshelf",
burntime = 30,
burntime = 32,
})
minetest.register_craft(
{
type = "fuel",
recipe = "default:lump_coal",
burntime = 30,
burntime = 20,
})
minetest.register_craft(
{
type = "fuel",
recipe = "default:block_coal",
burntime = 270,
burntime = 180,
})
default.log("crafting", "loaded")

View File

@ -1,7 +1,10 @@
--
-- Crafting items
--
-- Organic items
minetest.register_craftitem(
"default:fiber",
{
@ -25,12 +28,19 @@ minetest.register_craftitem(
})
minetest.register_craftitem(
"default:book",
"default:pearl",
{
description = "Book",
inventory_image = "default_book.png",
wield_scale = {x=1,y=1,z=2},
stack_max = 1,
description = "Pearl",
inventory_image = "default_pearl.png",
})
-- Mineral lumps
minetest.register_craftitem(
"default:lump_sulfur",
{
description = "Sulfur Lump",
inventory_image = "default_lump_sulfur.png",
})
minetest.register_craftitem(
@ -48,10 +58,40 @@ minetest.register_craftitem(
})
minetest.register_craftitem(
"default:dust_carbonsteel",
"default:lump_graphite",
{
description = "Carbon Steel Dust",
inventory_image = "default_dust_carbonsteel.png",
description = "Graphite Lump",
inventory_image = "default_lump_graphite.png",
})
minetest.register_craftitem(
"default:lump_tin",
{
description = "Tin Lump",
inventory_image = "default_lump_tin.png",
})
minetest.register_craftitem(
"default:lump_copper",
{
description = "Copper Lump",
inventory_image = "default_lump_copper.png",
})
minetest.register_craftitem(
"default:lump_bronze",
{
description = "Bronze Lump",
inventory_image = "default_lump_bronze.png",
})
-- Ingots
minetest.register_craftitem(
"default:ingot_wrought_iron",
{
description = "Wrought Iron Ingot",
inventory_image = "default_ingot_wrought_iron.png",
})
minetest.register_craftitem(
@ -62,26 +102,20 @@ minetest.register_craftitem(
})
minetest.register_craftitem(
"default:ingot_carbonsteel",
"default:ingot_carbon_steel",
{
description = "Carbon Steel Ingot",
inventory_image = "default_ingot_carbonsteel.png",
inventory_image = "default_ingot_carbon_steel.png",
})
minetest.register_craftitem(
"default:lump_sugar",
"default:ingot_bronze",
{
description = "Sugar Lump",
inventory_image = "default_lump_sugar.png",
on_use = minetest.item_eat({hp = 1, sat = 10})
description = "Bronze Ingot",
inventory_image = "default_ingot_bronze.png",
})
minetest.register_craftitem(
"default:pearl",
{
description = "Pearl",
inventory_image = "default_pearl.png",
})
-- Crafted items
minetest.register_craftitem(
"default:flint",
@ -90,6 +124,15 @@ minetest.register_craftitem(
inventory_image = "default_flint.png",
})
minetest.register_craftitem(
"default:book",
{
description = "Book",
inventory_image = "default_book.png",
wield_scale = {x=1,y=1,z=2},
stack_max = 1,
})
minetest.register_craftitem(
"default:bucket_water",
{

View File

@ -1,9 +1,11 @@
-- minetest/default/mapgen.lua
--
-- Aliases for map generator outputs(Might not be needed with v7, but JIC)
-- Mapgen
--
-- Aliases for map generator outputs
-- Might not be needed with v7, but just in case
minetest.register_alias("mapgen_stone", "default:stone")
minetest.register_alias("mapgen_tree", "default:tree")
minetest.register_alias("mapgen_leaves", "default:leaves")
@ -25,9 +27,7 @@ minetest.register_alias("mapgen_mese", "default:block_steel")
minetest.register_alias("mapgen_stair_cobble", "default:reinforced_frame")
minetest.register_alias("mapgen_lava_source", "default:water_source")
--
-- Biome setup
--
minetest.clear_registered_biomes()
@ -290,11 +290,7 @@ minetest.register_biome(
humidity_point = 30,
})
--
-- Decorations
--
-- Trees
-- Tree decorations
minetest.register_decoration(
{
@ -304,8 +300,13 @@ minetest.register_decoration(
fill_ratio = 0.004,
biomes = {"Forest"},
flags = "place_center_x, place_center_z",
replacements = {["default:leaves"] = "default:leaves_birch", ["default:tree"] = "default:tree_birch", ["default:apple"] = "air"},
schematic = minetest.get_modpath("default").."/schematics/default_squaretree.mts",
replacements = {
["default:leaves"] = "default:leaves_birch",
["default:tree"] = "default:tree_birch",
["default:apple"] = "air"
},
schematic = minetest.get_modpath("default")
.. "/schematics/default_squaretree.mts",
y_min = -32000,
y_max = 32000,
})
@ -318,7 +319,8 @@ minetest.register_decoration(
fill_ratio = 0.007,
biomes = {"Orchard"},
flags = "place_center_x, place_center_z",
schematic = minetest.get_modpath("default").."/schematics/default_tree.mts",
schematic = minetest.get_modpath("default")
.. "/schematics/default_tree.mts",
y_min = 10,
y_max = 32000,
})
@ -331,8 +333,13 @@ minetest.register_decoration(
fill_ratio = 0.009,
biomes = {"Forest", "Deep Forest"},
flags = "place_center_x, place_center_z",
replacements = {["default:leaves"] = "default:leaves_oak", ["default:tree"] = "default:tree_oak", ["default:apple"] = "air"},
schematic = minetest.get_modpath("default").."/schematics/default_tree.mts",
replacements = {
["default:leaves"] = "default:leaves_oak",
["default:tree"] = "default:tree_oak",
["default:apple"] = "air",
},
schematic = minetest.get_modpath("default")
.. "/schematics/default_tree.mts",
y_min = -32000,
y_max = 32000,
})
@ -345,7 +352,8 @@ minetest.register_decoration(
fill_ratio = 0.008,
biomes = {"Forest"},
flags = "place_center_x, place_center_z",
schematic = minetest.get_modpath("default").."/schematics/default_megatree.mts",
schematic = minetest.get_modpath("default")
.. "/schematics/default_megatree.mts",
y_min = -32000,
y_max = 32000,
})
@ -358,7 +366,8 @@ minetest.register_decoration(
fill_ratio = 0.023,
biomes = {"Deep Forest"},
flags = "place_center_x, place_center_z",
schematic = minetest.get_modpath("default").."/schematics/default_gigatree.mts",
schematic = minetest.get_modpath("default")
.. "/schematics/default_gigatree.mts",
y_min = -32000,
y_max = 32000,
})
@ -371,8 +380,11 @@ minetest.register_decoration(
fill_ratio = 0.004,
biomes = {"Wilderness"},
flags = "place_center_x, place_center_z",
replacements = {["default:apple"] = "air"},
schematic = minetest.get_modpath("default").."/schematics/default_tree.mts",
replacements = {
["default:apple"] = "air",
},
schematic = minetest.get_modpath("default")
.. "/schematics/default_tree.mts",
y_min = -32000,
y_max = 32000,
})
@ -385,8 +397,13 @@ minetest.register_decoration(
fill_ratio = 0.004,
biomes = {"Wilderness"},
flags = "place_center_x, place_center_z",
replacements = {["default:leaves"] = "default:leaves_oak", ["default:tree"] = "default:tree_oak", ["default:apple"] = "air"},
schematic = minetest.get_modpath("default").."/schematics/default_tree.mts",
replacements = {
["default:leaves"] = "default:leaves_oak",
["default:tree"] = "default:tree_oak",
["default:apple"] = "air",
},
schematic = minetest.get_modpath("default")
.. "/schematics/default_tree.mts",
y_min = -32000,
y_max = 32000,
})
@ -399,12 +416,13 @@ minetest.register_decoration(
fill_ratio = 0.004,
biomes = {"Grove"},
flags = "place_center_x, place_center_z",
schematic = minetest.get_modpath("default").."/schematics/default_talltree.mts",
schematic = minetest.get_modpath("default")
.. "/schematics/default_talltree.mts",
y_min = 0,
y_max = 32000,
})
-- Papyrus
-- Papyrus decorations
minetest.register_decoration(
{
@ -421,7 +439,7 @@ minetest.register_decoration(
y_min = 0,
})
-- Flowers
-- Flower decorations
minetest.register_decoration(
{
@ -435,7 +453,7 @@ minetest.register_decoration(
y_max = 32000,
})
-- Grasses
-- Grass decorations
minetest.register_decoration(
{
@ -533,7 +551,7 @@ minetest.register_decoration(
y_max = 32000,
})
-- Thistle
-- Thistle decorations
minetest.register_decoration(
{
@ -548,7 +566,7 @@ minetest.register_decoration(
y_max = 32000,
})
-- Ferns
-- Fern decorations
minetest.register_decoration(
{
@ -562,47 +580,7 @@ minetest.register_decoration(
y_max = 32000,
})
-- Farming
if minetest.get_modpath("farming") ~= nil then
minetest.register_decoration(
{
deco_type = "simple",
place_on = "default:dirt_with_grass",
sidelen = 16,
fill_ratio = 0.008,
biomes = {"Wilderness"},
decoration = {"farming:wheat_4"},
y_min = 0,
y_max = 32000,
})
minetest.register_decoration(
{
deco_type = "simple",
place_on = "default:dirt_with_grass",
sidelen = 16,
fill_ratio = 0.006,
biomes = {"Grassland", "Savanna"},
decoration = {"farming:wheat_4"},
y_min = 0,
y_max = 32000,
})
minetest.register_decoration(
{
deco_type = "simple",
place_on = "default:sand",
sidelen = 16,
fill_ratio = 0.004,
biomes = {"Desert"},
decoration = {"farming:cotton_4"},
y_min = 0,
y_max = 32000,
})
end
-- Cactus
-- Cactus decorations
minetest.register_decoration(
{
@ -618,7 +596,7 @@ minetest.register_decoration(
rotation = "random",
})
-- Shrubs
-- Shrub decorations
minetest.register_decoration(
{
@ -664,7 +642,7 @@ minetest.register_decoration(
rotation = "0",
})
-- Rocks
-- Rock decorations
minetest.register_decoration(
{
@ -674,7 +652,8 @@ minetest.register_decoration(
fill_ratio = 0.006,
biomes = {"Wasteland"},
flags = "place_center_x, place_center_z",
schematic = minetest.get_modpath("default").."/schematics/default_small_rock.mts",
schematic = minetest.get_modpath("default")
.. "/schematics/default_small_rock.mts",
y_min = -32000,
y_max = 32000,
rotation = "random",
@ -688,13 +667,14 @@ minetest.register_decoration(
fill_ratio = 0.004,
biomes = {"Wasteland"},
flags = "place_center_x, place_center_z",
schematic = minetest.get_modpath("default").."/schematics/default_large_rock.mts",
schematic = minetest.get_modpath("default")
.. "/schematics/default_large_rock.mts",
y_min = -32000,
y_max = 32000,
rotation = "random",
})
-- Clams
-- Clam decorations
minetest.register_decoration(
{
@ -709,11 +689,7 @@ minetest.register_decoration(
})
--
-- Ore generation
--
-- Coal
-- Coal ore
minetest.register_ore(
{
@ -751,7 +727,7 @@ minetest.register_ore(
y_max = -64,
})
-- Iron
-- Iron ore
minetest.register_ore(
{
@ -777,20 +753,6 @@ minetest.register_ore(
y_max = -32,
})
-- Steel blocks
minetest.register_ore(
{
ore_type = "blob",
ore = "default:block_steel",
wherein = "default:stone",
clust_scarcity = 12*12*12,
clust_num_ores = 10,
clust_size = 10,
y_min = -31000,
y_max = -128,
})
-- Water
minetest.register_ore( -- Springs
@ -799,7 +761,7 @@ minetest.register_ore( -- Springs
ore = "default:water_source",
wherein = "default:dirt_with_grass",
biomes = {"Grassland"},
clust_scarcity = 18*18*18,
clust_scarcity = 26*26*26,
clust_num_ores = 1,
clust_size = 1,
y_min = 20,
@ -812,11 +774,11 @@ minetest.register_ore( -- Pools
ore = "default:water_source",
wherein = "default:dirt_with_grass",
biomes = {"Wilderness"},
clust_scarcity = 30*30*30,
clust_scarcity = 32*32*32,
clust_num_ores = 20,
clust_size = 6,
y_min = 10,
y_max = 40,
y_max = 30,
})
minetest.register_ore( -- Swamp
@ -825,7 +787,7 @@ minetest.register_ore( -- Swamp
ore = "default:swamp_water_source",
wherein = {"default:dirt_with_swamp_grass", "default:swamp_dirt"},
biomes = {"Swamp"},
clust_scarcity = 10*10*10,
clust_scarcity = 14*14*14,
clust_num_ores = 10,
clust_size = 4,
y_min = -31000,
@ -838,7 +800,7 @@ minetest.register_ore( -- Marsh
ore = "default:swamp_water_source",
wherein = {"default:dirt_with_grass", "default:dirt"},
biomes = {"Marsh"},
clust_scarcity = 6*6*6,
clust_scarcity = 8*8*8,
clust_num_ores = 10,
clust_size = 6,
y_min = -31000,

View File

@ -1,6 +1,31 @@
--
-- Node definitions
--wate
--
-- Ores
minetest.register_node(
"default:stone_with_coal",
{
description = "Stone with Coal",
tiles = {"default_stone.png^default_mineral_coal.png"},
groups = {cracky = 2, stone = 1, not_in_craftingguide = 1},
drop = "default:lump_coal",
sounds = default.node_sound_stone_defaults(),
})
minetest.register_node(
"default:stone_with_iron",
{
description = "Stone with Iron",
tiles = {"default_stone.png^default_mineral_iron.png"},
groups = {cracky = 2, stone = 1, not_in_craftingguide = 1},
drop = "default:lump_iron",
sounds = default.node_sound_stone_defaults(),
})
-- Stonelike
minetest.register_node(
"default:stone",
@ -31,34 +56,7 @@ minetest.register_node(
sounds = default.node_sound_stone_defaults(),
})
minetest.register_node(
"default:stone_with_coal",
{
description = "Stone with Coal",
tiles ={"default_stone.png^default_mineral_coal.png"},
groups = {cracky = 1, stone = 1, not_in_craftingguide = 1},
drop = "default:lump_coal",
sounds = default.node_sound_stone_defaults(),
})
minetest.register_node(
"default:stone_with_iron",
{
description = "Stone with Iron",
tiles ={"default_stone.png^default_mineral_iron.png"},
groups = {cracky=1, stone=1, not_in_craftingguide = 1},
drop = "default:lump_iron",
sounds = default.node_sound_stone_defaults(),
})
minetest.register_node(
"default:block_steel",
{
description = "Steel Block",
tiles ={"default_block_steel.png"},
groups = {cracky=1},
sounds = default.node_sound_stone_defaults(),
})
-- Material blocks
minetest.register_node(
"default:block_coal",
@ -69,6 +67,44 @@ minetest.register_node(
sounds = default.node_sound_wood_defaults(),
})
minetest.register_node(
"default:block_wrought_iron",
{
description = "Wrought Iron Block",
tiles = {"default_block_wrought_iron.png"},
groups = {cracky = 2},
sounds = default.node_sound_stone_defaults(),
})
minetest.register_node(
"default:block_steel",
{
description = "Steel Block",
tiles = {"default_block_steel.png"},
groups = {cracky = 2},
sounds = default.node_sound_stone_defaults(),
})
minetest.register_node(
"default:block_carbon_steel",
{
description = "Carbon Steel Block",
tiles = {"default_block_carbon_steel.png"},
groups = {cracky = 1},
sounds = default.node_sound_stone_defaults(),
})
minetest.register_node(
"default:block_bronze",
{
description = "Bronze Block",
tiles = {"default_block_bronze.png"},
groups = {cracky = 1},
sounds = default.node_sound_stone_defaults(),
})
-- Soil
minetest.register_node(
"default:dirt",
{
@ -103,7 +139,11 @@ minetest.register_node(
"default:fertilized_dirt",
{
description = "Fertilized Dirt",
tiles ={"default_dirt.png^default_fertilizer.png", "default_dirt.png", "default_dirt.png"},
tiles = {
"default_dirt.png^default_fertilizer.png",
"default_dirt.png",
"default_dirt.png"
},
groups = {
crumbly = 3,
soil = 1,
@ -120,8 +160,13 @@ minetest.register_node(
"default:dirt_with_dry_grass",
{
description = "Dirt with Dry Grass",
tiles ={"default_dry_grass.png", "default_dirt.png", "default_dirt.png^default_dry_grass_side.png"},
groups = {crumbly=3, soil=1, plantable_sandy = 1, fall_damage_add_percent=-5, not_in_craftingguide = 1},
tiles = {
"default_dry_grass.png",
"default_dirt.png",
"default_dirt.png^default_dry_grass_side.png"
},
groups = {crumbly = 3, soil = 1, plantable_sandy = 1,
fall_damage_add_percent = -5, not_in_craftingguide = 1},
drop = {
max_items = 3,
items = {
@ -141,8 +186,13 @@ minetest.register_node(
"default:dirt_with_swamp_grass",
{
description = "Dirt with Swamp Grass",
tiles ={"default_swamp_grass.png", "default_swamp_dirt.png", "default_swamp_dirt.png^default_swamp_grass_side.png"},
groups = {crumbly=3, soil=1, plantable_soil = 1, fall_damage_add_percent=-5, not_in_craftingguide = 1},
tiles = {
"default_swamp_grass.png",
"default_swamp_dirt.png",
"default_swamp_dirt.png^default_swamp_grass_side.png"
},
groups = {crumbly = 3, soil = 1, plantable_soil = 1,
fall_damage_add_percent = -5, not_in_craftingguide = 1},
drop = {
max_items = 3,
items = {
@ -162,8 +212,13 @@ minetest.register_node(
"default:dirt_with_grass",
{
description = "Dirt with Grass",
tiles ={"default_grass.png", "default_dirt.png", "default_dirt.png^default_grass_side.png"},
groups = {crumbly=3, soil=1, plantable_soil = 1, fall_damage_add_percent=-5, not_in_craftingguide = 1},
tiles = {
"default_grass.png",
"default_dirt.png",
"default_dirt.png^default_grass_side.png"
},
groups = {crumbly = 3, soil = 1, plantable_soil = 1,
fall_damage_add_percent = -5, not_in_craftingguide = 1},
drop = {
max_items = 3,
items = {
@ -709,7 +764,7 @@ minetest.register_node(
type = "fixed",
fixed = {-0.4, -0.5, -0.4, 0.4, 0.75, 0.4},
},
groups = {snappy = 2, choppy = 2, oddly_breakable_by_hand = 2},
groups = {snappy = 2, choppy = 2, oddly_breakable_by_hand = 2, fence = 1},
is_ground_content = false,
sounds = default.node_sound_wood_defaults(),
after_dig_node = function(pos, node, metadata, digger)
@ -730,7 +785,7 @@ minetest.register_node(
type = "fixed",
fixed = {-0.4, -0.5, -0.4, 0.4, 0.75, 0.4},
},
groups = {snappy = 1, choppy = 1, oddly_breakable_by_hand = 1},
groups = {snappy = 1, choppy = 1, oddly_breakable_by_hand = 1, fence = 1},
is_ground_content = false,
sounds = default.node_sound_wood_defaults(),
after_dig_node = function(pos, node, metadata, digger)
@ -751,7 +806,7 @@ minetest.register_node(
type = "fixed",
fixed = {-0.4, -0.5, -0.4, 0.4, 0.75, 0.4},
},
groups = {snappy = 1, choppy = 1, oddly_breakable_by_hand = 1},
groups = {snappy = 1, choppy = 1, oddly_breakable_by_hand = 1, fence = 1},
is_ground_content = false,
sounds = default.node_sound_wood_defaults(),
after_dig_node = function(pos, node, metadata, digger)

Binary file not shown.

After

Width:  |  Height:  |  Size: 476 B

Binary file not shown.

View File

Before

Width:  |  Height:  |  Size: 472 B

After

Width:  |  Height:  |  Size: 472 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 459 B

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 289 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 285 B

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 209 B

After

Width:  |  Height:  |  Size: 265 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 266 B

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 452 B

After

Width:  |  Height:  |  Size: 465 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 428 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 469 B

Binary file not shown.

View File

Before

Width:  |  Height:  |  Size: 459 B

After

Width:  |  Height:  |  Size: 459 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 451 B

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 498 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 496 B

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 480 B

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 480 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 482 B

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 484 B

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 499 B

Binary file not shown.

View File

Before

Width:  |  Height:  |  Size: 500 B

After

Width:  |  Height:  |  Size: 500 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 489 B

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 461 B

After

Width:  |  Height:  |  Size: 455 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 505 B

Binary file not shown.

View File

Before

Width:  |  Height:  |  Size: 498 B

After

Width:  |  Height:  |  Size: 498 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 489 B

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 511 B

Binary file not shown.

View File

Before

Width:  |  Height:  |  Size: 507 B

After

Width:  |  Height:  |  Size: 507 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 501 B

Binary file not shown.

View File

@ -1,5 +1,6 @@
--
-- Tool definition
-- Tool definitions
--
local creative_digtime=0.5
@ -53,6 +54,28 @@ if minetest.setting_getbool("creative_mode") == true then
[1] = creative_digtime,
},
},
wrought_iron = {
crumbly = {
[3] = creative_digtime,
[2] = creative_digtime,
[1] = creative_digtime,
},
choppy = {
[3] = creative_digtime,
[2] = creative_digtime,
[1] = creative_digtime,
},
cracky = {
[3] = creative_digtime,
[2] = creative_digtime,
[1] = creative_digtime,
},
snappy = {
[3] = creative_digtime,
[2] = creative_digtime,
[1] = creative_digtime,
},
},
steel = {
crumbly = {
[3] = creative_digtime,
@ -75,7 +98,29 @@ if minetest.setting_getbool("creative_mode") == true then
[1] = creative_digtime,
},
},
carbonsteel = {
carbon_steel = {
crumbly = {
[3] = creative_digtime,
[2] = creative_digtime,
[1] = creative_digtime,
},
choppy = {
[3] = creative_digtime,
[2] = creative_digtime,
[1] = creative_digtime,
},
cracky = {
[3] = creative_digtime,
[2] = creative_digtime,
[1] = creative_digtime,
},
snappy = {
[3] = creative_digtime,
[2] = creative_digtime,
[1] = creative_digtime,
},
},
bronze = {
crumbly = {
[3] = creative_digtime,
[2] = creative_digtime,
@ -158,7 +203,7 @@ else
[2] = 0.9,
},
},
steel = {
wrought_iron = {
crumbly = {
[3] = 1.0,
[2] = 1.4,
@ -180,7 +225,51 @@ else
[1] = 1.3,
},
},
carbonsteel = {
steel = {
crumbly = {
[3] = 0.7,
[2] = 2.1,
[1] = 3.5,
},
choppy = {
[3] = 1.7,
[2] = 2.1,
[1] = 3.6,
},
cracky = {
[3] = 2.3,
[2] = 2.7,
[1] = 3.8,
},
snappy = {
[3] = 0.2,
[2] = 0.7,
[1] = 1.2,
},
},
carbon_steel = {
crumbly = {
[3] = 1.0,
[2] = 1.4,
[1] = 2.5,
},
choppy = {
[3] = 2.0,
[2] = 2.4,
[1] = 3.9,
},
cracky = {
[3] = 2.8,
[2] = 3.2,
[1] = 4.5,
},
snappy = {
[3] = 0.3,
[2] = 0.8,
[1] = 1.3,
},
},
bronze = {
crumbly = {
[3] = 0.7,
[2] = 2.1,
@ -249,7 +338,6 @@ minetest.register_tool(
}
})
-- Pickaxes
minetest.register_tool(
@ -280,6 +368,20 @@ minetest.register_tool(
},
})
minetest.register_tool(
"default:pick_wrought_iron",
{
description = "Wrought Iron Pickaxe",
inventory_image = "default_pick_wrought_iron.png",
tool_capabilities = {
max_drop_level=1,
groupcaps={
cracky={times=tool_levels.wrought_iron.cracky, uses=25, maxlevel=2}
},
damage_groups = {fleshy = 4}
},
})
minetest.register_tool(
"default:pick_steel",
{
@ -288,21 +390,35 @@ minetest.register_tool(
tool_capabilities = {
max_drop_level=1,
groupcaps={
cracky={times=tool_levels.steel.cracky, uses=25, maxlevel=2}
cracky={times=tool_levels.steel.cracky, uses=35, maxlevel=2}
},
damage_groups = {fleshy = 4}
damage_groups = {fleshy = 6}
},
})
minetest.register_tool(
"default:pick_carbonsteel",
"default:pick_carbon_steel",
{
description = "Carbon Steel Pickaxe",
inventory_image = "default_pick_carbonsteel.png",
inventory_image = "default_pick_carbon_steel.png",
tool_capabilities = {
max_drop_level=1,
groupcaps={
cracky={times=tool_levels.carbonsteel.cracky, uses=35, maxlevel=2}
cracky={times=tool_levels.carbon_steel.cracky, uses=35, maxlevel=2}
},
damage_groups = {fleshy = 6}
},
})
minetest.register_tool(
"default:pick_bronze",
{
description = "Bronze Pickaxe",
inventory_image = "default_pick_bronze.png",
tool_capabilities = {
max_drop_level=1,
groupcaps={
cracky={times=tool_levels.bronze.cracky, uses=35, maxlevel=2}
},
damage_groups = {fleshy = 6}
},
@ -338,6 +454,20 @@ minetest.register_tool(
},
})
minetest.register_tool(
"default:shovel_wrought_iron",
{
description = "Wrought Iron Shovel",
inventory_image = "default_shovel_wrought_iron.png",
tool_capabilities = {
max_drop_level=1,
groupcaps={
crumbly={times=tool_levels.wrought_iron.crumbly, uses=25, maxlevel=2}
},
damage_groups = {fleshy = 4}
},
})
minetest.register_tool(
"default:shovel_steel",
{
@ -346,21 +476,35 @@ minetest.register_tool(
tool_capabilities = {
max_drop_level=1,
groupcaps={
crumbly={times=tool_levels.steel.crumbly, uses=25, maxlevel=2}
crumbly={times=tool_levels.steel.crumbly, uses=35, maxlevel=2}
},
damage_groups = {fleshy = 4}
damage_groups = {fleshy = 6}
},
})
minetest.register_tool(
"default:shovel_carbonsteel",
"default:shovel_carbon_steel",
{
description = "Carbon Steel Shovel",
inventory_image = "default_shovel_carbonsteel.png",
inventory_image = "default_shovel_carbon_steel.png",
tool_capabilities = {
max_drop_level=1,
groupcaps={
crumbly={times=tool_levels.carbonsteel.crumbly, uses=35, maxlevel=2}
crumbly={times=tool_levels.carbon_steel.crumbly, uses=35, maxlevel=2}
},
damage_groups = {fleshy = 6}
},
})
minetest.register_tool(
"default:shovel_bronze",
{
description = "Bronze Shovel",
inventory_image = "default_shovel_bronze.png",
tool_capabilities = {
max_drop_level=1,
groupcaps={
crumbly={times=tool_levels.bronze.crumbly, uses=35, maxlevel=2}
},
damage_groups = {fleshy = 6}
},
@ -399,14 +543,14 @@ minetest.register_tool(
})
minetest.register_tool(
"default:axe_steel",
"default:axe_wrought_iron",
{
description = "Steel Axe",
inventory_image = "default_axe_steel.png",
description = "Wrought Iron Axe",
inventory_image = "default_axe_wrought_iron.png",
tool_capabilities = {
max_drop_level=1,
groupcaps={
choppy={times=tool_levels.steel.choppy, uses=25, maxlevel=2},
choppy={times=tool_levels.wrought_iron.choppy, uses=25, maxlevel=2},
fleshy={times={[2]=1.00, [3]=0.20}, uses=40, maxlevel=1}
},
damage_groups = {fleshy = 5}
@ -414,14 +558,44 @@ minetest.register_tool(
})
minetest.register_tool(
"default:axe_carbonsteel",
"default:axe_steel",
{
description = "Carbon Steel Axe",
inventory_image = "default_axe_carbonsteel.png",
description = "Steel Axe",
inventory_image = "default_axe_steel.png",
tool_capabilities = {
max_drop_level=1,
groupcaps={
choppy={times=tool_levels.carbonsteel.choppy, uses=35, maxlevel=2},
choppy={times=tool_levels.steel.choppy, uses=35, maxlevel=2},
fleshy={times={[2]=1.00, [3]=0.20}, uses=40, maxlevel=1}
},
damage_groups = {fleshy = 7}
},
})
minetest.register_tool(
"default:axe_carbon_steel",
{
description = "Carbon Steel Axe",
inventory_image = "default_axe_carbon_steel.png",
tool_capabilities = {
max_drop_level=1,
groupcaps={
choppy={times=tool_levels.carbon_steel.choppy, uses=45, maxlevel=2},
fleshy={times={[2]=1.00, [3]=0.20}, uses=40, maxlevel=1}
},
damage_groups = {fleshy = 7}
},
})
minetest.register_tool(
"default:axe_bronze",
{
description = "Bronze Axe",
inventory_image = "default_axe_bronze.png",
tool_capabilities = {
max_drop_level=1,
groupcaps={
choppy={times=tool_levels.bronze.choppy, uses=25, maxlevel=2},
fleshy={times={[2]=1.00, [3]=0.20}, uses=40, maxlevel=1}
},
damage_groups = {fleshy = 7}
@ -462,6 +636,22 @@ minetest.register_tool(
}
})
minetest.register_tool(
"default:spear_wrought_iron",
{
description = "Wrought Iron Spear",
inventory_image = "default_spear_wrought_iron.png",
tool_capabilities = {
full_punch_interval = 1.0,
max_drop_level=1,
groupcaps={
fleshy={times={[1]=2.00, [2]=0.80, [3]=0.40}, uses=10, maxlevel=2},
snappy={times=tool_levels.wrought_iron.snappy, uses=40, maxlevel=1},
},
damage_groups = {fleshy = 6}
}
})
minetest.register_tool(
"default:spear_steel",
{
@ -471,24 +661,40 @@ minetest.register_tool(
full_punch_interval = 1.0,
max_drop_level=1,
groupcaps={
fleshy={times={[1]=2.00, [2]=0.80, [3]=0.40}, uses=10, maxlevel=2},
snappy={times=tool_levels.steel.snappy, uses=40, maxlevel=1},
fleshy={times={[1]=2.00, [2]=0.80, [3]=0.40}, uses=25, maxlevel=2},
snappy={times=tool_levels.steel.snappy, uses=55, maxlevel=1},
},
damage_groups = {fleshy = 6}
damage_groups = {fleshy = 10}
}
})
minetest.register_tool(
"default:spear_carbonsteel",
"default:spear_carbon_steel",
{
description = "Carbon Steel Spear",
inventory_image = "default_spear_carbonsteel.png",
inventory_image = "default_spear_carbon_steel.png",
tool_capabilities = {
full_punch_interval = 1.0,
max_drop_level=1,
groupcaps={
fleshy={times={[1]=2.00, [2]=0.80, [3]=0.40}, uses=25, maxlevel=2},
snappy={times=tool_levels.carbonsteel.snappy, uses=55, maxlevel=1},
snappy={times=tool_levels.carbon_steel.snappy, uses=55, maxlevel=1},
},
damage_groups = {fleshy = 10}
}
})
minetest.register_tool(
"default:spear_bronze",
{
description = "Wrought Iron Spear",
inventory_image = "default_spear_bronze.png",
tool_capabilities = {
full_punch_interval = 1.0,
max_drop_level=1,
groupcaps={
fleshy={times={[1]=2.00, [2]=0.80, [3]=0.40}, uses=25, maxlevel=2},
snappy={times=tool_levels.bronze.snappy, uses=55, maxlevel=1},
},
damage_groups = {fleshy = 10}
}
@ -514,7 +720,7 @@ minetest.register_tool(
minetest.register_tool(
"default:shears",
{
description = "Steel Shears (Right-click to shear animals)",
description = "Wrought Iron Shears",
inventory_image = "default_shears.png",
})
@ -532,10 +738,24 @@ minetest.register_tool(
local nodename = node.name
if nodename == "default:torch_weak" then
minetest.set_node(pos, {name = "default:torch", param = node.param, param2 = node.param2})
minetest.set_node(
pos,
{
name = "default:torch",
param = node.param,
param2 = node.param2
})
itemstack:add_wear(800)
elseif nodename == "default:torch_dead" then
minetest.set_node(pos, {name = "default:torch_weak", param = node.param, param2 = node.param2})
minetest.set_node(
pos,
{
name = "default:torch_weak",
param = node.param,
param2 = node.param2
})
itemstack:add_wear(800)
elseif nodename == "tnt:tnt" then
local y = minetest.registered_nodes["tnt:tnt"]

View File

@ -0,0 +1,42 @@
--
-- Achievements
--
achievements.register_achievement(
"farmer",
{
title = "Farmer",
description = "Plant 20 wheat seeds",
times = 20,
placenode = "farming:wheat_1",
})
achievements.register_achievement(
"master_farmer",
{
title = "Master Farmer",
description = "Plant 200 wheat seeds",
times = 200,
placenode = "farming:wheat_1",
})
achievements.register_achievement(
"cotton_farmer",
{
title = "Cotton Farmer",
description = "Plant 10 cotton seeds",
times = 10,
placenode = "farming:cotton_1",
})
achievements.register_achievement(
"master_cotton_farmer",
{
title = "Master Cotton Farmer",
description = "Plant 100 cotton seeds",
times = 100,
placenode = "farming:cotton_1",
})
default.log("achievements", "loaded")

View File

@ -69,5 +69,6 @@ end
dofile(minetest.get_modpath("farming").."/nodes.lua")
dofile(minetest.get_modpath("farming").."/plants.lua")
dofile(minetest.get_modpath("farming").."/craft.lua")
dofile(minetest.get_modpath("farming").."/achievements.lua")
default.log("mod:farming", "loaded")

42
mods/farming/mapgen.lua Normal file
View File

@ -0,0 +1,42 @@
--
-- Mapgen
--
minetest.register_decoration(
{
deco_type = "simple",
place_on = "default:dirt_with_grass",
sidelen = 16,
fill_ratio = 0.008,
biomes = {"Wilderness"},
decoration = {"farming:wheat_4"},
y_min = 0,
y_max = 32000,
})
minetest.register_decoration(
{
deco_type = "simple",
place_on = "default:dirt_with_grass",
sidelen = 16,
fill_ratio = 0.006,
biomes = {"Grassland", "Savanna"},
decoration = {"farming:wheat_4"},
y_min = 0,
y_max = 32000,
})
minetest.register_decoration(
{
deco_type = "simple",
place_on = "default:sand",
sidelen = 16,
fill_ratio = 0.004,
biomes = {"Desert"},
decoration = {"farming:cotton_4"},
y_min = 0,
y_max = 32000,
})
default.log("mapgen", "loaded")

View File

@ -1,3 +1,8 @@
--
-- Nodes
--
minetest.register_node(
"farming:wheat_1",
{
@ -196,6 +201,8 @@ minetest.register_node(
type = "fixed",
fixed = {-0.5, -0.5, -0.5, 0.5, -0.5+(4/16), 0.5}
},
groups = {dig_immediate=2, not_in_craftingguide = 1},
sounds=default.node_sound_leaves_defaults(),
on_punch = function(pos, node, player)
local name = player:get_wielded_item():get_name()
@ -222,20 +229,22 @@ minetest.register_node(
if drop ~= nil then
local x = math.random(1, 5)
if math.random(1, 2) == 1 then
x = -x
end
local z = math.random(1, 5)
if math.random(1, 2) == 1 then
z = -z
end
drop:setvelocity({x = 1 / x, y = drop:getvelocity().y, z = 1 / z})
end
end
end
end,
groups = {dig_immediate=2, not_in_craftingguide = 1},
sounds=default.node_sound_leaves_defaults()
})
minetest.register_node(
@ -244,7 +253,8 @@ minetest.register_node(
description = "Cotton Bale",
tiles ={"farming_cotton_bale.png"},
is_ground_content = false,
groups = {snappy=2, oddly_breakable_by_hand=3, fall_damage_add_percent=-15, fuzzy = 1},
groups = {snappy = 2, oddly_breakable_by_hand = 3,
fall_damage_add_percent = -15, fuzzy = 1},
sounds = default.node_sound_leaves_defaults(),
})

View File

@ -1,3 +1,8 @@
--
-- Plants
--
farming.register_plant(
"wheat",
{
@ -20,42 +25,4 @@ farming.register_plant(
light_max = 15,
})
-- Achievements
achievements.register_achievement(
"farmer",
{
title = "Farmer",
description = "Plant 20 wheat seeds",
times = 20,
placenode = "farming:wheat_1",
})
achievements.register_achievement(
"master_farmer",
{
title = "Master Farmer",
description = "Plant 200 wheat seeds",
times = 200,
placenode = "farming:wheat_1",
})
achievements.register_achievement(
"cotton_farmer",
{
title = "Cotton Farmer",
description = "Plant 10 cotton seeds",
times = 10,
placenode = "farming:cotton_1",
})
achievements.register_achievement(
"master_cotton_farmer",
{
title = "Master Cotton Farmer",
description = "Plant 100 cotton seeds",
times = 100,
placenode = "farming:cotton_1",
})
default.log("plants", "loaded")

View File

@ -13,104 +13,104 @@ gold.trade_names = {}
if minetest.get_modpath("mobs") ~= nil then
gold.trades["farmer"] = {
-- plants
{"gold:gold", "", "farming:wheat_1 6"},
{"gold:gold 3", "", "farming:cotton_1 4"},
{"gold:gold 5", "", "farming:cotton_1 8"},
{"gold:gold", "", "default:papyrus 4"},
{"gold:gold 4", "", "default:cactus 2"},
{"gold:ingot_gold", "", "farming:wheat_1 6"},
{"gold:ingot_gold 3", "", "farming:cotton_1 4"},
{"gold:ingot_gold 5", "", "farming:cotton_1 8"},
{"gold:ingot_gold", "", "default:papyrus 4"},
{"gold:ingot_gold 4", "", "default:cactus 2"},
-- crafts
{"gold:gold 7", "", "farming:cotton_bale 3"},
{"gold:ingot_gold 7", "", "farming:cotton_bale 3"},
-- materials
{"default:planks 3", "farming:cotton_bale 3", "bed:bed"},
-- tool repair
{"gold:gold 6", "default:shovel_stone", "default:shovel_stone"},
{"gold:gold 8", "default:shovel_steel", "default:shovel_steel"},
{"gold:gold 10", "default:shovel_carbonsteel", "default:shovel_carbonsteel"},
{"gold:ingot_gold 6", "default:shovel_stone", "default:shovel_stone"},
{"gold:ingot_gold 8", "default:shovel_steel", "default:shovel_steel"},
{"gold:ingot_gold 10", "default:shovel_carbonsteel", "default:shovel_carbonsteel"},
}
gold.trades["tavernkeeper"] = {
-- materials
{"gold:gold 2", "", "default:planks 12"},
{"gold:gold 2", "", "default:planks_birch 8"},
{"gold:ingot_gold 2", "", "default:planks 12"},
{"gold:ingot_gold 2", "", "default:planks_birch 8"},
-- useables
{"gold:gold 9", "", "bed:bed"},
{"gold:gold 5", "", "default:chest"},
{"gold:ingot_gold 9", "", "bed:bed"},
{"gold:ingot_gold 5", "", "default:chest"},
{"default:planks_birch 3", "mobs:wool 3", "bed:bed"},
-- filling buckets
{"gold:gold", "default:bucket", "default:bucket_water"},
{"gold:ingot_gold", "default:bucket", "default:bucket_water"},
}
gold.trades["blacksmith"] = {
-- smeltables
{"gold:gold", "", "default:lump_coal"},
{"gold:gold 3", "", "default:lump_iron"},
{"gold:gold 5", "", "default:dust_carbonsteel"},
{"gold:ingot_gold", "", "default:lump_coal"},
{"gold:ingot_gold 3", "", "default:lump_iron"},
{"gold:ingot_gold 5", "", "default:dust_carbonsteel"},
-- materials
{"gold:gold 2", "", "default:cobble 10"},
{"gold:gold 3", "", "default:stone 10"},
{"gold:gold 5", "", "default:reinforced_cobble 10"},
{"gold:gold 25", "", "default:block_steel"},
{"gold:gold 6", "", "default:glass 5"},
{"gold:ingot_gold 2", "", "default:cobble 10"},
{"gold:ingot_gold 3", "", "default:stone 10"},
{"gold:ingot_gold 5", "", "default:reinforced_cobble 10"},
{"gold:ingot_gold 25", "", "default:block_steel"},
{"gold:ingot_gold 6", "", "default:glass 5"},
-- usebles
{"gold:gold 7", "", "default:furnace"},
{"gold:ingot_gold 7", "", "default:furnace"},
-- ingots
{"gold:gold 5", "", "default:ingot_steel"},
{"gold:gold 8", "", "default:ingot_carbonsteel"},
{"gold:ingot_gold 5", "", "default:ingot_steel"},
{"gold:ingot_gold 8", "", "default:ingot_carbonsteel"},
-- auto smelting
{"gold:gold 2", "default:lump_iron", "default:ingot_steel"},
{"gold:gold 4", "default:dust_carbonsteel", "default:ingot_carbonsteel"},
{"gold:ingot_gold 2", "default:lump_iron", "default:ingot_steel"},
{"gold:ingot_gold 4", "default:dust_carbonsteel", "default:ingot_carbonsteel"},
-- tool repair
{"gold:gold 8", "default:pick_stone", "default:pick_stone"},
{"gold:gold 12", "default:pick_steel", "default:pick_steel"},
{"gold:gold 16", "default:pick_carbonsteel", "default:pick_carbonsteel"},
{"gold:ingot_gold 8", "default:pick_stone", "default:pick_stone"},
{"gold:ingot_gold 12", "default:pick_steel", "default:pick_steel"},
{"gold:ingot_gold 16", "default:pick_carbonsteel", "default:pick_carbonsteel"},
}
gold.trades["butcher"] = {
-- materials
{"gold:gold 3", "", "default:planks_oak 10"},
{"gold:ingot_gold 3", "", "default:planks_oak 10"},
-- cooked edibles
{"gold:gold 2", "", "mobs:meat"},
{"gold:gold 3", "", "mobs:pork"},
{"gold:ingot_gold 2", "", "mobs:meat"},
{"gold:ingot_gold 3", "", "mobs:pork"},
-- raw edibles
{"gold:gold 2", "", "mobs:meat_raw 2"},
{"gold:gold 3", "", "mobs:pork_raw 2"},
{"gold:ingot_gold 2", "", "mobs:meat_raw 2"},
{"gold:ingot_gold 3", "", "mobs:pork_raw 2"},
-- cooking edibles
{"gold:gold 1", "mobs:meat_raw", "mobs:meat"},
{"gold:gold 2", "mobs:pork_raw", "mobs:pork"},
{"gold:ingot_gold 1", "mobs:meat_raw", "mobs:meat"},
{"gold:ingot_gold 2", "mobs:pork_raw", "mobs:pork"},
-- tool repair
{"gold:gold 5", "default:spear_stone", "default:spear_stone"},
{"gold:gold 7", "default:spear_steel", "default:spear_steel"},
{"gold:gold 11", "default:spear_carbonsteel", "default:spear_carbonsteel"},
{"gold:ingot_gold 5", "default:spear_stone", "default:spear_stone"},
{"gold:ingot_gold 7", "default:spear_steel", "default:spear_steel"},
{"gold:ingot_gold 11", "default:spear_carbonsteel", "default:spear_carbonsteel"},
}
-- trading currency
if minetest.get_modpath("jewels") ~= nil then -- jewels/gold
--farmer
table.insert(gold.trades["farmer"], {"gold:gold 16", "", "jewels:jewel"})
table.insert(gold.trades["farmer"], {"gold:gold 22", "", "jewels:jewel 2"})
table.insert(gold.trades["farmer"], {"gold:gold 34", "", "jewels:jewel 4"})
table.insert(gold.trades["farmer"], {"gold:ingot_gold 16", "", "jewels:jewel"})
table.insert(gold.trades["farmer"], {"gold:ingot_gold 22", "", "jewels:jewel 2"})
table.insert(gold.trades["farmer"], {"gold:ingot_gold 34", "", "jewels:jewel 4"})
table.insert(gold.trades["farmer"], {"jewels:jewel", "", "gold:gold 14"})
table.insert(gold.trades["farmer"], {"jewels:jewel 2", "", "gold:gold 20"})
table.insert(gold.trades["farmer"], {"jewels:jewel 4", "", "gold:gold 32"})
table.insert(gold.trades["farmer"], {"jewels:jewel", "", "gold:ingot_gold 14"})
table.insert(gold.trades["farmer"], {"jewels:jewel 2", "", "gold:ingot_gold 20"})
table.insert(gold.trades["farmer"], {"jewels:jewel 4", "", "gold:ingot_gold 32"})
table.insert(gold.trades["farmer"], {"default:planks 6", "", "gold:gold"})
table.insert(gold.trades["farmer"], {"default:planks 6", "", "gold:ingot_gold"})
-- tavern keeper
table.insert(gold.trades["tavernkeeper"], {"gold:gold 14", "", "jewels:jewel"})
table.insert(gold.trades["tavernkeeper"], {"gold:gold 20", "", "jewels:jewel 2"})
table.insert(gold.trades["tavernkeeper"], {"gold:gold 32", "", "jewels:jewel 4"})
table.insert(gold.trades["tavernkeeper"], {"gold:ingot_gold 14", "", "jewels:jewel"})
table.insert(gold.trades["tavernkeeper"], {"gold:ingot_gold 20", "", "jewels:jewel 2"})
table.insert(gold.trades["tavernkeeper"], {"gold:ingot_gold 32", "", "jewels:jewel 4"})
-- blacksmith
table.insert(gold.trades["blacksmith"], {"default:ingot_steel 14", "", "jewels:jewel"})
@ -119,9 +119,9 @@ if minetest.get_modpath("mobs") ~= nil then
end
-- butcher(no mod check)
table.insert(gold.trades["butcher"], {"mobs:meat_raw 3", "", "gold:gold"})
table.insert(gold.trades["butcher"], {"mobs:meat_raw 4", "", "gold:gold 2"})
table.insert(gold.trades["butcher"], {"mobs:meat_raw 5", "", "gold:gold 4"})
table.insert(gold.trades["butcher"], {"mobs:meat_raw 3", "", "gold:ingot_gold"})
table.insert(gold.trades["butcher"], {"mobs:meat_raw 4", "", "gold:ingot_gold 2"})
table.insert(gold.trades["butcher"], {"mobs:meat_raw 5", "", "gold:ingot_gold 4"})
gold.trade_names["farmer"] = "Farmer"
gold.trade_names["tavernkeeper"] = "Tavern Keeper"
@ -223,7 +223,7 @@ minetest.register_on_player_receive_fields(
local meta = minetest.deserialize(item:get_metadata())
local trade = {"gold:gold", "gold:gold", "default:stick"}
local trade = {"gold:ingot_gold", "gold:ingot_gold", "default:stick"}
local trade_type = ""
if meta then
@ -241,6 +241,8 @@ minetest.register_on_player_receive_fields(
end
end)
-- Items
minetest.register_craftitem(
"gold:trading_book",
{
@ -250,33 +252,53 @@ minetest.register_craftitem(
})
minetest.register_craftitem(
"gold:gold",
"gold:lump_gold",
{
description = "Gold",
inventory_image = "gold_gold.png",
stack_max = 120
description = "Gold Lump",
inventory_image = "gold_lump_gold.png",
})
minetest.register_craftitem(
"gold:ingot_gold",
{
description = "Gold Ingot",
inventory_image = "gold_ingot_gold.png",
})
-- Crafting
crafting.register_craft(
{
output = "gold:trading_book",
items = {
"default:book",
"gold:gold",
"gold:ingot_gold",
}
})
minetest.register_craft(
{
type = "cooking",
output = "gold:ingot_gold",
recipe = "gold:lump_gold",
cooktime = 6,
})
-- Nodes
minetest.register_node(
"gold:ore",
{
description = "Gold Ore",
tiles ={"default_stone.png^gold_mineral.png"},
groups = {cracky=1, stone=1},
drop = "gold:gold",
drop = "gold:lump_gold",
is_ground_content = true,
sounds = default.node_sound_stone_defaults(),
})
-- Ore
minetest.register_ore(
{
ore_type = "scatter",

View File

Before

Width:  |  Height:  |  Size: 467 B

After

Width:  |  Height:  |  Size: 467 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 486 B

Binary file not shown.

View File

@ -62,9 +62,9 @@ if minetest.get_modpath("village") ~= nil then
goodies.types["forge"]["jewels:jewel"] = 30
end
if minetest.get_modpath("gold") ~= nil then
goodies.types["house"]["gold:gold"] = 12
goodies.types["tavern"]["gold:gold"] = 10
goodies.types["forge"]["gold:gold"] = 8
goodies.types["house"]["gold:ingot_gold"] = 12
goodies.types["tavern"]["gold:ingot_gold"] = 10
goodies.types["forge"]["gold:ingot_gold"] = 8
end
end

View File

@ -59,7 +59,16 @@ function jewels.register_jewel(toolname, new_toolname, def)
table.insert(jewels.registered_jewels[toolname], data)
local tooldef = minetest.deserialize(minetest.serialize(minetest.registered_tools[toolname]))
local tooldef = minetest.deserialize(
minetest.serialize(minetest.registered_tools[toolname]))
if not tooldef then
minetest.log("warning",
"Trying to register jewel " .. new_toolname
.. " that has an unknown output item " .. toolname)
return
end
local new_tool_invimage = ""
if tooldef.inventory_image then
@ -90,7 +99,8 @@ function jewels.register_jewel(toolname, new_toolname, def)
if new_tooldef.tool_capabilities then
if data.stats.maxdrop and new_tooldef.tool_capabilities.max_drop_level then
new_tooldef.tool_capabilities.max_drop_level = new_tooldef.tool_capabilities.max_drop_level + data.stats.maxdrop
new_tooldef.tool_capabilities.max_drop_level =
new_tooldef.tool_capabilities.max_drop_level + data.stats.maxdrop
desc = desc .. "\nDrop level: " .. plus_power(data.stats.maxdrop)
end
@ -119,8 +129,10 @@ function jewels.register_jewel(toolname, new_toolname, def)
desc = desc .. "\nDig level: " .. plus_power(data.stats.maxlevel)
end
if data.stats.fleshy and new_tooldef.tool_capabilities.damage_groups and new_tooldef.tool_capabilities.damage_groups.fleshy then
new_tooldef.tool_capabilities.damage_groups.fleshy = new_tooldef.tool_capabilities.damage_groups.fleshy + data.stats.fleshy
if data.stats.fleshy and new_tooldef.tool_capabilities.damage_groups
and new_tooldef.tool_capabilities.damage_groups.fleshy then
new_tooldef.tool_capabilities.damage_groups.fleshy =
new_tooldef.tool_capabilities.damage_groups.fleshy + data.stats.fleshy
desc = desc .. "\nDamage: " .. plus_power(data.stats.fleshy)
end
end
@ -130,16 +142,6 @@ function jewels.register_jewel(toolname, new_toolname, def)
minetest.register_tool(new_toolname, new_tooldef)
end
function jewels.can_jewel(toolname)
for name, _ in pairs(jewels.registered_jewels) do
if name == toolname then
return true
end
end
return false
end
function jewels.get_jeweled(toolname)
for name, jables in pairs(jewels.registered_jewels) do
if name == toolname then
@ -148,6 +150,8 @@ function jewels.get_jeweled(toolname)
end
end
-- Items
minetest.register_craftitem(
"jewels:jewel",
{
@ -156,6 +160,8 @@ minetest.register_craftitem(
stack_max = 10
})
-- Nodes
minetest.register_node(
"jewels:bench",
{
@ -203,27 +209,22 @@ minetest.register_node(
end,
})
crafting.register_craft(
{
output = "jewels:bench",
items = {
"group:planks 5",
"default:ingot_carbonsteel 2",
"jewels:jewel",
}
})
minetest.register_node(
"jewels:jewel_ore",
{
description = "Jewel Ore",
groups = {cracky = 1, stone = 1, not_in_craftingguide = 1},
tiles = {"default_tree_birch_top.png", "default_tree_birch_top.png", "default_tree_birch.png^jewels_ore.png"},
tiles = {
"default_tree_birch_top.png",
"default_tree_birch_top.png",
"default_tree_birch.png^jewels_ore.png"
},
drop = "jewels:jewel",
groups = {snappy=1, choppy=1, tree=1},
sounds = default.node_sound_wood_defaults(),
})
-- Ore
minetest.register_ore(
{
ore_type = "scatter",
@ -236,6 +237,16 @@ minetest.register_ore(
y_max = 31000,
})
crafting.register_craft(
{
output = "jewels:bench",
items = {
"group:planks 5",
"default:ingot_carbon_steel 2",
"jewels:jewel",
}
})
-- Achievements
achievements.register_achievement(

View File

@ -23,8 +23,8 @@ jewels.register_jewel(
})
jewels.register_jewel(
"default:pick_carbonsteel",
"jewels:pick_carbonsteel_digspeed",
"default:pick_carbon_steel",
"jewels:pick_carbon_steel_digspeed",
{
stats = {
digspeed = -0.16,
@ -50,8 +50,8 @@ jewels.register_jewel(
})
jewels.register_jewel(
"default:pick_carbonsteel",
"jewels:pick_carbonsteel_damage",
"default:pick_carbon_steel",
"jewels:pick_carbon_steel_damage",
{
stats = {
fleshy = 3,
@ -77,8 +77,8 @@ jewels.register_jewel(
})
jewels.register_jewel(
"default:pick_carbonsteel",
"jewels:pick_carbonsteel_uses",
"default:pick_carbon_steel",
"jewels:pick_carbon_steel_uses",
{
stats = {
uses = 7,
@ -106,8 +106,8 @@ jewels.register_jewel(
})
jewels.register_jewel(
"default:shovel_carbonsteel",
"jewels:shovel_carbonsteel_digspeed",
"default:shovel_carbon_steel",
"jewels:shovel_carbon_steel_digspeed",
{
stats = {
digspeed = -0.17,
@ -133,8 +133,8 @@ jewels.register_jewel(
})
jewels.register_jewel(
"default:shovel_carbonsteel",
"jewels:shovel_carbonsteel_damage",
"default:shovel_carbon_steel",
"jewels:shovel_carbon_steel_damage",
{
stats = {
fleshy = 3,
@ -160,8 +160,8 @@ jewels.register_jewel(
})
jewels.register_jewel(
"default:shovel_carbonsteel",
"jewels:shovel_carbonsteel_uses",
"default:shovel_carbon_steel",
"jewels:shovel_carbon_steel_uses",
{
stats = {
uses = 7,
@ -189,8 +189,8 @@ jewels.register_jewel(
})
jewels.register_jewel(
"default:axe_carbonsteel",
"jewels:axe_carbonsteel_digspeed",
"default:axe_carbon_steel",
"jewels:axe_carbon_steel_digspeed",
{
stats = {
digspeed = -0.16,
@ -216,8 +216,8 @@ jewels.register_jewel(
})
jewels.register_jewel(
"default:axe_carbonsteel",
"jewels:axe_carbonsteel_damage",
"default:axe_carbon_steel",
"jewels:axe_carbon_steel_damage",
{
stats = {
fleshy = 4,
@ -243,8 +243,8 @@ jewels.register_jewel(
})
jewels.register_jewel(
"default:axe_carbonsteel",
"jewels:axe_carbonsteel_uses",
"default:axe_carbon_steel",
"jewels:axe_carbon_steel_uses",
{
stats = {
uses = 7,
@ -272,8 +272,8 @@ jewels.register_jewel(
})
jewels.register_jewel(
"default:spear_carbonsteel",
"jewels:spear_carbonsteel_digspeed",
"default:spear_carbon_steel",
"jewels:spear_carbon_steel_digspeed",
{
stats = {
digspeed = -0.16,
@ -299,8 +299,8 @@ jewels.register_jewel(
})
jewels.register_jewel(
"default:spear_carbonsteel",
"jewels:spear_carbonsteel_damage",
"default:spear_carbon_steel",
"jewels:spear_carbon_steel_damage",
{
stats = {
fleshy = 7,
@ -326,8 +326,8 @@ jewels.register_jewel(
})
jewels.register_jewel(
"default:spear_carbonsteel",
"jewels:spear_carbonsteel_uses",
"default:spear_carbon_steel",
"jewels:spear_carbon_steel_uses",
{
stats = {
uses = 7,

View File

@ -92,8 +92,14 @@ minetest.register_node(
"locks:chest",
{
description = "Locked Chest",
tiles ={"default_chest_top.png", "default_chest_top.png", "default_chest_sides.png",
"default_chest_sides.png", "default_chest_sides.png", "locks_chest_front.png"},
tiles ={
"default_chest_top.png",
"default_chest_top.png",
"default_chest_sides.png",
"default_chest_sides.png",
"default_chest_sides.png",
"locks_chest_front.png"
},
paramtype2 = "facedir",
groups = {snappy = 2, choppy = 2, oddly_breakable_by_hand = 2},
is_ground_content = false,
@ -168,10 +174,12 @@ minetest.register_node(
write_name = function(pos, text)
local meta = minetest.get_meta(pos)
if text ~= "" then
meta:set_string("infotext", text .. " (Owned by " .. meta:get_string("lock_owner") .. ")")
if text == "" then
meta:set_string("infotext", "Locked Chest (Owned by "
.. meta:get_string("lock_owner") .. ")")
else
meta:set_string("infotext", "Locked Chest (Owned by " .. meta:get_string("lock_owner") .. ")")
meta:set_string("infotext", text .. " (Owned by "
.. meta:get_string("lock_owner") .. ")")
end
end,
on_blast = function() end,
@ -183,7 +191,7 @@ crafting.register_craft(
{
output = "locks:pick",
items = {
"default:ingot_carbonsteel 2",
"default:ingot_steel 2",
"default:stick 3",
},
})

View File

@ -47,7 +47,7 @@ for _, npc_type in pairs(npc_types) do
water_damage = 0,
lava_damage = 2,
light_damage = 0,
follow = "gold:gold",
follow = "gold:ingot_gold",
view_range = 15,
owner = "",
order = "stand",