geforkt von Mirrors/Paper
[Bleeding] Added EntityShootBowEvent. Thanks Zeerix.
By: Erik Broes <erikbroes@grum.nl>
Dieser Commit ist enthalten in:
Ursprung
bacfd8931d
Commit
85c66fd6f3
@ -793,6 +793,12 @@ public abstract class Event implements Serializable {
|
||||
* @see org.bukkit.event.entity.EntityCreatePortalEvent
|
||||
*/
|
||||
ENTITY_CREATE_PORTAL(Category.LIVING_ENTITY, EntityCreatePortalEvent.class),
|
||||
/**
|
||||
* Called when a LivingEntity shoots a bow firing an arrow
|
||||
*
|
||||
* @see org.bukkit.event.entity.EntityShootBowEvent
|
||||
*/
|
||||
ENTITY_SHOOT_BOW(Category.LIVING_ENTITY, EntityShootBowEvent.class),
|
||||
|
||||
/**
|
||||
* WEATHER EVENTS
|
||||
|
@ -157,6 +157,13 @@ public class EntityListener implements Listener {
|
||||
*/
|
||||
public void onFoodLevelChange(FoodLevelChangeEvent event) {}
|
||||
|
||||
/**
|
||||
* Called when a LivingEntity shoots a bow firing an arrow
|
||||
*
|
||||
* @param event Relevant event details
|
||||
*/
|
||||
public void onEntityShootBow(EntityShootBowEvent event) {}
|
||||
|
||||
/**
|
||||
* Called when a Slime splits into smaller Slimes upon death
|
||||
*
|
||||
|
@ -0,0 +1,81 @@
|
||||
package org.bukkit.event.entity;
|
||||
|
||||
import org.bukkit.entity.Entity;
|
||||
import org.bukkit.entity.LivingEntity;
|
||||
import org.bukkit.entity.Projectile;
|
||||
import org.bukkit.event.Cancellable;
|
||||
import org.bukkit.event.HandlerList;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
|
||||
/**
|
||||
* Called when a LivingEntity shoots a bow firing an arrow
|
||||
*/
|
||||
@SuppressWarnings("serial")
|
||||
public class EntityShootBowEvent extends EntityEvent implements Cancellable {
|
||||
private static final HandlerList handlers = new HandlerList();
|
||||
|
||||
private ItemStack bow;
|
||||
private Entity projectile;
|
||||
private float force;
|
||||
private boolean cancelled;
|
||||
|
||||
public EntityShootBowEvent(LivingEntity shooter, ItemStack bow, Projectile projectile, float force) {
|
||||
super(Type.ENTITY_SHOOT_BOW, shooter);
|
||||
this.bow = bow;
|
||||
this.projectile = projectile;
|
||||
this.force = force;
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the bow ItemStack used to fire the arrow; is null if the shooter is a skeleton
|
||||
*
|
||||
* @return the bow involved in this event, or null
|
||||
*/
|
||||
public ItemStack getBow() {
|
||||
return bow;
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the projectile which will be launched by this event
|
||||
*
|
||||
* @return the launched projectile
|
||||
*/
|
||||
public Entity getProjectile() {
|
||||
return projectile;
|
||||
}
|
||||
|
||||
/**
|
||||
* Replaces the projectile which will be launched
|
||||
*
|
||||
* @param projectile the new projectile
|
||||
*/
|
||||
public void setProjectile(Entity projectile) {
|
||||
this.projectile = projectile;
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the force the arrow was launched with
|
||||
*
|
||||
* @return bow shooting force, up to 1.0
|
||||
*/
|
||||
public float getForce() {
|
||||
return force;
|
||||
}
|
||||
|
||||
public boolean isCancelled() {
|
||||
return cancelled;
|
||||
}
|
||||
|
||||
public void setCancelled(boolean cancel) {
|
||||
cancelled = cancel;
|
||||
}
|
||||
|
||||
@Override
|
||||
public HandlerList getHandlers() {
|
||||
return handlers;
|
||||
}
|
||||
|
||||
public static HandlerList getHandlerList() {
|
||||
return handlers;
|
||||
}
|
||||
}
|
Laden…
In neuem Issue referenzieren
Einen Benutzer sperren