mirror of
https://github.com/PaperMC/Paper.git
synced 2024-12-27 11:27:35 +01:00
Entity AddTo/RemoveFrom World Events
This commit is contained in:
parent
1e271136de
commit
7ad9895c25
@ -0,0 +1,44 @@
|
||||
package com.destroystokyo.paper.event.entity;
|
||||
|
||||
import org.bukkit.World;
|
||||
import org.bukkit.entity.Entity;
|
||||
import org.bukkit.event.HandlerList;
|
||||
import org.bukkit.event.entity.CreatureSpawnEvent;
|
||||
import org.bukkit.event.entity.EntityEvent;
|
||||
import org.jetbrains.annotations.ApiStatus;
|
||||
import org.jspecify.annotations.NullMarked;
|
||||
|
||||
/**
|
||||
* Fired any time an entity is being added to the world for any reason (including a chunk loading).
|
||||
* <p>
|
||||
* Not to be confused with {@link CreatureSpawnEvent}
|
||||
*/
|
||||
@NullMarked
|
||||
public class EntityAddToWorldEvent extends EntityEvent {
|
||||
|
||||
private static final HandlerList HANDLER_LIST = new HandlerList();
|
||||
|
||||
private final World world;
|
||||
|
||||
@ApiStatus.Internal
|
||||
public EntityAddToWorldEvent(final Entity entity, final World world) {
|
||||
super(entity);
|
||||
this.world = world;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return The world that the entity is being added to
|
||||
*/
|
||||
public World getWorld() {
|
||||
return this.world;
|
||||
}
|
||||
|
||||
@Override
|
||||
public HandlerList getHandlers() {
|
||||
return HANDLER_LIST;
|
||||
}
|
||||
|
||||
public static HandlerList getHandlerList() {
|
||||
return HANDLER_LIST;
|
||||
}
|
||||
}
|
@ -0,0 +1,42 @@
|
||||
package com.destroystokyo.paper.event.entity;
|
||||
|
||||
import org.bukkit.World;
|
||||
import org.bukkit.entity.Entity;
|
||||
import org.bukkit.event.HandlerList;
|
||||
import org.bukkit.event.entity.EntityEvent;
|
||||
import org.jetbrains.annotations.ApiStatus;
|
||||
import org.jspecify.annotations.NullMarked;
|
||||
|
||||
/**
|
||||
* Fired any time an entity is being removed from a world for any reason (including a chunk unloading).
|
||||
* Note: The entity is updated prior to this event being called, as such, the entity's world may not be equal to {@link #getWorld()}.
|
||||
*/
|
||||
@NullMarked
|
||||
public class EntityRemoveFromWorldEvent extends EntityEvent {
|
||||
|
||||
private static final HandlerList HANDLER_LIST = new HandlerList();
|
||||
|
||||
private final World world;
|
||||
|
||||
@ApiStatus.Internal
|
||||
public EntityRemoveFromWorldEvent(final Entity entity, final World world) {
|
||||
super(entity);
|
||||
this.world = world;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return The world that the entity is being removed from
|
||||
*/
|
||||
public World getWorld() {
|
||||
return this.world;
|
||||
}
|
||||
|
||||
@Override
|
||||
public HandlerList getHandlers() {
|
||||
return HANDLER_LIST;
|
||||
}
|
||||
|
||||
public static HandlerList getHandlerList() {
|
||||
return HANDLER_LIST;
|
||||
}
|
||||
}
|
@ -1,5 +1,6 @@
|
||||
package org.bukkit.event.entity;
|
||||
|
||||
import com.destroystokyo.paper.event.entity.EntityRemoveFromWorldEvent;
|
||||
import org.bukkit.entity.Entity;
|
||||
import org.bukkit.event.HandlerList;
|
||||
import org.jetbrains.annotations.ApiStatus;
|
||||
@ -11,8 +12,9 @@ import org.jetbrains.annotations.NotNull;
|
||||
* This event should only be used for monitoring. The result
|
||||
* of modifying the entity during or after this event is unspecified.
|
||||
* This event is not called for a {@link org.bukkit.entity.Player}.
|
||||
* @deprecated use {@link EntityRemoveFromWorldEvent} instead
|
||||
*/
|
||||
@ApiStatus.Experimental
|
||||
@Deprecated(forRemoval = true)
|
||||
public class EntityRemoveEvent extends EntityEvent {
|
||||
|
||||
private static final HandlerList handlers = new HandlerList();
|
||||
@ -112,5 +114,6 @@ public class EntityRemoveEvent extends EntityEvent {
|
||||
* When the chunk an entity is in gets unloaded.
|
||||
*/
|
||||
UNLOAD,
|
||||
DISCARD
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user