001 package net.minecraft.network.packet;
002
003 import java.io.DataInputStream;
004 import java.io.DataOutputStream;
005 import java.io.IOException;
006
007 public class Packet255KickDisconnect extends Packet
008 {
009 /** Displayed to the client when the connection terminates. */
010 public String reason;
011
012 public Packet255KickDisconnect() {}
013
014 public Packet255KickDisconnect(String par1Str)
015 {
016 this.reason = par1Str;
017 }
018
019 /**
020 * Abstract. Reads the raw packet data from the data stream.
021 */
022 public void readPacketData(DataInputStream par1DataInputStream) throws IOException
023 {
024 this.reason = readString(par1DataInputStream, 256);
025 }
026
027 /**
028 * Abstract. Writes the raw packet data to the data stream.
029 */
030 public void writePacketData(DataOutputStream par1DataOutputStream) throws IOException
031 {
032 writeString(this.reason, par1DataOutputStream);
033 }
034
035 /**
036 * Passes this Packet on to the NetHandler for processing.
037 */
038 public void processPacket(NetHandler par1NetHandler)
039 {
040 par1NetHandler.handleKickDisconnect(this);
041 }
042
043 /**
044 * Abstract. Return the size of the packet (not counting the header).
045 */
046 public int getPacketSize()
047 {
048 return this.reason.length();
049 }
050
051 /**
052 * only false for the abstract Packet class, all real packets return true
053 */
054 public boolean isRealPacket()
055 {
056 return true;
057 }
058
059 /**
060 * eg return packet30entity.entityId == entityId; WARNING : will throw if you compare a packet to a different packet
061 * class
062 */
063 public boolean containsSameEntityIDAs(Packet par1Packet)
064 {
065 return true;
066 }
067 }