Skip to content
This repository has been archived by the owner on Jun 20, 2023. It is now read-only.
/ WGSpleef Public archive

Spleef minigame plugin for minecraft that works with WorldGuard

Notifications You must be signed in to change notification settings

zemf4you/WGSpleef

Repository files navigation

Archived!

Please contact me if you really need something like this. I will consider this as a pet project and write something cool already

WGSpleef

RU

Плагин на сплиф для майнкрафта, который работает с WorldGuard. Заточен на сервера с выживанием.

Игровой процесс

  1. Игроки заходят на арену
  2. Игра начинается при достижении минимального для старта количества игроков
  3. Игроки могут ломать определённые блоки, чтобы нанести поражение соперникам
  4. Игрок, прикоснувшийся к лаве или огню или вышедший за пределы арены, проигрывает и исключается из арены
  5. Последний оставшийся на арене игрок выигрывает и получает денежный приз [опционально]

Постройка арены

Плагин специально разрабатывался гибким, чтобы позволить создателям серверов проявить свои творческие способности. Именно поэтому существуют некоторые нюансы, которые необходимо учесть при постройке арены.

  • Игроки, вышедшие за пределы защищённого региона WorldGuard, будут исключены из арены незамедлительно (это может использоваться в креативных целях: например, на арене можно расставить различные ловушки, которые выбрасывают игроков за пределы арены)
  • Игрок проигрывает при соприкосновении с лавой или огнём (следует напомнить, что лава имеет свойство растекаться, что также может добавить изюминку в вашу игру)
  • Игроки могут ломать только тот тип блока, который вы указали при настройке арены.

Дополнительная информация

Сохранение атрибутов игрока

Следующие атрибуты игрока сохраняются перед игрой и восстанавливаются после игры:

  • Позиция
  • Игровой режим
  • Количество опыта
  • Очки здоровья
  • Очки истощения
  • Очки сытости
  • Очки насыщения
  • Возможность полёта
  • Скорость ходьбы
  • Эффекты
  • Инвентарь

Восстановление сломанных блоков после игры

Блоки, которые можно разрушить, указываются в настройках арены

Настройки

Никакой из пунктов не может быть пропущен, иначе плагин будет выключен при запуске сервера.

config.yml

lang: ru  # Язык локализации. Конфиг с таким именем должен находиться в директории lang
arenas:
  spleef:  # Название защищённого региона WorldGuard. Количество арен не ограничено
    world: world  # Название мира, в котором находится арена
    minPlayersCount: 3  # Минимальное количество игроков для начала игры (не менее 2)
    maxPlayersCount: 10  # Максимальное количество игроков на арене
    startCoords:  # Координаты, на которые телепортируются игроки при перемещении на арену
      x: 1294.5
      y: 97
      z: -377.5
    blockToBreak: SNOW_BLOCK  # Тип блока, который могут разрушать игроки
    startItem: DIAMOND_SPADE  # Тип блока/предмета, который получает игрок при перемещении на арену
    startCountdown: 10  # Обратный отсчёт перед стартом игры (в секундах)
    startCountdownReset: false  # Сбрасывать ли обратный отсчёт при подключении новых игроков
    reward: 50.0  # Сумма денежного приза для победителя

Примечание: типы блоков и предметов могут быть найдены в официальной документации spigot.

Будьте внимательны: тип должен соответствовать либо блокам, либо предметам. Не забывайте, что в вашей версии MineCraft некоторые блоки/предметы из списка могут отсутствовать!

lang.yml

В данном примере используется русский язык. В названии конфига следует указывать используемый язык (в конкретном случае файл надо назвать ru.yml). Конфиг должен располагаться в директории lang.

stuff:
  prefix: "&8[&cSpleef&8]&e"
  noPermission: "$prefix У вас нет прав на выполнение этой команды!"
  playersOnly: "$prefix Данное действие могут совершать только игроки!"
  unavailableCommand:  |-
    $prefix Вы не можете использовать команды во время игры!
    $prefix &eЧтобы выйти из игры, введите &c/spleef leave
