@@ -139,7 +139,7 @@ private void render(BlockEntity blockEntity, float partialTicks, PoseStack poseS
139139
140140 RenderData renderData = new RenderData (blockEntity , sizeRenderDiameter , partialTicks , poseStack , multiBufferSource , combinedLightIn , combinedOverlayIn );
141141 RadarMode radarMode = blockEntity .getBlockState ().getValue (PMWExtras .RADAR_MODE );
142- if (!PMWClientStorages .RADAR_MODE_COLORS .containsKey (radarMode )) update = true ;
142+ if (!PMWClientStorages .RADAR_MODE_COLORS .computeIfAbsent ( radarBlockEntity . getBlockPos (), bp -> new HashMap <>()). containsKey (radarMode )) update = true ;
143143
144144 for (int x = -resolution ; x <= resolution ; ++x ) {
145145 for (int z = -resolution ; z <= resolution ; ++z ) {
@@ -152,7 +152,7 @@ private void render(BlockEntity blockEntity, float partialTicks, PoseStack poseS
152152 float dbz = radarBlockEntity .reflectivityMap .getOrDefault (longID , 0.0F );
153153 float temp = radarBlockEntity .temperatureMap .getOrDefault (longID , 15.0F );
154154 float vel = radarBlockEntity .velocityMap .getOrDefault (longID , 0.0F );
155- Color color = PMWClientStorages .RADAR_MODE_COLORS .computeIfAbsent (radarMode , rm -> new HashMap <>()).getOrDefault (id , new Color (1.0F , 0 , 1.0F ));
155+ Color color = PMWClientStorages .RADAR_MODE_COLORS .computeIfAbsent (radarBlockEntity . getBlockPos (), bp -> new HashMap <>()). computeIfAbsent ( radarMode , rm -> new HashMap <>()).getOrDefault (id , new Color (1.0F , 0 , 1.0F ));
156156 Color dbg = radarBlockEntity .debugMap .getOrDefault (longID , new Color (0 , 0 , 0 ));
157157
158158 Vector3f pixelPos = (new Vector3f ((float ) x , 0.0F , (float ) z )).mul (1.0F / (float ) resolution ).mul (sizeRenderDiameter / 2.0F );
@@ -430,7 +430,7 @@ private void render(BlockEntity blockEntity, float partialTicks, PoseStack poseS
430430 if (!PMWClientConfig .disableCustomRadarModeRendering ) {
431431 PixelRenderData pixelRenderData = new PixelRenderData (canRender , dbz * 60.0F , vel , temp , x , z , resolution , worldPos , renderData );
432432 color = radarMode .getColorForPixel (pixelRenderData );
433- PMWClientStorages .RADAR_MODE_COLORS .get (radarMode ).put (id , color );
433+ PMWClientStorages .RADAR_MODE_COLORS .computeIfAbsent ( radarBlockEntity . getBlockPos (), bp -> new HashMap <>()). get (radarMode ).put (id , color );
434434 }
435435 }
436436
0 commit comments