55 lines
1.5 KiB
Java
55 lines
1.5 KiB
Java
package org.bukkit.craftbukkit.entity;
|
|
|
|
import net.minecraft.server.EntityCreeper;
|
|
|
|
import org.bukkit.craftbukkit.CraftServer;
|
|
import org.bukkit.entity.Creeper;
|
|
import org.bukkit.entity.EntityType;
|
|
import org.bukkit.event.entity.CreeperPowerEvent;
|
|
|
|
public class CraftCreeper extends CraftMonster implements Creeper {
|
|
|
|
public CraftCreeper(CraftServer server, EntityCreeper entity) {
|
|
super(server, entity);
|
|
}
|
|
|
|
public boolean isPowered() {
|
|
return getHandle().isPowered();
|
|
}
|
|
|
|
public void setPowered(boolean powered) {
|
|
CraftServer server = this.server;
|
|
Creeper entity = (Creeper) this.getHandle().getBukkitEntity();
|
|
|
|
if (powered) {
|
|
CreeperPowerEvent event = new CreeperPowerEvent(entity, CreeperPowerEvent.PowerCause.SET_ON);
|
|
server.getPluginManager().callEvent(event);
|
|
|
|
if (!event.isCancelled()) {
|
|
getHandle().setPowered(true);
|
|
}
|
|
} else {
|
|
CreeperPowerEvent event = new CreeperPowerEvent(entity, CreeperPowerEvent.PowerCause.SET_OFF);
|
|
server.getPluginManager().callEvent(event);
|
|
|
|
if (!event.isCancelled()) {
|
|
getHandle().setPowered(false);
|
|
}
|
|
}
|
|
}
|
|
|
|
@Override
|
|
public EntityCreeper getHandle() {
|
|
return (EntityCreeper) entity;
|
|
}
|
|
|
|
@Override
|
|
public String toString() {
|
|
return "CraftCreeper";
|
|
}
|
|
|
|
public EntityType getType() {
|
|
return EntityType.CREEPER;
|
|
}
|
|
}
|