feat(content): Habitica Birthday 2021

This commit is contained in:
Sabe Jones
2021-01-28 16:56:01 -06:00
parent 6022cb6c79
commit 6dbbdd8070
20 changed files with 3180 additions and 3059 deletions

View File

@@ -0,0 +1,94 @@
/* eslint-disable no-console */
const MIGRATION_NAME = '20210129_habit_birthday';
import { v4 as uuid } from 'uuid';
import { model as User } from '../../../website/server/models/user';
const progressCount = 1000;
let count = 0;
async function updateUser (user) {
count++;
const inc = {
'items.food.Cake_Skeleton': 1,
'items.food.Cake_Base': 1,
'items.food.Cake_CottonCandyBlue': 1,
'items.food.Cake_CottonCandyPink': 1,
'items.food.Cake_Shade': 1,
'items.food.Cake_White': 1,
'items.food.Cake_Golden': 1,
'items.food.Cake_Zombie': 1,
'items.food.Cake_Desert': 1,
'items.food.Cake_Red': 1,
'achievements.habitBirthdays': 1,
};
const set = {};
let push;
set.migration = MIGRATION_NAME;
if (typeof user.items.gear.owned.armor_special_birthday2020 !== 'undefined') {
set['items.gear.owned.armor_special_birthday2021'] = false;
push = {pinnedItems: {type: 'marketGear', path: 'gear.flat.armor_special_birthday2021', _id: uuid()}};
} else if (typeof user.items.gear.owned.armor_special_birthday2019 !== 'undefined') {
set['items.gear.owned.armor_special_birthday2020'] = false;
push = {pinnedItems: {type: 'marketGear', path: 'gear.flat.armor_special_birthday2020', _id: uuid()}};
} else if (typeof user.items.gear.owned.armor_special_birthday2018 !== 'undefined') {
set['items.gear.owned.armor_special_birthday2019'] = false;
push = {pinnedItems: {type: 'marketGear', path: 'gear.flat.armor_special_birthday2019', _id: uuid()}};
} else if (typeof user.items.gear.owned.armor_special_birthday2017 !== 'undefined') {
set['items.gear.owned.armor_special_birthday2018'] = false;
push = {pinnedItems: {type: 'marketGear', path: 'gear.flat.armor_special_birthday2018', _id: uuid()}};
} else if (typeof user.items.gear.owned.armor_special_birthday2016 !== 'undefined') {
set['items.gear.owned.armor_special_birthday2017'] = false;
push = {pinnedItems: {type: 'marketGear', path: 'gear.flat.armor_special_birthday2017', _id: uuid()}};
} else if (typeof user.items.gear.owned.armor_special_birthday2015 !== 'undefined') {
set['items.gear.owned.armor_special_birthday2016'] = false;
push = {pinnedItems: {type: 'marketGear', path: 'gear.flat.armor_special_birthday2016', _id: uuid()}};
} else if (typeof user.items.gear.owned.armor_special_birthday !== 'undefined') {
set['items.gear.owned.armor_special_birthday2015'] = false;
push = {pinnedItems: {type: 'marketGear', path: 'gear.flat.armor_special_birthday2015', _id: uuid()}};
} else {
set['items.gear.owned.armor_special_birthday'] = false;
push = {pinnedItems: {type: 'marketGear', path: 'gear.flat.armor_special_birthday', _id: uuid()}};
}
if (count % progressCount === 0) console.warn(`${count} ${user._id}`);
return await User.update({_id: user._id}, {$inc: inc, $set: set, $push: push}).exec();
}
export default async function processUsers () {
let query = {
// migration: {$ne: MIGRATION_NAME},
'auth.timestamps.loggedin': {$gt: new Date('2021-01-01')},
};
const fields = {
_id: 1,
items: 1,
};
while (true) { // eslint-disable-line no-constant-condition
const users = await User // eslint-disable-line no-await-in-loop
.find(query)
.limit(250)
.sort({_id: 1})
.select(fields)
.lean()
.exec();
if (users.length === 0) {
console.warn('All appropriate users found and modified.');
console.warn(`\n${count} users processed\n`);
break;
} else {
query._id = {
$gt: users[users.length - 1],
};
}
await Promise.all(users.map(updateUser)); // eslint-disable-line no-await-in-loop
}
};

