diff --git a/migrations/archive/2019/20190927_kickstarter.js b/migrations/archive/2019/20190927_kickstarter.js index 7973a7d3a4..a62ed15350 100644 --- a/migrations/archive/2019/20190927_kickstarter.js +++ b/migrations/archive/2019/20190927_kickstarter.js @@ -14,6 +14,7 @@ async function updateUser (user) { let push = {pinnedItems: {$each: []}}; set.migration = MIGRATION_NAME; + set['achievements.ks2019'] = true; // set['items.gear.owned.armor_special_ks2019'] = false; // push.pinnedItems.$each.push({type: 'marketGear', path: 'gear.flat.armor_special_ks2019', _id: uuid()}); diff --git a/website/common/locales/en/achievements.json b/website/common/locales/en/achievements.json index db8b78ea2b..7de4a1baf9 100644 --- a/website/common/locales/en/achievements.json +++ b/website/common/locales/en/achievements.json @@ -24,5 +24,7 @@ "achievementDustDevilModalText": "You collected all the Desert Pets!", "achievementAridAuthority": "Arid Authority", "achievementAridAuthorityText": "Has tamed all Desert Mounts.", - "achievementAridAuthorityModalText": "You tamed all the Desert Mounts!" + "achievementAridAuthorityModalText": "You tamed all the Desert Mounts!", + "achievementKickstarter2019": "Pin Kickstarter Backer", + "achievementKickstarter2019Text": "Backed the 2019 Pin Kickstarter Project" } diff --git a/website/common/script/content/achievements.js b/website/common/script/content/achievements.js index 154bf78011..c39939383d 100644 --- a/website/common/script/content/achievements.js +++ b/website/common/script/content/achievements.js @@ -193,6 +193,11 @@ let specialAchievs = { pluralTitleKey: 'helped', pluralTextKey: 'surveysMultiple', }, + kickstarter2019: { + icon: 'achievement-kickstarter2019', + titleKey: 'achievementKickstarter2019', + textKey: 'achievementKickstarter2019Text', + }, }; Object.assign(achievementsData, specialAchievs); diff --git a/website/common/script/libs/achievements.js b/website/common/script/libs/achievements.js index fe386361e6..64ac15b06c 100644 --- a/website/common/script/libs/achievements.js +++ b/website/common/script/libs/achievements.js @@ -300,6 +300,10 @@ function _getSpecialAchievements (user, language) { _addSimple(result, user, {path: 'originalUser', language}); } + if (user.achievements.kickstarter2019) { + _addSimple(result, user, {path: 'kickstarter2019', language}); + } + return result; } diff --git a/website/raw_sprites/spritesmith/achievements/achievement-kickstarter20192x.png b/website/raw_sprites/spritesmith/achievements/achievement-kickstarter20192x.png new file mode 100644 index 0000000000..2e4af4aca6 Binary files /dev/null and b/website/raw_sprites/spritesmith/achievements/achievement-kickstarter20192x.png differ diff --git a/website/server/models/user/schema.js b/website/server/models/user/schema.js index af34f85226..a4b157f805 100644 --- a/website/server/models/user/schema.js +++ b/website/server/models/user/schema.js @@ -126,6 +126,7 @@ let schema = new Schema({ allYourBase: Boolean, dustDevil: Boolean, aridAuthority: Boolean, + kickstarter2019: Boolean, }, backer: {