Следуйте инструкциям в видео ниже, чтобы узнать, как установить наш сайт как веб-приложение на главный экран вашего устройства.
Примечание: Эта функция может быть недоступна в некоторых браузерах.
public void methodName(Player player) {
// null - множество Material, которые стоит пропустить при raytrace
// 5 - максимальная дистация поиска блока перед собой
Block block = player.getTargetBlock(null, 5);
if (block == null || block.getType() == Material.AIR) return; // block не найден, не помню может ли он быть null там
if (block.getType() == Material.CHEST) { // блок точно является сундуком
final ItemStack dirt = new ItemStack(Material.DIRT); // создаём экземпляр
Chest chest = (Chest) block.getState(); // получаем состояние блока ввиде Chest
Inventory inventory = chest.getBlockInventory(); // получем из состояния блока инвентарь
for (int i = 0; i < inventory.getSize(); i++) { // бежим по всему инвентарю и устанавливаем клон(!) земли
inventory.setItem(i, dirt.clone());
}
}
}
Благодарю за код, и за описания каждой строчкиPHP:public void methodName(Player player) { // null - множество Material, которые стоит пропустить при raytrace // 5 - максимальная дистация поиска блока перед собой Block block = player.getTargetBlock(null, 5); if (block == null || block.getType() == Material.AIR) return; // block не найден, не помню может ли он быть null там if (block.getType() == Material.CHEST) { // блок точно является сундуком final ItemStack dirt = new ItemStack(Material.DIRT); // создаём экземпляр Chest chest = (Chest) block.getState(); // получаем состояние блока ввиде Chest Inventory inventory = chest.getBlockInventory(); // получем из состояния блока инвентарь for (int i = 0; i < inventory.getSize(); i++) { // бежим по всему инвентарю и устанавливаем клон(!) земли inventory.setItem(i, dirt.clone()); } } }
Player player = (Player) sender;PHP:public void methodName(Player player) { // null - множество Material, которые стоит пропустить при raytrace // 5 - максимальная дистация поиска блока перед собой Block block = player.getTargetBlock(null, 5); if (block == null || block.getType() == Material.AIR) return; // block не найден, не помню может ли он быть null там if (block.getType() == Material.CHEST) { // блок точно является сундуком final ItemStack dirt = new ItemStack(Material.DIRT); // создаём экземпляр Chest chest = (Chest) block.getState(); // получаем состояние блока ввиде Chest Inventory inventory = chest.getBlockInventory(); // получем из состояния блока инвентарь for (int i = 0; i < inventory.getSize(); i++) { // бежим по всему инвентарю и устанавливаем клон(!) земли inventory.setItem(i, dirt.clone()); } } }
Какая версия? Я прост помню что в старых версиях такая хрен была.Player player = (Player) sender;
Block block = player.getTargetBlock(null, 5);
The method getTargetBlock(HashSet<Byte>, int) is ambiguous for the type Player
1.12.2Какая версия? Я прост помню что в старых версиях такая хрен была.
Попробуй (Set<Material>) null / (HashSet<Byte>) null, другими словами явно укажи какой метод ты вызываешь.
У меня на 1.12.2 проблем нет.1.12.2
Попробую
repositories {
mavenCentral()
maven {
name = 'spigotmc-repo'
url = 'https://hub.spigotmc.org/nexus/content/repositories/snapshots/'
}
maven {
name = 'sonatype'
url = 'https://oss.sonatype.org/content/groups/public/'
}
}
dependencies {
compileOnly 'org.spigotmc:spigot-api:1.12.2-R0.1-SNAPSHOT'
}
Работает, спасибо за помощьУ меня на 1.12.2 проблем нет.
Посмотреть вложение 57662
build.gradle
PHP:repositories { mavenCentral() maven { name = 'spigotmc-repo' url = 'https://hub.spigotmc.org/nexus/content/repositories/snapshots/' } maven { name = 'sonatype' url = 'https://oss.sonatype.org/content/groups/public/' } } dependencies { compileOnly 'org.spigotmc:spigot-api:1.12.2-R0.1-SNAPSHOT' }