diff --git a/bukkit-nms-v1_14_R1/src/main/java/ru/beykerykt/minecraft/lightapi/impl/bukkit/nms/NMS_v1_14_R1.java b/bukkit-nms-v1_14_R1/src/main/java/ru/beykerykt/minecraft/lightapi/impl/bukkit/nms/NMS_v1_14_R1.java index 96aac4fd..fe4b5e4a 100644 --- a/bukkit-nms-v1_14_R1/src/main/java/ru/beykerykt/minecraft/lightapi/impl/bukkit/nms/NMS_v1_14_R1.java +++ b/bukkit-nms-v1_14_R1/src/main/java/ru/beykerykt/minecraft/lightapi/impl/bukkit/nms/NMS_v1_14_R1.java @@ -68,11 +68,11 @@ */ public class NMS_v1_14_R1 extends NMSLightHandler { - private static Field cachedMailboxField; - private static Method cachedMailboxMethod; + private Field cachedMailboxField; + private Method cachedMailboxMethod; private ReentrantLock locker = new ReentrantLock(); - private static Field getMailboxField(Object lightEngine) throws NoSuchFieldException, SecurityException { + private Field getMailboxField(Object lightEngine) throws NoSuchFieldException, SecurityException { if (cachedMailboxField == null) { cachedMailboxField = lightEngine.getClass().getDeclaredField("b"); cachedMailboxField.setAccessible(true); @@ -80,7 +80,7 @@ private static Field getMailboxField(Object lightEngine) throws NoSuchFieldExcep return cachedMailboxField; } - private static Method getCheckMailboxMethod(Object lightEngine) throws NoSuchMethodException, SecurityException { + private Method getCheckMailboxMethod(Object lightEngine) throws NoSuchMethodException, SecurityException { if (cachedMailboxMethod == null) { cachedMailboxMethod = lightEngine.getClass().getDeclaredMethod("d"); cachedMailboxMethod.setAccessible(true); @@ -192,12 +192,12 @@ public void setRawLightLevel(World world, LightType type, int blockX, int blockY // no relight while ThreadMailbox is working if (isThreadMailboxWorking(lightEngine)) { - try { - while (isThreadMailboxWorking(lightEngine)) { + while (isThreadMailboxWorking(lightEngine)) { + try { Thread.sleep(50L); // TEMP FIX: wait a tick + } catch (InterruptedException e) { + e.printStackTrace(); } - } catch (InterruptedException e) { - e.printStackTrace(); } } @@ -267,7 +267,6 @@ public void recalculateLighting(World world, LightType type, int blockX, int blo try { Thread.sleep(50L); // TEMP FIX: wait a tick } catch (InterruptedException e) { - // TODO Auto-generated catch block e.printStackTrace(); } } @@ -333,24 +332,20 @@ public List collectChunks(World world, int x, int y, int z, int ligh } int radiusBlocks = lightlevel; List list = new CopyOnWriteArrayList(); - try { - WorldServer nmsWorld = ((CraftWorld) world).getHandle(); - for (int dX = -radiusBlocks; dX <= radiusBlocks; dX += radiusBlocks) { - for (int dZ = -radiusBlocks; dZ <= radiusBlocks; dZ += radiusBlocks) { - int chunkX = (x + dX) >> 4; - int chunkZ = (z + dZ) >> 4; - if (nmsWorld.isChunkLoaded(chunkX, chunkZ)) { - Chunk chunk = nmsWorld.getChunkAt(chunkX, chunkZ); - IChunkData cCoord = new BukkitChunkData(world, chunk.getPos().x, y, chunk.getPos().z, - world.getPlayers()); - if (chunk.isNeedsSaving() && !list.contains(cCoord)) { - list.add(cCoord); - } + WorldServer nmsWorld = ((CraftWorld) world).getHandle(); + for (int dX = -radiusBlocks; dX <= radiusBlocks; dX += radiusBlocks) { + for (int dZ = -radiusBlocks; dZ <= radiusBlocks; dZ += radiusBlocks) { + int chunkX = (x + dX) >> 4; + int chunkZ = (z + dZ) >> 4; + if (nmsWorld.isChunkLoaded(chunkX, chunkZ)) { + Chunk chunk = nmsWorld.getChunkAt(chunkX, chunkZ); + IChunkData cCoord = new BukkitChunkData(world, chunk.getPos().x, y, chunk.getPos().z, + world.getPlayers()); + if (chunk.isNeedsSaving() && !list.contains(cCoord)) { + list.add(cCoord); } } } - } catch (Exception e) { - e.printStackTrace(); } return list; } diff --git a/common/src/main/java/ru/beykerykt/minecraft/lightapi/common/LReason.java b/common/src/main/java/ru/beykerykt/minecraft/lightapi/common/LReason.java index db19a8ca..3b70d82f 100644 --- a/common/src/main/java/ru/beykerykt/minecraft/lightapi/common/LReason.java +++ b/common/src/main/java/ru/beykerykt/minecraft/lightapi/common/LReason.java @@ -44,7 +44,7 @@ public enum LReason { * N/A */ THROW_EXCEPTION(3), - + /** * N/A */