@rpg-engine/long-bow 0.8.79 → 0.8.81

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.
@@ -7,6 +7,7 @@ export interface ISkillProgressBarProps {
7
7
  texturePath: string;
8
8
  showSkillPoints?: boolean;
9
9
  skillPointsToNextLevel: number;
10
+ skillPointsForCurrentLevel: number;
10
11
  atlasJSON: any;
11
12
  atlasIMG: any;
12
13
  buffAndDebuff?: number;
@@ -1,7 +1,8 @@
1
- import { ISkill } from '@rpg-engine/shared';
1
+ import { CharacterClass, ISkill } from '@rpg-engine/shared';
2
2
  import React from 'react';
3
3
  export interface ISkillContainerProps {
4
4
  skill: ISkill;
5
+ characterClass: CharacterClass;
5
6
  onCloseButton: () => void;
6
7
  atlasJSON: any;
7
8
  atlasIMG: any;
@@ -36515,14 +36515,15 @@ var SkillProgressBar = function SkillProgressBar(_ref) {
36515
36515
  level = _ref.level,
36516
36516
  currentSkillPoints = _ref.skillPoints,
36517
36517
  skillPointsToNextLevel = _ref.skillPointsToNextLevel,
36518
+ skillPointsForCurrentLevel = _ref.skillPointsForCurrentLevel,
36518
36519
  texturePath = _ref.texturePath,
36519
36520
  _ref$showSkillPoints = _ref.showSkillPoints,
36520
36521
  showSkillPoints = _ref$showSkillPoints === void 0 ? true : _ref$showSkillPoints,
36521
36522
  atlasIMG = _ref.atlasIMG,
36522
36523
  atlasJSON = _ref.atlasJSON,
36523
36524
  buffAndDebuff = _ref.buffAndDebuff;
36524
- // Skill points needed to start the current level
36525
- var baseSkillPoints = shared.getSPForLevel(level);
36525
+ // Skill points needed to start the current level (passed from parent, calculated with correct formula)
36526
+ var baseSkillPoints = skillPointsForCurrentLevel;
36526
36527
  var calculateProgress = function calculateProgress() {
36527
36528
  var totalPointsForLevelUp = Math.max(1, skillPointsToNextLevel - baseSkillPoints);
36528
36529
  var excessSkillPoints = Math.max(0, currentSkillPoints - baseSkillPoints);
@@ -36668,6 +36669,7 @@ var skillNameMap = {
36668
36669
  var SkillsContainer = function SkillsContainer(_ref) {
36669
36670
  var onCloseButton = _ref.onCloseButton,
36670
36671
  skill = _ref.skill,
36672
+ characterClass = _ref.characterClass,
36671
36673
  atlasIMG = _ref.atlasIMG,
36672
36674
  atlasJSON = _ref.atlasJSON,
36673
36675
  scale = _ref.scale;
@@ -36687,13 +36689,22 @@ var SkillsContainer = function SkillsContainer(_ref) {
36687
36689
  if (!skillDetails) {
36688
36690
  continue;
36689
36691
  }
36692
+ // Get the skill constants for this skill and character class
36693
+ var _getSkillConstants = shared.getSkillConstants(key, characterClass),
36694
+ A = _getSkillConstants.A,
36695
+ b = _getSkillConstants.b,
36696
+ c = _getSkillConstants.c;
36697
+ // Calculate SP thresholds using exponential formula
36698
+ var skillPointsForCurrentLevel = shared.getSPForLevelExponential(skillDetails.level, A, b, c);
36699
+ var skillPointsToNextLevel = shared.getSPForLevelExponential(skillDetails.level + 1, A, b, c);
36690
36700
  output.push(React__default.createElement(SkillProgressBar, {
36691
36701
  key: key,
36692
36702
  skillName: skillNameMap[key],
36693
36703
  bgColor: skillCategoryColor,
36694
36704
  level: skillDetails.level || 0,
36695
36705
  skillPoints: Math.round(skillDetails.skillPoints) || 0,
36696
- skillPointsToNextLevel: Math.round(skillDetails.skillPointsToNextLevel) || 0,
36706
+ skillPointsToNextLevel: skillPointsToNextLevel,
36707
+ skillPointsForCurrentLevel: skillPointsForCurrentLevel,
36697
36708
  texturePath: value,
36698
36709
  atlasIMG: atlasIMG,
36699
36710
  atlasJSON: atlasJSON,
@@ -36719,6 +36730,7 @@ var SkillsContainer = function SkillsContainer(_ref) {
36719
36730
  level: Math.round(skill.level) || 0,
36720
36731
  skillPoints: Math.round(skill.experience) || 0,
36721
36732
  skillPointsToNextLevel: Math.round(shared.getXPForLevel(skill.level + 1)) || 0,
36733
+ skillPointsForCurrentLevel: Math.round(shared.getXPForLevel(skill.level)) || 0,
36722
36734
  texturePath: 'swords/broad-sword.png',
36723
36735
  atlasIMG: atlasIMG,
36724
36736
  atlasJSON: atlasJSON