diff options
author | sunkid <sunkid@iminurnetz.com> | 2011-07-19 10:21:17 -0700 |
---|---|---|
committer | EvilSeph <evilseph@gmail.com> | 2011-07-28 02:23:40 -0400 |
commit | 879390d1facfc9e998a53c90f5dd6556a46fe51c (patch) | |
tree | 3b89ca3f8dfdb56cedc35b7ebd84fb9c74b72875 | |
parent | 714eb939c640df1ec8513e2c17b23077c9e53bae (diff) | |
download | bukkit-879390d1facfc9e998a53c90f5dd6556a46fe51c.tar bukkit-879390d1facfc9e998a53c90f5dd6556a46fe51c.tar.gz bukkit-879390d1facfc9e998a53c90f5dd6556a46fe51c.tar.lz bukkit-879390d1facfc9e998a53c90f5dd6556a46fe51c.tar.xz bukkit-879390d1facfc9e998a53c90f5dd6556a46fe51c.zip |
Retiring EntityDamageByProjectileEvent in favor of EntityDamageEvent.
3 files changed, 27 insertions, 11 deletions
diff --git a/src/main/java/org/bukkit/entity/Projectile.java b/src/main/java/org/bukkit/entity/Projectile.java index 95666eac..15950621 100644 --- a/src/main/java/org/bukkit/entity/Projectile.java +++ b/src/main/java/org/bukkit/entity/Projectile.java @@ -16,8 +16,21 @@ public interface Projectile extends Entity { /** * Set the shooter of this projectile * - * @param shooter - * the {@link LivingEntity} that shot this projectile + * @param shooter the {@link LivingEntity} that shot this projectile */ public void setShooter(LivingEntity shooter); + + /** + * Determine if this projectile should bounce or not when it hits. + * + * @return true if it should bounce. + */ + public boolean doesBounce(); + + /** + * Set whether or not this projectile should bounce or not when it hits something. + * + * @param doesBounce whether or not it should bounce. + */ + public void setBounce(boolean doesBounce); } diff --git a/src/main/java/org/bukkit/event/entity/EntityDamageByProjectileEvent.java b/src/main/java/org/bukkit/event/entity/EntityDamageByProjectileEvent.java index 760f4055..5419b019 100644 --- a/src/main/java/org/bukkit/event/entity/EntityDamageByProjectileEvent.java +++ b/src/main/java/org/bukkit/event/entity/EntityDamageByProjectileEvent.java @@ -1,28 +1,25 @@ package org.bukkit.event.entity; -import java.util.Random; - import org.bukkit.entity.Entity; import org.bukkit.entity.Projectile; /** * Called when an entity is damaged by a projectile + * + * @deprecated use {@link EntityDamageByEntityEvent} instead, where {@link EntityDamageByEntityEvent#getDamager()} will return the {@link Projectile} */ +@Deprecated public class EntityDamageByProjectileEvent extends EntityDamageByEntityEvent { private Projectile projectile; - private boolean bounce; public EntityDamageByProjectileEvent(Entity damagee, Projectile projectile, DamageCause cause, int damage) { this(projectile.getShooter(), damagee, projectile, cause, damage); } public EntityDamageByProjectileEvent(Entity damager, Entity damagee, Projectile projectile, DamageCause cause, int damage) { - super(damager, damagee, cause, damage); + super(damager, projectile, DamageCause.PROJECTILE, damage); this.projectile = projectile; - Random random = new Random(); - - this.bounce = random.nextBoolean(); } /** @@ -35,10 +32,10 @@ public class EntityDamageByProjectileEvent extends EntityDamageByEntityEvent { } public void setBounce(boolean bounce) { - this.bounce = bounce; + projectile.setBounce(bounce); } public boolean getBounce() { - return bounce; + return projectile.doesBounce(); } } diff --git a/src/main/java/org/bukkit/event/entity/EntityDamageEvent.java b/src/main/java/org/bukkit/event/entity/EntityDamageEvent.java index 308fee46..369e7abd 100644 --- a/src/main/java/org/bukkit/event/entity/EntityDamageEvent.java +++ b/src/main/java/org/bukkit/event/entity/EntityDamageEvent.java @@ -78,6 +78,12 @@ public class EntityDamageEvent extends EntityEvent implements Cancellable { */ ENTITY_ATTACK, /** + * Damage caused when attacked by a projectile. + * + * Damage: variable + */ + PROJECTILE, + /** * Damage caused by being put in a block * * Damage: 1 |