001 package net.minecraft.src;
002
003 import java.io.DataInputStream;
004 import java.io.DataOutputStream;
005 import java.io.IOException;
006
007 public class Packet105UpdateProgressbar extends Packet
008 {
009 /** The id of the window that the progress bar is in. */
010 public int windowId;
011
012 /**
013 * Which of the progress bars that should be updated. (For furnaces, 0 = progress arrow, 1 = fire icon)
014 */
015 public int progressBar;
016
017 /**
018 * The value of the progress bar. The maximum values vary depending on the progress bar. Presumably the values are
019 * specified as in-game ticks. Some progress bar values increase, while others decrease. For furnaces, 0 is empty,
020 * full progress arrow = about 180, full fire icon = about 250)
021 */
022 public int progressBarValue;
023
024 public Packet105UpdateProgressbar() {}
025
026 public Packet105UpdateProgressbar(int par1, int par2, int par3)
027 {
028 this.windowId = par1;
029 this.progressBar = par2;
030 this.progressBarValue = par3;
031 }
032
033 /**
034 * Passes this Packet on to the NetHandler for processing.
035 */
036 public void processPacket(NetHandler par1NetHandler)
037 {
038 par1NetHandler.handleUpdateProgressbar(this);
039 }
040
041 /**
042 * Abstract. Reads the raw packet data from the data stream.
043 */
044 public void readPacketData(DataInputStream par1DataInputStream) throws IOException
045 {
046 this.windowId = par1DataInputStream.readByte();
047 this.progressBar = par1DataInputStream.readShort();
048 this.progressBarValue = par1DataInputStream.readShort();
049 }
050
051 /**
052 * Abstract. Writes the raw packet data to the data stream.
053 */
054 public void writePacketData(DataOutputStream par1DataOutputStream) throws IOException
055 {
056 par1DataOutputStream.writeByte(this.windowId);
057 par1DataOutputStream.writeShort(this.progressBar);
058 par1DataOutputStream.writeShort(this.progressBarValue);
059 }
060
061 /**
062 * Abstract. Return the size of the packet (not counting the header).
063 */
064 public int getPacketSize()
065 {
066 return 5;
067 }
068 }