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

Помогите (Решено) Игроки в радиусе

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

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

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

    Баллы:
    66
    Здравствуйте, нужно достать игроков которые будут находится на координате например 10 10 10 в радиусе 10-ти блоков и отправить им сообщение.
    P.S. Я естественно пользовался поиском и находил темы в которых спрашивали похожее но код либо оказывался нерабочем, то либо eclipse выдавал ошибки (может я криворукий),
    P.P.S. Я плагин пишу на версии майнкрафта 1.7.10 на ядре Spigot
     
  2. Cool_boy

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

    Баллы:
    96
    Имя в Minecraft:
    prettydude
    Что-то я не удивлён.

    PHP:
    public static List<PlayergetPlayers(Location locdouble radius) {
         List<
    Playerplayers = new ArrayList<>();
         
    Collection<Entitynearby loc.getWorld().getNearbyEntities(locradiusradiusradius);
         for (
    Entity e nearby) {
            if (
    e.getType() == EntityType.PLAYER) {
                
    players.add((Player)e);
            }
        }
        return 
    players;
    }
     
  3. Автор темы
    ermaksochi

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

    Баллы:
    66
    @Cool_boy
    И вот ошибку выдаёт...
    upload_2018-9-5_21-35-51.png
    Если нажму Add cast то исчо одна ошибка будет, не пойму шо не так
    upload_2018-9-5_21-36-41.png
     
  4. Cool_boy

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

    Баллы:
    96
    Имя в Minecraft:
    prettydude
    Ну так бы сразу. В 1.7.10 походу нету метода для получения существ в радиусе. Можно стяпать немного по-другому. У тебя радиус обязательно должен быть квадратный, или круглый будет лучше?
     
  5. Автор темы
    ermaksochi

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

    Баллы:
    66
    Без разницы, но хотелось бы что б он не просчитывал Entity
    Взято отсюда
     
  6. Cool_boy

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

    Баллы:
    96
    Имя в Minecraft:
    prettydude
    Ну так там уже есть ответ, зачем новую тему делать?
    PHP:
    Location location //твоя локация от которой надо проверять
    double radius 10;
    for (
    Player p Bukkit.getOnlinePlayers()) {
       if (
    p.getLocation().distance(location) < radius) {
           
    // Ваши действия
       
    }
    }
     
  7. Автор темы
    ermaksochi

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

    Баллы:
    66
    Там в ответе немножко другой код если сравнивать с тем что ты щас скинул, тот код что там написан я не понял и Eclipse выдавал ошибку, поэтому я создал новую тему.
    Вообщем-то работает, благодарю за помощь
     
    Последнее редактирование: 5 сен 2018
Статус темы:
Закрыта.

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