package matteroverdrive.network.packet.client; import cpw.mods.fml.common.network.simpleimpl.IMessage; import cpw.mods.fml.common.network.simpleimpl.MessageContext; import io.netty.buffer.ByteBuf; import matteroverdrive.network.packet.TileEntityUpdatePacket; import matteroverdrive.tile.MOTileEntityMachineEnergy; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.tileentity.TileEntity; /** * Created by Simeon on 4/22/2015. */ public class PacketPowerUpdate extends TileEntityUpdatePacket { int energy; public PacketPowerUpdate(){} public PacketPowerUpdate(MOTileEntityMachineEnergy entityMachineEnergy) { super(entityMachineEnergy.xCoord,entityMachineEnergy.yCoord,entityMachineEnergy.zCoord); energy = entityMachineEnergy.getEnergyStorage().getEnergyStored(); } @Override public void fromBytes(ByteBuf buf) { super.fromBytes(buf); energy = buf.readInt(); } @Override public void toBytes(ByteBuf buf) { super.toBytes(buf); buf.writeInt(energy); } public static class ClientHandler extends AbstractClientPacketHandler<PacketPowerUpdate> { public ClientHandler(){} @Override public IMessage handleClientMessage(EntityPlayer player, PacketPowerUpdate message, MessageContext ctx) { TileEntity tileEntity = player.worldObj.getTileEntity(message.x,message.y,message.z); if (tileEntity instanceof MOTileEntityMachineEnergy) { ((MOTileEntityMachineEnergy) tileEntity).setEnergyStored(message.energy); } return null; } } }