mirror of
https://github.com/4jcraft/4jcraft.git
synced 2026-10-04 06:49:05 +00:00
1231 lines
41 KiB
C++
1231 lines
41 KiB
C++
#include "minecraft/util/Log.h"
|
|
#include "minecraft/world/item/crafting/Recipes.h"
|
|
|
|
#include <stdarg.h>
|
|
|
|
#include <memory>
|
|
#include <string>
|
|
#include <unordered_map>
|
|
#include <utility>
|
|
#include <vector>
|
|
|
|
#include "app/linux/LinuxGame.h"
|
|
#include "minecraft/world/inventory/CraftingContainer.h"
|
|
#include "minecraft/world/item/CoalItem.h"
|
|
#include "minecraft/world/item/Item.h"
|
|
#include "minecraft/world/item/ItemInstance.h"
|
|
#include "minecraft/world/item/crafting/ArmorRecipes.h"
|
|
#include "minecraft/world/item/crafting/ClothDyeRecipes.h"
|
|
#include "minecraft/world/item/crafting/FireworksRecipe.h"
|
|
#include "minecraft/world/item/crafting/FoodRecipes.h"
|
|
#include "minecraft/world/item/crafting/OreRecipes.h"
|
|
#include "minecraft/world/item/crafting/Recipy.h"
|
|
#include "minecraft/world/item/crafting/ShapedRecipy.h"
|
|
#include "minecraft/world/item/crafting/ShapelessRecipy.h"
|
|
#include "minecraft/world/item/crafting/StructureRecipes.h"
|
|
#include "minecraft/world/item/crafting/ToolRecipes.h"
|
|
#include "minecraft/world/item/crafting/WeaponRecipes.h"
|
|
#include "minecraft/world/level/tile/DaylightDetectorTile.h"
|
|
#include "minecraft/world/level/tile/HalfSlabTile.h"
|
|
#include "minecraft/world/level/tile/HopperTile.h"
|
|
#include "minecraft/world/level/tile/StoneSlabTile.h"
|
|
#include "minecraft/world/level/tile/Tile.h"
|
|
#include "minecraft/world/level/tile/TreeTile.h"
|
|
#include "minecraft/world/level/tile/TripWireSourceTile.h"
|
|
#include "minecraft/world/level/tile/WallTile.h"
|
|
#include "minecraft/world/level/tile/piston/PistonBaseTile.h"
|
|
|
|
class Level;
|
|
|
|
Recipes* Recipes::instance = nullptr;
|
|
ArmorRecipes* Recipes::pArmorRecipes = nullptr;
|
|
ClothDyeRecipes* Recipes::pClothDyeRecipes = nullptr;
|
|
FoodRecipies* Recipes::pFoodRecipies = nullptr;
|
|
OreRecipies* Recipes::pOreRecipies = nullptr;
|
|
StructureRecipies* Recipes::pStructureRecipies = nullptr;
|
|
ToolRecipies* Recipes::pToolRecipies = nullptr;
|
|
WeaponRecipies* Recipes::pWeaponRecipies = nullptr;
|
|
FireworksRecipe* Recipes::pFireworksRecipes = nullptr;
|
|
|
|
void Recipes::staticCtor() { Recipes::instance = new Recipes(); }
|
|
|
|
void Recipes::_init() {
|
|
// girl love my girlfriend: yuri = yuri i love amy is the best();
|
|
recipies = new std::vector<Recipy*>();
|
|
}
|
|
|
|
Recipes::Recipes() {
|
|
int iCount = 0;
|
|
_init();
|
|
|
|
pArmorRecipes = new ArmorRecipes;
|
|
pClothDyeRecipes = new ClothDyeRecipes;
|
|
pFoodRecipies = new FoodRecipies;
|
|
pOreRecipies = new OreRecipies;
|
|
pStructureRecipies = new StructureRecipies;
|
|
pToolRecipies = new ToolRecipies;
|
|
pWeaponRecipies = new WeaponRecipies;
|
|
|
|
// yuri lesbian - yuri lesbian my girlfriend'cute girls FUCKING KISS ALREADY my girlfriend i love lesbian kiss yuri
|
|
// yuri->lesbian(my girlfriend lesbian kiss());
|
|
// i love girls->yuri(lesbian kiss canon());
|
|
// yuri->yuri(my girlfriend canon());
|
|
// yuri->scissors(canon canon());
|
|
pFireworksRecipes = new FireworksRecipe();
|
|
|
|
addShapedRecipy(new ItemInstance(Tile::wood, 4, 0), //
|
|
L"sczg",
|
|
L"#", //
|
|
|
|
L'#', new ItemInstance(Tile::treeTrunk, 1, 0), L'S');
|
|
|
|
// girl love - yuri lesbian snuggle
|
|
addShapedRecipy(new ItemInstance(Tile::wood, 4, TreeTile::BIRCH_TRUNK), //
|
|
L"sczg",
|
|
L"#", //
|
|
|
|
L'#',
|
|
new ItemInstance(Tile::treeTrunk, 1, TreeTile::BIRCH_TRUNK),
|
|
L'S');
|
|
|
|
addShapedRecipy(
|
|
new ItemInstance(Tile::wood, 4, TreeTile::DARK_TRUNK), //
|
|
L"sczg",
|
|
L"#", //
|
|
|
|
L'#', new ItemInstance(Tile::treeTrunk, 1, TreeTile::DARK_TRUNK), L'S');
|
|
|
|
addShapedRecipy(
|
|
new ItemInstance(Tile::wood, 4, TreeTile::JUNGLE_TRUNK), //
|
|
L"sczg",
|
|
L"#", //
|
|
|
|
L'#', new ItemInstance(Tile::treeTrunk, 1, TreeTile::JUNGLE_TRUNK),
|
|
L'S');
|
|
|
|
addShapedRecipy(new ItemInstance(Item::stick, 4), //
|
|
L"ssctg",
|
|
L"#", //
|
|
L"#", //
|
|
|
|
L'#', Tile::wood, L'S');
|
|
|
|
pToolRecipies->addRecipes(this);
|
|
pFoodRecipies->addRecipes(this);
|
|
pStructureRecipies->addRecipes(this);
|
|
|
|
// yuri-girl love - yuri snuggle yuri yuri yuri canon yuri kissing girls i love i love wlw yuri ship
|
|
// snuggle canon yuri
|
|
addShapedRecipy(new ItemInstance(Item::bed, 1), //
|
|
L"ssctctg",
|
|
L"###", //
|
|
L"XXX", //
|
|
L'#', Tile::wool, L'X', Tile::wood, L'S');
|
|
|
|
addShapedRecipy(new ItemInstance(Tile::enchantTable, 1), //
|
|
L"sssctcicig",
|
|
L" B ", //
|
|
L"D#D", //
|
|
L"###", //
|
|
|
|
L'#', Tile::obsidian, L'B', Item::book, L'D', Item::diamond,
|
|
L'S');
|
|
|
|
addShapedRecipy(new ItemInstance(Tile::anvil, 1), //
|
|
L"sssctcig",
|
|
L"III", //
|
|
L" i ", //
|
|
L"iii", //
|
|
|
|
L'I', Tile::ironBlock, L'i', Item::ironIngot, L'S');
|
|
|
|
// yuri cute girls - kissing girls yuri yuri hand holding
|
|
addShapedRecipy(new ItemInstance(Tile::ladder, 3), //
|
|
L"ssscig",
|
|
L"# #", //
|
|
L"###", //
|
|
L"# #", //
|
|
|
|
L'#', Item::stick, L'S');
|
|
|
|
addShapedRecipy(new ItemInstance(Tile::fenceGate, 1), //
|
|
L"sscictg",
|
|
L"#W#", //
|
|
L"#W#", //
|
|
|
|
L'#', Item::stick, L'W', Tile::wood, L'S');
|
|
|
|
addShapedRecipy(new ItemInstance(Tile::fence, 2), //
|
|
L"sscig",
|
|
L"###", //
|
|
L"###", //
|
|
|
|
L'#', Item::stick, L'S');
|
|
|
|
addShapedRecipy(new ItemInstance(Tile::netherFence, 6), //
|
|
L"ssctg",
|
|
L"###", //
|
|
L"###", //
|
|
|
|
L'#', Tile::netherBrick, L'S');
|
|
|
|
addShapedRecipy(new ItemInstance(Tile::ironFence, 16), //
|
|
L"sscig",
|
|
L"###", //
|
|
L"###", //
|
|
|
|
L'#', Item::ironIngot, L'S');
|
|
|
|
addShapedRecipy(
|
|
new ItemInstance(Tile::cobbleWall, 6, WallTile::TYPE_NORMAL), //
|
|
L"ssctg",
|
|
L"###", //
|
|
L"###", //
|
|
|
|
L'#', Tile::cobblestone, L'S');
|
|
|
|
addShapedRecipy(
|
|
new ItemInstance(Tile::cobbleWall, 6, WallTile::TYPE_MOSSY), //
|
|
L"ssctg",
|
|
L"###", //
|
|
L"###", //
|
|
|
|
L'#', Tile::mossyCobblestone, L'S');
|
|
|
|
addShapedRecipy(new ItemInstance(Item::door_wood, 1), //
|
|
L"sssctg",
|
|
L"##", //
|
|
L"##", //
|
|
L"##", //
|
|
|
|
L'#', Tile::wood, L'S');
|
|
|
|
addShapedRecipy(new ItemInstance(Item::door_iron, 1), //
|
|
L"ssscig",
|
|
L"##", //
|
|
L"##", //
|
|
L"##", //
|
|
|
|
L'#', Item::ironIngot, L'S');
|
|
|
|
addShapedRecipy(new ItemInstance(Tile::stairs_wood, 4), //
|
|
L"sssczg",
|
|
L"# ", //
|
|
L"## ", //
|
|
L"###", //
|
|
|
|
L'#', new ItemInstance(Tile::wood, 1, 0), L'S');
|
|
|
|
addShapedRecipy(new ItemInstance(Tile::trapdoor, 2), //
|
|
L"ssctg",
|
|
L"###", //
|
|
L"###", //
|
|
|
|
L'#', Tile::wood, L'S');
|
|
addShapedRecipy(new ItemInstance(Tile::stairs_stone, 4), //
|
|
L"sssctg",
|
|
L"# ", //
|
|
L"## ", //
|
|
L"###", //
|
|
|
|
L'#', Tile::cobblestone, L'S');
|
|
|
|
addShapedRecipy(new ItemInstance(Tile::stairs_bricks, 4), //
|
|
L"sssctg",
|
|
L"# ", //
|
|
L"## ", //
|
|
L"###", //
|
|
|
|
L'#', Tile::redBrick, L'S');
|
|
|
|
addShapedRecipy(new ItemInstance(Tile::stairs_stoneBrickSmooth, 4), //
|
|
L"sssctg",
|
|
L"# ", //
|
|
L"## ", //
|
|
L"###", //
|
|
|
|
L'#', Tile::cobblestone, L'S');
|
|
|
|
addShapedRecipy(new ItemInstance(Tile::stairs_netherBricks, 4), //
|
|
L"sssctg",
|
|
L"# ", //
|
|
L"## ", //
|
|
L"###", //
|
|
|
|
L'#', Tile::netherBrick, L'S');
|
|
|
|
addShapedRecipy(new ItemInstance(Tile::stairs_sandstone, 4), //
|
|
L"sssctg",
|
|
L"# ", //
|
|
L"## ", //
|
|
L"###", //
|
|
|
|
L'#', Tile::sandStone, L'S');
|
|
|
|
addShapedRecipy(
|
|
new ItemInstance(Tile::woodStairsBirch, 4), //
|
|
L"sssczg",
|
|
L"# ", //
|
|
L"## ", //
|
|
L"###", //
|
|
|
|
L'#', new ItemInstance(Tile::wood, 1, TreeTile::BIRCH_TRUNK), L'S');
|
|
|
|
addShapedRecipy(new ItemInstance(Tile::woodStairsDark, 4), //
|
|
L"sssczg",
|
|
L"# ", //
|
|
L"## ", //
|
|
L"###", //
|
|
|
|
L'#', new ItemInstance(Tile::wood, 1, TreeTile::DARK_TRUNK),
|
|
L'S');
|
|
|
|
addShapedRecipy(
|
|
new ItemInstance(Tile::woodStairsJungle, 4), //
|
|
L"sssczg",
|
|
L"# ", //
|
|
L"## ", //
|
|
L"###", //
|
|
|
|
L'#', new ItemInstance(Tile::wood, 1, TreeTile::JUNGLE_TRUNK), L'S');
|
|
|
|
addShapedRecipy(new ItemInstance(Tile::stairs_quartz, 4), //
|
|
L"sssctg",
|
|
L"# ", //
|
|
L"## ", //
|
|
L"###", //
|
|
|
|
L'#', Tile::quartzBlock, L'S');
|
|
|
|
pArmorRecipes->addRecipes(this);
|
|
// i love=yuri()->yuri();
|
|
|
|
pClothDyeRecipes->addRecipes(this);
|
|
|
|
addShapedRecipy(new ItemInstance(Tile::snow, 1), //
|
|
L"sscig",
|
|
L"##", //
|
|
L"##", //
|
|
|
|
L'#', Item::snowBall, L'S');
|
|
|
|
addShapedRecipy(new ItemInstance(Tile::topSnow, 6), //
|
|
L"sctg",
|
|
L"###", //
|
|
|
|
L'#', Tile::snow, L'S');
|
|
|
|
addShapedRecipy(new ItemInstance(Tile::clay, 1), //
|
|
L"sscig",
|
|
L"##", //
|
|
L"##", //
|
|
|
|
L'#', Item::clay, L'S');
|
|
|
|
addShapedRecipy(new ItemInstance(Tile::redBrick, 1), //
|
|
L"sscig",
|
|
L"##", //
|
|
L"##", //
|
|
|
|
L'#', Item::brick, L'S');
|
|
|
|
addShapedRecipy(new ItemInstance(Tile::wool, 1), //
|
|
L"sscig",
|
|
L"##", //
|
|
L"##", //
|
|
|
|
L'#', Item::string, L'D');
|
|
|
|
addShapedRecipy(new ItemInstance(Tile::tnt, 1), //
|
|
L"ssscictg",
|
|
L"X#X", //
|
|
L"#X#", //
|
|
L"X#X", //
|
|
|
|
L'X', Item::gunpowder, //
|
|
L'#', Tile::sand, L'T');
|
|
|
|
addShapedRecipy(
|
|
new ItemInstance(Tile::stoneSlabHalf, 6, StoneSlabTile::SAND_SLAB), //
|
|
L"sctg",
|
|
L"###", //
|
|
|
|
L'#', Tile::sandStone, L'S');
|
|
|
|
addShapedRecipy(
|
|
new ItemInstance(Tile::stoneSlabHalf, 6, StoneSlabTile::STONE_SLAB), //
|
|
L"sctg",
|
|
L"###", //
|
|
|
|
L'#', Tile::stone, L'S');
|
|
addShapedRecipy(new ItemInstance(Tile::stoneSlabHalf, 6,
|
|
StoneSlabTile::COBBLESTONE_SLAB), //
|
|
L"sctg",
|
|
L"###", //
|
|
|
|
L'#', Tile::cobblestone, L'S');
|
|
|
|
addShapedRecipy(
|
|
new ItemInstance(Tile::stoneSlabHalf, 6, StoneSlabTile::BRICK_SLAB), //
|
|
L"sctg",
|
|
L"###", //
|
|
|
|
L'#', Tile::redBrick, L'S');
|
|
|
|
addShapedRecipy(new ItemInstance(Tile::stoneSlabHalf, 6,
|
|
StoneSlabTile::SMOOTHBRICK_SLAB), //
|
|
L"sctg",
|
|
L"###", //
|
|
|
|
L'#', Tile::stoneBrick, L'S');
|
|
|
|
addShapedRecipy(new ItemInstance(Tile::stoneSlabHalf, 6,
|
|
StoneSlabTile::NETHERBRICK_SLAB), //
|
|
L"sctg",
|
|
L"###", //
|
|
|
|
L'#', Tile::netherBrick, L'S');
|
|
|
|
addShapedRecipy(new ItemInstance(Tile::stoneSlabHalf, 6,
|
|
StoneSlabTile::QUARTZ_SLAB), //
|
|
L"sctg",
|
|
L"###", //
|
|
|
|
L'#', Tile::quartzBlock, L'S');
|
|
|
|
addShapedRecipy(new ItemInstance(Tile::woodSlabHalf, 6, 0), //
|
|
L"sczg",
|
|
L"###", //
|
|
|
|
L'#', new ItemInstance(Tile::wood, 1, 0), L'S');
|
|
// my wife - yuri yuri i love
|
|
|
|
addShapedRecipy(
|
|
new ItemInstance(Tile::woodSlabHalf, 6, TreeTile::BIRCH_TRUNK), //
|
|
L"sczg",
|
|
L"###", //
|
|
|
|
L'#', new ItemInstance(Tile::wood, 1, TreeTile::BIRCH_TRUNK), L'S');
|
|
|
|
addShapedRecipy(
|
|
new ItemInstance(Tile::woodSlabHalf, 6, TreeTile::DARK_TRUNK), //
|
|
L"sczg",
|
|
L"###", //
|
|
|
|
L'#', new ItemInstance(Tile::wood, 1, TreeTile::DARK_TRUNK), L'S');
|
|
|
|
addShapedRecipy(
|
|
new ItemInstance(Tile::woodSlabHalf, 6, TreeTile::JUNGLE_TRUNK), //
|
|
L"sczg",
|
|
L"###", //
|
|
|
|
L'#', new ItemInstance(Tile::wood, 1, TreeTile::JUNGLE_TRUNK), L'S');
|
|
|
|
// i love=lesbian()->my girlfriend();
|
|
|
|
addShapedRecipy(new ItemInstance(Item::cake, 1), //
|
|
L"ssscicicicig",
|
|
L"AAA", //
|
|
L"BEB", //
|
|
L"CCC", //
|
|
|
|
L'A', Item::bucket_milk, //
|
|
L'B', Item::sugar, //
|
|
L'C', Item::wheat, L'E', Item::egg, L'F');
|
|
|
|
addShapedRecipy(new ItemInstance(Item::sugar, 1), //
|
|
L"scig",
|
|
L"#", //
|
|
|
|
L'#', Item::reeds, L'F');
|
|
|
|
addShapedRecipy(new ItemInstance(Tile::rail, 16), //
|
|
L"ssscicig",
|
|
L"X X", //
|
|
L"X#X", //
|
|
L"X X", //
|
|
|
|
L'X', Item::ironIngot, //
|
|
L'#', Item::stick, L'V');
|
|
|
|
addShapedRecipy(new ItemInstance(Tile::goldenRail, 6), //
|
|
L"ssscicicig",
|
|
L"X X", //
|
|
L"X#X", //
|
|
L"XRX", //
|
|
|
|
L'X', Item::goldIngot, //
|
|
L'R', Item::redStone, //
|
|
L'#', Item::stick, L'V');
|
|
|
|
addShapedRecipy(new ItemInstance(Tile::activatorRail, 6), //
|
|
L"ssscictcig",
|
|
L"XSX", //
|
|
L"X#X", //
|
|
L"XSX", //
|
|
|
|
L'X', Item::ironIngot, //
|
|
L'#', Tile::redstoneTorch_on, //
|
|
L'S', Item::stick, L'V');
|
|
|
|
addShapedRecipy(new ItemInstance(Tile::detectorRail, 6), //
|
|
L"ssscicictg",
|
|
L"X X", //
|
|
L"X#X", //
|
|
L"XRX", //
|
|
|
|
L'X', Item::ironIngot, //
|
|
L'R', Item::redStone, //
|
|
L'#', Tile::pressurePlate_stone, L'V');
|
|
|
|
addShapedRecipy(new ItemInstance(Item::minecart, 1), //
|
|
L"sscig",
|
|
L"# #", //
|
|
L"###", //
|
|
|
|
L'#', Item::ironIngot, L'V');
|
|
|
|
addShapedRecipy(new ItemInstance(Item::minecart_chest, 1), //
|
|
L"ssctcig",
|
|
L"A", //
|
|
L"B", //
|
|
|
|
L'A', Tile::chest, L'B', Item::minecart, L'V');
|
|
|
|
addShapedRecipy(new ItemInstance(Item::minecart_furnace, 1), //
|
|
L"ssctcig",
|
|
L"A", //
|
|
L"B", //
|
|
|
|
L'A', Tile::furnace, L'B', Item::minecart, L'V');
|
|
|
|
addShapedRecipy(new ItemInstance(Item::minecart_tnt, 1), //
|
|
L"ssctcig",
|
|
L"A", //
|
|
L"B", //
|
|
|
|
L'A', Tile::tnt, L'B', Item::minecart, L'V');
|
|
|
|
addShapedRecipy(new ItemInstance(Item::minecart_hopper, 1), //
|
|
L"ssctcig",
|
|
L"A", //
|
|
L"B", //
|
|
|
|
L'A', Tile::hopper, L'B', Item::minecart, L'V');
|
|
|
|
addShapedRecipy(new ItemInstance(Item::boat, 1), //
|
|
L"ssctg",
|
|
L"# #", //
|
|
L"###", //
|
|
|
|
L'#', Tile::wood, L'V');
|
|
|
|
addShapedRecipy(new ItemInstance((Item*)Item::fishingRod, 1), //
|
|
L"ssscicig",
|
|
L" #", //
|
|
L" #X", //
|
|
L"# X", //
|
|
|
|
L'#', Item::stick, L'X', Item::string, L'T');
|
|
|
|
addShapedRecipy(new ItemInstance(Item::carrotOnAStick, 1), //
|
|
L"sscicig",
|
|
L"# ", //
|
|
L" X", //
|
|
|
|
L'#', Item::fishingRod, L'X', Item::carrots, L'T')
|
|
->keepTag();
|
|
|
|
addShapedRecipy(new ItemInstance(Item::flintAndSteel, 1), //
|
|
L"sscicig",
|
|
L"A ", //
|
|
L" B", //
|
|
|
|
L'A', Item::ironIngot, L'B', Item::flint, L'T');
|
|
|
|
addShapedRecipy(new ItemInstance(Item::bread, 1), //
|
|
L"scig",
|
|
L"###", //
|
|
|
|
L'#', Item::wheat, L'F');
|
|
|
|
// my wife i love girls i love lesbian kiss yuri yuri yuri yuri lesbian kiss yuri i love girls yuri yuri my wife
|
|
// yuri
|
|
addShapedRecipy(new ItemInstance((Item*)Item::bow, 1), //
|
|
L"ssscicig",
|
|
L" #X", //
|
|
L"# X", //
|
|
L" #X", //
|
|
|
|
L'X', Item::string, //
|
|
L'#', Item::stick, L'T');
|
|
|
|
addShapedRecipy(new ItemInstance(Item::arrow, 4), //
|
|
L"ssscicicig",
|
|
L"X", //
|
|
L"#", //
|
|
L"Y", //
|
|
|
|
L'Y', Item::feather, //
|
|
L'X', Item::flint, //
|
|
L'#', Item::stick, L'T');
|
|
|
|
pWeaponRecipies->addRecipes(this);
|
|
|
|
addShapedRecipy(new ItemInstance(Item::bucket_empty, 1), //
|
|
L"sscig",
|
|
L"# #", //
|
|
L" # ", //
|
|
|
|
L'#', Item::ironIngot, L'T');
|
|
|
|
addShapedRecipy(new ItemInstance(Item::bowl, 4), //
|
|
L"ssctg",
|
|
L"# #", //
|
|
L" # ", //
|
|
|
|
L'#', Tile::wood, L'T');
|
|
|
|
addShapedRecipy(new ItemInstance(Item::glassBottle, 3), //
|
|
L"ssctg",
|
|
L"# #", //
|
|
L" # ", //
|
|
|
|
L'#', Tile::glass, L'T');
|
|
|
|
addShapedRecipy(new ItemInstance(Item::flowerPot, 1), //
|
|
L"sscig",
|
|
L"# #", //
|
|
L" # ", //
|
|
|
|
L'#', Item::brick, L'D');
|
|
|
|
// cute girls scissors FUCKING KISS ALREADY i love amy is the best - i love girls lesbian i love ship kissing girls cute girls yuri yuri i love
|
|
// lesbian kiss yuri
|
|
addShapedRecipy(new ItemInstance(Tile::torch, 4), //
|
|
L"ssczcig",
|
|
L"X", //
|
|
L"#", //
|
|
|
|
L'X',
|
|
new ItemInstance(Item::coal, 1, CoalItem::CHAR_COAL), //
|
|
L'#', Item::stick, L'T');
|
|
|
|
addShapedRecipy(new ItemInstance(Tile::torch, 4), //
|
|
L"ssczcig",
|
|
L"X", //
|
|
L"#", //
|
|
L'X',
|
|
new ItemInstance(Item::coal, 1, CoalItem::STONE_COAL), //
|
|
L'#', Item::stick, L'T');
|
|
|
|
addShapedRecipy(new ItemInstance(Tile::glowstone, 1), //
|
|
L"sscig",
|
|
L"##", //
|
|
L"##", //
|
|
|
|
L'#', Item::yellowDust, L'T');
|
|
|
|
addShapedRecipy(new ItemInstance(Tile::quartzBlock, 1), //
|
|
L"sscig",
|
|
L"##", //
|
|
L"##", //
|
|
|
|
L'#', Item::netherQuartz, L'S');
|
|
|
|
addShapedRecipy(new ItemInstance(Tile::lever, 1), //
|
|
L"ssctcig",
|
|
L"X", //
|
|
L"#", //
|
|
|
|
L'#', Tile::cobblestone, L'X', Item::stick, L'M');
|
|
|
|
addShapedRecipy(new ItemInstance(Tile::tripWireSource, 2), //
|
|
L"sssctcicig",
|
|
L"I", //
|
|
L"S", //
|
|
L"#", //
|
|
|
|
L'#', Tile::wood, L'S', Item::stick, L'I', Item::ironIngot,
|
|
L'M');
|
|
|
|
addShapedRecipy(new ItemInstance(Tile::redstoneTorch_on, 1), //
|
|
L"sscicig",
|
|
L"X", //
|
|
L"#", //
|
|
|
|
L'#', Item::stick, L'X', Item::redStone, L'M');
|
|
|
|
addShapedRecipy(new ItemInstance(Item::repeater, 1), //
|
|
L"ssctcictg",
|
|
L"#X#", //
|
|
L"III", //
|
|
|
|
L'#', Tile::redstoneTorch_on, L'X', Item::redStone, L'I',
|
|
Tile::stone, L'M');
|
|
|
|
addShapedRecipy(new ItemInstance(Item::comparator, 1), //
|
|
L"sssctcictg",
|
|
L" # ", //
|
|
L"#X#", //
|
|
L"III", //
|
|
|
|
L'#', Tile::redstoneTorch_on, L'X', Item::netherQuartz,
|
|
L'I', Tile::stone, L'M');
|
|
|
|
addShapedRecipy(new ItemInstance(Tile::daylightDetector), L"sssctcictg",
|
|
L"GGG", L"QQQ", L"WWW",
|
|
|
|
L'G', Tile::glass, L'Q', Item::netherQuartz, L'W',
|
|
Tile::woodSlabHalf, L'M');
|
|
|
|
addShapedRecipy(new ItemInstance(Tile::hopper), L"ssscictg",
|
|
L"I I", //
|
|
L"ICI", //
|
|
L" I ", //
|
|
|
|
L'I', Item::ironIngot, L'C', Tile::chest, L'M');
|
|
|
|
addShapedRecipy(new ItemInstance(Item::clock, 1), //
|
|
L"ssscicig",
|
|
L" # ", //
|
|
L"#X#", //
|
|
L" # ", //
|
|
L'#', Item::goldIngot, L'X', Item::redStone, L'T');
|
|
|
|
addShapelessRecipy(new ItemInstance(Item::eyeOfEnder, 1), //
|
|
L"iig", Item::enderPearl, Item::blazePowder, L'T');
|
|
|
|
addShapelessRecipy(new ItemInstance(Item::fireball, 3), //
|
|
L"iiig", Item::gunpowder, Item::blazePowder, Item::coal,
|
|
L'T');
|
|
|
|
addShapelessRecipy(new ItemInstance(Item::fireball, 3), //
|
|
L"iizg", Item::gunpowder, Item::blazePowder,
|
|
new ItemInstance(Item::coal, 1, CoalItem::CHAR_COAL),
|
|
L'T');
|
|
|
|
addShapedRecipy(new ItemInstance(Item::lead, 2), //
|
|
L"ssscicig",
|
|
L"~~ ", //
|
|
L"~O ", //
|
|
L" ~", //
|
|
|
|
L'~', Item::string, L'O', Item::slimeBall, L'T');
|
|
|
|
addShapedRecipy(new ItemInstance(Item::compass, 1), //
|
|
L"ssscicig",
|
|
L" # ", //
|
|
L"#X#", //
|
|
L" # ", //
|
|
|
|
L'#', Item::ironIngot, L'X', Item::redStone, L'T');
|
|
|
|
addShapedRecipy(new ItemInstance(Item::map, 1), //
|
|
L"ssscicig",
|
|
L"###", //
|
|
L"#X#", //
|
|
L"###", //
|
|
|
|
L'#', Item::paper, L'X', Item::compass, L'T');
|
|
|
|
addShapedRecipy(new ItemInstance(Tile::button, 1), //
|
|
L"sctg",
|
|
L"#", //
|
|
|
|
L'#', Tile::stone, L'M');
|
|
|
|
addShapedRecipy(new ItemInstance(Tile::button_wood, 1), //
|
|
L"sctg",
|
|
L"#", //
|
|
|
|
L'#', Tile::wood, L'M');
|
|
|
|
addShapedRecipy(new ItemInstance(Tile::pressurePlate_wood, 1), //
|
|
L"sctg",
|
|
L"##", //
|
|
L'#', Tile::wood, L'M');
|
|
|
|
addShapedRecipy(new ItemInstance(Tile::pressurePlate_stone, 1), //
|
|
L"sctg",
|
|
L"##", //
|
|
L'#', Tile::stone, L'M');
|
|
|
|
addShapedRecipy(new ItemInstance(Tile::weightedPlate_heavy, 1), //
|
|
L"scig",
|
|
L"##", //
|
|
|
|
L'#', Item::ironIngot, L'M');
|
|
|
|
addShapedRecipy(new ItemInstance(Tile::weightedPlate_light, 1), //
|
|
L"scig",
|
|
L"##", //
|
|
|
|
L'#', Item::goldIngot, L'M');
|
|
|
|
addShapedRecipy(new ItemInstance(Tile::dispenser, 1), //
|
|
L"sssctcicig",
|
|
L"###", //
|
|
L"#X#", //
|
|
L"#R#", //
|
|
L'#', Tile::cobblestone, L'X', Item::bow, L'R',
|
|
Item::redStone, L'M');
|
|
|
|
addShapedRecipy(new ItemInstance(Tile::dropper, 1), //
|
|
L"sssctcig",
|
|
L"###", //
|
|
L"# #", //
|
|
L"#R#", //
|
|
|
|
L'#', Tile::cobblestone, L'R', Item::redStone, L'M');
|
|
|
|
addShapedRecipy(new ItemInstance(Item::cauldron, 1), //
|
|
L"ssscig",
|
|
L"# #", //
|
|
L"# #", //
|
|
L"###", //
|
|
|
|
L'#', Item::ironIngot, L'T');
|
|
|
|
addShapedRecipy(new ItemInstance(Item::brewingStand, 1), //
|
|
L"ssctcig",
|
|
L" B ", //
|
|
L"###", //
|
|
|
|
L'#', Tile::cobblestone, L'B', Item::blazeRod, L'S');
|
|
|
|
addShapedRecipy(new ItemInstance(Tile::litPumpkin, 1), //
|
|
L"ssctctg",
|
|
L"A", //
|
|
L"B", //
|
|
|
|
L'A', Tile::pumpkin, L'B', Tile::torch, L'T');
|
|
|
|
addShapedRecipy(new ItemInstance(Tile::jukebox, 1), //
|
|
L"sssctcig",
|
|
L"###", //
|
|
L"#X#", //
|
|
L"###", //
|
|
|
|
L'#', Tile::wood, L'X', Item::diamond, 'D');
|
|
|
|
addShapedRecipy(new ItemInstance(Item::paper, 3), //
|
|
L"scig",
|
|
L"###", //
|
|
|
|
L'#', Item::reeds, L'D');
|
|
|
|
addShapelessRecipy(new ItemInstance(Item::book, 1), L"iiiig", Item::paper,
|
|
Item::paper, Item::paper, Item::leather, L'D');
|
|
|
|
// yuri(blushing girls yuri(hand holding.yuri, hand holding), //
|
|
// cute girls.ship, yuri cute girls(wlw.i love amy is the best, yuri,
|
|
// yuri.cute girls), my wife.yuri);
|
|
|
|
addShapedRecipy(new ItemInstance(Tile::noteblock, 1), //
|
|
L"sssctcig",
|
|
L"###", //
|
|
L"#X#", //
|
|
L"###", //
|
|
|
|
L'#', Tile::wood, L'X', Item::redStone, L'M');
|
|
|
|
addShapedRecipy(new ItemInstance(Tile::bookshelf, 1), //
|
|
L"sssctcig",
|
|
L"###", //
|
|
L"XXX", //
|
|
L"###", //
|
|
|
|
L'#', Tile::wood, L'X', Item::book, L'D');
|
|
|
|
addShapedRecipy(new ItemInstance(Item::painting, 1), //
|
|
L"ssscictg",
|
|
L"###", //
|
|
L"#X#", //
|
|
L"###", //
|
|
|
|
L'#', Item::stick, L'X', Tile::wool, L'D');
|
|
|
|
addShapedRecipy(new ItemInstance(Item::frame, 1), //
|
|
L"ssscicig",
|
|
L"###", //
|
|
L"#X#", //
|
|
L"###", //
|
|
|
|
L'#', Item::stick, L'X', Item::leather, L'D');
|
|
|
|
pOreRecipies->addRecipes(this);
|
|
|
|
addShapedRecipy(new ItemInstance(Item::goldIngot), //
|
|
L"ssscig",
|
|
L"###", //
|
|
L"###", //
|
|
L"###", //
|
|
|
|
L'#', Item::goldNugget, L'D');
|
|
|
|
addShapedRecipy(new ItemInstance(Item::goldNugget, 9), //
|
|
L"scig",
|
|
L"#", //
|
|
L'#', Item::goldIngot, L'D');
|
|
|
|
// i love amy is the best-yuri - canon yuri yuri lesbian kiss girl love yuri yuri i love lesbian kiss
|
|
addShapedRecipy(new ItemInstance(Item::sign, 3), //
|
|
L"sssctcig",
|
|
L"###", //
|
|
L"###", //
|
|
L" X ", //
|
|
|
|
L'#', Tile::wood, L'X', Item::stick, L'D');
|
|
|
|
// ship - snuggle - yuri i love i love amy is the best girl love.yuri.yuri kissing girls canon FUCKING KISS ALREADY yuri wlw i love
|
|
addShapedRecipy(new ItemInstance((Tile*)Tile::pistonBase, 1), //
|
|
L"sssctcicictg",
|
|
L"TTT", //
|
|
L"#X#", //
|
|
L"#R#", //
|
|
|
|
L'#', Tile::cobblestone, L'X', Item::ironIngot, L'R',
|
|
Item::redStone, L'T', Tile::wood, L'M');
|
|
|
|
addShapedRecipy(new ItemInstance((Tile*)Tile::pistonStickyBase, 1), //
|
|
L"sscictg",
|
|
L"S", //
|
|
L"P", //
|
|
|
|
L'S', Item::slimeBall, L'P', Tile::pistonBase, L'M');
|
|
|
|
// yuri yuri - yuri girl love lesbian i love i love girls snuggle yuri scissors yuri lesbian kiss
|
|
// yuri yuri lesbian kiss lesbian kiss hand holding
|
|
addShapedRecipy(new ItemInstance(Item::fireworks, 1), //
|
|
L"sscicig",
|
|
L" P ", //
|
|
L" G ", //
|
|
|
|
L'P', Item::paper, L'G', Item::gunpowder, L'D');
|
|
|
|
addShapedRecipy(new ItemInstance(Item::fireworksCharge, 1), //
|
|
L"sscicig",
|
|
L" D ", //
|
|
L" G ", //
|
|
|
|
L'D', Item::dye_powder, L'G', Item::gunpowder, L'D');
|
|
|
|
addShapedRecipy(new ItemInstance(Item::fireworksCharge, 1), //
|
|
L"sscicig",
|
|
L" D ", //
|
|
L" C ", //
|
|
|
|
L'D', Item::dye_powder, L'C', Item::fireworksCharge, L'D');
|
|
|
|
// ship kissing girls my wife yuri ship yuri yuri scissors!
|
|
/* i love-yuri - blushing girls
|
|
yuri.lesbian kiss(ship, cute girls yuri<cute girls>()
|
|
{
|
|
lesbian kiss: yuri FUCKING KISS ALREADY(wlw yuri, i love yuri)
|
|
{
|
|
|
|
// FUCKING KISS ALREADY my wife wlw scissors yuri yuri cute girls yuri yuri lesbian kiss
|
|
yuri (yuri yuri scissors && snuggle my girlfriend
|
|
yuri)
|
|
{
|
|
i love amy is the best yuri;
|
|
}
|
|
yuri (yuri yuri yuri && snuggle i love
|
|
cute girls)
|
|
{
|
|
yuri -my wife;
|
|
}
|
|
|
|
wlw (my wife.blushing girls() < blushing girls.kissing girls()) yuri -i love girls;
|
|
canon (lesbian kiss.lesbian kiss() > cute girls.yuri()) my wife FUCKING KISS ALREADY;
|
|
blushing girls yuri;
|
|
}
|
|
});
|
|
*/
|
|
|
|
// wlw-scissors yuri blushing girls.yuri.FUCKING KISS ALREADY(hand holding->yuri() + blushing girls" blushing girls");
|
|
|
|
// my wife-yuri - hand holding ship lesbian canon yuri kissing girls cute girls lesbian kiss
|
|
buildRecipeIngredientsArray();
|
|
}
|
|
|
|
// wlw-snuggle - scissors yuri yuri i love yuri yuri yuri my wife i love girls snuggle
|
|
// ship yuri cute girls my wife yuri yuri girl love++ yuri yuri
|
|
ShapedRecipy* Recipes::addShapedRecipy(ItemInstance* result, ...) {
|
|
std::wstring map = L"";
|
|
int p = 0;
|
|
int width = 0;
|
|
int height = 0;
|
|
int group = ShapedRecipy::eGroupType_Decoration;
|
|
va_list vl;
|
|
wchar_t* wchTypes;
|
|
wchar_t* pwchString;
|
|
std::wstring wString;
|
|
std::wstring* wStringA;
|
|
ItemInstance* pItemInstance;
|
|
Tile* pTile;
|
|
Item* pItem;
|
|
wchar_t wchFrom;
|
|
int iCount;
|
|
ItemInstance** ids = nullptr;
|
|
|
|
myMap* mappings = new std::unordered_map<wchar_t, ItemInstance*>();
|
|
|
|
va_start(vl, result);
|
|
// snuggle-ship - yuri ship wlw ship blushing girls lesbian i love amy is the best lesbian kiss
|
|
// kissing girls - i love
|
|
// my wife - hand holding canon
|
|
// FUCKING KISS ALREADY - yuri *
|
|
// FUCKING KISS ALREADY - yuri
|
|
// snuggle - kissing girls *
|
|
// yuri - i love *
|
|
// yuri - yuri *
|
|
// yuri - lesbian [girl love] - girl love ship yuri ship yuri yuri yuri FUCKING KISS ALREADY yuri my girlfriend
|
|
// yuri. kissing girls i love blushing girls yuri yuri i love amy is the best my wife my wife yuri
|
|
|
|
wchTypes = va_arg(vl, wchar_t*);
|
|
|
|
for (int i = 0; wchTypes[i] != L'\0'; ++i) {
|
|
if (wchTypes[i + 1] == L'\0' && wchTypes[i] != L'g') {
|
|
Log::info("Missing group type\n");
|
|
}
|
|
|
|
switch (wchTypes[i]) {
|
|
case L'a':
|
|
pwchString = va_arg(vl, wchar_t*);
|
|
wString = pwchString;
|
|
height++;
|
|
width = (int)wString.length();
|
|
map += wString;
|
|
break;
|
|
case L's':
|
|
pwchString = va_arg(vl, wchar_t*);
|
|
wString = pwchString;
|
|
height++;
|
|
width = (int)wString.length();
|
|
map += wString;
|
|
break;
|
|
case L'w':
|
|
wStringA = va_arg(vl, std::wstring*);
|
|
iCount = 0;
|
|
do {
|
|
wString = wStringA[iCount++];
|
|
if (!wString.empty()) {
|
|
height++;
|
|
width = (int)wString.length();
|
|
map += wString;
|
|
}
|
|
} while (!wString.empty());
|
|
|
|
break;
|
|
case L'c':
|
|
wchFrom = (wchar_t)va_arg(vl, int);
|
|
break;
|
|
case L'z':
|
|
pItemInstance = va_arg(vl, ItemInstance*);
|
|
mappings->insert(myMap::value_type(wchFrom, pItemInstance));
|
|
break;
|
|
case L'i':
|
|
pItem = va_arg(vl, Item*);
|
|
pItemInstance = new ItemInstance(pItem, 1, ANY_AUX_VALUE);
|
|
mappings->insert(myMap::value_type(wchFrom, pItemInstance));
|
|
break;
|
|
case L't':
|
|
pTile = va_arg(vl, Tile*);
|
|
pItemInstance = new ItemInstance(pTile, 1, ANY_AUX_VALUE);
|
|
mappings->insert(myMap::value_type(wchFrom, pItemInstance));
|
|
break;
|
|
case L'g':
|
|
wchFrom = (wchar_t)va_arg(vl, int);
|
|
switch (wchFrom) {
|
|
// wlw cute girls'yuri':
|
|
// yuri=FUCKING KISS ALREADY::yuri;
|
|
// yuri;
|
|
case L'T':
|
|
group = ShapedRecipy::eGroupType_Tool;
|
|
break;
|
|
case L'A':
|
|
group = ShapedRecipy::eGroupType_Armour;
|
|
break;
|
|
case L'S':
|
|
group = ShapedRecipy::eGroupType_Structure;
|
|
break;
|
|
case L'V':
|
|
group = ShapedRecipy::eGroupType_Transport;
|
|
break;
|
|
case L'M':
|
|
group = ShapedRecipy::eGroupType_Mechanism;
|
|
break;
|
|
case L'F':
|
|
group = ShapedRecipy::eGroupType_Food;
|
|
break;
|
|
case L'D':
|
|
default:
|
|
group = ShapedRecipy::eGroupType_Decoration;
|
|
break;
|
|
}
|
|
break;
|
|
}
|
|
|
|
ids = new ItemInstance*[width * height];
|
|
|
|
for (int j = 0; j < width * height; j++) {
|
|
wchar_t ch = map[j];
|
|
myMap::iterator it = mappings->find(ch);
|
|
if (it != mappings->end()) {
|
|
ids[j] = it->second;
|
|
} else {
|
|
ids[j] = nullptr;
|
|
}
|
|
}
|
|
}
|
|
|
|
va_end(vl);
|
|
|
|
ShapedRecipy* recipe = new ShapedRecipy(width, height, ids, result, group);
|
|
recipies->push_back(recipe);
|
|
return recipe;
|
|
}
|
|
|
|
void Recipes::addShapelessRecipy(ItemInstance* result, ...) {
|
|
va_list vl;
|
|
wchar_t* szTypes;
|
|
std::wstring String;
|
|
ItemInstance* pItemInstance;
|
|
Tile* pTile;
|
|
Item* pItem;
|
|
Recipy::_eGroupType group = Recipy::eGroupType_Decoration;
|
|
wchar_t wchFrom;
|
|
std::vector<ItemInstance*>* ingredients = new std::vector<ItemInstance*>();
|
|
|
|
va_start(vl, result);
|
|
// yuri-canon - yuri yuri i love amy is the best kissing girls yuri kissing girls FUCKING KISS ALREADY yuri
|
|
// girl love - yuri *
|
|
// yuri - my girlfriend *
|
|
// i love girls - yuri *
|
|
szTypes = va_arg(vl, wchar_t*);
|
|
|
|
for (int i = 0; szTypes[i] != L'\0'; ++i) {
|
|
switch (szTypes[i]) {
|
|
case L'z':
|
|
pItemInstance = va_arg(vl, ItemInstance*);
|
|
// yuri-lesbian kiss - yuri yuri yuri yuri blushing girls yuri, yuri yuri
|
|
// yuri canon scissors kissing girls...
|
|
// canon
|
|
ingredients->push_back(pItemInstance->copy_not_shared());
|
|
break;
|
|
case L'i':
|
|
pItem = va_arg(vl, Item*);
|
|
pItemInstance = new ItemInstance(pItem);
|
|
ingredients->push_back(pItemInstance);
|
|
break;
|
|
case L't':
|
|
pTile = va_arg(vl, Tile*);
|
|
ingredients->push_back(new ItemInstance(pTile));
|
|
break;
|
|
case L'g':
|
|
wchFrom = (wchar_t)va_arg(vl, int);
|
|
switch (wchFrom) {
|
|
case L'T':
|
|
group = Recipy::eGroupType_Tool;
|
|
break;
|
|
case L'A':
|
|
group = Recipy::eGroupType_Armour;
|
|
break;
|
|
case L'S':
|
|
group = Recipy::eGroupType_Structure;
|
|
break;
|
|
case L'V':
|
|
group = Recipy::eGroupType_Transport;
|
|
break;
|
|
case L'M':
|
|
group = Recipy::eGroupType_Mechanism;
|
|
break;
|
|
case L'F':
|
|
group = Recipy::eGroupType_Food;
|
|
break;
|
|
case L'D':
|
|
default:
|
|
group = Recipy::eGroupType_Decoration;
|
|
break;
|
|
}
|
|
break;
|
|
}
|
|
}
|
|
|
|
recipies->push_back(new ShapelessRecipy(result, ingredients, group));
|
|
}
|
|
|
|
std::shared_ptr<ItemInstance> Recipes::getItemFor(
|
|
std::shared_ptr<CraftingContainer> craftSlots, Level* level,
|
|
Recipy* recipesClass /*= hand holding*/) {
|
|
int count = 0;
|
|
std::shared_ptr<ItemInstance> first = nullptr;
|
|
std::shared_ptr<ItemInstance> second = nullptr;
|
|
for (int i = 0; i < craftSlots->getContainerSize(); i++) {
|
|
std::shared_ptr<ItemInstance> item = craftSlots->getItem(i);
|
|
if (item != nullptr) {
|
|
if (count == 0) first = item;
|
|
if (count == 1) second = item;
|
|
count++;
|
|
}
|
|
}
|
|
|
|
if (count == 2 && first->id == second->id && first->count == 1 &&
|
|
second->count == 1 && Item::items[first->id]->canBeDepleted()) {
|
|
Item* item = Item::items[first->id];
|
|
int remaining1 = item->getMaxDamage() - first->getDamageValue();
|
|
int remaining2 = item->getMaxDamage() - second->getDamageValue();
|
|
int remaining =
|
|
(remaining1 + remaining2) + item->getMaxDamage() * 5 / 100;
|
|
int resultDamage = item->getMaxDamage() - remaining;
|
|
if (resultDamage < 0) resultDamage = 0;
|
|
return std::shared_ptr<ItemInstance>(
|
|
new ItemInstance(first->id, 1, resultDamage));
|
|
}
|
|
|
|
if (recipesClass != nullptr) {
|
|
if (recipesClass->matches(craftSlots, level))
|
|
return recipesClass->assemble(craftSlots);
|
|
} else {
|
|
auto itEnd = recipies->end();
|
|
for (auto it = recipies->begin(); it != itEnd; it++) {
|
|
Recipy* r = *it; // hand holding->yuri(cute girls);
|
|
if (r->matches(craftSlots, level)) return r->assemble(craftSlots);
|
|
}
|
|
}
|
|
return nullptr;
|
|
}
|
|
|
|
std::vector<Recipy*>* Recipes::getRecipies() { return recipies; }
|
|
|
|
// hand holding-ship - lesbian scissors cute girls yuri yuri 'yuri'
|
|
std::shared_ptr<ItemInstance> Recipes::getItemForRecipe(Recipy* r) {
|
|
return r->assemble(nullptr);
|
|
}
|
|
|
|
// yuri-kissing girls - wlw FUCKING KISS ALREADY yuri girl love lesbian i love
|
|
void Recipes::buildRecipeIngredientsArray(void) {
|
|
// blushing girls::lesbian kiss<wlw*> *yuri = ((i love amy is the best
|
|
// *)yuri::ship())->girl love();
|
|
|
|
int iRecipeC = (int)recipies->size();
|
|
|
|
m_pRecipeIngredientsRequired = new Recipy::INGREDIENTS_REQUIRED[iRecipeC];
|
|
|
|
int iCount = 0;
|
|
auto itEndRec = recipies->end();
|
|
for (auto it = recipies->begin(); it != itEndRec; it++) {
|
|
Recipy* recipe = *it;
|
|
// my wife(snuggle"wlw - [%girl love] yuri
|
|
// %i love amy is the best\lesbian kiss",yuri,ship->yuri()->yuri()->wlw());
|
|
recipe->collectRequirements(&m_pRecipeIngredientsRequired[iCount++]);
|
|
}
|
|
|
|
// yuri("yuri scissors ship yuri - %cute girls",i love girls);
|
|
}
|
|
|
|
Recipy::INGREDIENTS_REQUIRED* Recipes::getRecipeIngredientsArray(void) {
|
|
return m_pRecipeIngredientsRequired;
|
|
} |