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 Packet30Entity extends Packet
008 {
009 /** The ID of this entity. */
010 public int entityId;
011
012 /** The X axis relative movement. */
013 public byte xPosition;
014
015 /** The Y axis relative movement. */
016 public byte yPosition;
017
018 /** The Z axis relative movement. */
019 public byte zPosition;
020
021 /** The X axis rotation. */
022 public byte yaw;
023
024 /** The Y axis rotation. */
025 public byte pitch;
026
027 /** Boolean set to true if the entity is rotating. */
028 public boolean rotating = false;
029
030 public Packet30Entity() {}
031
032 public Packet30Entity(int par1)
033 {
034 this.entityId = par1;
035 }
036
037 /**
038 * Abstract. Reads the raw packet data from the data stream.
039 */
040 public void readPacketData(DataInputStream par1DataInputStream) throws IOException
041 {
042 this.entityId = par1DataInputStream.readInt();
043 }
044
045 /**
046 * Abstract. Writes the raw packet data to the data stream.
047 */
048 public void writePacketData(DataOutputStream par1DataOutputStream) throws IOException
049 {
050 par1DataOutputStream.writeInt(this.entityId);
051 }
052
053 /**
054 * Passes this Packet on to the NetHandler for processing.
055 */
056 public void processPacket(NetHandler par1NetHandler)
057 {
058 par1NetHandler.handleEntity(this);
059 }
060
061 /**
062 * Abstract. Return the size of the packet (not counting the header).
063 */
064 public int getPacketSize()
065 {
066 return 4;
067 }
068
069 public String toString()
070 {
071 return "Entity_" + super.toString();
072 }
073
074 /**
075 * only false for the abstract Packet class, all real packets return true
076 */
077 public boolean isRealPacket()
078 {
079 return true;
080 }
081
082 /**
083 * eg return packet30entity.entityId == entityId; WARNING : will throw if you compare a packet to a different packet
084 * class
085 */
086 public boolean containsSameEntityIDAs(Packet par1Packet)
087 {
088 Packet30Entity var2 = (Packet30Entity)par1Packet;
089 return var2.entityId == this.entityId;
090 }
091 }