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}