A few fixes

This commit is contained in:
Aidan C. Brady 2013-12-03 11:07:03 -05:00
parent 9a4147ab7c
commit 5e9a282eff
3 changed files with 12 additions and 36 deletions

View file

@ -366,7 +366,6 @@ public class EnergyNetwork extends DynamicNetwork<TileEntity, EnergyNetwork, Dou
if(needsUpdate)
{
System.out.println("sent update");
MinecraftForge.EVENT_BUS.post(new EnergyTransferEvent(this, currentPowerScale));
needsUpdate = false;
}

View file

@ -18,6 +18,7 @@ import mekanism.api.transmitters.TransmissionType;
import mekanism.client.render.RenderPartTransmitter;
import mekanism.common.EnergyNetwork;
import mekanism.common.Mekanism;
import mekanism.common.util.CableUtils;
import net.minecraft.tileentity.TileEntity;
import net.minecraftforge.common.ForgeDirection;
import net.minecraftforge.common.MinecraftForge;
@ -64,41 +65,7 @@ public class PartUniversalCable extends PartTransmitter<EnergyNetwork, Double> i
@Override
public boolean isValidAcceptor(TileEntity acceptor, ForgeDirection side)
{
if(acceptor instanceof ITransmitter)
return false;
//Mekanism
if(acceptor instanceof ICableOutputter && ((ICableOutputter)acceptor).canOutputTo(side.getOpposite()))
return true;
if(acceptor instanceof IStrictEnergyAcceptor && ((IStrictEnergyAcceptor)acceptor).canReceiveEnergy(side.getOpposite()))
return true;
//UE
if(acceptor instanceof IElectrical && ((IElectrical)acceptor).canConnect(side.getOpposite()))
return true;
//IC2
if(Mekanism.hooks.IC2Loaded)
{
if(acceptor instanceof IEnergySource && ((IEnergySource)acceptor).emitsEnergyTo(tile(), side.getOpposite()))
return true;
if(acceptor instanceof IEnergyAcceptor && ((IEnergyAcceptor)acceptor).acceptsEnergyFrom(tile(), side.getOpposite()))
return true;
}
//Buildcraft
if(Mekanism.hooks.BuildCraftLoaded)
{
if(acceptor instanceof IPowerReceptor && ((IPowerReceptor)acceptor).getPowerReceiver(side.getOpposite()) != null)
return true;
if(acceptor instanceof IPowerEmitter && ((IPowerEmitter)acceptor).canEmitPowerFrom(side.getOpposite()))
return true;
}
return false;
return CableUtils.canConnectToAcceptor(side, acceptor);
}
@Override

View file

@ -150,8 +150,18 @@ public final class CableUtils
*/
public static boolean canConnectToAcceptor(ForgeDirection side, TileEntity tile)
{
if(tile == null)
{
return false;
}
TileEntity tileEntity = Object3D.get(tile).getFromSide(side).getTileEntity(tile.worldObj);
if(tileEntity instanceof ITransmitter)
{
return false;
}
if(tileEntity instanceof IStrictEnergyAcceptor && ((IStrictEnergyAcceptor)tileEntity).canReceiveEnergy(side.getOpposite()))
{
return true;