public interface MinecraftWorld extends ChunkProvider
Modifier and Type | Method and Description |
---|---|
void |
addChunk(Chunk chunk)
Add a chunk.
|
void |
addEntity(double x,
double y,
double height,
Entity entity) |
void |
addTileEntity(int x,
int y,
int height,
TileEntity tileEntity) |
int |
getBlockLightLevel(int x,
int y,
int height)
Returns
0 if height is too large. |
int |
getBlockTypeAt(int x,
int y,
int height)
Deprecated.
|
int |
getDataAt(int x,
int y,
int height)
Deprecated.
|
int |
getHighestNonAirBlock(int x,
int y)
Get the Z coordinate of the highest non-air block in a specific column.
|
Material |
getMaterialAt(int x,
int y,
int height)
Returns
null if height is too large. |
int |
getMaxHeight() |
int |
getMinHeight() |
int |
getSkyLightLevel(int x,
int y,
int height)
Returns
15 if height is too large. |
boolean |
isChunkPresent(int x,
int y)
Determine whether the world contains any data in a particular chunk (a
16 by 16 block area).
|
default void |
markForUpdateWorld(int x,
int y,
int height)
Mark a block to be updated by Minecraft when next loaded.
|
void |
setBlockLightLevel(int x,
int y,
int height,
int blockLightLevel)
Fails silently if
height is too large. |
void |
setBlockTypeAt(int x,
int y,
int height,
int blockType)
Deprecated.
|
void |
setDataAt(int x,
int y,
int height,
int data)
Deprecated.
|
void |
setMaterialAt(int x,
int y,
int height,
Material material)
Fails silently if
height is too large. |
void |
setSkyLightLevel(int x,
int y,
int height,
int skyLightLevel)
Fails silently if
height is too large. |
close, getChunk, getChunkForEditing
int getBlockTypeAt(int x, int y, int height)
getMaterialAt(int, int, int)
Constants.BLK_AIR
if height
is too large.int getDataAt(int x, int y, int height)
getMaterialAt(int, int, int)
0
if height
is too large.Material getMaterialAt(int x, int y, int height)
null
if height
is too large.void setBlockTypeAt(int x, int y, int height, int blockType)
setMaterialAt(int, int, int, Material)
height
is too large.void setDataAt(int x, int y, int height, int data)
setMaterialAt(int, int, int, Material)
height
is too large.void setMaterialAt(int x, int y, int height, Material material)
height
is too large.default void markForUpdateWorld(int x, int y, int height)
The default implementation uses ChunkProvider.getChunk(int, int)
to get the chunk, and if it exists invokes
Chunk.markForUpdateChunk(int, int, int)
on it.
int getMinHeight()
int getMaxHeight()
void addEntity(double x, double y, double height, Entity entity)
void addTileEntity(int x, int y, int height, TileEntity tileEntity)
int getBlockLightLevel(int x, int y, int height)
0
if height
is too large.void setBlockLightLevel(int x, int y, int height, int blockLightLevel)
height
is too large.int getSkyLightLevel(int x, int y, int height)
15
if height
is too large.void setSkyLightLevel(int x, int y, int height, int skyLightLevel)
height
is too large.boolean isChunkPresent(int x, int y)
isChunkPresent
in interface ChunkProvider
x
- The X coordinate in chunk coordinates.y
- The Y coordinate in chunk coordinates.true
if data is present for the specified chunk.void addChunk(Chunk chunk)
Platform
.chunk
- The chunk to add.int getHighestNonAirBlock(int x, int y)
x
- The X coordinate of the column.y
- The Y coordinate of the column.Integer.MIN_VALUE
if the
column is empty or no data is present
for the specified coordinates.