diff --git a/habitica-images b/habitica-images index 1c6f7d65d7..142936a93a 160000 --- a/habitica-images +++ b/habitica-images @@ -1 +1 @@ -Subproject commit 1c6f7d65d7cbdbc3d8a8d4ccdb9af87bd6dbbaed +Subproject commit 142936a93a0939086dafe0aafeba2eb99680f8b5 diff --git a/website/client/src/assets/css/sprites/spritesmith-main.css b/website/client/src/assets/css/sprites/spritesmith-main.css index 6c38472194..d6e3ac9f41 100644 --- a/website/client/src/assets/css/sprites/spritesmith-main.css +++ b/website/client/src/assets/css/sprites/spritesmith-main.css @@ -2266,6 +2266,11 @@ width: 141px; height: 147px; } +.background_trail_through_a_forest { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/background_trail_through_a_forest.png'); + width: 141px; + height: 147px; +} .background_training_grounds { background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/background_training_grounds.png'); width: 141px; @@ -29680,6 +29685,11 @@ width: 114px; height: 90px; } +.broad_armor_armoire_gildedKnightsPlate { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/broad_armor_armoire_gildedKnightsPlate.png'); + width: 114px; + height: 90px; +} .broad_armor_armoire_gladiatorArmor { background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/broad_armor_armoire_gladiatorArmor.png'); width: 90px; @@ -30290,6 +30300,11 @@ width: 114px; height: 90px; } +.head_armoire_gildedKnightsHelm { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/head_armoire_gildedKnightsHelm.png'); + width: 114px; + height: 90px; +} .head_armoire_gladiatorHelm { background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/head_armoire_gladiatorHelm.png'); width: 90px; @@ -31215,6 +31230,11 @@ width: 114px; height: 90px; } +.slim_armor_armoire_gildedKnightsPlate { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/slim_armor_armoire_gildedKnightsPlate.png'); + width: 114px; + height: 90px; +} .slim_armor_armoire_gladiatorArmor { background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/slim_armor_armoire_gladiatorArmor.png'); width: 90px; @@ -31760,6 +31780,11 @@ width: 114px; height: 90px; } +.weapon_armoire_gildedKnightsSpear { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/weapon_armoire_gildedKnightsSpear.png'); + width: 114px; + height: 90px; +} .weapon_armoire_glassblowersBlowpipe { background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/weapon_armoire_glassblowersBlowpipe.png'); width: 114px; @@ -35525,6 +35550,16 @@ width: 114px; height: 90px; } +.back_mystery_202505 { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/back_mystery_202505.png'); + width: 114px; + height: 90px; +} +.headAccessory_mystery_202505 { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/headAccessory_mystery_202505.png'); + width: 114px; + height: 90px; +} .broad_armor_mystery_301404 { background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/broad_armor_mystery_301404.png'); width: 90px; @@ -40813,6 +40848,11 @@ width: 105px; height: 105px; } +.Mount_Body_BearCub-Opal { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Body_BearCub-Opal.png'); + width: 105px; + height: 105px; +} .Mount_Body_BearCub-Peppermint { background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Body_BearCub-Peppermint.png'); width: 105px; @@ -41268,6 +41308,11 @@ width: 105px; height: 105px; } +.Mount_Body_Cactus-Opal { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Body_Cactus-Opal.png'); + width: 105px; + height: 105px; +} .Mount_Body_Cactus-Peppermint { background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Body_Cactus-Peppermint.png'); width: 105px; @@ -42018,6 +42063,11 @@ width: 105px; height: 105px; } +.Mount_Body_Dragon-Opal { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Body_Dragon-Opal.png'); + width: 105px; + height: 105px; +} .Mount_Body_Dragon-Peppermint { background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Body_Dragon-Peppermint.png'); width: 105px; @@ -42468,6 +42518,11 @@ width: 105px; height: 105px; } +.Mount_Body_FlyingPig-Opal { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Body_FlyingPig-Opal.png'); + width: 105px; + height: 105px; +} .Mount_Body_FlyingPig-Peppermint { background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Body_FlyingPig-Peppermint.png'); width: 105px; @@ -42768,6 +42823,11 @@ width: 105px; height: 105px; } +.Mount_Body_Fox-Opal { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Body_Fox-Opal.png'); + width: 105px; + height: 105px; +} .Mount_Body_Fox-Peppermint { background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Body_Fox-Peppermint.png'); width: 105px; @@ -43508,6 +43568,11 @@ width: 105px; height: 105px; } +.Mount_Body_LionCub-Opal { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Body_LionCub-Opal.png'); + width: 105px; + height: 105px; +} .Mount_Body_LionCub-Peppermint { background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Body_LionCub-Peppermint.png'); width: 105px; @@ -44078,6 +44143,11 @@ width: 105px; height: 105px; } +.Mount_Body_PandaCub-Opal { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Body_PandaCub-Opal.png'); + width: 105px; + height: 105px; +} .Mount_Body_PandaCub-Peppermint { background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Body_PandaCub-Peppermint.png'); width: 105px; @@ -44378,6 +44448,56 @@ width: 105px; height: 105px; } +.Mount_Body_Platypus-Base { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Body_Platypus-Base.png'); + width: 105px; + height: 105px; +} +.Mount_Body_Platypus-CottonCandyBlue { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Body_Platypus-CottonCandyBlue.png'); + width: 105px; + height: 105px; +} +.Mount_Body_Platypus-CottonCandyPink { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Body_Platypus-CottonCandyPink.png'); + width: 105px; + height: 105px; +} +.Mount_Body_Platypus-Desert { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Body_Platypus-Desert.png'); + width: 105px; + height: 105px; +} +.Mount_Body_Platypus-Golden { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Body_Platypus-Golden.png'); + width: 105px; + height: 105px; +} +.Mount_Body_Platypus-Red { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Body_Platypus-Red.png'); + width: 105px; + height: 105px; +} +.Mount_Body_Platypus-Shade { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Body_Platypus-Shade.png'); + width: 105px; + height: 105px; +} +.Mount_Body_Platypus-Skeleton { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Body_Platypus-Skeleton.png'); + width: 105px; + height: 105px; +} +.Mount_Body_Platypus-White { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Body_Platypus-White.png'); + width: 105px; + height: 105px; +} +.Mount_Body_Platypus-Zombie { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Body_Platypus-Zombie.png'); + width: 105px; + height: 105px; +} .Mount_Body_Pterodactyl-Base { background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Body_Pterodactyl-Base.png'); width: 105px; @@ -45383,6 +45503,11 @@ width: 105px; height: 105px; } +.Mount_Body_TigerCub-Opal { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Body_TigerCub-Opal.png'); + width: 105px; + height: 105px; +} .Mount_Body_TigerCub-Peppermint { background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Body_TigerCub-Peppermint.png'); width: 105px; @@ -45993,6 +46118,11 @@ width: 135px; height: 135px; } +.Mount_Body_Wolf-Opal { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Body_Wolf-Opal.png'); + width: 135px; + height: 135px; +} .Mount_Body_Wolf-Peppermint { background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Body_Wolf-Peppermint.png'); width: 135px; @@ -46593,6 +46723,11 @@ width: 105px; height: 105px; } +.Mount_Head_BearCub-Opal { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Head_BearCub-Opal.png'); + width: 105px; + height: 105px; +} .Mount_Head_BearCub-Peppermint { background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Head_BearCub-Peppermint.png'); width: 105px; @@ -47048,6 +47183,11 @@ width: 105px; height: 105px; } +.Mount_Head_Cactus-Opal { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Head_Cactus-Opal.png'); + width: 105px; + height: 105px; +} .Mount_Head_Cactus-Peppermint { background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Head_Cactus-Peppermint.png'); width: 105px; @@ -47798,6 +47938,11 @@ width: 105px; height: 105px; } +.Mount_Head_Dragon-Opal { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Head_Dragon-Opal.png'); + width: 105px; + height: 105px; +} .Mount_Head_Dragon-Peppermint { background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Head_Dragon-Peppermint.png'); width: 105px; @@ -48248,6 +48393,11 @@ width: 105px; height: 105px; } +.Mount_Head_FlyingPig-Opal { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Head_FlyingPig-Opal.png'); + width: 105px; + height: 105px; +} .Mount_Head_FlyingPig-Peppermint { background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Head_FlyingPig-Peppermint.png'); width: 105px; @@ -48548,6 +48698,11 @@ width: 105px; height: 105px; } +.Mount_Head_Fox-Opal { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Head_Fox-Opal.png'); + width: 105px; + height: 105px; +} .Mount_Head_Fox-Peppermint { background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Head_Fox-Peppermint.png'); width: 105px; @@ -49288,6 +49443,11 @@ width: 105px; height: 105px; } +.Mount_Head_LionCub-Opal { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Head_LionCub-Opal.png'); + width: 105px; + height: 105px; +} .Mount_Head_LionCub-Peppermint { background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Head_LionCub-Peppermint.png'); width: 105px; @@ -49858,6 +50018,11 @@ width: 105px; height: 105px; } +.Mount_Head_PandaCub-Opal { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Head_PandaCub-Opal.png'); + width: 105px; + height: 105px; +} .Mount_Head_PandaCub-Peppermint { background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Head_PandaCub-Peppermint.png'); width: 105px; @@ -50158,6 +50323,56 @@ width: 105px; height: 105px; } +.Mount_Head_Platypus-Base { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Head_Platypus-Base.png'); + width: 105px; + height: 105px; +} +.Mount_Head_Platypus-CottonCandyBlue { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Head_Platypus-CottonCandyBlue.png'); + width: 105px; + height: 105px; +} +.Mount_Head_Platypus-CottonCandyPink { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Head_Platypus-CottonCandyPink.png'); + width: 105px; + height: 105px; +} +.Mount_Head_Platypus-Desert { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Head_Platypus-Desert.png'); + width: 105px; + height: 105px; +} +.Mount_Head_Platypus-Golden { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Head_Platypus-Golden.png'); + width: 105px; + height: 105px; +} +.Mount_Head_Platypus-Red { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Head_Platypus-Red.png'); + width: 105px; + height: 105px; +} +.Mount_Head_Platypus-Shade { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Head_Platypus-Shade.png'); + width: 105px; + height: 105px; +} +.Mount_Head_Platypus-Skeleton { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Head_Platypus-Skeleton.png'); + width: 105px; + height: 105px; +} +.Mount_Head_Platypus-White { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Head_Platypus-White.png'); + width: 105px; + height: 105px; +} +.Mount_Head_Platypus-Zombie { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Head_Platypus-Zombie.png'); + width: 105px; + height: 105px; +} .Mount_Head_Pterodactyl-Base { background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Head_Pterodactyl-Base.png'); width: 105px; @@ -51163,6 +51378,11 @@ width: 105px; height: 105px; } +.Mount_Head_TigerCub-Opal { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Head_TigerCub-Opal.png'); + width: 105px; + height: 105px; +} .Mount_Head_TigerCub-Peppermint { background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Head_TigerCub-Peppermint.png'); width: 105px; @@ -51773,6 +51993,11 @@ width: 135px; height: 135px; } +.Mount_Head_Wolf-Opal { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Head_Wolf-Opal.png'); + width: 135px; + height: 135px; +} .Mount_Head_Wolf-Peppermint { background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Mount_Head_Wolf-Peppermint.png'); width: 135px; @@ -52283,11 +52508,6 @@ width: 81px; height: 99px; } -.Pet-BearCub-Cryptid { - background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Pet-BearCub-Cryptid.png'); - width: 81px; - height: 99px; -} .Pet-BearCub-Cupid { background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Pet-BearCub-Cupid.png'); width: 81px; @@ -52393,6 +52613,11 @@ width: 81px; height: 99px; } +.Pet-BearCub-Opal { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Pet-BearCub-Opal.png'); + width: 81px; + height: 99px; +} .Pet-BearCub-Peppermint { background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Pet-BearCub-Peppermint.png'); width: 81px; @@ -52768,11 +52993,6 @@ width: 81px; height: 99px; } -.Pet-Cactus-Cryptid { - background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Pet-Cactus-Cryptid.png'); - width: 81px; - height: 99px; -} .Pet-Cactus-Cupid { background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Pet-Cactus-Cupid.png'); width: 81px; @@ -52878,6 +53098,11 @@ width: 81px; height: 99px; } +.Pet-Cactus-Opal { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Pet-Cactus-Opal.png'); + width: 81px; + height: 99px; +} .Pet-Cactus-Peppermint { background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Pet-Cactus-Peppermint.png'); width: 81px; @@ -53553,11 +53778,6 @@ width: 81px; height: 99px; } -.Pet-Dragon-Cryptid { - background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Pet-Dragon-Cryptid.png'); - width: 81px; - height: 99px; -} .Pet-Dragon-Cupid { background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Pet-Dragon-Cupid.png'); width: 81px; @@ -53668,6 +53888,11 @@ width: 81px; height: 99px; } +.Pet-Dragon-Opal { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Pet-Dragon-Opal.png'); + width: 81px; + height: 99px; +} .Pet-Dragon-Peppermint { background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Pet-Dragon-Peppermint.png'); width: 81px; @@ -54043,11 +54268,6 @@ width: 81px; height: 99px; } -.Pet-FlyingPig-Cryptid { - background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Pet-FlyingPig-Cryptid.png'); - width: 81px; - height: 99px; -} .Pet-FlyingPig-Cupid { background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Pet-FlyingPig-Cupid.png'); width: 81px; @@ -54153,6 +54373,11 @@ width: 81px; height: 99px; } +.Pet-FlyingPig-Opal { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Pet-FlyingPig-Opal.png'); + width: 81px; + height: 99px; +} .Pet-FlyingPig-Peppermint { background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Pet-FlyingPig-Peppermint.png'); width: 81px; @@ -54373,11 +54598,6 @@ width: 81px; height: 99px; } -.Pet-Fox-Cryptid { - background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Pet-Fox-Cryptid.png'); - width: 81px; - height: 99px; -} .Pet-Fox-Cupid { background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Pet-Fox-Cupid.png'); width: 81px; @@ -54483,6 +54703,11 @@ width: 81px; height: 99px; } +.Pet-Fox-Opal { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Pet-Fox-Opal.png'); + width: 81px; + height: 99px; +} .Pet-Fox-Peppermint { background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Pet-Fox-Peppermint.png'); width: 81px; @@ -55148,11 +55373,6 @@ width: 81px; height: 99px; } -.Pet-LionCub-Cryptid { - background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Pet-LionCub-Cryptid.png'); - width: 81px; - height: 99px; -} .Pet-LionCub-Cupid { background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Pet-LionCub-Cupid.png'); width: 81px; @@ -55258,6 +55478,11 @@ width: 81px; height: 99px; } +.Pet-LionCub-Opal { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Pet-LionCub-Opal.png'); + width: 81px; + height: 99px; +} .Pet-LionCub-Peppermint { background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Pet-LionCub-Peppermint.png'); width: 81px; @@ -55748,11 +55973,6 @@ width: 81px; height: 99px; } -.Pet-PandaCub-Cryptid { - background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Pet-PandaCub-Cryptid.png'); - width: 81px; - height: 99px; -} .Pet-PandaCub-Cupid { background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Pet-PandaCub-Cupid.png'); width: 81px; @@ -55858,6 +56078,11 @@ width: 81px; height: 99px; } +.Pet-PandaCub-Opal { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Pet-PandaCub-Opal.png'); + width: 81px; + height: 99px; +} .Pet-PandaCub-Peppermint { background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Pet-PandaCub-Peppermint.png'); width: 81px; @@ -56173,6 +56398,56 @@ width: 81px; height: 99px; } +.Pet-Platypus-Base { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Pet-Platypus-Base.png'); + width: 81px; + height: 99px; +} +.Pet-Platypus-CottonCandyBlue { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Pet-Platypus-CottonCandyBlue.png'); + width: 81px; + height: 99px; +} +.Pet-Platypus-CottonCandyPink { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Pet-Platypus-CottonCandyPink.png'); + width: 81px; + height: 99px; +} +.Pet-Platypus-Desert { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Pet-Platypus-Desert.png'); + width: 81px; + height: 99px; +} +.Pet-Platypus-Golden { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Pet-Platypus-Golden.png'); + width: 81px; + height: 99px; +} +.Pet-Platypus-Red { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Pet-Platypus-Red.png'); + width: 81px; + height: 99px; +} +.Pet-Platypus-Shade { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Pet-Platypus-Shade.png'); + width: 81px; + height: 99px; +} +.Pet-Platypus-Skeleton { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Pet-Platypus-Skeleton.png'); + width: 81px; + height: 99px; +} +.Pet-Platypus-White { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Pet-Platypus-White.png'); + width: 81px; + height: 99px; +} +.Pet-Platypus-Zombie { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Pet-Platypus-Zombie.png'); + width: 81px; + height: 99px; +} .Pet-Pterodactyl-Base { background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Pet-Pterodactyl-Base.png'); width: 81px; @@ -57088,11 +57363,6 @@ width: 81px; height: 99px; } -.Pet-TigerCub-Cryptid { - background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Pet-TigerCub-Cryptid.png'); - width: 81px; - height: 99px; -} .Pet-TigerCub-Cupid { background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Pet-TigerCub-Cupid.png'); width: 81px; @@ -57198,6 +57468,11 @@ width: 81px; height: 99px; } +.Pet-TigerCub-Opal { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Pet-TigerCub-Opal.png'); + width: 81px; + height: 99px; +} .Pet-TigerCub-Peppermint { background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Pet-TigerCub-Peppermint.png'); width: 81px; @@ -57728,11 +58003,6 @@ width: 81px; height: 99px; } -.Pet-Wolf-Cryptid { - background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Pet-Wolf-Cryptid.png'); - width: 81px; - height: 99px; -} .Pet-Wolf-Cupid { background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Pet-Wolf-Cupid.png'); width: 81px; @@ -57838,6 +58108,11 @@ width: 81px; height: 99px; } +.Pet-Wolf-Opal { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Pet-Wolf-Opal.png'); + width: 81px; + height: 99px; +} .Pet-Wolf-Peppermint { background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/Pet-Wolf-Peppermint.png'); width: 81px; diff --git a/website/common/locales/en/backgrounds.json b/website/common/locales/en/backgrounds.json index 0c14248a15..1d9b135e18 100644 --- a/website/common/locales/en/backgrounds.json +++ b/website/common/locales/en/backgrounds.json @@ -1023,6 +1023,10 @@ "backgroundGardenWithFlowerBedsText": "Garden with Flower Beds", "backgroundGardenWithFlowerBedsNotes": "Enjoy the blooms of spring in a Garden with Flower Beds.", + "backgrounds052025": "SET 132: Released May 2025", + "backgroundTrailThroughAForestText": "Trail Through a Forest", + "backgroundTrailThroughAForestNotes": "Wander down a Trail Through a Forest.", + "timeTravelBackgrounds": "Steampunk Backgrounds", "backgroundAirshipText": "Airship", "backgroundAirshipNotes": "Become a sky sailor on board your very own Airship.", diff --git a/website/common/locales/en/content.json b/website/common/locales/en/content.json index 318edb3e9b..740e1a6a8d 100644 --- a/website/common/locales/en/content.json +++ b/website/common/locales/en/content.json @@ -283,6 +283,10 @@ "questEggAlpacaMountText": "Alpaca", "questEggAlpacaAdjective": "an overpacked", + "questEggPlatypusText": "Platypus", + "questEggPlatypusMountText": "Platypus", + "questEggPlatypusAdjective": "a perfectionist", + "eggNotes": "Find a hatching potion to pour on this egg, and it will hatch into <%= eggAdjective(locale) %> <%= eggText(locale) %>.", "hatchingPotionBase": "Base", @@ -351,6 +355,7 @@ "hatchingPotionJade": "Jade", "hatchingPotionBalloon": "Balloon", "hatchingPotionCryptid": "Cryptid", + "hatchingPotionOpal": "Opal", "hatchingPotionNotes": "Pour this on an egg, and it will hatch as a <%= potText(locale) %> Pet.", "premiumPotionUnlimitedNotes": "Not usable on Quest Pet eggs.", diff --git a/website/common/locales/en/gear.json b/website/common/locales/en/gear.json index dbe25dcd71..130d893c32 100644 --- a/website/common/locales/en/gear.json +++ b/website/common/locales/en/gear.json @@ -809,6 +809,8 @@ "weaponArmoireSpookyCandyBucketNotes": "With an epic costume like that, you’re going to get so much candy! Good thing you’ve got this bottomless bucket to hold it all. Try not to snack on any until you get home. Increases Intelligence by <%= int %>. Enchanted Armoire: Fright Night Set (Item 2 of 2)", "weaponArmoireStormKnightAxeText": "Storm Knight Axe", "weaponArmoireStormKnightAxeNotes": "Gather your fury and strike a blow like thunder! Increases Strength by <%= str %>. Enchanted Armoire: Storm Knight Set (Item 3 of 3)", + "weaponArmoireGildedKnightsSpearText": "Gilded Knight Spear", + "weaponArmoireGildedKnightsSpearNotes": "With this weapon, you can make sure everybody always pays their debts. Increases Strength by <%= str %>. Enchanted Armoire: Gilded Knight Set (Item 3 of 3)", "armor": "armor", "armorCapitalized": "Armor", @@ -1708,6 +1710,8 @@ "armorArmoireSillyOrangeTuxedoNotes": "Your own personal suit du jour. Increases Constitution by <%= con %>. Enchanted Armoire: Silly Tuxedo Set (Item 1 of 2).", "armorArmoireSillierBlueTuxedoText": "Sillier Blue Tuxedo", "armorArmoireSillierBlueTuxedoNotes": "Put out the vibe in this unique outfit. Increases Strength by <%= str %>. Enchanted Armoire: Sillier Tuxedo Set (Item 1 of 2).", + "armorArmoireGildedKnightsPlateText": "Gilded Knight Armor", + "armorArmoireGildedKnightsPlateNotes": "In this armor, you are nearly invincible. Your enemies will surely hear you roar! Increases Perception by <%= per %>. Enchanted Armoire: Gilded Knight Set (Item 2 of 3)", "headgear": "helm", "headgearCapitalized": "Headgear", @@ -2628,6 +2632,8 @@ "headArmoireSillyOrangeTophatNotes": "Goes well with a pumpkin pie hair cut. Increases Strength and Constitution by <%= attrs %> each. Enchanted Armoire: Silly Tuxedo Set (Item 2 of 2).", "headArmoireSillierBlueTophatText": "Sillier Blue Tophat", "headArmoireSillierBlueTophatNotes": "A little class, a little sophistication. Increases Strength and Constitution by <%= attrs %> each. Enchanted Armoire: Sillier Tuxedo Set (Item 2 of 2).", + "headArmoireGildedKnightsHelmText": "Gilded Knight Helm", + "headArmoireGildedKnightsHelmNotes": "Shine as bright as the sun through the darkness of any battle. Increases Constitution by <%= con %>. Enchanted Armoire: Gilded Knight Set (Item 1 of 3)", "offhand": "off-hand item", "offHandCapitalized": "Off-Hand Item", @@ -3206,6 +3212,8 @@ "backMystery202405Notes": "These magnificent wings have the glow of pure gold but are as light as a feather. Confers no benefit. May 2024 Subscriber Item.", "backMystery202410Text": "Candy Corn Tail", "backMystery202410Notes": "This tail perks up at the mention of spooky treats. Confers no benefit. October 2024 Subscriber Item.", + "backMystery202505Text": "Soaring Swallowtail Wings", + "backMystery202505Notes": "Earn your stripes swooping and soaring on these aerodynamic wings. Confers no benefit. May 2025 Subscriber Item.", "backSpecialWonderconRedText": "Mighty Cape", "backSpecialWonderconRedNotes": "Swishes with strength and beauty. Confers no benefit. Special Edition Convention Item.", @@ -3453,6 +3461,8 @@ "headAccessoryMystery202405Notes": "The metallic sheen of these fine horns reflects the dancing colors of dragon fire. Confers no benefit. May 2024 Subscriber Item.", "headAccessoryMystery202410Text": "Candy Corn Ears", "headAccessoryMystery202410Notes": "Is that the sound of trick-or-treaters at your door? Confers no benefit. October 2024 Subscriber Item.", + "headAccessoryMystery202505Text": "Soaring Swallowtail Antennae", + "headAccessoryMystery202505Notes": "Detect the best patches of wildflowers with these sensitive appendages. Confers no benefit. May 2025 Subscriber Item.", "headAccessoryMystery301405Text": "Headwear Goggles", "headAccessoryMystery301405Notes": "\"Goggles are for your eyes,\" they said. \"Nobody wants goggles that you can only wear on your head,\" they said. Hah! You sure showed them! Confers no benefit. August 3015 Subscriber Item.", diff --git a/website/common/locales/en/questsContent.json b/website/common/locales/en/questsContent.json index cab0d40454..96c3c109dd 100644 --- a/website/common/locales/en/questsContent.json +++ b/website/common/locales/en/questsContent.json @@ -970,6 +970,25 @@ "questAlpacaDropAlpacaEgg": "Alpaca (egg)", "questAlpacaUnlockText": "Unlocks Alpaca Eggs for Purchase in the Market", + "questPlatypusText": "The Perfectionist Platypus", + "questPlatypusNotes": "It’s a beautiful day at Conquest Creek, only made worse by the worksheet in your hand. Why do cool adventures always get ruined by homework? You’re five questions deep about river ecosystems when they hit you with an essay response.

