From dc3df3edd5843bde0c1335d6a8e460b2c832aa48 Mon Sep 17 00:00:00 2001 From: Foghrye4 Date: Sat, 17 Jun 2017 08:12:18 +0300 Subject: full project files --- ihl/flexible_cable/SubAnchorEnergyNetNode.java | 346 ------------------------- 1 file changed, 346 deletions(-) delete mode 100644 ihl/flexible_cable/SubAnchorEnergyNetNode.java (limited to 'ihl/flexible_cable/SubAnchorEnergyNetNode.java') diff --git a/ihl/flexible_cable/SubAnchorEnergyNetNode.java b/ihl/flexible_cable/SubAnchorEnergyNetNode.java deleted file mode 100644 index daada72..0000000 --- a/ihl/flexible_cable/SubAnchorEnergyNetNode.java +++ /dev/null @@ -1,346 +0,0 @@ -package ihl.flexible_cable; - -import java.util.HashSet; -import java.util.Set; - -import ic2.api.energy.EnergyNet; -import ic2.api.energy.event.EnergyTileLoadEvent; -import ic2.api.energy.event.EnergyTileUnloadEvent; -import ic2.api.energy.tile.IEnergySink; -import ic2.api.energy.tile.IEnergySource; -import ic2.core.IC2; -import ihl.IHLMod; -import ihl.interfaces.IEnergyNetNode; -import ihl.utils.IHLUtils; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.nbt.NBTTagCompound; -import net.minecraft.nbt.NBTTagList; -import net.minecraft.tileentity.TileEntity; -import net.minecraftforge.common.MinecraftForge; -import net.minecraftforge.common.util.ForgeDirection; - -public class SubAnchorEnergyNetNode implements IEnergyNetNode{ - - private AnchorTileEntity base; - private short facing; - private int gridID=-1; - private Set cableList = new HashSet(); - - public SubAnchorEnergyNetNode(AnchorTileEntity base1, short facing1) - { - base=base1; - facing=facing1; - } - - @Override - public double[] getPortPos(EntityLivingBase player) - { - double d=0.5D; - double f=-0.05D; - switch(facing) - { - case 0: - return new double[]{ - (base.xCoord+d), - (base.yCoord+1D-f), - (base.zCoord+0.5D)}; - case 1: - return new double[]{ - (base.xCoord+d), - (base.yCoord+f), - (base.zCoord+0.5D)}; - case 2: - return new double[]{ - (base.xCoord+0.5D), - (base.yCoord+d), - (base.zCoord+1D-f)}; - case 3: - return new double[]{ - (base.xCoord+0.5D), - (base.yCoord+d), - (base.zCoord+f)}; - case 4: - return new double[]{ - (base.xCoord+1D-f), - (base.yCoord+d), - (base.zCoord+0.5D)}; - case 5: - return new double[]{ - (base.xCoord+f), - (base.yCoord+d), - (base.zCoord+0.5D)}; - default: - return new double[]{ - (base.xCoord+f), - (base.yCoord+d), - (base.zCoord+0.5D)}; - } - } - - @Override - public IHLGrid getGrid() - { - if(gridID!=-1) - { - return IHLMod.enet.getGrid(gridID); - } - else - { - return null; - } - } - - @Override - public int getGridID() - { - return gridID; - } - - @Override - public void setGrid(int newgridID) - { - if(IC2.platform.isSimulating()&& base.addedToEnergyNet && base.getWorldObj()!=null) - { - MinecraftForge.EVENT_BUS.post(new EnergyTileUnloadEvent(base)); - base.addedToEnergyNet = false; - } - if(newgridID!=-1) - { - this.gridID=newgridID; - IHLMod.enet.getGrid(newgridID).add(this); - } - else - { - this.gridID=-1; - } - if (IC2.platform.isSimulating()&& !base.addedToEnergyNet && base.getWorldObj()!=null) - { - MinecraftForge.EVENT_BUS.post(new EnergyTileLoadEvent(base)); - base.addedToEnergyNet = true; - } - } - - @Override - public double getMaxAllowableVoltage() - { - return 64000d; - } - - @Override - public boolean addCable(NBTTagCompound cable) - { - base.hasCableOnSide[this.facing]=true; - return this.cableList.add(IHLCable.fromNBT(cable)); - } - - @Override - public Set getCableList() { - return cableList; - } - - @Override - public void removeAttachedChains() - { - IHLUtils.removeChains(this,this.base.getWorldObj()); - } - - public void onLoaded() - { - if(gridID!=-1) - { - IHLGrid grid = IHLMod.enet.getGrid(gridID); - grid.add(this); - } - } - - public void onUnloaded() - { - if(gridID!=-1) - { - IHLGrid grid = IHLMod.enet.getGrid(gridID); - grid.remove(this); - } - } - - public NBTTagCompound writeToNBT() - { - NBTTagCompound nbt = new NBTTagCompound(); - NBTTagList cableNBTList = new NBTTagList(); - for(IHLCable cable:this.cableList) - { - cableNBTList.appendTag(cable.toNBT()); - } - nbt.setTag("cableList", cableNBTList); - nbt.setInteger("gridID", this.gridID); - return nbt; - } - - public void readFromNBT(NBTTagCompound nbt) { - NBTTagList cableNBTList=nbt.getTagList("cableList", 10); - for(int i=0;i0d) - { - double drainedEnergy = Math.min(amount, this.getGrid().energy); - this.getGrid().drawEnergy(drainedEnergy, this); - return drainedEnergy; - } - return 0D; - } - - public double getVoltage() - { - if(this.gridID==-1) - { - return 0D; - } - else - { - return this.getGrid().getSinkVoltage(this); - } - } - - @Override - public void remove(IHLCable cable) - { - if(this.cableList.remove(cable)) - { - IHLUtils.removeChain(cable, this); - } - if(this.cableList.isEmpty()) - { - base.hasCableOnSide[this.facing]=false; - base.checkIfNoCablesLeft(); - } - } - - public double injectEnergyToGrid(double amount) - { - if(this.gridID==-1) - { - return amount; - } - else - { - this.getGrid().injectEnergy(amount, 400d, this); - return 0d; - } - } - - @Override - public boolean isCableRemoved(int chainUniqueID) { - for(IHLCable cable:this.cableList) - { - if(cable.chainUID==chainUniqueID) - { - return false; - } - } - return true; - } - - @Override - public void setCableCheck(boolean b) - { - base.checkCables=b; - } - - @Override - public double getEnergyAmountThisNodeWant() - { - Set teset = new HashSet(); - ForgeDirection direction = ForgeDirection.getOrientation(this.facing).getOpposite(); - TileEntity te = EnergyNet.instance.getNeighbor(this.base, direction); - teset.add(te); - TileEntity te1 = this.base.getSink(te, teset); - if(te1==this.base) - { - return 0d; - } - if(te instanceof IEnergySink) - { - return ((IEnergySink)te).acceptsEnergyFrom(this.base, ForgeDirection.getOrientation(this.facing))?((IEnergySink)te).getDemandedEnergy():0d; - } - return 0d; - } - - public double getEnergyOfferedByGrid() - { - if(this.gridID==-1) - { - return 0D; - } - else - { - return Math.max(this.getGrid().energy,0d); - } - } - - @Override - public void injectEnergyInThisNode(double amount, double voltage) - { - Set teset = new HashSet(); - ForgeDirection direction = ForgeDirection.getOrientation(this.facing).getOpposite(); - TileEntity te = EnergyNet.instance.getNeighbor(this.base, direction); - teset.add(te); - TileEntity te1 = this.base.getSink(te, teset); - if(te1==this.base) - { - return; - } - if(te1!=null && voltage>500D) - { - if(te1 instanceof IEnergyNetNode) - { - if(((IEnergyNetNode)te1).getMaxAllowableVoltage()