Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.example.arrowhit;
- import org.bukkit.Bukkit; // Импортируем класс Bukkit для взаимодействия с сервером
- import org.bukkit.Material; // Импортируем класс Material для работы с блоками
- import org.bukkit.entity.Arrow; // Импортируем класс Arrow для работы со стрелами
- import org.bukkit.entity.Entity; // Импортируем класс Entity для работы с сущностями
- import org.bukkit.entity.Player; // Импортируем класс Player для работы с игроками
- import org.bukkit.event.EventHandler; // Импортируем аннотацию для обработки событий
- import org.bukkit.event.Listener; // Импортируем интерфейс Listener для обработки событий
- import org.bukkit.event.entity.EntityDamageByEntityEvent; // Импортируем событие столкновения сущностей
- import org.bukkit.plugin.java.JavaPlugin; // Импортируем класс JavaPlugin для создания плагина
- import org.bukkit.Location; // Импортируем класс Location для работы с координатами блоков
- public class ArrowHitPlugin extends JavaPlugin implements Listener { // Главный класс плагина, который расширяет JavaPlugin и реализует Listener
- @Override
- public void onEnable() { // Метод, вызываемый при активации плагина
- Bukkit.getPluginManager().registerEvents(this, this); // Регистрируем слушателя событий
- }
- @EventHandler // Аннотация для обработки события
- public void onArrowHit(EntityDamageByEntityEvent event) { // Метод, который срабатывает при уроне между сущностями
- Entity damager = event.getDamager(); // Получаем сущность, которая наносит урон
- Entity victim = event.getEntity(); // Получаем сущность, которая получает урон
- // Проверяем, что дамажащая сущность - это стрела
- if (damager instanceof Arrow) {
- // Проверяем, что жертва - это игрок
- if (victim instanceof Player) {
- Player player = (Player) victim; // Приводим жертву к типу Player
- // Получаем локацию блока под игроком
- Location location = player.getLocation().subtract(0, 1, 0);
- // Устанавливаем блок паутины под игроком
- location.getBlock().setType(Material.COBWEB);
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment