Marketplace/Gameplay/MoxRTP

MoxRTP

minecraftFreev1.0.0

Description

Задача: Напиши Java-код для Bukkit/Spigot плагина (версия 1.19+), который реализует систему случайной телепортации (RTP) по заданным прямоугольным координатам.
Входные данные из конфига:
Мир: WorldOG
Диапазон X: 6304 to 12623
Диапазон Z: 7964 to 14950
Макс. попыток: 150
Требования к алгоритму поиска:
Безопасность: Локация считается безопасной, если блок под ногами — полный и твердый (не вода, не лава, не воздух, не кактус, не магма). Над ногами должно быть минимум 2 блока воздуха.
Обработка океанов: Карта содержит много воды. Реализуй цикл while или for, который делает до 150 итераций поиска. Если после 150 попыток безопасная точка не найдена, отправь игроку сообщение: "Не удалось найти безопасное место, попробуйте еще раз".
Производительность: Используй метод world.getHighestBlockYAt(x, z) для быстрого нахождения верхней точки. Учти, что в новых версиях Minecraft это может вернуть блок листвы — добавь проверку, чтобы игрок не телепортировался НА деревья (если блок сверху — листья, нужно спускаться ниже до земли).
Асинхронность: Если возможно, сделай проверку чанков асинхронной, чтобы не лагал основной поток сервера при поиске в непрогруженных регионах.
Выдай результат в виде: основного класса JavaPlugin и метода teleport(Player player)

используй этот конфиг:
settings:
prefix: "<dark_gray>[<gradient:#55FF55:#55FFFF>MoxRTP</gradient>]<reset> "
allowed_worlds: ["WorldOG", "world"]
destination_world: "WorldOG"
warmup_seconds: 5
cooldown_seconds: 10
continents:
north_america:
slot: 10
name: "<green>Северная Америка"
minX: 1080
maxX: 10886
minZ: 3085
maxZ: 7490
material: "GRASS_BLOCK"

south_america:
slot: 28
name: "<yellow>Южная Америка"
minX: 6304
maxX: 12623
minZ: 7964
maxZ: 14950
material: "JUNGLE_LOG"

europe:
slot: 12
name: "<blue>Европа"
minX: 14432
maxX: 18445
minZ: 2300
maxZ: 6628
material: "OAK_LOG"

asia:
slot: 14
name: "<red>Азия"
minX: 19503
maxX: 27024
minZ: 5321
maxZ: 8633
material: "CHERRY_LOG"

africa:
slot: 21
name: "<gold>Африка"
minX: 13821
maxX: 19739
minZ: 6479
maxZ: 13000
material: "SAND"

australia:
slot: 32
name: "<dark_red>Австралия"
minX: 25000
maxX: 28500
minZ: 11000
maxZ: 13230
material: "RED_SAND"

messages:
teleporting: "<gray>Поиск безопасного места на материке <name>..."
success: "<green>Вы успешно телепортированы!"
gui_title: "<dark_aqua>Выбор материка"
wrong_world: "<red>В этом мире нельзя использовать РТП!"
world_not_found: "<red>Ошибка: Целевой мир не найден. Обратитесь к администратору."
no_safe_spot: "<red>Не удалось найти безопасное место, попробуйте еще раз!"
no_permission: "<red>У вас нет прав на это!"
reload_success: "<green>Конфигурация MoxRTP успешно перезагружена!"

warmup_bossbar: "<gradient:#55FF55:#55FFFF>Телепортация через <sec> сек."
warmup_cancelled: "<red>Телепортация отменена! Вы сдвинулись."
cooldown_active: "<red>Подождите еще <sec> сек. перед следующим использованием!"
continent_not_found: "<red>Такого материка не существует! Используйте: /rtp <africa|asia|europe|australia|south_america|north_america>"

Reviews (0)

No reviews yet

Be the first to leave a review!

Artem

Seller

Artem

0

downloads

Versionv1.0.0
Platformminecraft
Typepaper
Minecraft VersionMC 1.21
CategoryMinecraft Plugins > Gameplay
Published on27/03/2026
Last update21/04/2026
Free