// // Created by sebastian on 20.02.26. // #ifndef DICEWARS_SIEDLER_UPGRADECOMPONENT_H #define DICEWARS_SIEDLER_UPGRADECOMPONENT_H #include "../../../../engine/core/ECS/Component.h" class UpgradeComponent : public Component { public: UpgradeComponent(int currentLevel = 1, int maxLevel = 1): currentLevel(currentLevel), maxLevel(maxLevel) {} [[nodiscard]] int getCurrentLevel() const {return currentLevel;} [[nodiscard]] int getMaxLevel() const {return maxLevel;} [[nodiscard]] bool canUpgrade() const {return currentLevel < maxLevel;} void upgrade() {currentLevel++;} void setMaxLevel(int maxLevel); public: private: int currentLevel = 1; int maxLevel = 1; }; #endif //DICEWARS_SIEDLER_UPGRADECOMPONENT_H