diff --git a/cf-lib/changelog.txt b/cf-lib/changelog.txt index f658edc..d9e2ead 100644 --- a/cf-lib/changelog.txt +++ b/cf-lib/changelog.txt @@ -1,20 +1,4 @@ --------------------------------------------------------------------------------------------------- -Version: 1.4.0 -Date: 10.01.2026 - Changes: - - Add Entity.setFilename ---------------------------------------------------------------------------------------------------- -Version: 1.3.0 -Date: 24.12.2025 - Changes: - - :apply() returns self - - Add Recipe:addIndicatorIcon() ---------------------------------------------------------------------------------------------------- -Version: 1.2.0 -Date: 14.12.2025 - Changes: - - Add class Entity ---------------------------------------------------------------------------------------------------- Version: 1.1.0 Date: 12.12.2025 Changes: diff --git a/cf-lib/data/Entity.lua b/cf-lib/data/Entity.lua deleted file mode 100644 index 10172ad..0000000 --- a/cf-lib/data/Entity.lua +++ /dev/null @@ -1,46 +0,0 @@ ---- Utility class for entity prototype definitions ---- @class Entity -local Entity = {} - ---- Generates a selection box definition using width and height of the entity in tiles. ---- @param width number The width of the entity in tiles ---- @param height number The height of the entity in tiles ---- @return table A table containing the selection box definition -Entity.selectionBox = function(width, height) - return { - { -width / 2, -height / 2 }, - { width / 2, height / 2 } - } -end - ---- Generates a collision box definition using width and height of the entity in tiles. ---- @param width number The width of the entity in tiles ---- @param height number The height of the entity in tiles ---- @param margin number The margin to apply to the collision box compared to the selection box (default: 0.3) ---- @return table A table containing the collision box definition -Entity.collisionBox = function(width, height, margin) - margin = margin or 0.1 - return { - { -width / 2 + margin, -height / 2 + margin }, - { width / 2 - margin, height / 2 - margin } - } -end - ---- Sets the file name on a picture considering various formats. ---- If sheets or layers are found, use the optional param to select the right one. ---- @param sprite table The sprite to replace the filename in ---- @param filename string The new filename ---- @param sheetLayer number The sheet or layer index to use. Defaults to 1. -Entity.setFilename = function(sprite, filename, sheetLayer) - if sprite.filename then - sprite.filename = filename - elseif sprite.sheet then - sprite.sheet.filename = filename - elseif sprite.sheets then - sprite.sheets[sheetLayer or 1].filename = filename - elseif sprite.layers then - sprite.layers[sheetLayer or 1].filename = filename - end -end - -return Entity \ No newline at end of file diff --git a/cf-lib/data/Item.lua b/cf-lib/data/Item.lua index a7d753c..5934a72 100644 --- a/cf-lib/data/Item.lua +++ b/cf-lib/data/Item.lua @@ -32,7 +32,6 @@ end --- Applies the item to the game function Item:apply() data:extend({ self.prototype }) - return self end --- Assigns data to the item @@ -51,7 +50,7 @@ function Item:merge(data) return self end ---- Sets the weight of the item calculated from given count per rocket +--- 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 diff --git a/cf-lib/data/Recipe.lua b/cf-lib/data/Recipe.lua index 32a9d67..213aa14 100644 --- a/cf-lib/data/Recipe.lua +++ b/cf-lib/data/Recipe.lua @@ -32,7 +32,6 @@ end --- Applies the recipe to the game function Recipe:apply() data:extend({ self.prototype }) - return self end --- Assigns data to the recipe @@ -226,26 +225,4 @@ function Recipe:clone(name) return Recipe:new(clone) end ---- Adds a small icon in the corner of the regular item ---- It currently assumes an icon_size of 64 ---- @param icon string The filename of the icon ---- @param position string The position of the icon. One of ["top-left", "top-right", "bottom-left", "bottom-right"]. Defaults to "bottom-right". -function Recipe:addIndicatorIcon(icon, position) - local icons = self.prototype.icons or {} - local mainIcon = icons[1] or self.prototype.icon or nil - if not mainIcon then - local result = self.prototype.results[1] - local resultItem = data.raw[result.type][result.name] - icons = resultItem.icons or {{ icon = resultItem.icon }} - end - local shift = { 8, 8 } - if position == "top-left" then shift = { -8, -8 } end - if position == "top-right" then shift = { 8, -8 } end - if position == "bottom-left" then shift = { -8, 8 } end - table.insert(icons, { icon = icon, scale = 0.25, shift = shift }) - self.prototype.icons = icons - log(serpent.block(self.prototype.icons)) - return self -end - return Recipe diff --git a/cf-lib/data/Technology.lua b/cf-lib/data/Technology.lua index 3dd3b48..13a1dd9 100644 --- a/cf-lib/data/Technology.lua +++ b/cf-lib/data/Technology.lua @@ -40,7 +40,6 @@ end --- Applies the technology to the game function Technology:apply() data:extend({ self.prototype }) - return self end --- Assigns data to the technology diff --git a/cf-lib/info.json b/cf-lib/info.json index 77044a6..69d149c 100644 --- a/cf-lib/info.json +++ b/cf-lib/info.json @@ -1,6 +1,6 @@ { "name": "cf-lib", - "version": "1.4.0", + "version": "1.1.0", "title": "cackling fiends library", "description": "Because I'd like to have my own library :-)", "author": "cackling fiend",