feat(content): Magic Hatching Potions
@@ -298,6 +298,7 @@
|
|||||||
"hatchingPotionAmber": "Amber",
|
"hatchingPotionAmber": "Amber",
|
||||||
"hatchingPotionAurora": "Aurora",
|
"hatchingPotionAurora": "Aurora",
|
||||||
"hatchingPotionRuby": "Ruby",
|
"hatchingPotionRuby": "Ruby",
|
||||||
|
"hatchingPotionBirchBark": "Birch Bark",
|
||||||
|
|
||||||
"hatchingPotionNotes": "Pour this on an egg, and it will hatch as a <%= potText(locale) %> pet.",
|
"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) %>.",
|
"premiumPotionAddlNotes": "Not usable on quest pet eggs. Available for purchase until <%= date(locale) %>.",
|
||||||
|
|||||||
@@ -85,45 +85,45 @@
|
|||||||
"scarecrowWarriorSet": "Scarecrow Warrior (Warrior)",
|
"scarecrowWarriorSet": "Scarecrow Warrior (Warrior)",
|
||||||
"stitchWitchSet": "Stitch Witch (Mage)",
|
"stitchWitchSet": "Stitch Witch (Mage)",
|
||||||
"potionerSet": "Potioner (Healer)",
|
"potionerSet": "Potioner (Healer)",
|
||||||
"battleRogueSet": "Bat-tle Rogue (Rogue)",
|
"battleRogueSet": "Bat-tle (Rogue)",
|
||||||
"springingBunnySet": "Springing Bunny (Healer)",
|
"springingBunnySet": "Springing Bunny (Healer)",
|
||||||
"grandMalkinSet": "Grand Malkin (Mage)",
|
"grandMalkinSet": "Grand Malkin (Mage)",
|
||||||
"cleverDogSet": "Clever Dog (Rogue)",
|
"cleverDogSet": "Clever Dog (Rogue)",
|
||||||
"braveMouseSet": "Brave Mouse (Warrior)",
|
"braveMouseSet": "Brave Mouse (Warrior)",
|
||||||
"summer2016SharkWarriorSet": "Shark Warrior (Warrior)",
|
"summer2016SharkWarriorSet": "Shark (Warrior)",
|
||||||
"summer2016DolphinMageSet": "Dolphin Mage (Mage)",
|
"summer2016DolphinMageSet": "Dolphin (Mage)",
|
||||||
"summer2016SeahorseHealerSet": "Seahorse Healer (Healer)",
|
"summer2016SeahorseHealerSet": "Seahorse (Healer)",
|
||||||
"summer2016EelSet": "Eel Rogue (Rogue)",
|
"summer2016EelSet": "Eel (Rogue)",
|
||||||
"fall2016SwampThingSet": "Swamp Thing (Warrior)",
|
"fall2016SwampThingSet": "Swamp Thing (Warrior)",
|
||||||
"fall2016WickedSorcererSet": "Wicked Sorcerer (Mage)",
|
"fall2016WickedSorcererSet": "Wicked Sorcerer (Mage)",
|
||||||
"fall2016GorgonHealerSet": "Gorgon Healer (Healer)",
|
"fall2016GorgonHealerSet": "Gorgon (Healer)",
|
||||||
"fall2016BlackWidowSet": "Black Widow Rogue (Rogue)",
|
"fall2016BlackWidowSet": "Black Widow (Rogue)",
|
||||||
"winter2017IceHockeySet": "Ice Hockey (Warrior)",
|
"winter2017IceHockeySet": "Ice Hockey (Warrior)",
|
||||||
"winter2017WinterWolfSet": "Winter Wolf (Mage)",
|
"winter2017WinterWolfSet": "Winter Wolf (Mage)",
|
||||||
"winter2017SugarPlumSet": "Sugar Plum Healer (Healer)",
|
"winter2017SugarPlumSet": "Sugar Plum (Healer)",
|
||||||
"winter2017FrostyRogueSet": "Frosty Rogue (Rogue)",
|
"winter2017FrostyRogueSet": "Frosty (Rogue)",
|
||||||
"spring2017FelineWarriorSet": "Feline Warrior (Warrior)",
|
"spring2017FelineWarriorSet": "Feline (Warrior)",
|
||||||
"spring2017CanineConjurorSet": "Canine Conjuror (Mage)",
|
"spring2017CanineConjurorSet": "Canine Conjuror (Mage)",
|
||||||
"spring2017FloralMouseSet": "Floral Mouse (Healer)",
|
"spring2017FloralMouseSet": "Floral Mouse (Healer)",
|
||||||
"spring2017SneakyBunnySet": "Sneaky Bunny (Rogue)",
|
"spring2017SneakyBunnySet": "Sneaky Bunny (Rogue)",
|
||||||
"summer2017SandcastleWarriorSet": "Sandcastle Warrior (Warrior)",
|
"summer2017SandcastleWarriorSet": "Sandcastle (Warrior)",
|
||||||
"summer2017WhirlpoolMageSet": "Whirlpool Mage (Mage)",
|
"summer2017WhirlpoolMageSet": "Whirlpool (Mage)",
|
||||||
"summer2017SeashellSeahealerSet": "Seashell Seahealer (Healer)",
|
"summer2017SeashellSeahealerSet": "Seashell Seahealer (Healer)",
|
||||||
"summer2017SeaDragonSet": "Sea Dragon (Rogue)",
|
"summer2017SeaDragonSet": "Sea Dragon (Rogue)",
|
||||||
"fall2017HabitoweenSet": "Habitoween Warrior (Warrior)",
|
"fall2017HabitoweenSet": "Habitoween (Warrior)",
|
||||||
"fall2017MasqueradeSet": "Masquerade Mage (Mage)",
|
"fall2017MasqueradeSet": "Masquerade (Mage)",
|
||||||
"fall2017HauntedHouseSet": "Haunted House Healer (Healer)",
|
"fall2017HauntedHouseSet": "Haunted House (Healer)",
|
||||||
"fall2017TrickOrTreatSet": "Trick or Treat Rogue (Rogue)",
|
"fall2017TrickOrTreatSet": "Trick or Treat (Rogue)",
|
||||||
"winter2018ConfettiSet": "Confetti Mage (Mage)",
|
"winter2018ConfettiSet": "Confetti (Mage)",
|
||||||
"winter2018GiftWrappedSet": "Gift-Wrapped Warrior (Warrior)",
|
"winter2018GiftWrappedSet": "Gift-Wrapped (Warrior)",
|
||||||
"winter2018MistletoeSet": "Mistletoe Healer (Healer)",
|
"winter2018MistletoeSet": "Mistletoe (Healer)",
|
||||||
"winter2018ReindeerSet": "Reindeer Rogue (Rogue)",
|
"winter2018ReindeerSet": "Reindeer (Rogue)",
|
||||||
"spring2018SunriseWarriorSet": "Sunrise Warrior (Warrior)",
|
"spring2018SunriseWarriorSet": "Sunrise (Warrior)",
|
||||||
"spring2018TulipMageSet": "Tulip Mage (Mage)",
|
"spring2018TulipMageSet": "Tulip (Mage)",
|
||||||
"spring2018GarnetHealerSet": "Garnet Healer (Healer)",
|
"spring2018GarnetHealerSet": "Garnet (Healer)",
|
||||||
"spring2018DucklingRogueSet": "Duckling Rogue (Rogue)",
|
"spring2018DucklingRogueSet": "Duckling (Rogue)",
|
||||||
"summer2018BettaFishWarriorSet": "Betta Fish Warrior (Warrior)",
|
"summer2018BettaFishWarriorSet": "Betta Fish (Warrior)",
|
||||||
"summer2018LionfishMageSet": "Lionfish Mage (Mage)",
|
"summer2018LionfishMageSet": "Lionfish (Mage)",
|
||||||
"summer2018MerfolkMonarchSet": "Merfolk Monarch (Healer)",
|
"summer2018MerfolkMonarchSet": "Merfolk Monarch (Healer)",
|
||||||
"summer2018FisherRogueSet": "Fisher-Rogue (Rogue)",
|
"summer2018FisherRogueSet": "Fisher-Rogue (Rogue)",
|
||||||
"fall2018MinotaurWarriorSet": "Minotaur (Warrior)",
|
"fall2018MinotaurWarriorSet": "Minotaur (Warrior)",
|
||||||
@@ -151,7 +151,7 @@
|
|||||||
"winter2020CarolOfTheMageSet": "Carol of the Mage (Mage)",
|
"winter2020CarolOfTheMageSet": "Carol of the Mage (Mage)",
|
||||||
"winter2020WinterSpiceSet": "Winter Spice (Healer)",
|
"winter2020WinterSpiceSet": "Winter Spice (Healer)",
|
||||||
"winter2020LanternSet": "Lantern (Rogue)",
|
"winter2020LanternSet": "Lantern (Rogue)",
|
||||||
"spring2020BeetleWarriorSet": "Beetle (Warrior)",
|
"spring2020BeetleWarriorSet": "Rhinoceros Beetle (Warrior)",
|
||||||
"spring2020PuddleMageSet": "Puddle (Mage)",
|
"spring2020PuddleMageSet": "Puddle (Mage)",
|
||||||
"spring2020IrisHealerSet": "Iris (Healer)",
|
"spring2020IrisHealerSet": "Iris (Healer)",
|
||||||
"spring2020LapisLazuliRogueSet": "Lapis Lazuli (Rogue)",
|
"spring2020LapisLazuliRogueSet": "Lapis Lazuli (Rogue)",
|
||||||
@@ -163,6 +163,7 @@
|
|||||||
"dateEndJune": "June 14",
|
"dateEndJune": "June 14",
|
||||||
"augustYYYY": "August <%= year %>",
|
"augustYYYY": "August <%= year %>",
|
||||||
"decemberYYYY": "December <%= year %>",
|
"decemberYYYY": "December <%= year %>",
|
||||||
|
"marchYYYY": "March <%= year %>",
|
||||||
"dateEndJuly": "July 31",
|
"dateEndJuly": "July 31",
|
||||||
"dateEndAugust": "August 31",
|
"dateEndAugust": "August 31",
|
||||||
"dateEndSeptember": "September 21",
|
"dateEndSeptember": "September 21",
|
||||||
|
|||||||
@@ -70,6 +70,13 @@ const premium = {
|
|||||||
value: 2,
|
value: 2,
|
||||||
text: t('hatchingPotionShimmer'),
|
text: t('hatchingPotionShimmer'),
|
||||||
limited: true,
|
limited: true,
|
||||||
|
_addlNotes: t('eventAvailabilityReturning', {
|
||||||
|
availableDate: t('dateEndMarch'),
|
||||||
|
previousDate: t('marchYYYY', { year: 2018 }),
|
||||||
|
}),
|
||||||
|
canBuy () {
|
||||||
|
return moment().isBefore('2020-05-02');
|
||||||
|
},
|
||||||
},
|
},
|
||||||
Fairy: {
|
Fairy: {
|
||||||
value: 2,
|
value: 2,
|
||||||
@@ -198,6 +205,13 @@ const premium = {
|
|||||||
value: 2,
|
value: 2,
|
||||||
text: t('hatchingPotionCelestial'),
|
text: t('hatchingPotionCelestial'),
|
||||||
limited: true,
|
limited: true,
|
||||||
|
_addlNotes: t('eventAvailabilityReturning', {
|
||||||
|
availableDate: t('dateEndMarch'),
|
||||||
|
previousDate: t('marchYYYY', { year: 2019 }),
|
||||||
|
}),
|
||||||
|
canBuy () {
|
||||||
|
return moment().isBefore('2020-05-02');
|
||||||
|
},
|
||||||
},
|
},
|
||||||
Sunshine: {
|
Sunshine: {
|
||||||
value: 2,
|
value: 2,
|
||||||
@@ -253,6 +267,17 @@ const premium = {
|
|||||||
canBuy: hasQuestAchievementFunction('ruby'),
|
canBuy: hasQuestAchievementFunction('ruby'),
|
||||||
_addlNotes: t('premiumPotionUnlimitedNotes'),
|
_addlNotes: t('premiumPotionUnlimitedNotes'),
|
||||||
},
|
},
|
||||||
|
BirchBark: {
|
||||||
|
value: 2,
|
||||||
|
text: t('hatchingPotionBirchBark'),
|
||||||
|
limited: true,
|
||||||
|
canBuy () {
|
||||||
|
return moment().isBefore('2020-05-02');
|
||||||
|
},
|
||||||
|
_addlNotes: t('premiumPotionAddlNotes', {
|
||||||
|
date: t('dateEndMarch'),
|
||||||
|
}),
|
||||||
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
const wacky = {
|
const wacky = {
|
||||||
|
|||||||
|
After Width: | Height: | Size: 4.0 KiB |
|
After Width: | Height: | Size: 2.0 KiB |
|
After Width: | Height: | Size: 5.2 KiB |
|
After Width: | Height: | Size: 3.3 KiB |
|
After Width: | Height: | Size: 2.8 KiB |
|
After Width: | Height: | Size: 2.8 KiB |
|
After Width: | Height: | Size: 2.1 KiB |
|
After Width: | Height: | Size: 2.7 KiB |
|
After Width: | Height: | Size: 2.5 KiB |
|
After Width: | Height: | Size: 4.0 KiB |
|
After Width: | Height: | Size: 3.2 KiB |
|
After Width: | Height: | Size: 4.2 KiB |
|
After Width: | Height: | Size: 2.6 KiB |
|
After Width: | Height: | Size: 1.4 KiB |
|
After Width: | Height: | Size: 2.3 KiB |
|
After Width: | Height: | Size: 2.5 KiB |
|
After Width: | Height: | Size: 2.0 KiB |
|
After Width: | Height: | Size: 2.7 KiB |
|
After Width: | Height: | Size: 1.2 KiB |
|
After Width: | Height: | Size: 1.8 KiB |
|
After Width: | Height: | Size: 1.1 KiB |
|
After Width: | Height: | Size: 1.3 KiB |
|
After Width: | Height: | Size: 1.0 KiB |
|
After Width: | Height: | Size: 1.4 KiB |
|
After Width: | Height: | Size: 1.1 KiB |
|
After Width: | Height: | Size: 1.3 KiB |
|
After Width: | Height: | Size: 1.3 KiB |
|
After Width: | Height: | Size: 2.0 KiB |
|
After Width: | Height: | Size: 2.1 KiB |
|
After Width: | Height: | Size: 2.2 KiB |
|
After Width: | Height: | Size: 2.2 KiB |
|
After Width: | Height: | Size: 1.7 KiB |
|
After Width: | Height: | Size: 1.8 KiB |
|
After Width: | Height: | Size: 1.6 KiB |
|
After Width: | Height: | Size: 1.9 KiB |
|
After Width: | Height: | Size: 2.3 KiB |
|
After Width: | Height: | Size: 741 B |
|
After Width: | Height: | Size: 18 KiB |
@@ -4,7 +4,7 @@ const api = {};
|
|||||||
|
|
||||||
// @TODO export this const, cannot export it from here because only routes are exported from
|
// @TODO export this const, cannot export it from here because only routes are exported from
|
||||||
// controllers
|
// controllers
|
||||||
const LAST_ANNOUNCEMENT_TITLE = 'NEW PET QUEST BADGE AND BLOG POST!';
|
const LAST_ANNOUNCEMENT_TITLE = 'SPRING FLING BEGINS! LIMITED EDITION EQUIPMENT, SEASONAL SHOP, AND MAGIC HATCHING POTIONS!';
|
||||||
const worldDmg = { // @TODO
|
const worldDmg = { // @TODO
|
||||||
bailey: false,
|
bailey: false,
|
||||||
};
|
};
|
||||||
@@ -31,37 +31,50 @@ api.getNews = {
|
|||||||
<div class="mr-3 ${baileyClass}"></div>
|
<div class="mr-3 ${baileyClass}"></div>
|
||||||
<div class="media-body">
|
<div class="media-body">
|
||||||
<h1 class="align-self-center">${res.t('newStuff')}</h1>
|
<h1 class="align-self-center">${res.t('newStuff')}</h1>
|
||||||
<h2>3/17/2020 - ${LAST_ANNOUNCEMENT_TITLE}</h2>
|
<h2>3/19/2020 - ${LAST_ANNOUNCEMENT_TITLE}</h2>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<hr/>
|
<hr/>
|
||||||
<div class="achievement-bugBonanza2x center-block"></div>
|
<div class="promo_spring_2020 center-block"></div>
|
||||||
<h3>New Pet Quest Badge!</h3>
|
<h3>Limited Edition Class Outfits</h3>
|
||||||
<p>
|
<p>
|
||||||
We're releasing a new achievement so you can celebrate your successes in the world of
|
From now until April 30th, limited edition outfits are available in the Rewards column!
|
||||||
Habitican Pet collecting! Earn the Bug Bonanza achievement by collecting all Habitica's
|
Depending on your class, you can be a Rhinoceros Beetle Warrior, Iris Healer, Lapis
|
||||||
insect and insect-adjacent Pets and you'll earn a nifty badge for your profile.
|
Lazuli Rogue, or Puddle Mage. You'd better get productive to earn enough Gold before your
|
||||||
|
time runs out...
|
||||||
|
</p>
|
||||||
|
<div class="small mb-3">by Vikte, gawrone, jjgame83, Shine Caramia, and SabreCat</div>
|
||||||
|
<div class="promo_seasonal_shop_spring center-block"></div>
|
||||||
|
<h3>Seasonal Shop Opens</h3>
|
||||||
|
<p>
|
||||||
|
The <a href='/shops/seasonal'>Seasonal Shop</a> has opened! It's stocking springtime
|
||||||
|
Seasonal Edition goodies at the moment, including past spring outfits. Everything there
|
||||||
|
will be available to purchase during the Spring Fling event each year, but it's only open
|
||||||
|
until April 30th, so be sure to stock up now, or you'll have to wait a year to buy these
|
||||||
|
items again!
|
||||||
|
</p>
|
||||||
|
<div class="small mb-3">
|
||||||
|
by Eslyn, Aspiring Advocate, OuttaMyMind, Lt. Cabel, Vikte, Lalaitha, DialFForFunky,
|
||||||
|
Gerald the Pixel, Scarvia, Awesome kitty, usnbfs, Lemoness, Balduranne, PainterProphet,
|
||||||
|
Beffymaroo, and SabreCat
|
||||||
|
</div>
|
||||||
|
<div class="promo_spring_potions_2020 center-block"></div>
|
||||||
|
<h3>Spring Fling Magic Hatching Potions</h3>
|
||||||
|
<p>
|
||||||
|
There's a new pet breed in town! Check out the brand-new Birch Bark Potions and the
|
||||||
|
return of Shimmer and Celestial Potions to brighten your Spring avatar look from <a
|
||||||
|
href='/shops/market'>the Market</a> and use them to hatch any standard pet egg. (Magic
|
||||||
|
Hatching Potions do not work on Quest Pet eggs.) Magic Hatching Potion Pets aren't picky,
|
||||||
|
so they'll happily eat any kind of food that you feed them!
|
||||||
</p>
|
</p>
|
||||||
<p>
|
<p>
|
||||||
If you’ve already completed the required Quests for a newly released achievement you
|
These potions will be available until Spring Fling ends on April 30. After they're gone,
|
||||||
don’t have to do them all again! Just complete one of the relevant Quests and the
|
it will be at least a year before these Hatching Potions return, so be sure to get them
|
||||||
Achievement will unlock. Check your profile and celebrate your new Achievement with
|
now!
|
||||||
pride.
|
|
||||||
</p>
|
</p>
|
||||||
<div class="small mb-3">by JokeRat and SabreCat</div>
|
<div class="small mb-3">
|
||||||
<div class="promo_cosplay center-block"></div>
|
by Teto Forever, tricksy.fox, Bonogo, Mara, ravenlune, Ricardo, and SabreCat
|
||||||
<h3>Blog Post: Cosplay</h3>
|
</div>
|
||||||
<p>
|
|
||||||
This month's <a href='https://habitica.wordpress.com/2020/03/11/cosplay/'
|
|
||||||
target='_blank'>featured Wiki article</a> is about doing Cosplay with your avatar! We
|
|
||||||
hope that it will help you as you explore more ways to have fun with the stash of
|
|
||||||
outfits, pets, and backgrounds you've earned by completing your tasks. Be sure to check
|
|
||||||
it out, and let us know what you think by reaching out on <a
|
|
||||||
href='https://twitter.com/habitica' target='_blank'>Twitter</a>, <a
|
|
||||||
href='http://blog.habitrpg.com' target='_blank'>Tumblr</a>, and <a
|
|
||||||
href='https://facebook.com/habitica' target='_blank'>Facebook</a>.
|
|
||||||
</p>
|
|
||||||
<div class="small mb-3">by shanaqui and the Wiki Wizards</div>
|
|
||||||
</div>
|
</div>
|
||||||
`,
|
`,
|
||||||
});
|
});
|
||||||
|
|||||||