Package net.minecraft.world.level.portal
Class PortalShape
java.lang.Object
net.minecraft.world.level.portal.PortalShape
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final Direction.Axis
private BlockPos
private static final BlockBehaviour.StatePredicate
private int
private final LevelAccessor
static final int
static final int
private static final int
private static final int
private int
private final Direction
private static final float
private static final double
private final int
-
Constructor Summary
ConstructorsConstructorDescriptionPortalShape
(LevelAccessor pLevel, BlockPos pBottomLeft, Direction.Axis pAxis) -
Method Summary
Modifier and TypeMethodDescriptionprivate BlockPos
calculateBottomLeft
(BlockPos pPos) private int
private int
void
static Vec3
findCollisionFreePosition
(Vec3 pPos, ServerLevel pLevel, Entity pEntity, EntityDimensions pDimensions) static Optional
<PortalShape> findEmptyPortalShape
(LevelAccessor pLevel, BlockPos pBottomLeft, Direction.Axis pAxis) static Optional
<PortalShape> findPortalShape
(LevelAccessor pLevel, BlockPos pBottomLeft, Predicate<PortalShape> pPredicate, Direction.Axis pAxis) private int
getDistanceUntilEdgeAboveFrame
(BlockPos pPos, Direction pDirection) private int
static Vec3
getRelativePosition
(BlockUtil.FoundRectangle pFoundRectangle, Direction.Axis pAxis, Vec3 pPos, EntityDimensions pEntityDimensions) private boolean
hasTopFrame
(BlockPos.MutableBlockPos pPos, int pDistanceToTop) boolean
private static boolean
isEmpty
(BlockState pState) boolean
isValid()
-
Field Details
-
MIN_WIDTH
private static final int MIN_WIDTH- See Also:
-
MAX_WIDTH
public static final int MAX_WIDTH- See Also:
-
MIN_HEIGHT
private static final int MIN_HEIGHT- See Also:
-
MAX_HEIGHT
public static final int MAX_HEIGHT- See Also:
-
FRAME
-
SAFE_TRAVEL_MAX_ENTITY_XY
private static final float SAFE_TRAVEL_MAX_ENTITY_XY- See Also:
-
SAFE_TRAVEL_MAX_VERTICAL_DELTA
private static final double SAFE_TRAVEL_MAX_VERTICAL_DELTA- See Also:
-
level
-
axis
-
rightDir
-
numPortalBlocks
private int numPortalBlocks -
bottomLeft
-
height
private int height -
width
private final int width
-
-
Constructor Details
-
PortalShape
-
-
Method Details
-
findEmptyPortalShape
public static Optional<PortalShape> findEmptyPortalShape(LevelAccessor pLevel, BlockPos pBottomLeft, Direction.Axis pAxis) -
findPortalShape
public static Optional<PortalShape> findPortalShape(LevelAccessor pLevel, BlockPos pBottomLeft, Predicate<PortalShape> pPredicate, Direction.Axis pAxis) -
calculateBottomLeft
-
calculateWidth
private int calculateWidth() -
getDistanceUntilEdgeAboveFrame
-
calculateHeight
private int calculateHeight() -
hasTopFrame
-
getDistanceUntilTop
-
isEmpty
-
isValid
public boolean isValid() -
createPortalBlocks
public void createPortalBlocks() -
isComplete
public boolean isComplete() -
getRelativePosition
public static Vec3 getRelativePosition(BlockUtil.FoundRectangle pFoundRectangle, Direction.Axis pAxis, Vec3 pPos, EntityDimensions pEntityDimensions) -
findCollisionFreePosition
public static Vec3 findCollisionFreePosition(Vec3 pPos, ServerLevel pLevel, Entity pEntity, EntityDimensions pDimensions)
-