Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package me.Nikewade.VallendiaMinigame.Abilities;
- import java.util.Arrays;
- import java.util.List;
- import org.bukkit.Material;
- import org.bukkit.Particle;
- import org.bukkit.entity.Entity;
- import org.bukkit.entity.LivingEntity;
- import org.bukkit.entity.Player;
- import org.bukkit.inventory.ItemStack;
- import org.bukkit.potion.PotionEffectType;
- import de.slikey.effectlib.effect.SphereEffect;
- import me.Nikewade.VallendiaMinigame.VallendiaMinigame;
- import me.Nikewade.VallendiaMinigame.Interface.Ability;
- import me.Nikewade.VallendiaMinigame.Utils.AbilityUtils;
- public class FlashbangAbility implements Ability{
- int range = 8;
- @Override
- public String getName() {
- // TODO Auto-generated method stub
- return "Flashbang";
- }
- @Override
- public AbilityType getAbilityType() {
- // TODO Auto-generated method stub
- return AbilityType.UTILITY;
- }
- @Override
- public List<String> getDescription() {
- // TODO Auto-generated method stub
- return Arrays.asList("Throw a flashbang projectile that explodes when landing,",
- "blinding nearby players within " + range + " blocks.");
- }
- @Override
- public ItemStack getGuiItem() {
- // TODO Auto-generated method stub
- return new ItemStack(Material.SULPHUR);
- }
- @Override
- public boolean RunAbility(Player p) {
- // TODO Auto-generated method stub
- SphereEffect se = new SphereEffect(VallendiaMinigame.getInstance().effectmanager);
- se.particle = Particle.SMOKE_NORMAL;
- se.disappearWithOriginEntity = true;
- se.infinite();
- se.radius = 0.1;
- se.particles = 5;
- se.speed = (float) 0;
- se.visibleRange = 50;
- SphereEffect se2 = new SphereEffect(VallendiaMinigame.getInstance().effectmanager);
- se2.particle = Particle.CLOUD;
- se2.radius = 10;
- se2.particles = 50;
- se2.speed = (float) 0;
- se2.iterations = 2;
- Runnable run = new Runnable()
- {
- @Override
- public void run() {
- // TODO Auto-generated method stub
- se2.setLocation(se.getLocation());
- se2.start();
- for(Entity e : AbilityUtils.getAoeTargets(p, se.getLocation(), 10, 10, 10))
- {
- AbilityUtils.addPotionDuration((LivingEntity) e, PotionEffectType.BLINDNESS, 2, 5*20 );
- }
- }
- };
- AbilityUtils.arcParticle(p, se, 1, run);
- return true;
- }
- @Override
- public void DisableAbility(Player p) {
- // TODO Auto-generated method stub
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement