diff --git a/build.gradle b/build.gradle index e42787d25..a0be33cda 100755 --- a/build.gradle +++ b/build.gradle @@ -27,10 +27,15 @@ repositories { maven { url "http://dvs1.progwml6.com/files/maven" } + maven { + name = "ic2" + url = "http://maven.ic2.player.to/" + } } dependencies { deobfCompile "mezz.jei:jei_1.9.4:3.4.+" + compile "net.industrial-craft:industrialcraft-2:2.5.13-ex19:api" } processResources { diff --git a/src/main/java/refinedstorage/tile/TileDiskDrive.java b/src/main/java/refinedstorage/tile/TileDiskDrive.java index dccdc198b..b749d7d72 100755 --- a/src/main/java/refinedstorage/tile/TileDiskDrive.java +++ b/src/main/java/refinedstorage/tile/TileDiskDrive.java @@ -83,6 +83,12 @@ public class TileDiskDrive extends TileMachine implements IStorageProvider, ISto @Override public void updateMachine() { + } + + @Override + public void update() { + super.update(); + for (int i = 0; i < disks.getSlots(); ++i) { Storage storage = getStorage(i); diff --git a/src/main/java/refinedstorage/tile/TileStorage.java b/src/main/java/refinedstorage/tile/TileStorage.java index b4506df23..c066515bb 100755 --- a/src/main/java/refinedstorage/tile/TileStorage.java +++ b/src/main/java/refinedstorage/tile/TileStorage.java @@ -69,6 +69,12 @@ public class TileStorage extends TileMachine implements IStorageProvider, IStora @Override public void updateMachine() { + } + + @Override + public void update() { + super.update(); + if (storage == null && storageTag != null) { storage = new Storage(); } diff --git a/src/main/java/refinedstorage/tile/controller/TileController.java b/src/main/java/refinedstorage/tile/controller/TileController.java index 2ca7e324d..ccb40025f 100755 --- a/src/main/java/refinedstorage/tile/controller/TileController.java +++ b/src/main/java/refinedstorage/tile/controller/TileController.java @@ -2,6 +2,8 @@ package refinedstorage.tile.controller; import cofh.api.energy.EnergyStorage; import cofh.api.energy.IEnergyReceiver; +import ic2.api.energy.tile.IEnergyEmitter; +import ic2.api.energy.tile.IEnergySink; import io.netty.buffer.ByteBuf; import net.minecraft.block.state.IBlockState; import net.minecraft.entity.player.EntityPlayer; @@ -35,7 +37,7 @@ import refinedstorage.tile.config.RedstoneMode; import java.util.*; -public class TileController extends TileBase implements IEnergyReceiver, ISynchronizedContainer, IRedstoneModeConfig { +public class TileController extends TileBase implements IEnergyReceiver, IEnergySink, ISynchronizedContainer, IRedstoneModeConfig { public static final int ENERGY_CAPACITY = 32000; public static final String NBT_CRAFTING_TASKS = "CraftingTasks"; @@ -681,4 +683,24 @@ public class TileController extends TileBase implements IEnergyReceiver, ISynchr public Class getContainer() { return ContainerController.class; } + + @Override + public double getDemandedEnergy() { + return ENERGY_CAPACITY; + } + + @Override + public int getSinkTier() { + return Integer.MAX_VALUE; + } + + @Override + public double injectEnergy(EnumFacing facing, double energy, double voltage) { + return this.energy.receiveEnergy((int) energy, false); + } + + @Override + public boolean acceptsEnergyFrom(IEnergyEmitter emitter, EnumFacing facing) { + return true; + } }