diff --git a/core/Registration.java b/core/Registration.java index 39871b1d5..9b18b0e86 100644 --- a/core/Registration.java +++ b/core/Registration.java @@ -466,15 +466,25 @@ public class Registration recipeHandler.parseRecipes( new JarLoader( "/assets/appliedenergistics2/recipes/" ), "index.recipe" ); IPartHelper ph = AEApi.instance().partHelper(); - ph.registerNewLayer( "appeng.api.parts.layers.LayerIEnergySink", "ic2.api.energy.tile.IEnergySink" ); - ph.registerNewLayer( "appeng.api.parts.layers.LayerIEnergySource", "ic2.api.energy.tile.IEnergySource" ); ph.registerNewLayer( "appeng.api.parts.layers.LayerISidedInventory", "net.minecraft.inventory.ISidedInventory" ); - ph.registerNewLayer( "appeng.api.parts.layers.LayerIPowerEmitter", "buildcraft.api.power.IPowerEmitter" ); - ph.registerNewLayer( "appeng.api.parts.layers.LayerIPowerReceptor", "buildcraft.api.power.IPowerReceptor" ); ph.registerNewLayer( "appeng.api.parts.layers.LayerIFluidHandler", "net.minecraftforge.fluids.IFluidHandler" ); - ph.registerNewLayer( "appeng.api.parts.layers.LayerIEnergyHandler", "cofh.api.energy.IEnergyHandler" ); ph.registerNewLayer( "appeng.api.parts.layers.LayerITileStorageMonitorable", "appeng.api.implementations.tiles.ITileStorageMonitorable" ); + if ( AppEng.instance.isIntegrationEnabled( "IC2" ) ) + { + ph.registerNewLayer( "appeng.api.parts.layers.LayerIEnergySink", "ic2.api.energy.tile.IEnergySink" ); + ph.registerNewLayer( "appeng.api.parts.layers.LayerIEnergySource", "ic2.api.energy.tile.IEnergySource" ); + } + + if ( AppEng.instance.isIntegrationEnabled( "MJ" ) ) + { + ph.registerNewLayer( "appeng.api.parts.layers.LayerIPowerEmitter", "buildcraft.api.power.IPowerEmitter" ); + ph.registerNewLayer( "appeng.api.parts.layers.LayerIPowerReceptor", "buildcraft.api.power.IPowerReceptor" ); + } + + if ( AppEng.instance.isIntegrationEnabled( "RF" ) ) + ph.registerNewLayer( "appeng.api.parts.layers.LayerIEnergyHandler", "cofh.api.energy.IEnergyHandler" ); + FMLCommonHandler.instance().bus().register( TickHandler.instance ); MinecraftForge.EVENT_BUS.register( new PartPlacement() ); diff --git a/integration/modules/RF.java b/integration/modules/RF.java index 61114cfc9..ba2eddff6 100644 --- a/integration/modules/RF.java +++ b/integration/modules/RF.java @@ -16,6 +16,7 @@ public class RF extends BaseModule implements IIntegrationModule public RF() { TestClass( cofh.api.energy.IEnergyHandler.class ); + TestClass( cofh.api.energy.IEnergyConnection.class ); } @Override diff --git a/integration/modules/helpers/NullRFHandler.java b/integration/modules/helpers/NullRFHandler.java index 2174c19c5..10b9662e9 100644 --- a/integration/modules/helpers/NullRFHandler.java +++ b/integration/modules/helpers/NullRFHandler.java @@ -1,4 +1,5 @@ package appeng.integration.modules.helpers; + import net.minecraftforge.common.util.ForgeDirection; import cofh.api.energy.IEnergyHandler; @@ -29,15 +30,10 @@ public class NullRFHandler implements IEnergyHandler return 0; } - @Deprecated - public boolean canInterface(ForgeDirection from) + @Override + public boolean canConnectEnergy(ForgeDirection from) { return true; } - @Override - public boolean canConnectEnergy(ForgeDirection from) { - return true; - } - } diff --git a/parts/p2p/PartP2PRFPower.java b/parts/p2p/PartP2PRFPower.java index 2cab3fe62..23ccbdf8c 100644 --- a/parts/p2p/PartP2PRFPower.java +++ b/parts/p2p/PartP2PRFPower.java @@ -236,7 +236,7 @@ public class PartP2PRFPower extends PartP2PTunnel implements cof cachedTarget = true; } - if ( outputTarget == null ) + if ( outputTarget == null || !outputTarget.canConnectEnergy( side.getOpposite() ) ) return myNullHandler; return outputTarget; @@ -244,14 +244,9 @@ public class PartP2PRFPower extends PartP2PTunnel implements cof return myNullHandler; } - @Deprecated - public boolean canInterface(ForgeDirection from) + @Override + public boolean canConnectEnergy(ForgeDirection from) { return true; } - - @Override - public boolean canConnectEnergy(ForgeDirection from) { - return true; - } } diff --git a/tile/powersink/RedstoneFlux.java b/tile/powersink/RedstoneFlux.java index 5faebb49f..50f4ff2ee 100644 --- a/tile/powersink/RedstoneFlux.java +++ b/tile/powersink/RedstoneFlux.java @@ -34,12 +34,6 @@ public abstract class RedstoneFlux extends RotaryCraft implements IEnergyHandler return 0; } - @Deprecated - final public boolean canInterface(ForgeDirection from) - { - return canConnectEnergy(from); - } - final public boolean canConnectEnergy(ForgeDirection from) { return internalCanAcceptPower && getPowerSides().contains( from );