Coder Social home page Coder Social logo

wgspleef's Introduction

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 Префикс плагина
Форматирование текста

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

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

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.