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

Помогите НЕ ставится блок!!!

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

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

    YUROO Активный участник Пользователь Заблокирован

    Баллы:
    66
    Имя в Minecraft:
    YUROO
    приветю Я проверяю если есть блок на кордах и если он был сломан игроком то должен ставится блок вот код:
    Код:
        @EventHandler
        public void BlockBreak(BlockBreakEvent e) {
            Player p = e.getPlayer();
            Block b = e.getBlock();
            World w = Bukkit.getServer().getWorld("world");
            Location loc = b.getLocation();
            if(loc.getX() == 0 && loc.getY() == 60 && loc.getZ() == 0) {
                if(w.getBlockAt(0, 60, 0).getType() == Material.AIR) {
                    w.getBlockAt(0, 60 ,0).setType(Material.EMERALD_ORE);
                }
            }
        }
     
  2. _Ruleto4ka_

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

    Баллы:
    76
    return?
     
  3. Автор темы
    YUROO

    YUROO Активный участник Пользователь Заблокирован

    Баллы:
    66
    Имя в Minecraft:
    YUROO
    Код:
        @EventHandler
        public void BlockBreak(BlockBreakEvent e) {
            Player p = e.getPlayer();
            Block b = e.getBlock();
            World w = Bukkit.getServer().getWorld("world");
            Location loc = b.getLocation();
            if(loc.getX() == 0 && loc.getY() == 60 && loc.getZ() == 0) {
                if(w.getBlockAt(0, 60, 0).getType() == Material.AIR) {
                    w.getBlockAt(0, 60 ,0).setType(Material.EMERALD_ORE);
                }return;
            }
            return;
        }
    Не работает
     
  4. LOVEC3327

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

    Баллы:
    76
    Имя в Minecraft:
    LOVEC3327
    А как ты воздух собрался разрушать?)
     
  5. Автор темы
    YUROO

    YUROO Активный участник Пользователь Заблокирован

    Баллы:
    66
    Имя в Minecraft:
    YUROO
    НУ я проверяю если там воздух
     
  6. LOVEC3327

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

    Баллы:
    76
    Имя в Minecraft:
    LOVEC3327
    Это так не работает. Ивент вызывается тогда, когда игрок ломает блок.
     
  7. _Ruleto4ka_

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

    Баллы:
    76
    null
     
  8. Автор темы
    YUROO

    YUROO Активный участник Пользователь Заблокирован

    Баллы:
    66
    Имя в Minecraft:
    YUROO
    Ну когда игрок ломает блок на кординатах 0 60 0 то ставится другой блок типа плагина(OneBlock-BentoBox)
     
  9. LOVEC3327

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

    Баллы:
    76
    Имя в Minecraft:
    LOVEC3327
    А зачем тебе проверка на воздух то? Ты же не воздух ломать собрался
     
  10. Автор темы
    YUROO

    YUROO Активный участник Пользователь Заблокирован

    Баллы:
    66
    Имя в Minecraft:
    YUROO
    Упс... так что мне делать?
     
  11. LOVEC3327

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

    Баллы:
    76
    Имя в Minecraft:
    LOVEC3327
    Убрать проверку на воздух?)
     
  12. Автор темы
    YUROO

    YUROO Активный участник Пользователь Заблокирован

    Баллы:
    66
    Имя в Minecraft:
    YUROO
    Убрал не работает может ищо убрать return?
     
  13. LOVEC3327

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

    Баллы:
    76
    Имя в Minecraft:
    LOVEC3327
    Посмотри, какие координаты у твоего блока, который ты ломаешь.
     
  14. Автор темы
    YUROO

    YUROO Активный участник Пользователь Заблокирован

    Баллы:
    66
    Имя в Minecraft:
    YUROO
    [​IMG]
    x 0 y 60 z 0 кодинаты
     
  15. LOVEC3327

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

    Баллы:
    76
    Имя в Minecraft:
    LOVEC3327
    b.setType попробуй. И смотри координты не в игре, а через sout.
     
  16. Автор темы
    YUROO

    YUROO Активный участник Пользователь Заблокирован

    Баллы:
    66
    Имя в Minecraft:
    YUROO
    А как мне через sout виводить без майнкрафта (System.out.print(b.getY() + b.getX() + b.getZ());)
     
  17. LOVEC3327

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

    Баллы:
    76
    Имя в Minecraft:
    LOVEC3327
    PHP:
        @EventHandler
        void onBreak
    (BlockBreakEvent e) {
            
    Block b e.getBlock();
            if (
    b.getX() == && b.getY() == 60 && b.getZ() == 0) {
                if (
    b.getType() != Material.EMERALD_ORE) {
                    
    b.setType(Material.EMERALD_ORE);
                    
    e.setCancelled(true);
                }
            }
        }
     
Статус темы:
Закрыта.

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