package me.km.effects.active; import me.km.KajetansMod; import me.km.effects.ActiveEffectBase; import me.km.effects.EffectUtils; import net.minecraft.entity.player.EntityPlayerMP; import net.minecraft.entity.projectile.EntityArrow; public class RapidFire extends ActiveEffectBase { @Override protected boolean executeEffect(EntityPlayerMP p, int power) { shoot(p, power); for(int i = 1; i <= 10; i++) { KajetansMod.scheduler.scheduleTask(() -> shoot(p, power), 10 * i); } return true; } @Override protected int getManaCost(int manaFactor) { return 5 * manaFactor; } private void shoot(EntityPlayerMP p, int power) { EntityArrow arrow = EffectUtils.launchProjectile(p, EntityArrow.class, power / 4f, p); KajetansMod.effects.addEntityData(p, "rapidfire"); arrow.pickupStatus = EntityArrow.PickupStatus.DISALLOWED; } }