“Describe how an animal may adapt to river dwelling? Ugh, I don’t know...”

After spending 30 minutes hopelessly stuck on how to even start, you hear a lot of frustrated-sounding splashing down the bank.

“Augh,” a voice comes bubbling from just under the surface. A frazzled looking platypus pops up. “This burrow isn’t coming together at all! Each time I start it looks just wrong.” She dives back under the surface and her broad, flat tail throws a mighty splash right into your face.

“Wait, don’t trash it all—” you shout, as another slosh of creek water hits you. You may be able to help, and get some inspiration along the way!", + "questPlatypusCompletion": "After an exhausting exchange of water blasts and some encouraging words from your end, the platypus finally stops and comes to the surface with a sigh.

“You may be right. If I demand flawlessness I’m just never going to finish! I can always make adjustments as I go. Seems like you know a little something about perfectionism.”

You look at your soggy worksheet “Yeah...”

“Sorry about that,” the platypus says. “Here, as an apology for getting your essay wet, please take some eggs I found in the mud.”", + "questPlatypusBoss": "The Perfectionist Platypus", + "questPlatypusRageTitle": "Shocking Splash", + "questPlatypusRageDescription": "This bar fills when you don't complete your Dailies. When it's full, the Perfectionist Platypus will take away some of your party's MP!", + "questPlatypusRageEffect": "The Perfectionist Platypus dives under the water and splashes you! The party’s MP is reduced!", + "questPlatypusDropPlatypusEgg": "Platypus (egg)", + "questPlatypusUnlockText": "Unlocks Platypus Eggs for Purchase in the Market", + + "questOpalText": "The Legend of the Obscure Opals", + "questOpalNotes": "Habitica’s scholars have long searched for the fabled Opal Magic Hatching Potion. A potion so powerful it imbues Pets and their Mount counterparts with fiery color and brilliance unlike any other gemstone or precious metal. The magic of opals is even rumored to enhance planning, insight and creativity. What a boost that would be for your tasks!

