fix: don't use path-based matching to add QuestKeys (#967)

Reviewed-on: OpenWF/SpaceNinjaServer#967
Co-authored-by: Sainan <sainan@calamity.inc>
Co-committed-by: Sainan <sainan@calamity.inc>
This commit is contained in:
Sainan 2025-02-19 12:42:21 -08:00 committed by OrdisPrime
parent 1413a6bcc2
commit 00a75a33fa

View File

@ -38,6 +38,7 @@ import {
ExportCustoms, ExportCustoms,
ExportFlavour, ExportFlavour,
ExportGear, ExportGear,
ExportKeys,
ExportRecipes, ExportRecipes,
ExportResources, ExportResources,
ExportSentinels, ExportSentinels,
@ -365,6 +366,19 @@ export const addItem = async (
} }
}; };
} }
if (typeName in ExportKeys) {
// Note: "/Lotus/Types/Keys/" contains some EmailItems and ShipFeatureItems
inventory.QuestKeys.push({ ItemType: typeName });
return {
InventoryChanges: {
QuestKeys: [
{
ItemType: typeName
}
]
}
};
}
// Path-based duck typing // Path-based duck typing
switch (typeName.substr(1).split("/")[1]) { switch (typeName.substr(1).split("/")[1]) {
@ -481,18 +495,6 @@ export const addItem = async (
} }
break; break;
} }
case "Keys": {
inventory.QuestKeys.push({ ItemType: typeName });
return {
InventoryChanges: {
QuestKeys: [
{
ItemType: typeName
}
]
}
};
}
case "NeutralCreatures": { case "NeutralCreatures": {
const horseIndex = inventory.Horses.push({ ItemType: typeName }); const horseIndex = inventory.Horses.push({ ItemType: typeName });
return { return {