diff --git a/src/main/java/com/crypto/codec/Base64.java b/src/main/java/com/crypto/codec/Base64.java index 9d1ff91c..f65faf96 100644 --- a/src/main/java/com/crypto/codec/Base64.java +++ b/src/main/java/com/crypto/codec/Base64.java @@ -184,7 +184,7 @@ public class Base64 { decodedBlock[0] = (byte) (decodeAlphabet[block[0]] << 2 | decodeAlphabet[block[1]] >>> 4); decodedBlock[1] = (byte) (decodeAlphabet[block[1]] << 4 | decodeAlphabet[block[2]] >>> 2); - decodedBlock[2] = (byte) (decodeAlphabet[block[2]] << 6 | decodeAlphabet[block[3]]); + decodedBlock[2] = (byte) (decodeAlphabet[block[2]] << 6 | decodeAlphabet[block[3]] & 0xff); return decodedBlock; } diff --git a/src/main/java/com/generation/SimplexNoise.java b/src/main/java/com/generation/SimplexNoise.java index a4fcb3f1..fb4473dc 100644 --- a/src/main/java/com/generation/SimplexNoise.java +++ b/src/main/java/com/generation/SimplexNoise.java @@ -36,7 +36,7 @@ public class SimplexNoise { this.octaves[index] = new SimplexNoiseOctave(random.nextInt()); this.frequencys[index] = Math.pow(2, index); - this.amplitudes[index] = Math.pow(persistence, octaveCount - index); + this.amplitudes[index] = Math.pow(persistence, (double) octaveCount - index); } } @@ -103,7 +103,7 @@ public class SimplexNoise { for (int index = 0; index < this.octaves.length; index++) { double frequency = Math.pow(2, index); - double amplitude = Math.pow(this.persistance, this.octaves.length - index); + double amplitude = Math.pow(this.persistance, (double) this.octaves.length - index); result += this.octaves[index].noise(x / frequency, y / frequency, z / frequency) * amplitude; }