    001package net.minecraft.network.packet;
    002
    003import java.io.DataInputStream;
    004import java.io.DataOutputStream;
    005import java.io.IOException;
    006
    007public class Packet70GameEvent extends Packet
    008{
    009    /**
    010     * The client prints clientMessage[eventType] to chat when this packet is received.
    011     */
    012    public static final String[] clientMessage = new String[] {"tile.bed.notValid", null, null, "gameMode.changed"};
    013
    014    /** 0: Invalid bed, 1: Rain starts, 2: Rain stops, 3: Game mode changed. */
    015    public int eventType;
    016
    017    /**
    018     * When reason==3, the game mode to set.  See EnumGameType for a list of values.
    019     */
    020    public int gameMode;
    021
    022    public Packet70GameEvent() {}
    023
    024    public Packet70GameEvent(int par1, int par2)
    025    {
    026        this.eventType = par1;
    027        this.gameMode = par2;
    028    }
    029
    030    /**
    031     * Abstract. Reads the raw packet data from the data stream.
    032     */
    033    public void readPacketData(DataInputStream par1DataInputStream) throws IOException
    034    {
    035        this.eventType = par1DataInputStream.readByte();
    036        this.gameMode = par1DataInputStream.readByte();
    037    }
    038
    039    /**
    040     * Abstract. Writes the raw packet data to the data stream.
    041     */
    042    public void writePacketData(DataOutputStream par1DataOutputStream) throws IOException
    043    {
    044        par1DataOutputStream.writeByte(this.eventType);
    045        par1DataOutputStream.writeByte(this.gameMode);
    046    }
    047
    048    /**
    049     * Passes this Packet on to the NetHandler for processing.
    050     */
    051    public void processPacket(NetHandler par1NetHandler)
    052    {
    053        par1NetHandler.handleGameEvent(this);
    054    }
    055
    056    /**
    057     * Abstract. Return the size of the packet (not counting the header).
    058     */
    059    public int getPacketSize()
    060    {
    061        return 2;
    062    }
    063}