After much searching, you may have finally uncovered the answer. Opal Potions require raw opal stones to be forged with the magic runes of Libra and Mercury. These ancient items can only be found in one place... the perilous ruins of the lost city, on the edge of the Timewaste Desert.

You arrive at the ruins after days of riding your strongest Mount through the harsh and remote terrain. Among the sun-bleached and broken stones you see a bright glimmer. The search begins!", + "questOpalCompletion": "At last, tired and dusty, you find the final runes and opal stone needed to forge the Magic Hatching Potion.

You begin the forging process the minute you’re back in Habitica’s main city. The power of the runes and opals fills your laboratory with rainbow light! In no time you’ve got three potions, and you’re excited to hatch some new colorful pals.", + "questOpalCollectLibraRunes": "Libra Rune", + "questOpalCollectMercuryRunes": "Mercury Rune", + "questOpalCollectOpalGems": "Opal Gem", + "questOpalDropOpalPotion": "Opal Hatching Potion", + "questOpalUnlockText": "Unlocks Opal Hatching Potions for purchase in the Market", + "questFungiText": "The Moody Mushroom", "questFungiNotes": "It’s been a rainy spring in Habitica and the ground around the stables is spongy and damp. You notice quite a few mushrooms have appeared along the wooden stable walls and fences. There’s a fog hanging about, not quite letting the sun peek through, and it’s a bit dispiriting.

