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

Помогите Как отправить игрокам из листа сообщение

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

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

    Chupaaa Новичок Пользователь

    Баллы:
    21
    Имя в Minecraft:
    xChupa
    У меня есть List<String>, в котором находятся ники игроков, как сделать так, чтобы сообщение отправилось только этим игрокам?
     
  2. alexandrage

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

    Баллы:
    173
    list.stream().filter(player ->Bukkit.getPlayerExact(player)!=null).forEach(player -> Bukkit.getPlayerExact(player).sendMessage("msg"));
     
  3. AbstractCoder

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

    Баллы:
    76
    Имя в Minecraft:
    AbstractCoder
    Зачем 2 раза getPlayerExact, нужно юзать map только потом filter
     
  4. alexandrage

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

    Баллы:
    173
    Лень было для фаст ответа. Сам допрет. Я лишь суть показал.
    Код:
            list.forEach(string -> {
                Player player = Bukkit.getPlayerExact(string);
                if(player!=null) {
                    player.sendMessage("msg");
                }
            });
    Код:
    list.stream().map(name -> Bukkit.getPlayerExact(name)).filter(player -> player!=null).forEach(player -> player.sendMessage("msg"));
     
    Последнее редактирование: 20 апр 2019
  5. Автор темы
    Chupaaa

    Chupaaa Новичок Пользователь

    Баллы:
    21
    Имя в Minecraft:
    xChupa
    Спасибо, Сашка724ая
     
  6. alexandrage

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

    Баллы:
    173
    Сашко724!=Я.
     
  7. AbstractCoder

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

    Баллы:
    76
    Имя в Minecraft:
    AbstractCoder
    Код:
    list.stream()
        .map(Bukkit::getPlayerExact)
        .filter(Objects::nonNull)
        .forEach(player -> player.sendMessage("msg"));
    
     
  8. alexandrage

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

    Баллы:
    173
    :good:
     

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