simplify worldState logic
This commit is contained in:
parent
e9e8eea801
commit
8d4abe863c
@ -113,8 +113,8 @@ const sortieBossNode: Record<Exclude<TSortieBoss, "SORTIE_BOSS_CORRUPTED_VOR">,
|
|||||||
SORTIE_BOSS_VOR: "SolNode108"
|
SORTIE_BOSS_VOR: "SolNode108"
|
||||||
};
|
};
|
||||||
|
|
||||||
const voidCorruptionAlerts = [
|
const configAlerts: Record<string, IAlert> = {
|
||||||
{
|
voidCorruptionWeek1: {
|
||||||
_id: { $oid: "677d452e2f324ee7b90f8ccf" },
|
_id: { $oid: "677d452e2f324ee7b90f8ccf" },
|
||||||
Activation: { $date: { $numberLong: "1736524800000" } },
|
Activation: { $date: { $numberLong: "1736524800000" } },
|
||||||
Expiry: { $date: { $numberLong: "2000000000000" } },
|
Expiry: { $date: { $numberLong: "2000000000000" } },
|
||||||
@ -134,7 +134,7 @@ const voidCorruptionAlerts = [
|
|||||||
maxEnemyLevel: 15
|
maxEnemyLevel: 15
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
voidCorruptionWeek2: {
|
||||||
_id: { $oid: "677d45811daeae9de40e8c0f" },
|
_id: { $oid: "677d45811daeae9de40e8c0f" },
|
||||||
Activation: { $date: { $numberLong: "1737129600000" } },
|
Activation: { $date: { $numberLong: "1737129600000" } },
|
||||||
Expiry: { $date: { $numberLong: "2000000000000" } },
|
Expiry: { $date: { $numberLong: "2000000000000" } },
|
||||||
@ -154,7 +154,7 @@ const voidCorruptionAlerts = [
|
|||||||
maxWaveNum: 6
|
maxWaveNum: 6
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
voidCorruptionWeek3: {
|
||||||
_id: { $oid: "677d45a494ad716c90006b9a" },
|
_id: { $oid: "677d45a494ad716c90006b9a" },
|
||||||
Activation: { $date: { $numberLong: "1737734400000" } },
|
Activation: { $date: { $numberLong: "1737734400000" } },
|
||||||
Expiry: { $date: { $numberLong: "2000000000000" } },
|
Expiry: { $date: { $numberLong: "2000000000000" } },
|
||||||
@ -175,7 +175,7 @@ const voidCorruptionAlerts = [
|
|||||||
maxEnemyLevel: 35
|
maxEnemyLevel: 35
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
voidCorruptionWeek4: {
|
||||||
_id: { $oid: "677d4700682d173abb0e19fe" },
|
_id: { $oid: "677d4700682d173abb0e19fe" },
|
||||||
Activation: { $date: { $numberLong: "1738339200000" } },
|
Activation: { $date: { $numberLong: "1738339200000" } },
|
||||||
Expiry: { $date: { $numberLong: "2000000000000" } },
|
Expiry: { $date: { $numberLong: "2000000000000" } },
|
||||||
@ -194,7 +194,7 @@ const voidCorruptionAlerts = [
|
|||||||
maxEnemyLevel: 45
|
maxEnemyLevel: 45
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
] satisfies readonly IAlert[];
|
};
|
||||||
|
|
||||||
const eidolonJobs: readonly string[] = [
|
const eidolonJobs: readonly string[] = [
|
||||||
"/Lotus/Types/Gameplay/Eidolon/Jobs/AssassinateBountyAss",
|
"/Lotus/Types/Gameplay/Eidolon/Jobs/AssassinateBountyAss",
|
||||||
@ -1566,17 +1566,12 @@ export const getWorldState = (buildLabel?: string): IWorldState => {
|
|||||||
fullyStockBaro(vt);
|
fullyStockBaro(vt);
|
||||||
}
|
}
|
||||||
|
|
||||||
const vcWeeks = [
|
if (config.worldState) {
|
||||||
["voidCorruptionWeek1", 0],
|
for (const [key, alert] of Object.entries(configAlerts)) {
|
||||||
["voidCorruptionWeek2", 1],
|
if (config.worldState[key as keyof typeof config.worldState]) {
|
||||||
["voidCorruptionWeek3", 2],
|
worldState.Alerts.push(alert);
|
||||||
["voidCorruptionWeek4", 3]
|
}
|
||||||
] as const;
|
}
|
||||||
|
|
||||||
const selected = vcWeeks.filter(([flag]) => config.worldState?.[flag]).map(([, idx]) => voidCorruptionAlerts[idx]);
|
|
||||||
|
|
||||||
if (selected.length) {
|
|
||||||
worldState.Alerts = [...worldState.Alerts, ...selected];
|
|
||||||
}
|
}
|
||||||
|
|
||||||
const isFebruary = date.getUTCMonth() == 1;
|
const isFebruary = date.getUTCMonth() == 1;
|
||||||
|
|||||||
@ -7,7 +7,7 @@ export interface IWorldState {
|
|||||||
Time: number;
|
Time: number;
|
||||||
InGameMarket: IInGameMarket;
|
InGameMarket: IInGameMarket;
|
||||||
Goals: IGoal[];
|
Goals: IGoal[];
|
||||||
Alerts: readonly IAlert[];
|
Alerts: IAlert[];
|
||||||
Sorties: ISortie[];
|
Sorties: ISortie[];
|
||||||
LiteSorties: ILiteSortie[];
|
LiteSorties: ILiteSortie[];
|
||||||
SyndicateMissions: ISyndicateMissionInfo[];
|
SyndicateMissions: ISyndicateMissionInfo[];
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user