From 67be7ed09c9901511fe36341ccdbd26a166a85e4 Mon Sep 17 00:00:00 2001 From: Chicken Bones Date: Wed, 14 Aug 2013 18:02:15 +1000 Subject: [PATCH] Fix micro part bounds not recalculating in some instances. --- codechicken/microblock/CommonMicroblock.scala | 6 ++++++ codechicken/microblock/EdgeMicroblock.scala | 16 ++++++++++++++-- 2 files changed, 20 insertions(+), 2 deletions(-) diff --git a/codechicken/microblock/CommonMicroblock.scala b/codechicken/microblock/CommonMicroblock.scala index 2d76049..a0d638f 100644 --- a/codechicken/microblock/CommonMicroblock.scala +++ b/codechicken/microblock/CommonMicroblock.scala @@ -183,6 +183,12 @@ trait CommonMicroblockClient extends CommonMicroblock with MicroblockClient with if(mat != null && pass == mat.getRenderPass) render(pos, olm, mat, renderBounds, renderMask) } + + override def read(packet:MCDataInput) + { + super.read(packet) + recalcBounds() + } } abstract class CommonMicroblock(shape$:Byte = 0, material$:Int = 0) extends Microblock(shape$, material$) with JPartialOcclusion with TMicroOcclusion with TSlottedPart diff --git a/codechicken/microblock/EdgeMicroblock.scala b/codechicken/microblock/EdgeMicroblock.scala index 467d6a3..251116e 100644 --- a/codechicken/microblock/EdgeMicroblock.scala +++ b/codechicken/microblock/EdgeMicroblock.scala @@ -21,6 +21,7 @@ import cpw.mods.fml.relauncher.Side import codechicken.lib.raytracer.ExtendedMOP import codechicken.multipart.TEdgePart import scala.collection.JavaConversions._ +import codechicken.lib.data.MCDataInput object EdgePlacement extends PlacementProperties { @@ -181,8 +182,19 @@ class PostMicroblockClient(shape$:Byte = 0, material$:Int = 0) extends PostMicro override def onPartChanged(part:TMultiPart) { - if(tile.worldObj.isRemote) - recalcBounds() + recalcBounds() + } + + override def onAdded() + { + super.onAdded() + recalcBounds() + } + + override def read(packet:MCDataInput) + { + super.read(packet) + recalcBounds() } def recalcBounds()