evennia.contrib.full_systems.evscaperoom.commands

Commands for the Evscaperoom. This contains all in-room commands as well as admin debug-commands to help development.

Gameplay commands

  • look - custom look

  • focus - focus on object (to perform actions on it)

  • <action> <obj> - arbitrary interaction with focused object

  • stand - stand on the floor, resetting any position

  • emote - free-form emote

  • say/whisper/shout - simple communication

Other commands

  • evscaperoom - starts the evscaperoom top-level menu

  • help - custom in-room help command

  • options - set game/accessibility options

  • who - show who’s in the room with you

  • quit - leave a room, return to menu

Admin/development commands

  • jumpstate - jump to specific room state

  • flag - assign a flag to an object

  • createobj - create a room-object set up for Evscaperoom

class evennia.contrib.full_systems.evscaperoom.commands.CmdEvscapeRoom(**kwargs)[源代码]

基类:evennia.commands.command.Command

Base command parent for all Evscaperoom commands.

This operates on the premise of ‘focus’ - the ‘focus’ is set on the caller, then subsequent commands will operate on that focus. If no focus is set, the operation will be general or on the room.

Syntax:

command [<obj1>|<arg1>] [<prep> <obj2>|<arg2>]

arg_regex = re.compile('(/\\w+?(\\s|$))|\\s|$', re.IGNORECASE)
help_category = 'evscaperoom'
parse()[源代码]

Parse incoming arguments for use in all child classes.

property focus
aliases = []
key = 'command'
lock_storage = 'cmd:all();'
search_index_entry = {'aliases': '', 'category': 'evscaperoom', 'key': 'command', 'no_prefix': ' ', 'tags': '', 'text': "\n Base command parent for all Evscaperoom commands.\n\n This operates on the premise of 'focus' - the 'focus'\n is set on the caller, then subsequent commands will\n operate on that focus. If no focus is set,\n the operation will be general or on the room.\n\n Syntax:\n\n command [<obj1>|<arg1>] [<prep> <obj2>|<arg2>]\n\n "}
class evennia.contrib.full_systems.evscaperoom.commands.CmdGiveUp(**kwargs)[源代码]

基类:evennia.contrib.full_systems.evscaperoom.commands.CmdEvscapeRoom

Give up

Usage:

give up

Abandons your attempts at escaping and of ever winning the pie-eating contest.

key = 'give up'
aliases = ['q', 'abort', 'quit', 'chicken out']
func()[源代码]

This is the actual executing part of the command. It is called directly after self.parse(). See the docstring of this module for which object properties are available (beyond those set in self.parse())

help_category = 'evscaperoom'
lock_storage = 'cmd:all();'
search_index_entry = {'aliases': 'q abort quit chicken out', 'category': 'evscaperoom', 'key': 'give up', 'no_prefix': ' q abort quit chicken out', 'tags': '', 'text': '\n Give up\n\n Usage:\n give up\n\n Abandons your attempts at escaping and of ever winning the pie-eating contest.\n\n '}
class evennia.contrib.full_systems.evscaperoom.commands.CmdLook(**kwargs)[源代码]

基类:evennia.contrib.full_systems.evscaperoom.commands.CmdEvscapeRoom

Look at the room, an object or the currently focused object

Usage:

look [obj]

key = 'look'
aliases = ['ls', 'l']
func()[源代码]

This is the actual executing part of the command. It is called directly after self.parse(). See the docstring of this module for which object properties are available (beyond those set in self.parse())

help_category = 'evscaperoom'
lock_storage = 'cmd:all();'
search_index_entry = {'aliases': 'ls l', 'category': 'evscaperoom', 'key': 'look', 'no_prefix': ' ls l', 'tags': '', 'text': '\n Look at the room, an object or the currently focused object\n\n Usage:\n look [obj]\n\n '}
class evennia.contrib.full_systems.evscaperoom.commands.CmdWho(**kwargs)[源代码]

基类:evennia.contrib.full_systems.evscaperoom.commands.CmdEvscapeRoom, evennia.commands.default.account.CmdWho

List other players in the game.

Usage:

who who all

Show who is in the room with you, or (with who all), who is online on the server as a whole.

key = 'who'
func()[源代码]

