@rpg-engine/long-bow 0.8.91 → 0.8.92

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.
@@ -36557,15 +36557,10 @@ var SkillProgressBar = function SkillProgressBar(_ref) {
36557
36557
  var effectiveLevel = calculateEffectiveLevel();
36558
36558
  // Calculate progress based on actual SP position
36559
36559
  var calculateProgress = function calculateProgress() {
36560
- if (!skillKey) {
36561
- // Fallback for general "Level" display: simple ratio of current SP to next level
36562
- var spForCurrentLevel = shared.getSPForLevel(level);
36563
- var _spForNextLevel = shared.getSPForLevel(level + 1);
36564
- var _range = _spForNextLevel - spForCurrentLevel;
36565
- var _progress = currentSkillPoints - spForCurrentLevel;
36566
- return Math.min(99.99, Math.max(0, _progress / _range * 100));
36567
- }
36568
- var _getSkillConstants2 = shared.getSkillConstants(skillKey, effectiveClass),
36560
+ // Use exponential formula for all skill progress calculations
36561
+ // For character XP (when skillKey is not provided), use default constants
36562
+ var skillName = skillKey != null ? skillKey : 'level';
36563
+ var _getSkillConstants2 = shared.getSkillConstants(skillName, effectiveClass),
36569
36564
  A = _getSkillConstants2.A,
36570
36565
  b = _getSkillConstants2.b,
36571
36566
  c = _getSkillConstants2.c;
@@ -36573,11 +36568,11 @@ var SkillProgressBar = function SkillProgressBar(_ref) {
36573
36568
  var actualLevel = Math.floor(shared.getLevelFromSP(currentSkillPoints, A, b, c));
36574
36569
  var calcLevel = Math.max(c, actualLevel); // Use c as minimum for calculation
36575
36570
  // Calculate SP thresholds based on actual position
36576
- var spForCalcLevel = shared.getSPForLevelExponential(calcLevel, A, b, c);
36577
- var spForNextLevel = shared.getSPForLevelExponential(calcLevel + 1, A, b, c);
36578
- // Progress within current level range
36579
- var range = spForNextLevel - spForCalcLevel;
36580
- var progressInLevel = currentSkillPoints - spForCalcLevel;
36571
+ var currentLevelSP = shared.getSPForLevelExponential(calcLevel, A, b, c);
36572
+ var nextLevelSP = shared.getSPForLevelExponential(calcLevel + 1, A, b, c);
36573
+ // Progress within current level range: (currentSP - currentLevelSP) / (nextLevelSP - currentLevelSP)
36574
+ var range = nextLevelSP - currentLevelSP;
36575
+ var progressInLevel = currentSkillPoints - currentLevelSP;
36581
36576
  return Math.min(99.99, Math.max(0, progressInLevel / Math.max(1, range) * 100));
36582
36577
  };
36583
36578
  var progress = calculateProgress();