mirror of
https://github.com/HabitRPG/habitica.git
synced 2025-12-19 15:48:04 +01:00
fix statsComputed getter
This commit is contained in:
@@ -222,14 +222,13 @@ api.wrap = function wrapUser (user, main = true) {
|
|||||||
get () {
|
get () {
|
||||||
let computed = _.reduce(['per', 'con', 'str', 'int'], (m, stat) => {
|
let computed = _.reduce(['per', 'con', 'str', 'int'], (m, stat) => {
|
||||||
m[stat] = _.reduce($w('stats stats.buffs items.gear.equipped.weapon items.gear.equipped.armor items.gear.equipped.head items.gear.equipped.shield'), (m2, path) => {
|
m[stat] = _.reduce($w('stats stats.buffs items.gear.equipped.weapon items.gear.equipped.armor items.gear.equipped.head items.gear.equipped.shield'), (m2, path) => {
|
||||||
let val = user.fns.dotGet(path);
|
|
||||||
let item;
|
let item;
|
||||||
return m2 + (path.indexOf('items.gear') !== -1 ? (item = content.gear.flat[val], (Number(!item ? item[stat] : undefined) || 0) * ((!item ? item.klass : undefined) === user.stats.class || (!item ? item.specialClass : undefined) === user.stats.class ? 1.5 : 1)) : Number(val[stat]) || 0);
|
let val = user.fns.dotGet(path);
|
||||||
|
return m2 + (path.indexOf('items.gear') !== -1 ? (item = content.gear.flat[val], (Number(item ? item[stat] : undefined) || 0) * ((item ? item.klass : undefined) === user.stats.class || (item ? item.specialClass : undefined) === user.stats.class ? 1.5 : 1)) : Number(val[stat]) || 0);
|
||||||
}, 0);
|
}, 0);
|
||||||
m[stat] += Math.floor(api.capByLevel(user.stats.lvl) / 2);
|
m[stat] += Math.floor(api.capByLevel(user.stats.lvl) / 2);
|
||||||
return m;
|
return m;
|
||||||
});
|
}, {});
|
||||||
|
|
||||||
computed.maxMP = computed.int * 2 + 30;
|
computed.maxMP = computed.int * 2 + 30;
|
||||||
return computed;
|
return computed;
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -9,7 +9,7 @@ import {
|
|||||||
import { v4 as generateUUID } from 'uuid';
|
import { v4 as generateUUID } from 'uuid';
|
||||||
|
|
||||||
describe('DELETE /challenges/:challengeId', () => {
|
describe('DELETE /challenges/:challengeId', () => {
|
||||||
it.only('returns error when challengeId is not a valid UUID', async () => {
|
it('returns error when challengeId is not a valid UUID', async () => {
|
||||||
let user = await generateUser();
|
let user = await generateUser();
|
||||||
await expect(user.del(`/challenges/test`)).to.eventually.be.rejected.and.eql({
|
await expect(user.del(`/challenges/test`)).to.eventually.be.rejected.and.eql({
|
||||||
code: 400,
|
code: 400,
|
||||||
|
|||||||
Reference in New Issue
Block a user