From f030135c8261bd3485114f8390a4e6e578f62837 Mon Sep 17 00:00:00 2001 From: Natalie L <78037386+CuriousMagpie@users.noreply.github.com> Date: Mon, 19 Sep 2022 17:55:53 -0400 Subject: [PATCH] chore(content): add 2022 Fall Festival (#14244) * chore(submodule): add August 2022 Mystery Items * update(content): add 2022 Fall Festival content * update(content): add 2022 Fall Festival content * update(content): update event dates for release * fix(lint): remove extra spaces also correct typo in gear string keys * feat(content): remaining descriptions * fix(event): correct spell availability * fix(test): work around first-match logic Co-authored-by: Sabe Jones Co-authored-by: SabreCat --- .../assets/css/sprites/spritesmith-main.css | 170 ++++++++++++++++++ website/common/locales/en/gear.json | 32 ++++ website/common/locales/en/limited.json | 4 + .../common/script/content/appearance/sets.js | 4 +- .../common/script/content/constants/events.js | 19 +- .../script/content/constants/seasonalSets.js | 5 + .../script/content/gear/sets/special/index.js | 60 +++++++ .../common/script/content/hatching-potions.js | 18 +- .../script/content/shop-featuredItems.js | 10 +- website/common/script/content/spells.js | 2 +- .../script/libs/shops-seasonal.config.js | 15 +- 11 files changed, 310 insertions(+), 29 deletions(-) diff --git a/website/client/src/assets/css/sprites/spritesmith-main.css b/website/client/src/assets/css/sprites/spritesmith-main.css index 277ff3f148..f91dc5b14f 100644 --- a/website/client/src/assets/css/sprites/spritesmith-main.css +++ b/website/client/src/assets/css/sprites/spritesmith-main.css @@ -22875,6 +22875,26 @@ width: 114px; height: 90px; } +.broad_armor_special_fall2022Healer { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/broad_armor_special_fall2022Healer.png'); + width: 114px; + height: 90px; +} +.broad_armor_special_fall2022Mage { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/broad_armor_special_fall2022Mage.png'); + width: 114px; + height: 90px; +} +.broad_armor_special_fall2022Rogue { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/broad_armor_special_fall2022Rogue.png'); + width: 114px; + height: 90px; +} +.broad_armor_special_fall2022Warrior { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/broad_armor_special_fall2022Warrior.png'); + width: 114px; + height: 90px; +} .broad_armor_special_fallHealer { background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/broad_armor_special_fallHealer.png'); width: 90px; @@ -23045,6 +23065,26 @@ width: 114px; height: 90px; } +.head_special_fall2022Healer { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/head_special_fall2022Healer.png'); + width: 114px; + height: 90px; +} +.head_special_fall2022Mage { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/head_special_fall2022Mage.png'); + width: 114px; + height: 90px; +} +.head_special_fall2022Rogue { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/head_special_fall2022Rogue.png'); + width: 114px; + height: 90px; +} +.head_special_fall2022Warrior { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/head_special_fall2022Warrior.png'); + width: 114px; + height: 90px; +} .head_special_fallHealer { background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/head_special_fallHealer.png'); width: 90px; @@ -23170,6 +23210,21 @@ width: 114px; height: 90px; } +.shield_special_fall2022Healer { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/shield_special_fall2022Healer.png'); + width: 114px; + height: 90px; +} +.shield_special_fall2022Rogue { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/shield_special_fall2022Rogue.png'); + width: 114px; + height: 90px; +} +.shield_special_fall2022Warrior { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/shield_special_fall2022Warrior.png'); + width: 114px; + height: 90px; +} .shield_special_fallHealer { background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/shield_special_fallHealer.png'); width: 90px; @@ -23325,6 +23380,26 @@ width: 68px; height: 68px; } +.shop_armor_special_fall2022Healer { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/shop_armor_special_fall2022Healer.png'); + width: 68px; + height: 68px; +} +.shop_armor_special_fall2022Mage { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/shop_armor_special_fall2022Mage.png'); + width: 68px; + height: 68px; +} +.shop_armor_special_fall2022Rogue { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/shop_armor_special_fall2022Rogue.png'); + width: 68px; + height: 68px; +} +.shop_armor_special_fall2022Warrior { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/shop_armor_special_fall2022Warrior.png'); + width: 68px; + height: 68px; +} .shop_armor_special_fallHealer { background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/shop_armor_special_fallHealer.png'); width: 68px; @@ -23495,6 +23570,26 @@ width: 68px; height: 68px; } +.shop_head_special_fall2022Healer { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/shop_head_special_fall2022Healer.png'); + width: 68px; + height: 68px; +} +.shop_head_special_fall2022Mage { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/shop_head_special_fall2022Mage.png'); + width: 68px; + height: 68px; +} +.shop_head_special_fall2022Rogue { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/shop_head_special_fall2022Rogue.png'); + width: 68px; + height: 68px; +} +.shop_head_special_fall2022Warrior { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/shop_head_special_fall2022Warrior.png'); + width: 68px; + height: 68px; +} .shop_head_special_fallHealer { background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/shop_head_special_fallHealer.png'); width: 68px; @@ -23620,6 +23715,21 @@ width: 68px; height: 68px; } +.shop_shield_special_fall2022Healer { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/shop_shield_special_fall2022Healer.png'); + width: 68px; + height: 68px; +} +.shop_shield_special_fall2022Rogue { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/shop_shield_special_fall2022Rogue.png'); + width: 68px; + height: 68px; +} +.shop_shield_special_fall2022Warrior { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/shop_shield_special_fall2022Warrior.png'); + width: 68px; + height: 68px; +} .shop_shield_special_fallHealer { background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/shop_shield_special_fallHealer.png'); width: 68px; @@ -23775,6 +23885,26 @@ width: 68px; height: 68px; } +.shop_weapon_special_fall2022Healer { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/shop_weapon_special_fall2022Healer.png'); + width: 68px; + height: 68px; +} +.shop_weapon_special_fall2022Mage { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/shop_weapon_special_fall2022Mage.png'); + width: 68px; + height: 68px; +} +.shop_weapon_special_fall2022Rogue { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/shop_weapon_special_fall2022Rogue.png'); + width: 68px; + height: 68px; +} +.shop_weapon_special_fall2022Warrior { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/shop_weapon_special_fall2022Warrior.png'); + width: 68px; + height: 68px; +} .shop_weapon_special_fallHealer { background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/shop_weapon_special_fallHealer.png'); width: 68px; @@ -23935,6 +24065,26 @@ width: 114px; height: 90px; } +.slim_armor_special_fall2022Healer { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/slim_armor_special_fall2022Healer.png'); + width: 114px; + height: 90px; +} +.slim_armor_special_fall2022Mage { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/slim_armor_special_fall2022Mage.png'); + width: 114px; + height: 90px; +} +.slim_armor_special_fall2022Rogue { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/slim_armor_special_fall2022Rogue.png'); + width: 114px; + height: 90px; +} +.slim_armor_special_fall2022Warrior { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/slim_armor_special_fall2022Warrior.png'); + width: 114px; + height: 90px; +} .slim_armor_special_fallHealer { background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/slim_armor_special_fallHealer.png'); width: 90px; @@ -24095,6 +24245,26 @@ width: 114px; height: 90px; } +.weapon_special_fall2022Healer { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/weapon_special_fall2022Healer.png'); + width: 114px; + height: 90px; +} +.weapon_special_fall2022Mage { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/weapon_special_fall2022Mage.png'); + width: 114px; + height: 90px; +} +.weapon_special_fall2022Rogue { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/weapon_special_fall2022Rogue.png'); + width: 114px; + height: 90px; +} +.weapon_special_fall2022Warrior { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/weapon_special_fall2022Warrior.png'); + width: 114px; + height: 90px; +} .weapon_special_fallHealer { background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/weapon_special_fallHealer.png'); width: 90px; diff --git a/website/common/locales/en/gear.json b/website/common/locales/en/gear.json index 3c81c01acf..076c94c917 100644 --- a/website/common/locales/en/gear.json +++ b/website/common/locales/en/gear.json @@ -447,6 +447,15 @@ "weaponSpecialSpring2022HealerText": "Peridot Wand", "weaponSpecialSpring2022HealerNotes": "Use this wand to tap into peridot’s healing properties, whether it be to bring calm, positivity, or kindheartedness. Increases Intelligence by <%= int %>. Limited Edition 2022 Spring Gear.", + "weaponSpecialFall2022RogueText": "Cucumber Blade", + "weaponSpecialFall2022RogueNotes": "Not only can you defend yourself with this cucumber, it also makes for a tasty meal. Increases Strength by <%= str %>. Limited Edition 2022 Fall Gear.", + "weaponSpecialFall2022WarriorText": "Orcish Ripsword", + "weaponSpecialFall2022WarriorNotes": "Maybe more suited for cutting logs or crusty loaves of bread than enemy armor, but RAWR! It sure looks fearsome! Increases Strength by <%= str %>. Limited Edition 2022 Fall Gear.", + "weaponSpecialFall2022MageText": "Wind Blasts", + "weaponSpecialFall2022MageNotes": "These mighty gusts remain in your wake as you take off toward the skies. Increases Intelligence by <%= int %> and Perception by <%= per %>. Limited Edition 2022 Fall Gear.", + "weaponSpecialFall2022HealerText": "Right Peeker Eye", + "weaponSpecialFall2022HealerNotes": "To claim victory, hold it forth and utter the words of command: 'Eye One!' Increases Intelligence by <%= int %>. Limited Edition 2022 Fall Gear.", + "weaponMystery201411Text": "Pitchfork of Feasting", "weaponMystery201411Notes": "Stab your enemies or dig in to your favorite foods - this versatile pitchfork does it all! Confers no benefit. November 2014 Subscriber Item.", "weaponMystery201502Text": "Shimmery Winged Staff of Love and Also Truth", @@ -1083,6 +1092,15 @@ "armorSpecialSummer2022HealerText": "Angelfish Tail", "armorSpecialSummer2022HealerNotes": "Use your colorful fins to scoot about the reef and help those in need of rest and healing. Increases Constitution by <%= con %>. Limited Edition 2022 Summer Gear.", + "armorSpecialFall2022RogueText": "Kappa Armor", + "armorSpecialFall2022RogueNotes": "Whether you’re swimming, sneaking, or wrestling, you will be safe in this armor. Increases Perception by <%= per %>. Limited Edition 2022 Fall Gear.", + "armorSpecialFall2022WarriorText": "Orcish Armor", + "armorSpecialFall2022WarriorNotes": "RAWR! BIG SHOULDERS mean you are BIG STRONG! Increases Constitution by <%= con %>. Limited Edition 2022 Fall Gear.", + "armorSpecialFall2022MageText": "Harpy Armor", + "armorSpecialFall2022MageNotes": "Fly as fast as the wind with these wonderful wings and hold what you care most about tight in these terrifying talons. Increases Intelligence by <%= int %>. Limited Edition 2022 Fall Gear.", + "armorSpecialFall2022HealerText": "Profusion of Peeker Pods", + "armorSpecialFall2022HealerNotes": "How many peeps could a Peeker peep, if a Peeker could peep peeps? Increases Constitution by <%= con %>. Limited Edition 2022 Fall Gear.", + "armorMystery201402Text": "Messenger Robes", "armorMystery201402Notes": "Shimmering and strong, these robes have many pockets to carry letters. Confers no benefit. February 2014 Subscriber Item.", "armorMystery201403Text": "Forest Walker Armor", @@ -1793,6 +1811,15 @@ "headSpecialSpring2022HealerText": "Peridot Helmet", "headSpecialSpring2022HealerNotes": "This mysterious helmet preserves your privacy as you tackle your tasks. Increases Intelligence by <%= int %>. Limited Edition 2022 Spring Gear.", + "headSpecialFall2022RogueText": "Kappa Mask", + "headSpecialFall2022RogueNotes": "With this metal cap upon your head, you will have extra protection when you venture onto land. Increases Perception by <%= per %>. Limited Edition 2022 Fall Gear.", + "headSpecialFall2022WarriorText": "Orc Mask", + "headSpecialFall2022WarriorNotes": "Tusks tough and sharp enough to pierce pumpkins! RAWR! Increases Strength by <%= str %>. Limited Edition 2022 Fall Gear.", + "headSpecialFall2022MageText": "Harpy Mask", + "headSpecialFall2022MageNotes": "Entrance and lure others close with this magical maiden mask. Increases Perception by <%= per %>. Limited Edition 2022 Fall Gear.", + "headSpecialFall2022HealerText": "Peeker Mask", + "headSpecialFall2022HealerNotes": "Beauty is in there. Somewhere! Increases Intelligence by <%= int %>. Limited Edition 2022 Fall Gear.", + "headSpecialGaymerxText": "Rainbow Warrior Helm", "headSpecialGaymerxNotes": "In celebration of the GaymerX Conference, this special helmet is decorated with a radiant, colorful rainbow pattern! GaymerX is a game convention celebrating LGTBQ and gaming and is open to everyone.", @@ -2345,6 +2372,11 @@ "shieldSpecialSummer2022HealerText": "Remedial Ripples", "shieldSpecialSummer2022HealerNotes": "Send out restorative magic in gentle ripples through the reef. Increases Constitution by <%= con %>. Limited Edition 2022 Summer Gear.", + "shieldSpecialFall2022WarriorText": "Orc Shield", + "shieldSpecialFall2022WarriorNotes": "RAWR or TREAT! Increases Constitution by <%= con %>. Limited Edition 2022 Fall Gear.", + "shieldSpecialFall2022HealerText": "Left Peeker Eye", + "shieldSpecialFall2022HealerNotes": "Eye Two, look upon this costume and tremble. Increases Constitution by <%= con %>. Limited Edition 2022 Fall Gear.", + "shieldMystery201601Text": "Resolution Slayer", "shieldMystery201601Notes": "This blade can be used to parry away all distractions. Confers no benefit. January 2016 Subscriber Item.", "shieldMystery201701Text": "Time-Freezer Shield", diff --git a/website/common/locales/en/limited.json b/website/common/locales/en/limited.json index 121b414b54..106f1caf69 100644 --- a/website/common/locales/en/limited.json +++ b/website/common/locales/en/limited.json @@ -187,6 +187,10 @@ "summer2022WaterspoutWarriorSet": "Waterspout (Warrior)", "summer2022MantaRayMageSet": "Manta Ray (Mage)", "summer2022AngelfishHealerSet": "Angelfish (Healer)", + "fall2022KappaRogueSet": "Kappa (Rogue)", + "fall2022OrcWarriorSet": "Orc (Warrior)", + "fall2022HarpyMageSet": "Harpy (Mage)", + "fall2022WatcherHealerSet": "Watcher (Healer)", "eventAvailability": "Available for purchase until <%= date(locale) %>.", "eventAvailabilityReturning": "Available for purchase until <%= availableDate(locale) %>. This potion was last available in <%= previousDate(locale) %>.", "dateEndJanuary": "January 31", diff --git a/website/common/script/content/appearance/sets.js b/website/common/script/content/appearance/sets.js index c69ca9d7a2..65152186c0 100644 --- a/website/common/script/content/appearance/sets.js +++ b/website/common/script/content/appearance/sets.js @@ -15,7 +15,7 @@ export default prefill({ setPrice: 5, availableFrom: '2022-04-14T08:00-05:00', availableUntil: '2022-04-30T20:00-05:00', text: t('shimmerColors'), }, hauntedHairColors: { - setPrice: 5, availableFrom: '2021-09-28T08:00-04:00', availableUntil: '2021-10-31T20:00-04:00', text: t('hauntedColors'), + setPrice: 5, availableFrom: '2022-10-04T08:00-04:00', availableUntil: EVENTS.fall2022.end, text: t('hauntedColors'), }, winteryHairColors: { setPrice: 5, availableFrom: '2021-12-23T08:00-05:00', availableUntil: '2022-01-31T20:00-05:00', text: t('winteryColors'), @@ -27,7 +27,7 @@ export default prefill({ }, spookySkins: { setPrice: 5, availableUntil: '2016-01-01', text: t('spookySkins') }, supernaturalSkins: { - setPrice: 5, availableFrom: '2021-09-28T08:00-04:00', availableUntil: '2021-10-31T20:00-04:00', text: t('supernaturalSkins'), + setPrice: 5, availableFrom: '2022-10-04T08:00-04:00', availableUntil: EVENTS.fall2022.end, text: t('supernaturalSkins'), }, splashySkins: { setPrice: 5, availableFrom: '2022-07-05T08:00-05:00', availableUntil: EVENTS.summer2022.end, text: t('splashySkins'), diff --git a/website/common/script/content/constants/events.js b/website/common/script/content/constants/events.js index 49cb72cac6..3073f0991c 100644 --- a/website/common/script/content/constants/events.js +++ b/website/common/script/content/constants/events.js @@ -9,17 +9,28 @@ const gemsPromo = { }; export const EVENTS = { - noCurrentEvent: { - start: '2022-09-30T20:00-04:00', + afterGala: { + start: '2022-10-31T20:00-04:00', end: '2022-12-21T08:00-04:00', season: 'normal', npcImageSuffix: '', }, + fall2022: { + start: '2022-09-20T08:00-04:00', + end: '2022-10-31T20:00-04:00', + npcImageSuffix: '_fall', + season: 'fall', + gear: true, + }, + beforeGala: { + start: '2022-07-31T20:00-04:00', + end: '2022-09-20T08:00-04:00', + season: 'normal', + npcImageSuffix: '', + }, bundle202209: { start: '2022-09-13T08:00-04:00', end: '2022-09-30T20:00-04:00', - season: 'normal', - npcImageSuffix: '', }, potions202208: { start: '2022-08-16T08:00-04:00', diff --git a/website/common/script/content/constants/seasonalSets.js b/website/common/script/content/constants/seasonalSets.js index 95697b3c7f..009ee62321 100644 --- a/website/common/script/content/constants/seasonalSets.js +++ b/website/common/script/content/constants/seasonalSets.js @@ -188,6 +188,11 @@ const SEASONAL_SETS = { 'fall2021HeadlessWarriorSet', 'fall2021BrainEaterMageSet', 'fall2021FlameSummonerHealerSet', + + 'fall2022KappaRogueSet', + 'fall2022OrcWarriorSet', + 'fall2022HarpyMageSet', + 'fall2022WatcherHealerSet', ], }; diff --git a/website/common/script/content/gear/sets/special/index.js b/website/common/script/content/gear/sets/special/index.js index 90d3a7df2b..55f9c2d7a6 100644 --- a/website/common/script/content/gear/sets/special/index.js +++ b/website/common/script/content/gear/sets/special/index.js @@ -702,15 +702,19 @@ const armor = { }, fall2021Rogue: { set: 'fall2021OozeRogueSet', + canBuy: () => CURRENT_EVENT && CURRENT_EVENT.season === 'fall', }, fall2021Warrior: { set: 'fall2021HeadlessWarriorSet', + canBuy: () => CURRENT_EVENT && CURRENT_EVENT.season === 'fall', }, fall2021Mage: { set: 'fall2021BrainEaterMageSet', + canBuy: () => CURRENT_EVENT && CURRENT_EVENT.season === 'fall', }, fall2021Healer: { set: 'fall2021FlameSummonerHealerSet', + canBuy: () => CURRENT_EVENT && CURRENT_EVENT.season === 'fall', }, winter2022Rogue: { set: 'winter2022FireworksRogueSet', @@ -754,6 +758,18 @@ const armor = { summer2022Healer: { set: 'summer2022AngelfishHealerSet', }, + fall2022Rogue: { + set: 'fall2022KappaRogueSet', + }, + fall2022Warrior: { + set: 'fall2022OrcWarriorSet', + }, + fall2022Mage: { + set: 'fall2022HarpyMageSet', + }, + fall2022Healer: { + set: 'fall2022WatcherHealerSet', + }, }; const armorStats = { @@ -1792,15 +1808,19 @@ const head = { }, fall2021Rogue: { set: 'fall2021OozeRogueSet', + canBuy: () => CURRENT_EVENT && CURRENT_EVENT.season === 'fall', }, fall2021Warrior: { set: 'fall2021HeadlessWarriorSet', + canBuy: () => CURRENT_EVENT && CURRENT_EVENT.season === 'fall', }, fall2021Mage: { set: 'fall2021BrainEaterMageSet', + canBuy: () => CURRENT_EVENT && CURRENT_EVENT.season === 'fall', }, fall2021Healer: { set: 'fall2021FlameSummonerHealerSet', + canBuy: () => CURRENT_EVENT && CURRENT_EVENT.season === 'fall', }, winter2022Rogue: { set: 'winter2022FireworksRogueSet', @@ -1844,6 +1864,18 @@ const head = { summer2022Healer: { set: 'summer2022AngelfishHealerSet', }, + fall2022Rogue: { + set: 'fall2022KappaRogueSet', + }, + fall2022Warrior: { + set: 'fall2022OrcWarriorSet', + }, + fall2022Mage: { + set: 'fall2022HarpyMageSet', + }, + fall2022Healer: { + set: 'fall2022WatcherHealerSet', + }, }; const headStats = { @@ -2592,12 +2624,15 @@ const shield = { }, fall2021Rogue: { set: 'fall2021OozeRogueSet', + canBuy: () => CURRENT_EVENT && CURRENT_EVENT.season === 'fall', }, fall2021Warrior: { set: 'fall2021HeadlessWarriorSet', + canBuy: () => CURRENT_EVENT && CURRENT_EVENT.season === 'fall', }, fall2021Healer: { set: 'fall2021FlameSummonerHealerSet', + canBuy: () => CURRENT_EVENT && CURRENT_EVENT.season === 'fall', }, winter2022Rogue: { set: 'winter2022FireworksRogueSet', @@ -2626,6 +2661,15 @@ const shield = { summer2022Healer: { set: 'summer2022AngelfishHealerSet', }, + fall2022Rogue: { + set: 'fall2022KappaRogueSet', + }, + fall2022Warrior: { + set: 'fall2022OrcWarriorSet', + }, + fall2022Healer: { + set: 'fall2022WatcherHealerSet', + }, }; const shieldStats = { @@ -3288,15 +3332,19 @@ const weapon = { }, fall2021Rogue: { set: 'fall2021OozeRogueSet', + canBuy: () => CURRENT_EVENT && CURRENT_EVENT.season === 'fall', }, fall2021Warrior: { set: 'fall2021HeadlessWarriorSet', + canBuy: () => CURRENT_EVENT && CURRENT_EVENT.season === 'fall', }, fall2021Mage: { set: 'fall2021BrainEaterMageSet', + canBuy: () => CURRENT_EVENT && CURRENT_EVENT.season === 'fall', }, fall2021Healer: { set: 'fall2021FlameSummonerHealerSet', + canBuy: () => CURRENT_EVENT && CURRENT_EVENT.season === 'fall', }, winter2022Rogue: { set: 'winter2022FireworksRogueSet', @@ -3334,6 +3382,18 @@ const weapon = { summer2022Healer: { set: 'summer2022AngelfishHealerSet', }, + fall2022Rogue: { + set: 'fall2022KappaRogueSet', + }, + fall2022Warrior: { + set: 'fall2022OrcWarriorSet', + }, + fall2022Mage: { + set: 'fall2022HarpyMageSet', + }, + fall2022Healer: { + set: 'fall2022WatcherHealerSet', + }, }; const weaponStats = { diff --git a/website/common/script/content/hatching-potions.js b/website/common/script/content/hatching-potions.js index e4d75817ef..23f26f370d 100644 --- a/website/common/script/content/hatching-potions.js +++ b/website/common/script/content/hatching-potions.js @@ -161,13 +161,13 @@ const premium = { value: 2, text: t('hatchingPotionGhost'), limited: true, - event: EVENTS.fall2020, + event: EVENTS.fall2022, canBuy () { - return moment().isBefore('2020-11-02'); + return moment().isBetween(EVENTS.fall2022.start, EVENTS.fall2022.end); }, _addlNotes: t('eventAvailabilityReturning', { availableDate: t('dateEndOctober'), - previousDate: t('septemberYYYY', { year: 2018 }), + previousDate: t('novemberYYYY', { year: 2020 }), }), }, Holly: { @@ -337,13 +337,13 @@ const premium = { value: 2, text: t('hatchingPotionShadow'), limited: true, - event: EVENTS.fall2020, + event: EVENTS.fall2022, canBuy () { - return moment().isBefore('2020-11-02'); + return moment().isBetween(EVENTS.fall2022.start, EVENTS.fall2022.end); }, _addlNotes: t('eventAvailabilityReturning', { availableDate: t('dateEndOctober'), - previousDate: t('septemberYYYY', { year: 2019 }), + previousDate: t('novemberYYYY', { year: 2020 }), }), }, Amber: { @@ -424,13 +424,13 @@ const premium = { value: 2, text: t('hatchingPotionVampire'), limited: true, - event: EVENTS.fall2021, + event: EVENTS.fall2022, _addlNotes: t('eventAvailabilityReturning', { availableDate: t('dateEndOctober'), - previousDate: t('septemberYYYY', { year: 2020 }), + previousDate: t('octoberYYYY', { year: 2021 }), }), canBuy () { - return moment().isBefore(EVENTS.fall2021.end); + return moment().isBetween(EVENTS.fall2022.start, EVENTS.fall2022.end); }, }, AutumnLeaf: { diff --git a/website/common/script/content/shop-featuredItems.js b/website/common/script/content/shop-featuredItems.js index f79f352b6e..3fe7c933a8 100644 --- a/website/common/script/content/shop-featuredItems.js +++ b/website/common/script/content/shop-featuredItems.js @@ -5,7 +5,7 @@ import { EVENTS } from './constants'; // path: 'premiumHatchingPotions.Rainbow', const featuredItems = { market () { - if (moment().isBetween(EVENTS.potions202208.start, EVENTS.potions202208.end)) { + if (moment().isBetween(EVENTS.fall2022.start, EVENTS.fall2022.end)) { return [ { type: 'armoire', @@ -13,15 +13,15 @@ const featuredItems = { }, { type: 'premiumHatchingPotion', - path: 'premiumHatchingPotions.Moonglow', + path: 'premiumHatchingPotions.Vampire', }, { type: 'premiumHatchingPotion', - path: 'premiumHatchingPotions.Porcelain', + path: 'premiumHatchingPotions.Ghost', }, { - type: 'food', - path: 'food.Milk', + type: 'premiumHatchingPotion', + path: 'premiumHatchingPotions.Shadow', }, ]; } diff --git a/website/common/script/content/spells.js b/website/common/script/content/spells.js index d6d330e651..9d9748e08d 100644 --- a/website/common/script/content/spells.js +++ b/website/common/script/content/spells.js @@ -325,7 +325,7 @@ spells.special = { target: 'user', notes: t('spellSpecialSpookySparklesNotes'), canOwn () { - return moment().isBetween('2021-10-12T08:00-04:00', EVENTS.fall2021.end); + return moment().isBetween('2021-10-11T08:00-04:00', EVENTS.fall2022.end); }, cast (user, target, req) { if (!user.items.special.spookySparkles) throw new NotAuthorized(t('spellNotOwned')(req.language)); diff --git a/website/common/script/libs/shops-seasonal.config.js b/website/common/script/libs/shops-seasonal.config.js index 634c20525b..077a011288 100644 --- a/website/common/script/libs/shops-seasonal.config.js +++ b/website/common/script/libs/shops-seasonal.config.js @@ -30,16 +30,15 @@ export default { pinnedSets: SHOP_OPEN ? { - healer: 'summer2022AngelfishHealerSet', - rogue: 'summer2022CrabRogueSet', - warrior: 'summer2022WaterspoutWarriorSet', - wizard: 'summer2022MantaRayMageSet', + healer: 'fall2022WatcherHealerSet', + rogue: 'fall2022KappaRogueSet', + warrior: 'fall2022OrcWarriorSet', + wizard: 'fall2022HarpyMageSet', } : {}, - - availableSpells: SHOP_OPEN && moment().isBetween('2022-07-12T08:00-05:00', CURRENT_EVENT.end) + availableSpells: SHOP_OPEN && moment().isBetween('2022-10-04T08:00-05:00', CURRENT_EVENT.end) ? [ - 'seafoam', + 'spookySparkles', ] : [], @@ -49,5 +48,5 @@ export default { ] : [], - featuredSet: 'summer2021NautilusMageSet', + featuredSet: 'fall2021BrainEaterMageSet', };