Made battery store energy

This commit is contained in:
Calclavia 2013-12-31 00:39:23 +08:00
parent e1a16d4bcd
commit cb9d7a60cb

View file

@ -9,16 +9,15 @@ import java.util.Set;
import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.nbt.NBTTagCompound; import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.tileentity.TileEntity;
import net.minecraftforge.common.ForgeDirection; import net.minecraftforge.common.ForgeDirection;
import resonantinduction.ResonantInduction; import resonantinduction.ResonantInduction;
import universalelectricity.api.UniversalClass; import universalelectricity.api.UniversalClass;
import universalelectricity.api.energy.EnergyStorageHandler;
import universalelectricity.api.energy.IEnergyContainer; import universalelectricity.api.energy.IEnergyContainer;
import universalelectricity.api.energy.IEnergyInterface; import universalelectricity.api.energy.IEnergyInterface;
import universalelectricity.api.vector.Vector3;
import calclavia.lib.network.IPacketReceiver; import calclavia.lib.network.IPacketReceiver;
import calclavia.lib.network.IPacketSender; import calclavia.lib.network.IPacketSender;
import calclavia.lib.prefab.tile.TileAdvanced; import calclavia.lib.prefab.tile.TileElectrical;
import com.google.common.io.ByteArrayDataInput; import com.google.common.io.ByteArrayDataInput;
@ -31,7 +30,7 @@ import cpw.mods.fml.common.network.Player;
* @author Calclavia * @author Calclavia
*/ */
@UniversalClass @UniversalClass
public class TileBattery extends TileAdvanced implements IPacketSender, IPacketReceiver, IEnergyInterface, IEnergyContainer public class TileBattery extends TileElectrical implements IPacketSender, IPacketReceiver, IEnergyInterface, IEnergyContainer
{ {
public static final long STORAGE = 100000000; public static final long STORAGE = 100000000;
@ -43,6 +42,11 @@ public class TileBattery extends TileAdvanced implements IPacketSender, IPacketR
public int clientCells; public int clientCells;
public float clientMaxEnergy; public float clientMaxEnergy;
public TileBattery()
{
this.energy = new EnergyStorageHandler(STORAGE);
}
@Override @Override
public void initiate() public void initiate()
{ {
@ -53,15 +57,17 @@ public class TileBattery extends TileAdvanced implements IPacketSender, IPacketR
{ {
if (!this.worldObj.isRemote) if (!this.worldObj.isRemote)
{ {
/*for (ForgeDirection dir : ForgeDirection.VALID_DIRECTIONS) /*
{ * for (ForgeDirection dir : ForgeDirection.VALID_DIRECTIONS)
TileEntity tile = new Vector3(this).modifyPositionFromSide(dir).getTileEntity(this.worldObj); * {
* TileEntity tile = new
if (tile instanceof TileBattery) * Vector3(this).modifyPositionFromSide(dir).getTileEntity(this.worldObj);
{ * if (tile instanceof TileBattery)
this.structure.merge((TileBattery) tile); * {
} * this.structure.merge((TileBattery) tile);
}*/ * }
* }
*/
} }
} }
@ -72,21 +78,10 @@ public class TileBattery extends TileAdvanced implements IPacketSender, IPacketR
if (!this.worldObj.isRemote) if (!this.worldObj.isRemote)
{ {
for (EntityPlayer player : this.playersUsing)
{
PacketDispatcher.sendPacketToPlayer(ResonantInduction.PACKET_TILE.getPacket(this, this.getPacketData(0).toArray()), (Player) player);
}
this.produce(); this.produce();
} }
} }
private void produce()
{
}
public float getTransferThreshhold() public float getTransferThreshhold()
{ {
return this.structure.getVolume() * 50; return this.structure.getVolume() * 50;
@ -144,34 +139,4 @@ public class TileBattery extends TileAdvanced implements IPacketSender, IPacketR
{ {
return true; return true;
} }
@Override
public void setEnergy(ForgeDirection from, long energy)
{
this.structure.setEnergy(energy);
}
@Override
public long getEnergy(ForgeDirection from)
{
return this.structure.getEnergy();
}
@Override
public long getEnergyCapacity(ForgeDirection from)
{
return this.structure.getEnergyCapacity();
}
@Override
public long onReceiveEnergy(ForgeDirection from, long receive, boolean doReceive)
{
return this.structure.receiveEnergy(receive, doReceive);
}
@Override
public long onExtractEnergy(ForgeDirection from, long extract, boolean doExtract)
{
return this.structure.extractEnergy(extract, doExtract);
}
} }