diff --git a/cf-lib/changelog.txt b/cf-lib/changelog.txt index 3c59ed4..ae8b83d 100644 --- a/cf-lib/changelog.txt +++ b/cf-lib/changelog.txt @@ -1,26 +1,18 @@ --------------------------------------------------------------------------------------------------- -Version: 1.0.0 -Date: 23.11.2025 - Changes: - - Add table.filterKey - - Add class Settings - - Add Recipe:removeResult - - Add Recipe:addResult ---------------------------------------------------------------------------------------------------- Version: 0.0.14 Date: 10.06.2025 Changes: - - Add :merge + Add :merge --------------------------------------------------------------------------------------------------- Version: 0.0.13 Date: 23.05.2025 Changes: - - Add Item class + Add Item class --------------------------------------------------------------------------------------------------- Version: 0.0.12 Date: 06.04.2025 Changes: - - Add table.count + Add table.count --------------------------------------------------------------------------------------------------- Version: 0.0.11 Date: 28.03.2025 diff --git a/cf-lib/data/Recipe.lua b/cf-lib/data/Recipe.lua index 199005c..01358d5 100644 --- a/cf-lib/data/Recipe.lua +++ b/cf-lib/data/Recipe.lua @@ -112,50 +112,14 @@ function Recipe:removeIngredient(ingredientName) return self end ---- Adds a result to the recipe ---- @param resultName string The name of the result ---- @param amount number|table The amount of the result (default: 1) or a table with custom properties -function Recipe:addResult(resultName, amount) - local props = amount - if type(props) == "string" then - props = { amount = props } - end - if not props.amount then - props.amount = 1 - end - local resultType = data.raw.item[resultName] and "item" - or data.raw.module[resultName] and "item" - or data.raw.fluid[resultName] and "fluid" - or nil - if not resultType then - log("Unknown result: " .. resultName) - return - end - self.prototype.results = self.prototype.results or {} - for _, result in pairs(self.prototype.results) do - if result.name == resultName then - result.amount = nil - result.amount_min = nil - result.amount_max = nil - result.probability = nil - for k, v in pairs(props) do - result[k] = v - end - return self - end - end - props.name = resultName - props.type = resultType - table.insert(self.prototype.results, props) - return self -end - --- Replaces an existing result by name with a new result --- @param old string The name of the existing result --- @param new? string The name of the new result --- @param amount? number The amount of the new result (keeps the old value if not set) -function Recipe:replaceResult(old, new, amount) +--- @param expensiveAmount? number The amount of the new result for the expensive recipe (uses amount if not set) +function Recipe:replaceResult(old, new, amount, expensiveAmount) if type(new) == "number" then + expensiveAmount = amount amount = new new = old end diff --git a/cf-lib/info.json b/cf-lib/info.json index e023b1e..15a2c72 100644 --- a/cf-lib/info.json +++ b/cf-lib/info.json @@ -1,6 +1,6 @@ { "name": "cf-lib", - "version": "1.0.0", + "version": "0.0.14", "title": "cackling fiends library", "description": "Because I'd like to have my own library :-)", "author": "cackling fiend",