diff --git a/bukkit19/src/main/java/com/boydti/fawe/bukkit/v1_9/BukkitChunk_1_9.java b/bukkit19/src/main/java/com/boydti/fawe/bukkit/v1_9/BukkitChunk_1_9.java index ff158f2d..8f78bf2f 100644 --- a/bukkit19/src/main/java/com/boydti/fawe/bukkit/v1_9/BukkitChunk_1_9.java +++ b/bukkit19/src/main/java/com/boydti/fawe/bukkit/v1_9/BukkitChunk_1_9.java @@ -56,7 +56,7 @@ public class BukkitChunk_1_9 extends CharFaweChunk { if (!(currentPalette instanceof DataPaletteGlobal)) { current.a(128, null); } - DataPaletteBlock paletteBlock = new DataPaletteBlock(); + DataPaletteBlock paletteBlock = newDataPaletteBlock(); currentPalette = (DataPalette) fieldPalette.get(current); if (!(currentPalette instanceof DataPaletteGlobal)) { throw new RuntimeException("Palette must be global!"); @@ -85,6 +85,19 @@ public class BukkitChunk_1_9 extends CharFaweChunk { return value; } + public DataPaletteBlock newDataPaletteBlock() { + try { + return new DataPaletteBlock(); + } catch (Throwable e) { + try { + Constructor constructor = DataPaletteBlock.class.getDeclaredConstructor(IBlockData[].class); + return constructor.newInstance((Object) null); + } catch (Throwable e2) { + throw new RuntimeException(e2); + } + } + } + public void optimize() { if (sectionPalettes != null) { return; @@ -97,17 +110,7 @@ public class BukkitChunk_1_9 extends CharFaweChunk { if (sectionPalettes == null) { sectionPalettes = new DataPaletteBlock[16]; } - DataPaletteBlock palette; - try { - palette = sectionPalettes[layer] = new DataPaletteBlock(); - } catch (Throwable e) { - try { - Constructor constructor = DataPaletteBlock.class.getDeclaredConstructor(IBlockData[].class); - palette = sectionPalettes[layer] = constructor.newInstance(null); - } catch (Throwable e2) { - throw new RuntimeException(e2); - } - } + DataPaletteBlock palette = newDataPaletteBlock(); char[] blocks = getIdArray(layer); for (int y = 0; y < 16; y++) { for (int z = 0; z < 16; z++) { diff --git a/bukkit19/src/main/java/com/boydti/fawe/bukkit/v1_9/BukkitQueue_1_9_R1.java b/bukkit19/src/main/java/com/boydti/fawe/bukkit/v1_9/BukkitQueue_1_9_R1.java index 404e0681..05da8b8a 100644 --- a/bukkit19/src/main/java/com/boydti/fawe/bukkit/v1_9/BukkitQueue_1_9_R1.java +++ b/bukkit19/src/main/java/com/boydti/fawe/bukkit/v1_9/BukkitQueue_1_9_R1.java @@ -236,10 +236,10 @@ public class BukkitQueue_1_9_R1 extends BukkitQueue_0 constructor = ChunkSection.class.getDeclaredConstructor(int.class, boolean.class, IBlockData[].class); - return constructor.newInstance(y2, flag, null); + return constructor.newInstance(y2, flag, (IBlockData[]) null); } else { Constructor constructor = ChunkSection.class.getDeclaredConstructor(int.class, boolean.class, char[].class, IBlockData[].class); - return constructor.newInstance(y2, flag, array, null); + return constructor.newInstance(y2, flag, array, (IBlockData[]) null); } } catch (Throwable e2) { throw new RuntimeException(e2); @@ -311,12 +311,12 @@ public class BukkitQueue_1_9_R1 extends BukkitQueue_0= 4096) { @@ -325,7 +325,7 @@ public class BukkitQueue_1_9_R1 extends BukkitQueue_0