Guest User

Untitled

a guest
Nov 3rd, 2024
62
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.68 KB | None | 0 0
  1. import org.bukkit.Bukkit; // Импортируем класс Bukkit для взаимодействия с сервером
  2. import org.bukkit.Material; // Импортируем класс Material для работы с блоками
  3. import org.bukkit.entity.Arrow; // Импортируем класс Arrow для работы со стрелами
  4. import org.bukkit.entity.Entity; // Импортируем класс Entity для работы с сущностями
  5. import org.bukkit.entity.Player; // Импортируем класс Player для работы с игроками
  6. import org.bukkit.event.EventHandler; // Импортируем аннотацию для обработки событий
  7. import org.bukkit.event.Listener; // Импортируем интерфейс Listener для обработки событий
  8. import org.bukkit.event.entity.EntityDamageByEntityEvent; // Импортируем событие столкновения сущностей
  9. import org.bukkit.plugin.java.JavaPlugin; // Импортируем класс JavaPlugin для создания плагина
  10.  
  11. public class ArrowHitPlugin extends JavaPlugin implements Listener { // Главный класс плагина, который расширяет JavaPlugin и реализует Listener
  12.    
  13.     @Override
  14.     public void onEnable() { // Метод, вызываемый при активации плагина
  15.         Bukkit.getPluginManager().registerEvents(this, this); // Регистрируем слушателя событий
  16.     }
  17.  
  18.     @EventHandler // Аннотация для обработки события
  19.     public void onArrowHit(EntityDamageByEntityEvent event) { // Метод, который срабатывает при уроне между сущностями
  20.         Entity damager = event.getDamager(); // Получаем сущность, которая наносит урон
  21.         Entity victim = event.getEntity(); // Получаем сущность, которая получает урон
  22.        
  23.         // Проверяем, что дамажащая сущность - это стрела
  24.         if (damager instanceof Arrow) {
  25.             // Проверяем, что жертва - это игрок
  26.             if (victim instanceof Player) {
  27.                 Player player = (Player) victim; // Приводим жертву к типу Player
  28.                 // Спавним паутину под игроком
  29.                 player.getWorld().getBlockAt(player.getLocation().subtract(0, 1, 0)).setType(Material.WEB); // Устанавливаем паутину на блок под игроком
  30.             }
  31.         }
  32.     }
  33. }
  34.  
Advertisement
Add Comment
Please, Sign In to add comment