Skip to content
This repository has been archived by the owner on Apr 3, 2024. It is now read-only.

Event: Command

1cec0ld edited this page Apr 10, 2013 · 8 revisions

This happens when a player types a command.

Argument types are:

  • & means a player
  • # means a number
  • % means a single word, such as a tag name or OfflinePlayer name
  • * at the end it means this command will ignore any other arguments. Useful for catching mistakes.
  • Plain words are not preceded by a symbol.

Commands are checked in order, first to last, so catch-all commands need to be at the bottom. Once one command matches, no more commands are tried.

Argument names become variables that can be used in the routines. There is also a default sender player for the player who typed the command.

Do not use a '/' in front unless you want a player to type // before the command in game.
Console will behave as a player with no permissions for all commands, so check if sender.haspermission.somenode or sender.type.none for each command with a permission check that you want console access to.

Examples

Command:
    - 'jukebox':
        - 'message.sender': 'Use &a/jukebox <recordname>'
        - 'message.sender': 'Valid record names are: thirteen, cat, blocks, chirp, far, mall, mellohl, stal, strad, ward, eleven'
    - 'jukebox thirteen':
        - 'sender.playeffect.RECORD_PLAY.2256'
    - 'jukebox cat':
        - 'sender.playeffect.RECORD_PLAY.2257'
    - 'jukebox blocks':
        - 'sender.playeffect.RECORD_PLAY.2258'
    - 'jukebox chirp':
        - 'sender.playeffect.RECORD_PLAY.2259'
    - 'jukebox far':
        - 'sender.playeffect.RECORD_PLAY.2260'
    - 'jukebox mall':
        - 'sender.playeffect.RECORD_PLAY.2261'
    - 'jukebox mellohl':
        - 'sender.playeffect.RECORD_PLAY.2262'
    - 'jukebox stal':
        - 'sender.playeffect.RECORD_PLAY.2263'
    - 'jukebox strad':
        - 'sender.playeffect.RECORD_PLAY.2264'
    - 'jukebox ward':
        - 'sender.playeffect.RECORD_PLAY.2265'
    - 'jukebox eleven':
        - 'sender.playeffect.RECORD_PLAY.2266'
Command:
    - 'mdtest &target_player_hi':
        - 'message.sender': "Got mdtest: %{target_player_hi_name}"
    - 'mdtest #some_num':
        - 'message.sender': "Got mdtest: %{some_num}"
    - 'mdtest':
        - 'message.sender': "Got mdtest"
    - 'mdtest test':
        - 'message.sender': "Got another mdtest"
    - 'mdtest *':
        - 'message.sender': "Unknown command, please try again! D:"

    - 'tag %tag #num':
        - 'tag.sender.%{tag}': 'num'
    - 'tag %tag':
        - 'message.sender': "%{tag} value: %{sender_tag_%{tag}}"
Death:
    - 'if attacker.type.player':
        - 'if target.type.zombie':
            - 'tag.attacker.zombieKill': '+1'
        - 'if target.type.creeper':
            - 'tag.attacker.creepKill': '+1'
        - 'if target.type.skeleton':
            - 'tag.attacker.skeleKill': '+1'
        - 'if target.type.spider_riderless':
            - 'tag.attacker.spiderKill': '+1'
        - 'if target.type.player':
            - 'message.server': "&6%{target_name}&f was killed by &c%{attacker_name}"
            - 'tag.attacker.playerKill': '+1'

Command:
    - 'stats':
        - 'message.sender': "&e %{sender_name}'s &4stats since 23 July 2012: "
        - 'message.sender': "    &cZombie Kills:&b %{sender_tagvalue_zombiekill}"
        - 'message.sender': "    &cSkeleton Kills:&b %{sender_tagvalue_skelekill}"
        - 'message.sender': "    &cCreeper Kills:&b %{sender_tagvalue_creepkill}"
        - 'message.sender': "    &cSpider Kills:&b %{sender_tagvalue_spiderkill}"
        - 'message.sender': "    &cPlayer Kills:&b %{sender_tagvalue_playerkill}"
###########See Someone Elses Stats##########
    - 'stats &person':
        - 'message.sender': "&e %{person_name}'s &4stats since 23 July 2012: "
        - 'message.sender': "    &cZombie Kills:&b %{person_tagvalue_zombiekill}"
        - 'message.sender': "    &cSkeleton Kills:&b %{person_tagvalue_skelekill}"
        - 'message.sender': "    &cCreeper Kills:&b %{person_tagvalue_creepkill}"
        - 'message.sender': "    &cSpider Kills:&b %{person_tagvalue_spiderkill}"
        - 'message.sender': "    &cPlayer Kills:&b %{person_tagvalue_playerkill}"
Clone this wiki locally