mirror of
https://github.com/PaperMC/Paper.git
synced 2024-12-28 07:20:24 +01:00
Add Structure check API
This commit is contained in:
parent
41ca517939
commit
94e488f80d
1 changed files with 24 additions and 0 deletions
|
@ -78,6 +78,30 @@ public interface World extends RegionAccessor, WorldInfo, PluginMessageRecipient
|
|||
*/
|
||||
int getPlayerCount();
|
||||
// Paper end
|
||||
// Paper start - structure check API
|
||||
/**
|
||||
* Check if the naturally-generated structure exists at the position.
|
||||
* <p>
|
||||
* Note that if the position is not loaded, this may cause chunk loads/generation
|
||||
* to check if a structure is at that position. Use {@link #isPositionLoaded(io.papermc.paper.math.Position)}
|
||||
* to check if a position is loaded
|
||||
*
|
||||
* @param position the position to check at
|
||||
* @param structure the structure to check for
|
||||
* @return true if that structure exists at the position
|
||||
*/
|
||||
boolean hasStructureAt(io.papermc.paper.math.@NotNull Position position, @NotNull Structure structure);
|
||||
|
||||
/**
|
||||
* Checks if this position is loaded.
|
||||
*
|
||||
* @param position position to check
|
||||
* @return true if loaded
|
||||
*/
|
||||
default boolean isPositionLoaded(io.papermc.paper.math.@NotNull Position position) {
|
||||
return this.isChunkLoaded(position.blockX() >> 4, position.blockZ() >> 4);
|
||||
}
|
||||
// Paper end
|
||||
|
||||
/**
|
||||
* Gets the {@link Block} at the given coordinates
|
||||
|
|
Loading…
Reference in a new issue