| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172 |
- package me.km.networking;
- import io.netty.buffer.ByteBuf;
- import net.minecraft.client.Minecraft;
- import net.minecraftforge.fml.common.network.simpleimpl.IMessage;
- import net.minecraftforge.fml.common.network.simpleimpl.IMessageHandler;
- import net.minecraftforge.fml.common.network.simpleimpl.MessageContext;
- public class ItemStackDisplay implements IMessage
- {
- private byte index;
- private int iconIndex;
- private int count;
-
- public ItemStackDisplay()
- {
- index = -1;
- iconIndex = -1;
- count = -1;
- }
-
- public ItemStackDisplay(byte index, int iconIndex, int count)
- {
- this.index = index;
- this.iconIndex = iconIndex;
- this.count = count;
- }
-
- @Override
- public void fromBytes(ByteBuf buf)
- {
- index = buf.readByte();
- iconIndex = buf.readInt();
- count = buf.readInt();
- }
- @Override
- public void toBytes(ByteBuf buf)
- {
- buf.writeByte(index);
- buf.writeInt(iconIndex);
- buf.writeInt(count);
- }
- public static class Handler implements IMessageHandler<ItemStackDisplay, IMessage>
- {
- @Override
- public IMessage onMessage(ItemStackDisplay message, MessageContext ctx)
- {
- Minecraft mc = net.minecraft.client.Minecraft.getMinecraft();
- mc.addScheduledTask(() ->
- {
- switch(message.index)
- {
- case -1:
- ItemStackDisplayGui.INSTANCE.setActive(true);
- break;
- case -2:
- ItemStackDisplayGui.INSTANCE.setActive(false);
- break;
- case -3:
- ItemStackDisplayGui.INSTANCE.clear();
- break;
- default:
- ItemStackDisplayGui.INSTANCE.setIcon(message.index, message.iconIndex, message.count);
- break;
- }
- });
- return null;
- }
- }
- }
|