package mods.eln.sixnode.powersocket; import mods.eln.cable.CableRenderDescriptor; import mods.eln.misc.Coordonate; import mods.eln.misc.Direction; import mods.eln.misc.LRDU; import mods.eln.misc.Utils; import mods.eln.node.six.SixNodeDescriptor; import mods.eln.node.six.SixNodeElementInventory; import mods.eln.node.six.SixNodeElementRender; import mods.eln.node.six.SixNodeEntity; import mods.eln.sixnode.electricalcable.ElectricalCableDescriptor; import net.minecraft.client.gui.GuiScreen; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.ItemStack; import java.io.DataInputStream; import java.io.IOException; public class PowerSocketRender extends SixNodeElementRender { PowerSocketDescriptor descriptor; Coordonate coord; String channel; CableRenderDescriptor cableRender; SixNodeElementInventory inventory = new SixNodeElementInventory(1, 64, this); public PowerSocketRender(SixNodeEntity tileEntity, Direction side, SixNodeDescriptor descriptor) { super(tileEntity, side, descriptor); this.descriptor = (PowerSocketDescriptor) descriptor; coord = new Coordonate(tileEntity); } @Override public void draw() { super.draw(); descriptor.draw(); } @Override public void refresh(float deltaT) { } @Override public CableRenderDescriptor getCableRender(LRDU lrdu) { return cableRender; } @Override public GuiScreen newGuiDraw(Direction side, EntityPlayer player) { return new PowerSocketGui(this, player, inventory); } @Override public void publishUnserialize(DataInputStream stream) { super.publishUnserialize(stream); try { channel = stream.readUTF(); ItemStack cableStack = Utils.unserialiseItemStack(stream); if (cableStack != null) { ElectricalCableDescriptor desc = (ElectricalCableDescriptor) ElectricalCableDescriptor.getDescriptor(cableStack); cableRender = desc.render; } else { cableRender = null; } } catch (IOException e) { e.printStackTrace(); } } }