Files
pirate-corsaire-server/Utility/chooseWeightedRandom.js
T
2026-08-24 22:20:36 +02:00

15 lines
376 B
JavaScript

function chooseWeightedRandom(items, weights) {
let i;
let length = weights.length;
weights = [...weights];
for (i = 0; i < length; i++) weights[i] += weights[i - 1] || 0;
const random = Math.random() * weights[length - 1];
for (i = 0; i < length; i++) if (weights[i] > random) break;
return items[i];
};
module.exports = chooseWeightedRandom;