Class BlockPlacementSettings

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

public class BlockPlacementSettings 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:
    • allowRotationKey

      public boolean allowRotationKey
    • placeInEmptyBlocks

      public boolean placeInEmptyBlocks
    • previewVisibility

      @Nonnull public BlockPreviewVisibility previewVisibility
    • rotationMode

      @Nonnull public BlockPlacementRotationMode rotationMode
    • wallPlacementOverrideBlockId

      public int wallPlacementOverrideBlockId
    • floorPlacementOverrideBlockId

      public int floorPlacementOverrideBlockId
    • ceilingPlacementOverrideBlockId

      public int ceilingPlacementOverrideBlockId
    • allowBreakReplace

      public boolean allowBreakReplace
  • Constructor Details

    • BlockPlacementSettings

      public BlockPlacementSettings()
    • BlockPlacementSettings

      public BlockPlacementSettings(boolean allowRotationKey, boolean placeInEmptyBlocks, @Nonnull BlockPreviewVisibility previewVisibility, @Nonnull BlockPlacementRotationMode rotationMode, int wallPlacementOverrideBlockId, int floorPlacementOverrideBlockId, int ceilingPlacementOverrideBlockId, boolean allowBreakReplace)
    • BlockPlacementSettings

      public BlockPlacementSettings(@Nonnull BlockPlacementSettings 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.
    • getAllowRotationKey

      public static boolean getAllowRotationKey(MemorySegment mem)
    • getAllowRotationKey

      public static boolean getAllowRotationKey(MemorySegment mem, int offset)
    • getPlaceInEmptyBlocks

      public static boolean getPlaceInEmptyBlocks(MemorySegment mem)
    • getPlaceInEmptyBlocks

      public static boolean getPlaceInEmptyBlocks(MemorySegment mem, int offset)
    • getPreviewVisibility

      public static BlockPreviewVisibility getPreviewVisibility(MemorySegment mem)
    • getPreviewVisibility

      public static BlockPreviewVisibility getPreviewVisibility(MemorySegment mem, int offset)
    • getRotationMode

      public static BlockPlacementRotationMode getRotationMode(MemorySegment mem)
    • getRotationMode

      public static BlockPlacementRotationMode getRotationMode(MemorySegment mem, int offset)
    • getWallPlacementOverrideBlockId

      public static int getWallPlacementOverrideBlockId(MemorySegment mem)
    • getWallPlacementOverrideBlockId

      public static int getWallPlacementOverrideBlockId(MemorySegment mem, int offset)
    • getFloorPlacementOverrideBlockId

      public static int getFloorPlacementOverrideBlockId(MemorySegment mem)
    • getFloorPlacementOverrideBlockId

      public static int getFloorPlacementOverrideBlockId(MemorySegment mem, int offset)
    • getCeilingPlacementOverrideBlockId

      public static int getCeilingPlacementOverrideBlockId(MemorySegment mem)
    • getCeilingPlacementOverrideBlockId

      public static int getCeilingPlacementOverrideBlockId(MemorySegment mem, int offset)
    • getAllowBreakReplace

      public static boolean getAllowBreakReplace(MemorySegment mem)
    • getAllowBreakReplace

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

      public static BlockPlacementSettings toObject(MemorySegment mem)
    • toObject

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

      public static BlockPlacementSettings toObject(MemorySegment mem, int offset, @Nullable ReadCursor cursor)
      Decodes one BlockPlacementSettings 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 BlockPlacementSettings clone()
    • equals

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

      public int hashCode()
      Overrides:
      hashCode in class Object