mirror of
https://github.com/HabitRPG/habitica.git
synced 2025-12-16 22:27:26 +01:00
feat(content): add February items (#15090)
* update(content): add February 2024 items * feat(content): add October content * feat(content):update February Content * feat(content): finish up February content * fix(backgrounds): tweak consistency * fix(strings): remove extra whitespace * fix(event): add missing Valentine features --------- Co-authored-by: Sabe Jones <sabrecat@gmail.com> Co-authored-by: Sabe Jones <sabe@habitica.com>
This commit is contained in:
@@ -830,6 +830,11 @@
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_colorful_street {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/background_colorful_street.png');
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_coral_reef {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/background_coral_reef.png');
|
||||
width: 141px;
|
||||
@@ -1349,6 +1354,11 @@
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_heart_tree_tunnel {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/background_heart_tree_tunnel.png');
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_heather_field {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/background_heather_field.png');
|
||||
width: 141px;
|
||||
@@ -2079,6 +2089,11 @@
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_swan_boat {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/background_swan_boat.png');
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_swarming_darkness {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/background_swarming_darkness.png');
|
||||
width: 141px;
|
||||
@@ -2651,6 +2666,11 @@
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.icon_background_colorful_street {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/icon_background_colorful_street.png');
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.icon_background_coral_reef {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/icon_background_coral_reef.png');
|
||||
width: 68px;
|
||||
@@ -3170,6 +3190,11 @@
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.icon_background_heart_tree_tunnel {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/icon_background_heart_tree_tunnel.png');
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.icon_background_heather_field {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/icon_background_heather_field.png');
|
||||
width: 68px;
|
||||
@@ -3905,6 +3930,11 @@
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.icon_background_swan_boat {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/icon_background_swan_boat.png');
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.icon_background_swarming_darkness {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/icon_background_swarming_darkness.png');
|
||||
width: 68px;
|
||||
@@ -19120,6 +19150,11 @@
|
||||
width: 114px;
|
||||
height: 90px;
|
||||
}
|
||||
.broad_armor_armoire_softWhiteSuit {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/broad_armor_armoire_softWhiteSuit.png');
|
||||
width: 114px;
|
||||
height: 90px;
|
||||
}
|
||||
.broad_armor_armoire_strawRaincoat {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/broad_armor_armoire_strawRaincoat.png');
|
||||
width: 114px;
|
||||
@@ -19655,6 +19690,11 @@
|
||||
width: 90px;
|
||||
height: 90px;
|
||||
}
|
||||
.head_armoire_whiteFloppyHat {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/head_armoire_whiteFloppyHat.png');
|
||||
width: 90px;
|
||||
height: 90px;
|
||||
}
|
||||
.head_armoire_woodElfHelm {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/head_armoire_woodElfHelm.png');
|
||||
width: 90px;
|
||||
@@ -19990,6 +20030,11 @@
|
||||
width: 114px;
|
||||
height: 90px;
|
||||
}
|
||||
.shield_armoire_softWhitePillow {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/shield_armoire_softWhitePillow.png');
|
||||
width: 114px;
|
||||
height: 90px;
|
||||
}
|
||||
.shield_armoire_spanishGuitar {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/shield_armoire_spanishGuitar.png');
|
||||
width: 114px;
|
||||
@@ -20475,6 +20520,11 @@
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.shop_armor_armoire_softWhiteSuit {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/shop_armor_armoire_softWhiteSuit.png');
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.shop_armor_armoire_strawRaincoat {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/shop_armor_armoire_strawRaincoat.png');
|
||||
width: 68px;
|
||||
@@ -21070,6 +21120,11 @@
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.shop_head_armoire_whiteFloppyHat {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/shop_head_armoire_whiteFloppyHat.png');
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.shop_head_armoire_woodElfHelm {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/shop_head_armoire_woodElfHelm.png');
|
||||
width: 68px;
|
||||
@@ -21405,6 +21460,11 @@
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.shop_shield_armoire_softWhitePillow {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/shop_shield_armoire_softWhitePillow.png');
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.shop_shield_armoire_spanishGuitar {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/shop_shield_armoire_spanishGuitar.png');
|
||||
width: 68px;
|
||||
@@ -22380,6 +22440,11 @@
|
||||
width: 114px;
|
||||
height: 90px;
|
||||
}
|
||||
.slim_armor_armoire_softWhiteSuit {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/slim_armor_armoire_softWhiteSuit.png');
|
||||
width: 114px;
|
||||
height: 90px;
|
||||
}
|
||||
.slim_armor_armoire_strawRaincoat {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/slim_armor_armoire_strawRaincoat.png');
|
||||
width: 114px;
|
||||
@@ -29025,6 +29090,31 @@
|
||||
width: 117px;
|
||||
height: 120px;
|
||||
}
|
||||
.back_mystery_202402 {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/back_mystery_202402.png');
|
||||
width: 114px;
|
||||
height: 90px;
|
||||
}
|
||||
.head_mystery_202402 {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/head_mystery_202402.png');
|
||||
width: 114px;
|
||||
height: 90px;
|
||||
}
|
||||
.shop_back_mystery_202402 {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/shop_back_mystery_202402.png');
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.shop_head_mystery_202402 {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/shop_head_mystery_202402.png');
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.shop_set_mystery_202402 {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/shop_set_mystery_202402.png');
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.broad_armor_mystery_301404 {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/broad_armor_mystery_301404.png');
|
||||
width: 90px;
|
||||
@@ -39523,6 +39613,11 @@
|
||||
width: 105px;
|
||||
height: 105px;
|
||||
}
|
||||
.Mount_Body_BearCub-RoseGold {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Body_BearCub-RoseGold.png');
|
||||
width: 105px;
|
||||
height: 105px;
|
||||
}
|
||||
.Mount_Body_BearCub-RoseQuartz {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Body_BearCub-RoseQuartz.png');
|
||||
width: 105px;
|
||||
@@ -39948,6 +40043,11 @@
|
||||
width: 105px;
|
||||
height: 105px;
|
||||
}
|
||||
.Mount_Body_Cactus-RoseGold {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Body_Cactus-RoseGold.png');
|
||||
width: 105px;
|
||||
height: 105px;
|
||||
}
|
||||
.Mount_Body_Cactus-RoseQuartz {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Body_Cactus-RoseQuartz.png');
|
||||
width: 105px;
|
||||
@@ -40473,6 +40573,11 @@
|
||||
width: 105px;
|
||||
height: 105px;
|
||||
}
|
||||
.Mount_Body_Dragon-RoseGold {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Body_Dragon-RoseGold.png');
|
||||
width: 105px;
|
||||
height: 105px;
|
||||
}
|
||||
.Mount_Body_Dragon-RoseQuartz {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Body_Dragon-RoseQuartz.png');
|
||||
width: 105px;
|
||||
@@ -40898,6 +41003,11 @@
|
||||
width: 105px;
|
||||
height: 105px;
|
||||
}
|
||||
.Mount_Body_FlyingPig-RoseGold {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Body_FlyingPig-RoseGold.png');
|
||||
width: 105px;
|
||||
height: 105px;
|
||||
}
|
||||
.Mount_Body_FlyingPig-RoseQuartz {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Body_FlyingPig-RoseQuartz.png');
|
||||
width: 105px;
|
||||
@@ -41173,6 +41283,11 @@
|
||||
width: 105px;
|
||||
height: 105px;
|
||||
}
|
||||
.Mount_Body_Fox-RoseGold {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Body_Fox-RoseGold.png');
|
||||
width: 105px;
|
||||
height: 105px;
|
||||
}
|
||||
.Mount_Body_Fox-RoseQuartz {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Body_Fox-RoseQuartz.png');
|
||||
width: 105px;
|
||||
@@ -41838,6 +41953,11 @@
|
||||
width: 105px;
|
||||
height: 105px;
|
||||
}
|
||||
.Mount_Body_LionCub-RoseGold {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Body_LionCub-RoseGold.png');
|
||||
width: 105px;
|
||||
height: 105px;
|
||||
}
|
||||
.Mount_Body_LionCub-RoseQuartz {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Body_LionCub-RoseQuartz.png');
|
||||
width: 105px;
|
||||
@@ -42333,6 +42453,11 @@
|
||||
width: 105px;
|
||||
height: 105px;
|
||||
}
|
||||
.Mount_Body_PandaCub-RoseGold {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Body_PandaCub-RoseGold.png');
|
||||
width: 105px;
|
||||
height: 105px;
|
||||
}
|
||||
.Mount_Body_PandaCub-RoseQuartz {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Body_PandaCub-RoseQuartz.png');
|
||||
width: 105px;
|
||||
@@ -43563,6 +43688,11 @@
|
||||
width: 105px;
|
||||
height: 105px;
|
||||
}
|
||||
.Mount_Body_TigerCub-RoseGold {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Body_TigerCub-RoseGold.png');
|
||||
width: 105px;
|
||||
height: 105px;
|
||||
}
|
||||
.Mount_Body_TigerCub-RoseQuartz {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Body_TigerCub-RoseQuartz.png');
|
||||
width: 105px;
|
||||
@@ -44148,6 +44278,11 @@
|
||||
width: 135px;
|
||||
height: 135px;
|
||||
}
|
||||
.Mount_Body_Wolf-RoseGold {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Body_Wolf-RoseGold.png');
|
||||
width: 135px;
|
||||
height: 135px;
|
||||
}
|
||||
.Mount_Body_Wolf-RoseQuartz {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Body_Wolf-RoseQuartz.png');
|
||||
width: 135px;
|
||||
@@ -44678,6 +44813,11 @@
|
||||
width: 105px;
|
||||
height: 105px;
|
||||
}
|
||||
.Mount_Head_BearCub-RoseGold {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Head_BearCub-RoseGold.png');
|
||||
width: 105px;
|
||||
height: 105px;
|
||||
}
|
||||
.Mount_Head_BearCub-RoseQuartz {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Head_BearCub-RoseQuartz.png');
|
||||
width: 105px;
|
||||
@@ -45103,6 +45243,11 @@
|
||||
width: 105px;
|
||||
height: 105px;
|
||||
}
|
||||
.Mount_Head_Cactus-RoseGold {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Head_Cactus-RoseGold.png');
|
||||
width: 105px;
|
||||
height: 105px;
|
||||
}
|
||||
.Mount_Head_Cactus-RoseQuartz {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Head_Cactus-RoseQuartz.png');
|
||||
width: 105px;
|
||||
@@ -45628,6 +45773,11 @@
|
||||
width: 105px;
|
||||
height: 105px;
|
||||
}
|
||||
.Mount_Head_Dragon-RoseGold {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Head_Dragon-RoseGold.png');
|
||||
width: 105px;
|
||||
height: 105px;
|
||||
}
|
||||
.Mount_Head_Dragon-RoseQuartz {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Head_Dragon-RoseQuartz.png');
|
||||
width: 105px;
|
||||
@@ -46053,6 +46203,11 @@
|
||||
width: 105px;
|
||||
height: 105px;
|
||||
}
|
||||
.Mount_Head_FlyingPig-RoseGold {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Head_FlyingPig-RoseGold.png');
|
||||
width: 105px;
|
||||
height: 105px;
|
||||
}
|
||||
.Mount_Head_FlyingPig-RoseQuartz {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Head_FlyingPig-RoseQuartz.png');
|
||||
width: 105px;
|
||||
@@ -46328,6 +46483,11 @@
|
||||
width: 105px;
|
||||
height: 105px;
|
||||
}
|
||||
.Mount_Head_Fox-RoseGold {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Head_Fox-RoseGold.png');
|
||||
width: 105px;
|
||||
height: 105px;
|
||||
}
|
||||
.Mount_Head_Fox-RoseQuartz {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Head_Fox-RoseQuartz.png');
|
||||
width: 105px;
|
||||
@@ -46993,6 +47153,11 @@
|
||||
width: 105px;
|
||||
height: 105px;
|
||||
}
|
||||
.Mount_Head_LionCub-RoseGold {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Head_LionCub-RoseGold.png');
|
||||
width: 105px;
|
||||
height: 105px;
|
||||
}
|
||||
.Mount_Head_LionCub-RoseQuartz {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Head_LionCub-RoseQuartz.png');
|
||||
width: 105px;
|
||||
@@ -47488,6 +47653,11 @@
|
||||
width: 105px;
|
||||
height: 105px;
|
||||
}
|
||||
.Mount_Head_PandaCub-RoseGold {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Head_PandaCub-RoseGold.png');
|
||||
width: 105px;
|
||||
height: 105px;
|
||||
}
|
||||
.Mount_Head_PandaCub-RoseQuartz {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Head_PandaCub-RoseQuartz.png');
|
||||
width: 105px;
|
||||
@@ -48718,6 +48888,11 @@
|
||||
width: 105px;
|
||||
height: 105px;
|
||||
}
|
||||
.Mount_Head_TigerCub-RoseGold {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Head_TigerCub-RoseGold.png');
|
||||
width: 105px;
|
||||
height: 105px;
|
||||
}
|
||||
.Mount_Head_TigerCub-RoseQuartz {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Head_TigerCub-RoseQuartz.png');
|
||||
width: 105px;
|
||||
@@ -49303,6 +49478,11 @@
|
||||
width: 135px;
|
||||
height: 135px;
|
||||
}
|
||||
.Mount_Head_Wolf-RoseGold {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Head_Wolf-RoseGold.png');
|
||||
width: 135px;
|
||||
height: 135px;
|
||||
}
|
||||
.Mount_Head_Wolf-RoseQuartz {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Head_Wolf-RoseQuartz.png');
|
||||
width: 135px;
|
||||
@@ -49838,6 +50018,11 @@
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Mount_Icon_BearCub-RoseGold {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Icon_BearCub-RoseGold.png');
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Mount_Icon_BearCub-RoseQuartz {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Icon_BearCub-RoseQuartz.png');
|
||||
width: 81px;
|
||||
@@ -50263,6 +50448,11 @@
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Mount_Icon_Cactus-RoseGold {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Icon_Cactus-RoseGold.png');
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Mount_Icon_Cactus-RoseQuartz {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Icon_Cactus-RoseQuartz.png');
|
||||
width: 81px;
|
||||
@@ -50788,6 +50978,11 @@
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Mount_Icon_Dragon-RoseGold {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Icon_Dragon-RoseGold.png');
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Mount_Icon_Dragon-RoseQuartz {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Icon_Dragon-RoseQuartz.png');
|
||||
width: 81px;
|
||||
@@ -51213,6 +51408,11 @@
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Mount_Icon_FlyingPig-RoseGold {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Icon_FlyingPig-RoseGold.png');
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Mount_Icon_FlyingPig-RoseQuartz {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Icon_FlyingPig-RoseQuartz.png');
|
||||
width: 81px;
|
||||
@@ -51488,6 +51688,11 @@
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Mount_Icon_Fox-RoseGold {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Icon_Fox-RoseGold.png');
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Mount_Icon_Fox-RoseQuartz {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Icon_Fox-RoseQuartz.png');
|
||||
width: 81px;
|
||||
@@ -52158,6 +52363,11 @@
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Mount_Icon_LionCub-RoseGold {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Icon_LionCub-RoseGold.png');
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Mount_Icon_LionCub-RoseQuartz {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Icon_LionCub-RoseQuartz.png');
|
||||
width: 81px;
|
||||
@@ -52653,6 +52863,11 @@
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Mount_Icon_PandaCub-RoseGold {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Icon_PandaCub-RoseGold.png');
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Mount_Icon_PandaCub-RoseQuartz {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Icon_PandaCub-RoseQuartz.png');
|
||||
width: 81px;
|
||||
@@ -53883,6 +54098,11 @@
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Mount_Icon_TigerCub-RoseGold {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Icon_TigerCub-RoseGold.png');
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Mount_Icon_TigerCub-RoseQuartz {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Icon_TigerCub-RoseQuartz.png');
|
||||
width: 81px;
|
||||
@@ -54468,6 +54688,11 @@
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Mount_Icon_Wolf-RoseGold {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Icon_Wolf-RoseGold.png');
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Mount_Icon_Wolf-RoseQuartz {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Icon_Wolf-RoseQuartz.png');
|
||||
width: 81px;
|
||||
@@ -55008,6 +55233,11 @@
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-BearCub-RoseGold {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Pet-BearCub-RoseGold.png');
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-BearCub-RoseQuartz {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Pet-BearCub-RoseQuartz.png');
|
||||
width: 81px;
|
||||
@@ -55453,6 +55683,11 @@
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Cactus-RoseGold {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Pet-Cactus-RoseGold.png');
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Cactus-RoseQuartz {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Pet-Cactus-RoseQuartz.png');
|
||||
width: 81px;
|
||||
@@ -56003,6 +56238,11 @@
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Dragon-RoseGold {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Pet-Dragon-RoseGold.png');
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Dragon-RoseQuartz {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Pet-Dragon-RoseQuartz.png');
|
||||
width: 81px;
|
||||
@@ -56453,6 +56693,11 @@
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-FlyingPig-RoseGold {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Pet-FlyingPig-RoseGold.png');
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-FlyingPig-RoseQuartz {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Pet-FlyingPig-RoseQuartz.png');
|
||||
width: 81px;
|
||||
@@ -56748,6 +56993,11 @@
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Fox-RoseGold {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Pet-Fox-RoseGold.png');
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Fox-RoseQuartz {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Pet-Fox-RoseQuartz.png');
|
||||
width: 81px;
|
||||
@@ -57438,6 +57688,11 @@
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-LionCub-RoseGold {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Pet-LionCub-RoseGold.png');
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-LionCub-RoseQuartz {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Pet-LionCub-RoseQuartz.png');
|
||||
width: 81px;
|
||||
@@ -57953,6 +58208,11 @@
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-PandaCub-RoseGold {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Pet-PandaCub-RoseGold.png');
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-PandaCub-RoseQuartz {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Pet-PandaCub-RoseQuartz.png');
|
||||
width: 81px;
|
||||
@@ -59213,6 +59473,11 @@
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-TigerCub-RoseGold {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Pet-TigerCub-RoseGold.png');
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-TigerCub-RoseQuartz {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Pet-TigerCub-RoseQuartz.png');
|
||||
width: 81px;
|
||||
@@ -59823,6 +60088,11 @@
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Wolf-RoseGold {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Pet-Wolf-RoseGold.png');
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Wolf-RoseQuartz {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Pet-Wolf-RoseQuartz.png');
|
||||
width: 81px;
|
||||
@@ -60173,6 +60443,11 @@
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_RoseGold {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Pet_HatchingPotion_RoseGold.png');
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_RoseQuartz {
|
||||
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Pet_HatchingPotion_RoseQuartz.png');
|
||||
width: 68px;
|
||||
|
||||
@@ -947,6 +947,14 @@
|
||||
"backgroundIceBubbleLakeText": "Ice Bubble Lake",
|
||||
"backgroundIceBubbleLakeNotes": "Stand carefully on the Ice Bubble Lake.",
|
||||
|
||||
"backgrounds022024": "SET 117: Released February 2024",
|
||||
"backgroundColorfulStreetText": "Colorful Street",
|
||||
"backgroundColorfulStreetNotes": "Viewing a Colorful Street.",
|
||||
"backgroundSwanBoatText": "Swan Boat",
|
||||
"backgroundSwanBoatNotes": "Take a ride in a Swan Boat.",
|
||||
"backgroundHeartTreeTunnelText": "Heart Tree Tunnel",
|
||||
"backgroundHeartTreeTunnelNotes": "Drift through the Heart Tree Tunnel.",
|
||||
|
||||
"timeTravelBackgrounds": "Steampunk Backgrounds",
|
||||
"backgroundAirshipText": "Airship",
|
||||
"backgroundAirshipNotes": "Become a sky sailor on board your very own Airship.",
|
||||
|
||||
@@ -312,6 +312,7 @@
|
||||
"hatchingPotionPorcelain": "Porcelain",
|
||||
"hatchingPotionPinkMarble": "Pink Marble",
|
||||
"hatchingPotionTeaShop": "Tea Shop",
|
||||
"hatchingPotionRoseGold": "Rose Gold",
|
||||
|
||||
"hatchingPotionNotes": "Pour this on an egg, and it will hatch as a <%= potText(locale) %> pet.",
|
||||
"premiumPotionAddlNotes": "Not usable on quest pet eggs. Available for purchase until <%= date(locale) %>.",
|
||||
|
||||
@@ -1552,6 +1552,8 @@
|
||||
"armorArmoireSchoolUniformSkirtNotes": "Whether you’re attending a school for magical wizards, dragon riders, sportsball players, creative artisans, or members of a profession too secret to list here, you’ll fit right in with this uniform. Increases Intelligence by <%= int %>. Enchanted Armoire: School Uniform Set (Item 1 of 4).",
|
||||
"armorArmoireSchoolUniformPantsText": "School Uniform with Pants",
|
||||
"armorArmoireSchoolUniformPantsNotes": "Whether you’re attending a school for magical wizards, dragon riders, sportsball players, creative artisans, or members of a profession too secret to list here, you’ll fit right in with this uniform. Increases Intelligence by <%= int %>. Enchanted Armoire: School Uniform Set (Item 2 of 4).",
|
||||
"armorArmoireSoftWhiteSuitText": "Soft White Suit",
|
||||
"armorArmoireSoftWhiteSuitNotes": "White is a peaceful color. Whether you’re facing a crisp white bedsheet or a blanket of newly fallen snow, you’ll have a clear and ready mind. Increases Constitution by <% con %> and Perception by <%= per %>. Enchanted Armoire: White Loungewear Set (Item 2 of 3).",
|
||||
|
||||
"headgear": "helm",
|
||||
"headgearCapitalized": "Headgear",
|
||||
@@ -2189,6 +2191,8 @@
|
||||
"headMystery202311Notes": "Bind even space and time to your will. Confers no benefit. November 2023 Subscriber Item.",
|
||||
"headMystery202312Text": "Wintry Blue Hair",
|
||||
"headMystery202312Notes": "This fancy hairdo evokes the snowy colors of the season. Confers no benefit. December 2023 Subscriber Item.",
|
||||
"headMystery202402Text": "Paradise Pink Hair",
|
||||
"headMystery202402Notes": "This pretty pink mane is the perfect accessory for February and beyond. Confers no benefit. February 2024 Subscriber Item.",
|
||||
|
||||
"headMystery301404Text": "Fancy Top Hat",
|
||||
"headMystery301404Notes": "A fancy top hat for the finest of gentlefolk! January 3015 Subscriber Item. Confers no benefit.",
|
||||
@@ -2379,6 +2383,8 @@
|
||||
"headArmoireBlackSpookySorceryHatNotes": "Black as night and full of secrets, this hat is suited to all your sorcerous needs. Increases Intelligence by <%= int %> and Constitution by <%= con %>. Enchanted Armoire: Spooky Sorcery Set (Item 3 of 3).",
|
||||
"headArmoireGreenTrapperHatText": "Green Trapper Hat",
|
||||
"headArmoireGreenTrapperHatNotes": "Everyone says your hat looks so warm! And it really is. Just be sure to lift the flaps off your ears when they’re talking to you, or everyone will sound more like “yrrr hah ooks ss wrrm!” Increases Constitution and Perception by <%= attrs %> each. Enchanted Armoire: Trapper Hat Set (Item 1 of 2).",
|
||||
"headArmoireWhiteFloppyHatText": "White Floppy Hat",
|
||||
"headArmoireWhiteFloppyHatNotes": "Many spells have been sewn into this simple hat, giving it a wondrous white color. Increases Strength, Intelligence, and Constitution by <%= attrs %> each. Enchanted Armoire: White Loungewear Set (Item 1 of 3).",
|
||||
|
||||
"offhand": "off-hand item",
|
||||
"offHandCapitalized": "Off-Hand Item",
|
||||
@@ -2819,6 +2825,8 @@
|
||||
"shieldArmoireSaucepanNotes": "Look inside this steaming saucepan for the answer to the most closely guarded secret in life! (Soup. The answer is always soup.) Increases Perception by <%= per %> . Enchanted Armoire: Cooking Implements Set 2 (Item 1 of 2).",
|
||||
"shieldArmoireTrustyPencilText": "Trusty Pencil",
|
||||
"shieldArmoireTrustyPencilNotes": "You know what they say: the pencil is mightier than the sword-cil. Wait... that doesn’t sound quite right... Increases Intelligence by <%= int %>. Enchanted Armoire: School Uniform Set (Item 4 of 4).",
|
||||
"shieldArmoireSoftWhitePillowText": "Soft White Pillow",
|
||||
"shieldArmoireSoftWhitePillowNotes": "The organized warrior packs a pillow for any expedition. Protect yourself from overlooked obligations… even while you nap. Increases Intelligence and Perception by <%= attrs %> each. Enchanted Armoire: White Loungewear Set (Item 3 of 3)",
|
||||
|
||||
"back": "Back Accessory",
|
||||
"backBase0Text": "No Back Accessory",
|
||||
@@ -2895,6 +2903,8 @@
|
||||
"backMystery202309Notes": "Flutter across forests, glide over mountains, and soar over oceans on these bright and beautiful wings. Confers no benefit. September 2023 Subscriber Item.",
|
||||
"backMystery202401Text": "Snowy Spell",
|
||||
"backMystery202401Notes": "Conjure softly falling flurries or call a mighty blizzard. The choice is yours! Confers no benefit. January 2024 Subscriber Item.",
|
||||
"backMystery202402Text": "Paradise Pink Hearts",
|
||||
"backMystery202402Notes": "Let an aura of loving energy surround you wherever you go! Confers no benefit. February 2024 Subscriber Item.",
|
||||
|
||||
"backSpecialWonderconRedText": "Mighty Cape",
|
||||
"backSpecialWonderconRedNotes": "Swishes with strength and beauty. Confers no benefit. Special Edition Convention Item.",
|
||||
|
||||
@@ -212,9 +212,8 @@
|
||||
"winter2024PeppermintBarkWarriorSet": "Peppermint Bark Set (Warrior)",
|
||||
"winter2024NarwhalWizardMageSet": "Narwhal Wizard Set (Mage)",
|
||||
"eventAvailability": "Available for purchase until <%= date(locale) %>.",
|
||||
"eventAvailabilityReturning": "Available for purchase until <%= availableDate(locale) %>.",
|
||||
"dateEndJanuary": "January 31",
|
||||
"dateEndFebruary": "February 28",
|
||||
"dateEndFebruary": "February 29",
|
||||
"dateEndMarch": "March 31",
|
||||
"dateEndApril": "April 30",
|
||||
"dateEndMay": "May 31",
|
||||
|
||||
@@ -158,6 +158,7 @@
|
||||
"mysterySet202311": "All-Seeing Spellbinder Set",
|
||||
"mysterySet202312": "Wintry Blue Set",
|
||||
"mysterySet202401": "Snowy Spellbinder Set",
|
||||
"mysterySet202402": "Paradise Pink Set",
|
||||
"mysterySet301404": "Steampunk Standard Set",
|
||||
"mysterySet301405": "Steampunk Accessories Set",
|
||||
"mysterySet301703": "Peacock Steampunk Set",
|
||||
|
||||
@@ -602,6 +602,11 @@ const plannedBackgrounds = {
|
||||
frozen_blue_pond: { },
|
||||
ice_bubble_lake: { },
|
||||
},
|
||||
backgrounds022024: {
|
||||
colorful_street: { },
|
||||
swan_boat: { },
|
||||
heart_tree_tunnel: { },
|
||||
},
|
||||
eventBackgrounds: {
|
||||
birthday_bash: {
|
||||
price: 0,
|
||||
@@ -649,6 +654,7 @@ const releaseDates = {
|
||||
backgrounds112023: '2023-11-07T08:00-05:00',
|
||||
backgrounds122023: '2023-12-05T08:00-05:00',
|
||||
backgrounds012024: '2024-01-04T08:00-05:00',
|
||||
backgrounds022024: '2024-01-12T08:00-05:00',
|
||||
};
|
||||
|
||||
const flat = {};
|
||||
|
||||
@@ -189,15 +189,15 @@ const bundles = {
|
||||
mythicalMarvels: {
|
||||
key: 'mythicalMarvels',
|
||||
text: t('mythicalMarvelsText'),
|
||||
notes: t('mythicalMarvelsNotes', { date: moment(EVENTS.bundle202302.end).format('LL') }),
|
||||
notes: t('mythicalMarvelsNotes', { date: moment(EVENTS.bundle202402.end).format('LL') }),
|
||||
bundleKeys: [
|
||||
'unicorn',
|
||||
'seaserpent',
|
||||
'gryphon',
|
||||
],
|
||||
event: EVENTS.bundle202302,
|
||||
event: EVENTS.bundle202402,
|
||||
canBuy () {
|
||||
return moment().isBetween(EVENTS.bundle202302.start, EVENTS.bundle202302.end);
|
||||
return moment().isBetween(EVENTS.bundle202402.start, EVENTS.bundle202402.end);
|
||||
},
|
||||
type: 'quests',
|
||||
value: 7,
|
||||
|
||||
@@ -10,11 +10,25 @@ const gemsPromo = {
|
||||
|
||||
export const EVENTS = {
|
||||
noEvent: {
|
||||
start: '2024-02-01T00:00-05:00',
|
||||
start: '2024-03-01T00:00-05:00',
|
||||
end: '2024-03-20T08:00-05:00',
|
||||
season: 'normal',
|
||||
npcImageSuffix: '',
|
||||
},
|
||||
bundle202402: {
|
||||
start: '2024-02-20T00:00-05:00',
|
||||
end: '2024-02-29T08:00-05:00',
|
||||
},
|
||||
potions202402: {
|
||||
start: '2024-02-12T00:00-05:00',
|
||||
end: '2024-02-29T08:00-05:00',
|
||||
},
|
||||
valentine2024: {
|
||||
start: '2024-02-12T00:00-05:00',
|
||||
end: '2024-02-16T08:00-05:00',
|
||||
season: 'valentines',
|
||||
npcImageSuffix: '_valentines',
|
||||
},
|
||||
nye2023: {
|
||||
start: '2023-12-28T08:00-05:00',
|
||||
end: '2024-01-04T23:59-05:00',
|
||||
|
||||
@@ -457,6 +457,11 @@ const armor = {
|
||||
int: 5,
|
||||
set: 'schoolUniform',
|
||||
},
|
||||
softWhiteSuit: {
|
||||
con: 7,
|
||||
per: 10,
|
||||
set: 'whiteLoungeWear',
|
||||
},
|
||||
};
|
||||
|
||||
const body = {
|
||||
@@ -948,6 +953,12 @@ const head = {
|
||||
per: 6,
|
||||
set: 'greenTrapper',
|
||||
},
|
||||
whiteFloppyHat: {
|
||||
str: 5,
|
||||
int: 5,
|
||||
con: 5,
|
||||
set: 'whiteLoungeWear',
|
||||
},
|
||||
};
|
||||
|
||||
const shield = {
|
||||
@@ -1275,6 +1286,11 @@ const shield = {
|
||||
int: 10,
|
||||
set: 'schoolUniform',
|
||||
},
|
||||
softWhitePillow: {
|
||||
int: 6,
|
||||
per: 6,
|
||||
set: 'whiteLoungeWear',
|
||||
},
|
||||
};
|
||||
|
||||
const headAccessory = {
|
||||
@@ -1751,6 +1767,7 @@ const releaseDates = {
|
||||
cookingImplementsTwo: '2023-11-07T08:00-05:00',
|
||||
greenTrapper: '2023-12-05T08:00-05:00',
|
||||
schoolUniform: '2024-01-04T08:00-05:00',
|
||||
whiteLoungeWear: '2024-02-06T08:00-05:00',
|
||||
};
|
||||
|
||||
forEach({
|
||||
|
||||
@@ -106,6 +106,7 @@ const back = {
|
||||
202305: { },
|
||||
202309: { },
|
||||
202401: { },
|
||||
202402: { },
|
||||
};
|
||||
|
||||
const body = {
|
||||
@@ -218,6 +219,7 @@ const head = {
|
||||
202310: { },
|
||||
202311: { },
|
||||
202312: { },
|
||||
202402: { },
|
||||
301404: { },
|
||||
301405: { },
|
||||
301703: { },
|
||||
|
||||
@@ -62,13 +62,12 @@ const premium = {
|
||||
value: 2,
|
||||
text: t('hatchingPotionCupid'),
|
||||
limited: true,
|
||||
event: EVENTS.potions202302,
|
||||
_addlNotes: t('eventAvailabilityReturning', {
|
||||
availableDate: t('dateEndFebruary'),
|
||||
previousDate: t('februaryYYYY', { year: 2022 }),
|
||||
event: EVENTS.potions202402,
|
||||
_addlNotes: t('eventAvailability', {
|
||||
date: t('dateEndFebruary'),
|
||||
}),
|
||||
canBuy () {
|
||||
return moment().isBetween(EVENTS.potions202302.start, EVENTS.potions202302.end);
|
||||
return moment().isBetween(EVENTS.potions202402.start, EVENTS.potions202402.end);
|
||||
},
|
||||
},
|
||||
Shimmer: {
|
||||
@@ -76,9 +75,8 @@ const premium = {
|
||||
text: t('hatchingPotionShimmer'),
|
||||
limited: true,
|
||||
event: EVENTS.birthday10,
|
||||
_addlNotes: t('eventAvailabilityReturning', {
|
||||
availableDate: t('dateStartFebruary'),
|
||||
previousDate: t('marchYYYY', { year: 2022 }),
|
||||
_addlNotes: t('eventAvailability', {
|
||||
date: t('dateEndJanuary'),
|
||||
}),
|
||||
canBuy () {
|
||||
return moment().isBetween(EVENTS.birthday10.start, EVENTS.birthday10.end);
|
||||
@@ -89,9 +87,8 @@ const premium = {
|
||||
text: t('hatchingPotionFairy'),
|
||||
limited: true,
|
||||
event: EVENTS.potions202305,
|
||||
_addlNotes: t('eventAvailabilityReturning', {
|
||||
availableDate: t('dateEndMay'),
|
||||
previousDate: t('mayYYYY', { year: 2021 }),
|
||||
_addlNotes: t('eventAvailability', {
|
||||
date: t('dateEndMay'),
|
||||
}),
|
||||
canBuy () {
|
||||
return moment().isBefore(EVENTS.potions202305.end);
|
||||
@@ -102,9 +99,8 @@ const premium = {
|
||||
text: t('hatchingPotionFloral'),
|
||||
limited: true,
|
||||
event: EVENTS.potions202305,
|
||||
_addlNotes: t('eventAvailabilityReturning', {
|
||||
availableDate: t('dateEndMay'),
|
||||
previousDate: t('mayYYYY', { year: 2022 }),
|
||||
_addlNotes: t('eventAvailability', {
|
||||
date: t('dateEndMay'),
|
||||
}),
|
||||
canBuy () {
|
||||
return moment().isBefore(EVENTS.potions202305.end);
|
||||
@@ -115,9 +111,8 @@ const premium = {
|
||||
text: t('hatchingPotionAquatic'),
|
||||
limited: true,
|
||||
event: EVENTS.birthday10,
|
||||
_addlNotes: t('eventAvailabilityReturning', {
|
||||
availableDate: t('dateStartFebruary'),
|
||||
previousDate: t('julyYYYY', { year: 2022 }),
|
||||
_addlNotes: t('eventAvailability', {
|
||||
date: t('dateEndFebruary'),
|
||||
}),
|
||||
canBuy () {
|
||||
return moment().isBetween(EVENTS.birthday10.start, EVENTS.birthday10.end);
|
||||
@@ -128,9 +123,8 @@ const premium = {
|
||||
text: t('hatchingPotionEmber'),
|
||||
limited: true,
|
||||
event: EVENTS.potions202311,
|
||||
_addlNotes: t('eventAvailabilityReturning', {
|
||||
availableDate: t('dateEndNovember'),
|
||||
previousDate: t('januaryYYYY', { year: 2023 }),
|
||||
_addlNotes: t('eventAvailability', {
|
||||
date: t('dateEndNovember'),
|
||||
}),
|
||||
canBuy () {
|
||||
return moment().isBetween(EVENTS.potions202311.start, EVENTS.potions202311.end);
|
||||
@@ -141,9 +135,8 @@ const premium = {
|
||||
text: t('hatchingPotionThunderstorm'),
|
||||
limited: true,
|
||||
event: EVENTS.potions202308,
|
||||
_addlNotes: t('eventAvailabilityReturning', {
|
||||
availableDate: t('dateEndAugust'),
|
||||
previousDate: t('novemberYYYY', { year: 2022 }),
|
||||
_addlNotes: t('eventAvailability', {
|
||||
date: t('dateEndAugust'),
|
||||
}),
|
||||
canBuy () {
|
||||
return moment().isBetween(EVENTS.potions202308.start, EVENTS.potions202308.end);
|
||||
@@ -154,9 +147,8 @@ const premium = {
|
||||
text: t('hatchingPotionSpooky'),
|
||||
limited: true,
|
||||
event: EVENTS.fall2023,
|
||||
_addlNotes: t('eventAvailabilityReturning', {
|
||||
availableDate: t('dateEndOctober'),
|
||||
previousDate: t('octoberYYYY', { year: 2021 }),
|
||||
_addlNotes: t('eventAvailability', {
|
||||
date: t('dateEndOctober'),
|
||||
}),
|
||||
canBuy () {
|
||||
return moment().isBetween(EVENTS.fall2023.start, EVENTS.fall2023.end);
|
||||
@@ -170,18 +162,16 @@ const premium = {
|
||||
canBuy () {
|
||||
return moment().isBetween(EVENTS.fall2022.start, EVENTS.fall2022.end);
|
||||
},
|
||||
_addlNotes: t('eventAvailabilityReturning', {
|
||||
availableDate: t('dateEndOctober'),
|
||||
previousDate: t('novemberYYYY', { year: 2020 }),
|
||||
_addlNotes: t('eventAvailability', {
|
||||
date: t('dateEndOctober'),
|
||||
}),
|
||||
},
|
||||
Holly: {
|
||||
value: 2,
|
||||
text: t('hatchingPotionHolly'),
|
||||
limited: true,
|
||||
_addlNotes: t('eventAvailabilityReturning', {
|
||||
availableDate: t('dateEndJanuary'),
|
||||
previousDate: t('januaryYYYY', { year: 2022 }),
|
||||
_addlNotes: t('eventAvailability', {
|
||||
date: t('dateEndJanuary'),
|
||||
}),
|
||||
event: EVENTS.winter2023,
|
||||
canBuy () {
|
||||
@@ -208,18 +198,16 @@ const premium = {
|
||||
canBuy () {
|
||||
return moment().isBetween(EVENTS.winter2023.start, EVENTS.winter2023.end);
|
||||
},
|
||||
_addlNotes: t('eventAvailabilityReturning', {
|
||||
availableDate: t('dateEndJanuary'),
|
||||
previousDate: t('decemberYYYY', { year: 2019 }),
|
||||
_addlNotes: t('eventAvailability', {
|
||||
date: t('dateEndJanuary'),
|
||||
}),
|
||||
},
|
||||
Rainbow: {
|
||||
value: 2,
|
||||
text: t('hatchingPotionRainbow'),
|
||||
limited: true,
|
||||
_addlNotes: t('eventAvailabilityReturning', {
|
||||
availableDate: t('dateEndApril'),
|
||||
previousDate: t('marchYYYY', { year: 2021 }),
|
||||
_addlNotes: t('eventAvailability', {
|
||||
date: t('dateEndApril'),
|
||||
}),
|
||||
event: EVENTS.spring2023,
|
||||
canBuy () {
|
||||
@@ -230,9 +218,8 @@ const premium = {
|
||||
value: 2,
|
||||
text: t('hatchingPotionGlass'),
|
||||
limited: true,
|
||||
_addlNotes: t('eventAvailabilityReturning', {
|
||||
availableDate: t('dateEndJuly'),
|
||||
previousDate: t('juneYYYY', { year: 2021 }),
|
||||
_addlNotes: t('eventAvailability', {
|
||||
date: t('dateEndJuly'),
|
||||
}),
|
||||
event: EVENTS.summer2023,
|
||||
canBuy () {
|
||||
@@ -244,9 +231,8 @@ const premium = {
|
||||
text: t('hatchingPotionGlow'),
|
||||
limited: true,
|
||||
event: EVENTS.fall2023,
|
||||
_addlNotes: t('eventAvailabilityReturning', {
|
||||
availableDate: t('dateEndOctober'),
|
||||
previousDate: t('januaryYYYY', { year: 2023 }),
|
||||
_addlNotes: t('eventAvailability', {
|
||||
date: t('dateEndOctober'),
|
||||
}),
|
||||
canBuy () {
|
||||
return moment().isBetween(EVENTS.fall2023.start, EVENTS.fall2023.end);
|
||||
@@ -257,9 +243,8 @@ const premium = {
|
||||
text: t('hatchingPotionFrost'),
|
||||
limited: true,
|
||||
event: EVENTS.potions202311,
|
||||
_addlNotes: t('eventAvailabilityReturning', {
|
||||
availableDate: t('dateEndNovember'),
|
||||
previousDate: t('novemberYYYY', { year: 2022 }),
|
||||
_addlNotes: t('eventAvailability', {
|
||||
date: t('dateEndNovember'),
|
||||
}),
|
||||
canBuy () {
|
||||
return moment().isBetween(EVENTS.potions202311.start, EVENTS.potions202311.end);
|
||||
@@ -282,9 +267,8 @@ const premium = {
|
||||
text: t('hatchingPotionRoseQuartz'),
|
||||
limited: true,
|
||||
event: EVENTS.potions202302,
|
||||
_addlNotes: t('eventAvailabilityReturning', {
|
||||
availableDate: t('dateEndFebruary'),
|
||||
previousDate: t('februaryYYYY', { year: 2022 }),
|
||||
_addlNotes: t('eventAvailability', {
|
||||
date: t('dateEndFebruary'),
|
||||
}),
|
||||
canBuy () {
|
||||
return moment().isBetween(EVENTS.potions202302.start, EVENTS.potions202302.end);
|
||||
@@ -295,9 +279,8 @@ const premium = {
|
||||
text: t('hatchingPotionCelestial'),
|
||||
limited: true,
|
||||
event: EVENTS.birthday10,
|
||||
_addlNotes: t('eventAvailabilityReturning', {
|
||||
availableDate: t('dateStartFebruary'),
|
||||
previousDate: t('marchYYYY', { year: 2022 }),
|
||||
_addlNotes: t('eventAvailability', {
|
||||
date: t('dateStartFebruary'),
|
||||
}),
|
||||
canBuy () {
|
||||
return moment().isBetween(EVENTS.birthday10.start, EVENTS.birthday10.end);
|
||||
@@ -308,9 +291,8 @@ const premium = {
|
||||
text: t('hatchingPotionSunshine'),
|
||||
limited: true,
|
||||
event: EVENTS.potions202205,
|
||||
_addlNotes: t('eventAvailabilityReturning', {
|
||||
availableDate: t('dateEndMay'),
|
||||
previousDate: t('mayYYYY', { year: 2020 }),
|
||||
_addlNotes: t('eventAvailability', {
|
||||
date: t('dateEndMay'),
|
||||
}),
|
||||
canBuy () {
|
||||
return moment().isBefore(EVENTS.potions202205.end);
|
||||
@@ -328,9 +310,8 @@ const premium = {
|
||||
text: t('hatchingPotionWatery'),
|
||||
limited: true,
|
||||
event: EVENTS.summer2022,
|
||||
_addlNotes: t('eventAvailabilityReturning', {
|
||||
availableDate: t('dateEndJuly'),
|
||||
previousDate: t('julyYYYY', { year: 2020 }),
|
||||
_addlNotes: t('eventAvailability', {
|
||||
date: t('dateEndJuly'),
|
||||
}),
|
||||
canBuy () {
|
||||
return moment().isBetween(EVENTS.summer2022.start, EVENTS.summer2022.end);
|
||||
@@ -351,9 +332,8 @@ const premium = {
|
||||
canBuy () {
|
||||
return moment().isBetween(EVENTS.fall2022.start, EVENTS.fall2022.end);
|
||||
},
|
||||
_addlNotes: t('eventAvailabilityReturning', {
|
||||
availableDate: t('dateEndOctober'),
|
||||
previousDate: t('novemberYYYY', { year: 2020 }),
|
||||
_addlNotes: t('eventAvailability', {
|
||||
date: t('dateEndOctober'),
|
||||
}),
|
||||
},
|
||||
Amber: {
|
||||
@@ -367,9 +347,8 @@ const premium = {
|
||||
value: 2,
|
||||
text: t('hatchingPotionAurora'),
|
||||
limited: true,
|
||||
_addlNotes: t('eventAvailabilityReturning', {
|
||||
availableDate: t('dateEndJanuary'),
|
||||
previousDate: t('decemberYYYY', { year: 2020 }),
|
||||
_addlNotes: t('eventAvailability', {
|
||||
date: t('dateEndJanuary'),
|
||||
}),
|
||||
event: EVENTS.winter2023,
|
||||
canBuy () {
|
||||
@@ -388,9 +367,8 @@ const premium = {
|
||||
text: t('hatchingPotionBirchBark'),
|
||||
limited: true,
|
||||
event: EVENTS.spring2023,
|
||||
_addlNotes: t('eventAvailabilityReturning', {
|
||||
availableDate: t('dateEndApril'),
|
||||
previousDate: t('marchYYYY', { year: 2021 }),
|
||||
_addlNotes: t('eventAvailability', {
|
||||
date: t('dateEndApril'),
|
||||
}),
|
||||
canBuy () {
|
||||
return moment().isBefore(EVENTS.spring2023.end);
|
||||
@@ -408,9 +386,8 @@ const premium = {
|
||||
text: t('hatchingPotionSandSculpture'),
|
||||
limited: true,
|
||||
event: EVENTS.summer2023,
|
||||
_addlNotes: t('eventAvailabilityReturning', {
|
||||
availableDate: t('dateEndJuly'),
|
||||
previousDate: t('januaryYYYY', { year: 2023 }),
|
||||
date: t('eventAvailability', {
|
||||
date: t('dateEndJuly'),
|
||||
}),
|
||||
canBuy () {
|
||||
return moment().isBetween(EVENTS.summer2023.start, EVENTS.summer2023.end);
|
||||
@@ -435,9 +412,8 @@ const premium = {
|
||||
text: t('hatchingPotionVampire'),
|
||||
limited: true,
|
||||
event: EVENTS.fall2023,
|
||||
_addlNotes: t('eventAvailabilityReturning', {
|
||||
availableDate: t('dateEndOctober'),
|
||||
previousDate: t('januaryYYYY', { year: 2023 }),
|
||||
_addlNotes: t('eventAvailability', {
|
||||
date: t('dateEndOctober'),
|
||||
}),
|
||||
canBuy () {
|
||||
return moment().isBetween(EVENTS.fall2023.start, EVENTS.fall2023.end);
|
||||
@@ -448,9 +424,8 @@ const premium = {
|
||||
text: t('hatchingPotionAutumnLeaf'),
|
||||
limited: true,
|
||||
event: EVENTS.potions202311,
|
||||
_addlNotes: t('eventAvailabilityReturning', {
|
||||
availableDate: t('dateEndNovember'),
|
||||
previousDate: t('januaryYYYY', { year: 2023 }),
|
||||
_addlNotes: t('eventAvailability', {
|
||||
date: t('dateEndNovember'),
|
||||
}),
|
||||
canBuy () {
|
||||
return moment().isBetween(EVENTS.potions202311.start, EVENTS.potions202311.end);
|
||||
@@ -480,9 +455,8 @@ const premium = {
|
||||
text: t('hatchingPotionPolkaDot'),
|
||||
limited: true,
|
||||
event: EVENTS.spring2023,
|
||||
_addlNotes: t('eventAvailabilityReturning', {
|
||||
availableDate: t('dateEndApril'),
|
||||
previousDate: t('marchYYYY', { year: 2022 }),
|
||||
_addlNotes: t('eventAvailability', {
|
||||
date: t('dateEndApril'),
|
||||
}),
|
||||
canBuy () {
|
||||
return moment().isBefore(EVENTS.spring2023.end);
|
||||
@@ -502,7 +476,6 @@ const premium = {
|
||||
event: EVENTS.summer2023,
|
||||
_addlNotes: t('premiumPotionAddlNotes', {
|
||||
date: t('dateEndJuly'),
|
||||
previousDate: t('julyYYYY', { year: 2022 }),
|
||||
}),
|
||||
canBuy () {
|
||||
return moment().isBetween(EVENTS.summer2023.start, EVENTS.summer2023.end);
|
||||
@@ -515,7 +488,6 @@ const premium = {
|
||||
event: EVENTS.potions202208,
|
||||
_addlNotes: t('premiumPotionAddlNotes', {
|
||||
date: t('dateEndAugust'),
|
||||
previousDate: t('augustYYYY', { year: 2021 }),
|
||||
}),
|
||||
canBuy () {
|
||||
return moment().isBetween(EVENTS.potions202208.start, EVENTS.potions202208.end);
|
||||
@@ -540,9 +512,8 @@ const premium = {
|
||||
text: t('hatchingPotionPorcelain'),
|
||||
limited: true,
|
||||
event: EVENTS.potions202308,
|
||||
_addlNotes: t('eventAvailabilityReturning', {
|
||||
availableDate: t('dateEndAugust'),
|
||||
previousDate: t('februaryYYYY', { year: 2022 }),
|
||||
_addlNotes: t('eventAvailability', {
|
||||
date: t('dateEndAugust'),
|
||||
}),
|
||||
canBuy () {
|
||||
return moment().isBetween(EVENTS.potions202308.start, EVENTS.potions202308.end);
|
||||
@@ -555,6 +526,18 @@ const premium = {
|
||||
canBuy: hasQuestAchievementFunction('pinkMarble'),
|
||||
_addlNotes: t('premiumPotionUnlimitedNotes'),
|
||||
},
|
||||
RoseGold: {
|
||||
value: 2,
|
||||
text: t('hatchingPotionRoseGold'),
|
||||
limited: true,
|
||||
event: EVENTS.potions202402,
|
||||
_addlNotes: t('eventAvailability', {
|
||||
date: t('dateEndFebruary'),
|
||||
}),
|
||||
canBuy () {
|
||||
return moment().isBetween(EVENTS.potions202402.start, EVENTS.potions202402.end);
|
||||
},
|
||||
},
|
||||
};
|
||||
|
||||
const wacky = {
|
||||
@@ -562,9 +545,8 @@ const wacky = {
|
||||
text: t('hatchingPotionVeggie'),
|
||||
limited: true,
|
||||
event: EVENTS.spring2023,
|
||||
_addlNotes: t('eventAvailabilityReturning', {
|
||||
availableDate: t('dateEndApril'),
|
||||
previousDate: t('aprilYYYY', { year: 2022 }),
|
||||
_addlNotes: t('eventAvailability', {
|
||||
date: t('dateEndApril'),
|
||||
}),
|
||||
canBuy () {
|
||||
return moment().isBetween('2023-04-06T08:00-04:00', EVENTS.spring2023.end);
|
||||
|
||||
@@ -137,7 +137,7 @@ api.cardTypes = {
|
||||
valentine: {
|
||||
key: 'valentine',
|
||||
messageOptions: 4,
|
||||
yearRound: moment().isBefore('2023-02-17T23:59-05:00'),
|
||||
yearRound: moment().isBetween(EVENTS.valentine2024.start, EVENTS.valentine2024.end),
|
||||
},
|
||||
birthday: {
|
||||
key: 'birthday',
|
||||
|
||||
@@ -3,9 +3,11 @@ import { EVENTS } from './constants';
|
||||
// Magic Hatching Potions are configured like this:
|
||||
// type: 'premiumHatchingPotion', // note no "s" at the end
|
||||
// path: 'premiumHatchingPotions.Rainbow',
|
||||
|
||||
// hatching potions and food names should be capitalized lest you break the market
|
||||
const featuredItems = {
|
||||
market () {
|
||||
if (moment().isBetween(EVENTS.winter2024.start, EVENTS.winter2024.end)) {
|
||||
if (moment().isBetween(EVENTS.potions202402.start, EVENTS.potions202402.end)) {
|
||||
return [
|
||||
{
|
||||
type: 'armoire',
|
||||
@@ -13,15 +15,15 @@ const featuredItems = {
|
||||
},
|
||||
{
|
||||
type: 'premiumHatchingPotion',
|
||||
path: 'premiumHatchingPotions.StainedGlass',
|
||||
path: 'premiumHatchingPotions.RoseGold',
|
||||
},
|
||||
{
|
||||
type: 'premiumHatchingPotion',
|
||||
path: 'premiumHatchingPotions.Peppermint',
|
||||
path: 'premiumHatchingPotions.Cupid',
|
||||
},
|
||||
{
|
||||
type: 'premiumHatchingPotion',
|
||||
path: 'premiumHatchingPotions.IcySnow',
|
||||
type: 'hatchingPotions',
|
||||
path: 'hatchingPotions.Red',
|
||||
},
|
||||
];
|
||||
}
|
||||
@@ -32,32 +34,32 @@ const featuredItems = {
|
||||
},
|
||||
{
|
||||
type: 'food',
|
||||
path: 'food.Honey',
|
||||
path: 'food.Chocolate',
|
||||
},
|
||||
{
|
||||
type: 'hatchingPotions',
|
||||
path: 'hatchingPotions.Golden',
|
||||
path: 'hatchingPotions.Desert',
|
||||
},
|
||||
{
|
||||
type: 'eggs',
|
||||
path: 'eggs.BearCub',
|
||||
path: 'eggs.Cactus',
|
||||
},
|
||||
];
|
||||
},
|
||||
quests () {
|
||||
if (moment().isBetween(EVENTS.winter2024.start, EVENTS.winter2024.end)) {
|
||||
if (moment().isBetween(EVENTS.bundle202402.start, EVENTS.bundle202402.end)) {
|
||||
return [
|
||||
{
|
||||
type: 'bundles',
|
||||
path: 'bundles.winterQuests',
|
||||
path: 'bundles.mythicalMarvels',
|
||||
},
|
||||
{
|
||||
type: 'quests',
|
||||
path: 'quests.ghost_stag',
|
||||
path: 'quests.nudibranch',
|
||||
},
|
||||
{
|
||||
type: 'quests',
|
||||
path: 'quests.penguin',
|
||||
path: 'quests.axolotl',
|
||||
},
|
||||
];
|
||||
}
|
||||
@@ -73,7 +75,7 @@ const featuredItems = {
|
||||
},
|
||||
{
|
||||
type: 'quests',
|
||||
path: 'quests.axolotl',
|
||||
path: 'quests.slime',
|
||||
},
|
||||
];
|
||||
},
|
||||
|
||||
@@ -467,7 +467,7 @@ spells.special = {
|
||||
target: 'user',
|
||||
notes: t('valentineCardNotes'),
|
||||
canOwn () {
|
||||
return moment().isBetween('2023-02-13T08:00-05:00', '2023-02-17T23:59-05:00');
|
||||
return moment().isBetween(EVENTS.valentine2024.start, EVENTS.valentine2024.end);
|
||||
},
|
||||
cast (user, target) {
|
||||
if (user === target) {
|
||||
|
||||
Reference in New Issue
Block a user