2025-03-11 00:23:54 +01:00
|
|
|
package game.packet;
|
|
|
|
|
|
|
|
import java.io.IOException;
|
|
|
|
|
|
|
|
import game.item.ItemStack;
|
2025-05-05 18:27:06 +02:00
|
|
|
import game.network.IClientPlayer;
|
2025-03-11 00:23:54 +01:00
|
|
|
import game.network.Packet;
|
|
|
|
import game.network.PacketBuffer;
|
|
|
|
|
2025-05-05 18:27:06 +02:00
|
|
|
public class S2FPacketSetSlot implements Packet<IClientPlayer>
|
2025-03-11 00:23:54 +01:00
|
|
|
{
|
|
|
|
private int windowId;
|
|
|
|
private int slot;
|
|
|
|
private ItemStack item;
|
|
|
|
|
|
|
|
public S2FPacketSetSlot()
|
|
|
|
{
|
|
|
|
}
|
|
|
|
|
|
|
|
public S2FPacketSetSlot(int windowIdIn, int slotIn, ItemStack itemIn)
|
|
|
|
{
|
|
|
|
this.windowId = windowIdIn;
|
|
|
|
this.slot = slotIn;
|
|
|
|
this.item = itemIn == null ? null : itemIn.copy();
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Passes this Packet on to the NetHandler for processing.
|
|
|
|
*/
|
2025-05-05 18:27:06 +02:00
|
|
|
public void processPacket(IClientPlayer handler)
|
2025-03-11 00:23:54 +01:00
|
|
|
{
|
|
|
|
handler.handleSetSlot(this);
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Reads the raw packet data from the data stream.
|
|
|
|
*/
|
|
|
|
public void readPacketData(PacketBuffer buf) throws IOException
|
|
|
|
{
|
|
|
|
this.windowId = buf.readByte();
|
|
|
|
this.slot = buf.readShort();
|
|
|
|
this.item = buf.readItemStackFromBuffer();
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Writes the raw packet data to the data stream.
|
|
|
|
*/
|
|
|
|
public void writePacketData(PacketBuffer buf) throws IOException
|
|
|
|
{
|
|
|
|
buf.writeByte(this.windowId);
|
|
|
|
buf.writeShort(this.slot);
|
|
|
|
buf.writeItemStackToBuffer(this.item);
|
|
|
|
}
|
|
|
|
|
|
|
|
public int getWindowId()
|
|
|
|
{
|
|
|
|
return this.windowId;
|
|
|
|
}
|
|
|
|
|
|
|
|
public int getSlot()
|
|
|
|
{
|
|
|
|
return this.slot;
|
|
|
|
}
|
|
|
|
|
|
|
|
public ItemStack getStack()
|
|
|
|
{
|
|
|
|
return this.item;
|
|
|
|
}
|
|
|
|
}
|