diff --git a/cf-lib/changelog.txt b/cf-lib/changelog.txt index 9955581..bb6d348 100644 --- a/cf-lib/changelog.txt +++ b/cf-lib/changelog.txt @@ -1,9 +1,4 @@ --------------------------------------------------------------------------------------------------- -Version: 0.0.13 -Date: 23.05.2025 - Changes: - Add Item class ---------------------------------------------------------------------------------------------------- Version: 0.0.12 Date: 06.04.2025 Changes: diff --git a/cf-lib/data/Item.lua b/cf-lib/data/Item.lua deleted file mode 100644 index e7cc877..0000000 --- a/cf-lib/data/Item.lua +++ /dev/null @@ -1,52 +0,0 @@ ---- Utility class for a single item ---- @class Item -local Item = {} - ---- Pass an item name or an item table to get a Item object ---- @param value string|table The name of the item or the item table -function Item:new(value) - local name - local item - - if type(value) == "string" then - name = value - item = data.raw.item[name] - if not item then - log("Item not found: " .. name) - return nil - end - elseif type(value) == "table" then - name = value.name - item = value - end - - local obj = { - prototype = item - } - - setmetatable(obj, self) - self.__index = self - return obj -end - ---- Applies the item to the game -function Item:apply() - data:extend({ self.prototype }) -end - ---- Assigns data to the item ---- Shorthand for table.assign(item.prototype, data) ---- @param data table The data to assign -function Item:assign(data) - table.assign(self.prototype, data) - return self -end - ---- Sets the weight of the item calculated from given count per rocket. ---- @param count number The amount of items that fit into a rocket -function Item:itemsPerRocket(count) - self.prototype.weight = (1000 / count) * kg - return self -end - -return Item \ No newline at end of file diff --git a/cf-lib/data/Recipe.lua b/cf-lib/data/Recipe.lua index 6ca5192..1a5c67e 100644 --- a/cf-lib/data/Recipe.lua +++ b/cf-lib/data/Recipe.lua @@ -1,9 +1,9 @@ ---- Utility class for a single recipe ---- @class Recipe +---- Utility class for a single recipe +---- @class Recipe local Recipe = {} ---- Pass a recipe name or a recipe table to get a Recipe object ---- @param value string|table The name of the recipe or the recipe table +---- Pass a recipe name or a recipe table to get a Recipe object +---- @param value string|table The name of the recipe or the recipe table function Recipe:new(value) local name local recipe @@ -29,14 +29,14 @@ function Recipe:new(value) return obj end ---- Applies the recipe to the game +---- Applies the recipe to the game function Recipe:apply() data:extend({ self.prototype }) end ---- Assigns data to the recipe ---- Shorthand for table.assign(recipe.prototype, data) ---- @param data table The data to assign +---- Assigns data to the recipe +---- Shorthand for table.assign(recipe.prototype, data) +---- @param data table The data to assign function Recipe:assign(data) table.assign(self.prototype, data) return self @@ -148,8 +148,8 @@ function Recipe:unlockedByTechnology(technology) return self end ---- Clones the recipe ---- @param name string The name of the new recipe +---- Clones the recipe +---- @param name string The name of the new recipe function Recipe:clone(name) local clone = table.deepcopy(self.prototype) clone.name = name diff --git a/cf-lib/info.json b/cf-lib/info.json index d87420a..7691c7a 100644 --- a/cf-lib/info.json +++ b/cf-lib/info.json @@ -1,6 +1,6 @@ { "name": "cf-lib", - "version": "0.0.13", + "version": "0.0.12", "title": "cackling fiends library", "description": "Because I'd like to have my own library :-)", "author": "cackling fiend",