This is the actual executing part of the command. It is called directly after self.parse(). See the docstring of this module for which object properties are available (beyond those set in self.parse())

aliases = []
help_category = 'evscaperoom'
lock_storage = 'cmd:all()'
search_index_entry = {'aliases': '', 'category': 'evscaperoom', 'key': 'who', 'no_prefix': ' ', 'tags': '', 'text': '\n List other players in the game.\n\n Usage:\n who\n who all\n\n Show who is in the room with you, or (with who all), who is online on the\n server as a whole.\n\n '}
class evennia.contrib.full_systems.evscaperoom.commands.CmdSpeak(**kwargs)[源代码]

基类:evennia.commands.command.Command

Perform an communication action.

Usage:

say <text> whisper shout

key = 'say'
aliases = [';', 'whisper', 'shout']
arg_regex = re.compile('\\w|\\s|$', re.IGNORECASE)
func()[源代码]

This is the actual executing part of the command. It is called directly after self.parse(). See the docstring of this module for which object properties are available (beyond those set in self.parse())

help_category = 'general'
lock_storage = 'cmd:all();'
search_index_entry = {'aliases': '; whisper shout', 'category': 'general', 'key': 'say', 'no_prefix': ' ; whisper shout', 'tags': '', 'text': '\n Perform an communication action.\n\n Usage:\n say <text>\n whisper\n shout\n\n '}
class evennia.contrib.full_systems.evscaperoom.commands.CmdEmote(**kwargs)[源代码]

基类:evennia.commands.command.Command

Perform a free-form emote. Use /me to include yourself in the emote and /name to include other objects or characters. Use “…” to enact speech.

Usage:

emote <emote> :<emote

示例

emote /me smiles at /peter emote /me points to /box and /lever.

key = 'emote'
aliases = [':', 'pose']
arg_regex = re.compile('\\w|\\s|$', re.IGNORECASE)
you_replace()[源代码]
room_replace()[源代码]
func()[源代码]

This is the actual executing part of the command. It is called directly after self.parse(). See the docstring of this module for which object properties are available (beyond those set in self.parse())

help_category = 'general'
lock_storage = 'cmd:all();'
search_index_entry = {'aliases': ': pose', 'category': 'general', 'key': 'emote', 'no_prefix': ' : pose', 'tags': '', 'text': '\n Perform a free-form emote. Use /me to\n include yourself in the emote and /name\n to include other objects or characters.\n Use "..." to enact speech.\n\n Usage:\n emote <emote>\n :<emote\n\n Example:\n emote /me smiles at /peter\n emote /me points to /box and /lever.\n\n '}
class evennia.contrib.full_systems.evscaperoom.commands.CmdFocus(**kwargs)[源代码]

基类:evennia.contrib.full_systems.evscaperoom.commands.CmdEvscapeRoom

Focus your attention on a target.

Usage:

focus <obj>

Once focusing on an object, use look to get more information about how it looks and what actions is available.

key = 'focus'
aliases = ['e', 'examine', 'ex', 'unfocus']
func()[源代码]

This is the actual executing part of the command. It is called directly after self.parse(). See the docstring of this module for which object properties are available (beyond those set in self.parse())

help_category = 'evscaperoom'
lock_storage = 'cmd:all();'
search_index_entry = {'aliases': 'e examine ex unfocus', 'category': 'evscaperoom', 'key': 'focus', 'no_prefix': ' e examine ex unfocus', 'tags': '', 'text': '\n Focus your attention on a target.\n\n Usage:\n focus <obj>\n\n Once focusing on an object, use look to get more information about how it\n looks and what actions is available.\n\n '}
class evennia.contrib.full_systems.evscaperoom.commands.CmdOptions(**kwargs)[源代码]

基类:evennia.contrib.full_systems.evscaperoom.commands.CmdEvscapeRoom

Start option menu

Usage:

options

key = 'options'
aliases = ['option']
func()[源代码]

This is the actual executing part of the command. It is called directly after self.parse(). See the docstring of this module for which object properties are available (beyond those set in self.parse())

help_category = 'evscaperoom'
lock_storage = 'cmd:all();'
search_index_entry = {'aliases': 'option', 'category': 'evscaperoom', 'key': 'options', 'no_prefix': ' option', 'tags': '', 'text': '\n Start option menu\n\n Usage:\n options\n\n '}
class evennia.contrib.full_systems.evscaperoom.commands.CmdGet(**kwargs)[源代码]

