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 final BlockPos
private static final BlockBehaviour.StatePredicate
private final int
static final int
static final int
private static final int
private static final int
private final int
private final Direction
private static final float
private static final double
private final int
-
Constructor Summary
ConstructorsModifierConstructorDescriptionprivate
PortalShape
(Direction.Axis p_77697_, int p_374222_, Direction p_374407_, BlockPos p_77696_, int p_374218_, int p_374477_) -
Method Summary
Modifier and TypeMethodDescriptionprivate static BlockPos
calculateBottomLeft
(BlockGetter p_374347_, Direction p_374365_, BlockPos p_77734_) private static int
calculateHeight
(BlockGetter p_374198_, BlockPos p_374414_, Direction p_374486_, int p_374126_, org.apache.commons.lang3.mutable.MutableInt p_374165_) private static int
calculateWidth
(BlockGetter p_374528_, BlockPos p_374039_, Direction p_374180_) void
createPortalBlocks
(LevelAccessor p_374419_) static PortalShape
findAnyShape
(BlockGetter p_374054_, BlockPos p_374346_, Direction.Axis p_374516_) static Vec3
findCollisionFreePosition
(Vec3 p_260315_, ServerLevel p_259704_, Entity p_259626_, EntityDimensions p_259816_) static Optional
<PortalShape> findEmptyPortalShape
(LevelAccessor p_77709_, BlockPos p_77710_, Direction.Axis p_77711_) static Optional
<PortalShape> findPortalShape
(LevelAccessor p_77713_, BlockPos p_77714_, Predicate<PortalShape> p_77715_, Direction.Axis p_77716_) private static int
getDistanceUntilEdgeAboveFrame
(BlockGetter p_374084_, BlockPos p_77736_, Direction p_77737_) private static int
getDistanceUntilTop
(BlockGetter p_374443_, BlockPos p_374231_, Direction p_374062_, BlockPos.MutableBlockPos p_77729_, int p_374313_, org.apache.commons.lang3.mutable.MutableInt p_374330_) static Vec3
getRelativePosition
(BlockUtil.FoundRectangle p_77739_, Direction.Axis p_77740_, Vec3 p_77741_, EntityDimensions p_77742_) private static boolean
hasTopFrame
(BlockGetter p_374223_, BlockPos p_374398_, Direction p_374129_, BlockPos.MutableBlockPos p_77731_, int p_77732_, int p_374112_) boolean
private static boolean
isEmpty
(BlockState p_77718_) 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:
-
axis
-
rightDir
-
numPortalBlocks
private final int numPortalBlocks -
bottomLeft
-
height
private final int height -
width
private final int width
-
-
Constructor Details
-
PortalShape
private PortalShape(Direction.Axis p_77697_, int p_374222_, Direction p_374407_, BlockPos p_77696_, int p_374218_, int p_374477_)
-
-
Method Details
-
findEmptyPortalShape
public static Optional<PortalShape> findEmptyPortalShape(LevelAccessor p_77709_, BlockPos p_77710_, Direction.Axis p_77711_) -
findPortalShape
public static Optional<PortalShape> findPortalShape(LevelAccessor p_77713_, BlockPos p_77714_, Predicate<PortalShape> p_77715_, Direction.Axis p_77716_) -
findAnyShape
public static PortalShape findAnyShape(BlockGetter p_374054_, BlockPos p_374346_, Direction.Axis p_374516_) -
calculateBottomLeft
@Nullable private static BlockPos calculateBottomLeft(BlockGetter p_374347_, Direction p_374365_, BlockPos p_77734_) -
calculateWidth
-
getDistanceUntilEdgeAboveFrame
private static int getDistanceUntilEdgeAboveFrame(BlockGetter p_374084_, BlockPos p_77736_, Direction p_77737_) -
calculateHeight
private static int calculateHeight(BlockGetter p_374198_, BlockPos p_374414_, Direction p_374486_, int p_374126_, org.apache.commons.lang3.mutable.MutableInt p_374165_) -
hasTopFrame
private static boolean hasTopFrame(BlockGetter p_374223_, BlockPos p_374398_, Direction p_374129_, BlockPos.MutableBlockPos p_77731_, int p_77732_, int p_374112_) -
getDistanceUntilTop
private static int getDistanceUntilTop(BlockGetter p_374443_, BlockPos p_374231_, Direction p_374062_, BlockPos.MutableBlockPos p_77729_, int p_374313_, org.apache.commons.lang3.mutable.MutableInt p_374330_) -
isEmpty
-
isValid
public boolean isValid() -
createPortalBlocks
-
isComplete
public boolean isComplete() -
getRelativePosition
public static Vec3 getRelativePosition(BlockUtil.FoundRectangle p_77739_, Direction.Axis p_77740_, Vec3 p_77741_, EntityDimensions p_77742_) -
findCollisionFreePosition
public static Vec3 findCollisionFreePosition(Vec3 p_260315_, ServerLevel p_259704_, Entity p_259626_, EntityDimensions p_259816_)
-