View File

@@ -18,7 +18,7 @@ function setUpServer () {
setUpServer(); setUpServer();
// Replace this with your migration // Replace this with your migration
const processUsers = require().default; const processUsers = require('./archive/2021/20210129_habit_birthday').default;
processUsers() processUsers()
.then(() => { .then(() => {

File diff suppressed because it is too large Load Diff

View File

@@ -1,45 +1,57 @@
.slim_armor_special_spring2018Rogue { .slim_armor_special_spring2018Healer {
background-image: url('~@/assets/images/sprites/spritesmith-main-11.png'); background-image: url('~@/assets/images/sprites/spritesmith-main-11.png');
background-position: 0px -828px; background-position: 0px -828px;
width: 114px; width: 114px;
height: 90px; height: 90px;
} }
.slim_armor_special_spring2018Warrior { .slim_armor_special_spring2018Mage {
background-image: url('~@/assets/images/sprites/spritesmith-main-11.png'); background-image: url('~@/assets/images/sprites/spritesmith-main-11.png');
background-position: -115px -828px; background-position: -115px -828px;
width: 114px; width: 114px;
height: 90px; height: 90px;
} }
.slim_armor_special_spring2019Healer { .slim_armor_special_spring2018Rogue {
background-image: url('~@/assets/images/sprites/spritesmith-main-11.png'); background-image: url('~@/assets/images/sprites/spritesmith-main-11.png');
background-position: -230px -828px; background-position: -230px -828px;
width: 114px; width: 114px;
height: 90px; height: 90px;
} }
.slim_armor_special_spring2019Mage { .slim_armor_special_spring2018Warrior {
background-image: url('~@/assets/images/sprites/spritesmith-main-11.png'); background-image: url('~@/assets/images/sprites/spritesmith-main-11.png');
background-position: -345px -828px; background-position: -345px -828px;
width: 114px; width: 114px;
height: 90px; height: 90px;
} }
.slim_armor_special_spring2019Rogue { .slim_armor_special_spring2019Healer {
background-image: url('~@/assets/images/sprites/spritesmith-main-11.png'); background-image: url('~@/assets/images/sprites/spritesmith-main-11.png');
background-position: -460px -828px; background-position: -460px -828px;
width: 114px; width: 114px;
height: 90px; height: 90px;
} }
.slim_armor_special_spring2019Warrior { .slim_armor_special_spring2019Mage {
background-image: url('~@/assets/images/sprites/spritesmith-main-11.png'); background-image: url('~@/assets/images/sprites/spritesmith-main-11.png');
background-position: -575px -828px; background-position: -575px -828px;
width: 114px; width: 114px;
height: 90px; height: 90px;
} }
.slim_armor_special_spring2020Healer { .slim_armor_special_spring2019Rogue {
background-image: url('~@/assets/images/sprites/spritesmith-main-11.png'); background-image: url('~@/assets/images/sprites/spritesmith-main-11.png');
background-position: -690px -828px; background-position: -690px -828px;
width: 114px; width: 114px;
height: 90px; height: 90px;
} }
.slim_armor_special_spring2019Warrior {
background-image: url('~@/assets/images/sprites/spritesmith-main-11.png');
background-position: -805px -828px;
width: 114px;
height: 90px;
}
.slim_armor_special_spring2020Healer {
background-image: url('~@/assets/images/sprites/spritesmith-main-11.png');
background-position: -932px 0px;
width: 114px;
height: 90px;
}
.slim_armor_special_spring2020Mage { .slim_armor_special_spring2020Mage {
background-image: url('~@/assets/images/sprites/spritesmith-main-11.png'); background-image: url('~@/assets/images/sprites/spritesmith-main-11.png');
background-position: 0px 0px; background-position: 0px 0px;
@@ -48,13 +60,13 @@
} }
.slim_armor_special_spring2020Rogue { .slim_armor_special_spring2020Rogue {
background-image: url('~@/assets/images/sprites/spritesmith-main-11.png'); background-image: url('~@/assets/images/sprites/spritesmith-main-11.png');
background-position: -805px -828px; background-position: -932px -91px;
width: 114px; width: 114px;
height: 90px; height: 90px;
} }
.slim_armor_special_spring2020Warrior { .slim_armor_special_spring2020Warrior {
background-image: url('~@/assets/images/sprites/spritesmith-main-11.png'); background-image: url('~@/assets/images/sprites/spritesmith-main-11.png');
background-position: -932px 0px; background-position: -932px -182px;
width: 114px; width: 114px;
height: 90px; height: 90px;
} }
@@ -156,55 +168,55 @@
} }
.weapon_special_spring2018Healer { .weapon_special_spring2018Healer {
background-image: url('~@/assets/images/sprites/spritesmith-main-11.png'); background-image: url('~@/assets/images/sprites/spritesmith-main-11.png');
background-position: -932px -91px; background-position: -932px -273px;
width: 114px; width: 114px;
height: 90px; height: 90px;
} }
.weapon_special_spring2018Mage { .weapon_special_spring2018Mage {
background-image: url('~@/assets/images/sprites/spritesmith-main-11.png'); background-image: url('~@/assets/images/sprites/spritesmith-main-11.png');
background-position: -932px -182px; background-position: -932px -364px;
width: 114px; width: 114px;
height: 90px; height: 90px;
} }
.weapon_special_spring2018Rogue { .weapon_special_spring2018Rogue {
background-image: url('~@/assets/images/sprites/spritesmith-main-11.png'); background-image: url('~@/assets/images/sprites/spritesmith-main-11.png');
background-position: -932px -273px; background-position: -932px -455px;
width: 114px; width: 114px;
height: 90px; height: 90px;
} }
.weapon_special_spring2018Warrior { .weapon_special_spring2018Warrior {
background-image: url('~@/assets/images/sprites/spritesmith-main-11.png'); background-image: url('~@/assets/images/sprites/spritesmith-main-11.png');
background-position: -932px -364px; background-position: -932px -546px;
width: 114px; width: 114px;
height: 90px; height: 90px;
} }
.weapon_special_spring2019Healer { .weapon_special_spring2019Healer {
background-image: url('~@/assets/images/sprites/spritesmith-main-11.png'); background-image: url('~@/assets/images/sprites/spritesmith-main-11.png');
background-position: -932px -455px; background-position: -932px -637px;
width: 114px; width: 114px;
height: 90px; height: 90px;
} }
.weapon_special_spring2019Mage { .weapon_special_spring2019Mage {
background-image: url('~@/assets/images/sprites/spritesmith-main-11.png'); background-image: url('~@/assets/images/sprites/spritesmith-main-11.png');
background-position: -932px -546px; background-position: -932px -728px;
width: 114px; width: 114px;
height: 90px; height: 90px;
} }
.weapon_special_spring2019Rogue { .weapon_special_spring2019Rogue {
background-image: url('~@/assets/images/sprites/spritesmith-main-11.png'); background-image: url('~@/assets/images/sprites/spritesmith-main-11.png');
background-position: -932px -637px; background-position: -932px -819px;
width: 114px; width: 114px;
height: 90px; height: 90px;
} }
.weapon_special_spring2019Warrior { .weapon_special_spring2019Warrior {
background-image: url('~@/assets/images/sprites/spritesmith-main-11.png'); background-image: url('~@/assets/images/sprites/spritesmith-main-11.png');
background-position: -932px -728px; background-position: 0px -919px;
width: 114px; width: 114px;
height: 90px; height: 90px;
} }
.weapon_special_spring2020Healer { .weapon_special_spring2020Healer {
background-image: url('~@/assets/images/sprites/spritesmith-main-11.png'); background-image: url('~@/assets/images/sprites/spritesmith-main-11.png');
background-position: -932px -819px; background-position: -115px -919px;
width: 114px; width: 114px;
height: 90px; height: 90px;
} }
@@ -216,13 +228,13 @@
} }
.weapon_special_spring2020Rogue { .weapon_special_spring2020Rogue {
background-image: url('~@/assets/images/sprites/spritesmith-main-11.png'); background-image: url('~@/assets/images/sprites/spritesmith-main-11.png');
background-position: 0px -919px; background-position: -230px -919px;
width: 114px; width: 114px;
height: 90px; height: 90px;
} }
.weapon_special_spring2020Warrior { .weapon_special_spring2020Warrior {
background-image: url('~@/assets/images/sprites/spritesmith-main-11.png'); background-image: url('~@/assets/images/sprites/spritesmith-main-11.png');
background-position: -115px -919px; background-position: -345px -919px;
width: 114px; width: 114px;
height: 90px; height: 90px;
} }
@@ -354,7 +366,7 @@
} }
.broad_armor_special_summer2017Warrior { .broad_armor_special_summer2017Warrior {
background-image: url('~@/assets/images/sprites/spritesmith-main-11.png'); background-image: url('~@/assets/images/sprites/spritesmith-main-11.png');
background-position: -230px -919px; background-position: -460px -919px;
width: 114px; width: 114px;
height: 90px; height: 90px;
} }
@@ -372,7 +384,7 @@
} }
.broad_armor_special_summer2018Rogue { .broad_armor_special_summer2018Rogue {
background-image: url('~@/assets/images/sprites/spritesmith-main-11.png'); background-image: url('~@/assets/images/sprites/spritesmith-main-11.png');
background-position: -345px -919px; background-position: -575px -919px;
width: 114px; width: 114px;
height: 90px; height: 90px;
} }
@@ -390,7 +402,7 @@
} }
.broad_armor_special_summer2019Mage { .broad_armor_special_summer2019Mage {
background-image: url('~@/assets/images/sprites/spritesmith-main-11.png'); background-image: url('~@/assets/images/sprites/spritesmith-main-11.png');
background-position: -460px -919px; background-position: -690px -919px;
width: 114px; width: 114px;
height: 90px; height: 90px;
} }
@@ -402,13 +414,13 @@
} }
.broad_armor_special_summer2019Warrior { .broad_armor_special_summer2019Warrior {
background-image: url('~@/assets/images/sprites/spritesmith-main-11.png'); background-image: url('~@/assets/images/sprites/spritesmith-main-11.png');
background-position: -575px -919px; background-position: -805px -919px;
width: 114px; width: 114px;
height: 90px; height: 90px;
} }
.broad_armor_special_summer2020Healer { .broad_armor_special_summer2020Healer {
background-image: url('~@/assets/images/sprites/spritesmith-main-11.png'); background-image: url('~@/assets/images/sprites/spritesmith-main-11.png');
background-position: -690px -919px; background-position: -920px -919px;
width: 114px; width: 114px;
height: 90px; height: 90px;
} }
@@ -420,7 +432,7 @@
} }
.broad_armor_special_summer2020Rogue { .broad_armor_special_summer2020Rogue {
background-image: url('~@/assets/images/sprites/spritesmith-main-11.png'); background-image: url('~@/assets/images/sprites/spritesmith-main-11.png');
background-position: -805px -919px; background-position: -1047px 0px;
width: 114px; width: 114px;
height: 90px; height: 90px;
} }
@@ -534,7 +546,7 @@
} }
.head_special_summer2017Warrior { .head_special_summer2017Warrior {
background-image: url('~@/assets/images/sprites/spritesmith-main-11.png'); background-image: url('~@/assets/images/sprites/spritesmith-main-11.png');
background-position: -920px -919px; background-position: -1047px -91px;
width: 114px; width: 114px;
height: 90px; height: 90px;
} }
@@ -552,7 +564,7 @@
} }
.head_special_summer2018Rogue { .head_special_summer2018Rogue {
background-image: url('~@/assets/images/sprites/spritesmith-main-11.png'); background-image: url('~@/assets/images/sprites/spritesmith-main-11.png');
background-position: -1047px 0px; background-position: -1047px -182px;
width: 114px; width: 114px;
height: 90px; height: 90px;
} }
@@ -570,7 +582,7 @@
} }
.head_special_summer2019Mage { .head_special_summer2019Mage {
background-image: url('~@/assets/images/sprites/spritesmith-main-11.png'); background-image: url('~@/assets/images/sprites/spritesmith-main-11.png');
background-position: -1047px -91px; background-position: -1047px -273px;
width: 114px; width: 114px;
height: 90px; height: 90px;
} }
@@ -582,13 +594,13 @@
} }
.head_special_summer2019Warrior { .head_special_summer2019Warrior {
background-image: url('~@/assets/images/sprites/spritesmith-main-11.png'); background-image: url('~@/assets/images/sprites/spritesmith-main-11.png');
background-position: -1047px -182px; background-position: -1047px -364px;
width: 114px; width: 114px;
height: 90px; height: 90px;
} }
.head_special_summer2020Healer { .head_special_summer2020Healer {
background-image: url('~@/assets/images/sprites/spritesmith-main-11.png'); background-image: url('~@/assets/images/sprites/spritesmith-main-11.png');
background-position: -1047px -273px; background-position: -1047px -455px;
width: 114px; width: 114px;
height: 90px; height: 90px;
} }
@@ -600,7 +612,7 @@
} }
.head_special_summer2020Rogue { .head_special_summer2020Rogue {
background-image: url('~@/assets/images/sprites/spritesmith-main-11.png'); background-image: url('~@/assets/images/sprites/spritesmith-main-11.png');
background-position: -1047px -364px; background-position: -1047px -546px;
width: 114px; width: 114px;
height: 90px; height: 90px;
} }
@@ -684,7 +696,7 @@
} }
.shield_special_summer2017Warrior { .shield_special_summer2017Warrior {
background-image: url('~@/assets/images/sprites/spritesmith-main-11.png'); background-image: url('~@/assets/images/sprites/spritesmith-main-11.png');
background-position: -1047px -455px; background-position: -1047px -637px;
width: 114px; width: 114px;
height: 90px; height: 90px;
} }
@@ -696,7 +708,7 @@
} }
.shield_special_summer2018Rogue { .shield_special_summer2018Rogue {
background-image: url('~@/assets/images/sprites/spritesmith-main-11.png'); background-image: url('~@/assets/images/sprites/spritesmith-main-11.png');
background-position: -1047px -546px; background-position: -1047px -728px;
width: 114px; width: 114px;
height: 90px; height: 90px;
} }
@@ -714,7 +726,7 @@
} }
.shield_special_summer2019Mage { .shield_special_summer2019Mage {
background-image: url('~@/assets/images/sprites/spritesmith-main-11.png'); background-image: url('~@/assets/images/sprites/spritesmith-main-11.png');
background-position: -1047px -637px; background-position: -1047px -819px;
width: 114px; width: 114px;
height: 90px; height: 90px;
} }
@@ -726,19 +738,19 @@
} }
.shield_special_summer2019Warrior { .shield_special_summer2019Warrior {
background-image: url('~@/assets/images/sprites/spritesmith-main-11.png'); background-image: url('~@/assets/images/sprites/spritesmith-main-11.png');
background-position: -1047px -728px; background-position: -1047px -910px;
width: 114px; width: 114px;
height: 90px; height: 90px;
} }
.shield_special_summer2020Healer { .shield_special_summer2020Healer {
background-image: url('~@/assets/images/sprites/spritesmith-main-11.png'); background-image: url('~@/assets/images/sprites/spritesmith-main-11.png');
background-position: -1047px -819px; background-position: 0px -1010px;
width: 114px; width: 114px;
height: 90px; height: 90px;
} }
.shield_special_summer2020Rogue { .shield_special_summer2020Rogue {
background-image: url('~@/assets/images/sprites/spritesmith-main-11.png'); background-image: url('~@/assets/images/sprites/spritesmith-main-11.png');
background-position: -1047px -910px; background-position: -115px -1010px;
width: 114px; width: 114px;
height: 90px; height: 90px;
} }
@@ -1518,7 +1530,7 @@
} }
.slim_armor_special_summer2017Warrior { .slim_armor_special_summer2017Warrior {
background-image: url('~@/assets/images/sprites/spritesmith-main-11.png'); background-image: url('~@/assets/images/sprites/spritesmith-main-11.png');
background-position: 0px -1010px; background-position: -230px -1010px;
width: 114px; width: 114px;
height: 90px; height: 90px;
} }
@@ -1536,7 +1548,7 @@
} }
.slim_armor_special_summer2018Rogue { .slim_armor_special_summer2018Rogue {
background-image: url('~@/assets/images/sprites/spritesmith-main-11.png'); background-image: url('~@/assets/images/sprites/spritesmith-main-11.png');
background-position: -115px -1010px; background-position: -345px -1010px;
width: 114px; width: 114px;
height: 90px; height: 90px;
} }
@@ -1554,7 +1566,7 @@
} }
.slim_armor_special_summer2019Mage { .slim_armor_special_summer2019Mage {
background-image: url('~@/assets/images/sprites/spritesmith-main-11.png'); background-image: url('~@/assets/images/sprites/spritesmith-main-11.png');
background-position: -230px -1010px; background-position: -460px -1010px;
width: 114px; width: 114px;
height: 90px; height: 90px;
} }
@@ -1566,13 +1578,13 @@
} }
.slim_armor_special_summer2019Warrior { .slim_armor_special_summer2019Warrior {
background-image: url('~@/assets/images/sprites/spritesmith-main-11.png'); background-image: url('~@/assets/images/sprites/spritesmith-main-11.png');
background-position: -345px -1010px; background-position: -575px -1010px;
width: 114px; width: 114px;
height: 90px; height: 90px;
} }
.slim_armor_special_summer2020Healer { .slim_armor_special_summer2020Healer {
background-image: url('~@/assets/images/sprites/spritesmith-main-11.png'); background-image: url('~@/assets/images/sprites/spritesmith-main-11.png');
background-position: -460px -1010px; background-position: -690px -1010px;
width: 114px; width: 114px;
height: 90px; height: 90px;
} }
@@ -1584,7 +1596,7 @@
} }
.slim_armor_special_summer2020Rogue { .slim_armor_special_summer2020Rogue {
background-image: url('~@/assets/images/sprites/spritesmith-main-11.png'); background-image: url('~@/assets/images/sprites/spritesmith-main-11.png');
background-position: -575px -1010px; background-position: -805px -1010px;
width: 114px; width: 114px;
height: 90px; height: 90px;
} }
@@ -1686,7 +1698,7 @@
} }
.weapon_special_summer2017Warrior { .weapon_special_summer2017Warrior {
background-image: url('~@/assets/images/sprites/spritesmith-main-11.png'); background-image: url('~@/assets/images/sprites/spritesmith-main-11.png');
background-position: -690px -1010px; background-position: -920px -1010px;
width: 114px; width: 114px;
height: 90px; height: 90px;
} }
@@ -1704,7 +1716,7 @@
} }
.weapon_special_summer2018Rogue { .weapon_special_summer2018Rogue {
background-image: url('~@/assets/images/sprites/spritesmith-main-11.png'); background-image: url('~@/assets/images/sprites/spritesmith-main-11.png');
background-position: -805px -1010px; background-position: -1035px -1010px;
width: 114px; width: 114px;
height: 90px; height: 90px;
} }
@@ -1722,7 +1734,7 @@
} }
.weapon_special_summer2019Mage { .weapon_special_summer2019Mage {
background-image: url('~@/assets/images/sprites/spritesmith-main-11.png'); background-image: url('~@/assets/images/sprites/spritesmith-main-11.png');
background-position: -920px -1010px; background-position: -1162px 0px;
width: 114px; width: 114px;
height: 90px; height: 90px;
} }
@@ -1734,13 +1746,13 @@
} }
.weapon_special_summer2019Warrior { .weapon_special_summer2019Warrior {
background-image: url('~@/assets/images/sprites/spritesmith-main-11.png'); background-image: url('~@/assets/images/sprites/spritesmith-main-11.png');
background-position: -1035px -1010px; background-position: -1162px -91px;
width: 114px; width: 114px;
height: 90px; height: 90px;
} }
.weapon_special_summer2020Healer { .weapon_special_summer2020Healer {
background-image: url('~@/assets/images/sprites/spritesmith-main-11.png'); background-image: url('~@/assets/images/sprites/spritesmith-main-11.png');
background-position: -1162px 0px; background-position: -1162px -182px;
width: 114px; width: 114px;
height: 90px; height: 90px;
} }
@@ -1752,7 +1764,7 @@
} }
.weapon_special_summer2020Rogue { .weapon_special_summer2020Rogue {
background-image: url('~@/assets/images/sprites/spritesmith-main-11.png'); background-image: url('~@/assets/images/sprites/spritesmith-main-11.png');
background-position: -1162px -91px; background-position: -1162px -273px;
width: 114px; width: 114px;
height: 90px; height: 90px;
} }
@@ -1954,15 +1966,3 @@
width: 90px; width: 90px;
height: 90px; height: 90px;
} }
.broad_armor_special_winter2018Healer {
background-image: url('~@/assets/images/sprites/spritesmith-main-11.png');
background-position: -1162px -182px;
width: 114px;
height: 90px;
}
.broad_armor_special_winter2018Mage {
background-image: url('~@/assets/images/sprites/spritesmith-main-11.png');
background-position: -1162px -273px;
width: 114px;
height: 90px;
}

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

