package mods.eln.item; import mods.eln.misc.VoltageLevelColor; import mods.eln.sim.ElectricalLoad; import mods.eln.sim.RegulatorThermalLoadToElectricalResistor; import mods.eln.sixnode.electricalcable.ElectricalCableDescriptor; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.ItemStack; import java.util.List; import static mods.eln.i18n.I18N.tr; public class HeatingCorpElement extends GenericItemUsingDamageDescriptorUpgrade { public double electricalNominalU; double electricalNominalP; double electricalMaximalP; public ElectricalCableDescriptor cableDescriptor; double electricalR; double Umax; public HeatingCorpElement(String name, double electricalNominalU, double electricalNominalP, double electricalMaximalP, ElectricalCableDescriptor cableDescriptor) { super(name); this.electricalNominalU = electricalNominalU; this.electricalNominalP = electricalNominalP; this.electricalMaximalP = electricalMaximalP; this.cableDescriptor = cableDescriptor; electricalR = electricalNominalU * electricalNominalU / electricalNominalP; Umax = Math.sqrt(electricalMaximalP * electricalR); voltageLevelColor = VoltageLevelColor.fromVoltage(electricalNominalU); } /* public void applyTo(ElectricalResistor resistor) { resistor.setR(electricalR); }*/ public void applyTo(ElectricalLoad load) { cableDescriptor.applyTo(load); } public void applyTo(RegulatorThermalLoadToElectricalResistor regulator) { regulator.setRmin(electricalR); } @Override public void addInformation(ItemStack itemStack, EntityPlayer entityPlayer, List list, boolean par4) { super.addInformation(itemStack, entityPlayer, list, par4); list.add(tr("Nominal:")); list.add(" " + tr("Voltage: %1$V", electricalNominalU)); list.add(" " + tr("Power: %1$W", electricalNominalP)); list.add(" " + tr("Resistance: %1$Ω", electricalR)); } }