summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoraPunch <alexpuncochar@yahoo.com>2012-02-16 15:14:12 -0600
committerEvilSeph <evilseph@gmail.com>2012-02-23 05:54:16 -0500
commit697e67f3e699673158198ff46e3a6c1bf612834e (patch)
tree8a9348535cd52430061f4419cb72dc5fe24746ed
parentce4a390b00fa6cec9b9d9941e2a2b09b8f9e8b6b (diff)
downloadbukkit-697e67f3e699673158198ff46e3a6c1bf612834e.tar
bukkit-697e67f3e699673158198ff46e3a6c1bf612834e.tar.gz
bukkit-697e67f3e699673158198ff46e3a6c1bf612834e.tar.lz
bukkit-697e67f3e699673158198ff46e3a6c1bf612834e.tar.xz
bukkit-697e67f3e699673158198ff46e3a6c1bf612834e.zip
[Bleeding] Added launchProjectile.
Use launchProjectile in place of individual throwSnowball, throwEgg, and shootArrow methods
-rw-r--r--src/main/java/org/bukkit/entity/LivingEntity.java15
-rw-r--r--src/test/java/org/bukkit/plugin/messaging/TestPlayer.java5
2 files changed, 20 insertions, 0 deletions
diff --git a/src/main/java/org/bukkit/entity/LivingEntity.java b/src/main/java/org/bukkit/entity/LivingEntity.java
index a6b4e9b2..3c0f4cae 100644
--- a/src/main/java/org/bukkit/entity/LivingEntity.java
+++ b/src/main/java/org/bukkit/entity/LivingEntity.java
@@ -90,25 +90,40 @@ public interface LivingEntity extends Entity {
/**
* Throws an egg from the entity.
*
+ * @deprecated Use launchProjectile(Egg.class) instead
* @return The egg thrown.
*/
+ @Deprecated
public Egg throwEgg();
/**
* Throws a snowball from the entity.
*
+ * @deprecated Use launchProjectile(Snowball.class) instead
* @return The snowball thrown.
*/
+ @Deprecated
public Snowball throwSnowball();
/**
* Shoots an arrow from the entity.
*
+ * @deprecated Use launchProjectile(Arrow.class) instead
* @return The arrow shot.
*/
+ @Deprecated
public Arrow shootArrow();
/**
+ * Launches a {@link Projectile} from the entity.
+ *
+ * @param projectile Class of the projectile to launch
+ *
+ * @return The launched projectile.
+ */
+ public <T extends Projectile> T launchProjectile(Class<? extends T> projectile);
+
+ /**
* Returns whether this entity is inside a vehicle.
*
* @return True if the entity is in a vehicle.
diff --git a/src/test/java/org/bukkit/plugin/messaging/TestPlayer.java b/src/test/java/org/bukkit/plugin/messaging/TestPlayer.java
index ef2e737b..4ecd9745 100644
--- a/src/test/java/org/bukkit/plugin/messaging/TestPlayer.java
+++ b/src/test/java/org/bukkit/plugin/messaging/TestPlayer.java
@@ -14,6 +14,7 @@ import org.bukkit.entity.Egg;
import org.bukkit.entity.Entity;
import org.bukkit.entity.EntityType;
import org.bukkit.entity.Player;
+import org.bukkit.entity.Projectile;
import org.bukkit.entity.Snowball;
import org.bukkit.entity.Vehicle;
import org.bukkit.event.entity.EntityDamageEvent;
@@ -650,6 +651,10 @@ public class TestPlayer implements Player {
throw new UnsupportedOperationException("Not supported yet.");
}
+ public <T extends Projectile> T launchProjectile(Class<? extends T> projectile) {
+ throw new UnsupportedOperationException("Not supported yet.");
+ }
+
public EntityType getType() {
return EntityType.PLAYER;
}