Binary file not shown.

Before

Width:  |  Height:  |  Size: 133 KiB

After

Width:  |  Height:  |  Size: 134 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 117 KiB

After

Width:  |  Height:  |  Size: 118 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 122 KiB

After

Width:  |  Height:  |  Size: 123 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 193 KiB

After

Width:  |  Height:  |  Size: 194 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 119 KiB

After

Width:  |  Height:  |  Size: 120 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 148 KiB

After

Width:  |  Height:  |  Size: 149 KiB

View File

@@ -646,6 +646,8 @@
"armorSpecialBirthday2019Notes": "Happy Birthday, Habitica! Wear these Outlandish Party Robes to celebrate this wonderful day. Confers no benefit.", "armorSpecialBirthday2019Notes": "Happy Birthday, Habitica! Wear these Outlandish Party Robes to celebrate this wonderful day. Confers no benefit.",
"armorSpecialBirthday2020Text": "Outrageous Party Robes", "armorSpecialBirthday2020Text": "Outrageous Party Robes",
"armorSpecialBirthday2020Notes": "Happy Birthday, Habitica! Wear these Outrageous Party Robes to celebrate this wonderful day. Confers no benefit.", "armorSpecialBirthday2020Notes": "Happy Birthday, Habitica! Wear these Outrageous Party Robes to celebrate this wonderful day. Confers no benefit.",
"armorSpecialBirthday2021Text": "Extravagant Party Robes",
"armorSpecialBirthday2021Notes": "Happy Birthday, Habitica! Wear these Extravagant Party Robes to celebrate this wonderful day. Confers no benefit.",
"armorSpecialGaymerxText": "Rainbow Warrior Armor", "armorSpecialGaymerxText": "Rainbow Warrior Armor",
"armorSpecialGaymerxNotes": "In celebration of the GaymerX Conference, this special armor is decorated with a radiant, colorful rainbow pattern! GaymerX is a game convention celebrating LGTBQ and gaming and is open to everyone.", "armorSpecialGaymerxNotes": "In celebration of the GaymerX Conference, this special armor is decorated with a radiant, colorful rainbow pattern! GaymerX is a game convention celebrating LGTBQ and gaming and is open to everyone.",

