Dice conversion to Base 6 uses arrays not strings

This commit is contained in:
Ian Coleman
2016-11-10 10:54:43 +11:00
parent 0d0f07f937
commit a3d78b7ddc

View File

@@ -70,23 +70,22 @@ window.Entropy = new (function() {
// Convert dice to base6 entropy (ie 1-6 to 0-5) // Convert dice to base6 entropy (ie 1-6 to 0-5)
// This is done by changing all 6s to 0s // This is done by changing all 6s to 0s
if (base.str == "dice") { if (base.str == "dice") {
var newRawEntropyStr = ""; var newParts = [];
var newInts = []; var newInts = [];
for (var i=0; i<rawEntropyStr.length; i++) { for (var i=0; i<base.parts.length; i++) {
var c = rawEntropyStr[i]; var c = base.parts[i];
if ("12345".indexOf(c) > -1) { if ("12345".indexOf(c) > -1) {
newRawEntropyStr += c; newParts[i] = base.parts[i];
newInts[i] = base.ints[i]; newInts[i] = base.ints[i];
} }
else { else {
newRawEntropyStr += "0"; newParts[i] = "0";
newInts[i] = 0; newInts[i] = 0;
} }
} }
rawEntropyStr = newRawEntropyStr;
base.str = "base 6 (dice)"; base.str = "base 6 (dice)";
base.ints = newInts; base.ints = newInts;
base.parts = matchers.base6(rawEntropyStr); base.parts = newParts;
base.matcher = matchers.base6; base.matcher = matchers.base6;
} }
// Detect empty entropy // Detect empty entropy