From f83954c8754109213973e1e94d5914bbeb4872f1 Mon Sep 17 00:00:00 2001 From: Geforce Date: Mon, 8 Aug 2016 00:36:00 -0500 Subject: [PATCH] Fixed block particle duplication bug when there are views in the same dimension as the player --- .../client/proxyworld/ProxyWorldManager.java | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/main/java/com/xcompwiz/lookingglass/client/proxyworld/ProxyWorldManager.java b/src/main/java/com/xcompwiz/lookingglass/client/proxyworld/ProxyWorldManager.java index 8534135..2c0e4a3 100644 --- a/src/main/java/com/xcompwiz/lookingglass/client/proxyworld/ProxyWorldManager.java +++ b/src/main/java/com/xcompwiz/lookingglass/client/proxyworld/ProxyWorldManager.java @@ -119,6 +119,15 @@ public static WorldView createWorldView(int dimid, ChunkCoordinates spawn, int w EntityLivingBase backup = mc.renderViewEntity; mc.renderViewEntity = view.camera; view.getRenderGlobal().setWorldAndLoadRenderers(proxyworld); + if(proxyworld.provider.dimensionId == Minecraft.getMinecraft().thePlayer.dimension) { + proxyworld.removeWorldAccess(view.getRenderGlobal()); + } + else if(proxyworld.provider.dimensionId != Minecraft.getMinecraft().thePlayer.dimension){ + // Since there is no "getWorldAccess" or "hasWorldAccess(dim)" method in WorldClient, + // this is a makeshift way to prevent duplicate world accesses being added + proxyworld.removeWorldAccess(view.getRenderGlobal()); + proxyworld.addWorldAccess(view.getRenderGlobal()); + } mc.renderViewEntity = backup; // Inform the server of the new view