IC2 (EU) support.
This commit is contained in:
@@ -9,6 +9,7 @@
|
|||||||
- Added a debug storage disk
|
- Added a debug storage disk
|
||||||
- Added tooltip to solderer progress bar that shows progress percentage
|
- Added tooltip to solderer progress bar that shows progress percentage
|
||||||
- Added support for the Tesla energy system
|
- Added support for the Tesla energy system
|
||||||
|
- Added support for the IC2 (EU) energy system
|
||||||
- Tweaked grid GUI
|
- Tweaked grid GUI
|
||||||
|
|
||||||
### 0.8.3
|
### 0.8.3
|
||||||
|
|||||||
@@ -30,11 +30,16 @@ repositories {
|
|||||||
maven {
|
maven {
|
||||||
url "http://maven.epoxide.xyz"
|
url "http://maven.epoxide.xyz"
|
||||||
}
|
}
|
||||||
|
maven {
|
||||||
|
name = "ic2"
|
||||||
|
url = "http://maven.ic2.player.to/"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
dependencies {
|
dependencies {
|
||||||
deobfCompile "mezz.jei:jei_1.10:3.7.+"
|
deobfCompile "mezz.jei:jei_1.10:3.7.+"
|
||||||
compile "net.darkhax.tesla:Tesla:1.9.4-1.1.0.24"
|
compile "net.darkhax.tesla:Tesla:1.9.4-1.1.0.24"
|
||||||
|
compile "net.industrial-craft:industrialcraft-2:2.6.7-ex110:api"
|
||||||
}
|
}
|
||||||
|
|
||||||
processResources {
|
processResources {
|
||||||
|
|||||||
@@ -1,6 +1,8 @@
|
|||||||
package refinedstorage.item;
|
package refinedstorage.item;
|
||||||
|
|
||||||
import cofh.api.energy.ItemEnergyContainer;
|
import cofh.api.energy.ItemEnergyContainer;
|
||||||
|
import ic2.api.item.IElectricItemManager;
|
||||||
|
import ic2.api.item.ISpecialElectricItem;
|
||||||
import net.darkhax.tesla.api.ITeslaConsumer;
|
import net.darkhax.tesla.api.ITeslaConsumer;
|
||||||
import net.darkhax.tesla.api.ITeslaHolder;
|
import net.darkhax.tesla.api.ITeslaHolder;
|
||||||
import net.darkhax.tesla.capability.TeslaCapabilities;
|
import net.darkhax.tesla.capability.TeslaCapabilities;
|
||||||
@@ -28,7 +30,7 @@ import refinedstorage.tile.grid.TileGrid;
|
|||||||
import javax.annotation.Nullable;
|
import javax.annotation.Nullable;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
public class ItemWirelessGrid extends ItemEnergyContainer {
|
public class ItemWirelessGrid extends ItemEnergyContainer implements ISpecialElectricItem, IElectricItemManager {
|
||||||
public static final int TYPE_NORMAL = 0;
|
public static final int TYPE_NORMAL = 0;
|
||||||
public static final int TYPE_CREATIVE = 1;
|
public static final int TYPE_CREATIVE = 1;
|
||||||
|
|
||||||
@@ -220,6 +222,56 @@ public class ItemWirelessGrid extends ItemEnergyContainer {
|
|||||||
return getUnlocalizedName() + "." + stack.getItemDamage();
|
return getUnlocalizedName() + "." + stack.getItemDamage();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public IElectricItemManager getManager(ItemStack stack) {
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public double charge(ItemStack stack, double amount, int tier, boolean ignoreTransferLimit, boolean simulate) {
|
||||||
|
return receiveEnergy(stack, (int) amount, simulate);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public double discharge(ItemStack stack, double amount, int tier, boolean ignoreTransferLimit, boolean externally, boolean simulate) {
|
||||||
|
return extractEnergy(stack, (int) amount, simulate);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public double getCharge(ItemStack stack) {
|
||||||
|
return getEnergyStored(stack);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public double getMaxCharge(ItemStack stack) {
|
||||||
|
return getMaxEnergyStored(stack);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean canUse(ItemStack stack, double amount) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean use(ItemStack stack, double amount, EntityLivingBase entity) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void chargeFromArmor(ItemStack stack, EntityLivingBase entity) {
|
||||||
|
// NO OP
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String getToolTip(ItemStack stack) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getTier(ItemStack stack) {
|
||||||
|
return Integer.MAX_VALUE;
|
||||||
|
}
|
||||||
|
|
||||||
class TeslaEnergy implements ITeslaHolder, ITeslaConsumer {
|
class TeslaEnergy implements ITeslaHolder, ITeslaConsumer {
|
||||||
private ItemStack stack;
|
private ItemStack stack;
|
||||||
|
|
||||||
|
|||||||
@@ -2,6 +2,7 @@ package refinedstorage.tile.controller;
|
|||||||
|
|
||||||
import cofh.api.energy.EnergyStorage;
|
import cofh.api.energy.EnergyStorage;
|
||||||
import cofh.api.energy.IEnergyReceiver;
|
import cofh.api.energy.IEnergyReceiver;
|
||||||
|
import ic2.api.energy.prefab.BasicSink;
|
||||||
import io.netty.buffer.ByteBuf;
|
import io.netty.buffer.ByteBuf;
|
||||||
import net.darkhax.tesla.api.ITeslaConsumer;
|
import net.darkhax.tesla.api.ITeslaConsumer;
|
||||||
import net.darkhax.tesla.api.ITeslaHolder;
|
import net.darkhax.tesla.api.ITeslaHolder;
|
||||||
@@ -97,6 +98,19 @@ public class TileController extends TileBase implements INetworkMaster, IEnergyR
|
|||||||
private List<ICraftingTask> craftingTasksToCancel = new ArrayList<ICraftingTask>();
|
private List<ICraftingTask> craftingTasksToCancel = new ArrayList<ICraftingTask>();
|
||||||
|
|
||||||
private EnergyStorage energy = new EnergyStorage(RefinedStorage.INSTANCE.controller);
|
private EnergyStorage energy = new EnergyStorage(RefinedStorage.INSTANCE.controller);
|
||||||
|
private BasicSink ic2Energy = new BasicSink(this, energy.getMaxEnergyStored(), Integer.MAX_VALUE) {
|
||||||
|
@Override
|
||||||
|
public double getDemandedEnergy() {
|
||||||
|
return Math.max(0.0D, (double) energy.getMaxEnergyStored() - (double) energy.getEnergyStored());
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public double injectEnergy(EnumFacing directionFrom, double amount, double voltage) {
|
||||||
|
energy.setEnergyStored(energy.getEnergyStored() + (int) amount);
|
||||||
|
|
||||||
|
return 0.0D;
|
||||||
|
}
|
||||||
|
};
|
||||||
private int energyUsage;
|
private int energyUsage;
|
||||||
|
|
||||||
private int lastEnergyDisplay;
|
private int lastEnergyDisplay;
|
||||||
@@ -128,6 +142,8 @@ public class TileController extends TileBase implements INetworkMaster, IEnergyR
|
|||||||
@Override
|
@Override
|
||||||
public void update() {
|
public void update() {
|
||||||
if (!worldObj.isRemote) {
|
if (!worldObj.isRemote) {
|
||||||
|
ic2Energy.update();
|
||||||
|
|
||||||
for (INetworkNode node : nodesToAdd) {
|
for (INetworkNode node : nodesToAdd) {
|
||||||
nodes.add(node);
|
nodes.add(node);
|
||||||
|
|
||||||
@@ -222,6 +238,13 @@ public class TileController extends TileBase implements INetworkMaster, IEnergyR
|
|||||||
super.update();
|
super.update();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void invalidate() {
|
||||||
|
super.invalidate();
|
||||||
|
|
||||||
|
ic2Energy.invalidate();
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public List<INetworkNode> getNodes() {
|
public List<INetworkNode> getNodes() {
|
||||||
return nodes;
|
return nodes;
|
||||||
@@ -262,6 +285,8 @@ public class TileController extends TileBase implements INetworkMaster, IEnergyR
|
|||||||
@Override
|
@Override
|
||||||
public void onChunkUnload() {
|
public void onChunkUnload() {
|
||||||
disconnectNodes();
|
disconnectNodes();
|
||||||
|
|
||||||
|
ic2Energy.invalidate();
|
||||||
}
|
}
|
||||||
|
|
||||||
public IGroupedStorage getStorage() {
|
public IGroupedStorage getStorage() {
|
||||||
|
|||||||
Reference in New Issue
Block a user