Out of the mist you see the outline of the April Fool, not at all his usual bouncy self.

”I’d hoped to bring you all some delightful Fungi Magic Hatching Potions so that you can keep your mushroom friends from my special day forever,” he says, his expression alarmingly unsmiling. “But this cold fog is really getting to me, it’s making me feel too tired and dismal to work my usual magic.”

“Oh no, sorry to hear that,” you say, noticing your own increasingly somber mood. “This fog is really making the day gloomy. I wonder where it came from…”

A low rumble sounds across the fields, and you see an outline emerging from the mist. You’re alarmed to see a gigantic and unhappy looking mushroom creature, and the mist appears to be emanating from it.

“Aha,” says the Fool, “I think this fungal fellow may be the source of our blues. Let’s see if we can summon a little cheer for our friend here and ourselves.”", "questFungiCompletion": "You and the April Fool look at each other with a sign of relief as the mushroom retreats to the forest.

“Ah,” the Fool exclaims, “that was quite a mycelial melancholy. I’m glad we could improve his mood, and ours too! I feel my energy coming back. Come with me and we’ll get those Fungi potions going together.”", diff --git a/website/common/locales/en/subscriber.json b/website/common/locales/en/subscriber.json index 797c546225..99de6aeaf6 100644 --- a/website/common/locales/en/subscriber.json +++ b/website/common/locales/en/subscriber.json @@ -173,6 +173,7 @@ "mysterySet202502": "Heartfelt Harlequin Set", "mysterySet202503": "Jade Juggernaut Set", "mysterySet202504": "Elusive Yeti Set", + "mysterySet202505": "Soaring Swallowtail Set", "mysterySet301404": "Steampunk Standard Set", "mysterySet301405": "Steampunk Accessories Set", "mysterySet301703": "Peacock Steampunk Set", diff --git a/website/common/script/content/appearance/backgrounds.js b/website/common/script/content/appearance/backgrounds.js index dcf55b5cff..3ec641bf5e 100644 --- a/website/common/script/content/appearance/backgrounds.js +++ b/website/common/script/content/appearance/backgrounds.js @@ -653,6 +653,9 @@ const backgrounds = { backgrounds042025: { garden_with_flower_beds: { }, }, + backgrounds052025: { + trail_through_a_forest: { }, + }, eventBackgrounds: { birthday_bash: { price: 0, diff --git a/website/common/script/content/constants/releaseDates.js b/website/common/script/content/constants/releaseDates.js index 8cfd1856fa..2761cf43fc 100644 --- a/website/common/script/content/constants/releaseDates.js +++ b/website/common/script/content/constants/releaseDates.js @@ -19,6 +19,7 @@ export const ARMOIRE_RELEASE_DATES = { springPetalSet: { year: 2025, month: 3 }, sillyTuxedoSet: { year: 2025, month: 4 }, sillierTuxedoSet: { year: 2025, month: 4 }, + gildedKnightSet: { year: 2025, month: 5 }, }; export const EGGS_RELEASE_DATES = { @@ -30,6 +31,7 @@ export const EGGS_RELEASE_DATES = { Cat: { year: 2025, month: 2, day: 14 }, Otter: { year: 2025, month: 3, day: 14 }, Alpaca: { year: 2025, month: 4, day: 14 }, + Platypus: { year: 2025, month: 5, day: 14 }, }; export const HATCHING_POTIONS_RELEASE_DATES = { @@ -38,4 +40,5 @@ export const HATCHING_POTIONS_RELEASE_DATES = { Jade: { year: 2025, month: 3, day: 14 }, Cryptid: { year: 2025, month: 4, day: 3 }, Balloon: { year: 2025, month: 4, day: 21 }, + Opal: { year: 2025, month: 5, day: 14 }, }; diff --git a/website/common/script/content/constants/schedule.js b/website/common/script/content/constants/schedule.js index 0f6f388dec..80d60cbd65 100644 --- a/website/common/script/content/constants/schedule.js +++ b/website/common/script/content/constants/schedule.js @@ -290,11 +290,13 @@ export const MONTHLY_SCHEDULE = { 'horse', 'kraken', 'sloth', + 'platypus', ], }, { type: 'hatchingPotionQuests', items: [ + 'opal', ], }, { diff --git a/website/common/script/content/eggs.js b/website/common/script/content/eggs.js index 18b029eb26..5bdc75af33 100644 --- a/website/common/script/content/eggs.js +++ b/website/common/script/content/eggs.js @@ -441,6 +441,12 @@ const quests = { adjective: t('questEggAlpacaAdjective'), canBuy: hasQuestAchievementFunction('alpaca'), }, + Platypus: { + text: t('questEggPlatypusText'), + mountText: t('questEggPlatypusMountText'), + adjective: t('questEggPlatypusAdjective'), + canBuy: hasQuestAchievementFunction('platypus'), + }, }; applyEggDefaults(drops, { diff --git a/website/common/script/content/gear/sets/armoire.js b/website/common/script/content/gear/sets/armoire.js index 01451a842f..a94fae568f 100644 --- a/website/common/script/content/gear/sets/armoire.js +++ b/website/common/script/content/gear/sets/armoire.js @@ -524,6 +524,10 @@ const armor = { str: 12, set: 'sillierTuxedoSet', }, + gildedKnightsPlate: { + per: 11, + set: 'gildedKnightSet', + }, }; const body = { @@ -1072,6 +1076,10 @@ const head = { con: 6, set: 'sillierTuxedoSet', }, + gildedKnightsHelm: { + con: 11, + set: 'gildedKnightSet', + }, }; const shield = { @@ -1943,6 +1951,10 @@ const weapon = { str: 11, set: 'stormKnightSet', }, + gildedKnightsSpear: { + str: 11, + set: 'gildedKnightSet', + }, }; const releaseDay = 7; diff --git a/website/common/script/content/gear/sets/mystery.js b/website/common/script/content/gear/sets/mystery.js index d34a6a0194..9de87225f3 100644 --- a/website/common/script/content/gear/sets/mystery.js +++ b/website/common/script/content/gear/sets/mystery.js @@ -114,6 +114,7 @@ const back = { 202402: { }, 202405: { }, 202410: { }, + 202505: { }, }; const body = { @@ -275,6 +276,7 @@ const headAccessory = { 202310: { }, 202405: { }, 202410: { }, + 202505: { }, 301405: { }, }; diff --git a/website/common/script/content/hatching-potions.js b/website/common/script/content/hatching-potions.js index 4682787a9d..c7e11fc17c 100644 --- a/website/common/script/content/hatching-potions.js +++ b/website/common/script/content/hatching-potions.js @@ -133,6 +133,10 @@ const premium = { canBuy: hasQuestAchievementFunction('jade'), }, Balloon: {}, + Opal: { + questPotion: true, + canBuy: hasQuestAchievementFunction('opal'), + }, }; const wacky = { diff --git a/website/common/script/content/quests/pets.js b/website/common/script/content/quests/pets.js index 28acc1b9a4..23535e3662 100644 --- a/website/common/script/content/quests/pets.js +++ b/website/common/script/content/quests/pets.js @@ -1198,6 +1198,45 @@ const QUEST_PETS = { unlock: t('questPenguinUnlockText'), }, }, + platypus: { + text: t('questPlatypusText'), + notes: t('questPlatypusNotes'), + completion: t('questPlatypusCompletion'), + value: 4, + category: 'pet', + boss: { + name: t('questPlatypusBoss'), + hp: 1000, + str: 2, + rage: { + title: t('questPlatypusRageTitle'), + description: t('questPlatypusRageDescription'), + value: 50, + mpDrain: 0.33, + effect: t('questPlatypusRageEffect'), + }, + }, + drop: { + items: [ + { + type: 'eggs', + key: 'Platypus', + text: t('questPlatypusDropPlatypusEgg'), + }, { + type: 'eggs', + key: 'Platypus', + text: t('questPlatypusDropPlatypusEgg'), + }, { + type: 'eggs', + key: 'Platypus', + text: t('questPlatypusDropPlatypusEgg'), + }, + ], + gp: 100, + exp: 1000, + unlock: t('questPlatypusUnlockText'), + }, + }, pterodactyl: { text: t('questPterodactylText'), notes: t('questPterodactylNotes'), diff --git a/website/common/script/content/quests/potions.js b/website/common/script/content/quests/potions.js index bae8472861..858aeef481 100644 --- a/website/common/script/content/quests/potions.js +++ b/website/common/script/content/quests/potions.js @@ -405,5 +405,46 @@ const QUEST_POTIONS = { unlock: t('questJadeUnlockText'), }, }, + opal: { + text: t('questOpalText'), + notes: t('questOpalNotes'), + completion: t('questOpalCompletion'), + value: 4, + category: 'hatchingPotion', + collect: { + opalGem: { + text: t('questOpalCollectOpalGems'), + count: 25, + }, + libraRune: { + text: t('questOpalCollectLibraRunes'), + count: 10, + }, + mercuryRune: { + text: t('questOpalCollectMercuryRunes'), + count: 10, + }, + }, + drop: { + items: [ + { + type: 'hatchingPotions', + key: 'Opal', + text: t('questOpalDropOpalPotion'), + }, { + type: 'hatchingPotions', + key: 'Opal', + text: t('questOpalDropOpalPotion'), + }, { + type: 'hatchingPotions', + key: 'Opal', + text: t('questOpalDropOpalPotion'), + }, + ], + gp: 50, + exp: 350, + unlock: t('questOpalUnlockText'), + }, + }, }; export default QUEST_POTIONS; diff --git a/website/common/script/content/shop-featuredItems.js b/website/common/script/content/shop-featuredItems.js index 55cccbbeeb..8df77db392 100644 --- a/website/common/script/content/shop-featuredItems.js +++ b/website/common/script/content/shop-featuredItems.js @@ -17,6 +17,7 @@ const potentialFeaturedPetQuests = [ 'alpaca', 'sloth', + 'platypus', 'hippo', 'giraffe',