Помогите Задержка стрельбы.

  • Автор темы Автор темы Kloper
  • Дата начала Дата начала

Kloper

Активный участник
Пользователь
Баллы
76
Имя в Minecraft
f3azzy
Привет.

Нужно чтобы при нажатии ПКМ из стрелы вылетали снежки, но с некоторой задержкой.

Вот мой код, он работает, но снежки летят без задержки.


Код:
@EventHandler
    public void fire(PlayerInteractEvent e)
    {
        Player p = e.getPlayer();
        if(e.getAction() != Action.RIGHT_CLICK_AIR && e.getAction() != Action.RIGHT_CLICK_BLOCK) return;
        
        if(p.getInventory().getItemInHand().getType() == Material.ARROW) {
        
            ItemStack item = e.getPlayer().getInventory().getItemInHand();
            
            if(!item.getItemMeta().hasDisplayName()) return;
            if(!item.getItemMeta().getDisplayName().equals("§4§lFIRE!")) return;
            
        Entity arrow = p.launchProjectile(Snowball.class);
        arrow.setVelocity(p.getLocation().getDirection().multiply(1f));
        arrow.setCustomName("§6§lRepulsor");
        arrow.setCustomNameVisible(true);
        arrow.setFireTicks(14440);
        arrow.setSilent(true);
        }
    }

P.S - Да, да, код убогий 😁DD
 
храни currentTimeMillis в мапе по ключу игрока и если определённое время не прошло, то отменять бросание.
PS: можешь сделать класс-хранилище кулдаунов и уже его юзать в мапе, типа cooldowns.get(player).isPassed();
 
Назад
Верх