Class SpawningContext
java.lang.Object
com.hypixel.hytale.server.spawning.SpawningContext
-
Nested Class Summary
Nested Classes -
Field Summary
FieldsModifier and TypeFieldDescriptionintprivate static final BlockTypeAssetMap<String, com.hypixel.hytale.server.core.asset.type.blocktype.config.BlockType> private final CollisionResultprivate intprivate static final intprivate intprivate final ExecutionContextprivate static final intintcom.hypixel.hytale.server.core.asset.type.blocktype.config.BlockTypeintintintprivate static final com.hypixel.hytale.logger.HytaleLoggerprivate intprivate Scopedoubleprivate final Vector3ddoubleprivate static final intprivate ISpawnableWithModelprivate Modelprivate SpawningContext.SpawnSpan[]private intintintdoubledoubleintintintdoubledoubledoubleintdouble -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate voidaddSpawnSpan(int top, int span, int groundLevel, int waterLevel) booleancanBreathe(boolean breathesInAir, boolean breathesInWater) canSpawn()canSpawn(boolean testOverlapBlocks, boolean testOverlapEntities) private voidprivate voidvoidintgetModel()intprivate SpawnTestResultprivate SpawnTestResultbooleanisInAir(double height) booleanisInsideSpan(double y) booleanisInWater(float minDepth) booleanprivate intisSpawnSpanBlock(int x, int y, int z) static booleanisWaterBlock(int fluidId) voidnewModel()voidrelease()voidbooleanprivate booleanselectSpawnSpan(int index) booleanvoidsetChunk(WorldChunk worldChunk, int environmentIndex) booleansetColumn(int x, int z, int yHint, int[] yRange) booleansetColumn(int x, int z, int yHint, int[] yRange, SuppressionSpanHelper suppressionHelper) voidsetColumn(int x, int z, SuppressionSpanHelper suppressionHelper) private booleanbooleansetSpawnable(ISpawnableWithModel spawnable) booleansetSpawnable(ISpawnableWithModel spawnable, boolean maxScale) private voidsplitRangeToSpawnSpans(int min, int max) toString()booleanvalidatePosition(int invalidMaterials)
-
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
-
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
-
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
-
spawnModel
-
modifierScope
-
collisionResult
-
position
-
executionContext
-
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
-
setSpawnable
-
setModel
-
clearModel
private void clearModel() -
newModel
public void newModel() -
getModel
-
setChunk
-
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
-
getModifierScope
-
set
-
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
-
canSpawn
-
intersectsEntity
-
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
-
newPosition
-
newRotation
-
toString
-