返回提交历史
Modified
src/services/missionInventoryUpdateService.ts
+26
-28
XFEstudio/SpaceNinjaServer
fix: 1999 bounty chemistry (#2164)
Closes #2162 Reviewed-on: https://onlyg.it/OpenWF/SpaceNinjaServer/pulls/2164 Co-authored-by: Sainan <63328889+Sainan@users.noreply.github.com> Co-committed-by: Sainan <63328889+Sainan@users.noreply.github.com>
f448d038
代码差异
1 个文件
+26
-28
@@ -66,15 +66,7 @@ import {
66
66
} from "@/src/helpers/nemesisHelpers";
67
67
import { Loadout } from "../models/inventoryModels/loadoutModel";
68
68
import { ILoadoutConfigDatabase } from "../types/saveLoadoutTypes";
69
import {
70
getLiteSortie,
71
getSortie,
72
getWorldState,
73
idToBountyCycle,
74
idToDay,
75
idToWeek,
76
pushClassicBounties
77
} from "./worldStateService";
69
import { getLiteSortie, getSortie, idToBountyCycle, idToDay, idToWeek, pushClassicBounties } from "./worldStateService";
78
70
import { config } from "./configService";
79
71
import libraryDailyTasks from "@/static/fixed_responses/libraryDailyTasks.json";
80
72
import { ISyndicateMissionInfo } from "../types/worldStateTypes";
@@ -1266,9 +1258,9 @@ export const addMissionRewards = async (
1266
1258
}
1267
1259
1268
1260
if (rewardInfo.challengeMissionId) {
1269
const [syndicateTag, tierStr, chemistryStr] = rewardInfo.challengeMissionId.split("_");
1261
const [syndicateTag, tierStr, chemistryBuddyStr] = rewardInfo.challengeMissionId.split("_");
1270
1262
const tier = Number(tierStr);
1271
const chemistry = Number(chemistryStr);
1263
const chemistryBuddy = Number(chemistryBuddyStr);
1272
1264
const isSteelPath = missions?.Tier;
1273
1265
if (syndicateTag === "ZarimanSyndicate") {
1274
1266
let medallionAmount = tier + 1;
@@ -1285,22 +1277,19 @@ export const addMissionRewards = async (
1285
1277
if (isSteelPath) standingAmount *= 1.5;
1286
1278
addStanding(inventory, syndicateTag, standingAmount, AffiliationMods);
1287
1279
}
1288
if (syndicateTag == "HexSyndicate" && chemistry && tier < 6) {
1289
const seed = getWorldState().SyndicateMissions.find(x => x.Tag == "HexSyndicate")!.Seed;
1290
const { nodes, buddies } = getHexBounties(seed);
1291
const buddy = buddies[tier];
1292
logger.debug(`Hex seed is ${seed}, giving chemistry for ${buddy}`);
1293
if (missions?.Tag != nodes[tier]) {
1294
logger.warn(
1295
`Uh-oh, tier ${tier} bounty should've been on ${nodes[tier]} but you were just on ${missions?.Tag}`
1296
);
1297
}
1298
const tomorrowAt0Utc = config.noKimCooldowns
1299
? Date.now()
1300
: (Math.trunc(Date.now() / 86400_000) + 1) * 86400_000;
1280
if (syndicateTag == "HexSyndicate" && tier < 6) {
1281
const buddy = chemistryBuddies[chemistryBuddy];
1301
1282
const dialogue = getDialogue(inventory, buddy);
1302
dialogue.Chemistry += chemistry;
1303
dialogue.BountyChemExpiry = new Date(tomorrowAt0Utc);
1283
if (Date.now() >= dialogue.BountyChemExpiry.getTime()) {
1284
logger.debug(`Giving 20 chemistry for ${buddy}`);
1285
const tomorrowAt0Utc = config.noKimCooldowns
1286
? Date.now()
1287
: (Math.trunc(Date.now() / 86400_000) + 1) * 86400_000;
1288
dialogue.Chemistry += 20;
1289
dialogue.BountyChemExpiry = new Date(tomorrowAt0Utc);
1290
} else {
1291
logger.debug(`Already got today's chemistry for ${buddy}`);
1292
}
1304
1293
}
1305
1294
if (isSteelPath) {
1306
1295
await addItem(inventory, "/Lotus/Types/Items/MiscItems/SteelEssence", 1);
@@ -1864,7 +1853,16 @@ const libraryPersonalTargetToAvatar: Record<string, string> = {
1864
1853
"/Lotus/Types/Enemies/Corpus/Spaceman/AIWeek/NullifySpacemanAvatar"
1865
1854
};
1866
1855
1867
const node_excluded_buddies: Record<string, string> = {
1856
const chemistryBuddies: readonly string[] = [
1857
"/Lotus/Types/Gameplay/1999Wf/Dialogue/JabirDialogue_rom.dialogue",
1858
"/Lotus/Types/Gameplay/1999Wf/Dialogue/AoiDialogue_rom.dialogue",
1859
"/Lotus/Types/Gameplay/1999Wf/Dialogue/ArthurDialogue_rom.dialogue",
1860
"/Lotus/Types/Gameplay/1999Wf/Dialogue/EleanorDialogue_rom.dialogue",
1861
"/Lotus/Types/Gameplay/1999Wf/Dialogue/LettieDialogue_rom.dialogue",
1862
"/Lotus/Types/Gameplay/1999Wf/Dialogue/QuincyDialogue_rom.dialogue"
1863
];
1864
1865
/*const node_excluded_buddies: Record<string, string> = {
1868
1866
SolNode856: "/Lotus/Types/Gameplay/1999Wf/Dialogue/ArthurDialogue_rom.dialogue",
1869
1867
SolNode852: "/Lotus/Types/Gameplay/1999Wf/Dialogue/LettieDialogue_rom.dialogue",
1870
1868
SolNode851: "/Lotus/Types/Gameplay/1999Wf/Dialogue/JabirDialogue_rom.dialogue",
@@ -1914,4 +1912,4 @@ const getHexBounties = (seed: number): { nodes: string[]; buddies: string[] } =>
1914
1912
}
1915
1913
}
1916
1914
return { nodes, buddies };
1917
};
1915
};*/