Fork of Poseidon providing Bukkit #1060 to older Beta versions (b1.0-b1.7.3)
at develop 53 lines 1.5 kB view raw
1package org.bukkit.craftbukkit.entity; 2 3import net.minecraft.server.EntityCreeper; 4import org.bukkit.craftbukkit.CraftServer; 5import org.bukkit.entity.Creeper; 6import org.bukkit.event.entity.CreeperPowerEvent; 7 8public class CraftCreeper extends CraftMonster implements Creeper { 9 10 public CraftCreeper(CraftServer server, EntityCreeper entity) { 11 super(server, entity); 12 } 13 14 @Override 15 public EntityCreeper getHandle() { 16 return (EntityCreeper) super.getHandle(); 17 } 18 19 @Override 20 public String toString() { 21 return "CraftCreeper"; 22 } 23 24 public boolean isPowered() { 25 return getHandle().isPowered(); 26 } 27 28 public void setPowered(boolean powered) { 29 // CraftBukkit start 30 CraftServer server = this.server; 31 org.bukkit.entity.Entity entity = this.getHandle().getBukkitEntity(); 32 33 if (powered) { 34 CreeperPowerEvent event = new CreeperPowerEvent(entity, CreeperPowerEvent.PowerCause.SET_ON); 35 server.getPluginManager().callEvent(event); 36 37 if (!event.isCancelled()) { 38 getHandle().setPowered(true); 39 } 40 } else { 41 CreeperPowerEvent event = new CreeperPowerEvent(entity, CreeperPowerEvent.PowerCause.SET_OFF); 42 server.getPluginManager().callEvent(event); 43 44 if (!event.isCancelled()) { 45 getHandle().setPowered(false); 46 } 47 } 48 49 // CraftBukkit end 50 51 } 52 53}