diff --git a/common/mekanism/api/gas/GasNetwork.java b/common/mekanism/api/gas/GasNetwork.java index 994040778..085b8c8bf 100644 --- a/common/mekanism/api/gas/GasNetwork.java +++ b/common/mekanism/api/gas/GasNetwork.java @@ -46,7 +46,7 @@ public class GasNetwork extends DynamicNetwork register(); } - public int emit(int gasToSend, EnumGas transferType, TileEntity emitter) + public synchronized int emit(int gasToSend, EnumGas transferType, TileEntity emitter) { List availableAcceptors = Arrays.asList(getAcceptors(transferType).toArray()); @@ -88,7 +88,7 @@ public class GasNetwork extends DynamicNetwork } @Override - public Set getAcceptors(Object... data) + public synchronized Set getAcceptors(Object... data) { EnumGas transferType = (EnumGas)data[0]; Set toReturn = new HashSet(); @@ -108,7 +108,7 @@ public class GasNetwork extends DynamicNetwork } @Override - public void refresh() + public synchronized void refresh() { Set> iterTubes = (Set>)transmitters.clone(); Iterator> it = iterTubes.iterator(); @@ -146,7 +146,7 @@ public class GasNetwork extends DynamicNetwork } @Override - public void merge(GasNetwork network) + public synchronized void merge(GasNetwork network) { if(network != null && network != this) { diff --git a/common/mekanism/api/transmitters/DynamicNetwork.java b/common/mekanism/api/transmitters/DynamicNetwork.java index e42303fb8..48f08fcf8 100644 --- a/common/mekanism/api/transmitters/DynamicNetwork.java +++ b/common/mekanism/api/transmitters/DynamicNetwork.java @@ -97,7 +97,7 @@ public abstract class DynamicNetwork implements ITransmitterNetwork } @Override - public void fixMessedUpNetwork(ITransmitter transmitter) + public synchronized void fixMessedUpNetwork(ITransmitter transmitter) { if(transmitter instanceof TileEntity) { @@ -124,7 +124,7 @@ public abstract class DynamicNetwork implements ITransmitterNetwork } @Override - public void split(ITransmitter splitPoint) + public synchronized void split(ITransmitter splitPoint) { if(splitPoint instanceof TileEntity) { @@ -214,7 +214,7 @@ public abstract class DynamicNetwork implements ITransmitterNetwork if(ignore != null) { - for (int i = 0; i < ignore.length; i++) + for(int i = 0; i < ignore.length; i++) { this.toIgnore.add(ignore[i]); } @@ -227,8 +227,7 @@ public abstract class DynamicNetwork implements ITransmitterNetwork { iterated.add(location); } - else - { + else { toIgnore.add(location); } diff --git a/common/mekanism/api/transmitters/TransmitterNetworkRegistry.java b/common/mekanism/api/transmitters/TransmitterNetworkRegistry.java index 28b89754b..e5b760949 100644 --- a/common/mekanism/api/transmitters/TransmitterNetworkRegistry.java +++ b/common/mekanism/api/transmitters/TransmitterNetworkRegistry.java @@ -69,10 +69,7 @@ public class TransmitterNetworkRegistry implements ITickHandler } @Override - public void tickStart(EnumSet type, Object... tickData) - { - return; - } + public void tickStart(EnumSet type, Object... tickData) {} @Override public void tickEnd(EnumSet type, Object... tickData) @@ -133,14 +130,16 @@ public class TransmitterNetworkRegistry implements ITickHandler } } - public void refreshChunk(Chunk c) + public synchronized void refreshChunk(Chunk c) { if(c != null) { Iterator it = c.chunkTileEntityMap.entrySet().iterator(); + while(it.hasNext()) { Object obj = it.next(); + if(obj instanceof TileEntity) { TileEntity tileEntity = (TileEntity)obj; diff --git a/common/mekanism/client/ClientPlayerTickHandler.java b/common/mekanism/client/ClientPlayerTickHandler.java index 866ab56ef..34ae17139 100644 --- a/common/mekanism/client/ClientPlayerTickHandler.java +++ b/common/mekanism/client/ClientPlayerTickHandler.java @@ -45,7 +45,7 @@ public class ClientPlayerTickHandler implements ITickHandler { ItemConfigurator item = (ItemConfigurator)entityPlayer.getCurrentEquippedItem().getItem(); - if(entityPlayer.isSneaking() && MekanismKeyHandler.modeSwitch.isPressed()) + if(entityPlayer.isSneaking() && MekanismKeyHandler.modeSwitchKey.pressed) { if(!lastTickUpdate) { @@ -63,7 +63,7 @@ public class ClientPlayerTickHandler implements ITickHandler { ItemElectricBow item = (ItemElectricBow)entityPlayer.getCurrentEquippedItem().getItem(); - if(entityPlayer.isSneaking() && MekanismKeyHandler.modeSwitch.isPressed()) + if(entityPlayer.isSneaking() && MekanismKeyHandler.modeSwitchKey.pressed) { if(!lastTickUpdate) { @@ -81,7 +81,7 @@ public class ClientPlayerTickHandler implements ITickHandler { ItemWalkieTalkie item = (ItemWalkieTalkie)entityPlayer.getCurrentEquippedItem().getItem(); - if(entityPlayer.isSneaking() && MekanismKeyHandler.modeSwitch.isPressed() && item.getOn(stack)) + if(entityPlayer.isSneaking() && MekanismKeyHandler.modeSwitchKey.pressed && item.getOn(stack)) { if(!lastTickUpdate) { diff --git a/common/mekanism/client/MekanismKeyHandler.java b/common/mekanism/client/MekanismKeyHandler.java index 9da898c5e..156d93b88 100644 --- a/common/mekanism/client/MekanismKeyHandler.java +++ b/common/mekanism/client/MekanismKeyHandler.java @@ -14,14 +14,12 @@ import cpw.mods.fml.relauncher.SideOnly; @SideOnly(Side.CLIENT) public class MekanismKeyHandler extends KeyHandler { - public static KeyBinding modeSwitch = new KeyBinding("Mekanism Mode Switch", Keyboard.KEY_M); - public static KeyBinding voice = new KeyBinding("Mekanism Voice", Keyboard.KEY_U); - - public static boolean voiceKeyDown = false; + public static KeyBinding modeSwitchKey = new KeyBinding("Mekanism Mode Switch", Keyboard.KEY_M); + public static KeyBinding voiceKey = new KeyBinding("Mekanism Voice", Keyboard.KEY_U); public MekanismKeyHandler() { - super(new KeyBinding[] {modeSwitch, voice}, new boolean[] {false, false}); + super(new KeyBinding[] {modeSwitchKey, voiceKey}, new boolean[] {false, false}); } @Override @@ -31,22 +29,10 @@ public class MekanismKeyHandler extends KeyHandler } @Override - public void keyDown(EnumSet types, KeyBinding kb, boolean tickEnd, boolean isRepeat) - { - if(tickEnd && kb.keyCode == voice.keyCode) - { - voiceKeyDown = true; - } - } + public void keyDown(EnumSet types, KeyBinding kb, boolean tickEnd, boolean isRepeat) {} @Override - public void keyUp(EnumSet types, KeyBinding kb, boolean tickEnd) - { - if(tickEnd && kb.keyCode == voice.keyCode) - { - voiceKeyDown = false; - } - } + public void keyUp(EnumSet types, KeyBinding kb, boolean tickEnd) {} @Override public EnumSet ticks() diff --git a/common/mekanism/client/voice/VoiceInput.java b/common/mekanism/client/voice/VoiceInput.java index 26cb6aa67..1f71c812c 100644 --- a/common/mekanism/client/voice/VoiceInput.java +++ b/common/mekanism/client/voice/VoiceInput.java @@ -40,11 +40,11 @@ public class VoiceInput extends Thread while(voiceClient.running) { - if(MekanismKeyHandler.voiceKeyDown) + if(MekanismKeyHandler.voiceKey.pressed) { targetLine.flush(); - while(voiceClient.running && MekanismKeyHandler.voiceKeyDown) + while(voiceClient.running && MekanismKeyHandler.voiceKey.pressed) { try { int availableBytes = audioInput.available(); diff --git a/common/mekanism/common/EnergyNetwork.java b/common/mekanism/common/EnergyNetwork.java index 7f1feed0f..866b78efe 100644 --- a/common/mekanism/common/EnergyNetwork.java +++ b/common/mekanism/common/EnergyNetwork.java @@ -61,7 +61,7 @@ public class EnergyNetwork extends DynamicNetwork register(); } - public double getEnergyNeeded(List ignored) + public synchronized double getEnergyNeeded(List ignored) { double totalNeeded = 0; @@ -91,7 +91,7 @@ public class EnergyNetwork extends DynamicNetwork return totalNeeded; } - public double emit(double energyToSend, ArrayList ignored) + public synchronized double emit(double energyToSend, ArrayList ignored) { double energyAvailable = energyToSend; double sent; @@ -149,7 +149,7 @@ public class EnergyNetwork extends DynamicNetwork } @Override - public Set getAcceptors(Object... data) + public synchronized Set getAcceptors(Object... data) { Set toReturn = new HashSet(); @@ -201,9 +201,9 @@ public class EnergyNetwork extends DynamicNetwork } @Override - public void refresh() + public synchronized void refresh() { - Set> iterCables = (Set>) transmitters.clone(); + Set> iterCables = (Set>)transmitters.clone(); Iterator> it = iterCables.iterator(); possibleAcceptors.clear(); @@ -248,7 +248,7 @@ public class EnergyNetwork extends DynamicNetwork } @Override - public void merge(EnergyNetwork network) + public synchronized void merge(EnergyNetwork network) { if(network != null && network != this) { diff --git a/common/mekanism/common/FluidNetwork.java b/common/mekanism/common/FluidNetwork.java index c94638ee0..e17b36c90 100644 --- a/common/mekanism/common/FluidNetwork.java +++ b/common/mekanism/common/FluidNetwork.java @@ -52,7 +52,7 @@ public class FluidNetwork extends DynamicNetwork register(); } - public int getTotalNeeded(List ignored) + public synchronized int getTotalNeeded(List ignored) { int toReturn = 0; @@ -72,7 +72,7 @@ public class FluidNetwork extends DynamicNetwork return toReturn; } - public int emit(FluidStack fluidToSend, boolean doTransfer, TileEntity emitter) + public synchronized int emit(FluidStack fluidToSend, boolean doTransfer, TileEntity emitter) { List availableAcceptors = Arrays.asList(getAcceptors(fluidToSend).toArray()); @@ -115,7 +115,7 @@ public class FluidNetwork extends DynamicNetwork } @Override - public Set getAcceptors(Object... data) + public synchronized Set getAcceptors(Object... data) { FluidStack fluidToSend = (FluidStack)data[0]; Set toReturn = new HashSet(); @@ -132,7 +132,7 @@ public class FluidNetwork extends DynamicNetwork } @Override - public void refresh() + public synchronized void refresh() { Set> iterPipes = (Set>)transmitters.clone(); Iterator it = iterPipes.iterator(); @@ -171,7 +171,7 @@ public class FluidNetwork extends DynamicNetwork } @Override - public void merge(FluidNetwork network) + public synchronized void merge(FluidNetwork network) { if(network != null && network != this) { diff --git a/common/mekanism/common/InventoryNetwork.java b/common/mekanism/common/InventoryNetwork.java index d73b99e70..645a8137b 100644 --- a/common/mekanism/common/InventoryNetwork.java +++ b/common/mekanism/common/InventoryNetwork.java @@ -44,13 +44,13 @@ public class InventoryNetwork extends DynamicNetwork getAcceptors(Object... data) + public synchronized Set getAcceptors(Object... data) { return null; } @Override - public void refresh() + public synchronized void refresh() { Set> iterTransmitters = (Set>)transmitters.clone(); Iterator it = iterTransmitters.iterator(); @@ -88,7 +88,7 @@ public class InventoryNetwork extends DynamicNetwork