package mods.eln.transparentnode.powercapacitor; import mods.eln.Eln; import mods.eln.item.DielectricItem; import mods.eln.misc.Obj3D; import mods.eln.misc.series.ISerie; import mods.eln.node.transparent.TransparentNodeDescriptor; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.inventory.IInventory; import net.minecraft.item.ItemStack; import java.util.List; public class PowerCapacitorDescriptor extends TransparentNodeDescriptor { private Obj3D obj; public PowerCapacitorDescriptor( String name, Obj3D obj, ISerie serie, double dischargeTao ) { super(name, PowerCapacitorElement.class, PowerCapacitorRender.class); this.serie = serie; this.dischargeTao = dischargeTao; this.obj = obj; if (obj != null) { } } ISerie serie; public double dischargeTao; public double getCValue(int cableCount, double nominalDielVoltage) { if (cableCount == 0) return 0; double uTemp = nominalDielVoltage / Eln.LVU; return serie.getValue(cableCount - 1) / uTemp / uTemp; } public double getCValue(IInventory inventory) { ItemStack core = inventory.getStackInSlot(PowerCapacitorContainer.redId); ItemStack diel = inventory.getStackInSlot(PowerCapacitorContainer.dielectricId); if (core == null || diel == null) return getCValue(0, 0); else { return getCValue(core.stackSize, getUNominalValue(inventory)); } } public double getUNominalValue(IInventory inventory) { ItemStack diel = inventory.getStackInSlot(PowerCapacitorContainer.dielectricId); if (diel == null) return 10000; else { DielectricItem desc = (DielectricItem) DielectricItem.getDescriptor(diel); return desc.uNominal * diel.stackSize; } } public void setParent(net.minecraft.item.Item item, int damage) { super.setParent(item, damage); //Data.addEnergy(newItemStack()); } void draw() { } @Override public boolean shouldUseRenderHelper(ItemRenderType type, ItemStack item, ItemRendererHelper helper) { return true; } @Override public boolean handleRenderType(ItemStack item, ItemRenderType type) { return true; } @Override public void renderItem(ItemRenderType type, ItemStack item, Object... data) { draw(); } @Override public void addInformation(ItemStack itemStack, EntityPlayer entityPlayer, List list, boolean par4) { super.addInformation(itemStack, entityPlayer, list, par4); } }