mirror of
https://github.com/HabitRPG/habitica.git
synced 2025-12-16 14:17:22 +01:00
* Re-organize common folder * fix: Correct paths in tests * fix: move new content to proper folder * chore: Move audio folder to assets * Move sprites to sprites assets directory * Move css sprites to assets directory * Split out readmes for common code and sprites * Move images to assets directory * Move destinatin of shared browserified file * remove unused file * move compiled js to client-old * Fix karma tests * fix: Correct paths for sprites
32 lines
739 B
JavaScript
32 lines
739 B
JavaScript
import resetGear from '../fns/resetGear';
|
|
import i18n from '../i18n';
|
|
|
|
module.exports = function reset (user, tasks = [], req = {}) {
|
|
user.stats.hp = 50;
|
|
user.stats.lvl = 1;
|
|
user.stats.gp = 0;
|
|
user.stats.exp = 0;
|
|
|
|
let tasksToRemove = [];
|
|
tasks.forEach(task => {
|
|
if (!task.challenge || !task.challenge.id || task.challenge.broken) {
|
|
tasksToRemove.push(task._id);
|
|
let i = user.tasksOrder[`${task.type}s`].indexOf(task._id);
|
|
if (i !== -1) user.tasksOrder[`${task.type}s`].splice(i, 1);
|
|
}
|
|
});
|
|
|
|
resetGear(user);
|
|
|
|
user.preferences.automaticAllocation = false;
|
|
|
|
if (req.v2 === true) {
|
|
return user;
|
|
} else {
|
|
return [
|
|
{user, tasksToRemove},
|
|
i18n.t('resetComplete'),
|
|
];
|
|
}
|
|
};
|