View File

@@ -658,6 +658,12 @@ const armor = {
winter2021Healer: { winter2021Healer: {
set: 'winter2021ArcticExplorerHealerSet', set: 'winter2021ArcticExplorerHealerSet',
}, },
birthday2021: {
text: t('armorSpecialBirthday2021Text'),
notes: t('armorSpecialBirthday2021Notes'),
value: 0,
canOwn: ownsItem('armor_special_birthday2021'),
},
}; };
const armorStats = { const armorStats = {

Binary file not shown.

After

Width:  |  Height:  |  Size: 751 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 694 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 702 B

View File

@@ -144,9 +144,10 @@ function _setUpNewUser (user) {
user.items.quests.dustbunnies = 1; user.items.quests.dustbunnies = 1;
user.purchased.background.violet = true; user.purchased.background.violet = true;
user.preferences.background = 'violet'; user.preferences.background = 'violet';
if (moment().isBefore('2021-01-02')) { if (moment().isBefore('2021-02-02')) {
user.items.gear.owned.head_special_nye = true; user.items.gear.owned.armor_special_birthday2021 = true;
user.items.gear.equipped.head = 'head_special_nye'; user.items.gear.equipped.armor = 'armor_special_birthday2021';
user.achievements.habitBirthdays = 1;
} }
user.markModified('items achievements'); user.markModified('items achievements');