(Решено)Сделать "Кислотный дождь"

  • Автор темы Автор темы reZero
  • Дата начала Дата начала
Статус
Закрыто для дальнейших ответов.

reZero

Активный участник
Пользователь
Баллы
76
Всем привет.
Хочу сделать плагин на кислотный дождь..
Суть плагина, думаю, все понимают - идет дождь, если на игрока попадает этот самый дождь -> его дамажит..
Вопрос заключается в следующем. Как можно ловить момент, когда игрок находится под дождем?
 
Всем привет.
Хочу сделать плагин на кислотный дождь..
Суть плагина, думаю, все понимают - идет дождь, если на игрока попадает этот самый дождь -> его дамажит..
Вопрос заключается в следующем. Как можно ловить момент, когда игрок находится под дождем?
Работать по таймеру. Проверять самый верхний блок в чанке, если у игрока соответсвует/превышает, то наносить урон.
 
Если у игрока во время ДОЖДЯ, над головой (вообще) нет блоков, (так что дождь сможет дотронутся до игрока), то наносить дамаг. Ранейбл или банальный Timer
 
Всем привет.
Хочу сделать плагин на кислотный дождь..
Суть плагина, думаю, все понимают - идет дождь, если на игрока попадает этот самый дождь -> его дамажит..
Вопрос заключается в следующем. Как можно ловить момент, когда игрок находится под дождем?
1. Юзаешь таск от BukkitScheduler (Bukkit.getScheduler().runTaskTimer(...)) каждые N тиков (как часто тебе нужно проверять и дамажить)
2. В таске проходишь по каждому миру, чекаешь погоду. Если дождливая, на пункт 3.
3. Проходишь по каждому игроку в данном мире. Получаешь найвысший блок по его локации. "player.getWorld().getHighestBlockAt(player.getLocation())". Чекаешь условия: блок ниже-равно позиции игрока + 1 ИЛИ блок выше, но не солид (block.getType().isSolid()). Если условия проходят, на пункт 4.
4. Дамажишь игрока
 
Статус
Закрыто для дальнейших ответов.
Назад
Верх