forked from mtcontrib/bonemeal
Compare commits
36 Commits
nalc-1.2.0
...
52ada84c58
Author | SHA1 | Date | |
---|---|---|---|
52ada84c58 | |||
2d7dbc735c | |||
a920032dd5 | |||
b6b40c558a | |||
d534523a1d | |||
75ec006643 | |||
acea1713b7 | |||
b5819d022e | |||
1a9c67b1e3 | |||
05e211a037 | |||
fdc62f06b0 | |||
807388d632 | |||
2658577776 | |||
634d1496aa | |||
8fc57f7746 | |||
7c106254d2 | |||
308baf3a17 | |||
b50f533579 | |||
587e0fbf02 | |||
2c90275687 | |||
30d0c02d8c | |||
2ec1168292 | |||
1aba553059 | |||
fefe122dc9 | |||
5ce62f46e7 | |||
93a46c05a6 | |||
77c02f1b7a | |||
afc6d7ef12 | |||
130fffbf97 | |||
b604ca39da | |||
a5a4798aed | |||
97f4b11110 | |||
ebbec592bf | |||
19df0b4036 | |||
e6eaea544c | |||
e4a0a9bfe9 |
135
init.lua
135
init.lua
@ -6,12 +6,13 @@ local min, max, random = math.min, math.max, math.random
|
||||
|
||||
|
||||
-- Load support for intllib.
|
||||
local S, NS = dofile(path .. "/intllib.lua")
|
||||
local S = minetest.get_translator and minetest.get_translator("bonemeal") or
|
||||
dofile(path .. "/intllib.lua")
|
||||
|
||||
|
||||
-- creative check
|
||||
local creative_mode_cache = minetest.settings:get_bool("creative_mode")
|
||||
function is_creative(name)
|
||||
function bonemeal.is_creative(name)
|
||||
return creative_mode_cache or minetest.check_player_privs(name, {creative = true})
|
||||
end
|
||||
|
||||
@ -36,6 +37,17 @@ local function pine_grow(pos)
|
||||
end
|
||||
|
||||
|
||||
-- special function for cactus growth
|
||||
local function cactus_grow(pos)
|
||||
default.grow_cactus(pos, minetest.get_node(pos))
|
||||
end
|
||||
|
||||
-- special function for papyrus growth
|
||||
local function papyrus_grow(pos)
|
||||
default.grow_papyrus(pos, minetest.get_node(pos))
|
||||
end
|
||||
|
||||
|
||||
-- default saplings
|
||||
local saplings = {
|
||||
{"default:sapling", default.grow_new_apple_tree, "soil"},
|
||||
@ -48,7 +60,9 @@ local saplings = {
|
||||
{"default:acacia_bush_sapling", default.grow_acacia_bush, "soil"},
|
||||
{"default:large_cactus_seedling", default.grow_large_cactus, "sand"},
|
||||
{"default:blueberry_bush_sapling", default.grow_blueberry_bush, "soil"},
|
||||
{"default:pine_bush_sapling", default.grow_pine_bush, "soil"}
|
||||
{"default:pine_bush_sapling", default.grow_pine_bush, "soil"},
|
||||
{"default:cactus", cactus_grow, "sand"},
|
||||
{"default:papyrus", papyrus_grow, "soil"},
|
||||
}
|
||||
|
||||
-- helper tables ( "" denotes a blank item )
|
||||
@ -62,27 +76,27 @@ local dry_grass = {
|
||||
"default:dry_grass_5", "", ""
|
||||
}
|
||||
|
||||
-- add all in-game flowers except waterlily
|
||||
-- loads mods then add all in-game flowers except waterlily
|
||||
local flowers = {}
|
||||
|
||||
for node, def in pairs(minetest.registered_nodes) do
|
||||
minetest.after(0.1, function()
|
||||
|
||||
if def.groups.flower and not node:find("waterlily") then
|
||||
flowers[#flowers + 1] = node
|
||||
for node, def in pairs(minetest.registered_nodes) do
|
||||
|
||||
if def.groups
|
||||
and def.groups.flower
|
||||
and not node:find("waterlily")
|
||||
and not node:find("xdecor:potted_") then
|
||||
flowers[#flowers + 1] = node
|
||||
end
|
||||
end
|
||||
end
|
||||
end)
|
||||
|
||||
-- add additional bakedclay flowers if enabled
|
||||
if minetest.get_modpath("bakedclay") then
|
||||
flowers[#flowers + 1] = "bakedclay:delphinium"
|
||||
flowers[#flowers + 1] = "bakedclay:thistle"
|
||||
flowers[#flowers + 1] = "bakedclay:lazarus"
|
||||
flowers[#flowers + 1] = "bakedclay:mannagrass"
|
||||
flowers[#flowers + 1] = ""
|
||||
end
|
||||
|
||||
-- default biomes deco
|
||||
local deco = {
|
||||
{"default:dry_dirt", dry_grass, {}},
|
||||
{"default:dry_dirt_with_dry_grass", dry_grass, {}},
|
||||
{"default:dirt_with_dry_grass", dry_grass, flowers},
|
||||
{"default:sand", {}, {"default:dry_shrub", "", "", ""} },
|
||||
{"default:desert_sand", {}, {"default:dry_shrub", "", "", ""} },
|
||||
@ -180,7 +194,7 @@ local function check_sapling(pos, nodename)
|
||||
if can_grow then
|
||||
particle_effect(pos)
|
||||
grow_tree(pos, saplings[n][2])
|
||||
return
|
||||
return true
|
||||
end
|
||||
end
|
||||
end
|
||||
@ -215,7 +229,7 @@ local function check_crops(pos, nodename, strength)
|
||||
|
||||
particle_effect(pos)
|
||||
|
||||
return
|
||||
return true
|
||||
end
|
||||
end
|
||||
end
|
||||
@ -437,13 +451,13 @@ function bonemeal:on_use(pos, strength, node)
|
||||
|
||||
default.grow_papyrus(pos, node)
|
||||
particle_effect(pos)
|
||||
return
|
||||
return true
|
||||
|
||||
elseif node.name == "default:cactus" then
|
||||
|
||||
default.grow_cactus(pos, node)
|
||||
particle_effect(pos)
|
||||
return
|
||||
return true
|
||||
end
|
||||
|
||||
-- grow grass and flowers
|
||||
@ -451,7 +465,7 @@ function bonemeal:on_use(pos, strength, node)
|
||||
or minetest.get_item_group(node.name, "sand") > 0
|
||||
or minetest.get_item_group(node.name, "can_bonemeal") > 0 then
|
||||
check_soil(pos, node.name, strength)
|
||||
return
|
||||
return true
|
||||
end
|
||||
|
||||
-- light check depending on strength (strength of 4 = no light needed)
|
||||
@ -463,11 +477,13 @@ function bonemeal:on_use(pos, strength, node)
|
||||
if minetest.get_item_group(node.name, "sapling") > 0
|
||||
and random(5 - strength) == 1 then
|
||||
check_sapling(pos, node.name)
|
||||
return
|
||||
return true
|
||||
end
|
||||
|
||||
-- check for crop growth
|
||||
check_crops(pos, node.name, strength)
|
||||
if check_crops(pos, node.name, strength) then
|
||||
return true
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
@ -493,13 +509,14 @@ minetest.register_craftitem("bonemeal:mulch", {
|
||||
return
|
||||
end
|
||||
|
||||
-- take item if not in creative
|
||||
if not is_creative(user:get_player_name()) then
|
||||
itemstack:take_item()
|
||||
end
|
||||
|
||||
-- call global on_use function with strength of 1
|
||||
bonemeal:on_use(pointed_thing.under, 1)
|
||||
if bonemeal:on_use(pointed_thing.under, 1) then
|
||||
|
||||
-- take item if not in creative
|
||||
if not bonemeal.is_creative(user:get_player_name()) then
|
||||
itemstack:take_item()
|
||||
end
|
||||
end
|
||||
|
||||
return itemstack
|
||||
end
|
||||
@ -523,13 +540,14 @@ minetest.register_craftitem("bonemeal:bonemeal", {
|
||||
return
|
||||
end
|
||||
|
||||
-- take item if not in creative
|
||||
if not is_creative(user:get_player_name()) then
|
||||
itemstack:take_item()
|
||||
end
|
||||
|
||||
-- call global on_use function with strength of 2
|
||||
bonemeal:on_use(pointed_thing.under, 2)
|
||||
if bonemeal:on_use(pointed_thing.under, 2) then
|
||||
|
||||
-- take item if not in creative
|
||||
if not bonemeal.is_creative(user:get_player_name()) then
|
||||
itemstack:take_item()
|
||||
end
|
||||
end
|
||||
|
||||
return itemstack
|
||||
end
|
||||
@ -553,13 +571,14 @@ minetest.register_craftitem("bonemeal:fertiliser", {
|
||||
return
|
||||
end
|
||||
|
||||
-- take item if not in creative
|
||||
if not is_creative(user:get_player_name()) then
|
||||
itemstack:take_item()
|
||||
end
|
||||
|
||||
-- call global on_use function with strength of 3
|
||||
bonemeal:on_use(pointed_thing.under, 3)
|
||||
if bonemeal:on_use(pointed_thing.under, 3) then
|
||||
|
||||
-- take item if not in creative
|
||||
if not bonemeal.is_creative(user:get_player_name()) then
|
||||
itemstack:take_item()
|
||||
end
|
||||
end
|
||||
|
||||
return itemstack
|
||||
end
|
||||
@ -601,41 +620,51 @@ minetest.register_craft({
|
||||
|
||||
-- bonemeal (from bone)
|
||||
minetest.register_craft({
|
||||
type = "shapeless",
|
||||
-- type = "shapeless",
|
||||
output = "bonemeal:bonemeal 2",
|
||||
recipe = {"group:bone"}
|
||||
recipe = {{"group:bone"}}
|
||||
})
|
||||
|
||||
-- bonemeal (from player bones)
|
||||
minetest.register_craft({
|
||||
type = "shapeless",
|
||||
-- type = "shapeless",
|
||||
output = "bonemeal:bonemeal 4",
|
||||
recipe = {"bones:bones"}
|
||||
recipe = {{"bones:bones"}}
|
||||
})
|
||||
|
||||
-- bonemeal (from coral skeleton)
|
||||
minetest.register_craft({
|
||||
type = "shapeless",
|
||||
-- type = "shapeless",
|
||||
output = "bonemeal:bonemeal 2",
|
||||
recipe = {"default:coral_skeleton"}
|
||||
recipe = {{"default:coral_skeleton"}}
|
||||
})
|
||||
|
||||
-- mulch
|
||||
minetest.register_craft({
|
||||
type = "shapeless",
|
||||
-- type = "shapeless",
|
||||
output = "bonemeal:mulch 4",
|
||||
recipe = {
|
||||
"group:tree", "group:leaves", "group:leaves",
|
||||
"group:leaves", "group:leaves", "group:leaves",
|
||||
"group:leaves", "group:leaves", "group:leaves"
|
||||
{"group:tree", "group:leaves", "group:leaves"},
|
||||
{"group:leaves", "group:leaves", "group:leaves"},
|
||||
{"group:leaves", "group:leaves", "group:leaves"}
|
||||
}
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
-- type = "shapeless",
|
||||
output = "bonemeal:mulch",
|
||||
recipe = {
|
||||
{"group:seed", "group:seed", "group:seed"},
|
||||
{"group:seed", "group:seed", "group:seed"},
|
||||
{"group:seed", "group:seed", "group:seed"}
|
||||
}
|
||||
})
|
||||
|
||||
-- fertiliser
|
||||
minetest.register_craft({
|
||||
type = "shapeless",
|
||||
-- type = "shapeless",
|
||||
output = "bonemeal:fertiliser 2",
|
||||
recipe = {"bonemeal:bonemeal", "bonemeal:mulch"}
|
||||
recipe = {{"bonemeal:bonemeal", "bonemeal:mulch"}}
|
||||
})
|
||||
|
||||
|
||||
|
7
locale/bonemeal.de.tr
Normal file
7
locale/bonemeal.de.tr
Normal file
@ -0,0 +1,7 @@
|
||||
# textdomain:bonemeal
|
||||
[MOD] bonemeal loaded=[MOD] bonemeal geladen
|
||||
Bone=Knochen
|
||||
Bone Meal=Knochenmehl
|
||||
Fertiliser=Dünger
|
||||
Gelatin Powder=Gelatinepulver
|
||||
Mulch=Mulch
|
7
locale/bonemeal.en.tr
Normal file
7
locale/bonemeal.en.tr
Normal file
@ -0,0 +1,7 @@
|
||||
# textdomain:bonemeal
|
||||
#[MOD] bonemeal loaded=
|
||||
#Bone=
|
||||
#Bone Meal=
|
||||
#Fertiliser=
|
||||
#Gelatin Powder=
|
||||
#Mulch=
|
7
locale/bonemeal.es.tr
Normal file
7
locale/bonemeal.es.tr
Normal file
@ -0,0 +1,7 @@
|
||||
# textdomain:bonemeal
|
||||
[MOD] bonemeal loaded=[MOD] bonemeal cargado
|
||||
Bone=Hueso
|
||||
Bone Meal=Comida de hueso
|
||||
Fertiliser=Fertilizante
|
||||
#Gelatin Powder=
|
||||
Mulch=Mantillo
|
7
locale/bonemeal.fr.tr
Normal file
7
locale/bonemeal.fr.tr
Normal file
@ -0,0 +1,7 @@
|
||||
# textdomain:bonemeal
|
||||
[MOD] bonemeal loaded=[MOD] bonemeal chargé
|
||||
Bone=Os
|
||||
Bone Meal=Poudre d'os
|
||||
Fertiliser=Engrais
|
||||
Gelatin Powder=Poudre de gélatine
|
||||
Mulch=Paillis
|
7
locale/bonemeal.it.tr
Normal file
7
locale/bonemeal.it.tr
Normal file
@ -0,0 +1,7 @@
|
||||
# textdomain:bonemeal
|
||||
[MOD] bonemeal loaded=[MOD] bonemeal caricata
|
||||
Bone=Ossa
|
||||
Bone Meal=Pasto osseo
|
||||
Fertiliser=Fertilizzante
|
||||
#Gelatin Powder=
|
||||
Mulch=Pacciame
|
7
locale/bonemeal.ru.tr
Normal file
7
locale/bonemeal.ru.tr
Normal file
@ -0,0 +1,7 @@
|
||||
# textdomain:bonemeal
|
||||
[MOD] bonemeal loaded=[MOD] костная мука загружена
|
||||
Bone=Кость
|
||||
Bone Meal=Костная Мука
|
||||
Fertiliser=Удобрение
|
||||
#Gelatin Powder=
|
||||
Mulch=Мульча
|
7
locale/es.txt
Normal file
7
locale/es.txt
Normal file
@ -0,0 +1,7 @@
|
||||
# init.lua
|
||||
|
||||
Mulch = Mantillo
|
||||
Bone Meal = Comida de hueso
|
||||
Fertiliser = Fertilizante
|
||||
Bone = Hueso
|
||||
[MOD] bonemeal loaded = [MOD] bonemeal cargado
|
7
locale/it.txt
Normal file
7
locale/it.txt
Normal file
@ -0,0 +1,7 @@
|
||||
# init.lua
|
||||
|
||||
Mulch = Pacciame
|
||||
Bone Meal = Pasto osseo
|
||||
Fertiliser = Fertilizzante
|
||||
Bone = Ossa
|
||||
[MOD] bonemeal loaded = [MOD] bonemeal caricata
|
@ -1,7 +1,7 @@
|
||||
# init.lua
|
||||
|
||||
Mulch =
|
||||
Bone Meal =
|
||||
Fertiliser =
|
||||
Bone =
|
||||
[bonemeal] loaded =
|
||||
Mulch =
|
||||
Bone Meal =
|
||||
Fertiliser =
|
||||
Bone =
|
||||
[MOD] bonemeal loaded =
|
||||
|
5
mod.conf
5
mod.conf
@ -1 +1,4 @@
|
||||
name = bonemeal
|
||||
name = bonemeal
|
||||
depends = default
|
||||
optional_depends = intllib, lucky_block, farming, ethereal, moretrees, technic_worldgen, flowers, dye
|
||||
description = Adds bone and bonemeal giving the ability to quickly grow plants and saplings.
|
||||
|
17
mods.lua
17
mods.lua
@ -32,14 +32,22 @@ if farming and farming.mod and farming.mod == "redo" then
|
||||
{"farming:chili_", 8},
|
||||
{"farming:garlic_", 5},
|
||||
{"farming:onion_", 5},
|
||||
{"farming:pepper_", 5},
|
||||
{"farming:pepper_", 7},
|
||||
{"farming:pineapple_", 8},
|
||||
{"farming:pea_", 5},
|
||||
{"farming:beetroot_", 5},
|
||||
{"farming:rye_", 8},
|
||||
{"farming:oat_", 8},
|
||||
{"farming:rice_", 8},
|
||||
{"farming:mint_", 4}
|
||||
{"farming:mint_", 4},
|
||||
{"farming:cabbage_", 6},
|
||||
{"farming:lettuce_", 5},
|
||||
{"farming:blackberry_", 4},
|
||||
{"farming:vanilla_", 8},
|
||||
{"farming:soy_", 7},
|
||||
{"farming:artichoke_", 5},
|
||||
{"farming:parsley_", 3},
|
||||
{"farming:sunflower_", 8}
|
||||
})
|
||||
end
|
||||
|
||||
@ -61,10 +69,13 @@ if minetest.get_modpath("ethereal") then
|
||||
{"ethereal:mushroom_sapling", ethereal.grow_mushroom_tree, "soil"},
|
||||
{"ethereal:willow_sapling", ethereal.grow_willow_tree, "soil"},
|
||||
{"ethereal:redwood_sapling", ethereal.grow_redwood_tree, "soil"},
|
||||
{"ethereal:giant_redwood_sapling", ethereal.grow_giant_redwood_tree, "soil"},
|
||||
{"ethereal:orange_tree_sapling", ethereal.grow_orange_tree, "soil"},
|
||||
{"ethereal:bamboo_sprout", ethereal.grow_bamboo_tree, "soil"},
|
||||
{"ethereal:birch_sapling", ethereal.grow_birch_tree, "soil"},
|
||||
{"ethereal:sakura_sapling", ethereal.grow_sakura_tree, "soil"}
|
||||
{"ethereal:sakura_sapling", ethereal.grow_sakura_tree, "soil"},
|
||||
{"ethereal:lemon_tree_sapling", ethereal.grow_lemon_tree, "soil"},
|
||||
{"ethereal:olive_tree_sapling", ethereal.grow_olive_tree, "soil"}
|
||||
})
|
||||
|
||||
local grass = {"default:grass_3", "default:grass_4", "default:grass_5", ""}
|
||||
|
Reference in New Issue
Block a user