Class ParticleAttractor

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

public class ParticleAttractor 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:
    • position

      @Nullable public org.joml.Vector3fc position
    • radialAxis

      @Nullable public org.joml.Vector3fc radialAxis
    • trailPositionMultiplier

      public float trailPositionMultiplier
    • radius

      public float radius
    • radialAcceleration

      public float radialAcceleration
    • radialTangentAcceleration

      public float radialTangentAcceleration
    • linearAcceleration

      @Nullable public org.joml.Vector3fc linearAcceleration
    • radialImpulse

      public float radialImpulse
    • radialTangentImpulse

      public float radialTangentImpulse
    • linearImpulse

      @Nullable public org.joml.Vector3fc linearImpulse
    • dampingMultiplier

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

    • ParticleAttractor

      public ParticleAttractor()
    • ParticleAttractor

      public ParticleAttractor(@Nullable org.joml.Vector3fc position, @Nullable org.joml.Vector3fc radialAxis, float trailPositionMultiplier, float radius, float radialAcceleration, float radialTangentAcceleration, @Nullable org.joml.Vector3fc linearAcceleration, float radialImpulse, float radialTangentImpulse, @Nullable org.joml.Vector3fc linearImpulse, @Nullable org.joml.Vector3fc dampingMultiplier)
    • ParticleAttractor

      public ParticleAttractor(@Nonnull ParticleAttractor 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.
    • getPosition

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

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

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

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

      public static float getTrailPositionMultiplier(MemorySegment mem)
    • getTrailPositionMultiplier

      public static float getTrailPositionMultiplier(MemorySegment mem, int offset)
    • getRadius

      public static float getRadius(MemorySegment mem)
    • getRadius

      public static float getRadius(MemorySegment mem, int offset)
    • getRadialAcceleration

      public static float getRadialAcceleration(MemorySegment mem)
    • getRadialAcceleration

      public static float getRadialAcceleration(MemorySegment mem, int offset)
    • getRadialTangentAcceleration

      public static float getRadialTangentAcceleration(MemorySegment mem)
    • getRadialTangentAcceleration

      public static float getRadialTangentAcceleration(MemorySegment mem, int offset)
    • getLinearAcceleration

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

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

      public static float getRadialImpulse(MemorySegment mem)
    • getRadialImpulse

      public static float getRadialImpulse(MemorySegment mem, int offset)
    • getRadialTangentImpulse

      public static float getRadialTangentImpulse(MemorySegment mem)
    • getRadialTangentImpulse

      public static float getRadialTangentImpulse(MemorySegment mem, int offset)
    • getLinearImpulse

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

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

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

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

      public static boolean hasPosition(MemorySegment mem, int offset)
    • hasRadialAxis

      public static boolean hasRadialAxis(MemorySegment mem, int offset)
    • hasLinearAcceleration

      public static boolean hasLinearAcceleration(MemorySegment mem, int offset)
    • hasLinearImpulse

      public static boolean hasLinearImpulse(MemorySegment mem, int offset)
    • hasDampingMultiplier

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

      public static ParticleAttractor toObject(MemorySegment mem)
    • toObject

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

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

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

      public int hashCode()
      Overrides:
      hashCode in class Object