diff options
Diffstat (limited to 'src/main/java/net/minecraft/server/EntityWitherSkull.java')
-rw-r--r-- | src/main/java/net/minecraft/server/EntityWitherSkull.java | 93 |
1 files changed, 0 insertions, 93 deletions
diff --git a/src/main/java/net/minecraft/server/EntityWitherSkull.java b/src/main/java/net/minecraft/server/EntityWitherSkull.java deleted file mode 100644 index b797f8a4..00000000 --- a/src/main/java/net/minecraft/server/EntityWitherSkull.java +++ /dev/null @@ -1,93 +0,0 @@ -package net.minecraft.server; - -import org.bukkit.event.entity.ExplosionPrimeEvent; // CraftBukkit - -public class EntityWitherSkull extends EntityFireball { - - public EntityWitherSkull(World world) { - super(world); - this.a(0.3125F, 0.3125F); - } - - public EntityWitherSkull(World world, EntityLiving entityliving, double d0, double d1, double d2) { - super(world, entityliving, d0, d1, d2); - this.a(0.3125F, 0.3125F); - } - - protected float e() { - return this.isCharged() ? 0.73F : super.e(); - } - - public boolean isBurning() { - return false; - } - - public float a(Explosion explosion, World world, int i, int j, int k, Block block) { - float f = super.a(explosion, world, i, j, k, block); - - if (this.isCharged() && block != Blocks.BEDROCK && block != Blocks.ENDER_PORTAL && block != Blocks.ENDER_PORTAL_FRAME && block != Blocks.COMMAND) { - f = Math.min(0.8F, f); - } - - return f; - } - - protected void a(MovingObjectPosition movingobjectposition) { - if (!this.world.isStatic) { - if (movingobjectposition.entity != null) { - if (this.shooter != null) { - if (movingobjectposition.entity.damageEntity(DamageSource.mobAttack(this.shooter), 8.0F) && !movingobjectposition.entity.isAlive()) { - this.shooter.heal(5.0F, org.bukkit.event.entity.EntityRegainHealthEvent.RegainReason.WITHER); // CraftBukkit - } - } else { - movingobjectposition.entity.damageEntity(DamageSource.MAGIC, 5.0F); - } - - if (movingobjectposition.entity instanceof EntityLiving) { - byte b0 = 0; - - if (this.world.difficulty == EnumDifficulty.NORMAL) { - b0 = 10; - } else if (this.world.difficulty == EnumDifficulty.HARD) { - b0 = 40; - } - - if (b0 > 0) { - ((EntityLiving) movingobjectposition.entity).addEffect(new MobEffect(MobEffectList.WITHER.id, 20 * b0, 1)); - } - } - } - - // CraftBukkit start - ExplosionPrimeEvent event = new ExplosionPrimeEvent(this.getBukkitEntity(), 1.0F, false); - this.world.getServer().getPluginManager().callEvent(event); - - if (!event.isCancelled()) { - this.world.createExplosion(this, this.locX, this.locY, this.locZ, event.getRadius(), event.getFire(), this.world.getGameRules().getBoolean("mobGriefing")); - } - // CraftBukkit end - - this.die(); - } - } - - public boolean R() { - return false; - } - - public boolean damageEntity(DamageSource damagesource, float f) { - return false; - } - - protected void c() { - this.datawatcher.a(10, Byte.valueOf((byte) 0)); - } - - public boolean isCharged() { - return this.datawatcher.getByte(10) == 1; - } - - public void setCharged(boolean flag) { - this.datawatcher.watch(10, Byte.valueOf((byte) (flag ? 1 : 0))); - } -} |