FireProtectionRain.java 980 B

12345678910111213141516171819202122232425262728293031323334
  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.util.EnumParticleTypes;
  7. import net.minecraft.util.math.Vec3d;
  8. import net.minecraft.world.WorldServer;
  9. public class FireProtectionRain extends ActiveEffectBase
  10. {
  11. @Override
  12. protected boolean executeEffect(EntityPlayerMP p, int power)
  13. {
  14. WorldServer w = p.getServerWorld();
  15. Vec3d v = p.getPositionVector();
  16. for(int i = 1; i <= power + 2; i++)
  17. {
  18. EffectUtils.playEffectCircle(w, v, EnumParticleTypes.FLAME, i, 6 * i);
  19. }
  20. EffectUtils.getPlayersOfGuild(p, power + 2).forEach(pl ->
  21. {
  22. EffectUtils.addPotionTo(p, MobEffects.FIRE_RESISTANCE, 240, 1);
  23. });
  24. return true;
  25. }
  26. @Override
  27. protected int getManaCost(int manaFactor)
  28. {
  29. return 1;
  30. }
  31. }