Some work on charge slots
This commit is contained in:
parent
1551164cd6
commit
a74910e763
3 changed files with 73 additions and 0 deletions
|
@ -1,6 +1,8 @@
|
||||||
package techreborn.tiles;
|
package techreborn.tiles;
|
||||||
|
|
||||||
import ic2.api.energy.tile.IEnergyTile;
|
import ic2.api.energy.tile.IEnergyTile;
|
||||||
|
import ic2.api.item.ElectricItem;
|
||||||
|
import ic2.api.item.IElectricItem;
|
||||||
import ic2.api.tile.IWrenchable;
|
import ic2.api.tile.IWrenchable;
|
||||||
import net.minecraft.entity.player.EntityPlayer;
|
import net.minecraft.entity.player.EntityPlayer;
|
||||||
import net.minecraft.inventory.IInventory;
|
import net.minecraft.inventory.IInventory;
|
||||||
|
@ -9,6 +11,7 @@ import net.minecraft.item.ItemStack;
|
||||||
import net.minecraft.nbt.NBTTagCompound;
|
import net.minecraft.nbt.NBTTagCompound;
|
||||||
import net.minecraftforge.common.util.ForgeDirection;
|
import net.minecraftforge.common.util.ForgeDirection;
|
||||||
import reborncore.common.util.Inventory;
|
import reborncore.common.util.Inventory;
|
||||||
|
import techreborn.api.power.IEnergyInterfaceItem;
|
||||||
import techreborn.api.recipe.RecipeCrafter;
|
import techreborn.api.recipe.RecipeCrafter;
|
||||||
import techreborn.api.upgrade.UpgradeHandler;
|
import techreborn.api.upgrade.UpgradeHandler;
|
||||||
import techreborn.init.ModBlocks;
|
import techreborn.init.ModBlocks;
|
||||||
|
@ -40,6 +43,28 @@ public class TileAlloySmelter extends TilePowerAcceptor implements IWrenchable,
|
||||||
super.updateEntity();
|
super.updateEntity();
|
||||||
crafter.updateEntity();
|
crafter.updateEntity();
|
||||||
upgrades.tick();
|
upgrades.tick();
|
||||||
|
charge(3);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void charge(int slot)
|
||||||
|
{
|
||||||
|
if(getStackInSlot(slot) != null)
|
||||||
|
{
|
||||||
|
if(getStackInSlot(slot).getItem() instanceof IElectricItem)
|
||||||
|
{
|
||||||
|
if(getEnergy() != capacity)
|
||||||
|
{
|
||||||
|
ItemStack stack = inventory.getStackInSlot(slot);
|
||||||
|
double MaxCharge = ((IElectricItem) stack.getItem()).getMaxCharge(stack);
|
||||||
|
double CurrentCharge = ElectricItem.manager.getCharge(stack);
|
||||||
|
if (CurrentCharge != 0)
|
||||||
|
{
|
||||||
|
ElectricItem.manager.discharge(stack, 5, 4, false, false, false);
|
||||||
|
addEnergy(5);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -1,6 +1,8 @@
|
||||||
package techreborn.tiles;
|
package techreborn.tiles;
|
||||||
|
|
||||||
import ic2.api.energy.tile.IEnergyTile;
|
import ic2.api.energy.tile.IEnergyTile;
|
||||||
|
import ic2.api.item.ElectricItem;
|
||||||
|
import ic2.api.item.IElectricItem;
|
||||||
import ic2.api.tile.IWrenchable;
|
import ic2.api.tile.IWrenchable;
|
||||||
import net.minecraft.entity.player.EntityPlayer;
|
import net.minecraft.entity.player.EntityPlayer;
|
||||||
import net.minecraft.inventory.IInventory;
|
import net.minecraft.inventory.IInventory;
|
||||||
|
@ -35,6 +37,28 @@ public class TileAssemblingMachine extends TilePowerAcceptor implements IWrencha
|
||||||
public void updateEntity() {
|
public void updateEntity() {
|
||||||
super.updateEntity();
|
super.updateEntity();
|
||||||
crafter.updateEntity();
|
crafter.updateEntity();
|
||||||
|
charge(3);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void charge(int slot)
|
||||||
|
{
|
||||||
|
if(getStackInSlot(slot) != null)
|
||||||
|
{
|
||||||
|
if(getStackInSlot(slot).getItem() instanceof IElectricItem)
|
||||||
|
{
|
||||||
|
if(getEnergy() != getMaxPower())
|
||||||
|
{
|
||||||
|
ItemStack stack = inventory.getStackInSlot(slot);
|
||||||
|
double MaxCharge = ((IElectricItem) stack.getItem()).getMaxCharge(stack);
|
||||||
|
double CurrentCharge = ElectricItem.manager.getCharge(stack);
|
||||||
|
if (CurrentCharge != 0)
|
||||||
|
{
|
||||||
|
ElectricItem.manager.discharge(stack, 5, 4, false, false, false);
|
||||||
|
addEnergy(5);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -1,6 +1,8 @@
|
||||||
package techreborn.tiles;
|
package techreborn.tiles;
|
||||||
|
|
||||||
import ic2.api.energy.tile.IEnergyTile;
|
import ic2.api.energy.tile.IEnergyTile;
|
||||||
|
import ic2.api.item.ElectricItem;
|
||||||
|
import ic2.api.item.IElectricItem;
|
||||||
import ic2.api.tile.IWrenchable;
|
import ic2.api.tile.IWrenchable;
|
||||||
import net.minecraft.entity.player.EntityPlayer;
|
import net.minecraft.entity.player.EntityPlayer;
|
||||||
import net.minecraft.inventory.IInventory;
|
import net.minecraft.inventory.IInventory;
|
||||||
|
@ -45,6 +47,28 @@ public class TileCentrifuge extends TilePowerAcceptor implements IWrenchable, IE
|
||||||
public void updateEntity() {
|
public void updateEntity() {
|
||||||
super.updateEntity();
|
super.updateEntity();
|
||||||
crafter.updateEntity();
|
crafter.updateEntity();
|
||||||
|
charge(6);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void charge(int slot)
|
||||||
|
{
|
||||||
|
if(getStackInSlot(slot) != null)
|
||||||
|
{
|
||||||
|
if(getStackInSlot(slot).getItem() instanceof IElectricItem)
|
||||||
|
{
|
||||||
|
if(getEnergy() != getMaxPower())
|
||||||
|
{
|
||||||
|
ItemStack stack = inventory.getStackInSlot(slot);
|
||||||
|
double MaxCharge = ((IElectricItem) stack.getItem()).getMaxCharge(stack);
|
||||||
|
double CurrentCharge = ElectricItem.manager.getCharge(stack);
|
||||||
|
if (CurrentCharge != 0)
|
||||||
|
{
|
||||||
|
ElectricItem.manager.discharge(stack, 5, 4, false, false, false);
|
||||||
|
addEnergy(5);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue