From 6fd7967b4fe2cf47eecdd0d99a7dcc137750c78e Mon Sep 17 00:00:00 2001 From: AMelonInsideLemon <166175391+AMelonInsideLemon@users.noreply.github.com> Date: Fri, 24 Oct 2025 14:57:24 +0200 Subject: [PATCH] check if previous vision is completed --- src/controllers/api/feedPrinceController.ts | 34 +++++++++++++++------ 1 file changed, 25 insertions(+), 9 deletions(-) diff --git a/src/controllers/api/feedPrinceController.ts b/src/controllers/api/feedPrinceController.ts index 89c6fce6..67fd07db 100644 --- a/src/controllers/api/feedPrinceController.ts +++ b/src/controllers/api/feedPrinceController.ts @@ -6,24 +6,40 @@ import { logger } from "../../utils/logger.ts"; export const feedPrinceController: RequestHandler = async (req, res) => { const accountId = await getAccountIdForRequest(req); - const inventory = await getInventory(accountId, "MiscItems NokkoColony"); + const inventory = await getInventory(accountId, "MiscItems NokkoColony NodeIntrosCompleted"); const payload = getJSONfromString(String(req.body)); switch (payload.Mode) { case "r": { - const InventoryChanges = {}; - addMiscItem(inventory, "/Lotus/Types/Items/MiscItems/MushroomFood", payload.Amount * -1, InventoryChanges); inventory.NokkoColony ??= { FeedLevel: 0, JournalEntries: [] }; + const InventoryChanges = {}; inventory.NokkoColony.FeedLevel += payload.Amount; - await inventory.save(); - res.json({ - FeedSucceeded: true, - FeedLevel: inventory.NokkoColony.FeedLevel, - InventoryChanges - }); + if ( + (!inventory.NodeIntrosCompleted.includes("CompletedVision1") && inventory.NokkoColony.FeedLevel > 20) || + (!inventory.NodeIntrosCompleted.includes("CompletedVision2") && inventory.NokkoColony.FeedLevel > 60) + ) { + res.json({ + FeedSucceeded: false, + FeedLevel: inventory.NokkoColony.FeedLevel - payload.Amount, + InventoryChanges + }); + } else { + addMiscItem( + inventory, + "/Lotus/Types/Items/MiscItems/MushroomFood", + payload.Amount * -1, + InventoryChanges + ); + await inventory.save(); + res.json({ + FeedSucceeded: true, + FeedLevel: inventory.NokkoColony.FeedLevel, + InventoryChanges + }); + } break; }