Следуйте инструкциям в видео ниже, чтобы узнать, как установить наш сайт как веб-приложение на главный экран вашего устройства.
Примечание: Эта функция может быть недоступна в некоторых браузерах.
package Example;
import java.util.Map;
public class Tests {
public Map<String, String[]> Test;
}
YamlReader reader = new YamlReader(new FileReader("путь до конфига /config.yml"));
player.sendMessage(reader.read(Tests.class).Test.get("Test1"));
это чё типо, аналог gson только на yml ?yamlbeans
Код:package Example; import java.util.Map; public class Tests { public Map<String, String[]> Test; }Код:YamlReader reader = new YamlReader(new FileReader("путь до конфига /config.yml")); player.sendMessage(reader.read(Tests.class).Test.get("Test1"));
Не проще переписать их какКак отправить игроку несколько строк сообщений которые указаны в конфиге.
Например вот так:
Test:
Test1:
1 - 'a'
2 - 'b'
3 - 'c'
Test:
test1:
- "a"
- "b"
- "c"
я их так и написал, только они сместились, а getConfig().getStringList("Test.test1") брал почему-то только первое сообщение, и отправлял его. А не все три как надо.Не проще переписать их как
И получать как getConfig().getStringList("Test.test1")?Код:Test: test1: - "a" - "b" - "c"
Во первых структура конфига должна быть правильной. YML чувствительный к пробелам.я их так и написал, только они сместились, а getConfig().getStringList("Test.test1") брал почему-то только первое сообщение, и отправлял его. А не все три как надо.
Агась.это чё типо, аналог gson только на yml ?
Ну смотри, я вот использую так https://pastebin.com/xpQb1eYw , и у меня ошибка sendMessage, как это правильно использовать ?Во первых структура конфига должна быть правильной. YML чувствительный к пробелам.
Во вторых показывай полный код.
И не получитчя. sendMessage не принимает лист, только массив.Ну смотри, я вот использую так https://pastebin.com/xpQb1eYw , и у меня ошибка sendMessage, как это правильно использовать ?
и как тогда сделать ?И не получитчя. sendMessage не принимает лист, только массив.
Получи список и по одной строке отправляй игроку. А лучше в StringBuilder собери и потом отправляй(builder.toString());и как тогда сделать ?
Попробую.Получи список и по одной строке отправляй игроку. А лучше в StringBuilder собери и потом отправляй(builder.toString());
// Эта строка преобразует список «stringList» типа String в массив строк «stringArray»
String [] stringArray = stringList.toArray(new String[stringList.size()]);
ты думаешь он массив целиком отправляет? Я предложил StringBuilder чтобы собрать все строки в одну и отправить. Т.е. будет отправлен 1 пакет вместо 4.Если отправлять по одной строке, то будет небольшая задержка между сообщениями (на большом количетве будет заметно)
Поэтому, на мой взгляд, проще отправить игроку массив строк:
PHP:// Эта строка преобразует список «stringList» типа String в массив строк «stringArray» String [] stringArray = stringList.toArray(new String[stringList.size()]);
Разница небольшая ¯\_(ツ)_/¯Я предложил StringBuilder чтобы собрать все строки в одну и отправить.
Но до этого он будет ещё собирать стоку 😁Т.е. будет отправлен 1 пакет вместо 4.
Я не смотрел реализацию метода sendMessage)ты думаешь он массив целиком отправляет?
Сделал так, вроде работает https://pastebin.com/KcQELu9vЕсли отправлять по одной строке, то будет небольшая задержка между сообщениями (на большом количетве будет заметно)
Поэтому, на мой взгляд, проще отправить игроку массив строк:
PHP:// Эта строка преобразует список «stringList» типа String в массив строк «stringArray» String [] stringArray = stringList.toArray(new String[stringList.size()]);
#Конечно тут лучше юзать forEach, но так проще.
#(Уменьшил твой код)
for (String list : config.getStringList("test.test1")) {
#Отправляем строку
player.sendMessage(list);
}
А нужно вывести в лист, а не в строку?list.toArray(new String[]{})