Update food mod into submodule
Add food_sweet, mtfood, diet submodules
							
								
								
									
										1
									
								
								mods/diet
									
									
									
									
									
										Submodule
									
								
							
							
								
								
								
								
								
							
						
						
							
								
								
									
										1
									
								
								mods/food
									
									
									
									
									
										Submodule
									
								
							
							
								
								
								
								
								
							
						
						
							
								
								
									
										1
									
								
								mods/food/.gitignore
									
									
									
									
										vendored
									
									
								
							
							
						
						| @@ -1 +0,0 @@ | ||||
| *~* | ||||
| @@ -1,44 +0,0 @@ | ||||
| Food | ||||
| ==== | ||||
|  | ||||
| This is the main mod in the food mod collection. | ||||
|  | ||||
| Version 2.3 | ||||
|  | ||||
| The Aims | ||||
| -------- | ||||
|  | ||||
| All content should follow these aims: | ||||
| * Basis for expansion - supplies a framework of ingredients for other mods to build upon | ||||
| * Mod support without dependancies - this allows flexibility for the user | ||||
| * Minetest-game worthy - (Minimalism) This mod only contains traditional foods - such as cakes, soups and bread. | ||||
|  | ||||
| Documentation | ||||
| ------------- | ||||
|  | ||||
| Recipe guide: https://www.dropbox.com/s/tsvjmobv9n3isu0/food_crafting.pdf?dl=1 | ||||
|  | ||||
| Expansion Packs | ||||
| --------------- | ||||
|  | ||||
| There are expansion mods available. Just install them in a mod folder, and everything should be fine. | ||||
|  | ||||
| * Sweet Foods - https://github.com/rubenwardy/food_sweet | ||||
| * Modern food (Needs updating) - burgers, soft drinks, pop corn, coffee, etc | ||||
|  | ||||
| Licensing | ||||
| --------- | ||||
|  | ||||
| Created by rubenwardy | ||||
| License for code: GPL 3.0 or later. | ||||
| License for textures: CC-BY-SA | ||||
|  | ||||
| Exceptions: | ||||
|  | ||||
| * Baked potato texture by Doc, WTFPL | ||||
| * Dough, flour and wheat textures from default farming mod, WTFPL | ||||
| * Orange from farming_plus, WTFPL | ||||
| * Egg and milk textures from Mobf, CC BY SA | ||||
| * Orange juice texture by CiaranG (modified from rubenwardy's apple juice texture) | ||||
|  | ||||
| Have I missed out credit? Please tell me. | ||||
| @@ -1 +0,0 @@ | ||||
| The largest supporting food mod for Minetest. Adds soups, cakes, bakes and juices. | ||||
| @@ -1,4 +0,0 @@ | ||||
| diet? | ||||
| hud? | ||||
| intllib? | ||||
| hbhunger? | ||||
| @@ -1 +0,0 @@ | ||||
| (API framework) The largest supporting food mod for Minetest. Adds soups, cakes, bakes and juices. | ||||
| @@ -1,153 +0,0 @@ | ||||
| -- FOOD MOD | ||||
| -- A mod written by rubenwardy that adds | ||||
| -- food to the minetest game | ||||
| -- ===================================== | ||||
| -- >> food/api.lua | ||||
| -- The supporting api for the mod | ||||
| -- ===================================== | ||||
|  | ||||
| food = { | ||||
| 	modules = {}, | ||||
| 	disabled_modules = {}, | ||||
| 	debug = false, | ||||
| 	version = 2.3 | ||||
| } | ||||
|  | ||||
| -- Checks for external content, and adds support | ||||
| function food.support(group, item) | ||||
| 	if type(group) == "table" then | ||||
| 		for i = 1, #group do | ||||
| 			food.support(group[i], item) | ||||
| 		end | ||||
| 		return | ||||
| 	end | ||||
| 	if type(item) == "table" then | ||||
| 		for i = 1, #item do | ||||
| 			food.support(group, item[i]) | ||||
| 		end | ||||
| 		return | ||||
| 	end | ||||
|  | ||||
| 	local idx = string.find(item, ":") | ||||
| 	if idx <= 1 then | ||||
| 		error("[Food Error] food.support - error in item name ('" .. item .. "')") | ||||
| 	end | ||||
| 	local mod = string.sub(item, 1, idx - 1) | ||||
|  | ||||
| 	if not minetest.get_modpath(mod) then | ||||
| 		if food.debug then | ||||
| 			print("[Food Debug] Mod '"..mod.."' is not installed") | ||||
| 		end | ||||
| 		return | ||||
| 	end | ||||
|  | ||||
| 	local data = minetest.registered_items[item] | ||||
| 	if not data then | ||||
| 		print("[Food Warning] Item '"..item.."' not found") | ||||
| 		return | ||||
| 	end | ||||
|  | ||||
|  | ||||
| 	food.disable(group) | ||||
|  | ||||
| 	-- Add group | ||||
| 	local g = {} | ||||
| 	if data.groups then | ||||
| 		for k, v in pairs(data.groups) do | ||||
| 			g[k] = v | ||||
| 		end | ||||
| 	end | ||||
| 	g["food_"..group] = 1 | ||||
| 	minetest.override_item(item, {groups = g}) | ||||
| end | ||||
|  | ||||
| function food.disable(name) | ||||
| 	if type(name) == "table" then | ||||
| 		for i = 1, #name do | ||||
| 			food.disable(name[i]) | ||||
| 		end | ||||
| 		return | ||||
| 	end | ||||
| 	food.disabled_modules[name] = true | ||||
| end | ||||
|  | ||||
| function food.disable_if(mod, name) | ||||
| 	if minetest.get_modpath(mod) then | ||||
| 		food.disable(name) | ||||
| 	end | ||||
| end | ||||
|  | ||||
| -- Adds a module | ||||
| function food.module(name, func, ingred) | ||||
| 	if food.disabled_modules[name] then | ||||
| 		return | ||||
| 	end | ||||
| 	if ingred then | ||||
| 		for name, def in pairs(minetest.registered_items) do | ||||
| 			local g = def.groups and def.groups["food_"..name] or 0 | ||||
| 			if g > 0 then | ||||
| 				print("cancelled") | ||||
| 				return | ||||
| 			end | ||||
| 		end | ||||
|  | ||||
| 		if food.debug then | ||||
| 			print("[Food Debug] Registering " .. name .. " fallback definition") | ||||
| 		end | ||||
| 	elseif food.debug then | ||||
| 		print("[Food Debug] Module " .. name) | ||||
| 	end | ||||
| 	func() | ||||
| end | ||||
|  | ||||
| -- Checks for hunger mods to register food on | ||||
| function food.item_eat(amt) | ||||
| 	if minetest.get_modpath("diet") and diet and diet.item_eat then | ||||
| 		return diet.item_eat(amt) | ||||
| 	elseif minetest.get_modpath("hud") and hud and hud.item_eat then | ||||
| 		return hud.item_eat(amt) | ||||
| 	elseif minetest.get_modpath("hbhunger") then | ||||
| 		if hbhunger and hbhunger.item_eat then -- hbhunger is nil when world is loaded with damage disabled | ||||
| 			return hbhunger.item_eat(amt) | ||||
| 		end | ||||
| 		return function(...) end | ||||
| 	elseif minetest.get_modpath("hunger") and hunger and hunger.item_eat then | ||||
| 		return hunger.item_eat(amt) | ||||
| 	else | ||||
| 		return minetest.item_eat(amt) | ||||
| 	end | ||||
| end | ||||
|  | ||||
| -- Registers craft item or node depending on settings | ||||
| function food.register(name, data, mod) | ||||
| 	if (minetest.setting_getbool("food_use_2d") or (mod ~= nil and minetest.setting_getbool("food_"..mod.."_use_2d"))) then | ||||
| 		minetest.register_craftitem(name,{ | ||||
| 			description = data.description, | ||||
| 			inventory_image = data.inventory_image, | ||||
| 			groups = data.groups, | ||||
| 			on_use = data.on_use | ||||
| 		}) | ||||
| 	else | ||||
| 		local newdata = { | ||||
| 			description = data.description, | ||||
| 			tiles = data.tiles, | ||||
| 			groups = data.groups, | ||||
| 			on_use = data.on_use, | ||||
| 			walkable = false, | ||||
| 			sunlight_propagates = true, | ||||
| 			drawtype = "nodebox", | ||||
| 			paramtype = "light", | ||||
| 			node_box = data.node_box | ||||
| 		} | ||||
| 		if (minetest.setting_getbool("food_2d_inv_image")) then | ||||
| 			newdata.inventory_image = data.inventory_image | ||||
| 		end | ||||
| 		minetest.register_node(name,newdata) | ||||
| 	end | ||||
| end | ||||
|  | ||||
| -- Allows for overriding in the future | ||||
| function food.craft(craft) | ||||
| 	minetest.register_craft(craft) | ||||
| end | ||||
|  | ||||
| @@ -1,42 +0,0 @@ | ||||
| The Food Mod | ||||
| ============ | ||||
|  | ||||
| This is the main mod in the food mod collection. | ||||
|  | ||||
| Version 2.3 | ||||
|  | ||||
| The Aims | ||||
| -------- | ||||
|  | ||||
| All content should follow these aims: | ||||
| * Basis for expansion - supplies a framework of ingredients for other mods to build upon | ||||
| * Mod support without dependancies - this allows flexibility for the user | ||||
| * Minetest-game worthy - (Minimalism) This mod only contains traditional foods - such as cakes, soups and bread. | ||||
|  | ||||
| Documentation | ||||
| ------------- | ||||
|  | ||||
| Recipe guide: https://www.dropbox.com/s/tsvjmobv9n3isu0/food_crafting.pdf?dl=1 | ||||
|  | ||||
| Expansion Packs | ||||
| --------------- | ||||
|  | ||||
| There are expansion mods available. Just install them in a mod folder, and everything should be fine. | ||||
|  | ||||
| * Sweet Foods - https://github.com/rubenwardy/food_sweet | ||||
| * Modern food (Needs updating) - burgers, soft drinks, pop corn, coffee, etc | ||||
|  | ||||
| Licensing | ||||
| --------- | ||||
|  | ||||
| Created by rubenwardy | ||||
| License for code: GPL 3.0 or later. | ||||
| License for textures: CC-BY-SA | ||||
|  | ||||
| Exceptions: | ||||
|  | ||||
| * Baked potato texture by Doc, WTFPL | ||||
| * Dough, flour and wheat textures from default farming mod, WTFPL | ||||
| * Egg and milk textures from Mobf, CC BY SA | ||||
|  | ||||
| Have I missed out credit? Please tell me. | ||||
| @@ -1,16 +0,0 @@ | ||||
| food | ||||
| animalmaterials? | ||||
| bushes_classic? | ||||
| default? | ||||
| docfarming? | ||||
| farming? | ||||
| farming_plus? | ||||
| intllib? | ||||
| jkanimals? | ||||
| jkfarming? | ||||
| my_mobs? | ||||
| mobs? | ||||
| mobfcooking? | ||||
| plantlib? | ||||
| veggies? | ||||
| vessels? | ||||
| @@ -1 +0,0 @@ | ||||
| The largest supporting food mod for Minetest. Adds soups, cakes, bakes and juices. | ||||
| @@ -1,287 +0,0 @@ | ||||
| -- FOOD MOD | ||||
| -- A mod written by rubenwardy that adds | ||||
| -- food to the minetest game | ||||
| -- ===================================== | ||||
| -- >> food_basic/ingredients.lua | ||||
| -- Fallback ingredients | ||||
| -- ===================================== | ||||
|  | ||||
| -- Boilerplate to support localized strings if intllib mod is installed. | ||||
| local S = 0 | ||||
| if rawget(_G, "intllib") then | ||||
| 	dofile(minetest.get_modpath("intllib").."/intllib.lua") | ||||
| 	S = intllib.Getter(minetest.get_current_modname()) | ||||
| else | ||||
| 	S = function ( s ) return s end | ||||
| end | ||||
|  | ||||
| food.module("wheat", function() | ||||
| 	minetest.register_craftitem(":food:wheat", { | ||||
| 		description = S("Wheat"), | ||||
| 		inventory_image = "food_wheat.png", | ||||
| 		groups = {food_wheat=1} | ||||
| 	}) | ||||
|  | ||||
| 	food.craft({ | ||||
| 		output = "food:wheat", | ||||
| 		recipe = { | ||||
| 			{"default:dry_shrub"}, | ||||
| 		} | ||||
| 	}) | ||||
| end, true) | ||||
|  | ||||
| food.module("flour", function() | ||||
| 	minetest.register_craftitem(":food:flour", { | ||||
| 		description = S("Flour"), | ||||
| 		inventory_image = "food_flour.png", | ||||
| 		groups = {food_flour = 1} | ||||
| 	}) | ||||
| 	food.craft({ | ||||
| 		output = "food:flour", | ||||
| 		recipe = { | ||||
| 			{"group:food_wheat"}, | ||||
| 			{"group:food_wheat"} | ||||
| 		} | ||||
| 	}) | ||||
| end, true) | ||||
|  | ||||
| food.module("potato", function() | ||||
| 	minetest.register_craftitem(":food:potato", { | ||||
| 		description = S("Potato"), | ||||
| 		inventory_image = "food_potato.png", | ||||
| 		groups = {food_potato = 1} | ||||
| 	}) | ||||
| 	food.craft({ | ||||
| 		output = "food:potato", | ||||
| 		recipe = { | ||||
| 			{"default:dirt"}, | ||||
| 			{"default:apple"} | ||||
|  | ||||
| 		} | ||||
| 	}) | ||||
| end, true) | ||||
|  | ||||
| food.module("orange", function() | ||||
| 	minetest.register_craftitem(":food:orange", { | ||||
| 		description = S("Orange"), | ||||
| 		inventory_image = "food_orange.png", | ||||
| 		groups = {food_orange = 1} | ||||
| 	}) | ||||
| 	food.craft({ | ||||
| 		output = "food:orange", | ||||
| 		recipe = { | ||||
| 			{"", "default:desert_sand", ""}, | ||||
| 			{"default:desert_sand", "default:desert_sand", "default:desert_sand"}, | ||||
| 			{"", "default:desert_sand", ""} | ||||
| 		} | ||||
| 	}) | ||||
| end, true) | ||||
|  | ||||
| food.module("tomato", function() | ||||
| 	minetest.register_craftitem(":food:tomato", { | ||||
| 		description = S("Tomato"), | ||||
| 		inventory_image = "food_tomato.png", | ||||
| 		groups = {food_tomato = 1} | ||||
| 	}) | ||||
| 	food.craft({ | ||||
| 		output = "food:tomato", | ||||
| 		recipe = { | ||||
| 			{"", "default:desert_sand", ""}, | ||||
| 			{"default:desert_sand", "", "default:desert_sand"}, | ||||
| 			{"", "default:desert_sand", ""} | ||||
| 		} | ||||
| 	}) | ||||
| end, true) | ||||
|  | ||||
| food.module("carrot", function() | ||||
| 	minetest.register_craftitem(":food:carrot", { | ||||
| 		description = S("Carrot"), | ||||
| 		inventory_image = "food_carrot.png", | ||||
| 		groups = {food_carrot=1}, | ||||
| 		on_use = food.item_eat(3) | ||||
| 	}) | ||||
| 	food.craft({ | ||||
| 		output = "food:carrot", | ||||
| 		recipe = { | ||||
| 			{"default:apple", "default:apple", "default:apple"}, | ||||
| 		} | ||||
| 	}) | ||||
| end, true) | ||||
|  | ||||
| food.module("milk", function() | ||||
| 	minetest.register_craftitem(":food:milk", { | ||||
| 		description = S("Milk"), | ||||
| 		image = "food_milk.png", | ||||
| 		on_use = food.item_eat(1), | ||||
| 		groups = { eatable=1, food_milk = 1 }, | ||||
| 		stack_max=10 | ||||
| 	}) | ||||
| 	food.craft({ | ||||
| 		output = "food:milk", | ||||
| 		recipe = { | ||||
| 			{"default:sand"}, | ||||
| 			{"bucket:bucket_water"} | ||||
| 		}, | ||||
| 		replacements = {{"bucket:bucket_water", "bucket:bucket_empty"}}, | ||||
| 	}) | ||||
| end, true) | ||||
|  | ||||
| food.module("egg", function() | ||||
| 	minetest.register_craftitem(":food:egg", { | ||||
| 		description = S("Egg"), | ||||
| 		inventory_image = "food_egg.png", | ||||
| 		groups = {food_egg=1} | ||||
| 	}) | ||||
| 	food.craft({ | ||||
| 		output = "food:egg", | ||||
| 		recipe = { | ||||
| 			{"", "default:sand", ""}, | ||||
| 			{"default:sand", "", "default:sand"}, | ||||
| 			{"", "default:sand", ""} | ||||
| 		} | ||||
| 	}) | ||||
| end, true) | ||||
|  | ||||
| food.module("cocoa", function() | ||||
| 	minetest.register_craftitem(":food:cocoa", { | ||||
| 		description = S("Cocoa Bean"), | ||||
| 		inventory_image = "food_cocoa.png", | ||||
| 		groups = {food_cocoa=1} | ||||
| 	}) | ||||
| 	food.craft({ | ||||
| 		output = "food:cocoa", | ||||
| 		recipe = { | ||||
| 			{"", "default:apple", ""}, | ||||
| 			{"default:apple", "", "default:apple"}, | ||||
| 			{"", "default:apple", ""} | ||||
| 		} | ||||
| 	}) | ||||
| end, true) | ||||
|  | ||||
| food.module("meat", function() | ||||
| 	minetest.register_craftitem(":food:meat", { | ||||
| 		description = S("Venison"), | ||||
| 		inventory_image = "food_meat.png", | ||||
| 		groups = {food_meat=1, food_chicken=1} | ||||
| 	}) | ||||
| 	food.craft({ | ||||
| 		type = "cooking", | ||||
| 		output = "food:meat", | ||||
| 		recipe = "group:food_meat_raw", | ||||
| 		cooktime = 30 | ||||
| 	}) | ||||
|  | ||||
| 	if not minetest.get_modpath("animalmaterials") then | ||||
| 		minetest.register_craftitem(":food:meat_raw", { | ||||
| 			description = S("Raw meat"), | ||||
| 			image = "food_meat_raw.png", | ||||
| 			on_use = food.item_eat(1), | ||||
| 			groups = { meat=1, eatable=1, food_meat_raw=1 }, | ||||
| 			stack_max=25 | ||||
| 		}) | ||||
| 		food.craft({ | ||||
| 			output = "food:meat_raw", | ||||
| 			recipe = { | ||||
| 				{"default:apple"}, | ||||
| 				{"default:dirt"} | ||||
| 			} | ||||
| 		}) | ||||
| 	end | ||||
| end, true) | ||||
|  | ||||
| food.module("sugar", function() | ||||
| 	minetest.register_craftitem(":food:sugar", { | ||||
| 		description = S("Sugar"), | ||||
| 		inventory_image = "food_sugar.png", | ||||
| 		groups = {food_sugar=1} | ||||
| 	}) | ||||
|  | ||||
| 	minetest.register_craft({ | ||||
| 		output = "food:sugar 20", | ||||
| 		recipe = { | ||||
| 			{"default:papyrus"}, | ||||
| 		} | ||||
| 	}) | ||||
| end, true) | ||||
|  | ||||
| food.module("chocolate_powder", function() | ||||
| 	minetest.register_craftitem(":food:chocolate_powder", { | ||||
| 		description = S("Chocolate Powder"), | ||||
| 		inventory_image = "food_chocolate_powder.png", | ||||
| 		groups = {food_choco_powder = 1} | ||||
| 	}) | ||||
| 	food.craft({ | ||||
| 		output = "food:chocolate_powder 16", | ||||
| 		recipe = { | ||||
| 			{"group:food_cocoa","group:food_cocoa","group:food_cocoa"}, | ||||
| 			{"group:food_cocoa","group:food_cocoa","group:food_cocoa"}, | ||||
| 			{"group:food_cocoa","group:food_cocoa","group:food_cocoa"} | ||||
| 		} | ||||
| 	}) | ||||
| end, true) | ||||
|  | ||||
| food.module("pasta", function() | ||||
| 	minetest.register_craftitem(":food:pasta",{ | ||||
| 		description = S("Pasta"), | ||||
| 		inventory_image = "food_pasta.png", | ||||
| 		groups = {food_pasta=1} | ||||
| 	}) | ||||
| 	food.craft({ | ||||
| 		output = "food:pasta 4", | ||||
| 		type = "shapeless", | ||||
| 		recipe = {"group:food_flour","group:food_egg","group:food_egg"} | ||||
| 	}) | ||||
| end, true) | ||||
|  | ||||
| food.module("bowl", function() | ||||
| 	minetest.register_craftitem(":food:bowl",{ | ||||
| 		description = S("Bowl"), | ||||
| 		inventory_image = "food_bowl.png", | ||||
| 		groups = {food_bowl=1} | ||||
| 	}) | ||||
| 	food.craft({ | ||||
| 		output = "food:bowl", | ||||
| 		recipe = { | ||||
| 			{"default:clay_lump","","default:clay_lump"}, | ||||
| 			{"","default:clay_lump",""} | ||||
| 		} | ||||
| 	}) | ||||
| end, true) | ||||
|  | ||||
| food.module("butter", function() | ||||
| 	minetest.register_craftitem(":food:butter", { | ||||
| 		description = S("Butter"), | ||||
| 		inventory_image = "food_butter.png", | ||||
| 		groups = {food_butter=1} | ||||
| 	}) | ||||
| 	food.craft({ | ||||
| 		output = "food:butter", | ||||
| 		recipe = { | ||||
| 			{"group:food_milk","group:food_milk"}, | ||||
| 		} | ||||
| 	}) | ||||
| end, true) | ||||
|  | ||||
| food.module("cheese", function() | ||||
| 	minetest.register_craftitem(":food:cheese", { | ||||
| 		description = S("Cheese"), | ||||
| 		inventory_image = "food_cheese.png", | ||||
| 		on_use = food.item_eat(4), | ||||
| 		groups = {food_cheese=1} | ||||
| 	}) | ||||
| 	food.craft({ | ||||
| 		output = "food:cheese", | ||||
| 		recipe = { | ||||
| 			{"group:food_butter","group:food_butter"}, | ||||
| 		} | ||||
| 	}) | ||||
| end, true) | ||||
|  | ||||
| if (minetest.get_modpath("animalmaterials") and not minetest.get_modpath("mobfcooking")) then | ||||
| 	food.craft({ | ||||
| 		type = "cooking", | ||||
| 		output = "food:meat", | ||||
| 		recipe = "animalmaterials:meat_raw", | ||||
| 		cooktime = 30 | ||||
| 	}) | ||||
| end | ||||
| @@ -1,294 +0,0 @@ | ||||
| -- FOOD MOD | ||||
| -- A mod written by rubenwardy that adds | ||||
| -- food to the minetest game | ||||
| -- ===================================== | ||||
| -- >> food_basic/init.lua | ||||
| -- Some basic foods | ||||
| -- ===================================== | ||||
|  | ||||
| minetest.log("action", "Food Mod - Version 2.3") | ||||
|  | ||||
| dofile(minetest.get_modpath("food_basic").."/support.lua") | ||||
| dofile(minetest.get_modpath("food_basic").."/ingredients.lua") | ||||
|  | ||||
| -- Boilerplate to support localized strings if intllib mod is installed. | ||||
| local S = 0 | ||||
| if rawget(_G, "intllib") then | ||||
| 	dofile(minetest.get_modpath("intllib").."/intllib.lua") | ||||
| 	S = intllib.Getter(minetest.get_current_modname()) | ||||
| else | ||||
| 	S = function ( s ) return s end | ||||
| end | ||||
|  | ||||
| -- Register dark chocolate | ||||
| food.module("dark_chocolate", function() | ||||
| 	minetest.register_craftitem(":food:dark_chocolate",{ | ||||
| 		description = S("Dark Chocolate"), | ||||
| 		inventory_image = "food_dark_chocolate.png", | ||||
| 		on_use = food.item_eat(3), | ||||
| 		groups = {food_dark_chocolate=1} | ||||
| 	}) | ||||
| 	food.craft({ | ||||
| 		output = "food:dark_chocolate", | ||||
| 		recipe = { | ||||
| 			{"group:food_cocoa","group:food_cocoa","group:food_cocoa"} | ||||
| 		} | ||||
| 	}) | ||||
| end) | ||||
|  | ||||
| -- Register milk chocolate | ||||
| food.module("milk_chocolate", function() | ||||
| 	minetest.register_craftitem(":food:milk_chocolate",{ | ||||
| 		description = S("Milk Chocolate"), | ||||
| 		inventory_image = "food_milk_chocolate.png", | ||||
| 		on_use = food.item_eat(3), | ||||
| 		groups = {food_milk_chocolate=1} | ||||
| 	}) | ||||
| 	food.craft({ | ||||
| 		output = "food:milk_chocolate", | ||||
| 		recipe = { | ||||
| 				{"","group:food_milk",""}, | ||||
| 				{"group:food_cocoa","group:food_cocoa","group:food_cocoa"} | ||||
| 		} | ||||
| 	}) | ||||
| end) | ||||
|  | ||||
| -- Register baked potato | ||||
| food.module("baked_potato", function() | ||||
| 	minetest.register_craftitem(":food:baked_potato", { | ||||
| 		description = S("Baked Potato"), | ||||
| 		inventory_image = "food_baked_potato.png", | ||||
| 		on_use = food.item_eat(6), | ||||
| 	}) | ||||
| 	food.craft({ | ||||
| 		type = "cooking", | ||||
| 		output = "food:baked_potato", | ||||
| 		recipe = "group:food_potato", | ||||
| 	}) | ||||
| end) | ||||
|  | ||||
| -- Register pasta bake | ||||
| food.module("pasta_bake", function() | ||||
| 	minetest.register_craftitem(":food:pasta_bake",{ | ||||
| 		description = S("Pasta Bake"), | ||||
| 		inventory_image = "food_pasta_bake.png", | ||||
| 		on_use = food.item_eat(4), | ||||
| 		groups = {food=3} | ||||
| 	}) | ||||
| 	minetest.register_craftitem(":food:pasta_bake_raw",{ | ||||
| 		description = S("Raw Pasta Bake"), | ||||
| 		inventory_image = "food_pasta_bake_raw.png", | ||||
| 	}) | ||||
| 	food.craft({ | ||||
| 		output = "food:pasta_bake", | ||||
| 		type = "cooking", | ||||
| 	 	recipe = "food:pasta_bake_raw" | ||||
| 	}) | ||||
| 	food.craft({ | ||||
| 		output = "food:pasta_bake_raw", | ||||
| 	 	recipe = { | ||||
| 			{"group:food_cheese"}, | ||||
| 			{"group:food_pasta"}, | ||||
| 			{"group:food_bowl"} | ||||
| 		} | ||||
| 	}) | ||||
| end) | ||||
|  | ||||
| -- Register Soups | ||||
| local soups = { | ||||
| 	{"tomato", "tomato"}, | ||||
| 	{"chicken", "meat"} | ||||
| } | ||||
| for i=1, #soups do | ||||
| 	local flav = soups[i] | ||||
| 	food.module("soup_"..flav[1], function() | ||||
| 		minetest.register_craftitem(":food:soup_"..flav[1],{ | ||||
| 			description = S(flav[1].." Soup"), | ||||
| 			inventory_image = "food_soup_"..flav[1]..".png", | ||||
| 			on_use = food.item_eat(4), | ||||
| 			groups = {food=3} | ||||
| 		}) | ||||
| 		minetest.register_craftitem(":food:soup_"..flav[1].."_raw",{ | ||||
| 			description = S("Uncooked ".. flav[1].." Soup"), | ||||
| 			inventory_image = "food_soup_"..flav[1].."_raw.png", | ||||
|  | ||||
| 		}) | ||||
| 		food.craft({ | ||||
| 			type = "cooking", | ||||
| 			output = "food:soup_"..flav[1], | ||||
| 			recipe = "food:soup_"..flav[1].."_raw", | ||||
| 		}) | ||||
| 		food.craft({ | ||||
| 			output = "food:soup_"..flav[1].."_raw", | ||||
| 			recipe = { | ||||
| 				{"", "", ""}, | ||||
| 				{"bucket:bucket_water", "group:food_"..flav[2], "bucket:bucket_water"}, | ||||
| 				{"", "group:food_bowl", ""}, | ||||
| 			}, | ||||
| 			replacements = {{"bucket:bucket_water", "bucket:bucket_empty"},{"bucket:bucket_water", "bucket:bucket_empty"}} | ||||
| 		}) | ||||
| 	end) | ||||
| end | ||||
|  | ||||
| -- Juices | ||||
| local juices = {"apple", "orange", "cactus"} | ||||
| for i=1, #juices do | ||||
| 	local flav = juices[i] | ||||
| 	food.module(flav.."_juice", function() | ||||
| 		minetest.register_craftitem(":food:"..flav.."_juice", { | ||||
| 			description = S(flav.." Juice"), | ||||
| 			inventory_image = "food_"..flav.."_juice.png", | ||||
| 			on_use = food.item_eat(2), | ||||
| 		}) | ||||
| 		food.craft({ | ||||
| 			output = "food:"..flav.."_juice 4", | ||||
| 			recipe = { | ||||
| 				{"","",""}, | ||||
| 				{"","group:food_"..flav,""}, | ||||
| 				{"","group:food_cup",""}, | ||||
| 			} | ||||
| 		}) | ||||
| 	end) | ||||
| end | ||||
|  | ||||
| food.module("rainbow_juice", function() | ||||
| 	minetest.register_craftitem(":food:rainbow_juice", { | ||||
| 		description = S("Rainbow Juice"), | ||||
| 		inventory_image = "food_rainbow_juice.png", | ||||
| 		on_use = food.item_eat(20), | ||||
| 	}) | ||||
|  | ||||
| 	food.craft({ | ||||
| 		output = "food:rainbow_juice 99", | ||||
| 		recipe = { | ||||
| 			{"","",""}, | ||||
| 			{"","default:nyancat_rainbow",""}, | ||||
| 			{"","group:food_cup",""}, | ||||
| 		} | ||||
| 	}) | ||||
| end) | ||||
|  | ||||
| food.cake_box = { | ||||
| 	type = "fixed", | ||||
| 	fixed = { | ||||
| 		{-0.250000,-0.500000,-0.296880,0.250000,-0.250000,0.312502}, | ||||
| 		{-0.309375,-0.500000,-0.250000,0.309375,-0.250000,0.250000}, | ||||
| 		{-0.250000,-0.250000,-0.250000,0.250000,-0.200000,0.250000} | ||||
| 	} | ||||
| } | ||||
|  | ||||
| -- Register cakes | ||||
| food.module("cake", function() | ||||
| 	minetest.register_node(":food:cake", { | ||||
| 		description = S("Cake"), | ||||
| 		on_use = food.item_eat(4), | ||||
| 		groups={food=3,crumbly=3}, | ||||
| 		tiles = { | ||||
| 			"food_cake_texture.png", | ||||
| 			"food_cake_texture.png", | ||||
| 			"food_cake_texture_side.png", | ||||
| 			"food_cake_texture_side.png", | ||||
| 			"food_cake_texture_side.png", | ||||
| 			"food_cake_texture_side.png" | ||||
| 		}, | ||||
| 		walkable = false, | ||||
| 		sunlight_propagates = true, | ||||
| 		drawtype="nodebox", | ||||
| 		paramtype = "light", | ||||
| 		node_box = food.cake_box | ||||
| 	}) | ||||
| 	food.craft({ | ||||
| 		type = "cooking", | ||||
| 		output = "food:cake", | ||||
| 		recipe = "food:cakemix_plain", | ||||
| 		cooktime = 10, | ||||
| 	}) | ||||
| 	minetest.register_craftitem(":food:cakemix_plain",{ | ||||
| 		description = S("Cake Mix"), | ||||
| 		inventory_image = "food_cakemix_plain.png", | ||||
| 	}) | ||||
| 	minetest.register_craft({ | ||||
| 		output = "food:cakemix_plain", | ||||
| 		recipe = { | ||||
| 			{"group:food_flour","group:food_sugar","group:food_egg"}, | ||||
| 		} | ||||
| 	}) | ||||
| end) | ||||
|  | ||||
|  | ||||
| food.module("cake_choco", function() | ||||
| 	minetest.register_node(":food:cake_choco", { | ||||
| 		description = S("Chocolate Cake"), | ||||
| 		on_use = food.item_eat(4), | ||||
| 		groups={food=3,crumbly=3}, | ||||
| 		tiles = { | ||||
| 			"food_cake_choco_texture.png", | ||||
| 			"food_cake_choco_texture.png", | ||||
| 			"food_cake_choco_texture_side.png", | ||||
| 			"food_cake_choco_texture_side.png", | ||||
| 			"food_cake_choco_texture_side.png", | ||||
| 			"food_cake_choco_texture_side.png" | ||||
| 		}, | ||||
| 		walkable = false, | ||||
| 		sunlight_propagates = true, | ||||
| 		drawtype="nodebox", | ||||
| 		paramtype = "light", | ||||
| 		node_box = food.cake_box | ||||
| 	}) | ||||
| 	food.craft({ | ||||
| 		type = "cooking", | ||||
| 		output = "food:cake_choco", | ||||
| 		recipe = "food:cakemix_choco", | ||||
| 		cooktime = 10, | ||||
| 	}) | ||||
| 	minetest.register_craftitem(":food:cakemix_choco",{ | ||||
| 		description = S("Chocolate Cake Mix"), | ||||
| 		inventory_image = "food_cakemix_choco.png", | ||||
| 	}) | ||||
| 	food.craft({ | ||||
| 		output = "food:cakemix_choco", | ||||
| 		recipe = { | ||||
| 			{"","group:food_choco_powder",""}, | ||||
| 			{"group:food_flour","group:food_sugar","group:food_egg"}, | ||||
| 		} | ||||
| 	}) | ||||
| end) | ||||
|  | ||||
| food.module("cake_carrot", function() | ||||
| 	minetest.register_node(":food:cake_carrot", { | ||||
| 		description = S("Carrot Cake"), | ||||
| 		on_use = food.item_eat(4), | ||||
| 		groups={food=3,crumbly=3}, | ||||
| 		walkable = false, | ||||
| 		sunlight_propagates = true, | ||||
| 		tiles = { | ||||
| 			"food_cake_carrot_texture.png", | ||||
| 			"food_cake_carrot_texture.png", | ||||
| 			"food_cake_carrot_texture_side.png", | ||||
| 			"food_cake_carrot_texture_side.png", | ||||
| 			"food_cake_carrot_texture_side.png", | ||||
| 			"food_cake_carrot_texture_side.png" | ||||
| 		}, | ||||
| 		drawtype="nodebox", | ||||
| 		paramtype = "light", | ||||
| 		node_box = food.cake_box | ||||
| 	}) | ||||
| 	food.craft({ | ||||
| 		type = "cooking", | ||||
| 		output = "food:cake_carrot", | ||||
| 		recipe = "food:cakemix_carrot", | ||||
| 		cooktime = 10, | ||||
| 	}) | ||||
| 	minetest.register_craftitem(":food:cakemix_carrot",{ | ||||
| 		description = S("Carrot Cake Mix"), | ||||
| 		inventory_image = "food_cakemix_carrot.png", | ||||
| 	}) | ||||
| 	food.craft({ | ||||
| 		output = "food:cakemix_carrot", | ||||
| 		recipe = { | ||||
| 			{"","group:food_carrot",""}, | ||||
| 			{"group:food_flour","group:food_sugar","group:food_egg"}, | ||||
| 		} | ||||
| 	}) | ||||
| end) | ||||
|  | ||||
| @@ -1,37 +0,0 @@ | ||||
| # Translation by Xanthin and hawkril | ||||
|  | ||||
| Wheat = Weizen | ||||
| Flour = Mehl | ||||
| Potato = Kartoffel | ||||
| Tomato = Tomate | ||||
| Carrot = Karotte | ||||
| Orange = | ||||
| Milk = Milch | ||||
| Egg = Ei | ||||
| Cocoa Bean = Kakaobohne | ||||
| Raw meat = rohes Fleisch | ||||
| Venison = Wildbret | ||||
| Sugar = Zucker | ||||
| Chocolate Powder = Schokoladenpulver | ||||
| Dark Chocolate = Dunkle Schokolade | ||||
| Milk Chocolate = Vollmilchschokolade | ||||
| Pasta = Nudeln | ||||
| Bowl = Schuessel | ||||
| Butter = Butter | ||||
| Cheese = Kaese | ||||
| Baked Potato = Ofenkartoffel | ||||
| Pasta Bake = Nudelauflauf | ||||
| Raw Pasta Bake = Ungekochter Nudelauflauf | ||||
| chicken Soup = Huehnersuppe | ||||
| tomato Soup = Tomatensuppe | ||||
| Uncooked tomato Soup = Ungekochte Tomatensuppe | ||||
| Uncooked chicken Soup = Ungekochte Huehnersuppe | ||||
| apple Juice = Apfelsaft | ||||
| cactus Juice = Kaktussaft | ||||
| Rainbow Juice = Regenbogensaft | ||||
| Cake = Kuchen | ||||
| Chocolate Cake = Schokoladenkuchen | ||||
| Carrot Cake = Karottenkuchen | ||||
| Cake Mix = Backmischung | ||||
| Chocolate Cake Mix = Backmischung fuer Schokoladenkuchen | ||||
| Carrot Cake Mix = Backmischung fuer Karottenkuchen | ||||
| @@ -1,40 +0,0 @@ | ||||
| # Traduction française / French translation | ||||
|  | ||||
| Wheat = Blé | ||||
| Flour = Farine | ||||
| Potato = Pomme de terre | ||||
| Tomato = Tomate | ||||
| Carrot = Carotte | ||||
| Orange = Orange | ||||
| Milk = Lait | ||||
| Egg = Oeuf | ||||
| Cocoa Bean = Fève de caco | ||||
| Raw meat = Viande crue | ||||
| Venison = Venaison | ||||
| Sugar = Sucre | ||||
| Chocolate Powder = Poudre de chocolat | ||||
| Dark Chocolate = Chocolat noir | ||||
| Milk Chocolate = Chocolat blanc | ||||
| Pasta = Pâtes | ||||
| Bowl = Bol | ||||
| Butter = Beurre | ||||
| Cheese = Fromage | ||||
| Baked Potato = Pomme de terre cuite | ||||
| Pasta Bake = Plat de pâtes | ||||
| Raw Pasta Bake = Plat de pâtes crues | ||||
| chicken Soup = Soupe de poulet | ||||
| tomato Soup = Soupe de tomate | ||||
| Uncooked tomato Soup = Soupe de tomate crue | ||||
| Uncooked chicken Soup = Soupe de poulet crue | ||||
| apple Juice = Jus de pomme | ||||
| cactus Juice = Jus de cactus | ||||
| Rainbow Juice = Jus d'arc-en-ciel | ||||
| Orange Juice = Jus d'orange | ||||
| Cake = Gâteau | ||||
| Chocolate Cake = Gâteau au chocolat | ||||
| Carrot Cake = Gâteau à la carotte | ||||
| Cheese cake = Gâteau au fromage | ||||
| Cake Mix = Pâte pour gâteau | ||||
| Chocolate Cake Mix = Pâte pour gâteau au chocolat | ||||
| Carrot Cake Mix = Pâte pour gâteau à la carotte | ||||
| Cheese Cake Mix = Pâte pour gâteau au fromage | ||||
| @@ -1,40 +0,0 @@ | ||||
| # template | ||||
|  | ||||
| Wheat = | ||||
| Flour = | ||||
| Potato = | ||||
| Tomato = | ||||
| Carrot = | ||||
| Orange = | ||||
| Milk = | ||||
| Egg = | ||||
| Cocoa Bean = | ||||
| Raw meat = | ||||
| Venison = | ||||
| Sugar = | ||||
| Chocolate Powder = | ||||
| Dark Chocolate = | ||||
| Milk Chocolate = | ||||
| Pasta = | ||||
| Bowl = | ||||
| Butter = | ||||
| Cheese = | ||||
| Baked Potato = | ||||
| Pasta Bake = | ||||
| Raw Pasta Bake = | ||||
| chicken Soup = | ||||
| tomato Soup = | ||||
| Uncooked tomato Soup = | ||||
| Uncooked chicken Soup = | ||||
| apple Juice = | ||||
| cactus Juice = | ||||
| Rainbow Juice = | ||||
| Orange Juice = | ||||
| Cake = | ||||
| Chocolate Cake = | ||||
| Carrot Cake = | ||||
| Cheese cake = | ||||
| Cake Mix = | ||||
| Chocolate Cake Mix = | ||||
| Carrot Cake Mix = | ||||
| Cheese Cake Mix = | ||||
| @@ -1,83 +0,0 @@ | ||||
| -- FOOD MOD | ||||
| -- A mod written by rubenwardy that adds | ||||
| -- food to the minetest game | ||||
| -- ===================================== | ||||
| -- >> food/support.lua | ||||
| -- Support external mods | ||||
| -- ===================================== | ||||
|  | ||||
| -- The following ingredient list is licensed under WTFPL | ||||
| -- You may use the list in your mod. I am doing this to | ||||
| -- make it easier for mods to support lots of others - | ||||
| -- good for the end user | ||||
|  | ||||
| -- Add support for other mods | ||||
| food.support("cocoa", "farming_plus:cocoa_bean") | ||||
| food.support("cup", "vessels:drinking_glass") | ||||
| food.support("cactus", "default:cactus") | ||||
| food.support("apple", "default:apple") | ||||
| food.support("orange", "farming_plus:orange_item") | ||||
| food.support("potato", { | ||||
| 	"docfarming:potato", | ||||
| 	"veggies:potato", | ||||
| 	"farming_plus:potato_item" | ||||
| }) | ||||
| food.support("tomato", { | ||||
| 	"farming_plus:tomato_item", | ||||
| 	"plantlib:tomato" | ||||
| }) | ||||
| food.support("carrot", { | ||||
| 	"farming_plus:carrot_item", | ||||
| 	"docfarming:carrot", | ||||
| 	"plantlib:carrot", | ||||
| 	"jkfarming:carrot" | ||||
| }) | ||||
| food.support("milk", { | ||||
| 	"animalmaterials:milk", | ||||
| 	"my_mobs:milk_glass_cup", | ||||
| 	"jkanimals:bucket_milk", | ||||
| 	"mobs:bucket_milk" | ||||
| }) | ||||
| food.support("egg", { | ||||
| 	"animalmaterials:egg", | ||||
| 	"animalmaterials:egg_big", | ||||
| 	"jkanimals:egg", | ||||
| 	"mobs:egg" | ||||
| }) | ||||
| food.support("meat", { | ||||
| 	"mobs:meat", | ||||
| 	"jkanimals:meat", | ||||
| 	"mobfcooking:cooked_pork", | ||||
| 	"mobfcooking:cooked_beef", | ||||
| 	"mobfcooking:cooked_chicken", | ||||
| 	"mobfcooking:cooked_lamb", | ||||
| 	"mobfcooking:cooked_venison" | ||||
| }) | ||||
| food.support("sugar", { | ||||
| 	"jkfarming:sugar", | ||||
| 	"bushes:sugar" | ||||
| }) | ||||
|  | ||||
| if farming and farming.mod == "redo" then | ||||
| 	food.support("wheat", "farming:wheat") | ||||
| 	food.support("flour", "farming:flour") | ||||
| 	food.support("carrot", "farming:carrot") | ||||
| 	food.support("potato", "farming:potato") | ||||
| 	food.support("tomato", "farming:tomato") | ||||
| 	food.support("cocoa", "farming:cocoa_beans") | ||||
| 	food.support("dark_chocolate", "farming:chocolate_dark") | ||||
| 	food.support("sugar", "farming:sugar") | ||||
| 	food.support("cup", "farming:drinking_cup") | ||||
| 	food.disable_if("farming", "baked_potato") | ||||
| else | ||||
| 	food.support("wheat", "farming:wheat") | ||||
| 	food.support("flour", "farming:flour") | ||||
| end | ||||
|  | ||||
| if minetest.get_modpath("mtfoods") then | ||||
| 	food.support("strawberry", "farming_plus:strawberry_item") | ||||
| 	food.support("strawberry", "plantlib:strawberry") | ||||
| 	food.support("strawberry", "bushes:strawberry") | ||||
| 	food.support("rhubarb", "farming_plus:rhubarb_item") | ||||
| end | ||||
|  | ||||
| Before Width: | Height: | Size: 469 B | 
| Before Width: | Height: | Size: 318 B | 
| Before Width: | Height: | Size: 389 B | 
| Before Width: | Height: | Size: 124 B | 
| Before Width: | Height: | Size: 178 B | 
| Before Width: | Height: | Size: 195 B | 
| Before Width: | Height: | Size: 471 B | 
| Before Width: | Height: | Size: 615 B | 
| Before Width: | Height: | Size: 786 B | 
| Before Width: | Height: | Size: 780 B | 
| Before Width: | Height: | Size: 712 B | 
| Before Width: | Height: | Size: 707 B | 
| Before Width: | Height: | Size: 758 B | 
| Before Width: | Height: | Size: 758 B | 
| Before Width: | Height: | Size: 216 B | 
| Before Width: | Height: | Size: 213 B | 
| Before Width: | Height: | Size: 213 B | 
| Before Width: | Height: | Size: 151 B | 
| Before Width: | Height: | Size: 487 B | 
| Before Width: | Height: | Size: 137 B | 
| Before Width: | Height: | Size: 108 B | 
| Before Width: | Height: | Size: 144 B | 
| Before Width: | Height: | Size: 672 B | 
| Before Width: | Height: | Size: 204 B | 
| Before Width: | Height: | Size: 158 B | 
| Before Width: | Height: | Size: 174 B | 
| Before Width: | Height: | Size: 559 B | 
| Before Width: | Height: | Size: 144 B | 
| Before Width: | Height: | Size: 487 B | 
| Before Width: | Height: | Size: 560 B | 
| Before Width: | Height: | Size: 176 B | 
| Before Width: | Height: | Size: 239 B | 
| Before Width: | Height: | Size: 214 B | 
| Before Width: | Height: | Size: 236 B | 
| Before Width: | Height: | Size: 347 B | 
| Before Width: | Height: | Size: 198 B | 
| Before Width: | Height: | Size: 183 B | 
| Before Width: | Height: | Size: 195 B | 
| Before Width: | Height: | Size: 183 B | 
| Before Width: | Height: | Size: 176 B | 
| Before Width: | Height: | Size: 2.0 KiB | 
| Before Width: | Height: | Size: 201 B | 
| Before Width: | Height: | Size: 563 B |