diff --git a/core/AppEng.java b/core/AppEng.java index 1be2ca0ae..92c63fa98 100644 --- a/core/AppEng.java +++ b/core/AppEng.java @@ -76,6 +76,7 @@ public class AppEng IntegrationSide.BOTH, "Thermal Expansion", "ThermalExpansion", "TE", // TE IntegrationSide.BOTH, "Mystcraft", "Mystcraft", "Mystcraft", // MC IntegrationSide.BOTH, "BuildCraft", "BuildCraft|Silicon", "BC", // BC + IntegrationSide.BOTH, "BuildCraft Power", null, "MJ", // BC IntegrationSide.BOTH, "Greg Tech", "gregtech_addon", "GT", // GT IntegrationSide.BOTH, "Universal Electricity", null, "UE", // UE IntegrationSide.BOTH, "Logistics Pipes", "LogisticsPipes|Main", "LP", // LP diff --git a/integration/abstraction/IBC.java b/integration/abstraction/IBC.java index 328d6e881..e2d7f3fde 100644 --- a/integration/abstraction/IBC.java +++ b/integration/abstraction/IBC.java @@ -7,8 +7,6 @@ import net.minecraft.tileentity.TileEntity; import net.minecraft.util.Icon; import net.minecraftforge.common.ForgeDirection; import appeng.api.parts.IFacadePart; -import appeng.tile.powersink.BaseBCperdition; -import appeng.tile.powersink.BuildCraft; public interface IBC { @@ -43,6 +41,4 @@ public interface IBC Icon getFacadeTexture(); - BaseBCperdition createPerdition(BuildCraft buildCraft); - } diff --git a/integration/abstraction/IMJ.java b/integration/abstraction/IMJ.java new file mode 100644 index 000000000..a9b20c03e --- /dev/null +++ b/integration/abstraction/IMJ.java @@ -0,0 +1,11 @@ +package appeng.integration.abstraction; + +import appeng.integration.modules.helpers.BaseBCperdition; +import appeng.tile.powersink.BuildCraft; + +public interface IMJ +{ + + BaseBCperdition createPerdition(BuildCraft buildCraft); + +} diff --git a/integration/modules/BC.java b/integration/modules/BC.java index 421063cfe..5712e77f2 100644 --- a/integration/modules/BC.java +++ b/integration/modules/BC.java @@ -15,9 +15,6 @@ import appeng.facade.FacadePart; import appeng.integration.IIntegrationModule; import appeng.integration.abstraction.IBC; import appeng.integration.modules.helpers.BCPipeHandler; -import appeng.tile.powersink.BCPerdition; -import appeng.tile.powersink.BaseBCperdition; -import appeng.tile.powersink.BuildCraft; import buildcraft.BuildCraftEnergy; import buildcraft.BuildCraftTransport; import buildcraft.api.tools.IToolWrench; @@ -223,10 +220,4 @@ public class BC implements IIntegrationModule, IBC // Pipe } - @Override - public BaseBCperdition createPerdition(BuildCraft buildCraft) - { - return new BCPerdition( buildCraft ); - } - } diff --git a/integration/modules/MJ.java b/integration/modules/MJ.java new file mode 100644 index 000000000..da0c42983 --- /dev/null +++ b/integration/modules/MJ.java @@ -0,0 +1,39 @@ +package appeng.integration.modules; + +import appeng.integration.IIntegrationModule; +import appeng.integration.abstraction.IMJ; +import appeng.integration.modules.helpers.BCPerdition; +import appeng.integration.modules.helpers.BaseBCperdition; +import appeng.tile.powersink.BuildCraft; +import buildcraft.api.power.IPowerReceptor; + +public class MJ implements IIntegrationModule, IMJ +{ + + public static MJ instance; + + @Override + public BaseBCperdition createPerdition(BuildCraft buildCraft) + { + if ( buildCraft instanceof IPowerReceptor ) + return new BCPerdition( buildCraft ); + return null; + } + + @Override + public void Init() throws Throwable + { + if ( ((Object) this) instanceof BCPerdition ) + { + + } + } + + @Override + public void PostInit() throws Throwable + { + // TODO Auto-generated method stub + + } + +} diff --git a/tile/powersink/BCPerdition.java b/integration/modules/helpers/BCPerdition.java similarity index 92% rename from tile/powersink/BCPerdition.java rename to integration/modules/helpers/BCPerdition.java index 5841f6d8b..23a6f91a3 100644 --- a/tile/powersink/BCPerdition.java +++ b/integration/modules/helpers/BCPerdition.java @@ -1,60 +1,60 @@ -package appeng.tile.powersink; - -import net.minecraft.nbt.NBTTagCompound; -import buildcraft.api.power.IPowerReceptor; -import buildcraft.api.power.PowerHandler; -import buildcraft.api.power.PowerHandler.PowerReceiver; -import buildcraft.api.power.PowerHandler.Type; - -public class BCPerdition extends BaseBCperdition -{ - - final protected PowerHandler bcPowerHandler; - - public BCPerdition(IPowerReceptor te) { - bcPowerHandler = new PowerHandler( te, Type.MACHINE ); - } - - @Override - public void Tick() - { - bcPowerHandler.update(); - } - - @Override - public void writeToNBT(NBTTagCompound data) - { - bcPowerHandler.writeToNBT( data, "bcPowerHandler" ); - } - - @Override - public void readFromNBT(NBTTagCompound data) - { - bcPowerHandler.readFromNBT( data, "bcPowerHandler" ); - } - - @Override - public PowerReceiver getPowerReceiver() - { - return bcPowerHandler.getPowerReceiver(); - } - - @Override - public double useEnergy(float min, float max, boolean doUse) - { - return bcPowerHandler.useEnergy( min, max, doUse ); - } - - @Override - public void addEnergy(float failed) - { - bcPowerHandler.addEnergy( failed ); - } - - @Override - public void configure(int i, int j, float f, int k) - { - bcPowerHandler.configure( i, j, f, k ); - } - +package appeng.integration.modules.helpers; + +import net.minecraft.nbt.NBTTagCompound; +import buildcraft.api.power.IPowerReceptor; +import buildcraft.api.power.PowerHandler; +import buildcraft.api.power.PowerHandler.PowerReceiver; +import buildcraft.api.power.PowerHandler.Type; + +public class BCPerdition extends BaseBCperdition +{ + + final protected PowerHandler bcPowerHandler; + + public BCPerdition(IPowerReceptor te) { + bcPowerHandler = new PowerHandler( te, Type.MACHINE ); + } + + @Override + public void Tick() + { + bcPowerHandler.update(); + } + + @Override + public void writeToNBT(NBTTagCompound data) + { + bcPowerHandler.writeToNBT( data, "bcPowerHandler" ); + } + + @Override + public void readFromNBT(NBTTagCompound data) + { + bcPowerHandler.readFromNBT( data, "bcPowerHandler" ); + } + + @Override + public PowerReceiver getPowerReceiver() + { + return bcPowerHandler.getPowerReceiver(); + } + + @Override + public double useEnergy(float min, float max, boolean doUse) + { + return bcPowerHandler.useEnergy( min, max, doUse ); + } + + @Override + public void addEnergy(float failed) + { + bcPowerHandler.addEnergy( failed ); + } + + @Override + public void configure(int i, int j, float f, int k) + { + bcPowerHandler.configure( i, j, f, k ); + } + } \ No newline at end of file diff --git a/tile/powersink/BaseBCperdition.java b/integration/modules/helpers/BaseBCperdition.java similarity index 91% rename from tile/powersink/BaseBCperdition.java rename to integration/modules/helpers/BaseBCperdition.java index 8fc55c6fa..266e14109 100644 --- a/tile/powersink/BaseBCperdition.java +++ b/integration/modules/helpers/BaseBCperdition.java @@ -1,24 +1,24 @@ -package appeng.tile.powersink; - -import appeng.tile.events.AETileEventHandler; -import appeng.tile.events.TileEventType; -import buildcraft.api.power.PowerHandler.PowerReceiver; -import cpw.mods.fml.common.Optional.Method; - -public abstract class BaseBCperdition extends AETileEventHandler -{ - - public BaseBCperdition() { - super( TileEventType.TICK, TileEventType.WORLD_NBT ); - } - - @Method(modid = "BuildCraftAPI|power") - public abstract PowerReceiver getPowerReceiver(); - - public abstract double useEnergy(float f, float requred, boolean b); - - public abstract void addEnergy(float failed); - - public abstract void configure(int i, int j, float f, int k); - -} +package appeng.integration.modules.helpers; + +import appeng.tile.events.AETileEventHandler; +import appeng.tile.events.TileEventType; +import buildcraft.api.power.PowerHandler.PowerReceiver; +import cpw.mods.fml.common.Optional.Method; + +public abstract class BaseBCperdition extends AETileEventHandler +{ + + public BaseBCperdition() { + super( TileEventType.TICK, TileEventType.WORLD_NBT ); + } + + @Method(modid = "BuildCraftAPI|power") + public abstract PowerReceiver getPowerReceiver(); + + public abstract double useEnergy(float f, float requred, boolean b); + + public abstract void addEnergy(float failed); + + public abstract void configure(int i, int j, float f, int k); + +} diff --git a/tile/powersink/BuildCraft.java b/tile/powersink/BuildCraft.java index 6b8a4b500..b17e851de 100644 --- a/tile/powersink/BuildCraft.java +++ b/tile/powersink/BuildCraft.java @@ -4,12 +4,12 @@ import net.minecraft.world.World; import net.minecraftforge.common.ForgeDirection; import appeng.api.config.PowerUnits; import appeng.core.AppEng; -import appeng.integration.abstraction.IBC; +import appeng.integration.abstraction.IMJ; +import appeng.integration.modules.helpers.BaseBCperdition; import appeng.util.Platform; import buildcraft.api.power.IPowerReceptor; import buildcraft.api.power.PowerHandler; import buildcraft.api.power.PowerHandler.PowerReceiver; -import cpw.mods.fml.common.Loader; import cpw.mods.fml.common.Optional.Interface; import cpw.mods.fml.common.Optional.Method; @@ -24,16 +24,14 @@ public abstract class BuildCraft extends AERootPoweredTile implements IPowerRece { try { - if ( Loader.isModLoaded( "BuildCraftAPI|power" ) ) + if ( AppEng.instance.isIntegrationEnabled( "MJ" ) ) { - if ( AppEng.instance.isIntegrationEnabled( "BC" ) ) + IMJ mjIntegration = (IMJ) AppEng.instance.getIntegration( "MJ" ); + if ( mjIntegration != null ) { - IBC bcIntegration = (IBC) AppEng.instance.getIntegration( "BC" ); - if ( bcIntegration != null ) - { - addNewHandler( bcPowerWrapper = bcIntegration.createPerdition( this ) ); + addNewHandler( bcPowerWrapper = mjIntegration.createPerdition( this ) ); + if ( bcPowerWrapper != null ) bcPowerWrapper.configure( 1, 380, 1.0f / 5.0f, 1000 ); - } } } }