Bugfixes!

main
Astoria 1 year ago
parent 22c1cc2915
commit 3eb1d6cb2e

@ -103,31 +103,31 @@ public abstract class AbstractWireTileEntity extends TileEntity {
public void prepForDelete() { public void prepForDelete() {
if(outputs != null) { if(outputs != null) {
for (int i = 0; i < outputs.length; ++i) { for (int i = 0; i < outputs.length; ++i) {
if (outputs[i].wire != null && outputs[i].wire.thisslot > -1) { if (outputs[i].wire != null) {
WireConnection wire = outputs[i].wire; WireConnection wire = outputs[i].wire;
AbstractWireTileEntity otherChip = (AbstractWireTileEntity)this.worldObj.getBlockTileEntity(wire.x, wire.y, wire.z); AbstractWireTileEntity otherChip = (AbstractWireTileEntity)this.worldObj.getBlockTileEntity(wire.x, wire.y, wire.z);
if(otherChip != null && otherChip.outputs != null) { if(otherChip != null) {
outputs[i].floatvalue = 0; outputs[i].floatvalue = 0;
outputs[i].stringvalue = ""; outputs[i].stringvalue = "";
outputs[i].wire.isMade = false; outputs[i].wire.isMade = false;
otherChip.inputs[wire.thatslot].wire.isMade = false; otherChip.inputs[wire.thatslot].wire = new WireConnection();
this.updateIO(); this.updateIO();
otherChip.updateIO(); otherChip.updateIO();
worldObj.markBlockNeedsUpdate(xCoord, yCoord, zCoord);
worldObj.markBlockNeedsUpdate(wire.x, wire.y, wire.z);
} }
worldObj.markBlockNeedsUpdate(wire.x, wire.y, wire.z);
} }
} }
} }
if(inputs != null) { if(inputs != null) {
for (int i = 0; i < inputs.length; ++i) { for (int i = 0; i < inputs.length; ++i) {
if (inputs[i].wire != null && inputs[i].wire.thisslot > -1) { if (inputs[i].wire != null) {
WireConnection wire = inputs[i].wire; WireConnection wire = inputs[i].wire;
AbstractWireTileEntity otherChip = (AbstractWireTileEntity)this.worldObj.getBlockTileEntity(wire.x, wire.y, wire.z); AbstractWireTileEntity otherChip = (AbstractWireTileEntity)this.worldObj.getBlockTileEntity(wire.x, wire.y, wire.z);
if(otherChip != null && otherChip.outputs != null && otherChip.outputs.length > wire.thatslot) { if(otherChip != null) {
otherChip.outputs[wire.thatslot].wire.isMade = false; otherChip.outputs[wire.thatslot].wire = new WireConnection();
otherChip.updateIO(); otherChip.updateIO();
} }
worldObj.markBlockNeedsUpdate(wire.x, wire.y, wire.z);
} }
} }
} }

@ -57,7 +57,7 @@ public class MixinNetServerHandler implements INetHandler {
break; break;
case 1: case 1:
AbstractWireTileEntity otherEntity; AbstractWireTileEntity otherEntity;
if(!packet.backwired) { if(packet.backwired) {
otherEntity = (AbstractWireTileEntity)this.mcServer.getWorldManager(this.playerEntity.dimension).getBlockTileEntity(packet.x1, packet.y1, packet.z1); otherEntity = (AbstractWireTileEntity)this.mcServer.getWorldManager(this.playerEntity.dimension).getBlockTileEntity(packet.x1, packet.y1, packet.z1);
otherEntity.inputs[packet.slot2].wire = new WireConnection(packet.x2, packet.y2, packet.z2, packet.slot1, packet.slot2); otherEntity.inputs[packet.slot2].wire = new WireConnection(packet.x2, packet.y2, packet.z2, packet.slot1, packet.slot2);
} else{ } else{

@ -375,6 +375,7 @@ public class ChipTileEntity extends AbstractWireTileEntity {
break; break;
} }
initialized = true; initialized = true;
worldObj.markBlockNeedsUpdate(xCoord, yCoord, zCoord);
update(); update();
} }
} }

Loading…
Cancel
Save