@rpg-engine/long-bow 0.6.45 → 0.6.47

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -32129,27 +32129,38 @@ var ProgressBarContainer = /*#__PURE__*/styled__default.div.withConfig({
32129
32129
  var SkillProgressBar = function SkillProgressBar(_ref) {
32130
32130
  var bgColor = _ref.bgColor,
32131
32131
  skillName = _ref.skillName,
32132
- level = _ref.level,
32133
- skillPoints = _ref.skillPoints,
32134
- skillPointsToNextLevel = _ref.skillPointsToNextLevel,
32132
+ initialLevel = _ref.level,
32133
+ initialSkillPoints = _ref.skillPoints,
32134
+ initialSkillPointsToNextLevel = _ref.skillPointsToNextLevel,
32135
32135
  texturePath = _ref.texturePath,
32136
32136
  _ref$showSkillPoints = _ref.showSkillPoints,
32137
32137
  showSkillPoints = _ref$showSkillPoints === void 0 ? true : _ref$showSkillPoints,
32138
32138
  atlasIMG = _ref.atlasIMG,
32139
32139
  atlasJSON = _ref.atlasJSON,
32140
32140
  buffAndDebuff = _ref.buffAndDebuff;
32141
- if (!skillPointsToNextLevel) {
32142
- skillPointsToNextLevel = shared.getSPForLevel(level + 1);
32143
- }
32144
- // Calculate the ratio for progress bar, ensuring it doesn't exceed 100% and resets to 0 on level up
32145
- var ratio = level > 0 ? Math.min(skillPoints / skillPointsToNextLevel * 100, 100) : 0;
32141
+ var _useState = React.useState(initialLevel),
32142
+ level = _useState[0],
32143
+ setLevel = _useState[1];
32144
+ var _useState2 = React.useState(initialSkillPoints),
32145
+ skillPoints = _useState2[0],
32146
+ setSkillPoints = _useState2[1];
32147
+ var _useState3 = React.useState(initialSkillPointsToNextLevel != null ? initialSkillPointsToNextLevel : shared.getSPForLevel(initialLevel + 1)),
32148
+ skillPointsToNextLevel = _useState3[0],
32149
+ setSkillPointsToNextLevel = _useState3[1];
32150
+ React.useEffect(function () {
32151
+ if (skillPoints >= skillPointsToNextLevel) {
32152
+ var excessSkillPoints = skillPoints - skillPointsToNextLevel;
32153
+ var newLevel = level + 1;
32154
+ setLevel(newLevel);
32155
+ setSkillPoints(excessSkillPoints);
32156
+ setSkillPointsToNextLevel(shared.getSPForLevel(newLevel + 1));
32157
+ }
32158
+ }, [skillPoints, skillPointsToNextLevel, level]);
32159
+ // Calculate the ratio for progress bar, ensuring it doesn't exceed 100%
32160
+ var ratio = Math.min(skillPoints / skillPointsToNextLevel * 100, 100);
32146
32161
  var skillsBuffsCalc = function skillsBuffsCalc(level, buffAndDebuff) {
32147
32162
  var result = level * (buffAndDebuff / 100);
32148
- if (result > 0) {
32149
- return "+" + result.toFixed(2);
32150
- } else {
32151
- return "" + result.toFixed(2);
32152
- }
32163
+ return result > 0 ? "+" + result.toFixed(2) : "" + result.toFixed(2);
32153
32164
  };
32154
32165
  return React__default.createElement(React__default.Fragment, null, React__default.createElement(ProgressTitle, null, buffAndDebuff !== undefined && React__default.createElement(React__default.Fragment, null, buffAndDebuff > 0 ? React__default.createElement(BuffAndDebuffContainer, null, React__default.createElement(TitleNameContainer, null, React__default.createElement(TitleNameBuff, null, skillName), React__default.createElement(TitleNameBuff, null, "lv ", level, " (", skillsBuffsCalc(level, buffAndDebuff), ")")), React__default.createElement(TitleNameBuffContainer, null, React__default.createElement(TitleNameBuff, null, "(+", buffAndDebuff, "%)"))) : buffAndDebuff < 0 ? React__default.createElement(React__default.Fragment, null, React__default.createElement(TitleNameContainer, null, React__default.createElement(TitleNameDebuff, null, skillName), React__default.createElement(TitleNameDebuff, null, "lv ", level, " (", skillsBuffsCalc(level, buffAndDebuff), ")")), React__default.createElement("div", null, React__default.createElement(TitleNameDebuff, null, "(", buffAndDebuff, "%)"))) : React__default.createElement(TitleName, null, skillName)), !buffAndDebuff && React__default.createElement(TitleNameContainer, null, React__default.createElement(TitleName, null, skillName), React__default.createElement(ValueDisplay, null, "lv ", level))), React__default.createElement(ProgressBody, null, React__default.createElement(ProgressIconContainer, null, atlasIMG && atlasJSON ? React__default.createElement(SpriteContainer$2, null, React__default.createElement(ErrorBoundary, null, React__default.createElement(SpriteFromAtlas, {
32155
32166
  atlasIMG: atlasIMG,