From 5b3002cc3f173ae909dd2197794461521bddf11f Mon Sep 17 00:00:00 2001 From: Alex_hawks Date: Mon, 30 Dec 2013 20:52:40 +0800 Subject: [PATCH] Create a utility method to make my life easier --- .../wire/part/PartFlatSwitchWire.java | 8 +------ .../wire/part/PartFlatWire.java | 23 ++++++++++++++----- 2 files changed, 18 insertions(+), 13 deletions(-) diff --git a/src/main/java/resonantinduction/wire/part/PartFlatSwitchWire.java b/src/main/java/resonantinduction/wire/part/PartFlatSwitchWire.java index 873553cb..e3314ff4 100644 --- a/src/main/java/resonantinduction/wire/part/PartFlatSwitchWire.java +++ b/src/main/java/resonantinduction/wire/part/PartFlatSwitchWire.java @@ -8,7 +8,6 @@ import net.minecraft.item.ItemStack; import net.minecraft.util.MovingObjectPosition; import net.minecraft.world.World; import codechicken.lib.vec.BlockCoord; -import codechicken.lib.vec.Vector3; import codechicken.multipart.IRedstonePart; import codechicken.multipart.MultiPartRegistry; import codechicken.multipart.TMultiPart; @@ -58,12 +57,7 @@ public class PartFlatSwitchWire extends PartFlatWire if (!w.isRemote) { PartFlatWire wire = (PartFlatWire) MultiPartRegistry.createPart("resonant_induction_flat_wire", false); - wire.isInsulated = this.isInsulated; - wire.color = this.color; - wire.connections = this.connections; - wire.material = this.material; - wire.side = this.side; - wire.connMap = this.connMap; + wire.copyFrom(this); if (tile.canReplacePart(this, wire)) { diff --git a/src/main/java/resonantinduction/wire/part/PartFlatWire.java b/src/main/java/resonantinduction/wire/part/PartFlatWire.java index ff1dca27..3ae4532f 100644 --- a/src/main/java/resonantinduction/wire/part/PartFlatWire.java +++ b/src/main/java/resonantinduction/wire/part/PartFlatWire.java @@ -288,12 +288,7 @@ public class PartFlatWire extends PartAdvancedWire implements TFacePart, JNormal if (!w.isRemote) { PartFlatSwitchWire wire = (PartFlatSwitchWire) MultiPartRegistry.createPart("resonant_induction_flat_switch_wire", false); - wire.isInsulated = this.isInsulated; - wire.color = this.color; - wire.connections = this.connections; - wire.material = this.material; - wire.side = this.side; - wire.connMap = this.connMap; + wire.copyFrom(this); if (tile.canReplacePart(this, wire)) { @@ -899,4 +894,20 @@ public class PartFlatWire extends PartAdvancedWire implements TFacePart, JNormal CCRenderState.reset(); RenderFlatWire.renderBreakingOverlay(renderBlocks.overrideBlockTexture, this); } + + /** + * Utility method to aid in initializing this or subclasses, usually when you need to change the wire to another type + * @param otherCable the wire to copy from + */ + public void copyFrom(PartFlatWire otherCable) + { + this.isInsulated = otherCable.isInsulated; + this.color = otherCable.color; + this.connections = otherCable.connections; + this.material = otherCable.material; + this.side = otherCable.side; + this.connMap = otherCable.connMap; + this.setNetwork(otherCable.getNetwork()); + this.getNetwork().setBufferFor(this, otherCable.getNetwork().getBufferOf(otherCable)); + } } \ No newline at end of file