基类:evennia.contrib.full_systems.evscaperoom.commands.CmdEvscapeRoom

Use focus / examine instead.

key = 'get'
aliases = ['inv', 'give', 'inventory', 'i']
func()[源代码]

This is the actual executing part of the command. It is called directly after self.parse(). See the docstring of this module for which object properties are available (beyond those set in self.parse())

help_category = 'evscaperoom'
lock_storage = 'cmd:all();'
search_index_entry = {'aliases': 'inv give inventory i', 'category': 'evscaperoom', 'key': 'get', 'no_prefix': ' inv give inventory i', 'tags': '', 'text': '\n Use focus / examine instead.\n\n '}
class evennia.contrib.full_systems.evscaperoom.commands.CmdRerouter(**kwargs)[源代码]

基类:evennia.commands.default.muxcommand.MuxCommand

Interact with an object in focus.

Usage:

<action> [arg]

key = 'open'
aliases = ['@dig', '@open']
func()[源代码]

This is the hook function that actually does all the work. It is called by the cmdhandler right after self.parser() finishes, and so has access to all the variables defined therein.

help_category = 'general'
lock_storage = 'cmd:all();'
search_index_entry = {'aliases': '@dig @open', 'category': 'general', 'key': 'open', 'no_prefix': ' dig open', 'tags': '', 'text': '\n Interact with an object in focus.\n\n Usage:\n <action> [arg]\n\n '}
class evennia.contrib.full_systems.evscaperoom.commands.CmdFocusInteraction(**kwargs)[源代码]

基类:evennia.contrib.full_systems.evscaperoom.commands.CmdEvscapeRoom

Interact with an object in focus.

Usage:

<action> [arg]

This is a special catch-all command which will operate on the current focus. It will look for a method

focused_object.at_focus_<action>(caller, **kwargs) and call

it. This allows objects to just add a new hook to make that action apply to it. The obj1, prep, obj2, arg1, arg2 are passed as keys into the method.

key = '__nomatch_command'
parse()[源代码]

We assume this type of command is always on the form command [arg]

func()[源代码]

This is the actual executing part of the command. It is called directly after self.parse(). See the docstring of this module for which object properties are available (beyond those set in self.parse())

aliases = []
help_category = 'evscaperoom'
lock_storage = 'cmd:all();'
search_index_entry = {'aliases': '', 'category': 'evscaperoom', 'key': '__nomatch_command', 'no_prefix': ' ', 'tags': '', 'text': '\n Interact with an object in focus.\n\n Usage:\n <action> [arg]\n\n This is a special catch-all command which will operate on\n the current focus. It will look for a method\n `focused_object.at_focus_<action>(caller, **kwargs)` and call\n it. This allows objects to just add a new hook to make that\n action apply to it. The obj1, prep, obj2, arg1, arg2 are passed\n as keys into the method.\n\n '}
class evennia.contrib.full_systems.evscaperoom.commands.CmdStand(**kwargs)[源代码]

基类:evennia.contrib.full_systems.evscaperoom.commands.CmdEvscapeRoom

Stand up from whatever position you had.

key = 'stand'
func()[源代码]

This is the actual executing part of the command. It is called directly after self.parse(). See the docstring of this module for which object properties are available (beyond those set in self.parse())

aliases = []
help_category = 'evscaperoom'
lock_storage = 'cmd:all();'
search_index_entry = {'aliases': '', 'category': 'evscaperoom', 'key': 'stand', 'no_prefix': ' ', 'tags': '', 'text': '\n Stand up from whatever position you had.\n\n '}
class evennia.contrib.full_systems.evscaperoom.commands.CmdHelp(**kwargs)[源代码]

基类:evennia.contrib.full_systems.evscaperoom.commands.CmdEvscapeRoom, evennia.commands.default.help.CmdHelp

Get help.

Usage:

help <topic> or <command>

key = 'help'
aliases = ['?']
func()[源代码]

This is the actual executing part of the command. It is called directly after self.parse(). See the docstring of this module for which object properties are available (beyond those set in self.parse())

