Sueta
AU

AuraCommands

1.0.8-dev

Create items that run commands and commands that run other commands as well!

·Plugin

This plugin allows you to run commands that run another command!
Or even make an item that'll run commands!

This plugin requires my library plugin AuraAPI.

Commands:
- Aliases: /commands, cmds
/auracommands - Tells you the plugin's commands.
/auracommands reload - Reloads the plugin.
/auracommands item list - Lists all the plugin's items.
/auracommands item give <player> <itemID> [amount] - Give a player a command item.
/auracommands item giveall <itemID> [amount] [alts] - Give every online player a command item.
/<custom-command>

Permissions:
/auracommands - auracommands.admin
/auracommands reload - auracommands.admin.reload
/auracommands item list - auracommands.admin.item.list
/auracommands item give <player> <itemID> [amount] - auracommands.admin.item.give
/auracommands item giveall <itemID> [amount] [alts] - auracommands.item.giveall
/<custom-command> - <custom-permission>

This plugin uses bstats, if you don't want to contribute to bstats disable bstats in the bstats folder.

PlaceholderAPI support in text and cmds!

config.yml

#-----------------------------------------#
#                                         #
#              AuraCommands               #
#           by SpokenWig620933            #
#             version: 1.0.7              #
#                                         #
#-----------------------------------------#
general:
   # Enable this to receive debug messages.
  debug: false
 
  item-list:
     # The amount of items that'll show on each page.
    # Must be 1 or higher.
    items-per-page: 10

lang.yml

general:
   # The prefix put before most messages from this plugin.
  prefix: '&8[&3AuraCommands&8] '
 
  # Message sent when you haven't used a valid player.
  invalid-player: '&cThat player doesn''t exist!'
 
  item:
     # Message sent to the player when they successfully gave a player an item.
    give: '&aYou have given {player} the item {name} x{amount}.'
    # Message sent to the player when they successfully gave everyone an item.
    giveall: '&aYou have given everyone the item {name} x{amount}.'
    # Message sent to the player when they successfully receive an item.
    received: '&bYou have received the item {name} x{amount} from {player}.'
    # Message sent to the player when they use an invalid item.
    invalid-item: '&cThat isn''t a valid item!'
    # The setup for the list command.
    list:
      header: '&b---------- &3&lItems &9(Page: {page})&b ----------'
      item: '&b- &5{itemID} &b: &r{itemName}'
      footer: '&b-----------------------------------'
 
      page-empty: '&cThere are no items on that page!'

Defaults:
commands/example.yml

