Skip to content

Latest commit

 

History

History
131 lines (101 loc) · 7.2 KB

File metadata and controls

131 lines (101 loc) · 7.2 KB

MagnetHomes 🧲

Java Platform License English Russian

Хардкорный подход к системе домов. Привяжите точку телепортации к физическому Магнетиту (Lodestone) и конкретному Компасу. Если блок будет разрушен, ваш дом исчезнет навсегда.


✨ Возможности

  • 🔗 Физическая привязка: Для телепортации в мире должен стоять реальный Магнетит. Никаких абстрактных координат.
  • 🧭 Ключ для телепортации: Вы не можете телепортироваться, если не держите в руке специальный Компас, привязанный к этому дому.
  • 🔒 Безопасность данных: Данные хранятся внутри предмета (PDC). Переименование обычного компаса на наковальне не сработает.
  • 💥 Суть хардкора: Если Магнетит сломан (игроком или взрывом), точка дома удаляется мгновенно, а компас становится бесполезным.
  • ⚡ Оптимизация: Используется кэширование для мгновенной обработки разрушения блоков ($O(1)$).
  • ⏳ Умная система (warmup): Настраиваемое время ожидания перед телепортацией с отменой при движении.

📖 Как использовать

Шаг 1: Подготовка метки телепортации

  1. Скрафтите Магнетит и поставьте его.
  2. Скрафтите Компас и кликните ПКМ по Магнетиту (ванильная механика).

Шаг 2: Создание дома

Встаньте рядом с Магнетитом (стандартно: в радиусе 3 блоков), держа в руках привязанный компас, и введите:

/sethome <название>

Компас будет зачарован и привязан к этому дому.

Шаг 3: Телепортация

Чтобы телепортироваться домой, возьмите нужный компас в руку и введите:

/home <название>

Есть время до начала телепортации (warmup). Нельзя двигаться!

⚠️ Важно

Защищайте свой Магнетит! Если грифер сломает его или крипер взорвет:

  1. Дом удаляется из базы данных.
  2. Ваш компас-ключ перестает работать.
  3. Вы получаете уведомление (если вы онлайн).

🛠 Команды и Права

Команда Описание Право (Permission)
/sethome <имя> Привязывает компас в руке к Магнетиту. magnethomes.use (default: true)
/home <имя> Телепортирует домой (нужен ключ в руке). magnethomes.use (default: true)
/magnetreload Перезагружает конфиг плагина. magnethomes.admin

⚙️ Конфигурация (RU)

Основные настройки и сообщения находятся в файле config.yml. База данных домов хранится отдельно в homes.yml.

Настройки и Сообщения (config.yml)

Скопируйте эти сообщения в ваш config.yml, чтобы перевести плагин на русский язык. :)

settings:
  warmup_seconds: 5    # Время ожидания перед телепортацией (в секундах)
  max_distance: 3      # Максимальная дистанция от Магнетита при создании дома (/sethome)

messages:
  prefix: "&b[MagnetHomes] "

  # Ошибки
  no_permission: "%prefix%&cУ вас нет прав."
  players_only: "%prefix%&cТолько игроки могут использовать это."
  invalid_syntax: "%prefix%&cИспользование: %usage%"
  not_compass: "%prefix%&cВы должны держать компас в руке!"
  not_lodestone_linked: "%prefix%&cЭтот компас не привязан к Магнетиту."
  too_far: "%prefix%&cСлишком далеко! Подойдите ближе чем на %distance% блоков."
  home_not_found: "%prefix%&cДом '%home%' не найден."
  wrong_key: "%prefix%&cЭтот компас – не ключ от дома '%home%'!"
  movement_detected: "%prefix%&cВы пошевелились! Телепортация отменена."
  lodestone_destroyed_tp: "%prefix%&cОшибка: Магнетит был уничтожен!"
  compass_already_used: "%prefix%&cЭтот компас уже привязан к дому! Скрафтите новый."

  # Успех
  home_created: "%prefix%&aДом '%home%' успешно создан!"
  teleport_start: "%prefix%&eТелепортация через %time% сек. Не двигайтесь."
  teleport_success: "%prefix%&aВжуух!"

  # Уведомления (Action Bar)
  actionbar_warmup: "&6Телепортация через %time%..."
  actionbar_cancel: "&cТелепортация отменена!"
  actionbar_fail: "&4Связь потеряна!"

  # Разрушение
  home_destroyed_block: "%prefix%&cТочка дома уничтожена: %home%"
  home_destroyed_owner: "%prefix%&4ТРЕВОГА: Ваш дом '%home%' был уничтожен!"

  # Админское
  reload_success: "%prefix%&aКонфигурация перезагружена."

Хранение данных (homes.yml)

Не редактируйте этот файл вручную, если не уверены в своих действиях.

homes:
  <UUID_Игрока>:
    home_name:
      world: world
      x: 100.5
      y: 64.0
      z: -200.5
      yaw: 90.0
      pitch: 0.0
      # Физические координаты блока Магнетита
      lodestone_loc: "world;100;64;-200"

📥 Установка

  1. Убедитесь, что ваш сервер работает на Paper 1.20 или выше.
  2. Скачайте последний релиз .jar.
  3. Поместите файл в папку /plugins вашего сервера.
  4. Перезагрузите сервер.