Fix not sending tile updates

This commit is contained in:
Ben Spiers 2014-08-14 23:05:32 +01:00
parent dc922a3914
commit e4c2692e64
2 changed files with 19 additions and 3 deletions

View file

@ -648,7 +648,7 @@ public class PartLogisticalTransporter extends PartTransmitter<InventoryNetwork>
{
TransporterUtils.incrementColor(this);
refreshConnections();
tile().notifyPartChange(this);
tile().notifyTileChange();
Mekanism.packetHandler.sendToReceivers(new TileEntityMessage(Coord4D.get(tile()), getNetworkedData(new ArrayList())), new Range4D(Coord4D.get(tile())));
player.addChatMessage(new ChatComponentText(EnumColor.DARK_BLUE + "[Mekanism]" + EnumColor.GREY + " " + MekanismUtils.localize("tooltip.configurator.toggleColor") + ": " + (color != null ? color.getName() : EnumColor.BLACK + MekanismUtils.localize("gui.none"))));

View file

@ -464,6 +464,16 @@ public abstract class PartSidedPipe extends TMultiPart implements TSlottedPart,
protected void onRefresh() {}
public void redstoneRefresh()
{
boolean nowPowered = redstoneReactive && world().isBlockIndirectlyGettingPowered(x(), y(), z());
if(nowPowered != redstonePowered)
{
refreshConnections();
}
}
public void refreshConnections()
{
byte possibleTransmitters = getPossibleTransmitterConnections();
@ -482,7 +492,7 @@ public abstract class PartSidedPipe extends TMultiPart implements TSlottedPart,
onRedstoneSplit();
}
tile().notifyPartChange(this);
tile().notifyTileChange();
}
}
@ -525,6 +535,12 @@ public abstract class PartSidedPipe extends TMultiPart implements TSlottedPart,
refreshConnections();
}
@Override
public void onNeighborChanged()
{
redstoneRefresh();
}
@Override
public void onPartChanged(TMultiPart part)
{
@ -637,7 +653,7 @@ public abstract class PartSidedPipe extends TMultiPart implements TSlottedPart,
{
redstoneReactive ^= true;
refreshConnections();
tile().notifyPartChange(this);
tile().notifyTileChange();
player.addChatMessage(new ChatComponentText(EnumColor.DARK_BLUE + "[Mekanism]" + EnumColor.GREY + " Redstone sensitivity turned " + EnumColor.INDIGO + (redstoneReactive ? "on." : "off.")));
}