返回提交历史
Modified
src/controllers/api/artifactTransmutationController.ts
+9
-1
XFEstudio/XFESpaceNinjaServer
fix: restrict transmutation polarity when a transmute core is being used (#1336)
Reviewed-on: https://onlyg.it/OpenWF/SpaceNinjaServer/pulls/1336
83b267bc
代码差异
1 个文件
+9
-1
@@ -53,6 +53,7 @@ export const artifactTransmutationController: RequestHandler = async (req, res)
53
53
RARE: 0,
54
54
LEGENDARY: 0
55
55
};
56
let forcedPolarity: string | undefined;
56
57
payload.Consumed.forEach(upgrade => {
57
58
const meta = ExportUpgrades[upgrade.ItemType];
58
59
counts[meta.rarity] += upgrade.ItemCount;
@@ -62,6 +63,13 @@ export const artifactTransmutationController: RequestHandler = async (req, res)
62
63
ItemCount: upgrade.ItemCount * -1
63
64
}
64
65
]);
66
if (upgrade.ItemType == "/Lotus/Upgrades/Mods/TransmuteCores/AttackTransmuteCore") {
67
forcedPolarity = "AP_ATTACK";
68
} else if (upgrade.ItemType == "/Lotus/Upgrades/Mods/TransmuteCores/DefenseTransmuteCore") {
69
forcedPolarity = "AP_DEFENSE";
70
} else if (upgrade.ItemType == "/Lotus/Upgrades/Mods/TransmuteCores/TacticTransmuteCore") {
71
forcedPolarity = "AP_TACTIC";
72
}
65
73
});
66
74
67
75
// Based on the table on https://wiki.warframe.com/w/Transmutation
@@ -74,7 +82,7 @@ export const artifactTransmutationController: RequestHandler = async (req, res)
74
82
75
83
const options: { uniqueName: string; rarity: TRarity }[] = [];
76
84
Object.entries(ExportUpgrades).forEach(([uniqueName, upgrade]) => {
77
if (upgrade.canBeTransmutation) {
85
if (upgrade.canBeTransmutation && (!forcedPolarity || upgrade.polarity == forcedPolarity)) {
78
86
options.push({ uniqueName, rarity: upgrade.rarity });
79
87
}
80
88
});