#----------------------------------------------------------------------------------------------------#
#   
#   Types: text, text-receiver, text-receivers, cmds, cmds-receiver, cmds-receivers
#   Placeholders: PlaceholderAPI placeholders, {player}, {sender}, {online-players}, {cmd}, {arg[#]}, {args[formula/list]}
#
#----------------------------------------------------------------------------------------------------#
#commands:
#  # The command ID.
#  example:
#    # The main command.
#    cmd: example
#    # Aliases to the command.
#    aliases:
#    - 'ex'
#
#    # The required permission for the main command.
#    permission: auracommands.commands.example
#    # The type of command the main command is.
#    type: text
#    # Since this is text, use this to send the command sender Text.
#    text:
#    - 'I am example'
#
#    # The parent permissions for the other permissions in this command.
#    # In this case all the permissions in this command can be given with just auracommands.commands.example.*
#    parents:
#      1:
#        parent: auracommands.commands.example
#        perm: auracommands.commands.example.*
#      2:
#        parent: auracommands.commands.example.*
#        perm: auracommands.commands.example.hi.*
#      3:
#        parent: auracommands.commands.example.hi.*
#        perm: auracommands.commands.example.hi
#      4:
#        parent: auracommands.commands.example.hi.*
#        perm: auracommands.commands.example.hi.server
#      5:
#        parent: auracommands.commands.example.hi.*
#        perm: auracommands.commands.example.hi.sender.*
#      6:
#        parent: auracommands.commands.example.hi.sender.*
#        perm: auracommands.commands.example.hi.sender
#      7:
#        parent: auracommands.commands.example.hi.sender.*
#        perm: auracommands.commands.example.hi.sender.multiple
#      8:
#        parent: auracommands.commands.example.*
#        perm: auracommands.commands.example.send.*
#      9:
#        parent: auracommands.commands.example.send.*
#        perm: auracommands.commands.example.send
#      10:
#        parent: auracommands.commands.example.send.*
#        perm: auracommands.commands.example.send.msg
#
#    # The TAB Completer for the command if there's arguments.
#    tab-completer:
#      # The length where it'll TAB Complete.
#      # This would be the first argument.
#      1:
#        # What the argument can be.
#        tabbed:
#        - 'hi'
#        - 'send'
#      # This would be the second argument, and so forth.
#      2:
#        # A placeholder to allow multiple second arguments for different first arguments.
#        1:
#          # What's required to see these arguments.
#          require:
#            # What the first argument needs to be to see these arguments.
#            1: hi
#          # What the argument can be if the requirements are met.
#          tabbed:
#          - 'server'
#          - '{online-players}'
#        2:
#          require:
#            1: send
#          tabbed:
#          - 'msg'
#      3:
#        1:
#          require:
#            1: hi
#            # We'll use this to represent an existing player.
#            2: '{online-player}'
#          tabbed:
#          - '{online-players}'
#        2:
#          require:
#            1: hi
#            2: server
#          tabbed:
#          - 'owner'
#          - 'manager'
#      4:
#        1:
#          require:
#            1: hi
#            2: server
#            3: owner
#          tabbed:
#          - 'manager'
#        2:
#          require:
#            1: hi
#            2: server
#            3: manager
#          tabbed:
#          - 'owner'
#    # The section for inputed arguments.
#    input:
#      # If it's only 1 argument this is called.
#      1:
#        # A placeholder to allow multiple first arguments.
#        1:
#          # What's required to run this first argument section.
#          require:
#            # What the first argument must be to run this.
#            1: hi
#          # The permission required to use this argument.
#          permission: auracommands.commands.example.hi
#          # The type of command this argument will act as.
#          type: text
#          # Since this is text, the text this will send to the command sender.
#          # {sender} will always be replaced by who sent the command.
#          text:
#          - 'Hello {sender}'
#        2:
#          require:
#            1: send
#          permission: auracommands.commands.example.send
#          type: text
#          text:
#          - '&cWhat kind of send is it?'
#      # If it's 2 arguments this is called, and so forth.
#      2:
#        # A placeholder to allow multiple second arguments.
#        1:
#          # What's required to run this first argument section.
#          require:
#            # What the first argument must be to run this.
#            1: hi
#            # What the second argument must be to run this.
#            2: server
#
#          # The permission required to use this argument.
#          permission: auracommands.commands.example.hi.server
#
#          # The type of command this argument will act as.
#          type: cmds
#          # Since this is cmds, the commands this will send.
#          # These cmds will all be run as console.
#          cmds:
#          - 'give {player} command_block'
#          # These cmds will all be run as the command sender.
#          p-cmds:
#          - 'OP;help'
#          # One random cmd will be run as console.
#          r-cmds:
#          - 'say Hi'
#          - 'say Bye'
#          # One random cmd will be run as the command sender.
#          r-p-cmds:
#          - 'me Hi'
#          - 'me Bye'
#        2:
#          require:
#            1: hi
#            2: '{online-player}'
#          permission: auracommands.commands.example.hi.sender
#          type: text-receiver
#          # Who will receive the text?
#          # {arg[2]} will be replaced with the second argument.
#          receiver: '{arg[2]}'
#          text:
#          - 'Hello {arg[2]}'
#        3:
#          require:
#            1: send
#            2: msg
#          permission: auracommands.commands.example.send.msg
#          type: text
#          text:
#          - '&cDon''t forget a message to send!'
#      3:
#        1:
#          require:
#            1: hi
#            2: '{online-player}'
#            3: '{online-player}'
#          permission: auracommands.commands.example.hi.sender.multiple
#          type: text-receivers
#          # Whom will receive the text?
#          receivers:
#          # {args[?>1]} will be replaced with every player specified in the command from the second argument, forward.
#          - '{args[?>1]}'
#          text:
#          # {player} will always be replaced with the current receiver.
#          - 'Hello {player}'
#        2:
#          require:
#            1: send
#            2: msg
#          permission: auracommands.commands.example.hi.send.msg
#          type: text
#          text:
#          - 'Here''s your 5 word message.'
#        3:
#          require:
#            1: send
#            2: msg
#          permission: auracommands.commands.example.hi.send.msg
#          type: text-receivers
#          receivers:
#          - '{online-players}'
#          # {args[3, 4, 5, 6, 7]} will be replaced with arguments 3, 4, 5, 6, 7 joined by " ".
#          text:
#          - '{args[3, 4, 5, 6, 7]}'
         
