Record Class PlayerBodyPartData.GrabData

java.lang.Object
java.lang.Record
net.timtaran.interactivemc.body.player.data.PlayerBodyPartData.GrabData
Record Components:
grabbedBodyId - ID of grabbed body
constraintId - ID of attachment constraint (null if not attached)
retracting - Whether grabbed body is being pulled toward the body part
Enclosing class:
PlayerBodyPartData

public static record PlayerBodyPartData.GrabData(@NotNull UUID grabbedBodyId, @Nullable UUID constraintId, boolean retracting) extends Record
Grab interaction state.

Constraint states:

  • constraintId == null — body is freely grabbed/pulled
  • constraintId != null — body is attached using a constraint

Retraction states:

  • retracting == false — grabbed body remains at current distance
  • retracting == true — grabbed body is pulled toward the body part every tick
  • Constructor Details

    • GrabData

      public GrabData(@NotNull @NotNull UUID grabbedBodyId, @Nullable @Nullable UUID constraintId, boolean retracting)
      Creates an instance of a GrabData record class.
      Parameters:
      grabbedBodyId - the value for the grabbedBodyId record component
      constraintId - the value for the constraintId record component
      retracting - the value for the retracting record component
  • Method Details

    • isAttached

      public boolean isAttached()
    • withRetracting

      public PlayerBodyPartData.GrabData withRetracting(boolean newRetracting)
    • toString

      public final String toString()
      Returns a string representation of this record class. The representation contains the name of the class, followed by the name and value of each of the record components.
      Specified by:
      toString in class Record
      Returns:
      a string representation of this object
    • hashCode

      public final int hashCode()
      Returns a hash code value for this object. The value is derived from the hash code of each of the record components.
      Specified by:
      hashCode in class Record
      Returns:
      a hash code value for this object
    • equals

      public final boolean equals(Object o)
      Indicates whether some other object is "equal to" this one. The objects are equal if the other object is of the same class and if all the record components are equal. Reference components are compared with Objects::equals(Object,Object); primitive components are compared with '=='.
      Specified by:
      equals in class Record
      Parameters:
      o - the object with which to compare
      Returns:
      true if this object is the same as the o argument; false otherwise.
    • grabbedBodyId

      @NotNull public @NotNull UUID grabbedBodyId()
      Returns the value of the grabbedBodyId record component.
      Returns:
      the value of the grabbedBodyId record component
    • constraintId

      @Nullable public @Nullable UUID constraintId()
      Returns the value of the constraintId record component.
      Returns:
      the value of the constraintId record component
    • retracting

      public boolean retracting()
      Returns the value of the retracting record component.
      Returns:
      the value of the retracting record component