返回提交历史
Modified
src/services/worldStateService.ts
+3
-60
Added
static/fixed_responses/worldState/tennobaumFlashSales.json
+506
-0
XFEstudio/SpaceNinjaServer
fix: add non-platinum tennobaum items (#3974)
Reviewed-on: https://onlyg.it/OpenWF/SpaceNinjaServer/pulls/3974 Co-authored-by: Sainan <63328889+Sainan@users.noreply.github.com> Co-committed-by: Sainan <63328889+Sainan@users.noreply.github.com>
020c3af2
代码差异
2 个文件
+509
-60
@@ -9,6 +9,7 @@ import darvoDeals from "../constants/darvoDeals.ts";
9
9
import invasionNodes from "../../static/fixed_responses/worldState/invasionNodes.json" with { type: "json" };
10
10
import invasionRewards from "../../static/fixed_responses/worldState/invasionRewards.json" with { type: "json" };
11
11
import pvpChallenges from "../../static/fixed_responses/worldState/pvpChallenges.json" with { type: "json" };
12
import tennobaumFlashSales from "../../static/fixed_responses/worldState/tennobaumFlashSales.json" with { type: "json" };
12
13
import { EPOCH, unixTimesInMs } from "../constants/timeConstants.ts";
13
14
import { config } from "./configService.ts";
14
15
import { getRandomElement, getRandomInt, sequentiallyUniqueRandomElement, SRng } from "./rngService.ts";
@@ -2515,65 +2516,7 @@ export const getWorldState = (buildLabel?: string): IWorldState => {
2515
2516
) {
2516
2517
const activation = config.worldState?.xmasOverride ? 1772467200000 : xmasStart;
2517
2518
const expiry = config.worldState?.xmasOverride ? 2000000000000 : xmasEnd;
2518
2519
// On live, these FlashSales only have TypeName, PremiumOverride, StartDate, EndDate, & ProductExpiryOverride.
2520
const storeItems: (Partial<IFlashSale> & { TypeName: string })[] = [
2521
{ TypeName: "/Lotus/Types/StoreItems/Packages/Winter2017GlyphBundle", PremiumOverride: 100 },
2522
{ TypeName: "/Lotus/Types/StoreItems/Packages/Winter2018GlyphBundle", PremiumOverride: 80 },
2523
{ TypeName: "/Lotus/Types/StoreItems/Packages/Winter2016Bundle", PremiumOverride: 350 },
2524
{ TypeName: "/Lotus/Types/StoreItems/Packages/Winter2019GlyphBundle", PremiumOverride: 90 },
2525
{ TypeName: "/Lotus/Types/StoreItems/Packages/WinterBundle", PremiumOverride: 600 },
2526
{ TypeName: "/Lotus/Types/StoreItems/Packages/WinterGlyphBundle", PremiumOverride: 65 },
2527
{ TypeName: "/Lotus/Types/StoreItems/Packages/KavatColorPackXmas", PremiumOverride: 40 },
2528
{ TypeName: "/Lotus/Upgrades/Skins/Festivities/XmasSonicor", PremiumOverride: 20 },
2529
{ TypeName: "/Lotus/Types/StoreItems/Packages/WinterAccessoriesBundle", PremiumOverride: 280 },
2530
{ TypeName: "/Lotus/Upgrades/Skins/Harlequin/MirageXmasSkin", PremiumOverride: 40 },
2531
{ TypeName: "/Lotus/Upgrades/Skins/Armor/SetThreeWinged/SolsticeSetThreeArmArmor", PremiumOverride: 50 },
2532
{ TypeName: "/Lotus/Upgrades/Skins/Archer/WinterSolsticeSalix", PremiumOverride: 95 },
2533
{ TypeName: "/Lotus/Upgrades/Skins/Armor/SetThreeWinged/SolsticeSetThreeChestArmor", PremiumOverride: 45 },
2534
{ TypeName: "/Lotus/Upgrades/Skins/Frost/FrostXmasSkin", PremiumOverride: 40 },
2535
{ TypeName: "/Lotus/Types/StoreItems/Packages/KubrowColorPackCandyCane", PremiumOverride: 50 },
2536
{ TypeName: "/Lotus/Types/StoreItems/Packages/WinterGlyphBundleB", PremiumOverride: 110 },
2537
{ TypeName: "/Lotus/Upgrades/Skins/Scarves/HolidayTurtleNeckScarf", PremiumOverride: 50 },
2538
{ TypeName: "/Lotus/Upgrades/Skins/Hammer/SolsticeHeliocor", PremiumOverride: 30 },
2539
{ TypeName: "/Lotus/Types/StoreItems/Packages/KubrowColorPackReindeer", PremiumOverride: 50 },
2540
{ TypeName: "/Lotus/Upgrades/Skins/Fairy/SolsticeFairySkin", PremiumOverride: 40 },
2541
{ TypeName: "/Lotus/Types/StoreItems/Packages/SolsticeSetThreeArmorPack", PremiumOverride: 100 },
2542
{ TypeName: "/Lotus/Types/StoreItems/AvatarImages/AvatarImageWinter2017D", PremiumOverride: 20 },
2543
{ TypeName: "/Lotus/Types/StoreItems/AvatarImages/AvatarImageWinter2016B", PremiumOverride: 20 },
2544
{ TypeName: "/Lotus/Upgrades/Skins/Catbrows/SolsticeCatbrowFur", PremiumOverride: 40 },
2545
{ TypeName: "/Lotus/Types/StoreItems/AvatarImages/AvatarImageWinter2016C", PremiumOverride: 20 },
2546
{ TypeName: "/Lotus/Upgrades/Skins/Kubrows/Fur/SolsticeKubrowFur", PremiumOverride: 40 },
2547
{ TypeName: "/Lotus/Upgrades/Skins/Armor/SetThreeWinged/SolsticeSetThreeLegArmor", PremiumOverride: 35 },
2548
{ TypeName: "/Lotus/Types/StoreItems/AvatarImages/AvatarImageWinterB2016D", PremiumOverride: 20 },
2549
{ TypeName: "/Lotus/Types/StoreItems/AvatarImages/AvatarImageWinter2016D", PremiumOverride: 20 },
2550
{ TypeName: "/Lotus/Types/StoreItems/AvatarImages/AvatarImageWinterB2016E", PremiumOverride: 20 },
2551
{ TypeName: "/Lotus/Types/StoreItems/AvatarImages/AvatarImageWinterB2016A", PremiumOverride: 20 },
2552
{ TypeName: "/Lotus/Types/StoreItems/AvatarImages/AvatarImageWinterB2016B", PremiumOverride: 20 },
2553
{ TypeName: "/Lotus/Types/StoreItems/AvatarImages/AvatarImageWinterB2016C", PremiumOverride: 20 },
2554
{ TypeName: "/Lotus/Types/StoreItems/AvatarImages/AvatarImageWinterB2016G", PremiumOverride: 20 },
2555
{ TypeName: "/Lotus/Types/StoreItems/AvatarImages/AvatarImageWinterB2016F", PremiumOverride: 20 },
2556
{ TypeName: "/Lotus/Types/StoreItems/AvatarImages/AvatarImageWinter2017B", PremiumOverride: 20 },
2557
{ TypeName: "/Lotus/Types/StoreItems/AvatarImages/AvatarImageWinter2017A", PremiumOverride: 20 },
2558
{ TypeName: "/Lotus/Types/StoreItems/AvatarImages/AvatarImageWinter2017E", PremiumOverride: 20 },
2559
{ TypeName: "/Lotus/Types/StoreItems/AvatarImages/AvatarImageWinter2016A", PremiumOverride: 20 },
2560
{ TypeName: "/Lotus/Types/StoreItems/AvatarImages/AvatarImageWinter2017C", PremiumOverride: 20 },
2561
{ TypeName: "/Lotus/Types/StoreItems/AvatarImages/AvatarImageWinter2018E", PremiumOverride: 20 },
2562
{ TypeName: "/Lotus/Types/StoreItems/AvatarImages/AvatarImageWinter2018B", PremiumOverride: 20 },
2563
{ TypeName: "/Lotus/Types/StoreItems/AvatarImages/AvatarImageWinter2018A", PremiumOverride: 20 },
2564
{ TypeName: "/Lotus/Types/StoreItems/AvatarImages/AvatarImageWinter2018C", PremiumOverride: 20 },
2565
{ TypeName: "/Lotus/Types/StoreItems/AvatarImages/AvatarImageWinter2017F", PremiumOverride: 20 },
2566
{ TypeName: "/Lotus/Types/StoreItems/AvatarImages/AvatarImageWinter2018D", PremiumOverride: 20 },
2567
{ TypeName: "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphJingleKavat", PremiumOverride: 20 },
2568
{ TypeName: "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphCarolingOctavia", PremiumOverride: 20 },
2569
{ TypeName: "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphSurpriseIvara", PremiumOverride: 20 },
2570
{ TypeName: "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphJollyGrendel", PremiumOverride: 20 },
2571
{ TypeName: "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphFestiveFloof", PremiumOverride: 20 },
2572
{ TypeName: "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphSkiGauss", PremiumOverride: 20 },
2573
{ TypeName: "/Lotus/Upgrades/Skins/Festivities/XmasGlaxion", PremiumOverride: 20 }
2574
];
2575
2576
pushFlashSales(worldState, storeItems, activation, expiry, "SEASONAL", buildLabel);
2519
pushFlashSales(worldState, tennobaumFlashSales, activation, expiry, "SEASONAL", buildLabel);
2577
2520
}
2578
2521
2579
2522
if (config.worldState?.anniversary != undefined) {
@@ -5092,7 +5035,7 @@ const pushFlashSales = (
5092
5035
StartDate: toMongoDate2(startDate, buildLabel),
5093
5036
EndDate: toMongoDate2(endDate, buildLabel),
5094
5037
ProductExpiryOverride: toMongoDate2(endDate, buildLabel),
5095
// The following fields are not needed nowadays, but might be needed for Market 2.0 (pre-U25):
5038
// Defaulting all of this is probably not needed, but might be needed for Market 2.0 (pre-U25):
5096
5039
ShowInMarket: item.ShowInMarket ?? true,
5097
5040
HideFromMarket: item.HideFromMarket ?? false,
5098
5041
SupporterPack: item.SupporterPack ?? false,