From 63752eb52c68d754f8e279928f1d989ab2f7d591 Mon Sep 17 00:00:00 2001 From: AMelonInsideLemon <166175391+AMelonInsideLemon@users.noreply.github.com> Date: Wed, 23 Apr 2025 21:29:35 +0200 Subject: [PATCH 1/2] fix: give corresponding weapon when crafting Hound --- .../api/modularWeaponCraftingController.ts | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/src/controllers/api/modularWeaponCraftingController.ts b/src/controllers/api/modularWeaponCraftingController.ts index 0d083371..32d79057 100644 --- a/src/controllers/api/modularWeaponCraftingController.ts +++ b/src/controllers/api/modularWeaponCraftingController.ts @@ -17,7 +17,7 @@ import { getDefaultUpgrades } from "@/src/services/itemDataService"; import { modularWeaponTypes } from "@/src/helpers/modularWeaponHelper"; import { IEquipmentDatabase } from "@/src/types/inventoryTypes/commonInventoryTypes"; import { getRandomInt } from "@/src/services/rngService"; -import { ExportSentinels, IDefaultUpgrade } from "warframe-public-export-plus"; +import { ExportSentinels, ExportWeapons, IDefaultUpgrade } from "warframe-public-export-plus"; import { Status } from "@/src/types/inventoryTypes/inventoryTypes"; interface IModularCraftRequest { @@ -138,6 +138,23 @@ export const modularWeaponCraftingController: RequestHandler = async (req, res) } else { defaultUpgrades = getDefaultUpgrades(data.Parts); } + + if (category == "MoaPets" && data.WeaponType.startsWith("/Lotus/Types/Friendly/Pets/ZanukaPets/ZanukaPet")) { + const defaultWeaponMap = { + "/Lotus/Types/Friendly/Pets/ZanukaPets/ZanukaPetAPowerSuit": + "/Lotus/Types/Friendly/Pets/ZanukaPets/ZanukaPetMeleeWeaponIP", + "/Lotus/Types/Friendly/Pets/ZanukaPets/ZanukaPetBPowerSuit": + "/Lotus/Types/Friendly/Pets/ZanukaPets/ZanukaPetMeleeWeaponIS", + "/Lotus/Types/Friendly/Pets/ZanukaPets/ZanukaPetCPowerSuit": + "/Lotus/Types/Friendly/Pets/ZanukaPets/ZanukaPetMeleeWeaponPS" + }; + if (data.WeaponType in defaultWeaponMap) { + const weapon = defaultWeaponMap[data.WeaponType as keyof typeof defaultWeaponMap]; + const category = ExportWeapons[weapon].productCategory; + addEquipment(inventory, category, weapon); + occupySlot(inventory, productCategoryToInventoryBin(category)!, !!data.isWebUi); + } + } defaultOverwrites.Configs = applyDefaultUpgrades(inventory, defaultUpgrades); addEquipment(inventory, category, data.WeaponType, data.Parts, inventoryChanges, defaultOverwrites); combineInventoryChanges( -- 2.47.2 From ffa967c03883c38e44d6ac81cddbac43cc5b800e Mon Sep 17 00:00:00 2001 From: AMelonInsideLemon <166175391+AMelonInsideLemon@users.noreply.github.com> Date: Thu, 24 Apr 2025 01:07:58 +0200 Subject: [PATCH 2/2] update to PE+ 0.5.58 --- .../api/modularWeaponCraftingController.ts | 21 +++++++------------ .../custom/getItemListsController.ts | 2 +- 2 files changed, 9 insertions(+), 14 deletions(-) diff --git a/src/controllers/api/modularWeaponCraftingController.ts b/src/controllers/api/modularWeaponCraftingController.ts index 32d79057..91809b49 100644 --- a/src/controllers/api/modularWeaponCraftingController.ts +++ b/src/controllers/api/modularWeaponCraftingController.ts @@ -139,20 +139,15 @@ export const modularWeaponCraftingController: RequestHandler = async (req, res) defaultUpgrades = getDefaultUpgrades(data.Parts); } - if (category == "MoaPets" && data.WeaponType.startsWith("/Lotus/Types/Friendly/Pets/ZanukaPets/ZanukaPet")) { - const defaultWeaponMap = { - "/Lotus/Types/Friendly/Pets/ZanukaPets/ZanukaPetAPowerSuit": - "/Lotus/Types/Friendly/Pets/ZanukaPets/ZanukaPetMeleeWeaponIP", - "/Lotus/Types/Friendly/Pets/ZanukaPets/ZanukaPetBPowerSuit": - "/Lotus/Types/Friendly/Pets/ZanukaPets/ZanukaPetMeleeWeaponIS", - "/Lotus/Types/Friendly/Pets/ZanukaPets/ZanukaPetCPowerSuit": - "/Lotus/Types/Friendly/Pets/ZanukaPets/ZanukaPetMeleeWeaponPS" - }; - if (data.WeaponType in defaultWeaponMap) { - const weapon = defaultWeaponMap[data.WeaponType as keyof typeof defaultWeaponMap]; + if (category == "MoaPets") { + const weapon = ExportSentinels[data.WeaponType].defaultWeapon; + if (weapon) { const category = ExportWeapons[weapon].productCategory; - addEquipment(inventory, category, weapon); - occupySlot(inventory, productCategoryToInventoryBin(category)!, !!data.isWebUi); + addEquipment(inventory, category, weapon, undefined, inventoryChanges); + combineInventoryChanges( + inventoryChanges, + occupySlot(inventory, productCategoryToInventoryBin(category)!, !!data.isWebUi) + ); } } defaultOverwrites.Configs = applyDefaultUpgrades(inventory, defaultUpgrades); diff --git a/src/controllers/custom/getItemListsController.ts b/src/controllers/custom/getItemListsController.ts index 09e42dd2..96a61141 100644 --- a/src/controllers/custom/getItemListsController.ts +++ b/src/controllers/custom/getItemListsController.ts @@ -66,7 +66,7 @@ const getItemListsController: RequestHandler = (req, response) => { }); } for (const [uniqueName, item] of Object.entries(ExportSentinels)) { - if (item.productCategory != "SpecialItems") { + if (item.productCategory == "Sentinels" || item.productCategory == "KubrowPets") { res[item.productCategory].push({ uniqueName, name: getString(item.name, lang), -- 2.47.2