Skip to content

Комманда /tictactoe

Комманда для того, чтобы предложить поиграть в крестики-нолики command tictactoe

По умолчанию кидается запрос в китайские крестики-нолики, если хочешь в обычные, то используй /tictactoe ник falsecommand tictactoe default

Правила китайских крестиков-ноликов

  1. Каждый игрок может поставить только 3 своих метки
  2. Если игра не закончилась, то первая метка, которая была поставлена игроком, убирается и ставится новая
  3. И так по кругу, пока игра не закончится

В итоге игра становится сложной и со стратегией!

🌍 Локализация

📂 Путь localizations → язык.yml → command.tictactoe

⚖️ По умолчанию

yml
tictactoe:
  null-player: "<color:#ff7171><b>⁉</b> Игрок не найден"
  myself: "<color:#ff7171><b>⁉</b> Ты не можешь играть с самим собой"
  wrong-game: "<color:#ff7171><b>⁉</b> Этой игры не существует"
  wrong-move: "<color:#ff7171><b>⁉</b> Такой ход невозможен"
  wrong-by-player: "<color:#ff7171><b>⁉</b> Игра закончена, потому что один из игроков не в сети"
  symbol:
    empty: "<hover:show_text:\"<fcolor:1>Ход <move>\"><click:run_command:\"/tictactoe %d <move>\">☐</click></hover>"
    first: "<fcolor:2>☑</fcolor:2>"
    first-remove: "<color:#ff7171>☑</color:#ff7171>"
    first-win: "<color:#98FB98>☑</color:#98FB98>"
    second: "<fcolor:2>☒</fcolor:2>"
    second-remove: "<color:#ff7171>☒</color:#ff7171>"
    second-win: "<color:#98FB98>☒</color:#98FB98>"
  field: "<fcolor:1><br>|[#][#][#]| <title> <current_move> <br>|[#][#][#]| <br>|[#][#][#]| <last_move><br>"
  current-move: "<fcolor:2>☐ → <symbol></fcolor:2>"
  last-move: "<fcolor:2>Последний ход (<move>)</fcolor:2>"
  format-move: "<fcolor:2>Ход <player> </fcolor:2>"
  format-win: "<color:#98FB98><player> выйграл</color:#98FB98>"
  format-draw: "<color:#98FB98>Ничья 👬</color:#98FB98>"
  sender: "<fcolor:1>☐ Предложение сыграть в крестики-нолики отправлено для <display_name>"
  format-create: "<click:run_command:\"/tictactoe %d create\"><fcolor:1>☐ Есть предложение сыграть в крестики-нолики от <display_name>, принять? [+]"
yml
tictactoe:
  null-player: "<color:#ff7171><b>⁉</b> This player does not exist"
  myself: "<color:#ff7171><b>⁉</b> You can't play with yourself"
  wrong-game: "<color:#ff7171><b>⁉</b> This game does not exist"
  wrong-move: "<color:#ff7171><b>⁉</b> This step is not possible"
  wrong-by-player: "<color:#ff7171><b>⁉</b> This game ended because player quit"
  symbol:
    empty: "<hover:show_text:\"<fcolor:1>Move <move>\"><click:run_command:\"/tictactoe %d <move>\">☐</click></hover>"
    first: "<fcolor:2>☑</fcolor:2>"
    first-remove: "<color:#ff7171>☑</color:#ff7171>"
    first-win: "<color:#98FB98>☑</color:#98FB98>"
    second: "<fcolor:2>☒</fcolor:2>"
    second-remove: "<color:#ff7171>☒</color:#ff7171>"
    second-win: "<color:#98FB98>☒</color:#98FB98>"
  field: "<fcolor:1><br>|[#][#][#]| <title> <current_move> <br>|[#][#][#]| <br>|[#][#][#]| <last_move><br>"
  current-move: "<fcolor:2>☐ → <symbol></fcolor:2>"
  last-move: "<fcolor:2>Last move (<move>)</fcolor:2>"
  format-move: "<fcolor:2><player>'s move</fcolor:2>"
  format-win: "<color:#98FB98><player> won this game</color:#98FB98>"
  format-draw: "<color:#98FB98>The game ended in a draw 👬</color:#98FB98>"
  sender: "<fcolor:1>☐ An offer to play was sent to <display_name>"
  format-create: "<click:run_command:\"/tictactoe %d create\"><fcolor:1>☐ Received an invite to play tic-tac-toe with <display_name>, accept? [+]"

