BlockCollisionProvider

public class BlockCollisionProvider implements BoxBlockIterator.BoxIterationConsumer

Class BlockCollisionProvider. Provides blockcollisionprovider functionality for the Hytale server.

java.lang.Object > BlockCollisionProvider

Field Summary

requestedCollisionMaterials

protected int requestedCollisionMaterials

Field requestedCollisionMaterials.

reportOverlaps

protected boolean reportOverlaps

Field reportOverlaps.

collisionConsumer

protected IBlockCollisionConsumer collisionConsumer

Field collisionConsumer.

activeTriggers

protected IBlockTracker activeTriggers

Field activeTriggers.

motion

protected Vector3d motion

Field motion.

relativeStopDistance

protected double relativeStopDistance

Field relativeStopDistance.

collisionState

protected IBlockCollisionConsumer.Result collisionState

Field collisionState.

isFarDistance

final boolean isFarDistance

Field isFarDistance.

boundingBoxes

final BlockBoundingBoxes boundingBoxes

Field boundingBoxes.

blockX

final int blockX

Field blockX.

blockY

final int blockY

Field blockY.

blockZ

final int blockZ

Field blockZ.

boxes

final Box[] boxes

Field boxes.

box

final Box box

Field box.

fluid

final Fluid fluid

Field fluid.

processDamage

final boolean processDamage

Field processDamage.

processCollision

final boolean processCollision

Field processCollision.

collision

final BlockContactData collision

Field collision.

position

final Vector3i position

Field position.

result

final IBlockCollisionConsumer.Result result

Field result.

canCollide

final boolean canCollide

Field canCollide.

collisionEnd

final double collisionEnd

Field collisionEnd.

p

final Vector3i p

Field p.

Method Detail

BlockCollisionProvider

public public BlockCollisionProvider ()

Method BlockCollisionProvider.

setRequestedCollisionMaterials

public void setRequestedCollisionMaterials (final int requestedCollisionMaterials)

Method setRequestedCollisionMaterials.

Parameters:
final int requestedCollisionMaterials

setReportOverlaps

public void setReportOverlaps (final boolean reportOverlaps)

Method setReportOverlaps.

Parameters:
final boolean reportOverlaps

accept

public boolean accept (final long x, final long y, final long z)

Method accept.

Parameters:
final long x
final long y
final long z

cast

public void cast (@Nonnull final World world, @Nonnull final Box collider, @Nonnull final Vector3d pos, @Nonnull final Vector3d v, @Nonnull final IBlockCollisionConsumer collisionConsumer, @Nonnull final IBlockTracker activeTriggers, final double collisionStop)

Method cast.

Parameters:
@Nonnull final World world
@Nonnull final Box collider
@Nonnull final Vector3d pos
@Nonnull final Vector3d v
@Nonnull final IBlockCollisionConsumer collisionConsumer
@Nonnull final IBlockTracker activeTriggers
final double collisionStop

castShortDistance

protected void castShortDistance (@Nonnull final Box collider, @Nonnull final Vector3d pos, @Nonnull final Vector3d v)

Method castShortDistance.

Parameters:
@Nonnull final Box collider
@Nonnull final Vector3d pos
@Nonnull final Vector3d v

processBlockStatic

protected boolean processBlockStatic (final int x, final int y, final int z)

Method processBlockStatic.

Parameters:
final int x
final int y
final int z

processBlockStaticFluid

protected void processBlockStaticFluid (final int x, final int y, final int z, @Nonnull final Fluid fluid, final boolean submergeFluid)

Method processBlockStaticFluid.

Parameters:
final int x
final int y
final int z
@Nonnull final Fluid fluid
final boolean submergeFluid

canCollide

protected boolean canCollide ()

Method canCollide.

castIterative

protected void castIterative (@Nonnull final Box collider, @Nonnull final Vector3d pos, @Nonnull final Vector3d v, final double collisionStop)

Method castIterative.

Parameters:
@Nonnull final Box collider
@Nonnull final Vector3d pos
@Nonnull final Vector3d v
final double collisionStop

onSliceFinished

protected boolean onSliceFinished ()

Method onSliceFinished.

processBlockDynamic

protected boolean processBlockDynamic (final int x, final int y, final int z)

Method processBlockDynamic.

Parameters:
final int x
final int y
final int z

processBlockDynamicFluid

protected void processBlockDynamicFluid (final int x, final int y, final int z, @Nonnull final Fluid fluid, final BlockContactData damageCollisionData, final boolean isSubmergeFluid)

Method processBlockDynamicFluid.

Parameters:
final int x
final int y
final int z
@Nonnull final Fluid fluid
final BlockContactData damageCollisionData
final boolean isSubmergeFluid

processTriggerDynamic

protected BlockContactData processTriggerDynamic (final int blockX, final int blockY, final int blockZ, @Nullable final BlockContactData collisionData)

Method processTriggerDynamic.

Parameters:
final int blockX
final int blockY
final int blockZ
@Nullable final BlockContactData collisionData

processDamageDynamic

protected BlockContactData processDamageDynamic (final int blockX, final int blockY, final int blockZ, @Nullable final BlockContactData collisionData)

Method processDamageDynamic.

Parameters:
final int blockX
final int blockY
final int blockZ
@Nullable final BlockContactData collisionData

updateStopDistance

protected void updateStopDistance (@Nullable final IBlockCollisionConsumer.Result result)

Method updateStopDistance.

Parameters:
@Nullable final IBlockCollisionConsumer.Result result

generateTriggerExit

protected void generateTriggerExit ()

Method generateTriggerExit.