don't put always available items into datalist

This commit is contained in:
AMelonInsideLemon 2025-09-15 20:18:33 +02:00
parent 7c4a7d7cf0
commit 32983eae89
2 changed files with 9 additions and 12 deletions

View File

@ -36,7 +36,7 @@ interface ListedItem {
partType?: string; partType?: string;
chainLength?: number; chainLength?: number;
parazon?: boolean; parazon?: boolean;
excludeFromAddMissing?: boolean; alwaysAvailable?: boolean;
} }
interface ItemLists { interface ItemLists {
@ -459,7 +459,7 @@ const getItemListsController: RequestHandler = (req, response) => {
uniqueName, uniqueName,
name: getString(item.name, lang) name: getString(item.name, lang)
}; };
if (item.alwaysAvailable) flavourItem.excludeFromAddMissing = true; if (item.alwaysAvailable) flavourItem.alwaysAvailable = true;
res.FlavourItems.push(flavourItem); res.FlavourItems.push(flavourItem);
} }

View File

@ -594,11 +594,12 @@ function fetchItemList() {
} else if (item.uniqueName.includes("ColourPicker")) { } else if (item.uniqueName.includes("ColourPicker")) {
item.name = loc("code_itemColorPalette").split("|ITEM|").join(item.name); item.name = loc("code_itemColorPalette").split("|ITEM|").join(item.name);
} }
const option = document.createElement("option"); if (!item.alwaysAvailable) {
option.setAttribute("data-key", item.uniqueName); const option = document.createElement("option");
option.value = item.name; option.setAttribute("data-key", item.uniqueName);
document.getElementById("datalist-" + type).appendChild(option); option.value = item.name;
if (item.excludeFromAddMissing) option.setAttribute("data-exclude-from-add-missing", ""); document.getElementById("datalist-" + type).appendChild(option);
}
itemMap[item.uniqueName] = { ...item, type }; itemMap[item.uniqueName] = { ...item, type };
}); });
} else { } else {
@ -2266,10 +2267,7 @@ function addMissingEquipment(categories) {
"#" + category + "-list [data-item-type='" + elm.getAttribute("data-key") + "']" "#" + category + "-list [data-item-type='" + elm.getAttribute("data-key") + "']"
) )
) { ) {
if ( if (!webUiModularWeapons.includes(elm.getAttribute("data-key"))) {
!webUiModularWeapons.includes(elm.getAttribute("data-key")) &&
!elm.hasAttribute("data-exclude-from-add-missing")
) {
let ItemCount = 1; let ItemCount = 1;
if (category == "ShipDecorations") ItemCount = 100; if (category == "ShipDecorations") ItemCount = 100;
requests.push({ ItemType: elm.getAttribute("data-key"), ItemCount }); requests.push({ ItemType: elm.getAttribute("data-key"), ItemCount });
@ -3415,7 +3413,6 @@ function reAddToItemList(itemMap, datalist, itemType) {
const option = document.createElement("option"); const option = document.createElement("option");
option.setAttribute("data-key", itemType); option.setAttribute("data-key", itemType);
option.value = itemMap[itemType]?.name ?? itemType; option.value = itemMap[itemType]?.name ?? itemType;
if (itemMap[itemType]?.excludeFromAddMissing) option.setAttribute("data-exclude-from-add-missing", "");
document.getElementById("datalist-" + datalist).appendChild(option); document.getElementById("datalist-" + datalist).appendChild(option);
} }