SmartMoveItemStack class

Пакет: com.hypixel.hytale.protocol.packets.inventory

Файл: com/hypixel/hytale/protocol/packets/inventory/SmartMoveItemStack.java

implements: Packet, ToServerPacket, ToClientPacket

Поля (6)

МодификаторыТипИмя
final int PACKET_ID
SmartMoveItemStack var1
long var2
int var2
int var3
SmartMoveItemStack var4

Методы (26)

МодификаторыВозвратСигнатура
public SmartMoveItemStack cloneSmartMoveItemStack clone()
static int getFromSectionIdint getFromSectionId(MemorySegment var0)
static int getFromSectionIdint getFromSectionId(MemorySegment var0, int var1)
abstract return getFromSectionIdreturn getFromSectionId(var0, 0)
static int getFromSlotIdint getFromSlotId(MemorySegment var0)
static int getFromSlotIdint getFromSlotId(MemorySegment var0, int var1)
abstract return getFromSlotIdreturn getFromSlotId(var0, 0)
static SmartMoveType getMoveTypeSmartMoveType getMoveType(MemorySegment var0)
static SmartMoveType getMoveTypeSmartMoveType getMoveType(MemorySegment var0, int var1)
abstract return getMoveTypereturn getMoveType(var0, 0)
static int getQuantityint getQuantity(MemorySegment var0)
static int getQuantityint getQuantity(MemorySegment var0, int var1)
abstract return getQuantityreturn getQuantity(var0, 0)
if if(var1 < 0)
if if(var2 < 1)
if if(var3 < 1)
if if(var2 != null)
if if(this.quantity < 1)
if if(this == var1)
static void requireBoundsvoid requireBounds(MemorySegment var0, int var1)
abstract requireBounds requireBounds(var0, var1)
static SmartMoveItemStack toObjectSmartMoveItemStack toObject(MemorySegment var0)
static SmartMoveItemStack toObjectSmartMoveItemStack toObject(MemorySegment var0, int var1)
static SmartMoveItemStack toObjectSmartMoveItemStack toObject(MemorySegment var0, int var1, @Nullable ReadCursor var2)
abstract return toObjectreturn toObject(var0, 0, null)
abstract return toObjectreturn toObject(var0, var1, null)

Исходный код

Показать/скрыть
class="kw">package com.hypixel.hytale.protocol.packets.inventory;

class="kw">import com.hypixel.hytale.protocol.NetworkChannel;
class="kw">import com.hypixel.hytale.protocol.Packet;
class="kw">import com.hypixel.hytale.protocol.SmartMoveType;
class="kw">import com.hypixel.hytale.protocol.ToClientPacket;
class="kw">import com.hypixel.hytale.protocol.ToServerPacket;
class="kw">import com.hypixel.hytale.protocol.io.PacketIO;
class="kw">import com.hypixel.hytale.protocol.io.ProtocolException;
class="kw">import com.hypixel.hytale.protocol.io.ReadCursor;
class="kw">import java.lang.foreign.MemorySegment;
class="kw">import java.util.Objects;
class="kw">import javax.annotation.Nonnull;
class="kw">import javax.annotation.Nullable;

class="kw">public class SmartMoveItemStack class="kw">implements Packet, ToServerPacket, ToClientPacket {
   class="kw">public class="kw">static class="kw">final int PACKET_ID = 176;
   class="kw">public class="kw">static class="kw">final boolean IS_COMPRESSED = false;
   class="kw">public class="kw">static class="kw">final int NULLABLE_BIT_FIELD_SIZE = 0;
   class="kw">public class="kw">static class="kw">final int FIXED_BLOCK_SIZE = 13;
   class="kw">public class="kw">static class="kw">final int VARIABLE_FIELD_COUNT = 0;
   class="kw">public class="kw">static class="kw">final int VARIABLE_BLOCK_START = 13;
   class="kw">public class="kw">static class="kw">final int MAX_SIZE = 13;
   class="kw">public int fromSectionId;
   class="kw">public int fromSlotId;
   class="kw">public int quantity;
   @Nonnull
   class="kw">public SmartMoveType moveType = SmartMoveType.EquipOrMergeStack;

   @Override
   class="kw">public int getId() {
      class="kw">return 176;
   }

   @Override
   class="kw">public NetworkChannel getChannel() {
      class="kw">return NetworkChannel.Default;
   }

   class="kw">public SmartMoveItemStack() {
   }

   class="kw">public SmartMoveItemStack(int var1, int var2, int var3, @Nonnull SmartMoveType var4) {
      this.fromSectionId = var1;
      this.fromSlotId = var2;
      this.quantity = var3;
      this.moveType = var4;
   }

   class="kw">public SmartMoveItemStack(@Nonnull SmartMoveItemStack var1) {
      this.fromSectionId = var1.fromSectionId;
      this.fromSlotId = var1.fromSlotId;
      this.quantity = var1.quantity;
      this.moveType = var1.moveType;
   }

