Add EntityToggleSwimEvent and isSwimming / setSwimming API

By: md_5 <git@md-5.net>
This commit is contained in:
Bukkit/Spigot 2018-07-15 16:17:23 +10:00
parent 767e4f6ccf
commit f4424f852e
2 changed files with 59 additions and 0 deletions

View File

@ -325,6 +325,22 @@ public interface LivingEntity extends Attributable, Entity, Damageable, Projecti
*/
public void setGliding(boolean gliding);
/**
* Checks to see if an entity is swimming.
*
* @return True if this entity is swimming.
*/
public boolean isSwimming();
/**
* Makes entity start or stop swimming.
*
* This may have unexpected results if the entity is not in water.
*
* @param swimming True if the entity is swimming.
*/
public void setSwimming(boolean swimming);
/**
* Sets whether an entity will have AI.
*

View File

@ -0,0 +1,43 @@
package org.bukkit.event.entity;
import org.bukkit.entity.LivingEntity;
import org.bukkit.event.Cancellable;
import org.bukkit.event.HandlerList;
/**
* Sent when an entity's swimming status is toggled.
*/
public class EntityToggleSwimEvent extends EntityEvent implements Cancellable {
private static final HandlerList handlers = new HandlerList();
private boolean cancel = false;
private final boolean isSwimming;
public EntityToggleSwimEvent(LivingEntity who, final boolean isSwimming) {
super(who);
this.isSwimming = isSwimming;
}
@Override
public boolean isCancelled() {
return cancel;
}
@Override
public void setCancelled(boolean cancel) {
this.cancel = cancel;
}
public boolean isSwimming() {
return isSwimming;
}
@Override
public HandlerList getHandlers() {
return handlers;
}
public static HandlerList getHandlerList() {
return handlers;
}
}