fix(pets): correct achievement logic

This commit is contained in:
Sabe Jones
2019-10-23 08:21:51 -05:00
parent 2b8e25833d
commit 51726d8d8e
3 changed files with 3 additions and 2 deletions

View File

@@ -72,6 +72,7 @@ describe('POST /user/feed/:pet/:food', () => {
const body = server.getWebhookData(uuid);
expect(user.achievements.allYourBase).to.not.equal(true);
expect(body.type).to.eql('mountRaised');
expect(body.pet).to.eql('Wolf-Base');
expect(body.message).to.eql(res.message);

View File

@@ -25,7 +25,7 @@ describe('POST /user/hatch/:egg/:hatchingPotion', () => {
expect(user.items.pets['Wolf-Base']).to.equal(5);
expect(user.items.eggs.Wolf).to.equal(0);
expect(user.items.hatchingPotions.Base).to.equal(0);
expect(user.achievements.aridAuthority).to.not.equal(true);
expect(user.achievements.backToBasics).to.not.equal(true);
expect(res).to.eql({
message: t('messageHatched'),

View File

@@ -53,7 +53,7 @@ export default function hatch (user, req = {}) {
if (!user.achievements[achievement.petAchievement]) {
const petIndex = findIndex(
keys(content.dropEggs),
animal => Number.isNaN(user.items.pets[`${animal}-${achievement.color}`]) || user.items.pets[`${animal}-${achievement.color}`] <= 0,
animal => !user.items.pets[`${animal}-${achievement.color}`] || user.items.pets[`${animal}-${achievement.color}`] <= 0,
);
if (petIndex === -1) {
user.achievements[achievement.petAchievement] = true;