   class="kw">public class="kw">static void requireBounds(MemorySegment var0, int var1) {
      if (var1 < 0) {
         throw ProtocolException.invalidOffset("SmartMoveItemStack", var1, (int)var0.byteSize());
      }

      long var2 = var1 + 13L;
      if (var2 > var0.byteSize()) {
         throw ProtocolException.bufferTooSmall("SmartMoveItemStack", (int)Math.min(var2, 2147483647L), (int)var0.byteSize());
      }
   }

   class="kw">public class="kw">static int getFromSectionId(MemorySegment var0) {
      class="kw">return getFromSectionId(var0, 0);
   }

   class="kw">public class="kw">static int getFromSectionId(MemorySegment var0, int var1) {
      class="kw">return var0.get(PacketIO.PROTO_INT, var1 + 0);
   }

   class="kw">public class="kw">static int getFromSlotId(MemorySegment var0) {
      class="kw">return getFromSlotId(var0, 0);
   }

   class="kw">public class="kw">static int getFromSlotId(MemorySegment var0, int var1) {
      class="kw">return var0.get(PacketIO.PROTO_INT, var1 + 4);
   }

   class="kw">public class="kw">static int getQuantity(MemorySegment var0) {
      class="kw">return getQuantity(var0, 0);
   }

   class="kw">public class="kw">static int getQuantity(MemorySegment var0, int var1) {
      int var2 = var0.get(PacketIO.PROTO_INT, var1 + 8);
      if (var2 < 1) {
         throw ProtocolException.valueBelowMinimum("Quantity", var2, 1.0);
      } else {
         class="kw">return var2;
      }
   }

   class="kw">public class="kw">static SmartMoveType getMoveType(MemorySegment var0) {
      class="kw">return getMoveType(var0, 0);
   }

   class="kw">public class="kw">static SmartMoveType getMoveType(MemorySegment var0, int var1) {
      class="kw">return SmartMoveType.fromValue(var0.get(PacketIO.PROTO_BYTE, var1 + 12));
   }

   class="kw">public class="kw">static SmartMoveItemStack toObject(MemorySegment var0) {
      class="kw">return toObject(var0, 0, null);
   }

   class="kw">public class="kw">static SmartMoveItemStack toObject(MemorySegment var0, int var1) {
      class="kw">return toObject(var0, var1, null);
   }

   class="kw">public class="kw">static SmartMoveItemStack toObject(MemorySegment var0, int var1, @Nullable ReadCursor var2) {
      requireBounds(var0, var1);
      int var3 = var0.get(PacketIO.PROTO_INT, var1 + 8);
      if (var3 < 1) {
         throw ProtocolException.valueBelowMinimum("Quantity", var3, 1.0);
      }

      SmartMoveItemStack var4 = new SmartMoveItemStack(
         var0.get(PacketIO.PROTO_INT, var1 + 0),
         var0.get(PacketIO.PROTO_INT, var1 + 4),
         var3,
         SmartMoveType.fromValue(var0.get(PacketIO.PROTO_BYTE, var1 + 12))
      );
      if (var2 != null) {
         var2.position = var1 + 13;
      }

      class="kw">return var4;
   }

   @Override
   class="kw">public int serialize(@Nonnull MemorySegment var1, int var2) {
      var1.set(PacketIO.PROTO_INT, var2 + 0, this.fromSectionId);
      var1.set(PacketIO.PROTO_INT, var2 + 4, this.fromSlotId);
      if (this.quantity < 1) {
         throw ProtocolException.valueBelowMinimum("Quantity", this.quantity, 1.0);
      }

      var1.set(PacketIO.PROTO_INT, var2 + 8, this.quantity);
      var1.set(PacketIO.PROTO_BYTE, var2 + 12, (byte)this.moveType.getValue());
      class="kw">return 13;
   }

   @Override
   class="kw">public int computeSize() {
      class="kw">return 13;
   }

   class="kw">public SmartMoveItemStack clone() {
      SmartMoveItemStack var1 = new SmartMoveItemStack();
      var1.fromSectionId = this.fromSectionId;
      var1.fromSlotId = this.fromSlotId;
      var1.quantity = this.quantity;
      var1.moveType = this.moveType;
      class="kw">return var1;
   }

   @Override
   class="kw">public boolean equals(Object var1) {
      if (this == var1) {
         class="kw">return true;
      } else {
         class="kw">return !(var1 class="kw">instanceof SmartMoveItemStack var2)
            ? false
            : this.fromSectionId == var2.fromSectionId
               && this.fromSlotId == var2.fromSlotId
               && this.quantity == var2.quantity
               && Objects.equals(this.moveType, var2.moveType);
      }
   }

   @Override
   class="kw">public int hashCode() {
      class="kw">return Objects.hash(this.fromSectionId, this.fromSlotId, this.quantity, this.moveType);
   }
}