Плагин Механика LevelSaver [1.0]

LevelSaver
Краткое описание:
Зберігання та передача рівнів досвіду
1
13
  • Теги
    frodexx_ua
  • Для версий
    1. 1.21.✘
    Java
    1. Java 21
    Исходный код
    https://github.com/Frodexx-UA/LevelSaver

    📚 LevelSaver​

    Плагін для збереження, передачі та управління рівнями досвіду гравців на Minecraft серверах.

    ✨ Що вміє плагін?​

    • 📖 Рівнезберігач — книга, яка зберігає рівні досвіду гравця
    • 🧾 Банкнота Досвіду — предмет для передачі рівнів між гравцями
    • 💬 Інтерактивне введення — вибір кількості рівнів через чат
    • 💾 Автозбереження — дані зберігаються у data.yml

    📖 Рівнезберігач​

    Основний предмет плагіну. Видається командою /levelbook [гравець].

    ДіяРезультат
    ЛКМЗняти всі рівні з книги на гравця
    SHIFT + ЛКМВвести кількість рівнів для зняття через чат
    ПКМПокласти всі рівні гравця у книгу
    SHIFT + ПКМВвести кількість рівнів для вкладення через чат
    📌 Книга відображає скільки рівнів у ній збережено прямо у lore предмета.

    🧾 Банкнота Досвіду​

    Фізичний предмет для передачі рівнів між гравцями. Містить фіксовану кількість рівнів.
    • Створюється командою /withdrawlevel <кількість> (рівні знімаються з книги)
    • На банкноті вказано власника — гравця, який її створив
    • ПКМ банкнотою — отримати рівні досвіду з неї
    💡 Банкноту можна передати іншому гравцю — він також зможе нею скористатись.

    🔧 Команди​

    КомандаОписПраво
    /levelbook [гравець]Видати книгу собі або вказаному гравцюlevelsaver.admin
    /withdrawlevel <кількість>Видобути банкноту з рівнями з книги в руціlevelsaver.player
    /lsreloadПерезавантаження плагінаlevelsaver.admin

    🔐 Права​

    ПравоОписЗа замовчуванням
    levelsaver.adminДоступ до /levelbook та /lsreloadТільки OP
    levelsaver.playerДоступ до /withdrawlevelВсі гравці

    ⚙️ Конфігурація (config.yml)​

    Плагін повністю настроюється через config.yml.

    Що можна змінити:
    • level_book — матеріал, назва та lore книги
    • withdraw_level — матеріал, назва та lore банкноти
    • messages — всі повідомлення підтримують &-кольори

    Підтримувані плейсхолдери:
    ПлейсхолдерДеЗначення
    %levels%Lore книги та банкнотиКількість збережених рівнів
    %owner%Lore банкнотиІм'я творця банкноти
    %player%ПовідомленняІм'я гравця
    %amount%ПовідомленняКількість рівнів
    %stored%ПовідомленняРівні у книзі
    %player_levels%ПовідомленняПоточні рівні гравця

    📁 Файли плагіна​

    Код:
    plugins/LevelSaver/
    ├── config.yml   — налаштування предметів та повідомлень
    └── data.yml     — збережені рівні гравців (не редагувати вручну)


    config.yml:
    level_book:
      material: ENCHANTED_BOOK
      name: "&6Рівнезберігач"
      lore:
        - "&7Зберігай свій досвід"
        - ""
        - "&fЗбережено: &a%levels% lvl"
        - ""
        - "&aЛКМ &7- зняти все"
        - "&aSHIFT+ЛКМ &7- обрати рівень для зняття"
        - "&aПКМ &7- покласти все"
        - "&aSHIFT+ПКМ &7- обрати рівень для вкладення"
    
    withdraw_level:
      material: PAPER
      name: "&eБанкнота Досвіду"
      lore:
        - "&7Містить в собі рівні досвіду"
        - ""
        - "&fВласник: &a%owner%"
        - "&fЗбережено: &a%levels% lvl"
        - ""
        - "&aПКМ &7- отримати досвід"
    
    messages:
      no-permission: "&cУ тебе немає прав на цю команду!"
      player-only: "&cЦю команду може використовувати тільки гравець!"
      player-not-found: "&cГравця не знайдено!"
      book-given: "&aКнигу Рівнезберігач успішно видано гравцю &f%player%&a."
      reload-success: "&aПлагін LevelSaver успішно перезавантажено!"
      not-holding-book: "&cТримай Рівнезберігач у головній руці!"
      invalid-number: "&cВведи правильне число!"
      amount-too-low: "&cКількість має бути більше 0!"
      not-enough-levels-in-book: "&cУ книзі недостатньо рівнів! Доступно: &f%stored%"
      not-enough-player-levels: "&cУ тебе тільки &f%player_levels% &cрівнів!"
      withdraw-success: "&aВидобуто банкноту на &f%amount% &aрівнів!"
      deposit-all-success: "&aПокладено &f%amount% &aрівнів у Рівнезберігач"
      withdraw-all-success: "&aЗнято &f%amount% &aрівнів з Рівнезберігача"
      chat-withdraw-prompt: "&eВведіть кількість рівнів для §aзняття§e:"
      chat-deposit-prompt: "&eВведіть кількість рівнів для §aвкладення§e:"
      chat-cancelled: "&cОперацію скасовано."
      received-levels: "&aВи отримали &f%levels% &aрівнів досвіду з банкноти!"
    
      help:
        levelbook: "&cВикористання: &f/levelbook [гравець]"
        lsreload: "&cВикористання: &f/lsreload"
        withdrawlevel: "&cВикористання: &f/withdrawlevel <кількість>"
    • 1.png
      1.png
      28 КБ · Просмотры: 3
    • 2.png
      2.png
      32,3 КБ · Просмотры: 3
    • 3.png
      3.png
      25 КБ · Просмотры: 3

    Автор

    IL5UA

    Еще ресурсы от IL5UA

    BlockPainter
    BlockPainter
    Дайте можливість гравцям розфарбовувати блоки за допомогою спеціального пензля
    MinimalTAB
    MinimalTAB
    Мінімалістичне оформлення • TAB + SB
    ВерхНиз