@rpg-engine/long-bow 0.8.93 → 0.8.95
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.
- package/dist/long-bow.cjs.development.js +25 -18
- package/dist/long-bow.cjs.development.js.map +1 -1
- package/dist/long-bow.cjs.production.min.js +1 -1
- package/dist/long-bow.cjs.production.min.js.map +1 -1
- package/dist/long-bow.esm.js +26 -19
- package/dist/long-bow.esm.js.map +1 -1
- package/package.json +2 -2
- package/src/components/SkillProgressBar.tsx +23 -8
- package/src/components/SkillsContainer.tsx +4 -7
- package/src/components/Spellbook/Spell.tsx +1 -1
|
@@ -36532,7 +36532,6 @@ var SkillProgressBar = function SkillProgressBar(_ref) {
|
|
|
36532
36532
|
skillName = _ref.skillName,
|
|
36533
36533
|
skillKey = _ref.skillKey,
|
|
36534
36534
|
characterClass = _ref.characterClass,
|
|
36535
|
-
level = _ref.level,
|
|
36536
36535
|
currentSkillPoints = _ref.skillPoints,
|
|
36537
36536
|
texturePath = _ref.texturePath,
|
|
36538
36537
|
_ref$showSkillPoints = _ref.showSkillPoints,
|
|
@@ -36542,11 +36541,13 @@ var SkillProgressBar = function SkillProgressBar(_ref) {
|
|
|
36542
36541
|
buffAndDebuff = _ref.buffAndDebuff;
|
|
36543
36542
|
// Use CharacterClass.None as default if skillKey is provided but characterClass is not
|
|
36544
36543
|
var effectiveClass = characterClass != null ? characterClass : shared.CharacterClass.None;
|
|
36545
|
-
// Calculate the effective level based on actual SP (handles data inconsistencies)
|
|
36544
|
+
// Calculate the effective level based on actual SP/XP (handles data inconsistencies)
|
|
36546
36545
|
var calculateEffectiveLevel = function calculateEffectiveLevel() {
|
|
36547
36546
|
if (!skillKey) {
|
|
36548
|
-
|
|
36547
|
+
// Character level: uses cubic formula (level³ * 3)
|
|
36548
|
+
return Math.max(1, shared.getLevelFromXP(currentSkillPoints));
|
|
36549
36549
|
}
|
|
36550
|
+
// Skills: use exponential formula with class-based constants
|
|
36550
36551
|
var _getSkillConstants = shared.getSkillConstants(skillKey, effectiveClass),
|
|
36551
36552
|
A = _getSkillConstants.A,
|
|
36552
36553
|
b = _getSkillConstants.b,
|
|
@@ -36555,12 +36556,20 @@ var SkillProgressBar = function SkillProgressBar(_ref) {
|
|
|
36555
36556
|
return Math.max(1, actualLevel); // Minimum level is always 1 in our system
|
|
36556
36557
|
};
|
|
36557
36558
|
var effectiveLevel = calculateEffectiveLevel();
|
|
36558
|
-
// Calculate progress based on actual SP position
|
|
36559
|
+
// Calculate progress based on actual SP/XP position
|
|
36559
36560
|
var calculateProgress = function calculateProgress() {
|
|
36560
|
-
//
|
|
36561
|
-
|
|
36562
|
-
|
|
36563
|
-
|
|
36561
|
+
// Character level uses cubic XP formula, skills use exponential SP formula
|
|
36562
|
+
if (!skillKey) {
|
|
36563
|
+
// Character level: uses cubic formula (level³ * 3)
|
|
36564
|
+
var _actualLevel = Math.max(1, shared.getLevelFromXP(currentSkillPoints));
|
|
36565
|
+
var currentLevelXP = shared.getXPForLevel(_actualLevel);
|
|
36566
|
+
var nextLevelXP = shared.getXPForLevel(_actualLevel + 1);
|
|
36567
|
+
var _range = nextLevelXP - currentLevelXP;
|
|
36568
|
+
var _progressInLevel = currentSkillPoints - currentLevelXP;
|
|
36569
|
+
return Math.min(99.99, Math.max(0, _progressInLevel / Math.max(1, _range) * 100));
|
|
36570
|
+
}
|
|
36571
|
+
// Skills: use exponential formula with class-based constants
|
|
36572
|
+
var _getSkillConstants2 = shared.getSkillConstants(skillKey, effectiveClass),
|
|
36564
36573
|
A = _getSkillConstants2.A,
|
|
36565
36574
|
b = _getSkillConstants2.b,
|
|
36566
36575
|
c = _getSkillConstants2.c;
|
|
@@ -36735,16 +36744,14 @@ var SkillsContainer = function SkillsContainer(_ref) {
|
|
|
36735
36744
|
if (!skillDetails) {
|
|
36736
36745
|
return 0; // continue
|
|
36737
36746
|
}
|
|
36738
|
-
// Calculate skillPointsToNextLevel using exponential formula
|
|
36747
|
+
// Calculate skillPointsToNextLevel using exponential formula with character class
|
|
36739
36748
|
var calcSkillPointsToNextLevel = function calcSkillPointsToNextLevel() {
|
|
36740
|
-
|
|
36741
|
-
|
|
36742
|
-
|
|
36743
|
-
|
|
36744
|
-
|
|
36745
|
-
|
|
36746
|
-
}
|
|
36747
|
-
return Math.round(shared.getSPForLevel(skillDetails.level + 1));
|
|
36749
|
+
var effectiveClass = characterClass != null ? characterClass : shared.CharacterClass.None;
|
|
36750
|
+
var _getSkillConstants = shared.getSkillConstants(key, effectiveClass),
|
|
36751
|
+
A = _getSkillConstants.A,
|
|
36752
|
+
b = _getSkillConstants.b,
|
|
36753
|
+
c = _getSkillConstants.c;
|
|
36754
|
+
return Math.round(shared.getSPForLevelExponential(skillDetails.level + 1, A, b, c));
|
|
36748
36755
|
};
|
|
36749
36756
|
output.push(React__default.createElement(SkillProgressBar, {
|
|
36750
36757
|
key: key,
|
|
@@ -37154,7 +37161,7 @@ var SKILL_NAMES = {
|
|
|
37154
37161
|
shielding: 'shielding',
|
|
37155
37162
|
fishing: 'fishing',
|
|
37156
37163
|
cooking: 'cooking',
|
|
37157
|
-
|
|
37164
|
+
fistFighting: 'fist fighting'
|
|
37158
37165
|
};
|
|
37159
37166
|
var getSkillName = function getSkillName(attribute) {
|
|
37160
37167
|
return SKILL_NAMES[attribute] || attribute;
|