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.MOTileEntityMachineMatter; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.tileentity.TileEntity; /** * Created by Simeon on 4/22/2015. */ public class PacketMatterUpdate extends TileEntityUpdatePacket { private int matter = 0; public PacketMatterUpdate(){} public PacketMatterUpdate(MOTileEntityMachineMatter entityMachineEnergy) { super(entityMachineEnergy.xCoord,entityMachineEnergy.yCoord,entityMachineEnergy.zCoord); matter = entityMachineEnergy.getMatterStored(); } @Override public void fromBytes(ByteBuf buf) { super.fromBytes(buf); matter = buf.readInt(); } @Override public void toBytes(ByteBuf buf) { super.toBytes(buf); buf.writeInt(matter); } public static class ClientHandler extends AbstractClientPacketHandler<PacketMatterUpdate> { public ClientHandler(){} @Override public IMessage handleClientMessage(EntityPlayer player, PacketMatterUpdate message, MessageContext ctx) { if (player != null && player.worldObj != null) { TileEntity tileEntity = player.worldObj.getTileEntity(message.x, message.y, message.z); if (tileEntity != null && tileEntity instanceof MOTileEntityMachineMatter) { ((MOTileEntityMachineMatter) tileEntity).setMatterStored(message.matter); } } return null; } } }