name: ChatControl
author: Artel

version: 1.1.0
main: me.artel.chatcontrol.Main
api-version: '1.13'

softdepend:
  - 'PlaceholderAPI'
  - 'Vault'

commands:
  chatcontrol:
    aliases: [ chc ]
    description: The main command for ChatControl.
    permission: "chatcontrol.commands.admin"
  clearchat:
    aliases: [ cchat, clearc, cc ]
    description: Clear the chat.
    permission: "chatcontrol.commands.clearchat"

permissions:
  'chatcontrol.*':
    description: "Grants access to everything from ChatControl."
    default: op
    children:

      # Permissions for commands
      'chatcontrol.commands.*':
        description: "Grants access to every command from ChatControl."
        children:
          'chatcontrol.commands.admin':
            description: "Grants access to the '/chatcontrol' command."
          'chatcontrol.commands.clearchat':
            description: "Grants access to the '/clearchat' command."

      # Permissions for bypassing
      'chatcontrol.bypass.*':
        description: "Grants access to bypass all rules, cooldowns, etc."
        children:
          'chatcontrol.bypass.uppercase.*':
            description: "Grants access to bypass all excessive uppercase checks."
            children:
              'chatcontrol.bypass.uppercase.chat':
                description: "Grants access to bypass the excessive uppercase check for chat."
              'chatcontrol.bypass.uppercase.commands':
                description: "Grants access to bypass the excessive uppercase check for commands."
          'chatcontrol.bypass.cooldown.*':
            description: "Grants access to bypass all cooldowns."
            children:
              'chatcontrol.bypass.cooldown.chat':
                description: "Grants access to bypass the chat cooldowns."
              'chatcontrol.bypass.cooldown.commands':
                description: "Grants access to bypass the command cooldowns."
          'chatcontrol.bypass.movement.*':
            description: "Grants access to bypass all movement requirements."
            children:
              'chatcontrol.bypass.movement.chat':
                description: "Grants access to bypass the movement requirement for chat."
              'chatcontrol.bypass.movement.commands':
                description: "Grants access to bypass the movement requirement for commands."
          'chatcontrol.bypass.rule.*':
            description: "Grants access to bypass all rules."
          'chatcontrol.bypass.clear':
            description: "Grants access to bypass chat clearing."

      # Permissions for color and formatting codes
      'chatcontrol.color.*':
        description: "Grants access to use all color codes."
        children:
          'chatcontrol.color.a':
            description: "Grants access to the '&a' color code."
          'chatcontrol.color.b':
            description: "Grants access to the '&b' color code."
          'chatcontrol.color.c':
            description: "Grants access to the '&c' color code."
          'chatcontrol.color.d':
            description: "Grants access to the '&d' color code."
          'chatcontrol.color.e':
            description: "Grants access to the '&e' color code."
          'chatcontrol.color.f':
            description: "Grants access to the '&f' color code."
          'chatcontrol.color.1':
            description: "Grants access to the '&1' color code."
          'chatcontrol.color.2':
            description: "Grants access to the '&2' color code."
          'chatcontrol.color.3':
            description: "Grants access to the '&3' color code."
          'chatcontrol.color.4':
            description: "Grants access to the '&4' color code."
          'chatcontrol.color.5':
            description: "Grants access to the '&5' color code."
          'chatcontrol.color.6':
            description: "Grants access to the '&6' color code."
          'chatcontrol.color.7':
            description: "Grants access to the '&7' color code."
          'chatcontrol.color.8':
            description: "Grants access to the '&8' color code."
          'chatcontrol.color.9':
            description: "Grants access to the '&9' color code."
          'chatcontrol.color.0':
            description: "Grants access to the '&0' color code."
          'chatcontrol.color.r':
            description: "Grants access to the '&r' color code."
          'chatcontrol.color.hex':
            description: "Grants access to the hexadecimal '&#RRGGBB' color code."
      'chatcontrol.format.*':
        description: "Grants access to use all formatting codes."
        children:
          'chatcontrol.format.k':
            description: "Grants access to the '&k' format code."
          'chatcontrol.format.l':
            description: "Grants access to the '&l' format code."
          'chatcontrol.format.m':
            description: "Grants access to the '&m' format code."
          'chatcontrol.format.n':
            description: "Grants access to the '&n' format code."
          'chatcontrol.format.o':
            description: "Grants access to the '&o' format code."