avoid over-contributing to research

This commit is contained in:
Sainan 2025-01-03 02:43:24 +01:00
parent f37e6dc668
commit 3a84781945

View File

@ -34,11 +34,17 @@ export const guildTechController: RequestHandler = async (req, res) => {
} else if (data.Action == "Contribute") { } else if (data.Action == "Contribute") {
const contributions = data as IGuildTechContributeFields; const contributions = data as IGuildTechContributeFields;
const techProject = guild.TechProjects!.find(x => x.ItemType == contributions.RecipeType)!; const techProject = guild.TechProjects!.find(x => x.ItemType == contributions.RecipeType)!;
if (contributions.RegularCredits > techProject.ReqCredits) {
contributions.RegularCredits = techProject.ReqCredits;
}
techProject.ReqCredits -= contributions.RegularCredits; techProject.ReqCredits -= contributions.RegularCredits;
const miscItemChanges = []; const miscItemChanges = [];
for (const miscItem of contributions.MiscItems) { for (const miscItem of contributions.MiscItems) {
const reqItem = techProject.ReqItems.find(x => x.ItemType == miscItem.ItemType); const reqItem = techProject.ReqItems.find(x => x.ItemType == miscItem.ItemType);
if (reqItem) { if (reqItem) {
if (miscItem.ItemCount > reqItem.ItemCount) {
miscItem.ItemCount = reqItem.ItemCount;
}
reqItem.ItemCount -= miscItem.ItemCount; reqItem.ItemCount -= miscItem.ItemCount;
miscItemChanges.push({ miscItemChanges.push({
ItemType: miscItem.ItemType, ItemType: miscItem.ItemType,