39 lines
732 B
C++
39 lines
732 B
C++
#pragma once
|
|
|
|
#include "cItem.h"
|
|
|
|
class cRecipeChecker
|
|
{
|
|
public:
|
|
static cRecipeChecker * GetRecipeChecker();
|
|
|
|
// Grid of cItems of a_Width width and a_Height Height
|
|
cItem CookIngredients( cItem* a_Items, int a_Width, int a_Height, bool a_bConsumeIngredients = false );
|
|
|
|
struct RecipeSlot
|
|
{
|
|
cItem Item;
|
|
int x, y;
|
|
};
|
|
|
|
struct Recipe
|
|
{
|
|
Recipe() : Slots( 0 ), NumItems( 0 ) {}
|
|
~Recipe();
|
|
RecipeSlot* Slots; // Array of RecipeSlots
|
|
unsigned int NumItems;
|
|
cItem Result;
|
|
};
|
|
|
|
void ReloadRecipes();
|
|
static void DeleteMe();
|
|
private:
|
|
friend class cRoot;
|
|
cRecipeChecker();
|
|
~cRecipeChecker();
|
|
|
|
struct sRecipeCheckerState;
|
|
sRecipeCheckerState* m_pState;
|
|
|
|
void ClearRecipes();
|
|
}; |