Added the implementation of the concept of an Explosive.
This commit is contained in:
parent
10fb5dc843
commit
fadd962b9c
@ -5,6 +5,7 @@ import java.util.List;
|
|||||||
// CraftBukkit start
|
// CraftBukkit start
|
||||||
import org.bukkit.craftbukkit.CraftServer;
|
import org.bukkit.craftbukkit.CraftServer;
|
||||||
import org.bukkit.craftbukkit.entity.CraftEntity;
|
import org.bukkit.craftbukkit.entity.CraftEntity;
|
||||||
|
import org.bukkit.entity.Explosive;
|
||||||
import org.bukkit.event.entity.EntityDamageByProjectileEvent;
|
import org.bukkit.event.entity.EntityDamageByProjectileEvent;
|
||||||
import org.bukkit.event.entity.EntityDamageEvent;
|
import org.bukkit.event.entity.EntityDamageEvent;
|
||||||
import org.bukkit.event.entity.EntityDamageEvent.DamageCause;
|
import org.bukkit.event.entity.EntityDamageEvent.DamageCause;
|
||||||
@ -26,6 +27,9 @@ public class EntityFireball extends Entity {
|
|||||||
public double d;
|
public double d;
|
||||||
public double e;
|
public double e;
|
||||||
|
|
||||||
|
public float yield = 1; // CraftBukkit
|
||||||
|
public boolean isIncendiary = true; // CraftBukkit
|
||||||
|
|
||||||
public EntityFireball(World world) {
|
public EntityFireball(World world) {
|
||||||
super(world);
|
super(world);
|
||||||
this.b(1.0F, 1.0F);
|
this.b(1.0F, 1.0F);
|
||||||
@ -151,7 +155,7 @@ public class EntityFireball extends Entity {
|
|||||||
|
|
||||||
CraftServer server = ((WorldServer) this.world).getServer();
|
CraftServer server = ((WorldServer) this.world).getServer();
|
||||||
|
|
||||||
ExplosionPrimeEvent event = new ExplosionPrimeEvent(CraftEntity.getEntity(server, this), 1.0F, true);
|
ExplosionPrimeEvent event = new ExplosionPrimeEvent((Explosive) CraftEntity.getEntity(server, this));
|
||||||
|
|
||||||
server.getPluginManager().callEvent(event);
|
server.getPluginManager().callEvent(event);
|
||||||
if (!event.isCancelled()) {
|
if (!event.isCancelled()) {
|
||||||
|
@ -3,12 +3,15 @@ package net.minecraft.server;
|
|||||||
// CraftBukkit start
|
// CraftBukkit start
|
||||||
import org.bukkit.craftbukkit.CraftServer;
|
import org.bukkit.craftbukkit.CraftServer;
|
||||||
import org.bukkit.craftbukkit.entity.CraftEntity;
|
import org.bukkit.craftbukkit.entity.CraftEntity;
|
||||||
|
import org.bukkit.entity.Explosive;
|
||||||
import org.bukkit.event.entity.ExplosionPrimeEvent;
|
import org.bukkit.event.entity.ExplosionPrimeEvent;
|
||||||
// CraftBukkit end
|
// CraftBukkit end
|
||||||
|
|
||||||
public class EntityTNTPrimed extends Entity {
|
public class EntityTNTPrimed extends Entity {
|
||||||
|
|
||||||
public int a;
|
public int a;
|
||||||
|
public float yield = 4; // CraftBukkit
|
||||||
|
public boolean isIncendiary = false; // CraftBukkit
|
||||||
|
|
||||||
public EntityTNTPrimed(World world) {
|
public EntityTNTPrimed(World world) {
|
||||||
super(world);
|
super(world);
|
||||||
@ -72,12 +75,12 @@ public class EntityTNTPrimed extends Entity {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private void explode() {
|
private void explode() {
|
||||||
float f = 4.0F;
|
|
||||||
|
|
||||||
// CraftBukkit start
|
// CraftBukkit start
|
||||||
|
// float f = 4.0F;
|
||||||
|
|
||||||
CraftServer server = ((WorldServer) this.world).getServer();
|
CraftServer server = ((WorldServer) this.world).getServer();
|
||||||
|
|
||||||
ExplosionPrimeEvent event = new ExplosionPrimeEvent(CraftEntity.getEntity(server, this), f, false);
|
ExplosionPrimeEvent event = new ExplosionPrimeEvent((Explosive) CraftEntity.getEntity(server, this));
|
||||||
server.getPluginManager().callEvent(event);
|
server.getPluginManager().callEvent(event);
|
||||||
|
|
||||||
if (!event.isCancelled()) {
|
if (!event.isCancelled()) {
|
||||||
|
@ -7,8 +7,6 @@ import org.bukkit.entity.Fireball;
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* A Fireball.
|
* A Fireball.
|
||||||
*
|
|
||||||
* @author Cogito
|
|
||||||
*/
|
*/
|
||||||
public class CraftFireball extends CraftEntity implements Fireball {
|
public class CraftFireball extends CraftEntity implements Fireball {
|
||||||
public CraftFireball(CraftServer server, EntityFireball entity) {
|
public CraftFireball(CraftServer server, EntityFireball entity) {
|
||||||
@ -19,4 +17,20 @@ public class CraftFireball extends CraftEntity implements Fireball {
|
|||||||
public String toString() {
|
public String toString() {
|
||||||
return "CraftFireball";
|
return "CraftFireball";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public float getYield() {
|
||||||
|
return ((EntityFireball) getHandle()).yield;
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean isIncendiary() {
|
||||||
|
return ((EntityFireball) getHandle()).isIncendiary;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setIsIncendiary(boolean isIncendiary) {
|
||||||
|
((EntityFireball) getHandle()).isIncendiary = isIncendiary;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setYield(float yield) {
|
||||||
|
((EntityFireball) getHandle()).yield = yield;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -16,4 +16,28 @@ public class CraftTNTPrimed extends CraftEntity implements TNTPrimed {
|
|||||||
return "CraftTNTPrimed";
|
return "CraftTNTPrimed";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public float getYield() {
|
||||||
|
return ((EntityTNTPrimed) getHandle()).yield;
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean isIncendiary() {
|
||||||
|
return ((EntityTNTPrimed) getHandle()).isIncendiary;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setIsIncendiary(boolean isIncendiary) {
|
||||||
|
((EntityTNTPrimed) getHandle()).isIncendiary = isIncendiary;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setYield(float yield) {
|
||||||
|
((EntityTNTPrimed) getHandle()).yield = yield;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getFuseTicks() {
|
||||||
|
return ((EntityTNTPrimed) getHandle()).a;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setFuseTicks(int fuseTicks) {
|
||||||
|
((EntityTNTPrimed) getHandle()).a = fuseTicks;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user