let tokens = []; if (canvas.tokens.controlled.length > 0) { tokens = canvas.tokens.controlled; } if (tokens.length > 0) { main(tokens); } else { ui.notifications.error('Please select or target a token'); } async function main(tokens) { const currencies = ['Copper', 'Silver', 'Gold', 'Platinum']; let template = '
'; const fmtOptions = { minimumIntegerDigits: 1, minimumFractionDigits: 2, maximumFractionDigits: 2, }; const fmt = Intl.NumberFormat('en-US', fmtOptions); for (const token of tokens) { const actor = token.actor; let total = 0; for (const item of actor.items.filter((i) => currencies.indexOf(i.name) > -1)) { total += item.system.price * item.system.quantity; } template += ``; } template += ''; foundry.applications.api.DialogV2.prompt({ window: { title: 'Currency Totals' }, content: template, }); }
ActorCurrency
${actor.name}${fmt.format(total)}