add item 'uses-display' property

This commit is contained in:
MihailRis
2025-02-18 03:24:52 +03:00
parent 449b0ebca4
commit df2cff3e4c
4 changed files with 56 additions and 13 deletions
+2
View File
@@ -15,4 +15,6 @@ void ItemDef::cloneTo(ItemDef& dst) {
dst.placingBlock = placingBlock;
dst.scriptName = scriptName;
dst.modelName = modelName;
dst.uses = uses;
dst.usesDisplay = usesDisplay;
}
+10
View File
@@ -19,6 +19,13 @@ enum class ItemIconType {
BLOCK, // block preview: icon is string block id
};
enum class ItemUsesDisplay {
NONE, // uses count is not displayed
RELATION, // uses count is displayed as `remain/default` relation
VBAR, // uses count is displayed as vertical bar without counter
DEFAULT = VBAR,
};
struct ItemDef {
/// @brief Item string id (with prefix included)
std::string const name;
@@ -40,6 +47,9 @@ struct ItemDef {
/// @brief Default item uses count
int16_t uses = -1;
/// @brief Item uses count display mode
ItemUsesDisplay usesDisplay = ItemUsesDisplay::DEFAULT;
ItemIconType iconType = ItemIconType::SPRITE;
std::string icon = "blocks:notfound";