Compare commits
No commits in common. "master" and "1.2.0" have entirely different histories.
6 changed files with 2 additions and 55 deletions
|
|
@ -1,15 +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
|
Version: 1.2.0
|
||||||
Date: 14.12.2025
|
Date: 14.12.2025
|
||||||
Changes:
|
Changes:
|
||||||
|
|
|
||||||
|
|
@ -26,21 +26,4 @@ Entity.collisionBox = function(width, height, margin)
|
||||||
}
|
}
|
||||||
end
|
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
|
return Entity
|
||||||
|
|
@ -32,7 +32,6 @@ end
|
||||||
--- Applies the item to the game
|
--- Applies the item to the game
|
||||||
function Item:apply()
|
function Item:apply()
|
||||||
data:extend({ self.prototype })
|
data:extend({ self.prototype })
|
||||||
return self
|
|
||||||
end
|
end
|
||||||
|
|
||||||
--- Assigns data to the item
|
--- Assigns data to the item
|
||||||
|
|
@ -51,7 +50,7 @@ function Item:merge(data)
|
||||||
return self
|
return self
|
||||||
end
|
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
|
--- @param count number The amount of items that fit into a rocket
|
||||||
function Item:itemsPerRocket(count)
|
function Item:itemsPerRocket(count)
|
||||||
self.prototype.weight = (1000 / count) * kg
|
self.prototype.weight = (1000 / count) * kg
|
||||||
|
|
|
||||||
|
|
@ -32,7 +32,6 @@ end
|
||||||
--- Applies the recipe to the game
|
--- Applies the recipe to the game
|
||||||
function Recipe:apply()
|
function Recipe:apply()
|
||||||
data:extend({ self.prototype })
|
data:extend({ self.prototype })
|
||||||
return self
|
|
||||||
end
|
end
|
||||||
|
|
||||||
--- Assigns data to the recipe
|
--- Assigns data to the recipe
|
||||||
|
|
@ -226,26 +225,4 @@ function Recipe:clone(name)
|
||||||
return Recipe:new(clone)
|
return Recipe:new(clone)
|
||||||
end
|
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
|
return Recipe
|
||||||
|
|
|
||||||
|
|
@ -40,7 +40,6 @@ end
|
||||||
--- Applies the technology to the game
|
--- Applies the technology to the game
|
||||||
function Technology:apply()
|
function Technology:apply()
|
||||||
data:extend({ self.prototype })
|
data:extend({ self.prototype })
|
||||||
return self
|
|
||||||
end
|
end
|
||||||
|
|
||||||
--- Assigns data to the technology
|
--- Assigns data to the technology
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "cf-lib",
|
"name": "cf-lib",
|
||||||
"version": "1.4.0",
|
"version": "1.2.0",
|
||||||
"title": "cackling fiends library",
|
"title": "cackling fiends library",
|
||||||
"description": "Because I'd like to have my own library :-)",
|
"description": "Because I'd like to have my own library :-)",
|
||||||
"author": "cackling fiend",
|
"author": "cackling fiend",
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue