Added the concept of a projectile.

By: sunkid <sunkid@iminurnetz.com>
This commit is contained in:
Bukkit/Spigot
2011-06-18 08:09:41 -07:00
parent 2a62ac59bf
commit 31e3c65440
11 changed files with 83 additions and 16 deletions

View File

@@ -2,6 +2,8 @@ package org.bukkit.event;
import java.io.Serializable;
import org.bukkit.entity.Projectile;
/**
* Represents an event
*/
@@ -618,6 +620,12 @@ public abstract class Event implements Serializable {
* @see org.bukkit.event.entity.EntityTameEvent
*/
ENTITY_TAME (Category.LIVING_ENTITY),
/**
* Called when a {@link Projectile} hits something
*
* @see org.bukkit.event.entity.ProjectileHitEvent
*/
PROJECTILE_HIT (Category.ENTITY),
/**
* Called when a LivingEntity is regains health

View File

@@ -3,13 +3,18 @@ package org.bukkit.event.entity;
import java.util.Random;
import org.bukkit.entity.Entity;
import org.bukkit.entity.Projectile;
public class EntityDamageByProjectileEvent extends EntityDamageByEntityEvent {
private Entity projectile;
private Projectile projectile;
private boolean bounce;
public EntityDamageByProjectileEvent(Entity damager, Entity damagee, Entity projectile, DamageCause cause, int damage) {
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);
this.projectile = projectile;
Random random = new Random();
@@ -19,9 +24,10 @@ public class EntityDamageByProjectileEvent extends EntityDamageByEntityEvent {
/**
* The projectile used to cause the event
*
* @return the projectile
*/
public Entity getProjectile() {
public Projectile getProjectile() {
return projectile;
}

View File

@@ -41,4 +41,6 @@ public class EntityListener implements Listener {
public void onEntityTame(EntityTameEvent event) {}
public void onEntityRegainHealth(EntityRegainHealthEvent event) {}
public void onProjectileHit(ProjectileHitEvent event) {}
}

View File

@@ -0,0 +1,11 @@
package org.bukkit.event.entity;
import org.bukkit.entity.Projectile;
public class ProjectileHitEvent extends EntityEvent {
public ProjectileHitEvent(Projectile projectile) {
super(Type.PROJECTILE_HIT, projectile);
}
}