Следуйте инструкциям в видео ниже, чтобы узнать, как установить наш сайт как веб-приложение на главный экран вашего устройства.
Примечание: Эта функция может быть недоступна в некоторых браузерах.
Этот метод просто берёт из Map'ы материал по имени например: stone, diamond_block. А мне нужно получить блок из другого мода.Material.getMaterial("Имя");
все остальные методы берут оттуда же. (ну ты по пробуй)Этот метод просто берёт из Map'ы материал по имени например: stone, diamond_block. А мне нужно получить блок из другого мода.
Нуль-же ну... Он возвращает материал только если я ему передам строку типа "STONE", а мне надо из строки типа "minecraft:stone" получить шмот(блок/предмет).
modname = str.split(":")[0];//str - строка по типу minecraft:stone
materialname = str.split(":")[1]; //не забывай toUpperCase, либо используй mathMaterial, он сделает это за тебя
Ты меня немного не понимаешь походу...Java:modname = str.split(":")[0];//str - строка по типу minecraft:stone materialname = str.split(":")[1]; //не забывай toUpperCase, либо используй mathMaterial, он сделает это за тебя
item: "имя_мода:имя_блока"
yamlFile.getString("item")
world.getBlockAt(0,64,0).//Что дальше?
Это ты не понимаешь немного походу.Ты меня немного не понимаешь походу...
Представим что у меня есть YAML-файл:
Мне нужно получить материал с него...YAML:item: "имя_мода:имя_блока"
Вот я получу стрингу
А дальше?Java:yamlFile.getString("item")
Или у меня не правильный подход?
Предположим я хочу сетнуть этот блок по 0,64,0
Java:world.getBlockAt(0,64,0).//Что дальше?
String str = yamlFile.getString("item");
modname = str.split(":")[0];//str - строка по типу minecraft:stone
materialname = str.split(":")[1]; //не забывай toUpperCase, либо используй mathMaterial, он сделает это за тебя
String str = yamlFile.getString("item");
String modname = str.split(":")[0];
String materialname = str.split(":")[1];
Location loc = new Location(world, 0, 64, 0);
loc.getBlock().setType(Material.matchMaterial(materialname));
Ну так выведи название материала куданибудь. сложно чтоли?Но... Мод игнорируется... А если 2 мода с одинаковым названием блоков?
Ну так выведи в консоль этот материал и узнаешь. и потом заноси его в конфиг.Я что-то вас не понимаю... Вот есть у меня mod1:block и mod2:block, как ведро узнает какой именно материал я хочу?
Командный блок не находит.Ну так выведи в консоль этот материал и узнаешь. и потом заноси его в конфиг.
???Командный блок не находит.
System.out.println(Material.matchMaterial("command_block")) //null???
System.out.print(material)
Так ты материал из руки например выведи. getItemInHand().getType()System.out.println(Material.matchMaterial("command_block")) //null
Ну.. Понял.. Он пишет modid_block.Так ты материал из руки например выведи. getItemInHand().getType()
public static Material getMaterialFromString(String s) {
String[] spl = s.split(":");
if (spl[0].equals("minecraft")) {
return Material.matchMaterial(spl[1]);
}
return Material.matchMaterial(spl[0]+"_"+spl[1]);
}