Viewing old revision of Module:TEST/Trade_Items
You are viewing an old revision of this page from 1/19/2026, 4:06:43 PM.
View latest versionNo documentation subpage (
/doc) found for this module.const LatestGameVersion = (await require("TEST/LatestVersion")).latest + "1";
function renderTable(items) {
let wikitext = '';
wikitext += '{| class="lg-table lg-table--striped"\n';
wikitext += '! Icon !! Name !! Category !! Rarity !! Vendor Cost\n';
for (const id in items) {
const item = items[id];
wikitext += '|-\n';
// Icon
if (item.icon) {
wikitext += `| {{ItemIcon|${item.icon}}}\n`;
} else {
wikitext += '| —\n';
}
// Name
wikitext += `| '''${item.name || id}'''\n`;
// Category
wikitext += `| ${item.category || '—'}\n`;
// Rarity
if (item.rarity) {
wikitext += `| {{Rarity|${item.rarity}}}\n`;
} else {
wikitext += '| common\n';
}
// Vendor cost
if (item.economy && item.economy.vendorCost != null) {
wikitext += `| ${item.economy.vendorCost}\n`;
} else {
wikitext += '| —\n';
}
}
wikitext += '|}\n';
return wikitext;
}
exports.TEST = async function (props = {}) {
let DATA;
let usedVersion = LatestGameVersion;
try {
DATA = await require(`TEST/Trade_Items/data/${LatestGameVersion}`);
return String(DATA);
} catch {
if (!props.fallbackVersion) {
return '⚠️ Trade item data is unavailable.';
}
try {
usedVersion = props.fallbackVersion;
DATA = await require(`TEST/Trade_Items/data/${props.fallbackVersion}`);
} catch {
return '⚠️ Trade item data is unavailable.';
}
}
let output = '';
output += `''Data version: <code>${usedVersion}</code>''\n\n`;
output += renderTable(DATA);
return output;
};