help_category = 'evscaperoom'
lock_storage = 'cmd:all()'
search_index_entry = {'aliases': '?', 'category': 'evscaperoom', 'key': 'help', 'no_prefix': ' ?', 'tags': '', 'text': '\n Get help.\n\n Usage:\n help <topic> or <command>\n\n '}
class evennia.contrib.full_systems.evscaperoom.commands.CmdCreateObj(**kwargs)[源代码]

基类:evennia.contrib.full_systems.evscaperoom.commands.CmdEvscapeRoom

Create command, only for Admins during debugging.

Usage:

createobj name[:typeclass]

Here, :typeclass is a class in evscaperoom.commands

key = 'createobj'
aliases = ['cobj']
locks = 'cmd:perm(Admin)'
func()[源代码]

This is the actual executing part of the command. It is called directly after self.parse(). See the docstring of this module for which object properties are available (beyond those set in self.parse())

help_category = 'evscaperoom'
lock_storage = 'cmd:perm(Admin)'
search_index_entry = {'aliases': 'cobj', 'category': 'evscaperoom', 'key': 'createobj', 'no_prefix': ' cobj', 'tags': '', 'text': '\n Create command, only for Admins during debugging.\n\n Usage:\n createobj name[:typeclass]\n\n Here, :typeclass is a class in evscaperoom.commands\n\n '}
class evennia.contrib.full_systems.evscaperoom.commands.CmdSetFlag(**kwargs)[源代码]

基类:evennia.contrib.full_systems.evscaperoom.commands.CmdEvscapeRoom

Assign a flag to an object. Admin use only

Usage:

flag <obj> with <flagname>

key = 'flag'
aliases = ['setflag']
locks = 'cmd:perm(Admin)'
func()[源代码]

This is the actual executing part of the command. It is called directly after self.parse(). See the docstring of this module for which object properties are available (beyond those set in self.parse())

help_category = 'evscaperoom'
lock_storage = 'cmd:perm(Admin)'
search_index_entry = {'aliases': 'setflag', 'category': 'evscaperoom', 'key': 'flag', 'no_prefix': ' setflag', 'tags': '', 'text': '\n Assign a flag to an object. Admin use only\n\n Usage:\n flag <obj> with <flagname>\n\n '}
class evennia.contrib.full_systems.evscaperoom.commands.CmdJumpState(**kwargs)[源代码]

基类:evennia.contrib.full_systems.evscaperoom.commands.CmdEvscapeRoom

Jump to a given state.

参数

<statename> (jumpstate) –

key = 'jumpstate'
locks = 'cmd:perm(Admin)'
func()[源代码]

This is the actual executing part of the command. It is called directly after self.parse(). See the docstring of this module for which object properties are available (beyond those set in self.parse())

aliases = []
help_category = 'evscaperoom'
lock_storage = 'cmd:perm(Admin)'
search_index_entry = {'aliases': '', 'category': 'evscaperoom', 'key': 'jumpstate', 'no_prefix': ' ', 'tags': '', 'text': '\n Jump to a given state.\n\n Args:\n jumpstate <statename>\n\n '}
class evennia.contrib.full_systems.evscaperoom.commands.CmdEvscapeRoomStart(**kwargs)[源代码]

基类:evennia.commands.command.Command

Go to the Evscaperoom start menu

key = 'evscaperoom'
help_category = 'evscaperoom'
func()[源代码]

This is the actual executing part of the command. It is called directly after self.parse(). See the docstring of this module for which object properties are available (beyond those set in self.parse())

aliases = []
lock_storage = 'cmd:all();'
search_index_entry = {'aliases': '', 'category': 'evscaperoom', 'key': 'evscaperoom', 'no_prefix': ' ', 'tags': '', 'text': '\n Go to the Evscaperoom start menu\n\n '}
class evennia.contrib.full_systems.evscaperoom.commands.CmdSetEvScapeRoom(cmdsetobj=None, key=None)[源代码]

基类:evennia.commands.cmdset.CmdSet

path = 'evennia.contrib.full_systems.evscaperoom.commands.CmdSetEvScapeRoom'
priority = 1
at_cmdset_creation()[源代码]

Hook method - this should be overloaded in the inheriting class, and should take care of populating the cmdset by use of self.add().