1
0
mirror of https://github.com/rubenwardy/food.git synced 2024-11-18 08:00:38 +01:00
food/support.lua
2013-05-01 17:19:23 +01:00

349 lines
8.4 KiB
Lua

-- RUBENFOOD MOD
-- A mod written by rubenwardy that adds
-- food to the minetest game
-- ======================================
-- >> rubenfood/support.lua
-- adds support for other mods
-- ======================================
-- [support]
-- ======================================
print "Food [Support] - Initialising"
--NODE_IMPLEMENT() Gets an item from another mod softly
-- modname: the name of the mod that the item will be got from
-- n_ext: the name of the item that we want to get
-- n_int: the name we want to save the item so we can load it as an ingredient
-- resultfunc: if the mod does not exist, then do this function
function node_implement(modname,n_ext,n_int,resultfunc)
if not minetest.get_modpath(modname) then
-- Mod is NOT installed
resultfunc()
else
-- Mod IS installed
minetest.register_alias(n_int,n_ext)
end
end
print "Food [Support] - Vegetables and Fruit"
print "Food [Support] - > Bread and Flour"
node_implement("farming","farming:flour","food:flour",function()
node_implement("plantlib","plantlib:wheat","food:wheat",function()
minetest.register_craft({
output = '"food:wheat" 1',
recipe = {
{"default:dry_shrub"},
}
})
end)
minetest.register_craftitem("food:flour", {
description = "Flour",
inventory_image = "farming_flour.png",
})
minetest.register_craft({
output = '"food:flour" 1',
recipe = {
{"food:wheat"},
}
})
end)
node_implement("farming","farming:bread","food:bread",function()
minetest.register_craftitem("food:bread", {
description = "Bread",
inventory_image = "food_bread.png",
stack_max = 1,
on_use = minetest.item_eat(10),
groups={food=2},
})
minetest.register_craft({
type = "cooking",
output = "food:bread",
recipe = "food:dough",
cooktime = 10,
})
end)
node_implement("farming","farming:cake_mix","food:dough",function()
minetest.register_craftitem("food:dough", {
description = "Cake Mix",
inventory_image = "farming_cake_mix.png",
})
minetest.register_craft({
output = "food:dough",
type = "shapeless",
recipe = {"food:flour", "food:flour", "food:flour", "food:flour", "bucket:bucket_water"},
replacements = {{"bucket:bucket_water", "bucket:bucket_empty"}},
})
end)
print "Food [Support] - > Strawberry"
node_implement("farming_plus","farming_plus:strawberry_item","food:strawberry",function()
node_implement("plantlib","plantlib:strawberry","food:strawberry",function()
minetest.register_craftitem("food:strawberry", {
description = "Strawberry",
inventory_image = "farming_strawberry.png",
on_use = minetest.item_eat(2),
})
minetest.register_craft({
output = '"food:strawberry" 1',
recipe = {
{"default:apple"},
}
})
end)
end)
print "Food [Support] - > Carrot"
node_implement("farming_plus","farming_plus:carrot_item","food:carrot",function()
node_implement("docfarming","docfarming:carrot","food:carrot",function()
node_implement("plantlib","plantlib:carrot","food:carrot",function()
minetest.register_craftitem("food:carrot", {
description = "Carrot",
inventory_image = "farming_carrot.png",
on_use = minetest.item_eat(3),
})
minetest.register_craft({
output = '"food:carrot" 1',
recipe = {
{"default:apple","default:apple","default:apple"},
}
})
end)
end)
end)
print "Food [Support] - > Rhubarb"
node_implement("farming_plus","farming_plus:rhubarb_item","food:rhubarb",function()
minetest.register_craftitem("food:rhubarb", {
description = "Rhubarb",
inventory_image = "farming_rhubarb.png",
})
minetest.register_craft({
output = '"food:rhubarb" 1',
recipe = {
{"default:apple"},
{"default:apple"},
{"default:apple"}
}
})
end)
print "Food [Support] - > Cocoa Bean"
node_implement("farming_plus","farming_plus:cocoa_bean","food:cocoa",function()
minetest.register_craftitem("food:cocoa", {
description = "Cocoa Bean",
inventory_image = "farming_cocoa_bean.png",
})
minetest.register_craft({
output = '"food:cocoa" 1',
recipe = {
{"","default:apple",""},
{"default:apple","","default:apple"},
{"","default:apple",""}
}
})
end)
print "Food [Support] - > Banana"
node_implement("farming_plus","farming_plus:banana","food:banana",function()
minetest.register_node("food:banana", {
description = "Banana",
tiles = {"farming_banana.png"},
inventory_image = "farming_banana.png",
wield_image = "farming_banana.png",
drawtype = "torchlike",
paramtype = "light",
sunlight_propagates = true,
walkable = false,
groups = {fleshy=3,dig_immediate=3,flammable=2},
sounds = default.node_sound_defaults(),
on_use = minetest.item_eat(6),
})
minetest.register_craft({
output = '"food:banana" 1',
recipe = {
{"default:apple"},
{"default:apple"}
}
})
end)
print "Food [Support] - > Tomato"
node_implement("farming_plus","farming_plus:tomato_item","food:tomato",function()
node_implement("plantlib","plantlib:tomato","food:tomato",function()
minetest.register_craftitem("food:tomato", {
description = "Tomato",
inventory_image = "farming_strawberry.png",
on_use = minetest.item_eat(2),
})
minetest.register_craft({
output = '"food:rhubarb" 1',
recipe = {
{""},
{""},
{"default:apple"}
}
})
end)
end)
print "Food [Support] - > Potato"
node_implement("docfarming","docfarming:potato","food:potato",function()
minetest.register_craftitem("food:potato", {
description = "Potato",
inventory_image = "food_potato.png",
})
minetest.register_craft({
output = '"food:rhubarb" 1',
recipe = {
{"default:apple"},
{"default:dirt"}
}
})
end)
node_implement("docfarming","docfarming:bakedpotato","food:potato_baked",function()
minetest.register_craftitem("food:potato_baked", {
description = "Baked Potato",
inventory_image = "food_baked_potato.png",
on_use = minetest.item_eat(6),
})
minetest.register_craft({
type = "cooking",
output = "food:potato_baked",
recipe = "food:potato",
cooktime = 2,
})
end)
print "Food [Support] - > Coffee"
node_implement("plantlib","plantlib:coffee","food:coffeebean",function()
minetest.register_craftitem("food:coffeebean",{
description = "Raw Coffee Bean",
tiles = {"food_coffee.png"},
inventory_image = "food_coffee.png",
})
minetest.register_craft({
output = '"food:coffeebean" 1',
recipe = {
{'""','"default:dry_shrub"','""'},
{'""','"default:dry_shrub"','""'},
{'""','"default:dry_shrub"','""'},
}
})
end)
print "Food [Support] - Meats and Animal Produce"
print "Food [Support] - > Raw Meat"
node_implement("mobs","mobs:meat_raw","food:meat_raw",function()
node_implement("animalmaterials","animalmaterials:meat_raw","food:meat_raw",function()
minetest.register_craftitem("food:meat_raw", {
description = "Raw meat",
image = "animalmaterials_meat_raw.png",
on_use = minetest.item_eat(1),
groups = { meat=1, eatable=1 },
stack_max=25
})
minetest.register_craft({
output = '"food:meat_raw" 1',
recipe = {
{"default:apple"},
{"default:dirt"}
}
})
end)
end)
print "Food [Support] - > Meat"
node_implement("mobs","mobs:meat","food:meat",function()
minetest.register_craftitem("food:meat", {
description = "Venison",
inventory_image = "food_meat.png",
})
minetest.register_craft({
type = "cooking",
output = "food:meat",
recipe = "food:meat_raw",
cooktime = 30
})
end)
print "Food [Support] - > Egg"
node_implement("animalmaterials","animalmaterials:egg","food:egg",function()
minetest.register_craftitem("food:egg", {
description = "Egg",
image = "animalmaterials_egg.png",
stack_max=10
})
minetest.register_craft({
output = '"food:egg" 1',
recipe = {
{"default:sand"},
{"default:apple"}
}
})
end)
print "Food [Support] - > Milk"
node_implement("animalmaterials","animalmaterials:milk","food:milk",function()
node_implement("my_mobs","my_mobs:milk_glass_cup","food:milk",function()
minetest.register_craftitem("food:milk", {
description = "Milk",
image = "animalmaterials_milk.png",
on_use = minetest.item_eat(1),
groups = { eatable=1 },
stack_max=10
})
minetest.register_craft({
output = '"food:meat_raw" 1',
recipe = {
{"default:apple"},
{"bucket:bucket_water"}
},
replacements = {{"bucket:bucket_water", "bucket:bucket_empty"}},
})
end)
end)
print "Food [Support] - Vessels and Cutlery"
node_implement("vessels","vessels:drinking_glass","food:cup",function()
node_implement("animalmaterials","animalmaterials:glass","food:cup",function()
minetest.register_craftitem("food:cup",{
description = "Glass",
tiles = {"food_cup.png"},
inventory_image = "food_cup.png",
})
minetest.register_craft({
output = '"food:cup" 1',
recipe = {
{"default:glass"},
{"default:glass"}
}
})
end)
end)