package advancedsystemsmanager.network.message;
import cpw.mods.fml.common.network.ByteBufUtils;
import cpw.mods.fml.common.network.simpleimpl.IMessage;
import cpw.mods.fml.common.network.simpleimpl.IMessageHandler;
import cpw.mods.fml.common.network.simpleimpl.MessageContext;
import io.netty.buffer.ByteBuf;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
public class LabelSyncMessage implements IMessage, IMessageHandler<LabelSyncMessage, IMessage>
{
ItemStack stack;
int id;
public LabelSyncMessage()
{
}
public LabelSyncMessage(ItemStack stack, EntityPlayer player)
{
this.stack = stack;
this.id = player.getEntityId();
}
@Override
public void fromBytes(ByteBuf buf)
{
this.stack = ByteBufUtils.readItemStack(buf);
id = buf.readInt();
}
@Override
public void toBytes(ByteBuf buf)
{
ByteBufUtils.writeItemStack(buf, stack);
buf.writeInt(id);
}
@Override
public IMessage onMessage(LabelSyncMessage message, MessageContext ctx)
{
EntityPlayer player = ctx.getServerHandler().playerEntity;
if (player != null)
{
player.inventory.setInventorySlotContents(player.inventory.currentItem, message.stack);
}
return null;
}
}