geforkt von Mirrors/Paper
SPIGOT-7261: Add AsyncStructureSpawnEvent
By: Lauriichan <laura.endress@syntaxphoenix.com>
Dieser Commit ist enthalten in:
Ursprung
0fea70d4c9
Commit
340655c920
@ -0,0 +1,95 @@
|
||||
package org.bukkit.event.world;
|
||||
|
||||
import org.bukkit.World;
|
||||
import org.bukkit.event.Cancellable;
|
||||
import org.bukkit.event.HandlerList;
|
||||
import org.bukkit.generator.structure.Structure;
|
||||
import org.bukkit.util.BoundingBox;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
/**
|
||||
* Called when a {@link Structure} is naturally generated in the world.
|
||||
*/
|
||||
public class AsyncStructureSpawnEvent extends WorldEvent implements Cancellable {
|
||||
|
||||
private static final HandlerList handlers = new HandlerList();
|
||||
private boolean cancelled = false;
|
||||
|
||||
private final Structure structure;
|
||||
private final BoundingBox boundingBox;
|
||||
|
||||
private final int chunkX, chunkZ;
|
||||
|
||||
public AsyncStructureSpawnEvent(@NotNull World world, @NotNull Structure structure, @NotNull BoundingBox boundingBox, int chunkX, int chunkZ) {
|
||||
super(world, true);
|
||||
this.structure = structure;
|
||||
this.boundingBox = boundingBox;
|
||||
this.chunkX = chunkX;
|
||||
this.chunkZ = chunkZ;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the structure reference that is generated.
|
||||
*
|
||||
* @return the structure
|
||||
*/
|
||||
@NotNull
|
||||
public Structure getStructure() {
|
||||
return structure;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the bounding box of the structure.
|
||||
*
|
||||
* @return the bounding box
|
||||
*/
|
||||
@NotNull
|
||||
public BoundingBox getBoundingBox() {
|
||||
return boundingBox;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the x coordinate of the origin chunk of the structure.
|
||||
*
|
||||
* <b>Note, it is not safe to attempt to retrieve or interact with this
|
||||
* chunk. This event is informative only!</b>
|
||||
*
|
||||
* @return the chunk x coordinate
|
||||
*/
|
||||
public int getChunkX() {
|
||||
return chunkX;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the z coordinate of the origin chunk of the structure.
|
||||
*
|
||||
* <b>Note, it is not safe to attempt to retrieve or interact with this
|
||||
* chunk. This event is informative only!</b>
|
||||
*
|
||||
* @return the chunk z coordinate
|
||||
*/
|
||||
public int getChunkZ() {
|
||||
return chunkZ;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isCancelled() {
|
||||
return cancelled;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setCancelled(boolean cancel) {
|
||||
cancelled = cancel;
|
||||
}
|
||||
|
||||
@NotNull
|
||||
@Override
|
||||
public HandlerList getHandlers() {
|
||||
return handlers;
|
||||
}
|
||||
|
||||
@NotNull
|
||||
public static HandlerList getHandlerList() {
|
||||
return handlers;
|
||||
}
|
||||
}
|
Laden…
In neuem Issue referenzieren
Einen Benutzer sperren