Class InteractionChainData

java.lang.Object
com.hypixel.hytale.protocol.InteractionChainData

public class InteractionChainData extends Object
  • Field Details

    • NULLABLE_BIT_FIELD_SIZE

      public static final int NULLABLE_BIT_FIELD_SIZE
      See Also:
    • FIXED_BLOCK_SIZE

      public static final int FIXED_BLOCK_SIZE
      See Also:
    • VARIABLE_FIELD_COUNT

      public static final int VARIABLE_FIELD_COUNT
      See Also:
    • VARIABLE_BLOCK_START

      public static final int VARIABLE_BLOCK_START
      See Also:
    • MAX_SIZE

      public static final int MAX_SIZE
      See Also:
    • entityId

      public int entityId
    • proxyId

      @Nonnull public UUID proxyId
    • hitLocation

      @Nullable public org.joml.Vector3fc hitLocation
    • hitDetail

      @Nullable public String hitDetail
    • blockPosition

      @Nullable public BlockPosition blockPosition
    • targetSlot

      public int targetSlot
    • hitNormal

      @Nullable public org.joml.Vector3fc hitNormal
  • Constructor Details

    • InteractionChainData

      public InteractionChainData()
    • InteractionChainData

      public InteractionChainData(int entityId, @Nonnull UUID proxyId, @Nullable org.joml.Vector3fc hitLocation, @Nullable String hitDetail, @Nullable BlockPosition blockPosition, int targetSlot, @Nullable org.joml.Vector3fc hitNormal)
    • InteractionChainData

      public InteractionChainData(@Nonnull InteractionChainData other)
  • Method Details

    • requireBounds

      public static void requireBounds(MemorySegment mem, int offset)
      Checks that the fixed block fits. The per-field getters read without their own bound check, so call this once before reading fields out of an untrusted segment.
    • getEntityId

      public static int getEntityId(MemorySegment mem)
    • getEntityId

      public static int getEntityId(MemorySegment mem, int offset)
    • getProxyId

      public static UUID getProxyId(MemorySegment mem)
    • getProxyId

      public static UUID getProxyId(MemorySegment mem, int offset)
    • getHitLocation

      @Nullable public static org.joml.Vector3fc getHitLocation(MemorySegment mem)
    • getHitLocation

      @Nullable public static org.joml.Vector3fc getHitLocation(MemorySegment mem, int offset)
    • getHitDetail

      @Nullable public static String getHitDetail(MemorySegment mem)
    • getHitDetail

      @Nullable public static String getHitDetail(MemorySegment mem, int offset)
    • getBlockPosition

      @Nullable public static BlockPosition getBlockPosition(MemorySegment mem)
    • getBlockPosition

      @Nullable public static BlockPosition getBlockPosition(MemorySegment mem, int offset)
    • getTargetSlot

      public static int getTargetSlot(MemorySegment mem)
    • getTargetSlot

      public static int getTargetSlot(MemorySegment mem, int offset)
    • getHitNormal

      @Nullable public static org.joml.Vector3fc getHitNormal(MemorySegment mem)
    • getHitNormal

      @Nullable public static org.joml.Vector3fc getHitNormal(MemorySegment mem, int offset)
    • hasHitLocation

      public static boolean hasHitLocation(MemorySegment mem, int offset)
    • hasBlockPosition

      public static boolean hasBlockPosition(MemorySegment mem, int offset)
    • hasHitNormal

      public static boolean hasHitNormal(MemorySegment mem, int offset)
    • hasHitDetail

      public static boolean hasHitDetail(MemorySegment mem, int offset)
    • toObject

      public static InteractionChainData toObject(MemorySegment mem)
    • toObject

      public static InteractionChainData toObject(MemorySegment mem, int offset)
    • toObject

      public static InteractionChainData toObject(MemorySegment mem, int offset, @Nullable ReadCursor cursor)
      Decodes one InteractionChainData and reports the end of its encoding through the cursor. The variable block is decoded in field order against a running position, and each offset slot must name that position, so the fields decoded are the bytes walked.
    • serialize

      public int serialize(@Nonnull MemorySegment mem, int offset)
    • computeSize

      public int computeSize()
    • clone

      public InteractionChainData clone()
    • equals

      public boolean equals(Object obj)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object