HOTFOX: Fix edge case in skillpoints engine if only crafted gear is present

in addition to weapon
because somehow crafted gear is handled separately

TODO: look at this and disentangle the logic perhaps?
This commit is contained in:
hppeng 2022-08-02 06:47:25 -07:00
parent 2b52264366
commit 6741125373

View file

@ -187,8 +187,17 @@ function calculate_skillpoints(equipment, weapon) {
permute_check(idx+1, skillpoints_applied, skillpoints, activeSetCounts, has_skillpoint, total_applied, order.concat(permutation.map(x => x.item))); permute_check(idx+1, skillpoints_applied, skillpoints, activeSetCounts, has_skillpoint, total_applied, order.concat(permutation.map(x => x.item)));
} }
} }
if (sccs.length === 1) {
// Only crafteds. Just do end check (check req first, then apply sp after)
const total = check_end(best_skillpoints, final_skillpoints, best_activeSetCounts, allFalse.slice());
final_skillpoints = best_skillpoints;
best_total = total;
best_activeSetCounts = best_activeSetCounts;
best = [];
} else {
// skip root. // skip root.
permute_check(1, best_skillpoints, final_skillpoints, best_activeSetCounts, allFalse.slice(), 0, []); permute_check(1, best_skillpoints, final_skillpoints, best_activeSetCounts, allFalse.slice(), 0, []);
}
// add extra sp bonus // add extra sp bonus
apply_skillpoints(final_skillpoints, weapon, best_activeSetCounts); apply_skillpoints(final_skillpoints, weapon, best_activeSetCounts);