blockies-ts
Version:
Typescript version of Ethereum blockies
24 lines • 877 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.randArr = new Array(4);
function seedRandomness(seed) {
let i;
for (i = 0; i < exports.randArr.length; i++) {
exports.randArr[i] = 0;
}
for (i = 0; i < seed.length; i++) {
exports.randArr[i % 4] =
(exports.randArr[i % 4] << 5) - exports.randArr[i % 4] + seed.charCodeAt(i);
}
}
exports.seedRandomness = seedRandomness;
function random() {
let t = exports.randArr[0] ^ (exports.randArr[0] << 11);
exports.randArr[0] = exports.randArr[1];
exports.randArr[1] = exports.randArr[2];
exports.randArr[2] = exports.randArr[3];
exports.randArr[3] = exports.randArr[3] ^ (exports.randArr[3] >> 19) ^ t ^ (t >> 8);
return (exports.randArr[3] >>> 0) / ((1 << 31) >>> 0);
}
exports.random = random;
//# sourceMappingURL=random.js.map