Войти или зарегистрироваться
  • Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.

Помогите Уничтожение блока когда по нему кликают.

SweatyDieF

Новичок
Пользователь
Баллы
21
Имя в Minecraft
SweatyDieF
Мне нужно сделать так, если у игрока Gamemode 0 и он кликает по блоку земли [Лкм], то данный блок уничтожается. Пробовал делать через BlockDamageEvent но походу не подходит для этого.
 
А как узнать по какому он блоку кликнул?
Java:
@EventHandler
  public void onPlayerClick(PlayerInteractEvent e)
  {
     if (e.getAction() == Action.LEFT_CLICK_BLOCK)
     {
    //idk
     }
  }
 
Вам нужно что бы после "уничтожения" блока блок дропался?
 
Java:
  @EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true)
   public void onPlayerClick(PlayerInteractEvent event) {
     Block block = event.getClickedBlock();
     Player player = event.getPlayer();
     if(event.getAction() == Action.LEFT_CLICK_BLOCK && block != null && player.getGameMode() == GameMode.SURVIVAL && block.getType() != Material.BEDROCK){
       block.breakNaturally(player.getItemInHand());
     }
   }
 
Java:
  @EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true)
   public void onPlayerClick(PlayerInteractEvent event) {
     Block block = event.getClickedBlock();
     if(event.getAction() == Action.LEFT_CLICK_BLOCK && block != null && block.getType() != Material.BEDROCK){
       block.breakNaturally(event.getPlayer().getItemInHand());
     }
   }
Так вы сломаете не только землю.
 
Тебе как надо?Что бы блок исчез,или дропался?
 
Мне нужно сделать так что бы блок уничтожался с такой анимацией будто он в ГМ'е, но при этом он находиться в сурвивал моде.
block.getWorld().platEffect(block.getLocation(), EffectType.STEP_SOUND, block.getType(), data); //Эффект разрушения
block.setType(Material.AIR);//Удаление блока
 

Поделиться этой страницей

Назад
Верх