ElvishHorn.java 1.0 KB

1234567891011121314151617181920212223242526272829303132333435
  1. package me.km.effects.active;
  2. import me.km.effects.ActiveEffectBase;
  3. import me.km.effects.EffectUtils;
  4. import net.minecraft.entity.player.EntityPlayerMP;
  5. import net.minecraft.init.MobEffects;
  6. import net.minecraft.init.SoundEvents;
  7. import net.minecraft.util.EnumParticleTypes;
  8. import net.minecraft.world.WorldServer;
  9. public class ElvishHorn extends ActiveEffectBase
  10. {
  11. @Override
  12. protected boolean executeEffect(EntityPlayerMP p, int power)
  13. {
  14. int time = 600 * power;
  15. EffectUtils.playSound(p, SoundEvents.ENTITY_GHAST_SCREAM);
  16. WorldServer w = p.getServerWorld();
  17. for(int i = 1; i <= power + 2; i++)
  18. {
  19. EffectUtils.spawnParticleCircle(w, p, EnumParticleTypes.NOTE, i, 6 * i);
  20. }
  21. EffectUtils.getPlayersOfGuild(p, power + 2).forEach(pl ->
  22. {
  23. EffectUtils.addPotionTo(p, MobEffects.SPEED, time, 1);
  24. });
  25. return true;
  26. }
  27. @Override
  28. protected int getManaCost(int manaFactor)
  29. {
  30. return 5 * manaFactor;
  31. }
  32. }