Хостинг серверов Minecraft playvds.com
  1. Вы находитесь в русском сообществе Bukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на русский язык плагины наших собратьев из других стран.
    Скрыть объявление

Как-то не правильно написал код

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

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

    l4legenda Участник Пользователь

    Баллы:
    36
    Имя в Minecraft:
    l4legenda
    @EventHandler
    public void BlockPlaceE(BlockPlaceEvent bpe){
    Player player = bpe.getPlayer();
    Block block = bpe.getBlock();

    Vector vmin = new Vector(153,65,24); //x y z
    Vector vmax = new Vector(147,63,31); // x y z

    Vector vec = block.getLocation().toVector();

    if(vec.isInAABB(vmin, vmax) == true){
    System.out.println("Yess...");

    }
    }
    Хочу чтобы при установки блока в область было сообщение. Но что-то пошло не так... И его нет...
    (и я знаю что вывожу сообщение в консоль)
     
  2. Хостинг MineCraft
    <
  3. Fenix78563

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

    Баллы:
    76
    Имя в Minecraft:
    Blc_Dragon
    getLogger().log(Level.INFO, "Yesss....");
     
  4. Автор темы
    l4legenda

    l4legenda Участник Пользователь

    Баллы:
    36
    Имя в Minecraft:
    l4legenda
    Простите, я ее уже решил...

    @EventHandler
    public void BlockPlaceE(BlockPlaceEvent bpe){
    Player player = bpe.getPlayer();
    Block block = bpe.getBlock();


    int maxX=153;
    int maxY=65;
    int maxZ=32;

    int minX=146;
    int minY=62;
    int minZ=24;

    int X = block.getLocation().getBlockX();
    int Y = block.getLocation().getBlockY();
    int Z = block.getLocation().getBlockZ();




    if((X <= maxX)&&(X>=minX)||(X>=maxX)&&(X<=minX)){

    if((Y<=maxY)&&(Y>=minY)||(Y>=maxY)&&(Y<=minY)){

    if((Z<=maxZ)&&(Z>=minZ)||(Z>=maxZ)&&(Z<=minZ)){
    player.sendMessage("Територия запривачена!");
    }}}


    }

    }
     
  5. alexandrage

    alexandrage Администратор

    Баллы:
    173
    Skype:
    alexandr0116
    Вот держи, тут автоматически нормальзует мин и макс точки.

    Код:
    package Example;
    public class Cuboid {
        private long xMin;
        private long xMax;
        private long yMin;
        private long yMax;
        private long zMin;
        private long zMax;
        public Cuboid(long x1, long y1, long z1, long x2, long y2, long z2) {
            if (x1 < x2) {
                xMin = x1;
                xMax = x2;
            } else {
                xMin = x2;
                xMax = x1;
            }
            if (y1 < y2) {
                yMin = y1;
                yMax = y2;
            } else {
                yMin = y2;
                yMax = y1;
            }
            if (z1 < z2) {
                zMin = z1;
                zMax = z2;
            } else {
                zMin = z2;
                zMax = z1;
            }
        }
        public boolean intersects(Cuboid cuboid) {
            return cuboid.xMin <= xMax && cuboid.xMax >= xMin
                   && cuboid.yMin <= yMax && cuboid.yMax >= yMin
                   && cuboid.zMin <= zMax && cuboid.zMax >= zMin;
        }
       
        public boolean contains(long x, long y, long z) {
            return x >= xMin && x <= xMax
                   && y >= yMin && y <= yMax
                   && z >= zMin && z <= zMax;
        }
       
        public long getVolume() {
            return getWidth() * getHeight() * getDepth();
        }
       
        public long getWidth() {
            return xMax - xMin + 1;
        }
       
        public long getHeight() {
            return yMax - yMin + 1;
        }
       
        public long getDepth() {
            return zMax - zMin + 1;
        }
    }
     
  6. Автор темы
    l4legenda

    l4legenda Участник Пользователь

    Баллы:
    36
    Имя в Minecraft:
    l4legenda
    Спасибо ! Тема закрыта !
     
Статус темы:
Закрыта.

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