null-player

Сообщение, если введённый игрок не найден

myself

Сообщение, если введённый игрок пытается поиграть сам с собой

wrong-game

Сообщение, если указанной игры не существует

wrong-move

Сообщение, если такой ход невозможен

wrong-by-player

Сообщение, если один из игроков, участвующий в игре, вышел

symbol

Сообщения для символов

empty

Формат сообщения для пустой клетки

first

Формат сообщения для клетки первого игрока

first-remove

Формат сообщения для удаления клетки первого игрока

first-win

Формат сообщения для победной клетки первого игрока

second

Формат сообщения для клетки второго игрока

second-remove

Формат сообщения для удаления клетки второго игрока

second-win

Формат сообщения для победной клетки второго игрока

field

Формат сообщения для игрового поля

current-move

Формат сообщения для информации о текущем ходе

last-move

Форма сообщения для информации о прошлом ходе

format-move

Формат сообщения для оповещения о ходе

format-win

Сообщение при победе

format-draw

Сообщение при ничье

sender

Сообщение для отправителя при запросе

format-create

Сообщение для получателя при запросе

⚙️ Настройка

📂 Путь command.yml → tictactoe

⚖️ По умолчанию

yml
tictactoe:
  enable: true
  aliases:
    - "tictactoe"
    - "ttt"
  cooldown:
    enable: false
  sound:
    enable: false

enable

Включает или выключает работоспособность модуля

aliases

Список псевдонимов для использования комманды

ПСЕВДОНИМЫ МОГУТ БЫТЬ ЛЮБЫМИ

Например newcommand, новаякоманда, бан, ми и т.д.

cooldown

Задержка использования

ПолеТипПояснение
enablebooleanВключает работу задержки
durationlongСколько должно пройти тиков между использованиями

КАК ИСПОЛЬЗОВАТЬ ЗАДЕРЖКУ?

Замени false на true и перезапусти FlectonePulse с помощью комманды /flectonepulse reload. Дополнительные параметры для настройки задержки появятся ПОСЛЕ ПЕРЕЗАГРУЗКИ

В итоге настройка задержки выглядит так

yaml
cooldown:
  enable: true
  duration: 60

sound

Проигрывание звука

ПолеТипПояснение
enablebooleanВключает работу звука
volumefloatГромкость звука от 0 до 1.0
pitchfloatТональность звука от 0 до 1.0
categoryStringКатегория из MASTER, MUSIC, RECORD, WEATHER, BLOCK, HOSTILE, NEUTRAL, PLAYER, AMBIENT, VOICE
nameStringНазвание звука, например minecraft:entity.llama.spit

КАК ИСПОЛЬЗОВАТЬ ЗВУК?

Замени false на true и перезапусти FlectonePulse с помощью комманды /flectonepulse reload, дополнительные параметры для настройки звука появятся ПОСЛЕ ПЕРЕЗАГРУЗКИ

В итоге настройка звука выглядит так

yaml
sound:
  enable: true
  volume: 1.0
  pitch: 1.0
  category: "HOSTILE"
  name: "minecraft:entity.llama.spit"

🔐 Права

📂 Путь permission.yml → command.tictactoe

⚖️ По умолчанию

yml
tictactoe:
  name: "flectonepulse.module.command.tictactoe"
  type: TRUE
  cooldown-bypass:
    name: "flectonepulse.module.command.tictactoe.cooldown.bypass"
    type: OP
  sound:
    name: "flectonepulse.module.command.tictactoe.sound"
    type: TRUE

name

Название права

type

Вид права

ВидОбъяснение
TRUEДоступно для любого игрока
FALSEДоступно если выдано отдельно (например с помощью LuckPerms)
OPДоступно для операторов сервера
NOT_OPДоступно если выдано отдельно (например с помощью LuckPerms)

cooldown-bypass

Право для игнорирования задержки между использованиями

sound

Право для использования звука