game:
  notEnoughPlayers: "$prefix Недостаточно игроков для начала игры!"
  countdown: "$prefix &c$countdown&e..."
  start: "$prefix Игра началась!"
  end:
    lose: |-
      $prefix Вы проиграли!
      $prefix &eПопытаете удачу снова? &c/spleef join
    win:
      reward: "$prefix Вы победили! На ваш баланс зачислено &c$reward$"
      noReward: "$prefix Вы победили!"
commands:
  general:
    help:
      player: |-
        &c&l-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-
        &cКоманды&8:
        &e  /spleef join [arena] &8-&e участвовать в сплифе
        &e  /spleef leave &8-&e не участвовать в сплифе
        &e  /spleef players [arena] &8-&e количество участников сплифа
        &e  /spleef (list/arenas) &8-&e доступные арены
        &c&l-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-
      admin: |-
        &c&l-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-
        &cКоманды&8:
        &e  /spleef join [arena] &8-&e участвовать в сплифе
        &e  /spleef leave &8-&e не участвовать в сплифе
        &e  /spleef players [arena] &8-&e количество участников сплифа
        &e  /spleef (list/arenas) &8-&e доступные арены
        &c&l-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-
        &cДля Админа&8:
        &e  /spleef reload &8-&e перезагрузить конфиги
        &e  /spleef add <arena> [params] &8-&e создать арену (в разработке)
        &e  /spleef remove <arena> &8-&e удалить арену (в разработке)
        # TODO
        &c&l-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-
      console: "Затычка; В будущем будет изменённая админская помощь"
    arenas:
      structure:
        header: "$prefix Арены &8(&c$freeArenasCount&8/&c$arenasCount&8):\n"
        item: "&8- &e$item &8(&c$playersCount&8/&c$maxPlayersCount&8)"
        separator: "\n"
    players:
      structure:
        header: "$prefix Игроки на арене &c$arena &8(&c$playersCount&8/&c$maxPlayersCount&8):\n"
        item: "&e- &c$item"
        separator: "\n"
      fail:
        arenaIsNotExist: "$prefix Арены &c$arena &eне существует!"
  player:
    join:
      success: "Вы присоединились к арене &c$arena&e. Игроков&8: &c$playersCount&8/&c$maxPlayersCount"
      fail:
        alreadyIn: "$prefix Вы уже на арене &c$arena&e!"
        arenaIsNotExist: "$prefix Арены &c$arena &eне существует!"
        arenaIsFull: "$prefix На арене &c$arena &eмаксимальное количество игроков &8(&cplayersCount/&cmaxPlayersCount&8)"
        allArenasAreFull: "$prefix Все существующие арены заполнены!"
        unavailable: "$prefix Данная арена недоступна для вас."
    leave:
      success: "$prefix Вы изгнаны из сплиф-кружка"
      fail:
        notIn: "$prefix Вы не участвуете в сплифе!"
  admin:
    reload: "$prefix Конфиги успешно перезагружены!"
Шаблонные переменные

В конфигах локализации можно использовать шаблонные переменные. Они всегда начинаются с доллара ($).

Переменные арены

Применимы везде, где речь идёт о конкретной арене.

имя значение
playersCount количество игроков
minPlayersCount минимальное количество игроков
maxPlayersCount максимальное количество игроков
countdown количество секунд до старта
arena, region имя защищённого региона WorldGuard
reward размер денежного приз для победившего
Уникальные переменные
имя параметр значение
arenasCount commands.general.arenas.structure.header количество арен
freeArenasCount commands.general.arenas.structure.header количество свободных арен
Переменные структуры

Применимы в конструкциях следующего вида:

structure:
  header: ...
  item: ...
  separator: ...
имя значение
item имя перечисляемого предмета
Универсальные переменные

Применимы во всех параметрах (кроме их самих). Задаются пользователем.

имя значение
prefix Префикс плагина
Форматирование текста

В качестве спецсимвола для цветовых кодов используется амперсанд (&) или параграф (§). Может использоваться как цветовое, так и текстовое форматирование.

Цветовые коды Коды для форматирования текста

About

Spleef minigame plugin for minecraft that works with WorldGuard

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages