1. Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.
    Скрыть объявление
Скрыть объявление
В преддверии глобального обновления, мы проводим исследования, которые помогут нам сделать опыт пользования форумом ещё удобнее. Помогите нам, примите участие!

Выпадение головы игрока после смерти

Тема в разделе "Разработка плагинов для новичков", создана пользователем _Casper_, 29 ноя 2020.

Статус темы:
Закрыта.
  1. Автор темы
    _Casper_

    _Casper_ Активный участник Пользователь

    Баллы:
    66
    Имя в Minecraft:
    umifi
    Здравствуйте. Я решил создать плагин для выпадения головы после смерти игрока (плагины которые есть меня не интересуют, так как там ещё есть выпадение голов мобов, я понимаю что это можно выключить, но лучше сделать плагин где только головы с игроков падают). Так вот, я сделал плагин используя всякие иностранные источники (форум spigot, javadoc spigot). Даже нашёл код для выпадения голов. Но почему-то после смерти голова не выпадает и в консоли нет никаких ошибок. я ранее не занимался созданием плагинов, сейчас впервые. Не могли бы подсказать что не так я мог сделать? Заранее благодарен за помощь.


    Код:
    import org.bukkit.Material;
    import org.bukkit.OfflinePlayer;
    import org.bukkit.entity.Player;
    import org.bukkit.event.EventHandler;
    import org.bukkit.event.Listener;
    import org.bukkit.event.entity.PlayerDeathEvent;
    import org.*********ventory.ItemStack;
    import org.*********ventory.meta.SkullMeta;
    import org.bukkit.plugin.java.JavaPlugin;
    
    public class HeadDrop extends JavaPlugin implements Listener {
        @EventHandler
        public void onPlayerDeath(PlayerDeathEvent e) {
            ItemStack head = new ItemStack(Material.PLAYER_HEAD, 1);
            SkullMeta sm = (SkullMeta)head.getItemMeta();
            sm.setOwningPlayer(e.getEntity());
            sm.setDisplayName("Голова " + e.getEntity().getName());
            head.setItemMeta(sm);
            e.getEntity().getWorld().dropItem(e.getEntity().getLocation(), head);
        }
    }
     
  2. Автор темы
    _Casper_

    _Casper_ Активный участник Пользователь

    Баллы:
    66
    Имя в Minecraft:
    umifi
    Не знаю почему, но в import появились звёздочки. Хотя там ничего нет. Так что на всякий отправлю ещё и скриншот.
    upload_2020-11-29_12-22-14.png
     
  3. deadanykey

    deadanykey Активный участник Пользователь

    Баллы:
    96
    @Override
    public void onEnable() {
    this.getServer().getPluginManager().registerEvents(this, this);
    }
     
  4. alexandrage

    alexandrage Старожил Пользователь

    Баллы:
    173
    papermc api

    Main
    Код:
    package skulldrop;
    
    import org.bukkit.plugin.java.JavaPlugin;
    
    public class Main extends JavaPlugin {
        @Override
        public void onEnable() {
            this.getServer().getPluginManager().registerEvents(new EventListener(), this);
        }
    }
    EventListener
    Код:
    package skulldrop;
    
    import org.bukkit.Material;
    import org.bukkit.entity.Player;
    import org.bukkit.event.EventHandler;
    import org.bukkit.event.Listener;
    import org.bukkit.event.entity.PlayerDeathEvent;
    import org.*********ventory.ItemStack;
    import org.*********ventory.meta.SkullMeta;
    
    public class EventListener implements Listener {
        @EventHandler
        public void SkullDrop(PlayerDeathEvent e) {
            Player player = e.getEntity();
            ItemStack head = new ItemStack(Material.PLAYER_HEAD);
            SkullMeta meta = (SkullMeta) head.getItemMeta();
            meta.setPlayerProfile(player.getPlayerProfile());
            meta.setDisplayName("Голова " + player.getName());
            head.setItemMeta(meta);
            player.getWorld().dropItemNaturally(player.getLocation(), head);
        }
    }
    plugin.yml
    Код:
    name: SkullDrop
    main: skulldrop.Main
    version: 1.0
    api-version: 1.13
    Binaries
     
  5. Автор темы
    _Casper_

    _Casper_ Активный участник Пользователь

    Баллы:
    66
    Имя в Minecraft:
    umifi
    Спасибо! Всё заработало!
     
Статус темы:
Закрыта.

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