001 package net.minecraft.network.packet;
002
003 import cpw.mods.fml.relauncher.Side;
004 import cpw.mods.fml.relauncher.SideOnly;
005 import java.io.DataInputStream;
006 import java.io.DataOutputStream;
007 import java.io.IOException;
008
009 public class Packet7UseEntity extends Packet
010 {
011 /** The entity of the player (ignored by the server) */
012 public int playerEntityId;
013
014 /** The entity the player is interacting with */
015 public int targetEntity;
016
017 /**
018 * Seems to be true when the player is pointing at an entity and left-clicking and false when right-clicking.
019 */
020 public int isLeftClick;
021
022 public Packet7UseEntity() {}
023
024 @SideOnly(Side.CLIENT)
025 public Packet7UseEntity(int par1, int par2, int par3)
026 {
027 this.playerEntityId = par1;
028 this.targetEntity = par2;
029 this.isLeftClick = par3;
030 }
031
032 /**
033 * Abstract. Reads the raw packet data from the data stream.
034 */
035 public void readPacketData(DataInputStream par1DataInputStream) throws IOException
036 {
037 this.playerEntityId = par1DataInputStream.readInt();
038 this.targetEntity = par1DataInputStream.readInt();
039 this.isLeftClick = par1DataInputStream.readByte();
040 }
041
042 /**
043 * Abstract. Writes the raw packet data to the data stream.
044 */
045 public void writePacketData(DataOutputStream par1DataOutputStream) throws IOException
046 {
047 par1DataOutputStream.writeInt(this.playerEntityId);
048 par1DataOutputStream.writeInt(this.targetEntity);
049 par1DataOutputStream.writeByte(this.isLeftClick);
050 }
051
052 /**
053 * Passes this Packet on to the NetHandler for processing.
054 */
055 public void processPacket(NetHandler par1NetHandler)
056 {
057 par1NetHandler.handleUseEntity(this);
058 }
059
060 /**
061 * Abstract. Return the size of the packet (not counting the header).
062 */
063 public int getPacketSize()
064 {
065 return 9;
066 }
067 }