commands:
  example:
    cmd: example
    aliases:
    - 'ex'
    permission: auracommands.commands.example
    type: text
    text:
    - '&b---------- &5&l Example &b----------'
    - '/{cmd} hi - Sends a msg saying "Hello."'
    - '/{cmd} hi server - Makes you and the server say "Hi."'
    - '/{cmd} hi <player> [player...] - Sends a msg to the other player(s) saying "Hello."'
    - '/{cmd} hi <owner/manager> - Sends a msg saying "Hello."'
    - '/{cmd} send msg [msg] - Sends a msg saying your input.'
    - '&b--------------------'
    parents:
      1:
        parent: auracommands.commands.example
        perm: auracommands.commands.example.*
      2:
        parent: auracommands.commands.example.*
        perm: auracommands.commands.example.hi.*
      3:
        parent: auracommands.commands.example.hi.*
        perm: auracommands.commands.example.hi
      4:
        parent: auracommands.commands.example.hi.*
        perm: auracommands.commands.example.hi.server
      5:
        parent: auracommands.commands.example.hi.*
        perm: auracommands.commands.example.hi.sender.*
      6:
        parent: auracommands.commands.example.hi.sender.*
        perm: auracommands.commands.example.hi.sender
      7:
        parent: auracommands.commands.example.hi.sender.*
        perm: auracommands.commands.example.hi.sender.multiple
      8:
        parent: auracommands.commands.example.*
        perm: auracommands.commands.example.send.*
      9:
        parent: auracommands.commands.example.send.*
        perm: auracommands.commands.example.send
      10:
        parent: auracommands.commands.example.send.*
        perm: auracommands.commands.example.send.msg
    tab-completer:
      1:
        1:
          require: {}
          tabbed:
          - 'hi'
          - 'send'
      2:
        1:
          require:
            1: hi
          tabbed:
          - 'server'
          - '{online-players}'
        2:
          require:
            1: send
          tabbed:
          - 'msg'
      3:
        1:
          require:
            1: hi
            2: '{online-player}'
          tabbed:
          - '{online-players}'
        2:
          require:
            1: hi
            2: server
          tabbed:
          - 'owner'
          - 'manager'
      4:
        1:
          require:
            1: hi
            2: server
            3: owner
          tabbed:
          - 'manager'
        2:
          require:
            1: hi
            2: server
            3: manager
          tabbed:
          - 'owner'
    input:
      1:
        1:
          require:
            1: hi
          permission: auracommands.commands.example.hi
          type: text
          text:
          - 'Hello {player}'
        2:
          require:
            1: send
          permission: auracommands.commands.example.send
          type: text
          text:
          - '&cWhat kind of send is it?'
      2:
        1:
          require:
            1: hi
            2: server
          permission: auracommands.commands.example.hi.server
          type: cmds
          cmds:
          - 'give {player} command_block'
          p-cmds:
          - 'OP;help'
          r-cmds:
          - 'say Hi'
          - 'say Bye'
          r-p-cmds:
          - 'me Hi'
          - 'me Bye'
        2:
          require:
            1: hi
            2: '{online-player}'
          permission: auracommands.commands.example.hi.sender
          type: text-receiver
          receiver: '{arg[2]}'
          text:
          - 'Hello {arg[2]}'
        3:
          require:
            1: send
            2: msg
          permission: auracommands.commands.example.send.msg
          type: text
          text:
          - '&cDon''t forget a message to send!'
      3:
        1:
          require:
            1: hi
            2: '{online-player}'
            3: '{online-player}'
          permission: auracommands.commands.example.hi.sender.multiple
          type: text-receivers
          receivers:
          - '{args[?>1]}'
          text:
          - 'Hello {player}'
        2:
          require:
            1: send
            2: msg
          permission: auracommands.commands.example.hi.send.msg
          type: text
          text:
          - '&aSent your 5 word message.'
        3:
          require:
            1: send
            2: msg
          permission: auracommands.commands.example.hi.send.msg
          type: text-receivers
          receivers:
          - '{online-players}'
          text:
          - '{args[3, 4, 5, 6, 7]}'
  example-empty:
    cmd: example-empty
    type: cmds
    cmds:
    - 'me {player} &bYAY, I ran an example command!'

items/example.yml

Similar projects

Plugin →