Citizens2/main/src/main/java/net/citizensnpcs/trait/Powered.java

47 lines
1.1 KiB
Java

package net.citizensnpcs.trait;
import org.bukkit.entity.Creeper;
import net.citizensnpcs.api.persistence.Persist;
import net.citizensnpcs.api.trait.Trait;
import net.citizensnpcs.api.trait.TraitName;
/**
* Persists {@link Creeper} powered status.
*
* @see Creeper#setPowered(boolean)
*/
@TraitName("powered")
public class Powered extends Trait implements Toggleable {
@Persist("")
private boolean powered;
public Powered() {
super("powered");
}
public boolean isPowered() {
return powered;
}
@Override
public void onSpawn() {
if (npc.getEntity() instanceof Creeper) {
((Creeper) npc.getEntity()).setPowered(powered);
}
}
@Override
public boolean toggle() {
powered = !powered;
if (npc.getEntity() instanceof Creeper) {
((Creeper) npc.getEntity()).setPowered(powered);
}
return powered;
}
@Override
public String toString() {
return "Powered{" + powered + "}";
}
}