package toadmess.explosives.events.handlers;
import org.bukkit.event.Event;
import org.bukkit.event.Event.Type;
import org.bukkit.event.entity.ExplosionPrimeEvent;
import toadmess.explosives.config.entity.EntityConf;
import toadmess.explosives.events.HEEvent;
import toadmess.explosives.events.Handler;
import toadmess.explosives.events.TippingPoint;
public class HandleFire implements Handler {
@Override
public void handle(final HEEvent ev) {
final EntityConf worldConf = ev.getApplicableConfig();
if(!worldConf.hasFireConfig()) {
return;
}
final ExplosionPrimeEvent downcastEvent = (ExplosionPrimeEvent) ev.event;
downcastEvent.setFire(worldConf.getFire());
}
@Override
public TippingPoint[] getTippingPointsHandled() {
return new TippingPoint[] { TippingPoint.CAN_CHANGE_EXPLOSION_FIRE_FLAG };
}
@Override
public Type[] getBukkitEventsRequired() {
return new Type[] { Event.Type.EXPLOSION_PRIME };
}
@Override
public boolean isNeededBy(final EntityConf thisConfig) {
return thisConfig.hasFireConfig();
}
}