类 IcebergFeature

java.lang.Object
net.minecraft.world.level.levelgen.feature.Feature<BlockStateConfiguration>
net.minecraft.world.level.levelgen.feature.IcebergFeature

public class IcebergFeature extends Feature<BlockStateConfiguration>
  • 构造器详细资料

  • 方法详细资料

    • place

      public boolean place(FeaturePlaceContext<BlockStateConfiguration> pContext)
      指定者:
      place 在类中 Feature<BlockStateConfiguration>
    • generateCutOut

      private void generateCutOut(RandomSource pRandom, LevelAccessor pLevel, int pMajorAxis, int pHeight, BlockPos pPos, boolean pElliptical, int pEllipseRadius, double pAngle, int pMinorAxis)
    • carve

      private void carve(int pRadius, int pLocalY, BlockPos pPos, LevelAccessor pLevel, boolean pPlaceWater, double pPerpendicularAngle, BlockPos pEllipseOrigin, int pMajorRadius, int pMinorRadius)
    • removeFloatingSnowLayer

      private void removeFloatingSnowLayer(LevelAccessor pLevel, BlockPos pPos)
    • generateIcebergBlock

      private void generateIcebergBlock(LevelAccessor pLevel, RandomSource pRandom, BlockPos pPos, int pHeight, int pLocalX, int pLocalY, int pLocalZ, int pRadius, int pMajorRadius, boolean pElliptical, int pMinorRadius, double pAngle, boolean pPlaceSnow, BlockState pState)
    • setIcebergBlock

      private void setIcebergBlock(BlockPos pPos, LevelAccessor pLevel, RandomSource pRandom, int pHeightRemaining, int pHeight, boolean pElliptical, boolean pPlaceSnow, BlockState pState)
    • getEllipseC

      private int getEllipseC(int pY, int pHeight, int pMinorAxis)
    • signedDistanceCircle

      private double signedDistanceCircle(int pX, int pZ, BlockPos pCenter, int pRadius, RandomSource pRandom)
    • signedDistanceEllipse

      private double signedDistanceEllipse(int pX, int pZ, BlockPos pCenter, int pMajorRadius, int pMinorRadius, double pAngle)
    • heightDependentRadiusRound

      private int heightDependentRadiusRound(RandomSource pRandom, int pY, int pHeight, int pMajorAxis)
    • heightDependentRadiusEllipse

      private int heightDependentRadiusEllipse(int pY, int pHeight, int pMaxRadius)
    • heightDependentRadiusSteep

      private int heightDependentRadiusSteep(RandomSource pRandom, int pY, int pHeight, int pMaxRadius)
    • isIcebergState

      private static boolean isIcebergState(BlockState pState)
    • belowIsAir

      private boolean belowIsAir(BlockGetter pLevel, BlockPos pPos)
    • smooth

      private void smooth(LevelAccessor pLevel, BlockPos pPos, int pMajorRadius, int pHeight, boolean pElliptical, int pMinorRadius)