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

Помогите Очень прошу! Это очень важно...

Тема в разделе "Разработка плагинов для новичков", создана пользователем ShaGTF, 11 фев 2014.

  1. Автор темы
    ShaGTF

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

    Баллы:
    68
    Имя в Minecraft:
    CoolShaGGy
    Я уже писал подобный вопрос, но никто так и не ответил, а если и ответил, то я ничего не понял. Вообщем мне нужен плагин, что-бы когда игрок нажимал ПКМ держа в руках палочку Блейза, выстреливался Файэрбол. Вот часть плагина которую я написал:
    Код:
    package TheWar;
    
    
    import net.minecraft.server.v1_7_R1.Block;
    
    import org.bukkit.entity.Fireball;
    import org.bukkit.event.EventHandler;
    import org.bukkit.Bukkit;
    import org.bukkit.Material;
    import org.bukkit.event.Listener;
    import org.bukkit.event.block.Action;
    import org.bukkit.event.player.PlayerInteractEvent;
    import org.bukkit.plugin.java.JavaPlugin;
    
    
    public class mainClass extends JavaPlugin implements Listener {
           
    
        public void onEnable(){
            Bukkit.getPluginManager().registerEvents(this, this);
            getLogger().info("TheWar plugin enabling");
        }
        public void onDisable(){
            getLogger().info("TheWar plugin disabling");
        }
    
        @EventHandler
        public void getAction(PlayerInteractEvent e) {
            if(e.getAction().equals(Action.RIGHT_CLICK_BLOCK)) {
                Block b = (Block) e.getClickedBlock();
                if(b.getMaterial().equals(Material.BLAZE_ROD)) {
                       
                    }
                       
                   
                }
            }
    
           
        }
        
    Что писать дальше, ума не хватает! HELP!
     
  2. fromgate

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

    Баллы:
    173
    Имя в Minecraft:
    fromgate
    Здесь проверяется является ли кликнутый блок... палочкой блейза.

    Код:
    Block b = (Block) e.getClickedBlock();
                if(b.getMaterial().equals(Material.BLAZE_ROD)) {
     
  3. Автор темы
    ShaGTF

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

    Баллы:
    68
    Имя в Minecraft:
    CoolShaGGy
    Не подскажите как исправить?
     
  4. StealerSlain

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

    Баллы:
    88
    Имя в Minecraft:
    StealerSlain
    Он специально так написал, чтобы ты хоть немножко подумал.
    Разве палочка блейза это блок?..
     
    ПриветОтЛайки и fromgate нравится это.
  5. Автор темы
    ShaGTF

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

    Баллы:
    68
    Имя в Minecraft:
    CoolShaGGy
    Да, поменял все на Item, но проблема в том, что я не знаю как вызвать Файэрбол. Пол дня голову ломаю :|
     
  6. serega6531

    serega6531 Старожил Девелопер Пользователь

    Баллы:
    173
    Skype:
    shkurovs
    Не исправили. Вам не нужен кликнутый блок, вам нужен предмет в руке.
     
  7. Автор темы
    ShaGTF

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

    Баллы:
    68
    Имя в Minecraft:
    CoolShaGGy
    Да уж :| Рано я взялся за этот плагин... А какой ивент предмета в руке? А как запустить Файэрбол, я похоже понял...
     
  8. serega6531

    serega6531 Старожил Девелопер Пользователь

    Баллы:
    173
    Skype:
    shkurovs
    Не ивент.
    Код:
    e.getPlayer().getItemInHand();
    ...или как-то так.
     
  9. Автор темы
    ShaGTF

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

    Баллы:
    68
    Имя в Minecraft:
    CoolShaGGy
    Спасибо. Сейчас буду разбираться.
    Код:
    package TheWar;
    
    import org.bukkit.entity.Fireball;
    import org.bukkit.event.EventHandler;
    import org.bukkit.Bukkit;
    import org.bukkit.Material;
    import org.bukkit.event.Listener;
    import org.bukkit.event.block.Action;
    import org.bukkit.event.player.PlayerInteractEvent;
    import org.bukkit.plugin.java.JavaPlugin;
    
    
    public class mainClass extends JavaPlugin implements Listener {
           
    
        public void onEnable(){
            Bukkit.getPluginManager().registerEvents(this, this);
            getLogger().info("TheWar plugin enabling");
        }
        public void onDisable(){
            getLogger().info("TheWar plugin disabling");
        }
    
        @EventHandler
        public void getAction(PlayerInteractEvent e) {
            if(e.getAction().equals(Action.RIGHT_CLICK_AIR)) {
                e.getPlayer().getItemInHand().getType().equals(Material.BLAZE_ROD); {
                    e.getPlayer().launchProjectile(Fireball.class);
                }
                       
                    }
                   
           
                }
            }
    
    Вообщем, ничего не получается, помогите пожалуйста, я запомню, и все....
    Ой, извините, все понял :)
     

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