Advertisement
Guest User

PacketSpinningWheelSwitchState

a guest
Aug 25th, 2019
253
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.02 KB | None | 0 0
  1. package com.autodidax.demoncycle.network;
  2.  
  3. import com.autodidax.demoncycle.tileentity.TileEntitySpinningWheel;
  4. import io.netty.buffer.ByteBuf;
  5. import net.minecraft.client.Minecraft;
  6. import net.minecraft.util.math.BlockPos;
  7. import net.minecraft.world.World;
  8. import net.minecraftforge.fml.common.network.ByteBufUtils;
  9. import net.minecraftforge.fml.common.network.simpleimpl.IMessage;
  10. import net.minecraftforge.fml.common.network.simpleimpl.IMessageHandler;
  11. import net.minecraftforge.fml.common.network.simpleimpl.MessageContext;
  12.  
  13. public class PacketSpinningWheelSwitchState implements IMessage
  14. {
  15.     private BlockPos pos;
  16.     private String state;
  17.  
  18.     public PacketSpinningWheelSwitchState() { }
  19.  
  20.     public PacketSpinningWheelSwitchState(BlockPos pos, String state)
  21.     {
  22.         this.pos   = pos;
  23.         this.state = state;
  24.     }
  25.  
  26.     @Override
  27.     public void fromBytes(ByteBuf buffer)
  28.     {
  29.         int x = buffer.readInt();
  30.         int y = buffer.readInt();
  31.         int z = buffer.readInt();
  32.  
  33.         this.pos   = new BlockPos(x, y, z);
  34.         this.state = ByteBufUtils.readUTF8String(buffer);
  35.     }
  36.  
  37.     @Override
  38.     public void toBytes(ByteBuf buffer)
  39.     {
  40.         buffer.writeInt(pos.getX());
  41.         buffer.writeInt(pos.getY());
  42.         buffer.writeInt(pos.getZ());
  43.  
  44.         ByteBufUtils.writeUTF8String(buffer, this.state);
  45.     }
  46.  
  47.     public static class PacketSpinningWheelSwitchStateHandler implements IMessageHandler<PacketSpinningWheelSwitchState, IMessage>
  48.     {
  49.         @Override
  50.         public IMessage onMessage(PacketSpinningWheelSwitchState message, MessageContext ctx)
  51.         {
  52.             World world = Minecraft.getMinecraft().world;
  53.  
  54.             if (world.getTileEntity(message.pos) instanceof TileEntitySpinningWheel)
  55.             {
  56.                 TileEntitySpinningWheel spinningWheel = (TileEntitySpinningWheel) world.getTileEntity(message.pos);
  57.  
  58.                 spinningWheel.switchAnimationClient(message.state);
  59.             }
  60.  
  61.             return null;
  62.         }
  63.     }
  64. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement