summaryrefslogtreecommitdiffstats
path: root/src/FurnaceRecipe.h
diff options
context:
space:
mode:
authorHowaner <franzi.moos@googlemail.com>2014-08-31 19:00:36 +0200
committerHowaner <franzi.moos@googlemail.com>2014-08-31 19:00:36 +0200
commit0beed83ae9e6d8502450489edddd27171ff15b53 (patch)
treeb14fe11f940924a23439d4bc9db2663399aa33f8 /src/FurnaceRecipe.h
parentMerge pull request #1357 from mc-server/leafFix (diff)
downloadcuberite-0beed83ae9e6d8502450489edddd27171ff15b53.tar
cuberite-0beed83ae9e6d8502450489edddd27171ff15b53.tar.gz
cuberite-0beed83ae9e6d8502450489edddd27171ff15b53.tar.bz2
cuberite-0beed83ae9e6d8502450489edddd27171ff15b53.tar.lz
cuberite-0beed83ae9e6d8502450489edddd27171ff15b53.tar.xz
cuberite-0beed83ae9e6d8502450489edddd27171ff15b53.tar.zst
cuberite-0beed83ae9e6d8502450489edddd27171ff15b53.zip
Diffstat (limited to 'src/FurnaceRecipe.h')
-rw-r--r--src/FurnaceRecipe.h33
1 files changed, 7 insertions, 26 deletions
diff --git a/src/FurnaceRecipe.h b/src/FurnaceRecipe.h
index 77ed35a57..de3ee56a0 100644
--- a/src/FurnaceRecipe.h
+++ b/src/FurnaceRecipe.h
@@ -19,23 +19,23 @@ public:
void ReloadRecipes(void);
- struct Fuel
+ struct cFuel
{
cItem * In;
int BurnTime; ///< How long this fuel burns, in ticks
};
- struct Recipe
+ struct cRecipe
{
cItem * In;
cItem * Out;
int CookTime; ///< How long this recipe takes to smelt, in ticks
};
- /// Returns a recipe for the specified input, NULL if no recipe found
- const Recipe * GetRecipeFrom(const cItem & a_Ingredient) const;
+ /** Returns a recipe for the specified input, NULL if no recipe found */
+ const cRecipe * GetRecipeFrom(const cItem & a_Ingredient) const;
- /// Returns the amount of time that the specified fuel burns, in ticks
+ /** Returns the amount of time that the specified fuel burns, in ticks */
int GetBurnTime(const cItem & a_Fuel) const;
private:
@@ -49,27 +49,8 @@ private:
Logs a warning to the console on input error. */
void AddRecipeFromLine(const AString & a_Line, int a_LineNum);
- /** Calls LOGWARN with the line, position, and error */
- static void PrintParseError(unsigned int a_Line, size_t a_Position, const AString & a_CharactersMissing);
-
- /** Reads a number from a string given, starting at a given position and ending at a delimiter given
- Updates beginning position to the delimiter found + 1, and updates the value to the one read
- If it encounters a substring that is not fully numeric, it will call SetParseError() and return false; the caller should abort processing
- Otherwise, the function will return true
- */
- static bool ReadMandatoryNumber(AString::size_type & a_Begin, const AString & a_Delimiter, const AString & a_Text, unsigned int a_Line, int & a_Value, bool a_IsLastValue = false);
-
- /** Reads two numbers from a string given, starting at a given position and ending at the first delimiter given, then again (with an updated position) until the second delimiter given
- Updates beginning position to the second delimiter found + 1, and updates the values to the ones read
- If it encounters a substring that is not fully numeric whilst reading the second value, it will call SetParseError() and return false; the caller should abort processing
- If this happens whilst reading the first value, it will call ReadMandatoryNumber() with the appropriate position, as this may legitimately occur with the optional value and AString::find_first_of finding the incorrect delimiter. It will return the result of ReadMandatoryNumber()
- True will be returned definitively for an optional value that is valid
- */
- static bool ReadOptionalNumbers(AString::size_type & a_Begin, const AString & a_DelimiterOne, const AString & a_DelimiterTwo, const AString & a_Text, unsigned int a_Line, int & a_ValueOne, int & a_ValueTwo, bool a_IsLastValue = false);
-
- /** Uses std::all_of to determine if a string contains only digits */
- static bool DoesStringContainOnlyNumbers(const AString & a_String);
-
+ /** Parses an item string in the format "<ItemType>[^<Damage>][,<Amount>]", returns true if successful. */
+ bool ParseItem(const AString & a_String, cItem & a_Item);
struct sFurnaceRecipeState;
sFurnaceRecipeState * m_pState;