diff --git a/paper-api/src/main/java/org/bukkit/event/entity/EntityDismountEvent.java b/paper-api/src/main/java/org/bukkit/event/entity/EntityDismountEvent.java new file mode 100644 index 0000000000..00c3f50532 --- /dev/null +++ b/paper-api/src/main/java/org/bukkit/event/entity/EntityDismountEvent.java @@ -0,0 +1,52 @@ +package org.bukkit.event.entity; + +import org.bukkit.entity.Entity; +import org.bukkit.event.Cancellable; +import org.bukkit.event.HandlerList; +import org.jetbrains.annotations.NotNull; + +/** + * Called when an entity stops riding another entity. + */ +public class EntityDismountEvent extends EntityEvent implements Cancellable { + + private static final HandlerList handlers = new HandlerList(); + private boolean cancelled; + private final Entity dismounted; + + public EntityDismountEvent(@NotNull Entity what, @NotNull Entity dismounted) { + super(what); + this.dismounted = dismounted; + } + + /** + * Gets the entity which will no longer be ridden. + * + * @return dismounted entity + */ + @NotNull + public Entity getDismounted() { + return dismounted; + } + + @Override + public boolean isCancelled() { + return cancelled; + } + + @Override + public void setCancelled(boolean cancel) { + this.cancelled = cancel; + } + + @NotNull + @Override + public HandlerList getHandlers() { + return handlers; + } + + @NotNull + public static HandlerList getHandlerList() { + return handlers; + } +} diff --git a/paper-api/src/main/java/org/bukkit/event/entity/EntityMountEvent.java b/paper-api/src/main/java/org/bukkit/event/entity/EntityMountEvent.java new file mode 100644 index 0000000000..c3e4f34081 --- /dev/null +++ b/paper-api/src/main/java/org/bukkit/event/entity/EntityMountEvent.java @@ -0,0 +1,52 @@ +package org.bukkit.event.entity; + +import org.bukkit.entity.Entity; +import org.bukkit.event.Cancellable; +import org.bukkit.event.HandlerList; +import org.jetbrains.annotations.NotNull; + +/** + * Called when an entity attempts to ride another entity. + */ +public class EntityMountEvent extends EntityEvent implements Cancellable { + + private static final HandlerList handlers = new HandlerList(); + private boolean cancelled; + private final Entity mount; + + public EntityMountEvent(@NotNull Entity what, @NotNull Entity mount) { + super(what); + this.mount = mount; + } + + /** + * Gets the entity which will be ridden. + * + * @return mounted entity + */ + @NotNull + public Entity getMount() { + return mount; + } + + @Override + public boolean isCancelled() { + return cancelled; + } + + @Override + public void setCancelled(boolean cancel) { + this.cancelled = cancel; + } + + @NotNull + @Override + public HandlerList getHandlers() { + return handlers; + } + + @NotNull + public static HandlerList getHandlerList() { + return handlers; + } +}