Class SpawningContext

java.lang.Object
com.hypixel.hytale.server.spawning.SpawningContext

public class SpawningContext extends Object
  • Field Details

    • LOGGER

      private static final com.hypixel.hytale.logger.HytaleLogger LOGGER
    • BLOCK_ASSET_MAP

      private static final BlockTypeAssetMap<String,com.hypixel.hytale.server.core.asset.type.blocktype.config.BlockType> BLOCK_ASSET_MAP
    • world

      @Nullable public World world
    • worldChunk

      @Nullable public WorldChunk worldChunk
    • xBlock

      public int xBlock
    • zBlock

      public int zBlock
    • ySpawnHint

      public double ySpawnHint
    • groundLevel

      public int groundLevel
    • groundBlockId

      public int groundBlockId
    • groundRotation

      public int groundRotation
    • groundBlockType

      @Nullable public com.hypixel.hytale.server.core.asset.type.blocktype.config.BlockType groundBlockType
    • groundFluidId

      public int groundFluidId
    • groundFluid

      @Nullable public Fluid groundFluid
    • ySpanMin

      public int ySpanMin
    • ySpanMax

      public int ySpanMax
    • yBlock

      public int yBlock
    • waterLevel

      public int waterLevel
    • airHeight

      public int airHeight
    • ySpawnMin

      public double ySpawnMin
    • xSpawn

      public double xSpawn
    • zSpawn

      public double zSpawn
    • ySpawn

      public double ySpawn
    • environmentIndex

      private int environmentIndex
    • minSpawnSpanHeight

      private int minSpawnSpanHeight
    • yaw

      public double yaw
    • pitch

      public double pitch
    • roll

      public double roll
    • spawnable

      @Nullable private ISpawnableWithModel spawnable
    • spawnModel

      @Nullable private Model spawnModel
    • modifierScope

      @Nullable private Scope modifierScope
    • collisionResult

      private final CollisionResult collisionResult
    • position

      private final Vector3d position
    • executionContext

      private final ExecutionContext executionContext
    • spawnSpans

      private SpawningContext.SpawnSpan[] spawnSpans
    • spawnSpansUsed

      private int spawnSpansUsed
    • currentSpawnSpanIndex

      private int currentSpawnSpanIndex
    • SOLID_BLOCK

      private static final int SOLID_BLOCK
      See Also:
    • EMPTY_BLOCK

      private static final int EMPTY_BLOCK
      See Also:
    • FLUID_BLOCK

      private static final int FLUID_BLOCK
      See Also:
  • Constructor Details

    • SpawningContext

      public SpawningContext()
  • Method Details

    • setSpawnable

      public boolean setSpawnable(@Nonnull ISpawnableWithModel spawnable)
    • setSpawnable

      public boolean setSpawnable(@Nonnull ISpawnableWithModel spawnable, boolean maxScale)
    • setModel

      private boolean setModel(@Nullable String modelName, boolean maxScale)
    • clearModel

      private void clearModel()
    • newModel

      public void newModel()
    • getModel

      @Nullable public Model getModel()
    • setChunk

      public void setChunk(@Nonnull WorldChunk worldChunk, int environmentIndex)
    • setColumn

      public boolean setColumn(int x, int z, int yHint, @Nonnull int[] yRange)
    • setColumn

      public boolean setColumn(int x, int z, int yHint, @Nonnull int[] yRange, @Nonnull SuppressionSpanHelper suppressionHelper)
    • setColumn

      public void setColumn(int x, int z, @Nonnull SuppressionSpanHelper suppressionHelper)
    • getModifierScope

      @Nullable public Scope getModifierScope()
    • set

      public boolean set(@Nonnull World world, double x, double y, double z)
    • deleteCurrentSpawnSpan

      public void deleteCurrentSpawnSpan()
    • selectRandomSpawnSpan

      public boolean selectRandomSpawnSpan()
    • selectSpawnSpan

      private boolean selectSpawnSpan(int index)
    • splitRangeToSpawnSpans

      private void splitRangeToSpawnSpans(int min, int max)
    • addSpawnSpan

      private void addSpawnSpan(int top, int span, int groundLevel, int waterLevel)
    • isSpawnSpanBlock

      private int isSpawnSpanBlock(int x, int y, int z)
    • commonInit

      private void commonInit()
    • canSpawn

      @Nonnull public SpawnTestResult canSpawn(boolean testOverlapBlocks, boolean testOverlapEntities)
    • canSpawn

      @Nonnull public SpawnTestResult canSpawn()
    • intersectsEntity

      @Nonnull private SpawnTestResult intersectsEntity()
    • intersectsBlock

      @Nonnull private SpawnTestResult intersectsBlock()
    • isWaterBlock

      public static boolean isWaterBlock(int fluidId)
    • getWaterLevel

      public int getWaterLevel()
    • getAirHeight

      public int getAirHeight()
    • isInsideSpan

      public boolean isInsideSpan(double y)
    • isInWater

      public boolean isInWater(float minDepth)
    • isOnSolidGround

      public boolean isOnSolidGround()
    • isInAir

      public boolean isInAir(double height)
    • validatePosition

      public boolean validatePosition(int invalidMaterials)
    • canBreathe

      public boolean canBreathe(boolean breathesInAir, boolean breathesInWater)
    • release

      public void release()
    • releaseFull

      public void releaseFull()
    • getExecutionContext

      @Nonnull public ExecutionContext getExecutionContext()
    • newPosition

      @Nonnull public Vector3d newPosition()
    • newRotation

      @Nonnull public Vector3f newRotation()
    • toString

      @Nonnull public String toString()
      Overrides:
      toString in class Object