    001package net.minecraft.network.packet;
    002
    003import cpw.mods.fml.relauncher.Side;
    004import cpw.mods.fml.relauncher.SideOnly;
    005import java.io.DataInputStream;
    006import java.io.DataOutputStream;
    007import java.io.IOException;
    008
    009public class Packet108EnchantItem extends Packet
    010{
    011    public int windowId;
    012
    013    /**
    014     * The position of the enchantment on the enchantment table window, starting with 0 as the topmost one.
    015     */
    016    public int enchantment;
    017
    018    public Packet108EnchantItem() {}
    019
    020    @SideOnly(Side.CLIENT)
    021    public Packet108EnchantItem(int par1, int par2)
    022    {
    023        this.windowId = par1;
    024        this.enchantment = par2;
    025    }
    026
    027    /**
    028     * Passes this Packet on to the NetHandler for processing.
    029     */
    030    public void processPacket(NetHandler par1NetHandler)
    031    {
    032        par1NetHandler.handleEnchantItem(this);
    033    }
    034
    035    /**
    036     * Abstract. Reads the raw packet data from the data stream.
    037     */
    038    public void readPacketData(DataInputStream par1DataInputStream) throws IOException
    039    {
    040        this.windowId = par1DataInputStream.readByte();
    041        this.enchantment = par1DataInputStream.readByte();
    042    }
    043
    044    /**
    045     * Abstract. Writes the raw packet data to the data stream.
    046     */
    047    public void writePacketData(DataOutputStream par1DataOutputStream) throws IOException
    048    {
    049        par1DataOutputStream.writeByte(this.windowId);
    050        par1DataOutputStream.writeByte(this.enchantment);
    051    }
    052
    053    /**
    054     * Abstract. Return the size of the packet (not counting the header).
    055     */
    056    public int getPacketSize()
    057    {
    058        return 2;
    059    }
    060}