Вопрос Как мне можно получать игроков в схематики которую я поставил

Версия Minecraft
1.16.X

ConderFix

Разработчик
Пользователь
Сообщения
113
Как мне можно получить всех игроков которые находят в трапке? Использую этот код, но он не работает:
Java:
                BukkitRunnable timer = new BukkitRunnable() {
                    @Override
                    public void run() {
                        for (Player onlinePlayer : Bukkit.getOnlinePlayers()) {
                            Location playerLocation = onlinePlayer.getLocation();
                            final int playerY = playerLocation.getBlockY();

                            if (onlinePlayer.getWorld() == locationPlayer.getWorld()
                                    && playerY >= locationPlayer.getBlockY() - 5) { // Игрок на 3 блока ниже блоков трапки
                                onlinePlayer.setVelocity(new Vector(0, ConfigUtil.getInt("settings.setVelocity"), 0));
                                onlinePlayer.playSound(locationPlayer, Sound.BLOCK_BEACON_DEACTIVATE, 10, 10);
                            }
                        }
                    }
                };

                timer.runTaskLater(BarTrapka.instance, 20 * ConfigUtil.getInt("settings.timeTrap"));

                ShematicUtil.spawnShematic(locationPlayer);
                RegionsUtil.createRegion(locationPlayer.getBlockX(),
                        locationPlayer.getBlockY(),
                        locationPlayer.getBlockZ());
Вот такая схематика трапки:
Вам необходимо зарегистрироваться для просмотра изображений-вложений

Конфиг:

YAML:
settings:
  raduisGetPlayers: 3
  timeTrap: 60 # Время в секундах
 
playerLocation#getBlockY() Получает double, а ты превращаешь в int и позже снова сравниваешь с bouble. Возможно из-за этого у тебя не сохраняет игроков, ведь они находятся уже на других координатах
 
Назад
Сверху Снизу