package mods.eln.transparentnode.thermaldissipatoractive; import mods.eln.misc.RcInterpolator; import mods.eln.node.transparent.TransparentNodeDescriptor; import mods.eln.node.transparent.TransparentNodeElementRender; import mods.eln.node.transparent.TransparentNodeEntity; import java.io.DataInputStream; import java.io.IOException; public class ThermalDissipatorActiveRender extends TransparentNodeElementRender { ThermalDissipatorActiveDescriptor descriptor; public ThermalDissipatorActiveRender(TransparentNodeEntity tileEntity, TransparentNodeDescriptor descriptor) { super(tileEntity, descriptor); this.descriptor = (ThermalDissipatorActiveDescriptor) descriptor; } RcInterpolator rc = new RcInterpolator(2f); @Override public void draw() { front.glRotateXnRef(); descriptor.draw(alpha); } @Override public void refresh(float deltaT) { rc.setTarget(powerFactor); rc.step(deltaT); alpha += rc.get() * 360f * deltaT; while (alpha > 360f) alpha -= 360f; } float alpha = 0; float powerFactor; @Override public void networkUnserialize(DataInputStream stream) { super.networkUnserialize(stream); try { powerFactor = stream.readFloat(); } catch (IOException e) { e.printStackTrace(); } } }