Class SimplePhysicsProvider

java.lang.Object
com.hypixel.hytale.server.core.modules.physics.SimplePhysicsProvider
All Implemented Interfaces:
IBlockCollisionConsumer

@Deprecated public class SimplePhysicsProvider extends Object implements IBlockCollisionConsumer
Deprecated.
Mixin class to provide a simple physics behaviour with gravity and collisions
  • Constructor Details

  • Method Details

    • setImpacted

      public void setImpacted(boolean impacted)
      Deprecated.
    • isImpacted

      public boolean isImpacted()
      Deprecated.
    • setResting

      public void setResting(boolean resting)
      Deprecated.
    • isResting

      public boolean isResting()
      Deprecated.
    • onCollision

      @Nonnull public IBlockCollisionConsumer.Result onCollision(int blockX, int blockY, int blockZ, @Nonnull org.joml.Vector3d direction, @Nonnull BlockContactData contactData, @Nonnull BlockData blockData, @Nonnull Box collider)
      Deprecated.
      Description copied from interface: IBlockCollisionConsumer
      Process a collision between a block and the collider.

      collisionData and blockData are only valid until this call returns.

      Specified by:
      onCollision in interface IBlockCollisionConsumer
      Parameters:
      blockX - X position of block
      blockY - Y position of block
      blockZ - Z position of block
      direction - Direction collider is moving
      contactData - Information about collision contact
      blockData - Information about block
      collider - Sub hitbox collision happens with
      Returns:
      Return IBlockCollisionConsumer.Result.STOP or IBlockCollisionConsumer.Result.STOP_NOW to stop processing after this block or IBlockCollisionConsumer.Result.CONTINUE to continue
    • probeCollisionDamage

      @Nonnull public IBlockCollisionConsumer.Result probeCollisionDamage(int blockX, int blockY, int blockZ, org.joml.Vector3d direction, BlockContactData collisionData, BlockData blockData)
      Deprecated.
      Description copied from interface: IBlockCollisionConsumer
      Test if the damage caused by block should stop processing and stop movement of collider.

      collisionData and blockData are only valid until this call returns. The actual damage should be processed using IBlockCollisionConsumer.onCollisionDamage(int, int, int, Vector3d, BlockContactData, BlockData).

      Specified by:
      probeCollisionDamage in interface IBlockCollisionConsumer
      Parameters:
      blockX - X position of block
      blockY - Y position of block
      blockZ - Z position of block
      direction - Direction collider is moving
      collisionData - Information about collision contact
      blockData - Information about block
      Returns:
      Return IBlockCollisionConsumer.Result.STOP or IBlockCollisionConsumer.Result.STOP_NOW to stop processing after this block or IBlockCollisionConsumer.Result.CONTINUE to continue
    • onCollisionDamage

      public void onCollisionDamage(int blockX, int blockY, int blockZ, org.joml.Vector3d direction, BlockContactData collisionData, BlockData blockData)
      Deprecated.
      Description copied from interface: IBlockCollisionConsumer
      Process damage caused by block.

      collisionData and blockData are only valid until this call returns.

      Specified by:
      onCollisionDamage in interface IBlockCollisionConsumer
      Parameters:
      blockX - X position of block
      blockY - Y position of block
      blockZ - Z position of block
      direction - Direction collider is moving
      collisionData - Information about collision contact
      blockData - Information about block
    • onCollisionSliceFinished

      @Nonnull public IBlockCollisionConsumer.Result onCollisionSliceFinished()
      Deprecated.
      Description copied from interface: IBlockCollisionConsumer
      Called when BoxBlockIterator used for iteration ends a slice.
      Specified by:
      onCollisionSliceFinished in interface IBlockCollisionConsumer
      Returns:
      Return IBlockCollisionConsumer.Result.STOP or IBlockCollisionConsumer.Result.STOP_NOW to stop processing after this block or IBlockCollisionConsumer.Result.CONTINUE to continue
    • onCollisionFinished

      public void onCollisionFinished()
      Deprecated.
      Description copied from interface: IBlockCollisionConsumer
      Called when all blocks are processed.
      Specified by:
      onCollisionFinished in interface IBlockCollisionConsumer
    • tick

      @Nullable public Ref<EntityStore> tick(double dt, @Nonnull Velocity entityVelocity, @Nonnull World entityWorld, @Nonnull TransformComponent entityTransform, Ref<EntityStore> selfRef, @Nonnull ComponentAccessor<EntityStore> componentAccessor)
      Deprecated.
    • isOnGround

      public boolean isOnGround()
      Deprecated.
    • isSwimming

      public boolean isSwimming()
      Deprecated.
    • computeReflectedVector

      public static void computeReflectedVector(@Nonnull org.joml.Vector3d vec, @Nonnull org.joml.Vector3d normal, @Nonnull org.joml.Vector3d result)
      Deprecated.
    • isProvidingCharacterCollisions

      public boolean isProvidingCharacterCollisions()
      Deprecated.
    • setProvideCharacterCollisions

      public void setProvideCharacterCollisions(boolean provideCharacterCollisions)
      Deprecated.
    • setGravity

      public void setGravity(double gravity, @Nonnull BoundingBox boundingBox)
      Deprecated.
    • setBounciness

      public void setBounciness(double bounciness)
      Deprecated.
    • setTerminalVelocities

      public void setTerminalVelocities(double terminalVelocityAir, double terminalVelocityWater, @Nonnull BoundingBox boundingBox)
      Deprecated.
    • setTerminalVelocities

      public void setTerminalVelocities(double terminalVelocity1, double density1, double terminalVelocity2, double density2, @Nonnull BoundingBox boundingBox)
      Deprecated.
    • setImpactSlowdown

      @Nonnull @Deprecated public SimplePhysicsProvider setImpactSlowdown(double impactSlowdown)
      Deprecated.
    • setSticksVertically

      public void setSticksVertically(boolean sticksVertically)
      Deprecated.
    • isComputeYaw

      public boolean isComputeYaw()
      Deprecated.
    • setComputeYaw

      public void setComputeYaw(boolean computeYaw)
      Deprecated.
    • isComputePitch

      public boolean isComputePitch()
      Deprecated.
    • setComputePitch

      public void setComputePitch(boolean computePitch)
      Deprecated.
    • setCreatorId

      public void setCreatorId(UUID creatorUuid)
      Deprecated.
    • initialize

      public void initialize(@Nullable Projectile projectile, @Nonnull BoundingBox boundingBox)
      Deprecated.
    • getVelocity

      @Nonnull public org.joml.Vector3d getVelocity()
      Deprecated.
    • addVelocity

      public void addVelocity(float x, float y, float z)
      Deprecated.
    • setVelocity

      public void setVelocity(@Nonnull org.joml.Vector3d velocity)
      Deprecated.
    • setMoveOutOfSolid

      public void setMoveOutOfSolid(boolean moveOutOfSolid)
      Deprecated.
    • setMoveOutOfSolid

      public void setMoveOutOfSolid(double speed)
      Deprecated.