evennia/docs/latest/api/evennia.commands.default.building.html
Evennia docbuilder action 76d95c253e Updated HTML docs.
2026-01-12 16:26:53 +00:00

4924 lines
No EOL
616 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html>
<html lang="en" data-content_root="../">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="viewport" content="width=device-width, initial-scale=1" />
<title>evennia.commands.default.building &#8212; Evennia latest documentation</title>
<link rel="stylesheet" type="text/css" href="../_static/pygments.css?v=d75fae25" />
<link rel="stylesheet" type="text/css" href="../_static/nature.css?v=279e0f84" />
<link rel="stylesheet" type="text/css" href="../_static/custom.css?v=e4a91a55" />
<script src="../_static/documentation_options.js?v=c6e86fd7"></script>
<script src="../_static/doctools.js?v=9bcbadda"></script>
<script src="../_static/sphinx_highlight.js?v=dc90522c"></script>
<link rel="icon" href="../_static/favicon.ico"/>
<link rel="index" title="Index" href="../genindex.html" />
<link rel="search" title="Search" href="../search.html" />
<link rel="next" title="evennia.commands.default.cmdset_account" href="evennia.commands.default.cmdset_account.html" />
<link rel="prev" title="evennia.commands.default.batchprocess" href="evennia.commands.default.batchprocess.html" />
</head><body>
<div class="related" role="navigation" aria-label="Related">
<h3>Navigation</h3>
<ul>
<li class="right" style="margin-right: 10px">
<a href="../genindex.html" title="General Index"
accesskey="I">index</a></li>
<li class="right" >
<a href="../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="right" >
<a href="evennia.commands.default.cmdset_account.html" title="evennia.commands.default.cmdset_account"
accesskey="N">next</a> |</li>
<li class="right" >
<a href="evennia.commands.default.batchprocess.html" title="evennia.commands.default.batchprocess"
accesskey="P">previous</a> |</li>
<li class="nav-item nav-item-0"><a href="../index.html">Evennia</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../Evennia-API.html" >API Summary</a> &#187;</li>
<li class="nav-item nav-item-2"><a href="evennia-api.html" >evennia</a> &#187;</li>
<li class="nav-item nav-item-3"><a href="evennia.html" >evennia</a> &#187;</li>
<li class="nav-item nav-item-4"><a href="evennia.commands.html" >evennia.commands</a> &#187;</li>
<li class="nav-item nav-item-5"><a href="evennia.commands.default.html" accesskey="U">evennia.commands.default</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">evennia.commands.default.building</a></li>
</ul>
</div>
<div class="document">
<div class="documentwrapper">
<div class="bodywrapper">
<div class="body" role="main">
<section id="module-evennia.commands.default.building">
<span id="evennia-commands-default-building"></span><h1>evennia.commands.default.building<a class="headerlink" href="#module-evennia.commands.default.building" title="Link to this heading"></a></h1>
<p>Building and world design commands</p>
<dl class="py class">
<dt class="sig sig-object py" id="evennia.commands.default.building.ObjManipCommand">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">evennia.commands.default.building.</span></span><span class="sig-name descname"><span class="pre">ObjManipCommand</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#ObjManipCommand"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.ObjManipCommand" title="Link to this definition"></a></dt>
<dd><p>Bases: <a class="reference internal" href="evennia.commands.default.muxcommand.html#evennia.commands.default.muxcommand.MuxCommand" title="evennia.commands.default.muxcommand.MuxCommand"><code class="xref py py-class docutils literal notranslate"><span class="pre">MuxCommand</span></code></a></p>
<p>This is a parent class for some of the defining objmanip commands
since they tend to have some more variables to define new objects.</p>
<p>Each object definition can have several components. First is
always a name, followed by an optional alias list and finally an
some optional data, such as a typeclass or a location. A comma ,
separates different objects. Like this:</p>
<blockquote>
<div><p>name1;alias;alias;alias:option, name2;alias;alias …</p>
</div></blockquote>
<p>Spaces between all components are stripped.</p>
<p>A second situation is attribute manipulation. Such commands
are simpler and offer combinations</p>
<blockquote>
<div><p>objname/attr/attr/attr, objname/attr, …</p>
</div></blockquote>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.ObjManipCommand.default_typeclasses">
<span class="sig-name descname"><span class="pre">default_typeclasses</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">{'character':</span> <span class="pre">'typeclasses.characters.Character',</span> <span class="pre">'exit':</span> <span class="pre">'typeclasses.exits.Exit',</span> <span class="pre">'object':</span> <span class="pre">'typeclasses.objects.Object',</span> <span class="pre">'room':</span> <span class="pre">'typeclasses.rooms.Room'}</span></em><a class="headerlink" href="#evennia.commands.default.building.ObjManipCommand.default_typeclasses" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.ObjManipCommand.parse">
<span class="sig-name descname"><span class="pre">parse</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#ObjManipCommand.parse"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.ObjManipCommand.parse" title="Link to this definition"></a></dt>
<dd><p>We need to expand the default parsing to get all
the cases, see the module doc.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.ObjManipCommand.get_object_typeclass">
<span class="sig-name descname"><span class="pre">get_object_typeclass</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">obj_type</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">'object'</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">typeclass</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">method</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">'cmd_create'</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">tuple</span><span class="p"><span class="pre">[</span></span><span class="pre">Typeclass</span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">None</span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">list</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">]</span></span></span></span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#ObjManipCommand.get_object_typeclass"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.ObjManipCommand.get_object_typeclass" title="Link to this definition"></a></dt>
<dd><p>This hook is called by build commands to determine which typeclass to use for a specific
purpose.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>obj_type</strong> (<em>str</em><em>, </em><em>optional</em>) The type of object that is being created. Defaults to
“object”. Evennia provides “room”, “exit”, and “character” by default, but this can be
extended.</p></li>
<li><p><strong>typeclass</strong> (<em>str</em><em>, </em><em>optional</em>) The typeclass that was requested by the player. Defaults to
None. Can also be an actual class.</p></li>
<li><p><strong>method</strong> (<em>str</em><em>, </em><em>optional</em>) The method that is calling this hook. Defaults to “cmd_create”.
Others are “cmd_dig”, “cmd_open”, “cmd_tunnel”, etc.</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p><p><em>tuple</em> </p>
<dl class="simple">
<dt>A tuple containing the typeclass to use and a list of errors. (which might be</dt><dd><p>empty.)</p>
</dd>
</dl>
</p>
</dd>
</dl>
<p class="rubric">Notes</p>
<p>Although intended to be used with typeclasses, as long as this hook returns a class with
a create method, which accepts the same API as DefaultObject.create(), build commands
and other places should take it. While not used by default, one could picture using this
for things like autodetecting which room to build next based on the current location.</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.ObjManipCommand.aliases">
<span class="sig-name descname"><span class="pre">aliases</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">[]</span></em><a class="headerlink" href="#evennia.commands.default.building.ObjManipCommand.aliases" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.ObjManipCommand.help_category">
<span class="sig-name descname"><span class="pre">help_category</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'general'</span></em><a class="headerlink" href="#evennia.commands.default.building.ObjManipCommand.help_category" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.ObjManipCommand.key">
<span class="sig-name descname"><span class="pre">key</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'command'</span></em><a class="headerlink" href="#evennia.commands.default.building.ObjManipCommand.key" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.ObjManipCommand.lock_storage">
<span class="sig-name descname"><span class="pre">lock_storage</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'cmd:all();'</span></em><a class="headerlink" href="#evennia.commands.default.building.ObjManipCommand.lock_storage" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.ObjManipCommand.search_index_entry">
<span class="sig-name descname"><span class="pre">search_index_entry</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">{'aliases':</span> <span class="pre">'',</span> <span class="pre">'category':</span> <span class="pre">'general',</span> <span class="pre">'key':</span> <span class="pre">'command',</span> <span class="pre">'no_prefix':</span> <span class="pre">'</span> <span class="pre">',</span> <span class="pre">'tags':</span> <span class="pre">'',</span> <span class="pre">'text':</span> <span class="pre">&quot;\nThis</span> <span class="pre">is</span> <span class="pre">a</span> <span class="pre">parent</span> <span class="pre">class</span> <span class="pre">for</span> <span class="pre">some</span> <span class="pre">of</span> <span class="pre">the</span> <span class="pre">defining</span> <span class="pre">objmanip</span> <span class="pre">commands\nsince</span> <span class="pre">they</span> <span class="pre">tend</span> <span class="pre">to</span> <span class="pre">have</span> <span class="pre">some</span> <span class="pre">more</span> <span class="pre">variables</span> <span class="pre">to</span> <span class="pre">define</span> <span class="pre">new</span> <span class="pre">objects.\n\nEach</span> <span class="pre">object</span> <span class="pre">definition</span> <span class="pre">can</span> <span class="pre">have</span> <span class="pre">several</span> <span class="pre">components.</span> <span class="pre">First</span> <span class="pre">is\nalways</span> <span class="pre">a</span> <span class="pre">name,</span> <span class="pre">followed</span> <span class="pre">by</span> <span class="pre">an</span> <span class="pre">optional</span> <span class="pre">alias</span> <span class="pre">list</span> <span class="pre">and</span> <span class="pre">finally</span> <span class="pre">an\nsome</span> <span class="pre">optional</span> <span class="pre">data,</span> <span class="pre">such</span> <span class="pre">as</span> <span class="pre">a</span> <span class="pre">typeclass</span> <span class="pre">or</span> <span class="pre">a</span> <span class="pre">location.</span> <span class="pre">A</span> <span class="pre">comma</span> <span class="pre">','\nseparates</span> <span class="pre">different</span> <span class="pre">objects.</span> <span class="pre">Like</span> <span class="pre">this:\n\n</span>&#160;&#160;&#160; <span class="pre">name1;alias;alias;alias:option,</span> <span class="pre">name2;alias;alias</span> <span class="pre">...\n\nSpaces</span> <span class="pre">between</span> <span class="pre">all</span> <span class="pre">components</span> <span class="pre">are</span> <span class="pre">stripped.\n\nA</span> <span class="pre">second</span> <span class="pre">situation</span> <span class="pre">is</span> <span class="pre">attribute</span> <span class="pre">manipulation.</span> <span class="pre">Such</span> <span class="pre">commands\nare</span> <span class="pre">simpler</span> <span class="pre">and</span> <span class="pre">offer</span> <span class="pre">combinations\n\n</span>&#160;&#160;&#160; <span class="pre">objname/attr/attr/attr,</span> <span class="pre">objname/attr,</span> <span class="pre">...\n\n&quot;}</span></em><a class="headerlink" href="#evennia.commands.default.building.ObjManipCommand.search_index_entry" title="Link to this definition"></a></dt>
<dd></dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdSetObjAlias">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">evennia.commands.default.building.</span></span><span class="sig-name descname"><span class="pre">CmdSetObjAlias</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdSetObjAlias"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdSetObjAlias" title="Link to this definition"></a></dt>
<dd><p>Bases: <a class="reference internal" href="evennia.commands.default.muxcommand.html#evennia.commands.default.muxcommand.MuxCommand" title="evennia.commands.default.muxcommand.MuxCommand"><code class="xref py py-class docutils literal notranslate"><span class="pre">MuxCommand</span></code></a></p>
<p>adding permanent aliases for object</p>
<dl class="simple">
<dt>Usage:</dt><dd><p>alias &lt;obj&gt; [= [alias[,alias,alias,…]]]
alias &lt;obj&gt; =
alias/category &lt;obj&gt; = [alias[,alias,…]:&lt;category&gt;
alias/delete &lt;obj&gt; = &lt;alias&gt;</p>
</dd>
<dt>Switches:</dt><dd><dl class="simple">
<dt>category - requires ending input with :category, to store the</dt><dd><p>given aliases with the given category.</p>
</dd>
<dt>delete - deletes all occurrences of the given alias, regardless</dt><dd><p>of category</p>
</dd>
</dl>
</dd>
</dl>
<p>Assigns aliases to an object so it can be referenced by more
than one name. Assign empty to remove all aliases from object. If
assigning a category, all aliases given will be using this category.</p>
<p>Observe that this is not the same thing as personal aliases
created with the nick command! Aliases set with alias are
changing the object in question, making those aliases usable
by everyone.</p>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdSetObjAlias.key">
<span class="sig-name descname"><span class="pre">key</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'&#64;alias'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdSetObjAlias.key" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdSetObjAlias.aliases">
<span class="sig-name descname"><span class="pre">aliases</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">['setobjalias']</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdSetObjAlias.aliases" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdSetObjAlias.switch_options">
<span class="sig-name descname"><span class="pre">switch_options</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">('category',</span> <span class="pre">'delete')</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdSetObjAlias.switch_options" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdSetObjAlias.locks">
<span class="sig-name descname"><span class="pre">locks</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'cmd:perm(setobjalias)</span> <span class="pre">or</span> <span class="pre">perm(Builder)'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdSetObjAlias.locks" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdSetObjAlias.help_category">
<span class="sig-name descname"><span class="pre">help_category</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'building'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdSetObjAlias.help_category" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdSetObjAlias.method_type">
<span class="sig-name descname"><span class="pre">method_type</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'cmd_create'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdSetObjAlias.method_type" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdSetObjAlias.func">
<span class="sig-name descname"><span class="pre">func</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdSetObjAlias.func"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdSetObjAlias.func" title="Link to this definition"></a></dt>
<dd><p>Set the aliases.</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdSetObjAlias.lock_storage">
<span class="sig-name descname"><span class="pre">lock_storage</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'cmd:perm(setobjalias)</span> <span class="pre">or</span> <span class="pre">perm(Builder)'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdSetObjAlias.lock_storage" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdSetObjAlias.search_index_entry">
<span class="sig-name descname"><span class="pre">search_index_entry</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">{'aliases':</span> <span class="pre">'setobjalias',</span> <span class="pre">'category':</span> <span class="pre">'building',</span> <span class="pre">'key':</span> <span class="pre">'&#64;alias',</span> <span class="pre">'no_prefix':</span> <span class="pre">'alias</span> <span class="pre">setobjalias',</span> <span class="pre">'tags':</span> <span class="pre">'',</span> <span class="pre">'text':</span> <span class="pre">&quot;\nadding</span> <span class="pre">permanent</span> <span class="pre">aliases</span> <span class="pre">for</span> <span class="pre">object\n\nUsage:\n</span>&#160; <span class="pre">alias</span> <span class="pre">&lt;obj&gt;</span> <span class="pre">[=</span> <span class="pre">[alias[,alias,alias,...]]]\n</span>&#160; <span class="pre">alias</span> <span class="pre">&lt;obj&gt;</span> <span class="pre">=\n</span>&#160; <span class="pre">alias/category</span> <span class="pre">&lt;obj&gt;</span> <span class="pre">=</span> <span class="pre">[alias[,alias,...]:&lt;category&gt;\n</span>&#160; <span class="pre">alias/delete</span> <span class="pre">&lt;obj&gt;</span> <span class="pre">=</span> <span class="pre">&lt;alias&gt;\n\nSwitches:\n</span>&#160; <span class="pre">category</span> <span class="pre">-</span> <span class="pre">requires</span> <span class="pre">ending</span> <span class="pre">input</span> <span class="pre">with</span> <span class="pre">:category,</span> <span class="pre">to</span> <span class="pre">store</span> <span class="pre">the\n</span>&#160;&#160;&#160; <span class="pre">given</span> <span class="pre">aliases</span> <span class="pre">with</span> <span class="pre">the</span> <span class="pre">given</span> <span class="pre">category.\n</span>&#160; <span class="pre">delete</span> <span class="pre">-</span> <span class="pre">deletes</span> <span class="pre">all</span> <span class="pre">occurrences</span> <span class="pre">of</span> <span class="pre">the</span> <span class="pre">given</span> <span class="pre">alias,</span> <span class="pre">regardless\n</span>&#160;&#160;&#160; <span class="pre">of</span> <span class="pre">category\n\nAssigns</span> <span class="pre">aliases</span> <span class="pre">to</span> <span class="pre">an</span> <span class="pre">object</span> <span class="pre">so</span> <span class="pre">it</span> <span class="pre">can</span> <span class="pre">be</span> <span class="pre">referenced</span> <span class="pre">by</span> <span class="pre">more\nthan</span> <span class="pre">one</span> <span class="pre">name.</span> <span class="pre">Assign</span> <span class="pre">empty</span> <span class="pre">to</span> <span class="pre">remove</span> <span class="pre">all</span> <span class="pre">aliases</span> <span class="pre">from</span> <span class="pre">object.</span> <span class="pre">If\nassigning</span> <span class="pre">a</span> <span class="pre">category,</span> <span class="pre">all</span> <span class="pre">aliases</span> <span class="pre">given</span> <span class="pre">will</span> <span class="pre">be</span> <span class="pre">using</span> <span class="pre">this</span> <span class="pre">category.\n\nObserve</span> <span class="pre">that</span> <span class="pre">this</span> <span class="pre">is</span> <span class="pre">not</span> <span class="pre">the</span> <span class="pre">same</span> <span class="pre">thing</span> <span class="pre">as</span> <span class="pre">personal</span> <span class="pre">aliases\ncreated</span> <span class="pre">with</span> <span class="pre">the</span> <span class="pre">'nick'</span> <span class="pre">command!</span> <span class="pre">Aliases</span> <span class="pre">set</span> <span class="pre">with</span> <span class="pre">alias</span> <span class="pre">are\nchanging</span> <span class="pre">the</span> <span class="pre">object</span> <span class="pre">in</span> <span class="pre">question,</span> <span class="pre">making</span> <span class="pre">those</span> <span class="pre">aliases</span> <span class="pre">usable\nby</span> <span class="pre">everyone.\n&quot;}</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdSetObjAlias.search_index_entry" title="Link to this definition"></a></dt>
<dd></dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdCopy">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">evennia.commands.default.building.</span></span><span class="sig-name descname"><span class="pre">CmdCopy</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdCopy"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdCopy" title="Link to this definition"></a></dt>
<dd><p>Bases: <a class="reference internal" href="#evennia.commands.default.building.ObjManipCommand" title="evennia.commands.default.building.ObjManipCommand"><code class="xref py py-class docutils literal notranslate"><span class="pre">ObjManipCommand</span></code></a></p>
<p>copy an object and its properties</p>
<dl class="simple">
<dt>Usage:</dt><dd><p>copy &lt;original obj&gt; [= &lt;new_name&gt;][;alias;alias..]
[:&lt;new_location&gt;] [,&lt;new_name2&gt; …]</p>
</dd>
</dl>
<p>Create one or more copies of an object. If you dont supply any targets,
one exact copy of the original object will be created with the name <a href="#id1"><span class="problematic" id="id2">*</span></a>_copy.</p>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdCopy.key">
<span class="sig-name descname"><span class="pre">key</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'&#64;copy'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdCopy.key" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdCopy.locks">
<span class="sig-name descname"><span class="pre">locks</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'cmd:perm(copy)</span> <span class="pre">or</span> <span class="pre">perm(Builder)'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdCopy.locks" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdCopy.help_category">
<span class="sig-name descname"><span class="pre">help_category</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'building'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdCopy.help_category" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdCopy.func">
<span class="sig-name descname"><span class="pre">func</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdCopy.func"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdCopy.func" title="Link to this definition"></a></dt>
<dd><p>Uses ObjManipCommand.parse()</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdCopy.aliases">
<span class="sig-name descname"><span class="pre">aliases</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">[]</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdCopy.aliases" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdCopy.lock_storage">
<span class="sig-name descname"><span class="pre">lock_storage</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'cmd:perm(copy)</span> <span class="pre">or</span> <span class="pre">perm(Builder)'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdCopy.lock_storage" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdCopy.search_index_entry">
<span class="sig-name descname"><span class="pre">search_index_entry</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">{'aliases':</span> <span class="pre">'',</span> <span class="pre">'category':</span> <span class="pre">'building',</span> <span class="pre">'key':</span> <span class="pre">'&#64;copy',</span> <span class="pre">'no_prefix':</span> <span class="pre">'copy</span> <span class="pre">',</span> <span class="pre">'tags':</span> <span class="pre">'',</span> <span class="pre">'text':</span> <span class="pre">&quot;\ncopy</span> <span class="pre">an</span> <span class="pre">object</span> <span class="pre">and</span> <span class="pre">its</span> <span class="pre">properties\n\nUsage:\n</span>&#160; <span class="pre">copy</span> <span class="pre">&lt;original</span> <span class="pre">obj&gt;</span> <span class="pre">[=</span> <span class="pre">&lt;new_name&gt;][;alias;alias..]\n</span>&#160; <span class="pre">[:&lt;new_location&gt;]</span> <span class="pre">[,&lt;new_name2&gt;</span> <span class="pre">...]\n\nCreate</span> <span class="pre">one</span> <span class="pre">or</span> <span class="pre">more</span> <span class="pre">copies</span> <span class="pre">of</span> <span class="pre">an</span> <span class="pre">object.</span> <span class="pre">If</span> <span class="pre">you</span> <span class="pre">don't</span> <span class="pre">supply</span> <span class="pre">any</span> <span class="pre">targets,\none</span> <span class="pre">exact</span> <span class="pre">copy</span> <span class="pre">of</span> <span class="pre">the</span> <span class="pre">original</span> <span class="pre">object</span> <span class="pre">will</span> <span class="pre">be</span> <span class="pre">created</span> <span class="pre">with</span> <span class="pre">the</span> <span class="pre">name</span> <span class="pre">*_copy.\n&quot;}</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdCopy.search_index_entry" title="Link to this definition"></a></dt>
<dd></dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdCpAttr">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">evennia.commands.default.building.</span></span><span class="sig-name descname"><span class="pre">CmdCpAttr</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdCpAttr"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdCpAttr" title="Link to this definition"></a></dt>
<dd><p>Bases: <a class="reference internal" href="#evennia.commands.default.building.ObjManipCommand" title="evennia.commands.default.building.ObjManipCommand"><code class="xref py py-class docutils literal notranslate"><span class="pre">ObjManipCommand</span></code></a></p>
<p>copy attributes between objects</p>
<dl class="simple">
<dt>Usage:</dt><dd><p>cpattr[/switch] &lt;obj&gt;/&lt;attr&gt; = &lt;obj1&gt;/&lt;attr1&gt; [,&lt;obj2&gt;/&lt;attr2&gt;,&lt;obj3&gt;/&lt;attr3&gt;,…]
cpattr[/switch] &lt;obj&gt;/&lt;attr&gt; = &lt;obj1&gt; [,&lt;obj2&gt;,&lt;obj3&gt;,…]
cpattr[/switch] &lt;attr&gt;[:category] = &lt;obj1&gt;/&lt;attr1&gt;[:category] [,&lt;obj2&gt;/&lt;attr2&gt;,&lt;obj3&gt;/&lt;attr3&gt;,…]
cpattr[/switch] &lt;attr&gt; = &lt;obj1&gt;[,&lt;obj2&gt;,&lt;obj3&gt;,…]</p>
</dd>
<dt>Switches:</dt><dd><p>move - delete the attribute from the source object after copying.</p>
</dd>
</dl>
<p class="rubric">Example</p>
<p>cpattr coolness = Anna/chillout, Anna/nicety, Tom/nicety
-&gt;
copies the coolness attribute (defined on yourself), to attributes
on Anna and Tom.</p>
<p>cpattr box/width:dimension = tube/width:dimension
-&gt;
copies the boxs width attribute in the dimension category, to be the
tubes width attribute in the dimension category</p>
<p>Copy the attribute one object to one or more attributes on another object.
If you dont supply a source object, yourself is used.</p>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdCpAttr.key">
<span class="sig-name descname"><span class="pre">key</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'&#64;cpattr'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdCpAttr.key" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdCpAttr.switch_options">
<span class="sig-name descname"><span class="pre">switch_options</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">('move',)</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdCpAttr.switch_options" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdCpAttr.locks">
<span class="sig-name descname"><span class="pre">locks</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'cmd:perm(cpattr)</span> <span class="pre">or</span> <span class="pre">perm(Builder)'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdCpAttr.locks" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdCpAttr.help_category">
<span class="sig-name descname"><span class="pre">help_category</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'building'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdCpAttr.help_category" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdCpAttr.check_from_attr">
<span class="sig-name descname"><span class="pre">check_from_attr</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">obj</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">attr</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">category</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">clear</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdCpAttr.check_from_attr"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdCpAttr.check_from_attr" title="Link to this definition"></a></dt>
<dd><p>Hook for overriding on subclassed commands. Checks to make sure a
caller can copy the attr from the object in question. If not, return a
false value and the command will abort. An error message should be
provided by this function.</p>
<p>If clear is True, user is attempting to move the attribute.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdCpAttr.check_to_attr">
<span class="sig-name descname"><span class="pre">check_to_attr</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">obj</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">attr</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">category</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdCpAttr.check_to_attr"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdCpAttr.check_to_attr" title="Link to this definition"></a></dt>
<dd><p>Hook for overriding on subclassed commands. Checks to make sure a
caller can write to the specified attribute on the specified object.
If not, return a false value and the attribute will be skipped. An
error message should be provided by this function.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdCpAttr.check_has_attr">
<span class="sig-name descname"><span class="pre">check_has_attr</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">obj</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">attr</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">category</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdCpAttr.check_has_attr"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdCpAttr.check_has_attr" title="Link to this definition"></a></dt>
<dd><p>Hook for overriding on subclassed commands. Do any preprocessing
required and verify an object has an attribute.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdCpAttr.get_attr">
<span class="sig-name descname"><span class="pre">get_attr</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">obj</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">attr</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">category</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdCpAttr.get_attr"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdCpAttr.get_attr" title="Link to this definition"></a></dt>
<dd><p>Hook for overriding on subclassed commands. Do any preprocessing
required and get the attribute from the object.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdCpAttr.func">
<span class="sig-name descname"><span class="pre">func</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdCpAttr.func"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdCpAttr.func" title="Link to this definition"></a></dt>
<dd><p>Do the copying.</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdCpAttr.aliases">
<span class="sig-name descname"><span class="pre">aliases</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">[]</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdCpAttr.aliases" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdCpAttr.lock_storage">
<span class="sig-name descname"><span class="pre">lock_storage</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'cmd:perm(cpattr)</span> <span class="pre">or</span> <span class="pre">perm(Builder)'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdCpAttr.lock_storage" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdCpAttr.search_index_entry">
<span class="sig-name descname"><span class="pre">search_index_entry</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">{'aliases':</span> <span class="pre">'',</span> <span class="pre">'category':</span> <span class="pre">'building',</span> <span class="pre">'key':</span> <span class="pre">'&#64;cpattr',</span> <span class="pre">'no_prefix':</span> <span class="pre">'cpattr</span> <span class="pre">',</span> <span class="pre">'tags':</span> <span class="pre">'',</span> <span class="pre">'text':</span> <span class="pre">&quot;\ncopy</span> <span class="pre">attributes</span> <span class="pre">between</span> <span class="pre">objects\n\nUsage:\n</span>&#160; <span class="pre">cpattr[/switch]</span> <span class="pre">&lt;obj&gt;/&lt;attr&gt;</span> <span class="pre">=</span> <span class="pre">&lt;obj1&gt;/&lt;attr1&gt;</span> <span class="pre">[,&lt;obj2&gt;/&lt;attr2&gt;,&lt;obj3&gt;/&lt;attr3&gt;,...]\n</span>&#160; <span class="pre">cpattr[/switch]</span> <span class="pre">&lt;obj&gt;/&lt;attr&gt;</span> <span class="pre">=</span> <span class="pre">&lt;obj1&gt;</span> <span class="pre">[,&lt;obj2&gt;,&lt;obj3&gt;,...]\n</span>&#160; <span class="pre">cpattr[/switch]</span> <span class="pre">&lt;attr&gt;[:category]</span> <span class="pre">=</span> <span class="pre">&lt;obj1&gt;/&lt;attr1&gt;[:category]</span> <span class="pre">[,&lt;obj2&gt;/&lt;attr2&gt;,&lt;obj3&gt;/&lt;attr3&gt;,...]\n</span>&#160; <span class="pre">cpattr[/switch]</span> <span class="pre">&lt;attr&gt;</span> <span class="pre">=</span> <span class="pre">&lt;obj1&gt;[,&lt;obj2&gt;,&lt;obj3&gt;,...]\n\nSwitches:\n</span>&#160; <span class="pre">move</span> <span class="pre">-</span> <span class="pre">delete</span> <span class="pre">the</span> <span class="pre">attribute</span> <span class="pre">from</span> <span class="pre">the</span> <span class="pre">source</span> <span class="pre">object</span> <span class="pre">after</span> <span class="pre">copying.\n\nExample:\n</span>&#160; <span class="pre">cpattr</span> <span class="pre">coolness</span> <span class="pre">=</span> <span class="pre">Anna/chillout,</span> <span class="pre">Anna/nicety,</span> <span class="pre">Tom/nicety\n</span>&#160; <span class="pre">-&gt;\n</span>&#160; <span class="pre">copies</span> <span class="pre">the</span> <span class="pre">coolness</span> <span class="pre">attribute</span> <span class="pre">(defined</span> <span class="pre">on</span> <span class="pre">yourself),</span> <span class="pre">to</span> <span class="pre">attributes\n</span>&#160; <span class="pre">on</span> <span class="pre">Anna</span> <span class="pre">and</span> <span class="pre">Tom.\n\n</span>&#160; <span class="pre">cpattr</span> <span class="pre">box/width:dimension</span> <span class="pre">=</span> <span class="pre">tube/width:dimension\n</span>&#160; <span class="pre">-&gt;\n</span>&#160; <span class="pre">copies</span> <span class="pre">the</span> <span class="pre">box's</span> <span class="pre">width</span> <span class="pre">attribute</span> <span class="pre">in</span> <span class="pre">the</span> <span class="pre">dimension</span> <span class="pre">category,</span> <span class="pre">to</span> <span class="pre">be</span> <span class="pre">the\n</span>&#160; <span class="pre">tube's</span> <span class="pre">width</span> <span class="pre">attribute</span> <span class="pre">in</span> <span class="pre">the</span> <span class="pre">dimension</span> <span class="pre">category\n\nCopy</span> <span class="pre">the</span> <span class="pre">attribute</span> <span class="pre">one</span> <span class="pre">object</span> <span class="pre">to</span> <span class="pre">one</span> <span class="pre">or</span> <span class="pre">more</span> <span class="pre">attributes</span> <span class="pre">on</span> <span class="pre">another</span> <span class="pre">object.\nIf</span> <span class="pre">you</span> <span class="pre">don't</span> <span class="pre">supply</span> <span class="pre">a</span> <span class="pre">source</span> <span class="pre">object,</span> <span class="pre">yourself</span> <span class="pre">is</span> <span class="pre">used.\n&quot;}</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdCpAttr.search_index_entry" title="Link to this definition"></a></dt>
<dd></dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdMvAttr">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">evennia.commands.default.building.</span></span><span class="sig-name descname"><span class="pre">CmdMvAttr</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdMvAttr"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdMvAttr" title="Link to this definition"></a></dt>
<dd><p>Bases: <a class="reference internal" href="#evennia.commands.default.building.ObjManipCommand" title="evennia.commands.default.building.ObjManipCommand"><code class="xref py py-class docutils literal notranslate"><span class="pre">ObjManipCommand</span></code></a></p>
<p>move attributes between objects</p>
<dl class="simple">
<dt>Usage:</dt><dd><p>mvattr[/switch] &lt;obj&gt;/&lt;attr&gt; = &lt;obj1&gt;/&lt;attr1&gt; [,&lt;obj2&gt;/&lt;attr2&gt;,&lt;obj3&gt;/&lt;attr3&gt;,…]
mvattr[/switch] &lt;obj&gt;/&lt;attr&gt; = &lt;obj1&gt; [,&lt;obj2&gt;,&lt;obj3&gt;,…]
mvattr[/switch] &lt;attr&gt; = &lt;obj1&gt;/&lt;attr1&gt; [,&lt;obj2&gt;/&lt;attr2&gt;,&lt;obj3&gt;/&lt;attr3&gt;,…]
mvattr[/switch] &lt;attr&gt; = &lt;obj1&gt;[,&lt;obj2&gt;,&lt;obj3&gt;,…]</p>
</dd>
<dt>Switches:</dt><dd><p>copy - Dont delete the original after moving.</p>
</dd>
</dl>
<p>Move an attribute from one object to one or more attributes on another
object. If you dont supply a source object, yourself is used.</p>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdMvAttr.key">
<span class="sig-name descname"><span class="pre">key</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'&#64;mvattr'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdMvAttr.key" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdMvAttr.switch_options">
<span class="sig-name descname"><span class="pre">switch_options</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">('copy',)</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdMvAttr.switch_options" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdMvAttr.locks">
<span class="sig-name descname"><span class="pre">locks</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'cmd:perm(mvattr)</span> <span class="pre">or</span> <span class="pre">perm(Builder)'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdMvAttr.locks" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdMvAttr.help_category">
<span class="sig-name descname"><span class="pre">help_category</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'building'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdMvAttr.help_category" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdMvAttr.func">
<span class="sig-name descname"><span class="pre">func</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdMvAttr.func"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdMvAttr.func" title="Link to this definition"></a></dt>
<dd><p>Do the moving</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdMvAttr.aliases">
<span class="sig-name descname"><span class="pre">aliases</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">[]</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdMvAttr.aliases" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdMvAttr.lock_storage">
<span class="sig-name descname"><span class="pre">lock_storage</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'cmd:perm(mvattr)</span> <span class="pre">or</span> <span class="pre">perm(Builder)'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdMvAttr.lock_storage" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdMvAttr.search_index_entry">
<span class="sig-name descname"><span class="pre">search_index_entry</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">{'aliases':</span> <span class="pre">'',</span> <span class="pre">'category':</span> <span class="pre">'building',</span> <span class="pre">'key':</span> <span class="pre">'&#64;mvattr',</span> <span class="pre">'no_prefix':</span> <span class="pre">'mvattr</span> <span class="pre">',</span> <span class="pre">'tags':</span> <span class="pre">'',</span> <span class="pre">'text':</span> <span class="pre">&quot;\nmove</span> <span class="pre">attributes</span> <span class="pre">between</span> <span class="pre">objects\n\nUsage:\n</span>&#160; <span class="pre">mvattr[/switch]</span> <span class="pre">&lt;obj&gt;/&lt;attr&gt;</span> <span class="pre">=</span> <span class="pre">&lt;obj1&gt;/&lt;attr1&gt;</span> <span class="pre">[,&lt;obj2&gt;/&lt;attr2&gt;,&lt;obj3&gt;/&lt;attr3&gt;,...]\n</span>&#160; <span class="pre">mvattr[/switch]</span> <span class="pre">&lt;obj&gt;/&lt;attr&gt;</span> <span class="pre">=</span> <span class="pre">&lt;obj1&gt;</span> <span class="pre">[,&lt;obj2&gt;,&lt;obj3&gt;,...]\n</span>&#160; <span class="pre">mvattr[/switch]</span> <span class="pre">&lt;attr&gt;</span> <span class="pre">=</span> <span class="pre">&lt;obj1&gt;/&lt;attr1&gt;</span> <span class="pre">[,&lt;obj2&gt;/&lt;attr2&gt;,&lt;obj3&gt;/&lt;attr3&gt;,...]\n</span>&#160; <span class="pre">mvattr[/switch]</span> <span class="pre">&lt;attr&gt;</span> <span class="pre">=</span> <span class="pre">&lt;obj1&gt;[,&lt;obj2&gt;,&lt;obj3&gt;,...]\n\nSwitches:\n</span>&#160; <span class="pre">copy</span> <span class="pre">-</span> <span class="pre">Don't</span> <span class="pre">delete</span> <span class="pre">the</span> <span class="pre">original</span> <span class="pre">after</span> <span class="pre">moving.\n\nMove</span> <span class="pre">an</span> <span class="pre">attribute</span> <span class="pre">from</span> <span class="pre">one</span> <span class="pre">object</span> <span class="pre">to</span> <span class="pre">one</span> <span class="pre">or</span> <span class="pre">more</span> <span class="pre">attributes</span> <span class="pre">on</span> <span class="pre">another\nobject.</span> <span class="pre">If</span> <span class="pre">you</span> <span class="pre">don't</span> <span class="pre">supply</span> <span class="pre">a</span> <span class="pre">source</span> <span class="pre">object,</span> <span class="pre">yourself</span> <span class="pre">is</span> <span class="pre">used.\n&quot;}</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdMvAttr.search_index_entry" title="Link to this definition"></a></dt>
<dd></dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdCreate">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">evennia.commands.default.building.</span></span><span class="sig-name descname"><span class="pre">CmdCreate</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdCreate"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdCreate" title="Link to this definition"></a></dt>
<dd><p>Bases: <a class="reference internal" href="#evennia.commands.default.building.ObjManipCommand" title="evennia.commands.default.building.ObjManipCommand"><code class="xref py py-class docutils literal notranslate"><span class="pre">ObjManipCommand</span></code></a></p>
<p>create new objects</p>
<dl class="simple">
<dt>Usage:</dt><dd><p>create[/drop] &lt;objname&gt;[;alias;alias…][:typeclass], &lt;objname&gt;</p>
</dd>
<dt>switch:</dt><dd><dl class="simple">
<dt>drop - automatically drop the new object into your current</dt><dd><p>location (this is not echoed). This also sets the new
objects home to the current location rather than to you.</p>
</dd>
</dl>
</dd>
</dl>
<p>Creates one or more new objects. If typeclass is given, the object
is created as a child of this typeclass. The typeclass script is
assumed to be located under types/ and any further
directory structure is given in Python notation. So if you have a
correct typeclass RedButton defined in
types/examples/red_button.py, you could create a new
object of this type like this:</p>
<blockquote>
<div><p>create/drop button;red : examples.red_button.RedButton</p>
</div></blockquote>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdCreate.key">
<span class="sig-name descname"><span class="pre">key</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'&#64;create'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdCreate.key" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdCreate.switch_options">
<span class="sig-name descname"><span class="pre">switch_options</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">('drop',)</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdCreate.switch_options" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdCreate.locks">
<span class="sig-name descname"><span class="pre">locks</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'cmd:perm(create)</span> <span class="pre">or</span> <span class="pre">perm(Builder)'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdCreate.locks" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdCreate.help_category">
<span class="sig-name descname"><span class="pre">help_category</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'building'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdCreate.help_category" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdCreate.func">
<span class="sig-name descname"><span class="pre">func</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdCreate.func"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdCreate.func" title="Link to this definition"></a></dt>
<dd><p>Creates the object.</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdCreate.aliases">
<span class="sig-name descname"><span class="pre">aliases</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">[]</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdCreate.aliases" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdCreate.lock_storage">
<span class="sig-name descname"><span class="pre">lock_storage</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'cmd:perm(create)</span> <span class="pre">or</span> <span class="pre">perm(Builder)'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdCreate.lock_storage" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdCreate.search_index_entry">
<span class="sig-name descname"><span class="pre">search_index_entry</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">{'aliases':</span> <span class="pre">'',</span> <span class="pre">'category':</span> <span class="pre">'building',</span> <span class="pre">'key':</span> <span class="pre">'&#64;create',</span> <span class="pre">'no_prefix':</span> <span class="pre">'create</span> <span class="pre">',</span> <span class="pre">'tags':</span> <span class="pre">'',</span> <span class="pre">'text':</span> <span class="pre">&quot;\ncreate</span> <span class="pre">new</span> <span class="pre">objects\n\nUsage:\n</span>&#160; <span class="pre">create[/drop]</span> <span class="pre">&lt;objname&gt;[;alias;alias...][:typeclass],</span> <span class="pre">&lt;objname&gt;...\n\nswitch:\n</span>&#160;&#160; <span class="pre">drop</span> <span class="pre">-</span> <span class="pre">automatically</span> <span class="pre">drop</span> <span class="pre">the</span> <span class="pre">new</span> <span class="pre">object</span> <span class="pre">into</span> <span class="pre">your</span> <span class="pre">current\n</span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; <span class="pre">location</span> <span class="pre">(this</span> <span class="pre">is</span> <span class="pre">not</span> <span class="pre">echoed).</span> <span class="pre">This</span> <span class="pre">also</span> <span class="pre">sets</span> <span class="pre">the</span> <span class="pre">new\n</span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; <span class="pre">object's</span> <span class="pre">home</span> <span class="pre">to</span> <span class="pre">the</span> <span class="pre">current</span> <span class="pre">location</span> <span class="pre">rather</span> <span class="pre">than</span> <span class="pre">to</span> <span class="pre">you.\n\nCreates</span> <span class="pre">one</span> <span class="pre">or</span> <span class="pre">more</span> <span class="pre">new</span> <span class="pre">objects.</span> <span class="pre">If</span> <span class="pre">typeclass</span> <span class="pre">is</span> <span class="pre">given,</span> <span class="pre">the</span> <span class="pre">object\nis</span> <span class="pre">created</span> <span class="pre">as</span> <span class="pre">a</span> <span class="pre">child</span> <span class="pre">of</span> <span class="pre">this</span> <span class="pre">typeclass.</span> <span class="pre">The</span> <span class="pre">typeclass</span> <span class="pre">script</span> <span class="pre">is\nassumed</span> <span class="pre">to</span> <span class="pre">be</span> <span class="pre">located</span> <span class="pre">under</span> <span class="pre">types/</span> <span class="pre">and</span> <span class="pre">any</span> <span class="pre">further\ndirectory</span> <span class="pre">structure</span> <span class="pre">is</span> <span class="pre">given</span> <span class="pre">in</span> <span class="pre">Python</span> <span class="pre">notation.</span> <span class="pre">So</span> <span class="pre">if</span> <span class="pre">you</span> <span class="pre">have</span> <span class="pre">a\ncorrect</span> <span class="pre">typeclass</span> <span class="pre">'RedButton'</span> <span class="pre">defined</span> <span class="pre">in\ntypes/examples/red_button.py,</span> <span class="pre">you</span> <span class="pre">could</span> <span class="pre">create</span> <span class="pre">a</span> <span class="pre">new\nobject</span> <span class="pre">of</span> <span class="pre">this</span> <span class="pre">type</span> <span class="pre">like</span> <span class="pre">this:\n\n</span>&#160;&#160; <span class="pre">create/drop</span> <span class="pre">button;red</span> <span class="pre">:</span> <span class="pre">examples.red_button.RedButton\n\n&quot;}</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdCreate.search_index_entry" title="Link to this definition"></a></dt>
<dd></dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdDesc">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">evennia.commands.default.building.</span></span><span class="sig-name descname"><span class="pre">CmdDesc</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdDesc"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdDesc" title="Link to this definition"></a></dt>
<dd><p>Bases: <a class="reference internal" href="evennia.commands.default.muxcommand.html#evennia.commands.default.muxcommand.MuxCommand" title="evennia.commands.default.muxcommand.MuxCommand"><code class="xref py py-class docutils literal notranslate"><span class="pre">MuxCommand</span></code></a></p>
<p>describe an object or the current room.</p>
<dl class="simple">
<dt>Usage:</dt><dd><p>desc [&lt;obj&gt; =] &lt;description&gt;</p>
</dd>
<dt>Switches:</dt><dd><p>edit - Open up a line editor for more advanced editing.</p>
</dd>
</dl>
<p>Sets the “desc” attribute on an object. If an object is not given,
describe the current room.</p>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdDesc.key">
<span class="sig-name descname"><span class="pre">key</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'&#64;desc'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdDesc.key" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdDesc.switch_options">
<span class="sig-name descname"><span class="pre">switch_options</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">('edit',)</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdDesc.switch_options" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdDesc.locks">
<span class="sig-name descname"><span class="pre">locks</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'cmd:perm(desc)</span> <span class="pre">or</span> <span class="pre">perm(Builder)'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdDesc.locks" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdDesc.help_category">
<span class="sig-name descname"><span class="pre">help_category</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'building'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdDesc.help_category" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdDesc.edit_handler">
<span class="sig-name descname"><span class="pre">edit_handler</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdDesc.edit_handler"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdDesc.edit_handler" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdDesc.func">
<span class="sig-name descname"><span class="pre">func</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdDesc.func"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdDesc.func" title="Link to this definition"></a></dt>
<dd><p>Define command</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdDesc.aliases">
<span class="sig-name descname"><span class="pre">aliases</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">[]</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdDesc.aliases" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdDesc.lock_storage">
<span class="sig-name descname"><span class="pre">lock_storage</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'cmd:perm(desc)</span> <span class="pre">or</span> <span class="pre">perm(Builder)'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdDesc.lock_storage" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdDesc.search_index_entry">
<span class="sig-name descname"><span class="pre">search_index_entry</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">{'aliases':</span> <span class="pre">'',</span> <span class="pre">'category':</span> <span class="pre">'building',</span> <span class="pre">'key':</span> <span class="pre">'&#64;desc',</span> <span class="pre">'no_prefix':</span> <span class="pre">'desc</span> <span class="pre">',</span> <span class="pre">'tags':</span> <span class="pre">'',</span> <span class="pre">'text':</span> <span class="pre">'\ndescribe</span> <span class="pre">an</span> <span class="pre">object</span> <span class="pre">or</span> <span class="pre">the</span> <span class="pre">current</span> <span class="pre">room.\n\nUsage:\n</span>&#160; <span class="pre">desc</span> <span class="pre">[&lt;obj&gt;</span> <span class="pre">=]</span> <span class="pre">&lt;description&gt;\n\nSwitches:\n</span>&#160; <span class="pre">edit</span> <span class="pre">-</span> <span class="pre">Open</span> <span class="pre">up</span> <span class="pre">a</span> <span class="pre">line</span> <span class="pre">editor</span> <span class="pre">for</span> <span class="pre">more</span> <span class="pre">advanced</span> <span class="pre">editing.\n\nSets</span> <span class="pre">the</span> <span class="pre">&quot;desc&quot;</span> <span class="pre">attribute</span> <span class="pre">on</span> <span class="pre">an</span> <span class="pre">object.</span> <span class="pre">If</span> <span class="pre">an</span> <span class="pre">object</span> <span class="pre">is</span> <span class="pre">not</span> <span class="pre">given,\ndescribe</span> <span class="pre">the</span> <span class="pre">current</span> <span class="pre">room.\n'}</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdDesc.search_index_entry" title="Link to this definition"></a></dt>
<dd></dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdDestroy">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">evennia.commands.default.building.</span></span><span class="sig-name descname"><span class="pre">CmdDestroy</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdDestroy"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdDestroy" title="Link to this definition"></a></dt>
<dd><p>Bases: <a class="reference internal" href="evennia.commands.default.muxcommand.html#evennia.commands.default.muxcommand.MuxCommand" title="evennia.commands.default.muxcommand.MuxCommand"><code class="xref py py-class docutils literal notranslate"><span class="pre">MuxCommand</span></code></a></p>
<p>permanently delete objects</p>
<dl>
<dt>Usage:</dt><dd><p>destroy[/switches] [obj, obj2, obj3, [dbref-dbref], …]</p>
</dd>
<dt>Switches:</dt><dd><dl class="simple">
<dt>override - The destroy command will usually avoid accidentally</dt><dd><p>destroying account objects. This switch overrides this safety.</p>
</dd>
</dl>
<p>force - destroy without confirmation.</p>
</dd>
</dl>
<p class="rubric">Examples</p>
<p>destroy house, roof, door, 44-78
destroy 5-10, flower, 45
destroy/force north</p>
<p>Destroys one or many objects. If dbrefs are used, a range to delete can be
given, e.g. 4-10. Also the end points will be deleted. This command
displays a confirmation before destroying, to make sure of your choice.
You can specify the /force switch to bypass this confirmation.</p>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdDestroy.key">
<span class="sig-name descname"><span class="pre">key</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'&#64;destroy'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdDestroy.key" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdDestroy.aliases">
<span class="sig-name descname"><span class="pre">aliases</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">['&#64;del',</span> <span class="pre">'&#64;delete']</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdDestroy.aliases" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdDestroy.switch_options">
<span class="sig-name descname"><span class="pre">switch_options</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">('override',</span> <span class="pre">'force')</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdDestroy.switch_options" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdDestroy.locks">
<span class="sig-name descname"><span class="pre">locks</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'cmd:perm(destroy)</span> <span class="pre">or</span> <span class="pre">perm(Builder)'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdDestroy.locks" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdDestroy.help_category">
<span class="sig-name descname"><span class="pre">help_category</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'building'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdDestroy.help_category" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdDestroy.confirm">
<span class="sig-name descname"><span class="pre">confirm</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">True</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdDestroy.confirm" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdDestroy.default_confirm">
<span class="sig-name descname"><span class="pre">default_confirm</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'yes'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdDestroy.default_confirm" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdDestroy.func">
<span class="sig-name descname"><span class="pre">func</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdDestroy.func"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdDestroy.func" title="Link to this definition"></a></dt>
<dd><p>Implements the command.</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdDestroy.lock_storage">
<span class="sig-name descname"><span class="pre">lock_storage</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'cmd:perm(destroy)</span> <span class="pre">or</span> <span class="pre">perm(Builder)'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdDestroy.lock_storage" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdDestroy.search_index_entry">
<span class="sig-name descname"><span class="pre">search_index_entry</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">{'aliases':</span> <span class="pre">'&#64;del</span> <span class="pre">&#64;delete',</span> <span class="pre">'category':</span> <span class="pre">'building',</span> <span class="pre">'key':</span> <span class="pre">'&#64;destroy',</span> <span class="pre">'no_prefix':</span> <span class="pre">'destroy</span> <span class="pre">del</span> <span class="pre">delete',</span> <span class="pre">'tags':</span> <span class="pre">'',</span> <span class="pre">'text':</span> <span class="pre">'\npermanently</span> <span class="pre">delete</span> <span class="pre">objects\n\nUsage:\n</span>&#160;&#160; <span class="pre">destroy[/switches]</span> <span class="pre">[obj,</span> <span class="pre">obj2,</span> <span class="pre">obj3,</span> <span class="pre">[dbref-dbref],</span> <span class="pre">...]\n\nSwitches:\n</span>&#160;&#160; <span class="pre">override</span> <span class="pre">-</span> <span class="pre">The</span> <span class="pre">destroy</span> <span class="pre">command</span> <span class="pre">will</span> <span class="pre">usually</span> <span class="pre">avoid</span> <span class="pre">accidentally\n</span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; <span class="pre">destroying</span> <span class="pre">account</span> <span class="pre">objects.</span> <span class="pre">This</span> <span class="pre">switch</span> <span class="pre">overrides</span> <span class="pre">this</span> <span class="pre">safety.\n</span>&#160;&#160; <span class="pre">force</span> <span class="pre">-</span> <span class="pre">destroy</span> <span class="pre">without</span> <span class="pre">confirmation.\nExamples:\n</span>&#160;&#160; <span class="pre">destroy</span> <span class="pre">house,</span> <span class="pre">roof,</span> <span class="pre">door,</span> <span class="pre">44-78\n</span>&#160;&#160; <span class="pre">destroy</span> <span class="pre">5-10,</span> <span class="pre">flower,</span> <span class="pre">45\n</span>&#160;&#160; <span class="pre">destroy/force</span> <span class="pre">north\n\nDestroys</span> <span class="pre">one</span> <span class="pre">or</span> <span class="pre">many</span> <span class="pre">objects.</span> <span class="pre">If</span> <span class="pre">dbrefs</span> <span class="pre">are</span> <span class="pre">used,</span> <span class="pre">a</span> <span class="pre">range</span> <span class="pre">to</span> <span class="pre">delete</span> <span class="pre">can</span> <span class="pre">be\ngiven,</span> <span class="pre">e.g.</span> <span class="pre">4-10.</span> <span class="pre">Also</span> <span class="pre">the</span> <span class="pre">end</span> <span class="pre">points</span> <span class="pre">will</span> <span class="pre">be</span> <span class="pre">deleted.</span> <span class="pre">This</span> <span class="pre">command\ndisplays</span> <span class="pre">a</span> <span class="pre">confirmation</span> <span class="pre">before</span> <span class="pre">destroying,</span> <span class="pre">to</span> <span class="pre">make</span> <span class="pre">sure</span> <span class="pre">of</span> <span class="pre">your</span> <span class="pre">choice.\nYou</span> <span class="pre">can</span> <span class="pre">specify</span> <span class="pre">the</span> <span class="pre">/force</span> <span class="pre">switch</span> <span class="pre">to</span> <span class="pre">bypass</span> <span class="pre">this</span> <span class="pre">confirmation.\n'}</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdDestroy.search_index_entry" title="Link to this definition"></a></dt>
<dd></dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdDig">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">evennia.commands.default.building.</span></span><span class="sig-name descname"><span class="pre">CmdDig</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdDig"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdDig" title="Link to this definition"></a></dt>
<dd><p>Bases: <a class="reference internal" href="#evennia.commands.default.building.ObjManipCommand" title="evennia.commands.default.building.ObjManipCommand"><code class="xref py py-class docutils literal notranslate"><span class="pre">ObjManipCommand</span></code></a></p>
<p>build new rooms and connect them to the current location</p>
<dl class="simple">
<dt>Usage:</dt><dd><dl class="simple">
<dt>dig[/switches] &lt;roomname&gt;[;alias;alias…][:typeclass]</dt><dd><dl class="simple">
<dt>[= &lt;exit_to_there&gt;[;alias][:typeclass]]</dt><dd><p>[, &lt;exit_to_here&gt;[;alias][:typeclass]]</p>
</dd>
</dl>
</dd>
</dl>
</dd>
<dt>Switches:</dt><dd><p>tel or teleport - move yourself to the new room</p>
</dd>
</dl>
<p class="rubric">Examples</p>
<p>dig kitchen = north;n, south;s
dig house:myrooms.MyHouseTypeclass
dig sheer cliff;cliff;sheer = climb up, climb down</p>
<p>This command is a convenient way to build rooms quickly; it creates the
new room and you can optionally set up exits back and forth between your
current room and the new one. You can add as many aliases as you
like to the name of the room and the exits in question; an example
would be north;no;n.</p>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdDig.key">
<span class="sig-name descname"><span class="pre">key</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'&#64;dig'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdDig.key" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdDig.switch_options">
<span class="sig-name descname"><span class="pre">switch_options</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">('teleport',)</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdDig.switch_options" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdDig.locks">
<span class="sig-name descname"><span class="pre">locks</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'cmd:perm(dig)</span> <span class="pre">or</span> <span class="pre">perm(Builder)'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdDig.locks" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdDig.help_category">
<span class="sig-name descname"><span class="pre">help_category</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'building'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdDig.help_category" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdDig.method_type">
<span class="sig-name descname"><span class="pre">method_type</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'cmd_dig'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdDig.method_type" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdDig.new_room_lockstring">
<span class="sig-name descname"><span class="pre">new_room_lockstring</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'control:id({id})</span> <span class="pre">or</span> <span class="pre">perm(Admin);</span> <span class="pre">delete:id({id})</span> <span class="pre">or</span> <span class="pre">perm(Admin);</span> <span class="pre">edit:id({id})</span> <span class="pre">or</span> <span class="pre">perm(Admin)'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdDig.new_room_lockstring" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdDig.func">
<span class="sig-name descname"><span class="pre">func</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdDig.func"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdDig.func" title="Link to this definition"></a></dt>
<dd><p>Do the digging. Inherits variables from ObjManipCommand.parse()</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdDig.aliases">
<span class="sig-name descname"><span class="pre">aliases</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">[]</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdDig.aliases" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdDig.lock_storage">
<span class="sig-name descname"><span class="pre">lock_storage</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'cmd:perm(dig)</span> <span class="pre">or</span> <span class="pre">perm(Builder)'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdDig.lock_storage" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdDig.search_index_entry">
<span class="sig-name descname"><span class="pre">search_index_entry</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">{'aliases':</span> <span class="pre">'',</span> <span class="pre">'category':</span> <span class="pre">'building',</span> <span class="pre">'key':</span> <span class="pre">'&#64;dig',</span> <span class="pre">'no_prefix':</span> <span class="pre">'dig</span> <span class="pre">',</span> <span class="pre">'tags':</span> <span class="pre">'',</span> <span class="pre">'text':</span> <span class="pre">&quot;\nbuild</span> <span class="pre">new</span> <span class="pre">rooms</span> <span class="pre">and</span> <span class="pre">connect</span> <span class="pre">them</span> <span class="pre">to</span> <span class="pre">the</span> <span class="pre">current</span> <span class="pre">location\n\nUsage:\n</span>&#160; <span class="pre">dig[/switches]</span> <span class="pre">&lt;roomname&gt;[;alias;alias...][:typeclass]\n</span>&#160;&#160;&#160;&#160;&#160;&#160;&#160; <span class="pre">[=</span> <span class="pre">&lt;exit_to_there&gt;[;alias][:typeclass]]\n</span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; <span class="pre">[,</span> <span class="pre">&lt;exit_to_here&gt;[;alias][:typeclass]]\n\nSwitches:\n</span>&#160;&#160; <span class="pre">tel</span> <span class="pre">or</span> <span class="pre">teleport</span> <span class="pre">-</span> <span class="pre">move</span> <span class="pre">yourself</span> <span class="pre">to</span> <span class="pre">the</span> <span class="pre">new</span> <span class="pre">room\n\nExamples:\n</span>&#160;&#160; <span class="pre">dig</span> <span class="pre">kitchen</span> <span class="pre">=</span> <span class="pre">north;n,</span> <span class="pre">south;s\n</span>&#160;&#160; <span class="pre">dig</span> <span class="pre">house:myrooms.MyHouseTypeclass\n</span>&#160;&#160; <span class="pre">dig</span> <span class="pre">sheer</span> <span class="pre">cliff;cliff;sheer</span> <span class="pre">=</span> <span class="pre">climb</span> <span class="pre">up,</span> <span class="pre">climb</span> <span class="pre">down\n\nThis</span> <span class="pre">command</span> <span class="pre">is</span> <span class="pre">a</span> <span class="pre">convenient</span> <span class="pre">way</span> <span class="pre">to</span> <span class="pre">build</span> <span class="pre">rooms</span> <span class="pre">quickly;</span> <span class="pre">it</span> <span class="pre">creates</span> <span class="pre">the\nnew</span> <span class="pre">room</span> <span class="pre">and</span> <span class="pre">you</span> <span class="pre">can</span> <span class="pre">optionally</span> <span class="pre">set</span> <span class="pre">up</span> <span class="pre">exits</span> <span class="pre">back</span> <span class="pre">and</span> <span class="pre">forth</span> <span class="pre">between</span> <span class="pre">your\ncurrent</span> <span class="pre">room</span> <span class="pre">and</span> <span class="pre">the</span> <span class="pre">new</span> <span class="pre">one.</span> <span class="pre">You</span> <span class="pre">can</span> <span class="pre">add</span> <span class="pre">as</span> <span class="pre">many</span> <span class="pre">aliases</span> <span class="pre">as</span> <span class="pre">you\nlike</span> <span class="pre">to</span> <span class="pre">the</span> <span class="pre">name</span> <span class="pre">of</span> <span class="pre">the</span> <span class="pre">room</span> <span class="pre">and</span> <span class="pre">the</span> <span class="pre">exits</span> <span class="pre">in</span> <span class="pre">question;</span> <span class="pre">an</span> <span class="pre">example\nwould</span> <span class="pre">be</span> <span class="pre">'north;no;n'.\n&quot;}</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdDig.search_index_entry" title="Link to this definition"></a></dt>
<dd></dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdTunnel">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">evennia.commands.default.building.</span></span><span class="sig-name descname"><span class="pre">CmdTunnel</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdTunnel"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdTunnel" title="Link to this definition"></a></dt>
<dd><p>Bases: <a class="reference internal" href="evennia.commands.default.muxcommand.html#evennia.commands.default.muxcommand.MuxCommand" title="evennia.commands.default.muxcommand.MuxCommand"><code class="xref py py-class docutils literal notranslate"><span class="pre">MuxCommand</span></code></a></p>
<p>create new rooms in cardinal directions only</p>
<dl class="simple">
<dt>Usage:</dt><dd><p>tunnel[/switch] &lt;direction&gt;[:typeclass] [= &lt;roomname&gt;[;alias;alias;…][:typeclass]]</p>
</dd>
<dt>Switches:</dt><dd><p>oneway - do not create an exit back to the current location
tel - teleport to the newly created room</p>
</dd>
</dl>
<p class="rubric">Example</p>
<p>tunnel n
tunnel n = house;mikes place;green building</p>
<dl class="simple">
<dt>This is a simple way to build using pre-defined directions:</dt><dd><p><a href="#id3"><span class="problematic" id="id4">|</span></a>wn,ne,e,se,s,sw,w,nw|n (north, northeast etc)
<a href="#id5"><span class="problematic" id="id6">|</span></a>wu,d|n (up and down)
<a href="#id7"><span class="problematic" id="id8">|</span></a>wi,o|n (in and out)</p>
</dd>
</dl>
<p>The full names (north, in, southwest, etc) will always be put as
main name for the exit, using the abbreviation as an alias (so an
exit will always be able to be used with both “north” as well as
“n” for example). Opposite directions will automatically be
created back from the new room unless the /oneway switch is given.
For more flexibility and power in creating rooms, use dig.</p>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdTunnel.key">
<span class="sig-name descname"><span class="pre">key</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'&#64;tunnel'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdTunnel.key" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdTunnel.aliases">
<span class="sig-name descname"><span class="pre">aliases</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">['&#64;tun']</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdTunnel.aliases" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdTunnel.switch_options">
<span class="sig-name descname"><span class="pre">switch_options</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">('oneway',</span> <span class="pre">'tel')</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdTunnel.switch_options" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdTunnel.locks">
<span class="sig-name descname"><span class="pre">locks</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'cmd:all();cmd:</span> <span class="pre">perm(tunnel)</span> <span class="pre">or</span> <span class="pre">perm(Builder)'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdTunnel.locks" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdTunnel.help_category">
<span class="sig-name descname"><span class="pre">help_category</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'building'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdTunnel.help_category" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdTunnel.method_type">
<span class="sig-name descname"><span class="pre">method_type</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'cmd_tunnel'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdTunnel.method_type" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdTunnel.directions">
<span class="sig-name descname"><span class="pre">directions</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">{'d':</span> <span class="pre">('down',</span> <span class="pre">'u'),</span> <span class="pre">'e':</span> <span class="pre">('east',</span> <span class="pre">'w'),</span> <span class="pre">'i':</span> <span class="pre">('in',</span> <span class="pre">'o'),</span> <span class="pre">'n':</span> <span class="pre">('north',</span> <span class="pre">'s'),</span> <span class="pre">'ne':</span> <span class="pre">('northeast',</span> <span class="pre">'sw'),</span> <span class="pre">'nw':</span> <span class="pre">('northwest',</span> <span class="pre">'se'),</span> <span class="pre">'o':</span> <span class="pre">('out',</span> <span class="pre">'i'),</span> <span class="pre">'s':</span> <span class="pre">('south',</span> <span class="pre">'n'),</span> <span class="pre">'se':</span> <span class="pre">('southeast',</span> <span class="pre">'nw'),</span> <span class="pre">'sw':</span> <span class="pre">('southwest',</span> <span class="pre">'ne'),</span> <span class="pre">'u':</span> <span class="pre">('up',</span> <span class="pre">'d'),</span> <span class="pre">'w':</span> <span class="pre">('west',</span> <span class="pre">'e')}</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdTunnel.directions" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdTunnel.func">
<span class="sig-name descname"><span class="pre">func</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdTunnel.func"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdTunnel.func" title="Link to this definition"></a></dt>
<dd><p>Implements the tunnel command</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdTunnel.lock_storage">
<span class="sig-name descname"><span class="pre">lock_storage</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'cmd:all();cmd:</span> <span class="pre">perm(tunnel)</span> <span class="pre">or</span> <span class="pre">perm(Builder)'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdTunnel.lock_storage" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdTunnel.search_index_entry">
<span class="sig-name descname"><span class="pre">search_index_entry</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">{'aliases':</span> <span class="pre">'&#64;tun',</span> <span class="pre">'category':</span> <span class="pre">'building',</span> <span class="pre">'key':</span> <span class="pre">'&#64;tunnel',</span> <span class="pre">'no_prefix':</span> <span class="pre">'tunnel</span> <span class="pre">tun',</span> <span class="pre">'tags':</span> <span class="pre">'',</span> <span class="pre">'text':</span> <span class="pre">'\ncreate</span> <span class="pre">new</span> <span class="pre">rooms</span> <span class="pre">in</span> <span class="pre">cardinal</span> <span class="pre">directions</span> <span class="pre">only\n\nUsage:\n</span>&#160; <span class="pre">tunnel[/switch]</span> <span class="pre">&lt;direction&gt;[:typeclass]</span> <span class="pre">[=</span> <span class="pre">&lt;roomname&gt;[;alias;alias;...][:typeclass]]\n\nSwitches:\n</span>&#160; <span class="pre">oneway</span> <span class="pre">-</span> <span class="pre">do</span> <span class="pre">not</span> <span class="pre">create</span> <span class="pre">an</span> <span class="pre">exit</span> <span class="pre">back</span> <span class="pre">to</span> <span class="pre">the</span> <span class="pre">current</span> <span class="pre">location\n</span>&#160; <span class="pre">tel</span> <span class="pre">-</span> <span class="pre">teleport</span> <span class="pre">to</span> <span class="pre">the</span> <span class="pre">newly</span> <span class="pre">created</span> <span class="pre">room\n\nExample:\n</span>&#160; <span class="pre">tunnel</span> <span class="pre">n\n</span>&#160; <span class="pre">tunnel</span> <span class="pre">n</span> <span class="pre">=</span> <span class="pre">house;mike\'s</span> <span class="pre">place;green</span> <span class="pre">building\n\nThis</span> <span class="pre">is</span> <span class="pre">a</span> <span class="pre">simple</span> <span class="pre">way</span> <span class="pre">to</span> <span class="pre">build</span> <span class="pre">using</span> <span class="pre">pre-defined</span> <span class="pre">directions:\n</span> <span class="pre">|wn,ne,e,se,s,sw,w,nw|n</span> <span class="pre">(north,</span> <span class="pre">northeast</span> <span class="pre">etc)\n</span> <span class="pre">|wu,d|n</span> <span class="pre">(up</span> <span class="pre">and</span> <span class="pre">down)\n</span> <span class="pre">|wi,o|n</span> <span class="pre">(in</span> <span class="pre">and</span> <span class="pre">out)\nThe</span> <span class="pre">full</span> <span class="pre">names</span> <span class="pre">(north,</span> <span class="pre">in,</span> <span class="pre">southwest,</span> <span class="pre">etc)</span> <span class="pre">will</span> <span class="pre">always</span> <span class="pre">be</span> <span class="pre">put</span> <span class="pre">as\nmain</span> <span class="pre">name</span> <span class="pre">for</span> <span class="pre">the</span> <span class="pre">exit,</span> <span class="pre">using</span> <span class="pre">the</span> <span class="pre">abbreviation</span> <span class="pre">as</span> <span class="pre">an</span> <span class="pre">alias</span> <span class="pre">(so</span> <span class="pre">an\nexit</span> <span class="pre">will</span> <span class="pre">always</span> <span class="pre">be</span> <span class="pre">able</span> <span class="pre">to</span> <span class="pre">be</span> <span class="pre">used</span> <span class="pre">with</span> <span class="pre">both</span> <span class="pre">&quot;north&quot;</span> <span class="pre">as</span> <span class="pre">well</span> <span class="pre">as\n&quot;n&quot;</span> <span class="pre">for</span> <span class="pre">example).</span> <span class="pre">Opposite</span> <span class="pre">directions</span> <span class="pre">will</span> <span class="pre">automatically</span> <span class="pre">be\ncreated</span> <span class="pre">back</span> <span class="pre">from</span> <span class="pre">the</span> <span class="pre">new</span> <span class="pre">room</span> <span class="pre">unless</span> <span class="pre">the</span> <span class="pre">/oneway</span> <span class="pre">switch</span> <span class="pre">is</span> <span class="pre">given.\nFor</span> <span class="pre">more</span> <span class="pre">flexibility</span> <span class="pre">and</span> <span class="pre">power</span> <span class="pre">in</span> <span class="pre">creating</span> <span class="pre">rooms,</span> <span class="pre">use</span> <span class="pre">dig.\n'}</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdTunnel.search_index_entry" title="Link to this definition"></a></dt>
<dd></dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdLink">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">evennia.commands.default.building.</span></span><span class="sig-name descname"><span class="pre">CmdLink</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdLink"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdLink" title="Link to this definition"></a></dt>
<dd><p>Bases: <a class="reference internal" href="evennia.commands.default.muxcommand.html#evennia.commands.default.muxcommand.MuxCommand" title="evennia.commands.default.muxcommand.MuxCommand"><code class="xref py py-class docutils literal notranslate"><span class="pre">MuxCommand</span></code></a></p>
<p>link existing rooms together with exits</p>
<dl class="simple">
<dt>Usage:</dt><dd><p>link[/switches] &lt;object&gt; = &lt;target&gt;
link[/switches] &lt;object&gt; =
link[/switches] &lt;object&gt;</p>
</dd>
<dt>Switch:</dt><dd><dl class="simple">
<dt>twoway - connect two exits. For this to work, BOTH &lt;object&gt;</dt><dd><p>and &lt;target&gt; must be exit objects.</p>
</dd>
</dl>
</dd>
</dl>
<p>If &lt;object&gt; is an exit, set its destination to &lt;target&gt;. Two-way operation
instead sets the destination to the <em>locations</em> of the respective given
arguments.
The second form (a lone =) sets the destination to None (same as
the unlink command) and the third form (without =) just shows the
currently set destination.</p>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdLink.key">
<span class="sig-name descname"><span class="pre">key</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'&#64;link'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdLink.key" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdLink.locks">
<span class="sig-name descname"><span class="pre">locks</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'cmd:perm(link)</span> <span class="pre">or</span> <span class="pre">perm(Builder)'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdLink.locks" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdLink.help_category">
<span class="sig-name descname"><span class="pre">help_category</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'building'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdLink.help_category" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdLink.func">
<span class="sig-name descname"><span class="pre">func</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdLink.func"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdLink.func" title="Link to this definition"></a></dt>
<dd><p>Perform the link</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdLink.aliases">
<span class="sig-name descname"><span class="pre">aliases</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">[]</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdLink.aliases" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdLink.lock_storage">
<span class="sig-name descname"><span class="pre">lock_storage</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'cmd:perm(link)</span> <span class="pre">or</span> <span class="pre">perm(Builder)'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdLink.lock_storage" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdLink.search_index_entry">
<span class="sig-name descname"><span class="pre">search_index_entry</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">{'aliases':</span> <span class="pre">'',</span> <span class="pre">'category':</span> <span class="pre">'building',</span> <span class="pre">'key':</span> <span class="pre">'&#64;link',</span> <span class="pre">'no_prefix':</span> <span class="pre">'link</span> <span class="pre">',</span> <span class="pre">'tags':</span> <span class="pre">'',</span> <span class="pre">'text':</span> <span class="pre">'\nlink</span> <span class="pre">existing</span> <span class="pre">rooms</span> <span class="pre">together</span> <span class="pre">with</span> <span class="pre">exits\n\nUsage:\n</span>&#160; <span class="pre">link[/switches]</span> <span class="pre">&lt;object&gt;</span> <span class="pre">=</span> <span class="pre">&lt;target&gt;\n</span>&#160; <span class="pre">link[/switches]</span> <span class="pre">&lt;object&gt;</span> <span class="pre">=\n</span>&#160; <span class="pre">link[/switches]</span> <span class="pre">&lt;object&gt;\n\nSwitch:\n</span>&#160; <span class="pre">twoway</span> <span class="pre">-</span> <span class="pre">connect</span> <span class="pre">two</span> <span class="pre">exits.</span> <span class="pre">For</span> <span class="pre">this</span> <span class="pre">to</span> <span class="pre">work,</span> <span class="pre">BOTH</span> <span class="pre">&lt;object&gt;\n</span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; <span class="pre">and</span> <span class="pre">&lt;target&gt;</span> <span class="pre">must</span> <span class="pre">be</span> <span class="pre">exit</span> <span class="pre">objects.\n\nIf</span> <span class="pre">&lt;object&gt;</span> <span class="pre">is</span> <span class="pre">an</span> <span class="pre">exit,</span> <span class="pre">set</span> <span class="pre">its</span> <span class="pre">destination</span> <span class="pre">to</span> <span class="pre">&lt;target&gt;.</span> <span class="pre">Two-way</span> <span class="pre">operation\ninstead</span> <span class="pre">sets</span> <span class="pre">the</span> <span class="pre">destination</span> <span class="pre">to</span> <span class="pre">the</span> <span class="pre">*locations*</span> <span class="pre">of</span> <span class="pre">the</span> <span class="pre">respective</span> <span class="pre">given\narguments.\nThe</span> <span class="pre">second</span> <span class="pre">form</span> <span class="pre">(a</span> <span class="pre">lone</span> <span class="pre">=)</span> <span class="pre">sets</span> <span class="pre">the</span> <span class="pre">destination</span> <span class="pre">to</span> <span class="pre">None</span> <span class="pre">(same</span> <span class="pre">as\nthe</span> <span class="pre">unlink</span> <span class="pre">command)</span> <span class="pre">and</span> <span class="pre">the</span> <span class="pre">third</span> <span class="pre">form</span> <span class="pre">(without</span> <span class="pre">=)</span> <span class="pre">just</span> <span class="pre">shows</span> <span class="pre">the\ncurrently</span> <span class="pre">set</span> <span class="pre">destination.\n'}</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdLink.search_index_entry" title="Link to this definition"></a></dt>
<dd></dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdUnLink">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">evennia.commands.default.building.</span></span><span class="sig-name descname"><span class="pre">CmdUnLink</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdUnLink"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdUnLink" title="Link to this definition"></a></dt>
<dd><p>Bases: <a class="reference internal" href="#evennia.commands.default.building.CmdLink" title="evennia.commands.default.building.CmdLink"><code class="xref py py-class docutils literal notranslate"><span class="pre">CmdLink</span></code></a></p>
<p>remove exit-connections between rooms</p>
<dl class="simple">
<dt>Usage:</dt><dd><p>unlink &lt;Object&gt;</p>
</dd>
</dl>
<p>Unlinks an object, for example an exit, disconnecting
it from whatever it was connected to.</p>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdUnLink.key">
<span class="sig-name descname"><span class="pre">key</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'unlink'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdUnLink.key" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdUnLink.locks">
<span class="sig-name descname"><span class="pre">locks</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'cmd:perm(unlink)</span> <span class="pre">or</span> <span class="pre">perm(Builder)'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdUnLink.locks" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdUnLink.help_key">
<span class="sig-name descname"><span class="pre">help_key</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'Building'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdUnLink.help_key" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdUnLink.func">
<span class="sig-name descname"><span class="pre">func</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdUnLink.func"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdUnLink.func" title="Link to this definition"></a></dt>
<dd><p>All we need to do here is to set the right command
and call func in CmdLink</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdUnLink.aliases">
<span class="sig-name descname"><span class="pre">aliases</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">[]</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdUnLink.aliases" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdUnLink.help_category">
<span class="sig-name descname"><span class="pre">help_category</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'building'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdUnLink.help_category" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdUnLink.lock_storage">
<span class="sig-name descname"><span class="pre">lock_storage</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'cmd:perm(unlink)</span> <span class="pre">or</span> <span class="pre">perm(Builder)'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdUnLink.lock_storage" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdUnLink.search_index_entry">
<span class="sig-name descname"><span class="pre">search_index_entry</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">{'aliases':</span> <span class="pre">'',</span> <span class="pre">'category':</span> <span class="pre">'building',</span> <span class="pre">'key':</span> <span class="pre">'unlink',</span> <span class="pre">'no_prefix':</span> <span class="pre">'</span> <span class="pre">',</span> <span class="pre">'tags':</span> <span class="pre">'',</span> <span class="pre">'text':</span> <span class="pre">'\nremove</span> <span class="pre">exit-connections</span> <span class="pre">between</span> <span class="pre">rooms\n\nUsage:\n</span>&#160; <span class="pre">unlink</span> <span class="pre">&lt;Object&gt;\n\nUnlinks</span> <span class="pre">an</span> <span class="pre">object,</span> <span class="pre">for</span> <span class="pre">example</span> <span class="pre">an</span> <span class="pre">exit,</span> <span class="pre">disconnecting\nit</span> <span class="pre">from</span> <span class="pre">whatever</span> <span class="pre">it</span> <span class="pre">was</span> <span class="pre">connected</span> <span class="pre">to.\n'}</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdUnLink.search_index_entry" title="Link to this definition"></a></dt>
<dd></dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdSetHome">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">evennia.commands.default.building.</span></span><span class="sig-name descname"><span class="pre">CmdSetHome</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdSetHome"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdSetHome" title="Link to this definition"></a></dt>
<dd><p>Bases: <a class="reference internal" href="#evennia.commands.default.building.CmdLink" title="evennia.commands.default.building.CmdLink"><code class="xref py py-class docutils literal notranslate"><span class="pre">CmdLink</span></code></a></p>
<p>set an objects home location</p>
<dl class="simple">
<dt>Usage:</dt><dd><p>sethome &lt;obj&gt; [= &lt;home_location&gt;]
sethome &lt;obj&gt;</p>
</dd>
</dl>
<p>The “home” location is a “safety” location for objects; they
will be moved there if their current location ceases to exist. All
objects should always have a home location for this reason.
It is also a convenient target of the “home” command.</p>
<p>If no location is given, just view the objects home location.</p>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdSetHome.key">
<span class="sig-name descname"><span class="pre">key</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'&#64;sethome'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdSetHome.key" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdSetHome.locks">
<span class="sig-name descname"><span class="pre">locks</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'cmd:perm(sethome)</span> <span class="pre">or</span> <span class="pre">perm(Builder)'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdSetHome.locks" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdSetHome.help_category">
<span class="sig-name descname"><span class="pre">help_category</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'building'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdSetHome.help_category" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdSetHome.func">
<span class="sig-name descname"><span class="pre">func</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdSetHome.func"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdSetHome.func" title="Link to this definition"></a></dt>
<dd><p>implement the command</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdSetHome.aliases">
<span class="sig-name descname"><span class="pre">aliases</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">[]</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdSetHome.aliases" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdSetHome.lock_storage">
<span class="sig-name descname"><span class="pre">lock_storage</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'cmd:perm(sethome)</span> <span class="pre">or</span> <span class="pre">perm(Builder)'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdSetHome.lock_storage" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdSetHome.search_index_entry">
<span class="sig-name descname"><span class="pre">search_index_entry</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">{'aliases':</span> <span class="pre">'',</span> <span class="pre">'category':</span> <span class="pre">'building',</span> <span class="pre">'key':</span> <span class="pre">'&#64;sethome',</span> <span class="pre">'no_prefix':</span> <span class="pre">'sethome</span> <span class="pre">',</span> <span class="pre">'tags':</span> <span class="pre">'',</span> <span class="pre">'text':</span> <span class="pre">'\nset</span> <span class="pre">an</span> <span class="pre">object\'s</span> <span class="pre">home</span> <span class="pre">location\n\nUsage:\n</span>&#160; <span class="pre">sethome</span> <span class="pre">&lt;obj&gt;</span> <span class="pre">[=</span> <span class="pre">&lt;home_location&gt;]\n</span>&#160; <span class="pre">sethome</span> <span class="pre">&lt;obj&gt;\n\nThe</span> <span class="pre">&quot;home&quot;</span> <span class="pre">location</span> <span class="pre">is</span> <span class="pre">a</span> <span class="pre">&quot;safety&quot;</span> <span class="pre">location</span> <span class="pre">for</span> <span class="pre">objects;</span> <span class="pre">they\nwill</span> <span class="pre">be</span> <span class="pre">moved</span> <span class="pre">there</span> <span class="pre">if</span> <span class="pre">their</span> <span class="pre">current</span> <span class="pre">location</span> <span class="pre">ceases</span> <span class="pre">to</span> <span class="pre">exist.</span> <span class="pre">All\nobjects</span> <span class="pre">should</span> <span class="pre">always</span> <span class="pre">have</span> <span class="pre">a</span> <span class="pre">home</span> <span class="pre">location</span> <span class="pre">for</span> <span class="pre">this</span> <span class="pre">reason.\nIt</span> <span class="pre">is</span> <span class="pre">also</span> <span class="pre">a</span> <span class="pre">convenient</span> <span class="pre">target</span> <span class="pre">of</span> <span class="pre">the</span> <span class="pre">&quot;home&quot;</span> <span class="pre">command.\n\nIf</span> <span class="pre">no</span> <span class="pre">location</span> <span class="pre">is</span> <span class="pre">given,</span> <span class="pre">just</span> <span class="pre">view</span> <span class="pre">the</span> <span class="pre">object\'s</span> <span class="pre">home</span> <span class="pre">location.\n'}</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdSetHome.search_index_entry" title="Link to this definition"></a></dt>
<dd></dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdListCmdSets">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">evennia.commands.default.building.</span></span><span class="sig-name descname"><span class="pre">CmdListCmdSets</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdListCmdSets"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdListCmdSets" title="Link to this definition"></a></dt>
<dd><p>Bases: <a class="reference internal" href="evennia.commands.default.muxcommand.html#evennia.commands.default.muxcommand.MuxCommand" title="evennia.commands.default.muxcommand.MuxCommand"><code class="xref py py-class docutils literal notranslate"><span class="pre">MuxCommand</span></code></a></p>
<p>list command sets defined on an object</p>
<dl class="simple">
<dt>Usage:</dt><dd><p>cmdsets &lt;obj&gt;</p>
</dd>
</dl>
<p>This displays all cmdsets assigned
to a user. Defaults to yourself.</p>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdListCmdSets.key">
<span class="sig-name descname"><span class="pre">key</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'&#64;cmdsets'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdListCmdSets.key" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdListCmdSets.locks">
<span class="sig-name descname"><span class="pre">locks</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'cmd:perm(listcmdsets)</span> <span class="pre">or</span> <span class="pre">perm(Builder)'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdListCmdSets.locks" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdListCmdSets.help_category">
<span class="sig-name descname"><span class="pre">help_category</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'building'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdListCmdSets.help_category" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdListCmdSets.func">
<span class="sig-name descname"><span class="pre">func</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdListCmdSets.func"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdListCmdSets.func" title="Link to this definition"></a></dt>
<dd><p>list the cmdsets</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdListCmdSets.aliases">
<span class="sig-name descname"><span class="pre">aliases</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">[]</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdListCmdSets.aliases" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdListCmdSets.lock_storage">
<span class="sig-name descname"><span class="pre">lock_storage</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'cmd:perm(listcmdsets)</span> <span class="pre">or</span> <span class="pre">perm(Builder)'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdListCmdSets.lock_storage" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdListCmdSets.search_index_entry">
<span class="sig-name descname"><span class="pre">search_index_entry</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">{'aliases':</span> <span class="pre">'',</span> <span class="pre">'category':</span> <span class="pre">'building',</span> <span class="pre">'key':</span> <span class="pre">'&#64;cmdsets',</span> <span class="pre">'no_prefix':</span> <span class="pre">'cmdsets</span> <span class="pre">',</span> <span class="pre">'tags':</span> <span class="pre">'',</span> <span class="pre">'text':</span> <span class="pre">'\nlist</span> <span class="pre">command</span> <span class="pre">sets</span> <span class="pre">defined</span> <span class="pre">on</span> <span class="pre">an</span> <span class="pre">object\n\nUsage:\n</span>&#160; <span class="pre">cmdsets</span> <span class="pre">&lt;obj&gt;\n\nThis</span> <span class="pre">displays</span> <span class="pre">all</span> <span class="pre">cmdsets</span> <span class="pre">assigned\nto</span> <span class="pre">a</span> <span class="pre">user.</span> <span class="pre">Defaults</span> <span class="pre">to</span> <span class="pre">yourself.\n'}</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdListCmdSets.search_index_entry" title="Link to this definition"></a></dt>
<dd></dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdName">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">evennia.commands.default.building.</span></span><span class="sig-name descname"><span class="pre">CmdName</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdName"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdName" title="Link to this definition"></a></dt>
<dd><p>Bases: <a class="reference internal" href="#evennia.commands.default.building.ObjManipCommand" title="evennia.commands.default.building.ObjManipCommand"><code class="xref py py-class docutils literal notranslate"><span class="pre">ObjManipCommand</span></code></a></p>
<p>change the name and/or aliases of an object</p>
<dl class="simple">
<dt>Usage:</dt><dd><p>name &lt;obj&gt; = &lt;newname&gt;;alias1;alias2</p>
</dd>
</dl>
<p>Rename an object to something new. Use <a href="#id9"><span class="problematic" id="id10">*</span></a>obj to
rename an account.</p>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdName.key">
<span class="sig-name descname"><span class="pre">key</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'&#64;name'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdName.key" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdName.aliases">
<span class="sig-name descname"><span class="pre">aliases</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">['&#64;rename']</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdName.aliases" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdName.locks">
<span class="sig-name descname"><span class="pre">locks</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'cmd:perm(rename)</span> <span class="pre">or</span> <span class="pre">perm(Builder)'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdName.locks" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdName.help_category">
<span class="sig-name descname"><span class="pre">help_category</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'building'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdName.help_category" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdName.func">
<span class="sig-name descname"><span class="pre">func</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdName.func"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdName.func" title="Link to this definition"></a></dt>
<dd><p>change the name</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdName.lock_storage">
<span class="sig-name descname"><span class="pre">lock_storage</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'cmd:perm(rename)</span> <span class="pre">or</span> <span class="pre">perm(Builder)'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdName.lock_storage" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdName.search_index_entry">
<span class="sig-name descname"><span class="pre">search_index_entry</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">{'aliases':</span> <span class="pre">'&#64;rename',</span> <span class="pre">'category':</span> <span class="pre">'building',</span> <span class="pre">'key':</span> <span class="pre">'&#64;name',</span> <span class="pre">'no_prefix':</span> <span class="pre">'name</span> <span class="pre">rename',</span> <span class="pre">'tags':</span> <span class="pre">'',</span> <span class="pre">'text':</span> <span class="pre">'\nchange</span> <span class="pre">the</span> <span class="pre">name</span> <span class="pre">and/or</span> <span class="pre">aliases</span> <span class="pre">of</span> <span class="pre">an</span> <span class="pre">object\n\nUsage:\n</span>&#160; <span class="pre">name</span> <span class="pre">&lt;obj&gt;</span> <span class="pre">=</span> <span class="pre">&lt;newname&gt;;alias1;alias2\n\nRename</span> <span class="pre">an</span> <span class="pre">object</span> <span class="pre">to</span> <span class="pre">something</span> <span class="pre">new.</span> <span class="pre">Use</span> <span class="pre">*obj</span> <span class="pre">to\nrename</span> <span class="pre">an</span> <span class="pre">account.\n\n'}</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdName.search_index_entry" title="Link to this definition"></a></dt>
<dd></dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdOpen">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">evennia.commands.default.building.</span></span><span class="sig-name descname"><span class="pre">CmdOpen</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdOpen"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdOpen" title="Link to this definition"></a></dt>
<dd><p>Bases: <a class="reference internal" href="#evennia.commands.default.building.ObjManipCommand" title="evennia.commands.default.building.ObjManipCommand"><code class="xref py py-class docutils literal notranslate"><span class="pre">ObjManipCommand</span></code></a></p>
<p>open a new exit from the current room</p>
<dl class="simple">
<dt>Usage:</dt><dd><p>open &lt;new exit&gt;[;alias;alias..][:typeclass] [,&lt;return exit&gt;[;alias;..][:typeclass]]] = &lt;destination&gt;</p>
</dd>
</dl>
<p>Handles the creation of exits. If a destination is given, the exit
will point there. The &lt;return exit&gt; argument sets up an exit at the
destination leading back to the current room. Destination name
can be given both as a #dbref and a name, if that name is globally
unique.</p>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdOpen.key">
<span class="sig-name descname"><span class="pre">key</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'&#64;open'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdOpen.key" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdOpen.locks">
<span class="sig-name descname"><span class="pre">locks</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'cmd:perm(open)</span> <span class="pre">or</span> <span class="pre">perm(Builder)'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdOpen.locks" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdOpen.help_category">
<span class="sig-name descname"><span class="pre">help_category</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'building'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdOpen.help_category" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdOpen.method_type">
<span class="sig-name descname"><span class="pre">method_type</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'cmd_open'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdOpen.method_type" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdOpen.new_obj_lockstring">
<span class="sig-name descname"><span class="pre">new_obj_lockstring</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'control:id({id})</span> <span class="pre">or</span> <span class="pre">perm(Admin);delete:id({id})</span> <span class="pre">or</span> <span class="pre">perm(Admin)'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdOpen.new_obj_lockstring" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdOpen.create_exit">
<span class="sig-name descname"><span class="pre">create_exit</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">exit_name</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">location</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">destination</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">exit_aliases</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">typeclass</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdOpen.create_exit"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdOpen.create_exit" title="Link to this definition"></a></dt>
<dd><p>Helper function to avoid code duplication.
At this point we know destination is a valid location</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdOpen.parse">
<span class="sig-name descname"><span class="pre">parse</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdOpen.parse"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdOpen.parse" title="Link to this definition"></a></dt>
<dd><p>We need to expand the default parsing to get all
the cases, see the module doc.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdOpen.func">
<span class="sig-name descname"><span class="pre">func</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdOpen.func"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdOpen.func" title="Link to this definition"></a></dt>
<dd><p>This is where the processing starts.
Uses the ObjManipCommand.parser() for pre-processing
as well as the self.create_exit() method.</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdOpen.aliases">
<span class="sig-name descname"><span class="pre">aliases</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">[]</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdOpen.aliases" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdOpen.lock_storage">
<span class="sig-name descname"><span class="pre">lock_storage</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'cmd:perm(open)</span> <span class="pre">or</span> <span class="pre">perm(Builder)'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdOpen.lock_storage" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdOpen.search_index_entry">
<span class="sig-name descname"><span class="pre">search_index_entry</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">{'aliases':</span> <span class="pre">'',</span> <span class="pre">'category':</span> <span class="pre">'building',</span> <span class="pre">'key':</span> <span class="pre">'&#64;open',</span> <span class="pre">'no_prefix':</span> <span class="pre">'open</span> <span class="pre">',</span> <span class="pre">'tags':</span> <span class="pre">'',</span> <span class="pre">'text':</span> <span class="pre">'\nopen</span> <span class="pre">a</span> <span class="pre">new</span> <span class="pre">exit</span> <span class="pre">from</span> <span class="pre">the</span> <span class="pre">current</span> <span class="pre">room\n\nUsage:\n</span>&#160; <span class="pre">open</span> <span class="pre">&lt;new</span> <span class="pre">exit&gt;[;alias;alias..][:typeclass]</span> <span class="pre">[,&lt;return</span> <span class="pre">exit&gt;[;alias;..][:typeclass]]]</span> <span class="pre">=</span> <span class="pre">&lt;destination&gt;\n\nHandles</span> <span class="pre">the</span> <span class="pre">creation</span> <span class="pre">of</span> <span class="pre">exits.</span> <span class="pre">If</span> <span class="pre">a</span> <span class="pre">destination</span> <span class="pre">is</span> <span class="pre">given,</span> <span class="pre">the</span> <span class="pre">exit\nwill</span> <span class="pre">point</span> <span class="pre">there.</span> <span class="pre">The</span> <span class="pre">&lt;return</span> <span class="pre">exit&gt;</span> <span class="pre">argument</span> <span class="pre">sets</span> <span class="pre">up</span> <span class="pre">an</span> <span class="pre">exit</span> <span class="pre">at</span> <span class="pre">the\ndestination</span> <span class="pre">leading</span> <span class="pre">back</span> <span class="pre">to</span> <span class="pre">the</span> <span class="pre">current</span> <span class="pre">room.</span> <span class="pre">Destination</span> <span class="pre">name\ncan</span> <span class="pre">be</span> <span class="pre">given</span> <span class="pre">both</span> <span class="pre">as</span> <span class="pre">a</span> <span class="pre">#dbref</span> <span class="pre">and</span> <span class="pre">a</span> <span class="pre">name,</span> <span class="pre">if</span> <span class="pre">that</span> <span class="pre">name</span> <span class="pre">is</span> <span class="pre">globally\nunique.\n\n'}</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdOpen.search_index_entry" title="Link to this definition"></a></dt>
<dd></dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdSetAttribute">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">evennia.commands.default.building.</span></span><span class="sig-name descname"><span class="pre">CmdSetAttribute</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdSetAttribute"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdSetAttribute" title="Link to this definition"></a></dt>
<dd><p>Bases: <a class="reference internal" href="#evennia.commands.default.building.ObjManipCommand" title="evennia.commands.default.building.ObjManipCommand"><code class="xref py py-class docutils literal notranslate"><span class="pre">ObjManipCommand</span></code></a></p>
<p>set attribute on an object or account</p>
<dl class="simple">
<dt>Usage:</dt><dd><p>set[/switch] &lt;obj&gt;/&lt;attr&gt;[:category] = &lt;value&gt;
set[/switch] &lt;obj&gt;/&lt;attr&gt;[:category] = # delete attribute
set[/switch] &lt;obj&gt;/&lt;attr&gt;[:category] # view attribute
set[/switch] <a href="#id11"><span class="problematic" id="id12">*</span></a>&lt;account&gt;/&lt;attr&gt;[:category] = &lt;value&gt;</p>
</dd>
<dt>Switch:</dt><dd><p>edit: Open the line editor (string values only)
script: If were trying to set an attribute on a script
channel: If were trying to set an attribute on a channel
account: If were trying to set an attribute on an account
room: Setting an attribute on a room (global search)
exit: Setting an attribute on an exit (global search)
char: Setting an attribute on a character (global search)
character: Alias for char, as above.</p>
</dd>
</dl>
<p class="rubric">Example</p>
<p>set self/foo = “bar”
set/delete self/foo
set self/foo = $dbref(#53)</p>
<p>Sets attributes on objects. The second example form above clears a
previously set attribute while the third form inspects the current value of
the attribute (if any). The last one (with the star) is a shortcut for
operating on a player Account rather than an Object.</p>
<p>If you want &lt;value&gt; to be an object, use $dbef(#dbref) or
$search(key) to assign it. You need control or edit access to
the object you are adding.</p>
<p>The most common data to save with this command are strings and
numbers. You can however also set Python primitives such as lists,
dictionaries and tuples on objects (this might be important for
the functionality of certain custom objects). This is indicated
by you starting your value with one of <a href="#id13"><span class="problematic" id="id14">|</span></a>c<a href="#id15"><span class="problematic" id="id16">|</span></a>n, <a href="#id17"><span class="problematic" id="id18">|</span></a>c”<a href="#id19"><span class="problematic" id="id20">|</span></a>n, <a href="#id21"><span class="problematic" id="id22">|</span></a>c(<a href="#id23"><span class="problematic" id="id24">|</span></a>n, <a href="#id25"><span class="problematic" id="id26">|</span></a>c[<a href="#id27"><span class="problematic" id="id28">|</span></a>n
or <a href="#id29"><span class="problematic" id="id30">|</span></a>c{ <a href="#id31"><span class="problematic" id="id32">|</span></a>n.</p>
<p>Once you have stored a Python primitive as noted above, you can include
<a href="#id33"><span class="problematic" id="id34">|</span></a>c[&lt;key&gt;]|n in &lt;attr&gt; to reference nested values in e.g. a list or dict.</p>
<p>Remember that if you use Python primitives like this, you must
write proper Python syntax too - notably you must include quotes
around your strings or you will get an error.</p>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdSetAttribute.key">
<span class="sig-name descname"><span class="pre">key</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'&#64;set'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdSetAttribute.key" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdSetAttribute.locks">
<span class="sig-name descname"><span class="pre">locks</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'cmd:perm(set)</span> <span class="pre">or</span> <span class="pre">perm(Builder)'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdSetAttribute.locks" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdSetAttribute.help_category">
<span class="sig-name descname"><span class="pre">help_category</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'building'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdSetAttribute.help_category" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdSetAttribute.nested_re">
<span class="sig-name descname"><span class="pre">nested_re</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">re.compile('\\[.*?\\]')</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdSetAttribute.nested_re" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdSetAttribute.not_found">
<span class="sig-name descname"><span class="pre">not_found</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">&lt;object</span> <span class="pre">object&gt;</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdSetAttribute.not_found" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdSetAttribute.check_obj">
<span class="sig-name descname"><span class="pre">check_obj</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">obj</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdSetAttribute.check_obj"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdSetAttribute.check_obj" title="Link to this definition"></a></dt>
<dd><p>This may be overridden by subclasses in case restrictions need to be
placed on whether certain objects can have attributes set by certain
accounts.</p>
<p>This function is expected to display its own error message.</p>
<p>Returning False will abort the command.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdSetAttribute.check_attr">
<span class="sig-name descname"><span class="pre">check_attr</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">obj</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">attr_name</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">category</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdSetAttribute.check_attr"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdSetAttribute.check_attr" title="Link to this definition"></a></dt>
<dd><p>This may be overridden by subclasses in case restrictions need to be
placed on what attributes can be set by who beyond the normal lock.</p>
<p>This functions is expected to display its own error message. It is
run once for every attribute that is checked, blocking only those
attributes which are not permitted and letting the others through.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdSetAttribute.split_nested_attr">
<span class="sig-name descname"><span class="pre">split_nested_attr</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">attr</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdSetAttribute.split_nested_attr"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdSetAttribute.split_nested_attr" title="Link to this definition"></a></dt>
<dd><p>Yields tuples of (possible attr name, nested keys on that attr).
For performance, this is biased to the deepest match, but allows compatibility
with older attrs that might have been named with <strong>[]</strong>s.</p>
<p>&gt; list(split_nested_attr(“nested[asdf][0]”))
[</p>
<blockquote>
<div><p>(nested, [asdf, 0]),
(“nested[asdf]”, [0]),
(“nested[asdf][0]”, []),</p>
</div></blockquote>
<p>]</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdSetAttribute.do_nested_lookup">
<span class="sig-name descname"><span class="pre">do_nested_lookup</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">value</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">keys</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdSetAttribute.do_nested_lookup"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdSetAttribute.do_nested_lookup" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdSetAttribute.view_attr">
<span class="sig-name descname"><span class="pre">view_attr</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">obj</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">attr</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">category</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdSetAttribute.view_attr"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdSetAttribute.view_attr" title="Link to this definition"></a></dt>
<dd><p>Look up the value of an attribute and return a string displaying it.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdSetAttribute.rm_attr">
<span class="sig-name descname"><span class="pre">rm_attr</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">obj</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">attr</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">category</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdSetAttribute.rm_attr"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdSetAttribute.rm_attr" title="Link to this definition"></a></dt>
<dd><p>Remove an attribute from the object, or a nested data structure, and report back.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdSetAttribute.set_attr">
<span class="sig-name descname"><span class="pre">set_attr</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">obj</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">attr</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">value</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">category</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdSetAttribute.set_attr"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdSetAttribute.set_attr" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdSetAttribute.edit_handler">
<span class="sig-name descname"><span class="pre">edit_handler</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#evennia.commands.default.building.CmdSetAttribute.edit_handler" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdSetAttribute.search_for_obj">
<span class="sig-name descname"><span class="pre">search_for_obj</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">objname</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdSetAttribute.search_for_obj"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdSetAttribute.search_for_obj" title="Link to this definition"></a></dt>
<dd><p>Searches for an object matching objname. The object may be of different typeclasses.
:param objname: Name of the object were looking for</p>
<dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>A typeclassed object, or None if nothing is found.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdSetAttribute.func">
<span class="sig-name descname"><span class="pre">func</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdSetAttribute.func"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdSetAttribute.func" title="Link to this definition"></a></dt>
<dd><p>Implement the set attribute - a limited form of py.</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdSetAttribute.aliases">
<span class="sig-name descname"><span class="pre">aliases</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">[]</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdSetAttribute.aliases" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdSetAttribute.lock_storage">
<span class="sig-name descname"><span class="pre">lock_storage</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'cmd:perm(set)</span> <span class="pre">or</span> <span class="pre">perm(Builder)'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdSetAttribute.lock_storage" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdSetAttribute.search_index_entry">
<span class="sig-name descname"><span class="pre">search_index_entry</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">{'aliases':</span> <span class="pre">'',</span> <span class="pre">'category':</span> <span class="pre">'building',</span> <span class="pre">'key':</span> <span class="pre">'&#64;set',</span> <span class="pre">'no_prefix':</span> <span class="pre">'set</span> <span class="pre">',</span> <span class="pre">'tags':</span> <span class="pre">'',</span> <span class="pre">'text':</span> <span class="pre">'\nset</span> <span class="pre">attribute</span> <span class="pre">on</span> <span class="pre">an</span> <span class="pre">object</span> <span class="pre">or</span> <span class="pre">account\n\nUsage:\n</span>&#160; <span class="pre">set[/switch]</span> <span class="pre">&lt;obj&gt;/&lt;attr&gt;[:category]</span> <span class="pre">=</span> <span class="pre">&lt;value&gt;\n</span>&#160; <span class="pre">set[/switch]</span> <span class="pre">&lt;obj&gt;/&lt;attr&gt;[:category]</span> <span class="pre">=</span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; <span class="pre">#</span> <span class="pre">delete</span> <span class="pre">attribute\n</span>&#160; <span class="pre">set[/switch]</span> <span class="pre">&lt;obj&gt;/&lt;attr&gt;[:category]</span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; <span class="pre">#</span> <span class="pre">view</span> <span class="pre">attribute\n</span>&#160; <span class="pre">set[/switch]</span> <span class="pre">*&lt;account&gt;/&lt;attr&gt;[:category]</span> <span class="pre">=</span> <span class="pre">&lt;value&gt;\n\nSwitch:\n</span>&#160;&#160;&#160; <span class="pre">edit:</span> <span class="pre">Open</span> <span class="pre">the</span> <span class="pre">line</span> <span class="pre">editor</span> <span class="pre">(string</span> <span class="pre">values</span> <span class="pre">only)\n</span>&#160;&#160;&#160; <span class="pre">script:</span> <span class="pre">If</span> <span class="pre">we\'re</span> <span class="pre">trying</span> <span class="pre">to</span> <span class="pre">set</span> <span class="pre">an</span> <span class="pre">attribute</span> <span class="pre">on</span> <span class="pre">a</span> <span class="pre">script\n</span>&#160;&#160;&#160; <span class="pre">channel:</span> <span class="pre">If</span> <span class="pre">we\'re</span> <span class="pre">trying</span> <span class="pre">to</span> <span class="pre">set</span> <span class="pre">an</span> <span class="pre">attribute</span> <span class="pre">on</span> <span class="pre">a</span> <span class="pre">channel\n</span>&#160;&#160;&#160; <span class="pre">account:</span> <span class="pre">If</span> <span class="pre">we\'re</span> <span class="pre">trying</span> <span class="pre">to</span> <span class="pre">set</span> <span class="pre">an</span> <span class="pre">attribute</span> <span class="pre">on</span> <span class="pre">an</span> <span class="pre">account\n</span>&#160;&#160;&#160; <span class="pre">room:</span> <span class="pre">Setting</span> <span class="pre">an</span> <span class="pre">attribute</span> <span class="pre">on</span> <span class="pre">a</span> <span class="pre">room</span> <span class="pre">(global</span> <span class="pre">search)\n</span>&#160;&#160;&#160; <span class="pre">exit:</span> <span class="pre">Setting</span> <span class="pre">an</span> <span class="pre">attribute</span> <span class="pre">on</span> <span class="pre">an</span> <span class="pre">exit</span> <span class="pre">(global</span> <span class="pre">search)\n</span>&#160;&#160;&#160; <span class="pre">char:</span> <span class="pre">Setting</span> <span class="pre">an</span> <span class="pre">attribute</span> <span class="pre">on</span> <span class="pre">a</span> <span class="pre">character</span> <span class="pre">(global</span> <span class="pre">search)\n</span>&#160;&#160;&#160; <span class="pre">character:</span> <span class="pre">Alias</span> <span class="pre">for</span> <span class="pre">char,</span> <span class="pre">as</span> <span class="pre">above.\n\nExample:\n</span>&#160;&#160;&#160; <span class="pre">set</span> <span class="pre">self/foo</span> <span class="pre">=</span> <span class="pre">&quot;bar&quot;\n</span>&#160;&#160;&#160; <span class="pre">set/delete</span> <span class="pre">self/foo\n</span>&#160;&#160;&#160; <span class="pre">set</span> <span class="pre">self/foo</span> <span class="pre">=</span> <span class="pre">$dbref(#53)\n\nSets</span> <span class="pre">attributes</span> <span class="pre">on</span> <span class="pre">objects.</span> <span class="pre">The</span> <span class="pre">second</span> <span class="pre">example</span> <span class="pre">form</span> <span class="pre">above</span> <span class="pre">clears</span> <span class="pre">a\npreviously</span> <span class="pre">set</span> <span class="pre">attribute</span> <span class="pre">while</span> <span class="pre">the</span> <span class="pre">third</span> <span class="pre">form</span> <span class="pre">inspects</span> <span class="pre">the</span> <span class="pre">current</span> <span class="pre">value</span> <span class="pre">of\nthe</span> <span class="pre">attribute</span> <span class="pre">(if</span> <span class="pre">any).</span> <span class="pre">The</span> <span class="pre">last</span> <span class="pre">one</span> <span class="pre">(with</span> <span class="pre">the</span> <span class="pre">star)</span> <span class="pre">is</span> <span class="pre">a</span> <span class="pre">shortcut</span> <span class="pre">for\noperating</span> <span class="pre">on</span> <span class="pre">a</span> <span class="pre">player</span> <span class="pre">Account</span> <span class="pre">rather</span> <span class="pre">than</span> <span class="pre">an</span> <span class="pre">Object.\n\nIf</span> <span class="pre">you</span> <span class="pre">want</span> <span class="pre">&lt;value&gt;</span> <span class="pre">to</span> <span class="pre">be</span> <span class="pre">an</span> <span class="pre">object,</span> <span class="pre">use</span> <span class="pre">$dbef(#dbref)</span> <span class="pre">or\n$search(key)</span> <span class="pre">to</span> <span class="pre">assign</span> <span class="pre">it.</span> <span class="pre">You</span> <span class="pre">need</span> <span class="pre">control</span> <span class="pre">or</span> <span class="pre">edit</span> <span class="pre">access</span> <span class="pre">to\nthe</span> <span class="pre">object</span> <span class="pre">you</span> <span class="pre">are</span> <span class="pre">adding.\n\nThe</span> <span class="pre">most</span> <span class="pre">common</span> <span class="pre">data</span> <span class="pre">to</span> <span class="pre">save</span> <span class="pre">with</span> <span class="pre">this</span> <span class="pre">command</span> <span class="pre">are</span> <span class="pre">strings</span> <span class="pre">and\nnumbers.</span> <span class="pre">You</span> <span class="pre">can</span> <span class="pre">however</span> <span class="pre">also</span> <span class="pre">set</span> <span class="pre">Python</span> <span class="pre">primitives</span> <span class="pre">such</span> <span class="pre">as</span> <span class="pre">lists,\ndictionaries</span> <span class="pre">and</span> <span class="pre">tuples</span> <span class="pre">on</span> <span class="pre">objects</span> <span class="pre">(this</span> <span class="pre">might</span> <span class="pre">be</span> <span class="pre">important</span> <span class="pre">for\nthe</span> <span class="pre">functionality</span> <span class="pre">of</span> <span class="pre">certain</span> <span class="pre">custom</span> <span class="pre">objects).</span>&#160; <span class="pre">This</span> <span class="pre">is</span> <span class="pre">indicated\nby</span> <span class="pre">you</span> <span class="pre">starting</span> <span class="pre">your</span> <span class="pre">value</span> <span class="pre">with</span> <span class="pre">one</span> <span class="pre">of</span> <span class="pre">|c\'|n,</span> <span class="pre">|c&quot;|n,</span> <span class="pre">|c(|n,</span> <span class="pre">|c[|n\nor</span> <span class="pre">|c{</span> <span class="pre">|n.\n\nOnce</span> <span class="pre">you</span> <span class="pre">have</span> <span class="pre">stored</span> <span class="pre">a</span> <span class="pre">Python</span> <span class="pre">primitive</span> <span class="pre">as</span> <span class="pre">noted</span> <span class="pre">above,</span> <span class="pre">you</span> <span class="pre">can</span> <span class="pre">include\n|c[&lt;key&gt;]|n</span> <span class="pre">in</span> <span class="pre">&lt;attr&gt;</span> <span class="pre">to</span> <span class="pre">reference</span> <span class="pre">nested</span> <span class="pre">values</span> <span class="pre">in</span> <span class="pre">e.g.</span> <span class="pre">a</span> <span class="pre">list</span> <span class="pre">or</span> <span class="pre">dict.\n\nRemember</span> <span class="pre">that</span> <span class="pre">if</span> <span class="pre">you</span> <span class="pre">use</span> <span class="pre">Python</span> <span class="pre">primitives</span> <span class="pre">like</span> <span class="pre">this,</span> <span class="pre">you</span> <span class="pre">must\nwrite</span> <span class="pre">proper</span> <span class="pre">Python</span> <span class="pre">syntax</span> <span class="pre">too</span> <span class="pre">-</span> <span class="pre">notably</span> <span class="pre">you</span> <span class="pre">must</span> <span class="pre">include</span> <span class="pre">quotes\naround</span> <span class="pre">your</span> <span class="pre">strings</span> <span class="pre">or</span> <span class="pre">you</span> <span class="pre">will</span> <span class="pre">get</span> <span class="pre">an</span> <span class="pre">error.\n\n'}</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdSetAttribute.search_index_entry" title="Link to this definition"></a></dt>
<dd></dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdTypeclass">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">evennia.commands.default.building.</span></span><span class="sig-name descname"><span class="pre">CmdTypeclass</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdTypeclass"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdTypeclass" title="Link to this definition"></a></dt>
<dd><p>Bases: <a class="reference internal" href="evennia.commands.default.muxcommand.html#evennia.commands.default.muxcommand.MuxCommand" title="evennia.commands.default.muxcommand.MuxCommand"><code class="xref py py-class docutils literal notranslate"><span class="pre">MuxCommand</span></code></a></p>
<p>set or change an objects typeclass</p>
<dl>
<dt>Usage:</dt><dd><p>typeclass[/switch] &lt;object&gt; [= typeclass.path]
typeclass/prototype &lt;object&gt; = prototype_key</p>
<p>typeclasses or typeclass/list/show [typeclass.path]
swap - this is a shorthand for using /force/reset flags.
update - this is a shorthand for using the /force/reload flag.</p>
</dd>
<dt>Switch:</dt><dd><dl class="simple">
<dt>show, examine - display the current typeclass of object (default) or, if</dt><dd><p>given a typeclass path, show the docstring of that typeclass.</p>
</dd>
<dt>update - <em>only</em> re-run at_object_creation on this object</dt><dd><p>meaning locks or other properties set later may remain.</p>
</dd>
<dt>reset - clean out <em>all</em> the attributes and properties on the</dt><dd><p>object - basically making this a new clean object. This will also
reset cmdsets!</p>
</dd>
<dt>force - change to the typeclass also if the object</dt><dd><p>already has a typeclass of the same name.</p>
</dd>
<dt>list - show available typeclasses. Only typeclasses in modules actually</dt><dd><p>imported or used from somewhere in the code will show up here
(those typeclasses are still available if you know the path)</p>
</dd>
<dt>prototype - clean and overwrite the object with the specified</dt><dd><p>prototype key - effectively making a whole new object.</p>
</dd>
</dl>
</dd>
</dl>
<p class="rubric">Example</p>
<p>type button = examples.red_button.RedButton
type/prototype button=a red button</p>
<p>If the typeclass_path is not given, the current objects typeclass is
assumed.</p>
<p>View or set an objects typeclass. If setting, the creation hooks of the
new typeclass will be run on the object. If you have clashing properties on
the old class, use /reset. By default you are protected from changing to a
typeclass of the same name as the one you already have - use /force to
override this protection.</p>
<p>The given typeclass must be identified by its location using python
dot-notation pointing to the correct module and class. If no typeclass is
given (or a wrong typeclass is given). Errors in the path or new typeclass
will lead to the old typeclass being kept. The location of the typeclass
module is searched from the default typeclass directory, as defined in the
server settings.</p>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdTypeclass.key">
<span class="sig-name descname"><span class="pre">key</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'&#64;typeclass'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdTypeclass.key" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdTypeclass.aliases">
<span class="sig-name descname"><span class="pre">aliases</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">['&#64;type',</span> <span class="pre">'&#64;parent',</span> <span class="pre">'&#64;update',</span> <span class="pre">'&#64;swap',</span> <span class="pre">'&#64;typeclasses']</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdTypeclass.aliases" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdTypeclass.switch_options">
<span class="sig-name descname"><span class="pre">switch_options</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">('show',</span> <span class="pre">'examine',</span> <span class="pre">'update',</span> <span class="pre">'reset',</span> <span class="pre">'force',</span> <span class="pre">'list',</span> <span class="pre">'prototype')</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdTypeclass.switch_options" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdTypeclass.locks">
<span class="sig-name descname"><span class="pre">locks</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'cmd:perm(typeclass)</span> <span class="pre">or</span> <span class="pre">perm(Builder)'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdTypeclass.locks" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdTypeclass.help_category">
<span class="sig-name descname"><span class="pre">help_category</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'building'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdTypeclass.help_category" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdTypeclass.func">
<span class="sig-name descname"><span class="pre">func</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdTypeclass.func"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdTypeclass.func" title="Link to this definition"></a></dt>
<dd><p>Implements command</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdTypeclass.lock_storage">
<span class="sig-name descname"><span class="pre">lock_storage</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'cmd:perm(typeclass)</span> <span class="pre">or</span> <span class="pre">perm(Builder)'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdTypeclass.lock_storage" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdTypeclass.search_index_entry">
<span class="sig-name descname"><span class="pre">search_index_entry</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">{'aliases':</span> <span class="pre">'&#64;type</span> <span class="pre">&#64;parent</span> <span class="pre">&#64;update</span> <span class="pre">&#64;swap</span> <span class="pre">&#64;typeclasses',</span> <span class="pre">'category':</span> <span class="pre">'building',</span> <span class="pre">'key':</span> <span class="pre">'&#64;typeclass',</span> <span class="pre">'no_prefix':</span> <span class="pre">'typeclass</span> <span class="pre">type</span> <span class="pre">parent</span> <span class="pre">update</span> <span class="pre">swap</span> <span class="pre">typeclasses',</span> <span class="pre">'tags':</span> <span class="pre">'',</span> <span class="pre">'text':</span> <span class="pre">&quot;\nset</span> <span class="pre">or</span> <span class="pre">change</span> <span class="pre">an</span> <span class="pre">object's</span> <span class="pre">typeclass\n\nUsage:\n</span>&#160; <span class="pre">typeclass[/switch]</span> <span class="pre">&lt;object&gt;</span> <span class="pre">[=</span> <span class="pre">typeclass.path]\n</span>&#160; <span class="pre">typeclass/prototype</span> <span class="pre">&lt;object&gt;</span> <span class="pre">=</span> <span class="pre">prototype_key\n\n</span>&#160; <span class="pre">typeclasses</span> <span class="pre">or</span> <span class="pre">typeclass/list/show</span> <span class="pre">[typeclass.path]\n</span>&#160; <span class="pre">swap</span> <span class="pre">-</span> <span class="pre">this</span> <span class="pre">is</span> <span class="pre">a</span> <span class="pre">shorthand</span> <span class="pre">for</span> <span class="pre">using</span> <span class="pre">/force/reset</span> <span class="pre">flags.\n</span>&#160; <span class="pre">update</span> <span class="pre">-</span> <span class="pre">this</span> <span class="pre">is</span> <span class="pre">a</span> <span class="pre">shorthand</span> <span class="pre">for</span> <span class="pre">using</span> <span class="pre">the</span> <span class="pre">/force/reload</span> <span class="pre">flag.\n\nSwitch:\n</span>&#160; <span class="pre">show,</span> <span class="pre">examine</span> <span class="pre">-</span> <span class="pre">display</span> <span class="pre">the</span> <span class="pre">current</span> <span class="pre">typeclass</span> <span class="pre">of</span> <span class="pre">object</span> <span class="pre">(default)</span> <span class="pre">or,</span> <span class="pre">if\n</span>&#160;&#160;&#160;&#160;&#160;&#160;&#160; <span class="pre">given</span> <span class="pre">a</span> <span class="pre">typeclass</span> <span class="pre">path,</span> <span class="pre">show</span> <span class="pre">the</span> <span class="pre">docstring</span> <span class="pre">of</span> <span class="pre">that</span> <span class="pre">typeclass.\n</span>&#160; <span class="pre">update</span> <span class="pre">-</span> <span class="pre">*only*</span> <span class="pre">re-run</span> <span class="pre">at_object_creation</span> <span class="pre">on</span> <span class="pre">this</span> <span class="pre">object\n</span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; <span class="pre">meaning</span> <span class="pre">locks</span> <span class="pre">or</span> <span class="pre">other</span> <span class="pre">properties</span> <span class="pre">set</span> <span class="pre">later</span> <span class="pre">may</span> <span class="pre">remain.\n</span>&#160; <span class="pre">reset</span> <span class="pre">-</span> <span class="pre">clean</span> <span class="pre">out</span> <span class="pre">*all*</span> <span class="pre">the</span> <span class="pre">attributes</span> <span class="pre">and</span> <span class="pre">properties</span> <span class="pre">on</span> <span class="pre">the\n</span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; <span class="pre">object</span> <span class="pre">-</span> <span class="pre">basically</span> <span class="pre">making</span> <span class="pre">this</span> <span class="pre">a</span> <span class="pre">new</span> <span class="pre">clean</span> <span class="pre">object.</span> <span class="pre">This</span> <span class="pre">will</span> <span class="pre">also\n</span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; <span class="pre">reset</span> <span class="pre">cmdsets!\n</span>&#160; <span class="pre">force</span> <span class="pre">-</span> <span class="pre">change</span> <span class="pre">to</span> <span class="pre">the</span> <span class="pre">typeclass</span> <span class="pre">also</span> <span class="pre">if</span> <span class="pre">the</span> <span class="pre">object\n</span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; <span class="pre">already</span> <span class="pre">has</span> <span class="pre">a</span> <span class="pre">typeclass</span> <span class="pre">of</span> <span class="pre">the</span> <span class="pre">same</span> <span class="pre">name.\n</span>&#160; <span class="pre">list</span> <span class="pre">-</span> <span class="pre">show</span> <span class="pre">available</span> <span class="pre">typeclasses.</span> <span class="pre">Only</span> <span class="pre">typeclasses</span> <span class="pre">in</span> <span class="pre">modules</span> <span class="pre">actually\n</span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; <span class="pre">imported</span> <span class="pre">or</span> <span class="pre">used</span> <span class="pre">from</span> <span class="pre">somewhere</span> <span class="pre">in</span> <span class="pre">the</span> <span class="pre">code</span> <span class="pre">will</span> <span class="pre">show</span> <span class="pre">up</span> <span class="pre">here\n</span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; <span class="pre">(those</span> <span class="pre">typeclasses</span> <span class="pre">are</span> <span class="pre">still</span> <span class="pre">available</span> <span class="pre">if</span> <span class="pre">you</span> <span class="pre">know</span> <span class="pre">the</span> <span class="pre">path)\n</span>&#160; <span class="pre">prototype</span> <span class="pre">-</span> <span class="pre">clean</span> <span class="pre">and</span> <span class="pre">overwrite</span> <span class="pre">the</span> <span class="pre">object</span> <span class="pre">with</span> <span class="pre">the</span> <span class="pre">specified\n</span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; <span class="pre">prototype</span> <span class="pre">key</span> <span class="pre">-</span> <span class="pre">effectively</span> <span class="pre">making</span> <span class="pre">a</span> <span class="pre">whole</span> <span class="pre">new</span> <span class="pre">object.\n\nExample:\n</span>&#160; <span class="pre">type</span> <span class="pre">button</span> <span class="pre">=</span> <span class="pre">examples.red_button.RedButton\n</span>&#160; <span class="pre">type/prototype</span> <span class="pre">button=a</span> <span class="pre">red</span> <span class="pre">button\n\nIf</span> <span class="pre">the</span> <span class="pre">typeclass_path</span> <span class="pre">is</span> <span class="pre">not</span> <span class="pre">given,</span> <span class="pre">the</span> <span class="pre">current</span> <span class="pre">object's</span> <span class="pre">typeclass</span> <span class="pre">is\nassumed.\n\nView</span> <span class="pre">or</span> <span class="pre">set</span> <span class="pre">an</span> <span class="pre">object's</span> <span class="pre">typeclass.</span> <span class="pre">If</span> <span class="pre">setting,</span> <span class="pre">the</span> <span class="pre">creation</span> <span class="pre">hooks</span> <span class="pre">of</span> <span class="pre">the\nnew</span> <span class="pre">typeclass</span> <span class="pre">will</span> <span class="pre">be</span> <span class="pre">run</span> <span class="pre">on</span> <span class="pre">the</span> <span class="pre">object.</span> <span class="pre">If</span> <span class="pre">you</span> <span class="pre">have</span> <span class="pre">clashing</span> <span class="pre">properties</span> <span class="pre">on\nthe</span> <span class="pre">old</span> <span class="pre">class,</span> <span class="pre">use</span> <span class="pre">/reset.</span> <span class="pre">By</span> <span class="pre">default</span> <span class="pre">you</span> <span class="pre">are</span> <span class="pre">protected</span> <span class="pre">from</span> <span class="pre">changing</span> <span class="pre">to</span> <span class="pre">a\ntypeclass</span> <span class="pre">of</span> <span class="pre">the</span> <span class="pre">same</span> <span class="pre">name</span> <span class="pre">as</span> <span class="pre">the</span> <span class="pre">one</span> <span class="pre">you</span> <span class="pre">already</span> <span class="pre">have</span> <span class="pre">-</span> <span class="pre">use</span> <span class="pre">/force</span> <span class="pre">to\noverride</span> <span class="pre">this</span> <span class="pre">protection.\n\nThe</span> <span class="pre">given</span> <span class="pre">typeclass</span> <span class="pre">must</span> <span class="pre">be</span> <span class="pre">identified</span> <span class="pre">by</span> <span class="pre">its</span> <span class="pre">location</span> <span class="pre">using</span> <span class="pre">python\ndot-notation</span> <span class="pre">pointing</span> <span class="pre">to</span> <span class="pre">the</span> <span class="pre">correct</span> <span class="pre">module</span> <span class="pre">and</span> <span class="pre">class.</span> <span class="pre">If</span> <span class="pre">no</span> <span class="pre">typeclass</span> <span class="pre">is\ngiven</span> <span class="pre">(or</span> <span class="pre">a</span> <span class="pre">wrong</span> <span class="pre">typeclass</span> <span class="pre">is</span> <span class="pre">given).</span> <span class="pre">Errors</span> <span class="pre">in</span> <span class="pre">the</span> <span class="pre">path</span> <span class="pre">or</span> <span class="pre">new</span> <span class="pre">typeclass\nwill</span> <span class="pre">lead</span> <span class="pre">to</span> <span class="pre">the</span> <span class="pre">old</span> <span class="pre">typeclass</span> <span class="pre">being</span> <span class="pre">kept.</span> <span class="pre">The</span> <span class="pre">location</span> <span class="pre">of</span> <span class="pre">the</span> <span class="pre">typeclass\nmodule</span> <span class="pre">is</span> <span class="pre">searched</span> <span class="pre">from</span> <span class="pre">the</span> <span class="pre">default</span> <span class="pre">typeclass</span> <span class="pre">directory,</span> <span class="pre">as</span> <span class="pre">defined</span> <span class="pre">in</span> <span class="pre">the\nserver</span> <span class="pre">settings.\n\n&quot;}</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdTypeclass.search_index_entry" title="Link to this definition"></a></dt>
<dd></dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdWipe">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">evennia.commands.default.building.</span></span><span class="sig-name descname"><span class="pre">CmdWipe</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdWipe"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdWipe" title="Link to this definition"></a></dt>
<dd><p>Bases: <a class="reference internal" href="#evennia.commands.default.building.ObjManipCommand" title="evennia.commands.default.building.ObjManipCommand"><code class="xref py py-class docutils literal notranslate"><span class="pre">ObjManipCommand</span></code></a></p>
<p>clear all attributes from an object</p>
<dl class="simple">
<dt>Usage:</dt><dd><p>wipe &lt;object&gt;[/&lt;attr&gt;[/&lt;attr&gt;…]]</p>
</dd>
</dl>
<p class="rubric">Example</p>
<p>wipe box
wipe box/colour</p>
<p>Wipes all of an objects attributes, or optionally only those
matching the given attribute-wildcard search string.</p>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdWipe.key">
<span class="sig-name descname"><span class="pre">key</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'&#64;wipe'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdWipe.key" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdWipe.locks">
<span class="sig-name descname"><span class="pre">locks</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'cmd:perm(wipe)</span> <span class="pre">or</span> <span class="pre">perm(Builder)'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdWipe.locks" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdWipe.help_category">
<span class="sig-name descname"><span class="pre">help_category</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'building'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdWipe.help_category" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdWipe.func">
<span class="sig-name descname"><span class="pre">func</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdWipe.func"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdWipe.func" title="Link to this definition"></a></dt>
<dd><p>inp is the dict produced in ObjManipCommand.parse()</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdWipe.aliases">
<span class="sig-name descname"><span class="pre">aliases</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">[]</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdWipe.aliases" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdWipe.lock_storage">
<span class="sig-name descname"><span class="pre">lock_storage</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'cmd:perm(wipe)</span> <span class="pre">or</span> <span class="pre">perm(Builder)'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdWipe.lock_storage" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdWipe.search_index_entry">
<span class="sig-name descname"><span class="pre">search_index_entry</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">{'aliases':</span> <span class="pre">'',</span> <span class="pre">'category':</span> <span class="pre">'building',</span> <span class="pre">'key':</span> <span class="pre">'&#64;wipe',</span> <span class="pre">'no_prefix':</span> <span class="pre">'wipe</span> <span class="pre">',</span> <span class="pre">'tags':</span> <span class="pre">'',</span> <span class="pre">'text':</span> <span class="pre">&quot;\nclear</span> <span class="pre">all</span> <span class="pre">attributes</span> <span class="pre">from</span> <span class="pre">an</span> <span class="pre">object\n\nUsage:\n</span>&#160; <span class="pre">wipe</span> <span class="pre">&lt;object&gt;[/&lt;attr&gt;[/&lt;attr&gt;...]]\n\nExample:\n</span>&#160; <span class="pre">wipe</span> <span class="pre">box\n</span>&#160; <span class="pre">wipe</span> <span class="pre">box/colour\n\nWipes</span> <span class="pre">all</span> <span class="pre">of</span> <span class="pre">an</span> <span class="pre">object's</span> <span class="pre">attributes,</span> <span class="pre">or</span> <span class="pre">optionally</span> <span class="pre">only</span> <span class="pre">those\nmatching</span> <span class="pre">the</span> <span class="pre">given</span> <span class="pre">attribute-wildcard</span> <span class="pre">search</span> <span class="pre">string.\n&quot;}</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdWipe.search_index_entry" title="Link to this definition"></a></dt>
<dd></dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdLock">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">evennia.commands.default.building.</span></span><span class="sig-name descname"><span class="pre">CmdLock</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdLock"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdLock" title="Link to this definition"></a></dt>
<dd><p>Bases: <a class="reference internal" href="#evennia.commands.default.building.ObjManipCommand" title="evennia.commands.default.building.ObjManipCommand"><code class="xref py py-class docutils literal notranslate"><span class="pre">ObjManipCommand</span></code></a></p>
<p>assign a lock definition to an object</p>
<dl class="simple">
<dt>Usage:</dt><dd><p>lock &lt;object or <a href="#id35"><span class="problematic" id="id36">*</span></a>account&gt;[ = &lt;lockstring&gt;]
or
lock[/switch] &lt;object or <a href="#id37"><span class="problematic" id="id38">*</span></a>account&gt;/&lt;access_type&gt;</p>
</dd>
<dt>Switch:</dt><dd><p>del - delete given access type
view - view lock associated with given access type (default)</p>
</dd>
</dl>
<p>If no lockstring is given, shows all locks on
object.</p>
<dl class="simple">
<dt>Lockstring is of the form</dt><dd><p>access_type:[NOT] func1(args)[ AND|OR][ NOT] func2(args) …]</p>
</dd>
</dl>
<p>Where func1, func2 … valid lockfuncs with or without arguments.
Separator expressions need not be capitalized.</p>
<dl class="simple">
<dt>For example:</dt><dd><p>get: id(25) or perm(Admin)</p>
</dd>
</dl>
<p>The get lock access_type is checked e.g. by the get command.
An object locked with this example lock will only be possible to pick up
by Admins or by an object with id=25.</p>
<p>You can add several access_types after one another by separating
them by ;, i.e:</p>
<blockquote>
<div><p>get:id(25); delete:perm(Builder)</p>
</div></blockquote>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdLock.key">
<span class="sig-name descname"><span class="pre">key</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'&#64;lock'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdLock.key" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdLock.aliases">
<span class="sig-name descname"><span class="pre">aliases</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">['&#64;locks']</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdLock.aliases" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdLock.locks">
<span class="sig-name descname"><span class="pre">locks</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'cmd:all();cmd:</span> <span class="pre">perm(locks)</span> <span class="pre">or</span> <span class="pre">perm(Builder)'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdLock.locks" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdLock.help_category">
<span class="sig-name descname"><span class="pre">help_category</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'building'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdLock.help_category" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdLock.func">
<span class="sig-name descname"><span class="pre">func</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdLock.func"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdLock.func" title="Link to this definition"></a></dt>
<dd><p>Sets up the command</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdLock.lock_storage">
<span class="sig-name descname"><span class="pre">lock_storage</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'cmd:all();cmd:</span> <span class="pre">perm(locks)</span> <span class="pre">or</span> <span class="pre">perm(Builder)'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdLock.lock_storage" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdLock.search_index_entry">
<span class="sig-name descname"><span class="pre">search_index_entry</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">{'aliases':</span> <span class="pre">'&#64;locks',</span> <span class="pre">'category':</span> <span class="pre">'building',</span> <span class="pre">'key':</span> <span class="pre">'&#64;lock',</span> <span class="pre">'no_prefix':</span> <span class="pre">'lock</span> <span class="pre">locks',</span> <span class="pre">'tags':</span> <span class="pre">'',</span> <span class="pre">'text':</span> <span class="pre">&quot;\nassign</span> <span class="pre">a</span> <span class="pre">lock</span> <span class="pre">definition</span> <span class="pre">to</span> <span class="pre">an</span> <span class="pre">object\n\nUsage:\n</span>&#160; <span class="pre">lock</span> <span class="pre">&lt;object</span> <span class="pre">or</span> <span class="pre">*account&gt;[</span> <span class="pre">=</span> <span class="pre">&lt;lockstring&gt;]\n</span>&#160; <span class="pre">or\n</span>&#160; <span class="pre">lock[/switch]</span> <span class="pre">&lt;object</span> <span class="pre">or</span> <span class="pre">*account&gt;/&lt;access_type&gt;\n\nSwitch:\n</span>&#160; <span class="pre">del</span> <span class="pre">-</span> <span class="pre">delete</span> <span class="pre">given</span> <span class="pre">access</span> <span class="pre">type\n</span>&#160; <span class="pre">view</span> <span class="pre">-</span> <span class="pre">view</span> <span class="pre">lock</span> <span class="pre">associated</span> <span class="pre">with</span> <span class="pre">given</span> <span class="pre">access</span> <span class="pre">type</span> <span class="pre">(default)\n\nIf</span> <span class="pre">no</span> <span class="pre">lockstring</span> <span class="pre">is</span> <span class="pre">given,</span> <span class="pre">shows</span> <span class="pre">all</span> <span class="pre">locks</span> <span class="pre">on\nobject.\n\nLockstring</span> <span class="pre">is</span> <span class="pre">of</span> <span class="pre">the</span> <span class="pre">form\n</span>&#160;&#160; <span class="pre">access_type:[NOT]</span> <span class="pre">func1(args)[</span> <span class="pre">AND|OR][</span> <span class="pre">NOT]</span> <span class="pre">func2(args)</span> <span class="pre">...]\nWhere</span> <span class="pre">func1,</span> <span class="pre">func2</span> <span class="pre">...</span> <span class="pre">valid</span> <span class="pre">lockfuncs</span> <span class="pre">with</span> <span class="pre">or</span> <span class="pre">without</span> <span class="pre">arguments.\nSeparator</span> <span class="pre">expressions</span> <span class="pre">need</span> <span class="pre">not</span> <span class="pre">be</span> <span class="pre">capitalized.\n\nFor</span> <span class="pre">example:\n</span>&#160;&#160; <span class="pre">'get:</span> <span class="pre">id(25)</span> <span class="pre">or</span> <span class="pre">perm(Admin)'\nThe</span> <span class="pre">'get'</span> <span class="pre">lock</span> <span class="pre">access_type</span> <span class="pre">is</span> <span class="pre">checked</span> <span class="pre">e.g.</span> <span class="pre">by</span> <span class="pre">the</span> <span class="pre">'get'</span> <span class="pre">command.\nAn</span> <span class="pre">object</span> <span class="pre">locked</span> <span class="pre">with</span> <span class="pre">this</span> <span class="pre">example</span> <span class="pre">lock</span> <span class="pre">will</span> <span class="pre">only</span> <span class="pre">be</span> <span class="pre">possible</span> <span class="pre">to</span> <span class="pre">pick</span> <span class="pre">up\nby</span> <span class="pre">Admins</span> <span class="pre">or</span> <span class="pre">by</span> <span class="pre">an</span> <span class="pre">object</span> <span class="pre">with</span> <span class="pre">id=25.\n\nYou</span> <span class="pre">can</span> <span class="pre">add</span> <span class="pre">several</span> <span class="pre">access_types</span> <span class="pre">after</span> <span class="pre">one</span> <span class="pre">another</span> <span class="pre">by</span> <span class="pre">separating\nthem</span> <span class="pre">by</span> <span class="pre">';',</span> <span class="pre">i.e:\n</span>&#160;&#160; <span class="pre">'get:id(25);</span> <span class="pre">delete:perm(Builder)'\n&quot;}</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdLock.search_index_entry" title="Link to this definition"></a></dt>
<dd></dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdExamine">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">evennia.commands.default.building.</span></span><span class="sig-name descname"><span class="pre">CmdExamine</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdExamine"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdExamine" title="Link to this definition"></a></dt>
<dd><p>Bases: <a class="reference internal" href="#evennia.commands.default.building.ObjManipCommand" title="evennia.commands.default.building.ObjManipCommand"><code class="xref py py-class docutils literal notranslate"><span class="pre">ObjManipCommand</span></code></a></p>
<p>get detailed information about an object</p>
<dl class="simple">
<dt>Usage:</dt><dd><p>examine [&lt;object&gt;[/attrname]]
examine [<a href="#id39"><span class="problematic" id="id40">*</span></a>&lt;account&gt;[/attrname]]</p>
</dd>
<dt>Switch:</dt><dd><p>account - examine an Account (same as adding <a href="#id41"><span class="problematic" id="id42">*</span></a>)
object - examine an Object (useful when OOC)
script - examine a Script
channel - examine a Channel</p>
</dd>
</dl>
<p>The examine command shows detailed game info about an
object and optionally a specific attribute on it.
If object is not specified, the current location is examined.</p>
<p>Append a * before the search string to examine an account.</p>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdExamine.key">
<span class="sig-name descname"><span class="pre">key</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'&#64;examine'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdExamine.key" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdExamine.aliases">
<span class="sig-name descname"><span class="pre">aliases</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">['&#64;exam',</span> <span class="pre">'&#64;ex']</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdExamine.aliases" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdExamine.locks">
<span class="sig-name descname"><span class="pre">locks</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'cmd:perm(examine)</span> <span class="pre">or</span> <span class="pre">perm(Builder)'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdExamine.locks" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdExamine.help_category">
<span class="sig-name descname"><span class="pre">help_category</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'building'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdExamine.help_category" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdExamine.arg_regex">
<span class="sig-name descname"><span class="pre">arg_regex</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">re.compile('(/\\w+?(\\s|$))|\\s|$',</span> <span class="pre">re.IGNORECASE)</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdExamine.arg_regex" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdExamine.switch_options">
<span class="sig-name descname"><span class="pre">switch_options</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">['account',</span> <span class="pre">'object',</span> <span class="pre">'script',</span> <span class="pre">'channel']</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdExamine.switch_options" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdExamine.object_type">
<span class="sig-name descname"><span class="pre">object_type</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'object'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdExamine.object_type" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdExamine.detail_color">
<span class="sig-name descname"><span class="pre">detail_color</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'|c'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdExamine.detail_color" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdExamine.header_color">
<span class="sig-name descname"><span class="pre">header_color</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'|w'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdExamine.header_color" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdExamine.quell_color">
<span class="sig-name descname"><span class="pre">quell_color</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'|r'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdExamine.quell_color" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdExamine.separator">
<span class="sig-name descname"><span class="pre">separator</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'-'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdExamine.separator" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdExamine.msg">
<span class="sig-name descname"><span class="pre">msg</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">text</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdExamine.msg"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdExamine.msg" title="Link to this definition"></a></dt>
<dd><p>Central point for sending messages to the caller. This tags
the message as examine for eventual custom markup in the client.</p>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdExamine.text">
<span class="sig-name descname"><span class="pre">text</span></span><a class="headerlink" href="#evennia.commands.default.building.CmdExamine.text" title="Link to this definition"></a></dt>
<dd><p>The text to send.</p>
<dl class="field-list simple">
<dt class="field-odd">Type<span class="colon">:</span></dt>
<dd class="field-odd"><p>str</p>
</dd>
</dl>
</dd></dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdExamine.format_key">
<span class="sig-name descname"><span class="pre">format_key</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">obj</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdExamine.format_key"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdExamine.format_key" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdExamine.format_aliases">
<span class="sig-name descname"><span class="pre">format_aliases</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">obj</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdExamine.format_aliases"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdExamine.format_aliases" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdExamine.format_typeclass">
<span class="sig-name descname"><span class="pre">format_typeclass</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">obj</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdExamine.format_typeclass"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdExamine.format_typeclass" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdExamine.format_sessions">
<span class="sig-name descname"><span class="pre">format_sessions</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">obj</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdExamine.format_sessions"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdExamine.format_sessions" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdExamine.format_email">
<span class="sig-name descname"><span class="pre">format_email</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">obj</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdExamine.format_email"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdExamine.format_email" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdExamine.format_last_login">
<span class="sig-name descname"><span class="pre">format_last_login</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">obj</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdExamine.format_last_login"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdExamine.format_last_login" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdExamine.format_account_key">
<span class="sig-name descname"><span class="pre">format_account_key</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">account</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdExamine.format_account_key"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdExamine.format_account_key" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdExamine.format_account_typeclass">
<span class="sig-name descname"><span class="pre">format_account_typeclass</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">account</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdExamine.format_account_typeclass"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdExamine.format_account_typeclass" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdExamine.format_account_permissions">
<span class="sig-name descname"><span class="pre">format_account_permissions</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">account</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdExamine.format_account_permissions"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdExamine.format_account_permissions" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdExamine.format_location">
<span class="sig-name descname"><span class="pre">format_location</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">obj</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdExamine.format_location"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdExamine.format_location" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdExamine.format_home">
<span class="sig-name descname"><span class="pre">format_home</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">obj</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdExamine.format_home"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdExamine.format_home" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdExamine.format_destination">
<span class="sig-name descname"><span class="pre">format_destination</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">obj</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdExamine.format_destination"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdExamine.format_destination" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdExamine.format_permissions">
<span class="sig-name descname"><span class="pre">format_permissions</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">obj</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdExamine.format_permissions"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdExamine.format_permissions" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdExamine.format_locks">
<span class="sig-name descname"><span class="pre">format_locks</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">obj</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdExamine.format_locks"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdExamine.format_locks" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdExamine.format_scripts">
<span class="sig-name descname"><span class="pre">format_scripts</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">obj</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdExamine.format_scripts"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdExamine.format_scripts" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdExamine.format_single_tag">
<span class="sig-name descname"><span class="pre">format_single_tag</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">tag</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdExamine.format_single_tag"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdExamine.format_single_tag" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdExamine.format_tags">
<span class="sig-name descname"><span class="pre">format_tags</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">obj</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdExamine.format_tags"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdExamine.format_tags" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdExamine.format_single_cmdset_options">
<span class="sig-name descname"><span class="pre">format_single_cmdset_options</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">cmdset</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdExamine.format_single_cmdset_options"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdExamine.format_single_cmdset_options" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdExamine.format_single_cmdset">
<span class="sig-name descname"><span class="pre">format_single_cmdset</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">cmdset</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdExamine.format_single_cmdset"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdExamine.format_single_cmdset" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdExamine.format_stored_cmdsets">
<span class="sig-name descname"><span class="pre">format_stored_cmdsets</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">obj</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdExamine.format_stored_cmdsets"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdExamine.format_stored_cmdsets" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdExamine.format_merged_cmdsets">
<span class="sig-name descname"><span class="pre">format_merged_cmdsets</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">obj</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">current_cmdset</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdExamine.format_merged_cmdsets"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdExamine.format_merged_cmdsets" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdExamine.format_current_cmds">
<span class="sig-name descname"><span class="pre">format_current_cmds</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">obj</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">current_cmdset</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdExamine.format_current_cmds"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdExamine.format_current_cmds" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdExamine.format_single_attribute_detail">
<span class="sig-name descname"><span class="pre">format_single_attribute_detail</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">obj</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">attr</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdExamine.format_single_attribute_detail"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdExamine.format_single_attribute_detail" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdExamine.format_single_attribute">
<span class="sig-name descname"><span class="pre">format_single_attribute</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">attr</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdExamine.format_single_attribute"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdExamine.format_single_attribute" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdExamine.format_attributes">
<span class="sig-name descname"><span class="pre">format_attributes</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">obj</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdExamine.format_attributes"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdExamine.format_attributes" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdExamine.format_nattributes">
<span class="sig-name descname"><span class="pre">format_nattributes</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">obj</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdExamine.format_nattributes"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdExamine.format_nattributes" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdExamine.format_exits">
<span class="sig-name descname"><span class="pre">format_exits</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">obj</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdExamine.format_exits"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdExamine.format_exits" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdExamine.format_chars">
<span class="sig-name descname"><span class="pre">format_chars</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">obj</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdExamine.format_chars"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdExamine.format_chars" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdExamine.format_things">
<span class="sig-name descname"><span class="pre">format_things</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">obj</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdExamine.format_things"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdExamine.format_things" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdExamine.format_script_desc">
<span class="sig-name descname"><span class="pre">format_script_desc</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">obj</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdExamine.format_script_desc"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdExamine.format_script_desc" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdExamine.format_script_is_persistent">
<span class="sig-name descname"><span class="pre">format_script_is_persistent</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">obj</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdExamine.format_script_is_persistent"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdExamine.format_script_is_persistent" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdExamine.format_script_timer_data">
<span class="sig-name descname"><span class="pre">format_script_timer_data</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">obj</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdExamine.format_script_timer_data"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdExamine.format_script_timer_data" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdExamine.format_channel_sub_totals">
<span class="sig-name descname"><span class="pre">format_channel_sub_totals</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">obj</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdExamine.format_channel_sub_totals"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdExamine.format_channel_sub_totals" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdExamine.format_channel_account_subs">
<span class="sig-name descname"><span class="pre">format_channel_account_subs</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">obj</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdExamine.format_channel_account_subs"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdExamine.format_channel_account_subs" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdExamine.format_channel_object_subs">
<span class="sig-name descname"><span class="pre">format_channel_object_subs</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">obj</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdExamine.format_channel_object_subs"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdExamine.format_channel_object_subs" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdExamine.get_formatted_obj_data">
<span class="sig-name descname"><span class="pre">get_formatted_obj_data</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">obj</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">current_cmdset</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdExamine.get_formatted_obj_data"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdExamine.get_formatted_obj_data" title="Link to this definition"></a></dt>
<dd><p>Calls all other <strong>format_*</strong> methods.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdExamine.format_output">
<span class="sig-name descname"><span class="pre">format_output</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">obj</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">current_cmdset</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdExamine.format_output"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdExamine.format_output" title="Link to this definition"></a></dt>
<dd><p>Formats the full examine page return.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdExamine.parse">
<span class="sig-name descname"><span class="pre">parse</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdExamine.parse"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdExamine.parse" title="Link to this definition"></a></dt>
<dd><p>We need to expand the default parsing to get all
the cases, see the module doc.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdExamine.func">
<span class="sig-name descname"><span class="pre">func</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdExamine.func"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdExamine.func" title="Link to this definition"></a></dt>
<dd><p>Process command</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdExamine.lock_storage">
<span class="sig-name descname"><span class="pre">lock_storage</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'cmd:perm(examine)</span> <span class="pre">or</span> <span class="pre">perm(Builder)'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdExamine.lock_storage" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdExamine.search_index_entry">
<span class="sig-name descname"><span class="pre">search_index_entry</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">{'aliases':</span> <span class="pre">'&#64;exam</span> <span class="pre">&#64;ex',</span> <span class="pre">'category':</span> <span class="pre">'building',</span> <span class="pre">'key':</span> <span class="pre">'&#64;examine',</span> <span class="pre">'no_prefix':</span> <span class="pre">'examine</span> <span class="pre">exam</span> <span class="pre">ex',</span> <span class="pre">'tags':</span> <span class="pre">'',</span> <span class="pre">'text':</span> <span class="pre">'\nget</span> <span class="pre">detailed</span> <span class="pre">information</span> <span class="pre">about</span> <span class="pre">an</span> <span class="pre">object\n\nUsage:\n</span>&#160; <span class="pre">examine</span> <span class="pre">[&lt;object&gt;[/attrname]]\n</span>&#160; <span class="pre">examine</span> <span class="pre">[*&lt;account&gt;[/attrname]]\n\nSwitch:\n</span>&#160; <span class="pre">account</span> <span class="pre">-</span> <span class="pre">examine</span> <span class="pre">an</span> <span class="pre">Account</span> <span class="pre">(same</span> <span class="pre">as</span> <span class="pre">adding</span> <span class="pre">*)\n</span>&#160; <span class="pre">object</span> <span class="pre">-</span> <span class="pre">examine</span> <span class="pre">an</span> <span class="pre">Object</span> <span class="pre">(useful</span> <span class="pre">when</span> <span class="pre">OOC)\n</span>&#160; <span class="pre">script</span> <span class="pre">-</span> <span class="pre">examine</span> <span class="pre">a</span> <span class="pre">Script\n</span>&#160; <span class="pre">channel</span> <span class="pre">-</span> <span class="pre">examine</span> <span class="pre">a</span> <span class="pre">Channel\n\nThe</span> <span class="pre">examine</span> <span class="pre">command</span> <span class="pre">shows</span> <span class="pre">detailed</span> <span class="pre">game</span> <span class="pre">info</span> <span class="pre">about</span> <span class="pre">an\nobject</span> <span class="pre">and</span> <span class="pre">optionally</span> <span class="pre">a</span> <span class="pre">specific</span> <span class="pre">attribute</span> <span class="pre">on</span> <span class="pre">it.\nIf</span> <span class="pre">object</span> <span class="pre">is</span> <span class="pre">not</span> <span class="pre">specified,</span> <span class="pre">the</span> <span class="pre">current</span> <span class="pre">location</span> <span class="pre">is</span> <span class="pre">examined.\n\nAppend</span> <span class="pre">a</span> <span class="pre">*</span> <span class="pre">before</span> <span class="pre">the</span> <span class="pre">search</span> <span class="pre">string</span> <span class="pre">to</span> <span class="pre">examine</span> <span class="pre">an</span> <span class="pre">account.\n\n'}</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdExamine.search_index_entry" title="Link to this definition"></a></dt>
<dd></dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdFind">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">evennia.commands.default.building.</span></span><span class="sig-name descname"><span class="pre">CmdFind</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdFind"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdFind" title="Link to this definition"></a></dt>
<dd><p>Bases: <a class="reference internal" href="evennia.commands.default.muxcommand.html#evennia.commands.default.muxcommand.MuxCommand" title="evennia.commands.default.muxcommand.MuxCommand"><code class="xref py py-class docutils literal notranslate"><span class="pre">MuxCommand</span></code></a></p>
<p>search the database for objects</p>
<dl class="simple">
<dt>Usage:</dt><dd><p>find[/switches] &lt;name or dbref or <a href="#id43"><span class="problematic" id="id44">*</span></a>account&gt; [= dbrefmin[-dbrefmax]]
locate - this is a shorthand for using the /loc switch.</p>
</dd>
<dt>Switches:</dt><dd><p>room - only look for rooms (location=None)
exit - only look for exits (destination!=None)
char - only look for characters (BASE_CHARACTER_TYPECLASS)
exact - only exact matches are returned.
loc - display object location if exists and match has one result
startswith - search for names starting with the string, rather than containing</p>
</dd>
</dl>
<p>Searches the database for an object of a particular name or exact #dbref.
Use <a href="#id45"><span class="problematic" id="id46">*</span></a>accountname to search for an account. The switches allows for
limiting object matches to certain game entities. Dbrefmin and dbrefmax
limits matches to within the given dbrefs range, or above/below if only
one is given.</p>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdFind.key">
<span class="sig-name descname"><span class="pre">key</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'&#64;find'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdFind.key" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdFind.aliases">
<span class="sig-name descname"><span class="pre">aliases</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">['&#64;locate',</span> <span class="pre">'&#64;search']</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdFind.aliases" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdFind.switch_options">
<span class="sig-name descname"><span class="pre">switch_options</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">('room',</span> <span class="pre">'exit',</span> <span class="pre">'char',</span> <span class="pre">'exact',</span> <span class="pre">'loc',</span> <span class="pre">'startswith')</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdFind.switch_options" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdFind.locks">
<span class="sig-name descname"><span class="pre">locks</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'cmd:perm(find)</span> <span class="pre">or</span> <span class="pre">perm(Builder)'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdFind.locks" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdFind.help_category">
<span class="sig-name descname"><span class="pre">help_category</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'building'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdFind.help_category" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdFind.func">
<span class="sig-name descname"><span class="pre">func</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdFind.func"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdFind.func" title="Link to this definition"></a></dt>
<dd><p>Search functionality</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdFind.lock_storage">
<span class="sig-name descname"><span class="pre">lock_storage</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'cmd:perm(find)</span> <span class="pre">or</span> <span class="pre">perm(Builder)'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdFind.lock_storage" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdFind.search_index_entry">
<span class="sig-name descname"><span class="pre">search_index_entry</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">{'aliases':</span> <span class="pre">'&#64;locate</span> <span class="pre">&#64;search',</span> <span class="pre">'category':</span> <span class="pre">'building',</span> <span class="pre">'key':</span> <span class="pre">'&#64;find',</span> <span class="pre">'no_prefix':</span> <span class="pre">'find</span> <span class="pre">locate</span> <span class="pre">search',</span> <span class="pre">'tags':</span> <span class="pre">'',</span> <span class="pre">'text':</span> <span class="pre">'\nsearch</span> <span class="pre">the</span> <span class="pre">database</span> <span class="pre">for</span> <span class="pre">objects\n\nUsage:\n</span>&#160; <span class="pre">find[/switches]</span> <span class="pre">&lt;name</span> <span class="pre">or</span> <span class="pre">dbref</span> <span class="pre">or</span> <span class="pre">*account&gt;</span> <span class="pre">[=</span> <span class="pre">dbrefmin[-dbrefmax]]\n</span>&#160; <span class="pre">locate</span> <span class="pre">-</span> <span class="pre">this</span> <span class="pre">is</span> <span class="pre">a</span> <span class="pre">shorthand</span> <span class="pre">for</span> <span class="pre">using</span> <span class="pre">the</span> <span class="pre">/loc</span> <span class="pre">switch.\n\nSwitches:\n</span>&#160; <span class="pre">room</span>&#160;&#160;&#160;&#160;&#160;&#160; <span class="pre">-</span> <span class="pre">only</span> <span class="pre">look</span> <span class="pre">for</span> <span class="pre">rooms</span> <span class="pre">(location=None)\n</span>&#160; <span class="pre">exit</span>&#160;&#160;&#160;&#160;&#160;&#160; <span class="pre">-</span> <span class="pre">only</span> <span class="pre">look</span> <span class="pre">for</span> <span class="pre">exits</span> <span class="pre">(destination!=None)\n</span>&#160; <span class="pre">char</span>&#160;&#160;&#160;&#160;&#160;&#160; <span class="pre">-</span> <span class="pre">only</span> <span class="pre">look</span> <span class="pre">for</span> <span class="pre">characters</span> <span class="pre">(BASE_CHARACTER_TYPECLASS)\n</span>&#160; <span class="pre">exact</span>&#160;&#160;&#160;&#160;&#160; <span class="pre">-</span> <span class="pre">only</span> <span class="pre">exact</span> <span class="pre">matches</span> <span class="pre">are</span> <span class="pre">returned.\n</span>&#160; <span class="pre">loc</span>&#160;&#160;&#160;&#160;&#160;&#160;&#160; <span class="pre">-</span> <span class="pre">display</span> <span class="pre">object</span> <span class="pre">location</span> <span class="pre">if</span> <span class="pre">exists</span> <span class="pre">and</span> <span class="pre">match</span> <span class="pre">has</span> <span class="pre">one</span> <span class="pre">result\n</span>&#160; <span class="pre">startswith</span> <span class="pre">-</span> <span class="pre">search</span> <span class="pre">for</span> <span class="pre">names</span> <span class="pre">starting</span> <span class="pre">with</span> <span class="pre">the</span> <span class="pre">string,</span> <span class="pre">rather</span> <span class="pre">than</span> <span class="pre">containing\n\nSearches</span> <span class="pre">the</span> <span class="pre">database</span> <span class="pre">for</span> <span class="pre">an</span> <span class="pre">object</span> <span class="pre">of</span> <span class="pre">a</span> <span class="pre">particular</span> <span class="pre">name</span> <span class="pre">or</span> <span class="pre">exact</span> <span class="pre">#dbref.\nUse</span> <span class="pre">*accountname</span> <span class="pre">to</span> <span class="pre">search</span> <span class="pre">for</span> <span class="pre">an</span> <span class="pre">account.</span> <span class="pre">The</span> <span class="pre">switches</span> <span class="pre">allows</span> <span class="pre">for\nlimiting</span> <span class="pre">object</span> <span class="pre">matches</span> <span class="pre">to</span> <span class="pre">certain</span> <span class="pre">game</span> <span class="pre">entities.</span> <span class="pre">Dbrefmin</span> <span class="pre">and</span> <span class="pre">dbrefmax\nlimits</span> <span class="pre">matches</span> <span class="pre">to</span> <span class="pre">within</span> <span class="pre">the</span> <span class="pre">given</span> <span class="pre">dbrefs</span> <span class="pre">range,</span> <span class="pre">or</span> <span class="pre">above/below</span> <span class="pre">if</span> <span class="pre">only\none</span> <span class="pre">is</span> <span class="pre">given.\n'}</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdFind.search_index_entry" title="Link to this definition"></a></dt>
<dd></dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdTeleport">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">evennia.commands.default.building.</span></span><span class="sig-name descname"><span class="pre">CmdTeleport</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdTeleport"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdTeleport" title="Link to this definition"></a></dt>
<dd><p>Bases: <a class="reference internal" href="evennia.commands.default.muxcommand.html#evennia.commands.default.muxcommand.MuxCommand" title="evennia.commands.default.muxcommand.MuxCommand"><code class="xref py py-class docutils literal notranslate"><span class="pre">MuxCommand</span></code></a></p>
<p>teleport object to another location</p>
<dl class="simple">
<dt>Usage:</dt><dd><p>tel/switch [&lt;object&gt; to||=] &lt;target location&gt;</p>
</dd>
</dl>
<p class="rubric">Examples</p>
<p>tel Limbo
tel/quiet box = Limbo
tel/tonone box</p>
<dl>
<dt>Switches:</dt><dd><dl class="simple">
<dt>quiet - dont echo leave/arrive messages to the source/target</dt><dd><p>locations for the move.</p>
</dd>
<dt>intoexit - if target is an exit, teleport INTO</dt><dd><p>the exit object instead of to its destination</p>
</dd>
<dt>tonone - if set, teleport the object to a None-location. If this</dt><dd><p>switch is set, &lt;target location&gt; is ignored.
Note that the only way to retrieve
an object from a None location is by direct #dbref
reference. A puppeted object cannot be moved to None.</p>
</dd>
</dl>
<p>loc - teleport object to the targets location instead of its contents</p>
</dd>
</dl>
<p>Teleports an object somewhere. If no object is given, you yourself are
teleported to the target location.</p>
<p>To lock an object from being teleported, set its <strong>teleport</strong> lock, it will be
checked with the caller. To block
a destination from being teleported to, set the destinations <strong>teleport_here</strong>
lock - it will be checked with the thing being teleported. Admins and
higher permissions can always teleport.</p>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdTeleport.key">
<span class="sig-name descname"><span class="pre">key</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'&#64;teleport'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdTeleport.key" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdTeleport.aliases">
<span class="sig-name descname"><span class="pre">aliases</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">['&#64;tel']</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdTeleport.aliases" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdTeleport.switch_options">
<span class="sig-name descname"><span class="pre">switch_options</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">('quiet',</span> <span class="pre">'intoexit',</span> <span class="pre">'tonone',</span> <span class="pre">'loc')</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdTeleport.switch_options" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdTeleport.rhs_split">
<span class="sig-name descname"><span class="pre">rhs_split</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">('=',</span> <span class="pre">'</span> <span class="pre">to</span> <span class="pre">')</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdTeleport.rhs_split" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdTeleport.locks">
<span class="sig-name descname"><span class="pre">locks</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'cmd:perm(teleport)</span> <span class="pre">or</span> <span class="pre">perm(Builder)'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdTeleport.locks" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdTeleport.help_category">
<span class="sig-name descname"><span class="pre">help_category</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'building'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdTeleport.help_category" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdTeleport.parse">
<span class="sig-name descname"><span class="pre">parse</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdTeleport.parse"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdTeleport.parse" title="Link to this definition"></a></dt>
<dd><p>Breaking out searching here to make this easier to override.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdTeleport.func">
<span class="sig-name descname"><span class="pre">func</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdTeleport.func"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdTeleport.func" title="Link to this definition"></a></dt>
<dd><p>Performs the teleport</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdTeleport.lock_storage">
<span class="sig-name descname"><span class="pre">lock_storage</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'cmd:perm(teleport)</span> <span class="pre">or</span> <span class="pre">perm(Builder)'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdTeleport.lock_storage" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdTeleport.search_index_entry">
<span class="sig-name descname"><span class="pre">search_index_entry</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">{'aliases':</span> <span class="pre">'&#64;tel',</span> <span class="pre">'category':</span> <span class="pre">'building',</span> <span class="pre">'key':</span> <span class="pre">'&#64;teleport',</span> <span class="pre">'no_prefix':</span> <span class="pre">'teleport</span> <span class="pre">tel',</span> <span class="pre">'tags':</span> <span class="pre">'',</span> <span class="pre">'text':</span> <span class="pre">&quot;\nteleport</span> <span class="pre">object</span> <span class="pre">to</span> <span class="pre">another</span> <span class="pre">location\n\nUsage:\n</span>&#160; <span class="pre">tel/switch</span> <span class="pre">[&lt;object&gt;</span> <span class="pre">to||=]</span> <span class="pre">&lt;target</span> <span class="pre">location&gt;\n\nExamples:\n</span>&#160; <span class="pre">tel</span> <span class="pre">Limbo\n</span>&#160; <span class="pre">tel/quiet</span> <span class="pre">box</span> <span class="pre">=</span> <span class="pre">Limbo\n</span>&#160; <span class="pre">tel/tonone</span> <span class="pre">box\n\nSwitches:\n</span>&#160; <span class="pre">quiet</span>&#160; <span class="pre">-</span> <span class="pre">don't</span> <span class="pre">echo</span> <span class="pre">leave/arrive</span> <span class="pre">messages</span> <span class="pre">to</span> <span class="pre">the</span> <span class="pre">source/target\n</span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; <span class="pre">locations</span> <span class="pre">for</span> <span class="pre">the</span> <span class="pre">move.\n</span>&#160; <span class="pre">intoexit</span> <span class="pre">-</span> <span class="pre">if</span> <span class="pre">target</span> <span class="pre">is</span> <span class="pre">an</span> <span class="pre">exit,</span> <span class="pre">teleport</span> <span class="pre">INTO\n</span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; <span class="pre">the</span> <span class="pre">exit</span> <span class="pre">object</span> <span class="pre">instead</span> <span class="pre">of</span> <span class="pre">to</span> <span class="pre">its</span> <span class="pre">destination\n</span>&#160; <span class="pre">tonone</span> <span class="pre">-</span> <span class="pre">if</span> <span class="pre">set,</span> <span class="pre">teleport</span> <span class="pre">the</span> <span class="pre">object</span> <span class="pre">to</span> <span class="pre">a</span> <span class="pre">None-location.</span> <span class="pre">If</span> <span class="pre">this\n</span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; <span class="pre">switch</span> <span class="pre">is</span> <span class="pre">set,</span> <span class="pre">&lt;target</span> <span class="pre">location&gt;</span> <span class="pre">is</span> <span class="pre">ignored.\n</span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; <span class="pre">Note</span> <span class="pre">that</span> <span class="pre">the</span> <span class="pre">only</span> <span class="pre">way</span> <span class="pre">to</span> <span class="pre">retrieve\n</span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; <span class="pre">an</span> <span class="pre">object</span> <span class="pre">from</span> <span class="pre">a</span> <span class="pre">None</span> <span class="pre">location</span> <span class="pre">is</span> <span class="pre">by</span> <span class="pre">direct</span> <span class="pre">#dbref\n</span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; <span class="pre">reference.</span> <span class="pre">A</span> <span class="pre">puppeted</span> <span class="pre">object</span> <span class="pre">cannot</span> <span class="pre">be</span> <span class="pre">moved</span> <span class="pre">to</span> <span class="pre">None.\n</span>&#160; <span class="pre">loc</span> <span class="pre">-</span> <span class="pre">teleport</span> <span class="pre">object</span> <span class="pre">to</span> <span class="pre">the</span> <span class="pre">target's</span> <span class="pre">location</span> <span class="pre">instead</span> <span class="pre">of</span> <span class="pre">its</span> <span class="pre">contents\n\nTeleports</span> <span class="pre">an</span> <span class="pre">object</span> <span class="pre">somewhere.</span> <span class="pre">If</span> <span class="pre">no</span> <span class="pre">object</span> <span class="pre">is</span> <span class="pre">given,</span> <span class="pre">you</span> <span class="pre">yourself</span> <span class="pre">are\nteleported</span> <span class="pre">to</span> <span class="pre">the</span> <span class="pre">target</span> <span class="pre">location.\n\nTo</span> <span class="pre">lock</span> <span class="pre">an</span> <span class="pre">object</span> <span class="pre">from</span> <span class="pre">being</span> <span class="pre">teleported,</span> <span class="pre">set</span> <span class="pre">its</span> <span class="pre">`teleport`</span> <span class="pre">lock,</span> <span class="pre">it</span> <span class="pre">will</span> <span class="pre">be\nchecked</span> <span class="pre">with</span> <span class="pre">the</span> <span class="pre">caller.</span> <span class="pre">To</span> <span class="pre">block\na</span> <span class="pre">destination</span> <span class="pre">from</span> <span class="pre">being</span> <span class="pre">teleported</span> <span class="pre">to,</span> <span class="pre">set</span> <span class="pre">the</span> <span class="pre">destination's</span> <span class="pre">`teleport_here`\nlock</span> <span class="pre">-</span> <span class="pre">it</span> <span class="pre">will</span> <span class="pre">be</span> <span class="pre">checked</span> <span class="pre">with</span> <span class="pre">the</span> <span class="pre">thing</span> <span class="pre">being</span> <span class="pre">teleported.</span> <span class="pre">Admins</span> <span class="pre">and\nhigher</span> <span class="pre">permissions</span> <span class="pre">can</span> <span class="pre">always</span> <span class="pre">teleport.\n\n&quot;}</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdTeleport.search_index_entry" title="Link to this definition"></a></dt>
<dd></dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdScripts">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">evennia.commands.default.building.</span></span><span class="sig-name descname"><span class="pre">CmdScripts</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdScripts"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdScripts" title="Link to this definition"></a></dt>
<dd><p>Bases: <a class="reference internal" href="evennia.commands.default.muxcommand.html#evennia.commands.default.muxcommand.MuxCommand" title="evennia.commands.default.muxcommand.MuxCommand"><code class="xref py py-class docutils literal notranslate"><span class="pre">MuxCommand</span></code></a></p>
<p>List and manage all running scripts. Allows for creating new global
scripts.</p>
<dl class="simple">
<dt>Usage:</dt><dd><p>script[/switches] [script-#dbref, key, script.path]
script[/start||stop] &lt;obj&gt; = [&lt;script.path or script-key&gt;]</p>
</dd>
<dt>Switches:</dt><dd><p>start - start/unpause an existing scripts timer.
stop - stops an existing scripts timer
pause - pause a scripts timer
delete - deletes script. This will also stop the timer as needed</p>
</dd>
</dl>
<p class="rubric">Examples</p>
<p>script - list all scripts
script key:foo.bar.Script - create a new global Script with typeclass</p>
<blockquote>
<div><p>and key key</p>
</div></blockquote>
<dl class="simple">
<dt>script foo.bar.Script - create a new global Script with typeclass</dt><dd><p>(key taken from typeclass or auto-generated)</p>
</dd>
</dl>
<p>script/pause foo.bar.Script - pause global script
script typeclass|name|#dbref - examine named existing global script
script/delete #dbref[-#dbref] - delete script or range by #dbref</p>
<p>script myobj = - list all scripts on object
script myobj = foo.bar.Script - create and assign script to object
script/stop myobj = name|#dbref - stop named script on object
script/delete myobj = name|#dbref - delete script on object
script/delete myobj = - delete ALL scripts on object</p>
<p>When given with an <strong>&lt;obj&gt;</strong> as left-hand-side, this creates and
assigns a new script to that object. Without an <strong>&lt;obj&gt;</strong>, this
manages and inspects global scripts.</p>
<p>If no switches are given, this command just views all active
scripts. The argument can be either an object, at which point it
will be searched for all scripts defined on it, or a script name
or #dbref. For using the /stop switch, a unique script #dbref is
required since whole classes of scripts often have the same name.</p>
<p>Use the <strong>script</strong> build-level command for managing scripts attached to
objects.</p>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdScripts.key">
<span class="sig-name descname"><span class="pre">key</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'&#64;scripts'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdScripts.key" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdScripts.aliases">
<span class="sig-name descname"><span class="pre">aliases</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">['&#64;script']</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdScripts.aliases" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdScripts.switch_options">
<span class="sig-name descname"><span class="pre">switch_options</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">('start',</span> <span class="pre">'stop',</span> <span class="pre">'pause',</span> <span class="pre">'delete')</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdScripts.switch_options" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdScripts.locks">
<span class="sig-name descname"><span class="pre">locks</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'cmd:perm(scripts)</span> <span class="pre">or</span> <span class="pre">perm(Builder)'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdScripts.locks" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdScripts.help_category">
<span class="sig-name descname"><span class="pre">help_category</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'system'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdScripts.help_category" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdScripts.excluded_typeclass_paths">
<span class="sig-name descname"><span class="pre">excluded_typeclass_paths</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">['evennia.prototypes.prototypes.DbPrototype']</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdScripts.excluded_typeclass_paths" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdScripts.switch_mapping">
<span class="sig-name descname"><span class="pre">switch_mapping</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">{'delete':</span> <span class="pre">'|rDeleted|n',</span> <span class="pre">'pause':</span> <span class="pre">'|Paused|n',</span> <span class="pre">'start':</span> <span class="pre">'|gStarted|n',</span> <span class="pre">'stop':</span> <span class="pre">'|RStopped|n'}</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdScripts.switch_mapping" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdScripts.hide_script_paths">
<span class="sig-name descname"><span class="pre">hide_script_paths</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">('evennia.prototypes.prototypes.DbPrototype',)</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdScripts.hide_script_paths" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdScripts.parse">
<span class="sig-name descname"><span class="pre">parse</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdScripts.parse"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdScripts.parse" title="Link to this definition"></a></dt>
<dd><p>This method is called by the cmdhandler once the command name
has been identified. It creates a new set of member variables
that can be later accessed from self.func() (see below)</p>
<p>The following variables are available for our use when entering this
method (from the command definition, and assigned on the fly by the
cmdhandler):</p>
<blockquote>
<div><p>self.key - the name of this command (look)
self.aliases - the aliases of this cmd (l)
self.permissions - permission string for this command
self.help_category - overall category of command</p>
<p>self.caller - the object calling this command
self.cmdstring - the actual command name used to call this</p>
<blockquote>
<div><dl class="simple">
<dt>(this allows you to know which alias was used,</dt><dd><p>for example)</p>
</dd>
</dl>
</div></blockquote>
<p>self.args - the raw input; everything following self.cmdstring.
self.cmdset - the cmdset from which this command was picked. Not</p>
<blockquote>
<div><p>often used (useful for commands like help or to
list all available commands etc)</p>
</div></blockquote>
<dl class="simple">
<dt>self.obj - the object on which this command was defined. It is often</dt><dd><p>the same as self.caller.</p>
</dd>
</dl>
</div></blockquote>
<p>A MUX command has the following possible syntax:</p>
<blockquote>
<div><p>name[ with several words][/switch[/switch..]] arg1[,arg2,…] [[=|,] arg[,..]]</p>
</div></blockquote>
<p>The name[ with several words] part is already dealt with by the
cmdhandler at this point, and stored in self.cmdname (we dont use
it here). The rest of the command is stored in self.args, which can
start with the switch indicator /.</p>
<dl class="simple">
<dt>Optional variables to aid in parsing, if set:</dt><dd><dl class="simple">
<dt>self.switch_options - (tuple of valid /switches expected by this</dt><dd><p>command (without the /))</p>
</dd>
<dt>self.rhs_split - Alternate string delimiter or tuple of strings</dt><dd><p>to separate left/right hand sides. tuple form
gives priority split to first string delimiter.</p>
</dd>
</dl>
</dd>
</dl>
<p>This parser breaks self.args into its constituents and stores them in the
following variables:</p>
<blockquote>
<div><p>self.switches = [list of /switches (without the /)]
self.raw = This is the raw argument input, including switches
self.args = This is re-defined to be everything <em>except</em> the switches
self.lhs = Everything to the left of = (lhs:left-hand side). If</p>
<blockquote>
<div><p>no = is found, this is identical to self.args.</p>
</div></blockquote>
<dl class="simple">
<dt>self.rhs: Everything to the right of = (rhs:right-hand side).</dt><dd><p>If no = is found, this is None.</p>
</dd>
</dl>
<p>self.lhslist - [self.lhs split into a list by comma]
self.rhslist - [list of self.rhs split into a list by comma]
self.arglist = [list of space-separated args (stripped, including = if it exists)]</p>
<p>All args and list members are stripped of excess whitespace around the
strings, but case is preserved.</p>
</div></blockquote>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdScripts.func">
<span class="sig-name descname"><span class="pre">func</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdScripts.func"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdScripts.func" title="Link to this definition"></a></dt>
<dd><p>implement method</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdScripts.lock_storage">
<span class="sig-name descname"><span class="pre">lock_storage</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'cmd:perm(scripts)</span> <span class="pre">or</span> <span class="pre">perm(Builder)'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdScripts.lock_storage" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdScripts.search_index_entry">
<span class="sig-name descname"><span class="pre">search_index_entry</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">{'aliases':</span> <span class="pre">'&#64;script',</span> <span class="pre">'category':</span> <span class="pre">'system',</span> <span class="pre">'key':</span> <span class="pre">'&#64;scripts',</span> <span class="pre">'no_prefix':</span> <span class="pre">'scripts</span> <span class="pre">script',</span> <span class="pre">'tags':</span> <span class="pre">'',</span> <span class="pre">'text':</span> <span class="pre">&quot;\nList</span> <span class="pre">and</span> <span class="pre">manage</span> <span class="pre">all</span> <span class="pre">running</span> <span class="pre">scripts.</span> <span class="pre">Allows</span> <span class="pre">for</span> <span class="pre">creating</span> <span class="pre">new</span> <span class="pre">global\nscripts.\n\nUsage:\n</span>&#160; <span class="pre">script[/switches]</span> <span class="pre">[script-#dbref,</span> <span class="pre">key,</span> <span class="pre">script.path]\n</span>&#160; <span class="pre">script[/start||stop]</span> <span class="pre">&lt;obj&gt;</span> <span class="pre">=</span> <span class="pre">[&lt;script.path</span> <span class="pre">or</span> <span class="pre">script-key&gt;]\n\nSwitches:\n</span>&#160; <span class="pre">start</span>&#160; <span class="pre">-</span> <span class="pre">start/unpause</span> <span class="pre">an</span> <span class="pre">existing</span> <span class="pre">script's</span> <span class="pre">timer.\n</span>&#160; <span class="pre">stop</span>&#160;&#160; <span class="pre">-</span> <span class="pre">stops</span> <span class="pre">an</span> <span class="pre">existing</span> <span class="pre">script's</span> <span class="pre">timer\n</span>&#160; <span class="pre">pause</span>&#160; <span class="pre">-</span> <span class="pre">pause</span> <span class="pre">a</span> <span class="pre">script's</span> <span class="pre">timer\n</span>&#160; <span class="pre">delete</span> <span class="pre">-</span> <span class="pre">deletes</span> <span class="pre">script.</span> <span class="pre">This</span> <span class="pre">will</span> <span class="pre">also</span> <span class="pre">stop</span> <span class="pre">the</span> <span class="pre">timer</span> <span class="pre">as</span> <span class="pre">needed\n\nExamples:\n</span>&#160;&#160;&#160; <span class="pre">script</span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; <span class="pre">-</span> <span class="pre">list</span> <span class="pre">all</span> <span class="pre">scripts\n</span>&#160;&#160;&#160; <span class="pre">script</span> <span class="pre">key:foo.bar.Script</span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; <span class="pre">-</span> <span class="pre">create</span> <span class="pre">a</span> <span class="pre">new</span> <span class="pre">global</span> <span class="pre">Script</span> <span class="pre">with</span> <span class="pre">typeclass\n</span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; <span class="pre">and</span> <span class="pre">key</span> <span class="pre">'key'\n</span>&#160;&#160;&#160; <span class="pre">script</span> <span class="pre">foo.bar.Script</span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; <span class="pre">-</span> <span class="pre">create</span> <span class="pre">a</span> <span class="pre">new</span> <span class="pre">global</span> <span class="pre">Script</span> <span class="pre">with</span> <span class="pre">typeclass\n</span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; <span class="pre">(key</span> <span class="pre">taken</span> <span class="pre">from</span> <span class="pre">typeclass</span> <span class="pre">or</span> <span class="pre">auto-generated)\n</span>&#160;&#160;&#160; <span class="pre">script/pause</span> <span class="pre">foo.bar.Script</span>&#160;&#160;&#160;&#160;&#160;&#160;&#160; <span class="pre">-</span> <span class="pre">pause</span> <span class="pre">global</span> <span class="pre">script\n</span>&#160;&#160;&#160; <span class="pre">script</span> <span class="pre">typeclass|name|#dbref</span>&#160;&#160;&#160;&#160;&#160;&#160; <span class="pre">-</span> <span class="pre">examine</span> <span class="pre">named</span> <span class="pre">existing</span> <span class="pre">global</span> <span class="pre">script\n</span>&#160;&#160;&#160; <span class="pre">script/delete</span> <span class="pre">#dbref[-#dbref]</span>&#160;&#160;&#160;&#160;&#160; <span class="pre">-</span> <span class="pre">delete</span> <span class="pre">script</span> <span class="pre">or</span> <span class="pre">range</span> <span class="pre">by</span> <span class="pre">#dbref\n\n</span>&#160;&#160;&#160; <span class="pre">script</span> <span class="pre">myobj</span> <span class="pre">=</span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; <span class="pre">-</span> <span class="pre">list</span> <span class="pre">all</span> <span class="pre">scripts</span> <span class="pre">on</span> <span class="pre">object\n</span>&#160;&#160;&#160; <span class="pre">script</span> <span class="pre">myobj</span> <span class="pre">=</span> <span class="pre">foo.bar.Script</span>&#160;&#160;&#160;&#160; <span class="pre">-</span> <span class="pre">create</span> <span class="pre">and</span> <span class="pre">assign</span> <span class="pre">script</span> <span class="pre">to</span> <span class="pre">object\n</span>&#160;&#160;&#160; <span class="pre">script/stop</span> <span class="pre">myobj</span> <span class="pre">=</span> <span class="pre">name|#dbref</span>&#160;&#160; <span class="pre">-</span> <span class="pre">stop</span> <span class="pre">named</span> <span class="pre">script</span> <span class="pre">on</span> <span class="pre">object\n</span>&#160;&#160;&#160; <span class="pre">script/delete</span> <span class="pre">myobj</span> <span class="pre">=</span> <span class="pre">name|#dbref</span> <span class="pre">-</span> <span class="pre">delete</span> <span class="pre">script</span> <span class="pre">on</span> <span class="pre">object\n</span>&#160;&#160;&#160; <span class="pre">script/delete</span> <span class="pre">myobj</span> <span class="pre">=</span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; <span class="pre">-</span> <span class="pre">delete</span> <span class="pre">ALL</span> <span class="pre">scripts</span> <span class="pre">on</span> <span class="pre">object\n\nWhen</span> <span class="pre">given</span> <span class="pre">with</span> <span class="pre">an</span> <span class="pre">`&lt;obj&gt;`</span> <span class="pre">as</span> <span class="pre">left-hand-side,</span> <span class="pre">this</span> <span class="pre">creates</span> <span class="pre">and\nassigns</span> <span class="pre">a</span> <span class="pre">new</span> <span class="pre">script</span> <span class="pre">to</span> <span class="pre">that</span> <span class="pre">object.</span> <span class="pre">Without</span> <span class="pre">an</span> <span class="pre">`&lt;obj&gt;`,</span> <span class="pre">this\nmanages</span> <span class="pre">and</span> <span class="pre">inspects</span> <span class="pre">global</span> <span class="pre">scripts.\n\nIf</span> <span class="pre">no</span> <span class="pre">switches</span> <span class="pre">are</span> <span class="pre">given,</span> <span class="pre">this</span> <span class="pre">command</span> <span class="pre">just</span> <span class="pre">views</span> <span class="pre">all</span> <span class="pre">active\nscripts.</span> <span class="pre">The</span> <span class="pre">argument</span> <span class="pre">can</span> <span class="pre">be</span> <span class="pre">either</span> <span class="pre">an</span> <span class="pre">object,</span> <span class="pre">at</span> <span class="pre">which</span> <span class="pre">point</span> <span class="pre">it\nwill</span> <span class="pre">be</span> <span class="pre">searched</span> <span class="pre">for</span> <span class="pre">all</span> <span class="pre">scripts</span> <span class="pre">defined</span> <span class="pre">on</span> <span class="pre">it,</span> <span class="pre">or</span> <span class="pre">a</span> <span class="pre">script</span> <span class="pre">name\nor</span> <span class="pre">#dbref.</span> <span class="pre">For</span> <span class="pre">using</span> <span class="pre">the</span> <span class="pre">/stop</span> <span class="pre">switch,</span> <span class="pre">a</span> <span class="pre">unique</span> <span class="pre">script</span> <span class="pre">#dbref</span> <span class="pre">is\nrequired</span> <span class="pre">since</span> <span class="pre">whole</span> <span class="pre">classes</span> <span class="pre">of</span> <span class="pre">scripts</span> <span class="pre">often</span> <span class="pre">have</span> <span class="pre">the</span> <span class="pre">same</span> <span class="pre">name.\n\nUse</span> <span class="pre">the</span> <span class="pre">`script`</span> <span class="pre">build-level</span> <span class="pre">command</span> <span class="pre">for</span> <span class="pre">managing</span> <span class="pre">scripts</span> <span class="pre">attached</span> <span class="pre">to\nobjects.\n\n&quot;}</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdScripts.search_index_entry" title="Link to this definition"></a></dt>
<dd></dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdObjects">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">evennia.commands.default.building.</span></span><span class="sig-name descname"><span class="pre">CmdObjects</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdObjects"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdObjects" title="Link to this definition"></a></dt>
<dd><p>Bases: <a class="reference internal" href="evennia.commands.default.muxcommand.html#evennia.commands.default.muxcommand.MuxCommand" title="evennia.commands.default.muxcommand.MuxCommand"><code class="xref py py-class docutils literal notranslate"><span class="pre">MuxCommand</span></code></a></p>
<p>statistics on objects in the database</p>
<dl class="simple">
<dt>Usage:</dt><dd><p>objects [&lt;nr&gt;]</p>
</dd>
</dl>
<p>Gives statictics on objects in database as well as
a list of &lt;nr&gt; latest objects in database. If not
given, &lt;nr&gt; defaults to 10.</p>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdObjects.key">
<span class="sig-name descname"><span class="pre">key</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'&#64;objects'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdObjects.key" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdObjects.locks">
<span class="sig-name descname"><span class="pre">locks</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'cmd:perm(listobjects)</span> <span class="pre">or</span> <span class="pre">perm(Builder)'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdObjects.locks" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdObjects.help_category">
<span class="sig-name descname"><span class="pre">help_category</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'system'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdObjects.help_category" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdObjects.func">
<span class="sig-name descname"><span class="pre">func</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdObjects.func"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdObjects.func" title="Link to this definition"></a></dt>
<dd><p>Implement the command</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdObjects.aliases">
<span class="sig-name descname"><span class="pre">aliases</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">[]</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdObjects.aliases" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdObjects.lock_storage">
<span class="sig-name descname"><span class="pre">lock_storage</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'cmd:perm(listobjects)</span> <span class="pre">or</span> <span class="pre">perm(Builder)'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdObjects.lock_storage" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdObjects.search_index_entry">
<span class="sig-name descname"><span class="pre">search_index_entry</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">{'aliases':</span> <span class="pre">'',</span> <span class="pre">'category':</span> <span class="pre">'system',</span> <span class="pre">'key':</span> <span class="pre">'&#64;objects',</span> <span class="pre">'no_prefix':</span> <span class="pre">'objects</span> <span class="pre">',</span> <span class="pre">'tags':</span> <span class="pre">'',</span> <span class="pre">'text':</span> <span class="pre">'\nstatistics</span> <span class="pre">on</span> <span class="pre">objects</span> <span class="pre">in</span> <span class="pre">the</span> <span class="pre">database\n\nUsage:\n</span>&#160; <span class="pre">objects</span> <span class="pre">[&lt;nr&gt;]\n\nGives</span> <span class="pre">statictics</span> <span class="pre">on</span> <span class="pre">objects</span> <span class="pre">in</span> <span class="pre">database</span> <span class="pre">as</span> <span class="pre">well</span> <span class="pre">as\na</span> <span class="pre">list</span> <span class="pre">of</span> <span class="pre">&lt;nr&gt;</span> <span class="pre">latest</span> <span class="pre">objects</span> <span class="pre">in</span> <span class="pre">database.</span> <span class="pre">If</span> <span class="pre">not\ngiven,</span> <span class="pre">&lt;nr&gt;</span> <span class="pre">defaults</span> <span class="pre">to</span> <span class="pre">10.\n'}</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdObjects.search_index_entry" title="Link to this definition"></a></dt>
<dd></dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdTag">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">evennia.commands.default.building.</span></span><span class="sig-name descname"><span class="pre">CmdTag</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdTag"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdTag" title="Link to this definition"></a></dt>
<dd><p>Bases: <a class="reference internal" href="evennia.commands.default.muxcommand.html#evennia.commands.default.muxcommand.MuxCommand" title="evennia.commands.default.muxcommand.MuxCommand"><code class="xref py py-class docutils literal notranslate"><span class="pre">MuxCommand</span></code></a></p>
<p>handles the tags of an object</p>
<dl>
<dt>Usage:</dt><dd><p>tag[/del] &lt;obj&gt; [= &lt;tag&gt;[:&lt;category&gt;]]
tag/search &lt;tag&gt;[:&lt;category]</p>
</dd>
<dt>Switches:</dt><dd><p>search - return all objects with a given Tag
del - remove the given tag. If no tag is specified,</p>
<blockquote>
<div><p>clear all tags on object.</p>
</div></blockquote>
</dd>
</dl>
<p>Manipulates and lists tags on objects. Tags allow for quick
grouping of and searching for objects. If only &lt;obj&gt; is given,
list all tags on the object. If /search is used, list objects
with the given tag.
The category can be used for grouping tags themselves, but it
should be used with restrain - tags on their own are usually
enough to for most grouping schemes.</p>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdTag.key">
<span class="sig-name descname"><span class="pre">key</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'&#64;tag'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdTag.key" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdTag.aliases">
<span class="sig-name descname"><span class="pre">aliases</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">['&#64;tags']</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdTag.aliases" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdTag.switch_options">
<span class="sig-name descname"><span class="pre">switch_options</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">('search',</span> <span class="pre">'del')</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdTag.switch_options" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdTag.locks">
<span class="sig-name descname"><span class="pre">locks</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'cmd:perm(tag)</span> <span class="pre">or</span> <span class="pre">perm(Builder)'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdTag.locks" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdTag.help_category">
<span class="sig-name descname"><span class="pre">help_category</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'building'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdTag.help_category" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdTag.arg_regex">
<span class="sig-name descname"><span class="pre">arg_regex</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">re.compile('(/\\w+?(\\s|$))|\\s|$',</span> <span class="pre">re.IGNORECASE)</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdTag.arg_regex" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdTag.func">
<span class="sig-name descname"><span class="pre">func</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdTag.func"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdTag.func" title="Link to this definition"></a></dt>
<dd><p>Implement the tag functionality</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdTag.lock_storage">
<span class="sig-name descname"><span class="pre">lock_storage</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'cmd:perm(tag)</span> <span class="pre">or</span> <span class="pre">perm(Builder)'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdTag.lock_storage" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdTag.search_index_entry">
<span class="sig-name descname"><span class="pre">search_index_entry</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">{'aliases':</span> <span class="pre">'&#64;tags',</span> <span class="pre">'category':</span> <span class="pre">'building',</span> <span class="pre">'key':</span> <span class="pre">'&#64;tag',</span> <span class="pre">'no_prefix':</span> <span class="pre">'tag</span> <span class="pre">tags',</span> <span class="pre">'tags':</span> <span class="pre">'',</span> <span class="pre">'text':</span> <span class="pre">'\nhandles</span> <span class="pre">the</span> <span class="pre">tags</span> <span class="pre">of</span> <span class="pre">an</span> <span class="pre">object\n\nUsage:\n</span>&#160; <span class="pre">tag[/del]</span> <span class="pre">&lt;obj&gt;</span> <span class="pre">[=</span> <span class="pre">&lt;tag&gt;[:&lt;category&gt;]]\n</span>&#160; <span class="pre">tag/search</span> <span class="pre">&lt;tag&gt;[:&lt;category]\n\nSwitches:\n</span>&#160; <span class="pre">search</span> <span class="pre">-</span> <span class="pre">return</span> <span class="pre">all</span> <span class="pre">objects</span> <span class="pre">with</span> <span class="pre">a</span> <span class="pre">given</span> <span class="pre">Tag\n</span>&#160; <span class="pre">del</span> <span class="pre">-</span> <span class="pre">remove</span> <span class="pre">the</span> <span class="pre">given</span> <span class="pre">tag.</span> <span class="pre">If</span> <span class="pre">no</span> <span class="pre">tag</span> <span class="pre">is</span> <span class="pre">specified,\n</span>&#160;&#160;&#160;&#160;&#160;&#160;&#160; <span class="pre">clear</span> <span class="pre">all</span> <span class="pre">tags</span> <span class="pre">on</span> <span class="pre">object.\n\nManipulates</span> <span class="pre">and</span> <span class="pre">lists</span> <span class="pre">tags</span> <span class="pre">on</span> <span class="pre">objects.</span> <span class="pre">Tags</span> <span class="pre">allow</span> <span class="pre">for</span> <span class="pre">quick\ngrouping</span> <span class="pre">of</span> <span class="pre">and</span> <span class="pre">searching</span> <span class="pre">for</span> <span class="pre">objects.</span>&#160; <span class="pre">If</span> <span class="pre">only</span> <span class="pre">&lt;obj&gt;</span> <span class="pre">is</span> <span class="pre">given,\nlist</span> <span class="pre">all</span> <span class="pre">tags</span> <span class="pre">on</span> <span class="pre">the</span> <span class="pre">object.</span>&#160; <span class="pre">If</span> <span class="pre">/search</span> <span class="pre">is</span> <span class="pre">used,</span> <span class="pre">list</span> <span class="pre">objects\nwith</span> <span class="pre">the</span> <span class="pre">given</span> <span class="pre">tag.\nThe</span> <span class="pre">category</span> <span class="pre">can</span> <span class="pre">be</span> <span class="pre">used</span> <span class="pre">for</span> <span class="pre">grouping</span> <span class="pre">tags</span> <span class="pre">themselves,</span> <span class="pre">but</span> <span class="pre">it\nshould</span> <span class="pre">be</span> <span class="pre">used</span> <span class="pre">with</span> <span class="pre">restrain</span> <span class="pre">-</span> <span class="pre">tags</span> <span class="pre">on</span> <span class="pre">their</span> <span class="pre">own</span> <span class="pre">are</span> <span class="pre">usually\nenough</span> <span class="pre">to</span> <span class="pre">for</span> <span class="pre">most</span> <span class="pre">grouping</span> <span class="pre">schemes.\n'}</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdTag.search_index_entry" title="Link to this definition"></a></dt>
<dd></dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdSpawn">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">evennia.commands.default.building.</span></span><span class="sig-name descname"><span class="pre">CmdSpawn</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdSpawn"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdSpawn" title="Link to this definition"></a></dt>
<dd><p>Bases: <a class="reference internal" href="evennia.commands.default.muxcommand.html#evennia.commands.default.muxcommand.MuxCommand" title="evennia.commands.default.muxcommand.MuxCommand"><code class="xref py py-class docutils literal notranslate"><span class="pre">MuxCommand</span></code></a></p>
<p>spawn objects from prototype</p>
<dl>
<dt>Usage:</dt><dd><p>spawn[/noloc] &lt;prototype_key&gt;
spawn[/noloc] &lt;prototype_dict&gt;</p>
<p>spawn/search [prototype_keykey][;tag[,tag]]
spawn/list [tag, tag, …]
spawn/list modules - list only module-based prototypes
spawn/show [&lt;prototype_key&gt;]
spawn/update &lt;prototype_key&gt;</p>
<p>spawn/save &lt;prototype_dict&gt;
spawn/edit [&lt;prototype_key&gt;]
olc - equivalent to spawn/edit</p>
</dd>
<dt>Switches:</dt><dd><dl class="simple">
<dt>noloc - allow location to be None if not specified explicitly. Otherwise,</dt><dd><p>location will default to callers current location.</p>
</dd>
</dl>
<p>search - search prototype by name or tags.
list - list available prototypes, optionally limit by tags.
show, examine - inspect prototype by key. If not given, acts like list.
raw - show the raw dict of the prototype as a one-line string for manual editing.
save - save a prototype to the database. It will be listable by /list.
delete - remove a prototype from database, if allowed to.
update - find existing objects with the same prototype_key and update</p>
<blockquote>
<div><p>them with latest version of given prototype. If given with /save,
will auto-update all objects with the old version of the prototype
without asking first.</p>
</div></blockquote>
<p>edit, menu, olc - create/manipulate prototype in a menu interface.</p>
</dd>
</dl>
<p class="rubric">Example</p>
<p>spawn GOBLIN
spawn {“key”:”goblin”, “typeclass”:”monster.Monster”, “location”:”#2”}
spawn/save {“key”: “grunt”, prototype: “goblin”};;mobs;edit:all()</p>
<dl>
<dt>Dictionary keys:</dt><dd><dl class="simple">
<dt><a href="#id47"><span class="problematic" id="id48">|</span></a>wprototype_parent <a href="#id49"><span class="problematic" id="id50">|</span></a>n - name of parent prototype to use. Required if typeclass is</dt><dd><p>not set. Can be a path or a list for multiple inheritance (inherits
left to right). If set one of the parents must have a typeclass.</p>
</dd>
</dl>
<p><a href="#id51"><span class="problematic" id="id52">|</span></a>wtypeclass <a href="#id53"><span class="problematic" id="id54">|</span></a>n - string. Required if prototype_parent is not set.
<a href="#id55"><span class="problematic" id="id56">|</span></a>wkey <a href="#id57"><span class="problematic" id="id58">|</span></a>n - string, the main object identifier
<a href="#id59"><span class="problematic" id="id60">|</span></a>wlocation <a href="#id61"><span class="problematic" id="id62">|</span></a>n - this should be a valid object or #dbref
<a href="#id63"><span class="problematic" id="id64">|</span></a>whome <a href="#id65"><span class="problematic" id="id66">|</span></a>n - valid object or #dbref
<a href="#id67"><span class="problematic" id="id68">|</span></a>wdestination|n - only valid for exits (object or dbref)
<a href="#id69"><span class="problematic" id="id70">|</span></a>wpermissions|n - string or list of permission strings
<a href="#id71"><span class="problematic" id="id72">|</span></a>wlocks <a href="#id73"><span class="problematic" id="id74">|</span></a>n - a lock-string
<a href="#id75"><span class="problematic" id="id76">|</span></a>waliases <a href="#id77"><span class="problematic" id="id78">|</span></a>n - string or list of strings.
<a href="#id79"><span class="problematic" id="id80">|</span></a>wndb_|n&lt;name&gt; - value of a nattribute (<a href="#id1"><span class="problematic" id="id2">ndb_</span></a> is stripped)</p>
<dl class="simple">
<dt><a href="#id81"><span class="problematic" id="id82">|</span></a>wprototype_key|n - name of this prototype. Unique. Used to store/retrieve from db</dt><dd><p>and update existing prototyped objects if desired.</p>
</dd>
</dl>
<p><a href="#id83"><span class="problematic" id="id84">|</span></a>wprototype_desc|n - desc of this prototype. Used in listings
<a href="#id85"><span class="problematic" id="id86">|</span></a>wprototype_locks|n - locks of this prototype. Limits who may use prototype
<a href="#id87"><span class="problematic" id="id88">|</span></a>wprototype_tags|n - tags of this prototype. Used to find prototype</p>
<p>any other keywords are interpreted as Attributes and their values.</p>
</dd>
</dl>
<p>The available prototypes are defined globally in modules set in
settings.PROTOTYPE_MODULES. If spawn is used without arguments it
displays a list of available prototypes.</p>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdSpawn.key">
<span class="sig-name descname"><span class="pre">key</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'&#64;spawn'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdSpawn.key" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdSpawn.aliases">
<span class="sig-name descname"><span class="pre">aliases</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">['&#64;olc']</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdSpawn.aliases" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdSpawn.switch_options">
<span class="sig-name descname"><span class="pre">switch_options</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">('noloc',</span> <span class="pre">'search',</span> <span class="pre">'list',</span> <span class="pre">'show',</span> <span class="pre">'raw',</span> <span class="pre">'examine',</span> <span class="pre">'save',</span> <span class="pre">'delete',</span> <span class="pre">'menu',</span> <span class="pre">'olc',</span> <span class="pre">'update',</span> <span class="pre">'edit')</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdSpawn.switch_options" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdSpawn.locks">
<span class="sig-name descname"><span class="pre">locks</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'cmd:perm(spawn)</span> <span class="pre">or</span> <span class="pre">perm(Builder)'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdSpawn.locks" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdSpawn.help_category">
<span class="sig-name descname"><span class="pre">help_category</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'building'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdSpawn.help_category" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdSpawn.func">
<span class="sig-name descname"><span class="pre">func</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#CmdSpawn.func"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.CmdSpawn.func" title="Link to this definition"></a></dt>
<dd><p>Implements the spawner</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdSpawn.lock_storage">
<span class="sig-name descname"><span class="pre">lock_storage</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'cmd:perm(spawn)</span> <span class="pre">or</span> <span class="pre">perm(Builder)'</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdSpawn.lock_storage" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.CmdSpawn.search_index_entry">
<span class="sig-name descname"><span class="pre">search_index_entry</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">{'aliases':</span> <span class="pre">'&#64;olc',</span> <span class="pre">'category':</span> <span class="pre">'building',</span> <span class="pre">'key':</span> <span class="pre">'&#64;spawn',</span> <span class="pre">'no_prefix':</span> <span class="pre">'spawn</span> <span class="pre">olc',</span> <span class="pre">'tags':</span> <span class="pre">'',</span> <span class="pre">'text':</span> <span class="pre">'\nspawn</span> <span class="pre">objects</span> <span class="pre">from</span> <span class="pre">prototype\n\nUsage:\n</span>&#160; <span class="pre">spawn[/noloc]</span> <span class="pre">&lt;prototype_key&gt;\n</span>&#160; <span class="pre">spawn[/noloc]</span> <span class="pre">&lt;prototype_dict&gt;\n\n</span>&#160; <span class="pre">spawn/search</span> <span class="pre">[prototype_keykey][;tag[,tag]]\n</span>&#160; <span class="pre">spawn/list</span> <span class="pre">[tag,</span> <span class="pre">tag,</span> <span class="pre">...]\n</span>&#160; <span class="pre">spawn/list</span> <span class="pre">modules</span>&#160;&#160;&#160; <span class="pre">-</span> <span class="pre">list</span> <span class="pre">only</span> <span class="pre">module-based</span> <span class="pre">prototypes\n</span>&#160; <span class="pre">spawn/show</span> <span class="pre">[&lt;prototype_key&gt;]\n</span>&#160; <span class="pre">spawn/update</span> <span class="pre">&lt;prototype_key&gt;\n\n</span>&#160; <span class="pre">spawn/save</span> <span class="pre">&lt;prototype_dict&gt;\n</span>&#160; <span class="pre">spawn/edit</span> <span class="pre">[&lt;prototype_key&gt;]\n</span>&#160; <span class="pre">olc</span>&#160;&#160;&#160;&#160; <span class="pre">-</span> <span class="pre">equivalent</span> <span class="pre">to</span> <span class="pre">spawn/edit\n\nSwitches:\n</span>&#160; <span class="pre">noloc</span> <span class="pre">-</span> <span class="pre">allow</span> <span class="pre">location</span> <span class="pre">to</span> <span class="pre">be</span> <span class="pre">None</span> <span class="pre">if</span> <span class="pre">not</span> <span class="pre">specified</span> <span class="pre">explicitly.</span> <span class="pre">Otherwise,\n</span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; <span class="pre">location</span> <span class="pre">will</span> <span class="pre">default</span> <span class="pre">to</span> <span class="pre">caller\'s</span> <span class="pre">current</span> <span class="pre">location.\n</span>&#160; <span class="pre">search</span> <span class="pre">-</span> <span class="pre">search</span> <span class="pre">prototype</span> <span class="pre">by</span> <span class="pre">name</span> <span class="pre">or</span> <span class="pre">tags.\n</span>&#160; <span class="pre">list</span> <span class="pre">-</span> <span class="pre">list</span> <span class="pre">available</span> <span class="pre">prototypes,</span> <span class="pre">optionally</span> <span class="pre">limit</span> <span class="pre">by</span> <span class="pre">tags.\n</span>&#160; <span class="pre">show,</span> <span class="pre">examine</span> <span class="pre">-</span> <span class="pre">inspect</span> <span class="pre">prototype</span> <span class="pre">by</span> <span class="pre">key.</span> <span class="pre">If</span> <span class="pre">not</span> <span class="pre">given,</span> <span class="pre">acts</span> <span class="pre">like</span> <span class="pre">list.\n</span>&#160; <span class="pre">raw</span> <span class="pre">-</span> <span class="pre">show</span> <span class="pre">the</span> <span class="pre">raw</span> <span class="pre">dict</span> <span class="pre">of</span> <span class="pre">the</span> <span class="pre">prototype</span> <span class="pre">as</span> <span class="pre">a</span> <span class="pre">one-line</span> <span class="pre">string</span> <span class="pre">for</span> <span class="pre">manual</span> <span class="pre">editing.\n</span>&#160; <span class="pre">save</span> <span class="pre">-</span> <span class="pre">save</span> <span class="pre">a</span> <span class="pre">prototype</span> <span class="pre">to</span> <span class="pre">the</span> <span class="pre">database.</span> <span class="pre">It</span> <span class="pre">will</span> <span class="pre">be</span> <span class="pre">listable</span> <span class="pre">by</span> <span class="pre">/list.\n</span>&#160; <span class="pre">delete</span> <span class="pre">-</span> <span class="pre">remove</span> <span class="pre">a</span> <span class="pre">prototype</span> <span class="pre">from</span> <span class="pre">database,</span> <span class="pre">if</span> <span class="pre">allowed</span> <span class="pre">to.\n</span>&#160; <span class="pre">update</span> <span class="pre">-</span> <span class="pre">find</span> <span class="pre">existing</span> <span class="pre">objects</span> <span class="pre">with</span> <span class="pre">the</span> <span class="pre">same</span> <span class="pre">prototype_key</span> <span class="pre">and</span> <span class="pre">update\n</span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; <span class="pre">them</span> <span class="pre">with</span> <span class="pre">latest</span> <span class="pre">version</span> <span class="pre">of</span> <span class="pre">given</span> <span class="pre">prototype.</span> <span class="pre">If</span> <span class="pre">given</span> <span class="pre">with</span> <span class="pre">/save,\n</span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; <span class="pre">will</span> <span class="pre">auto-update</span> <span class="pre">all</span> <span class="pre">objects</span> <span class="pre">with</span> <span class="pre">the</span> <span class="pre">old</span> <span class="pre">version</span> <span class="pre">of</span> <span class="pre">the</span> <span class="pre">prototype\n</span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; <span class="pre">without</span> <span class="pre">asking</span> <span class="pre">first.\n</span>&#160; <span class="pre">edit,</span> <span class="pre">menu,</span> <span class="pre">olc</span> <span class="pre">-</span> <span class="pre">create/manipulate</span> <span class="pre">prototype</span> <span class="pre">in</span> <span class="pre">a</span> <span class="pre">menu</span> <span class="pre">interface.\n\nExample:\n</span>&#160; <span class="pre">spawn</span> <span class="pre">GOBLIN\n</span>&#160; <span class="pre">spawn</span> <span class="pre">{&quot;key&quot;:&quot;goblin&quot;,</span> <span class="pre">&quot;typeclass&quot;:&quot;monster.Monster&quot;,</span> <span class="pre">&quot;location&quot;:&quot;#2&quot;}\n</span>&#160; <span class="pre">spawn/save</span> <span class="pre">{&quot;key&quot;:</span> <span class="pre">&quot;grunt&quot;,</span> <span class="pre">prototype:</span> <span class="pre">&quot;goblin&quot;};;mobs;edit:all()\n\x0c\nDictionary</span> <span class="pre">keys:\n</span>&#160; <span class="pre">|wprototype_parent</span>&#160; <span class="pre">|n</span> <span class="pre">-</span> <span class="pre">name</span> <span class="pre">of</span> <span class="pre">parent</span> <span class="pre">prototype</span> <span class="pre">to</span> <span class="pre">use.</span> <span class="pre">Required</span> <span class="pre">if</span> <span class="pre">typeclass</span> <span class="pre">is\n</span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; <span class="pre">not</span> <span class="pre">set.</span> <span class="pre">Can</span> <span class="pre">be</span> <span class="pre">a</span> <span class="pre">path</span> <span class="pre">or</span> <span class="pre">a</span> <span class="pre">list</span> <span class="pre">for</span> <span class="pre">multiple</span> <span class="pre">inheritance</span> <span class="pre">(inherits\n</span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; <span class="pre">left</span> <span class="pre">to</span> <span class="pre">right).</span> <span class="pre">If</span> <span class="pre">set</span> <span class="pre">one</span> <span class="pre">of</span> <span class="pre">the</span> <span class="pre">parents</span> <span class="pre">must</span> <span class="pre">have</span> <span class="pre">a</span> <span class="pre">typeclass.\n</span>&#160; <span class="pre">|wtypeclass</span>&#160; <span class="pre">|n</span> <span class="pre">-</span> <span class="pre">string.</span> <span class="pre">Required</span> <span class="pre">if</span> <span class="pre">prototype_parent</span> <span class="pre">is</span> <span class="pre">not</span> <span class="pre">set.\n</span>&#160; <span class="pre">|wkey</span>&#160;&#160;&#160;&#160;&#160;&#160;&#160; <span class="pre">|n</span> <span class="pre">-</span> <span class="pre">string,</span> <span class="pre">the</span> <span class="pre">main</span> <span class="pre">object</span> <span class="pre">identifier\n</span>&#160; <span class="pre">|wlocation</span>&#160;&#160; <span class="pre">|n</span> <span class="pre">-</span> <span class="pre">this</span> <span class="pre">should</span> <span class="pre">be</span> <span class="pre">a</span> <span class="pre">valid</span> <span class="pre">object</span> <span class="pre">or</span> <span class="pre">#dbref\n</span>&#160; <span class="pre">|whome</span>&#160;&#160;&#160;&#160;&#160;&#160; <span class="pre">|n</span> <span class="pre">-</span> <span class="pre">valid</span> <span class="pre">object</span> <span class="pre">or</span> <span class="pre">#dbref\n</span>&#160; <span class="pre">|wdestination|n</span> <span class="pre">-</span> <span class="pre">only</span> <span class="pre">valid</span> <span class="pre">for</span> <span class="pre">exits</span> <span class="pre">(object</span> <span class="pre">or</span> <span class="pre">dbref)\n</span>&#160; <span class="pre">|wpermissions|n</span> <span class="pre">-</span> <span class="pre">string</span> <span class="pre">or</span> <span class="pre">list</span> <span class="pre">of</span> <span class="pre">permission</span> <span class="pre">strings\n</span>&#160; <span class="pre">|wlocks</span>&#160;&#160;&#160;&#160;&#160; <span class="pre">|n</span> <span class="pre">-</span> <span class="pre">a</span> <span class="pre">lock-string\n</span>&#160; <span class="pre">|waliases</span>&#160;&#160;&#160; <span class="pre">|n</span> <span class="pre">-</span> <span class="pre">string</span> <span class="pre">or</span> <span class="pre">list</span> <span class="pre">of</span> <span class="pre">strings.\n</span>&#160; <span class="pre">|wndb_|n&lt;name&gt;</span>&#160; <span class="pre">-</span> <span class="pre">value</span> <span class="pre">of</span> <span class="pre">a</span> <span class="pre">nattribute</span> <span class="pre">(ndb_</span> <span class="pre">is</span> <span class="pre">stripped)\n\n</span>&#160; <span class="pre">|wprototype_key|n</span>&#160;&#160; <span class="pre">-</span> <span class="pre">name</span> <span class="pre">of</span> <span class="pre">this</span> <span class="pre">prototype.</span> <span class="pre">Unique.</span> <span class="pre">Used</span> <span class="pre">to</span> <span class="pre">store/retrieve</span> <span class="pre">from</span> <span class="pre">db\n</span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; <span class="pre">and</span> <span class="pre">update</span> <span class="pre">existing</span> <span class="pre">prototyped</span> <span class="pre">objects</span> <span class="pre">if</span> <span class="pre">desired.\n</span>&#160; <span class="pre">|wprototype_desc|n</span>&#160; <span class="pre">-</span> <span class="pre">desc</span> <span class="pre">of</span> <span class="pre">this</span> <span class="pre">prototype.</span> <span class="pre">Used</span> <span class="pre">in</span> <span class="pre">listings\n</span>&#160; <span class="pre">|wprototype_locks|n</span> <span class="pre">-</span> <span class="pre">locks</span> <span class="pre">of</span> <span class="pre">this</span> <span class="pre">prototype.</span> <span class="pre">Limits</span> <span class="pre">who</span> <span class="pre">may</span> <span class="pre">use</span> <span class="pre">prototype\n</span>&#160; <span class="pre">|wprototype_tags|n</span>&#160; <span class="pre">-</span> <span class="pre">tags</span> <span class="pre">of</span> <span class="pre">this</span> <span class="pre">prototype.</span> <span class="pre">Used</span> <span class="pre">to</span> <span class="pre">find</span> <span class="pre">prototype\n\n</span>&#160; <span class="pre">any</span> <span class="pre">other</span> <span class="pre">keywords</span> <span class="pre">are</span> <span class="pre">interpreted</span> <span class="pre">as</span> <span class="pre">Attributes</span> <span class="pre">and</span> <span class="pre">their</span> <span class="pre">values.\n\nThe</span> <span class="pre">available</span> <span class="pre">prototypes</span> <span class="pre">are</span> <span class="pre">defined</span> <span class="pre">globally</span> <span class="pre">in</span> <span class="pre">modules</span> <span class="pre">set</span> <span class="pre">in\nsettings.PROTOTYPE_MODULES.</span> <span class="pre">If</span> <span class="pre">spawn</span> <span class="pre">is</span> <span class="pre">used</span> <span class="pre">without</span> <span class="pre">arguments</span> <span class="pre">it\ndisplays</span> <span class="pre">a</span> <span class="pre">list</span> <span class="pre">of</span> <span class="pre">available</span> <span class="pre">prototypes.\n\n'}</span></em><a class="headerlink" href="#evennia.commands.default.building.CmdSpawn.search_index_entry" title="Link to this definition"></a></dt>
<dd></dd></dl>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.COMMAND_DEFAULT_CLASS">
<span class="sig-prename descclassname"><span class="pre">evennia.commands.default.building.</span></span><span class="sig-name descname"><span class="pre">COMMAND_DEFAULT_CLASS</span></span><a class="headerlink" href="#evennia.commands.default.building.COMMAND_DEFAULT_CLASS" title="Link to this definition"></a></dt>
<dd><p>alias of <a class="reference internal" href="evennia.commands.default.muxcommand.html#evennia.commands.default.muxcommand.MuxCommand" title="evennia.commands.default.muxcommand.MuxCommand"><code class="xref py py-class docutils literal notranslate"><span class="pre">MuxCommand</span></code></a></p>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="evennia.commands.default.building.EvEditor">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">evennia.commands.default.building.</span></span><span class="sig-name descname"><span class="pre">EvEditor</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">caller</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">loadfunc</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">savefunc</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">quitfunc</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">key</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">''</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">persistent</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">codefunc</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/utils/eveditor.html#EvEditor"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.EvEditor" title="Link to this definition"></a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">object</span></code></p>
<p>This defines a line editor object. It creates all relevant commands
and tracks the current state of the buffer. It also cleans up after
itself.</p>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.EvEditor.__init__">
<span class="sig-name descname"><span class="pre">__init__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">caller</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">loadfunc</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">savefunc</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">quitfunc</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">key</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">''</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">persistent</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">codefunc</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/utils/eveditor.html#EvEditor.__init__"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.EvEditor.__init__" title="Link to this definition"></a></dt>
<dd><p>Launches a full in-game line editor, mimicking the functionality of VIM.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>caller</strong> (<em>Object</em>) Who is using the editor.</p></li>
<li><p><strong>loadfunc</strong> (<em>callable</em><em>, </em><em>optional</em>) This will be called as
<strong>loadfunc(caller)</strong> when the editor is first started. Its
return will be used as the editors starting buffer.</p></li>
<li><p><strong>savefunc</strong> (<em>callable</em><em>, </em><em>optional</em>) This will be called as
<strong>savefunc(caller, buffer)</strong> when the save-command is given and
is used to actually determine where/how result is saved.
It should return <strong>True</strong> if save was successful and also
handle any feedback to the user.</p></li>
<li><p><strong>quitfunc</strong> (<em>callable</em><em>, </em><em>optional</em>) This will optionally be
called as <strong>quitfunc(caller)</strong> when the editor is
exited. If defined, it should handle all wanted feedback
to the user.</p></li>
<li><p><strong>quitfunc_args</strong> (<em>tuple</em><em>, </em><em>optional</em>) Optional tuple of arguments to
supply to <strong>quitfunc</strong>.</p></li>
<li><p><strong>key</strong> (<em>str</em><em>, </em><em>optional</em>) An optional key for naming this
session and make it unique from other editing sessions.</p></li>
<li><p><strong>persistent</strong> (<em>bool</em><em>, </em><em>optional</em>) Make the editor survive a reboot. Note
that if this is set, all callables must be possible to pickle</p></li>
<li><p><strong>codefunc</strong> (<em>bool</em><em>, </em><em>optional</em>) If given, will run the editor in code mode.
This will be called as <strong>codefunc(caller, buf)</strong>.</p></li>
</ul>
</dd>
</dl>
<p class="rubric">Notes</p>
<p>In persistent mode, all the input callables (savefunc etc)
must be possible to be <em>pickled</em>, this excludes e.g.
callables that are class methods or functions defined
dynamically or as part of another function. In
non-persistent mode no such restrictions exist.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.EvEditor.decrease_indent">
<span class="sig-name descname"><span class="pre">decrease_indent</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/utils/eveditor.html#EvEditor.decrease_indent"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.EvEditor.decrease_indent" title="Link to this definition"></a></dt>
<dd><p>Decrease automatic indentation by 1 level.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.EvEditor.deduce_indent">
<span class="sig-name descname"><span class="pre">deduce_indent</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">line</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">buffer</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/utils/eveditor.html#EvEditor.deduce_indent"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.EvEditor.deduce_indent" title="Link to this definition"></a></dt>
<dd><p>Try to deduce the level of indentation of the given line.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.EvEditor.display_buffer">
<span class="sig-name descname"><span class="pre">display_buffer</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">buf</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">offset</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">linenums</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">options</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">{'raw':</span> <span class="pre">False}</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/utils/eveditor.html#EvEditor.display_buffer"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.EvEditor.display_buffer" title="Link to this definition"></a></dt>
<dd><p>This displays the line editor buffer, or selected parts of it.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>buf</strong> (<em>str</em><em>, </em><em>optional</em>) The buffer or part of buffer to display.</p></li>
<li><p><strong>offset</strong> (<em>int</em><em>, </em><em>optional</em>) If <strong>buf</strong> is set and is not the full buffer,
<strong>offset</strong> should define the actual starting line number, to
get the linenum display right.</p></li>
<li><p><strong>linenums</strong> (<em>bool</em><em>, </em><em>optional</em>) Show line numbers in buffer.</p></li>
<li><p><strong>options</strong> raw (bool, optional): Tell protocol to not parse
formatting information.</p></li>
</ul>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.EvEditor.display_help">
<span class="sig-name descname"><span class="pre">display_help</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/utils/eveditor.html#EvEditor.display_help"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.EvEditor.display_help" title="Link to this definition"></a></dt>
<dd><p>Shows the help entry for the editor.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.EvEditor.get_buffer">
<span class="sig-name descname"><span class="pre">get_buffer</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/utils/eveditor.html#EvEditor.get_buffer"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.EvEditor.get_buffer" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p><em>buffer (str)</em> The current buffer.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.EvEditor.increase_indent">
<span class="sig-name descname"><span class="pre">increase_indent</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/utils/eveditor.html#EvEditor.increase_indent"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.EvEditor.increase_indent" title="Link to this definition"></a></dt>
<dd><p>Increase automatic indentation by 1 level.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.EvEditor.load_buffer">
<span class="sig-name descname"><span class="pre">load_buffer</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/utils/eveditor.html#EvEditor.load_buffer"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.EvEditor.load_buffer" title="Link to this definition"></a></dt>
<dd><p>Load the buffer using the load function hook.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.EvEditor.quit">
<span class="sig-name descname"><span class="pre">quit</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/utils/eveditor.html#EvEditor.quit"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.EvEditor.quit" title="Link to this definition"></a></dt>
<dd><p>Cleanly exit the editor.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.EvEditor.save_buffer">
<span class="sig-name descname"><span class="pre">save_buffer</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/utils/eveditor.html#EvEditor.save_buffer"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.EvEditor.save_buffer" title="Link to this definition"></a></dt>
<dd><p>Saves the content of the buffer.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.EvEditor.swap_autoindent">
<span class="sig-name descname"><span class="pre">swap_autoindent</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/utils/eveditor.html#EvEditor.swap_autoindent"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.EvEditor.swap_autoindent" title="Link to this definition"></a></dt>
<dd><p>Swap automatic indentation on or off.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.EvEditor.update_buffer">
<span class="sig-name descname"><span class="pre">update_buffer</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">buf</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/utils/eveditor.html#EvEditor.update_buffer"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.EvEditor.update_buffer" title="Link to this definition"></a></dt>
<dd><p>This should be called when the buffer has been changed
somehow. It will handle unsaved flag and undo updating.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>buf</strong> (<em>str</em>) The text to update the buffer with.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.EvEditor.update_undo">
<span class="sig-name descname"><span class="pre">update_undo</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">step</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/utils/eveditor.html#EvEditor.update_undo"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.EvEditor.update_undo" title="Link to this definition"></a></dt>
<dd><p>This updates the undo position.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>step</strong> (<em>int</em><em>, </em><em>optional</em>) The amount of steps
to progress the undo position to. This
may be a negative value for undo and
a positive value for redo.</p>
</dd>
</dl>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="evennia.commands.default.building.EvMore">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">evennia.commands.default.building.</span></span><span class="sig-name descname"><span class="pre">EvMore</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">caller</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">inp</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">always_page=False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">session=None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">justify=False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">justify_kwargs=None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">exit_on_lastpage=False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">exit_cmd=None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">page_formatter=&lt;class</span> <span class="pre">'str'&gt;</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">**kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/utils/evmore.html#EvMore"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.EvMore" title="Link to this definition"></a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">object</span></code></p>
<p>The main pager object</p>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.EvMore.__init__">
<span class="sig-name descname"><span class="pre">__init__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">caller</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">inp</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">always_page=False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">session=None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">justify=False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">justify_kwargs=None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">exit_on_lastpage=False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">exit_cmd=None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">page_formatter=&lt;class</span> <span class="pre">'str'&gt;</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">**kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/utils/evmore.html#EvMore.__init__"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.EvMore.__init__" title="Link to this definition"></a></dt>
<dd><p>Initialization of the EvMore pager.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>caller</strong> (<em>Object</em><em> or </em><em>Account</em>) Entity reading the text.</p></li>
<li><p><strong>inp</strong> (<em>str</em><em>, </em><a class="reference internal" href="#evennia.commands.default.building.EvTable" title="evennia.commands.default.building.EvTable"><em>EvTable</em></a><em>, </em><a class="reference internal" href="#evennia.commands.default.building.Paginator" title="evennia.commands.default.building.Paginator"><em>Paginator</em></a><em> or </em><em>iterator</em>) <p>The text or data to put under paging.</p>
<ul>
<li><p>If a string, paginage normally. If this text contains
one or more <strong>\f</strong> format symbol, automatic pagination and justification
are force-disabled and page-breaks will only happen after each <strong>\f</strong>.</p></li>
<li><p>If <strong>EvTable</strong>, the EvTable will be paginated with the same
setting on each page if it is too long. The table
decorations will be considered in the size of the page.</p></li>
<li><p>Otherwise <strong>inp</strong> is converted to an iterator, where each step is
expected to be a line in the final display. Each line
will be run through <strong>iter_callable</strong>.</p></li>
</ul>
</p></li>
<li><p><strong>always_page</strong> (<em>bool</em><em>, </em><em>optional</em>) If <strong>False</strong>, the
pager will only kick in if <strong>inp</strong> is too big
to fit the screen.</p></li>
<li><p><strong>session</strong> (<a class="reference internal" href="evennia.server.session.html#evennia.server.session.Session" title="evennia.server.session.Session"><em>Session</em></a><em>, </em><em>optional</em>) If given, this session will be used
to determine the screen width and will receive all output.</p></li>
<li><p><strong>justify</strong> (<em>bool</em><em>, </em><em>optional</em>) If set, auto-justify long lines. This must be turned
off for fixed-width or formatted output, like tables. Its force-disabled
if <strong>inp</strong> is an EvTable.</p></li>
<li><p><strong>justify_kwargs</strong> (<em>dict</em><em>, </em><em>optional</em>) Keywords for the justify function. Used only
if <strong>justify</strong> is True. If this is not set, default arguments will be used.</p></li>
<li><p><strong>exit_on_lastpage</strong> (<em>bool</em><em>, </em><em>optional</em>) If reaching the last page without the
page being completely filled, exit pager immediately. If unset,
another move forward is required to exit. If set, the pager
exit message will not be shown.</p></li>
<li><p><strong>exit_cmd</strong> (<em>str</em><em>, </em><em>optional</em>) If given, this command-string will be executed on
the caller when the more page exits. Note that this will be using whatever
cmdset the user had <em>before</em> the evmore pager was activated (so none of
the evmore commands will be available when this is run).</p></li>
<li><p><strong>kwargs</strong> (<em>any</em><em>, </em><em>optional</em>) These will be passed on to the <strong>caller.msg</strong> method. Notably,
one can pass additional outputfuncs this way. There is one special kwarg:
- <strong>text_kwargs</strong> - extra kwargs to pass with the text outputfunc, e.g.
<strong>text_kwargs={“type”: “help”}</strong> would result to each page being sent
to <strong>msg</strong> as <strong>text=(pagetxt, {“type”: “help”})</strong>.</p></li>
</ul>
</dd>
</dl>
<p class="rubric">Examples</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">super_long_text</span> <span class="o">=</span> <span class="s2">&quot; ... &quot;</span>
<span class="n">EvMore</span><span class="p">(</span><span class="n">caller</span><span class="p">,</span> <span class="n">super_long_text</span><span class="p">)</span>
</pre></div>
</div>
<p>Paginator</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="kn">from</span><span class="w"> </span><span class="nn">django.core.paginator</span><span class="w"> </span><span class="kn">import</span> <span class="n">Paginator</span>
<span class="n">query</span> <span class="o">=</span> <span class="n">ObjectDB</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">all</span><span class="p">()</span>
<span class="n">pages</span> <span class="o">=</span> <span class="n">Paginator</span><span class="p">(</span><span class="n">query</span><span class="p">,</span> <span class="mi">10</span><span class="p">)</span> <span class="c1"># 10 objs per page</span>
<span class="n">EvMore</span><span class="p">(</span><span class="n">caller</span><span class="p">,</span> <span class="n">pages</span><span class="p">)</span>
</pre></div>
</div>
<p>Every page an EvTable</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="kn">from</span><span class="w"> </span><span class="nn">evennia</span><span class="w"> </span><span class="kn">import</span> <span class="n">EvTable</span>
<span class="k">def</span><span class="w"> </span><span class="nf">_to_evtable</span><span class="p">(</span><span class="n">page</span><span class="p">):</span>
<span class="n">table</span> <span class="o">=</span> <span class="o">...</span> <span class="c1"># convert page to a table</span>
<span class="k">return</span> <span class="n">EvTable</span><span class="p">(</span><span class="o">*</span><span class="n">headers</span><span class="p">,</span> <span class="n">table</span><span class="o">=</span><span class="n">table</span><span class="p">,</span> <span class="o">...</span><span class="p">)</span>
<span class="n">EvMore</span><span class="p">(</span><span class="n">caller</span><span class="p">,</span> <span class="n">pages</span><span class="p">,</span> <span class="n">page_formatter</span><span class="o">=</span><span class="n">_to_evtable</span><span class="p">)</span>
</pre></div>
</div>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.EvMore.display">
<span class="sig-name descname"><span class="pre">display</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">show_footer</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/utils/evmore.html#EvMore.display"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.EvMore.display" title="Link to this definition"></a></dt>
<dd><p>Pretty-print the page.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.EvMore.init_django_paginator">
<span class="sig-name descname"><span class="pre">init_django_paginator</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">pages</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/utils/evmore.html#EvMore.init_django_paginator"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.EvMore.init_django_paginator" title="Link to this definition"></a></dt>
<dd><p>The input is a django Paginator object.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.EvMore.init_evtable">
<span class="sig-name descname"><span class="pre">init_evtable</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">table</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/utils/evmore.html#EvMore.init_evtable"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.EvMore.init_evtable" title="Link to this definition"></a></dt>
<dd><p>The input is an EvTable.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.EvMore.init_f_str">
<span class="sig-name descname"><span class="pre">init_f_str</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">text</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/utils/evmore.html#EvMore.init_f_str"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.EvMore.init_f_str" title="Link to this definition"></a></dt>
<dd><p>The input contains <strong>f</strong> markers. We use <strong>f</strong> to indicate the user wants to
enforce their line breaks on their own. If so, we do no automatic
line-breaking/justification at all.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>text</strong> (<em>str</em>) The string to format with f-markers.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.EvMore.init_iterable">
<span class="sig-name descname"><span class="pre">init_iterable</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">inp</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/utils/evmore.html#EvMore.init_iterable"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.EvMore.init_iterable" title="Link to this definition"></a></dt>
<dd><p>The input is something other than a string - convert to iterable of strings</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.EvMore.init_pages">
<span class="sig-name descname"><span class="pre">init_pages</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">inp</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/utils/evmore.html#EvMore.init_pages"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.EvMore.init_pages" title="Link to this definition"></a></dt>
<dd><p>Initialize the pagination. By default, will analyze input type to determine
how pagination automatically.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>inp</strong> (<em>any</em>) Incoming data to be paginated. By default, handles pagination of
strings, querysets, django.Paginator, EvTables and any iterables with strings.</p>
</dd>
</dl>
<p class="rubric">Notes</p>
<p>If overridden, this method must perform the following actions:</p>
<ul class="simple">
<li><p>read and re-store <strong>self._data</strong> (the incoming data set) if needed for pagination to
work.</p></li>
<li><p>set <strong>self._npages</strong> to the total number of pages. Default is 1.</p></li>
<li><p>set <strong>self._paginator</strong> to a callable that will take a page number 1…N and return
the data to display on that page (not any decorations or next/prev buttons). If only
wanting to change the paginator, override <strong>self.paginator</strong> instead.</p></li>
<li><p>set <strong>self._page_formatter</strong> to a callable that will receive the page from
<strong>self._paginator</strong> and format it with one element per line. Default is <strong>str</strong>. Or
override <strong>self.page_formatter</strong> directly instead.</p></li>
</ul>
<p>By default, helper methods are called that perform these actions
depending on supported inputs.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.EvMore.init_queryset">
<span class="sig-name descname"><span class="pre">init_queryset</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">qs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/utils/evmore.html#EvMore.init_queryset"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.EvMore.init_queryset" title="Link to this definition"></a></dt>
<dd><p>The input is a queryset</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.EvMore.init_str">
<span class="sig-name descname"><span class="pre">init_str</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">text</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/utils/evmore.html#EvMore.init_str"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.EvMore.init_str" title="Link to this definition"></a></dt>
<dd><p>The input is a string</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.EvMore.page_back">
<span class="sig-name descname"><span class="pre">page_back</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/utils/evmore.html#EvMore.page_back"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.EvMore.page_back" title="Link to this definition"></a></dt>
<dd><p>Scroll the text back up, at the most to the top.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.EvMore.page_end">
<span class="sig-name descname"><span class="pre">page_end</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/utils/evmore.html#EvMore.page_end"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.EvMore.page_end" title="Link to this definition"></a></dt>
<dd><p>Display the bottom page.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.EvMore.page_formatter">
<span class="sig-name descname"><span class="pre">page_formatter</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">page</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/utils/evmore.html#EvMore.page_formatter"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.EvMore.page_formatter" title="Link to this definition"></a></dt>
<dd><p>Page formatter. Every page passes through this method. Override
it to customize behavior per-page. A common use is to generate a new
EvTable for every page (this is more efficient than to generate one huge
EvTable across many pages and feed it into EvMore all at once).</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>page</strong> (<em>any</em>) A piece of data representing one page to display. This must</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p><p><em>str</em> </p>
<dl class="simple">
<dt>A ready-formatted page to display. Extra footer with help about</dt><dd><p>switching to the next/prev page will be added automatically</p>
</dd>
</dl>
</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.EvMore.page_next">
<span class="sig-name descname"><span class="pre">page_next</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/utils/evmore.html#EvMore.page_next"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.EvMore.page_next" title="Link to this definition"></a></dt>
<dd><p>Scroll the text to the next page. Quit if already at the end
of the page.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.EvMore.page_quit">
<span class="sig-name descname"><span class="pre">page_quit</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">quiet</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/utils/evmore.html#EvMore.page_quit"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.EvMore.page_quit" title="Link to this definition"></a></dt>
<dd><p>Quit the pager</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.EvMore.page_top">
<span class="sig-name descname"><span class="pre">page_top</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/utils/evmore.html#EvMore.page_top"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.EvMore.page_top" title="Link to this definition"></a></dt>
<dd><p>Display the top page</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.EvMore.paginator">
<span class="sig-name descname"><span class="pre">paginator</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">pageno</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/utils/evmore.html#EvMore.paginator"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.EvMore.paginator" title="Link to this definition"></a></dt>
<dd><p>Paginator. The data operated upon is in <strong>self._data</strong>.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>pageno</strong> (<em>int</em>) The page number to view, from 0…N-1</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p><p><em>str</em> </p>
<dl class="simple">
<dt>The page to display (without any decorations, those are added</dt><dd><p>by EvMore).</p>
</dd>
</dl>
</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.EvMore.paginator_django">
<span class="sig-name descname"><span class="pre">paginator_django</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">pageno</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/utils/evmore.html#EvMore.paginator_django"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.EvMore.paginator_django" title="Link to this definition"></a></dt>
<dd><p>Paginate using the django queryset Paginator API. Note that his is indexed from 1.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.EvMore.paginator_index">
<span class="sig-name descname"><span class="pre">paginator_index</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">pageno</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/utils/evmore.html#EvMore.paginator_index"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.EvMore.paginator_index" title="Link to this definition"></a></dt>
<dd><p>Paginate to specific, known index</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.EvMore.paginator_slice">
<span class="sig-name descname"><span class="pre">paginator_slice</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">pageno</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/utils/evmore.html#EvMore.paginator_slice"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.EvMore.paginator_slice" title="Link to this definition"></a></dt>
<dd><p>Paginate by slice. This is done with an eye on memory efficiency (usually for
querysets); to avoid fetching all objects at the same time.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.EvMore.start">
<span class="sig-name descname"><span class="pre">start</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/utils/evmore.html#EvMore.start"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.EvMore.start" title="Link to this definition"></a></dt>
<dd><p>Starts the pagination</p>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="evennia.commands.default.building.EvTable">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">evennia.commands.default.building.</span></span><span class="sig-name descname"><span class="pre">EvTable</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/utils/evtable.html#EvTable"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.EvTable" title="Link to this definition"></a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">object</span></code></p>
<p>The table class holds a list of EvColumns, each consisting of EvCells so
that the result is a 2D matrix.</p>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.EvTable.__init__">
<span class="sig-name descname"><span class="pre">__init__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/utils/evtable.html#EvTable.__init__"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.EvTable.__init__" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>table.</strong> (<em>Header texts for the</em>)</p>
</dd>
<dt class="field-even">Keyword Arguments<span class="colon">:</span></dt>
<dd class="field-even"><ul class="simple">
<li><p><strong>table</strong> (list of lists or list of <strong>EvColumns</strong>, optional) This is used to build the table in a quick way. If not
given, the table will start out empty and <strong>add_</strong> methods
need to be used to add rows/columns.</p></li>
<li><p><strong>header</strong> (<em>bool</em><em>, </em><em>optional</em>) <strong>True</strong>/<strong>False</strong> - turn off the
header texts (<strong>*args</strong>) being treated as a header (such as
not adding extra underlining)</p></li>
<li><p><strong>pad_width</strong> (<em>int</em><em>, </em><em>optional</em>) How much empty space to pad your cells with
(default is 1)</p></li>
<li><p><strong>border</strong> (<em>str</em><em>, </em><em>optional</em><em>)</em>) The border style to use. This is one of
- <strong>None</strong> - No border drawing at all.
- “table” - only a border around the whole table.
- “tablecols” - table and column borders. (default)
- “header” - only border under header.
- “cols” - only vertical borders.
- “incols” - vertical borders, no outer edges.
- “rows” - only borders between rows.
- “cells” - border around all cells.</p></li>
<li><p><strong>border_width</strong> (<em>int</em><em>, </em><em>optional</em>) Width of table borders, if border is active.
Note that widths wider than 1 may give artifacts in the corners. Default is 1.</p></li>
<li><p><strong>corner_char</strong> (<em>str</em><em>, </em><em>optional</em>) Character to use in corners when border is active.
Default is <strong>+</strong>.</p></li>
<li><p><strong>corner_top_left_char</strong> (<em>str</em><em>, </em><em>optional</em>) Character used for “nw” corner of table.
Defaults to <strong>corner_char</strong>.</p></li>
<li><p><strong>corner_top_right_char</strong> (<em>str</em><em>, </em><em>optional</em>) Character used for “ne” corner of table.
Defaults to <strong>corner_char</strong>.</p></li>
<li><p><strong>corner_bottom_left_char</strong> (<em>str</em><em>, </em><em>optional</em>) Character used for “sw” corner of table.
Defaults to <strong>corner_char</strong>.</p></li>
<li><p><strong>corner_bottom_right_char</strong> (<em>str</em><em>, </em><em>optional</em>) Character used for “se” corner of table.
Defaults to <strong>corner_char</strong>.</p></li>
<li><p><strong>pretty_corners</strong> (<em>bool</em><em>, </em><em>optional</em>) Use custom characters to
make the table corners look “rounded”. Uses UTF-8
characters. Defaults to <strong>False</strong> for maximum compatibility with various displays
that may occationally have issues with UTF-8 characters.</p></li>
<li><p><strong>header_line_char</strong> (<em>str</em><em>, </em><em>optional</em>) Character to use for underlining
the header row (default is ~). Requires <strong>border</strong> to not be <strong>None</strong>.</p></li>
<li><p><strong>width</strong> (<em>int</em><em>, </em><em>optional</em>) Fixed width of table. If not set,
width is set by the total width of each column. This will
resize individual columns in the vertical direction to fit.</p></li>
<li><p><strong>height</strong> (<em>int</em><em>, </em><em>optional</em>) Fixed height of table. Defaults to being unset. Width is
still given precedence. If given, table cells will crop text rather
than expand vertically.</p></li>
<li><p><strong>evenwidth</strong> (<em>bool</em><em>, </em><em>optional</em>) Used with the <strong>width</strong> keyword. Adjusts columns to have as
even width as possible. This often looks best also for mixed-length tables. Default
is <strong>False</strong>.</p></li>
<li><p><strong>maxwidth</strong> (<em>int</em><em>, </em><em>optional</em>) This will set a maximum width
of the table while allowing it to be smaller. Only if it grows wider than this
size will it be resized by expanding horizontally (or crop <strong>height</strong> is given).
This keyword has no meaning if <strong>width</strong> is set.</p></li>
</ul>
</dd>
<dt class="field-odd">Raises<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>Exception</strong> If given erroneous input or width settings for the data.</p>
</dd>
</dl>
<p class="rubric">Notes</p>
<p>Beyond those table-specific keywords, the non-overlapping keywords
of <strong>EvCell.__init__</strong> are also available. These will be passed down
to every cell in the table.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.EvTable.add_column">
<span class="sig-name descname"><span class="pre">add_column</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/utils/evtable.html#EvTable.add_column"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.EvTable.add_column" title="Link to this definition"></a></dt>
<dd><p>Add a column to table. If there are more rows in new column
than there are rows in the current table, the table will
expand with empty rows in the other columns. If too few, the
new column with get new empty rows. All filling rows are added
to the end.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>args</strong> (<strong>EvColumn</strong> or multiple strings) Either a single EvColumn instance or
a number of data string arguments to be used to create a new column.</p></li>
<li><p><strong>header</strong> (<em>str</em><em>, </em><em>optional</em>) The header text for the column</p></li>
<li><p><strong>xpos</strong> (<em>int</em><em>, </em><em>optional</em>) Index position in table <em>before</em> which
to input new column. If not given, column will be added to the end
of the table. Uses Python indexing (so first column is <strong>xpos=0</strong>)</p></li>
</ul>
</dd>
<dt class="field-even">Keyword Arguments<span class="colon">:</span></dt>
<dd class="field-even"><p><strong>Cell.__init__.</strong> (<em>Other keywords as per</em>)</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.EvTable.add_header">
<span class="sig-name descname"><span class="pre">add_header</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/utils/evtable.html#EvTable.add_header"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.EvTable.add_header" title="Link to this definition"></a></dt>
<dd><p>Add header to table. This is a number of texts to be put at
the top of the table. They will replace an existing header.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>args</strong> (<em>str</em>) These strings will be used as the header texts.</p>
</dd>
<dt class="field-even">Keyword Arguments<span class="colon">:</span></dt>
<dd class="field-even"><ul class="simple">
<li><p><strong>applied</strong> (<em>Same keywords as per EvTable.__init__. Will be</em>)</p></li>
<li><p><strong>cells.</strong> (<em>to the new header's</em>)</p></li>
</ul>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.EvTable.add_row">
<span class="sig-name descname"><span class="pre">add_row</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/utils/evtable.html#EvTable.add_row"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.EvTable.add_row" title="Link to this definition"></a></dt>
<dd><p>Add a row to table (not a header). If there are more cells in
the given row than there are cells in the current table the
table will be expanded with empty columns to match. These will
be added to the end of the table. In the same way, adding a
line with too few cells will lead to the last ones getting
padded.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>args</strong> (<em>str</em>) Any number of string argumnets to use as the
data in the row (one cell per argument).</p></li>
<li><p><strong>ypos</strong> (<em>int</em><em>, </em><em>optional</em>) Index position in table before which to
input new row. If not given, will be added to the end of the table.
Uses Python indexing (so first row is <strong>ypos=0</strong>)</p></li>
</ul>
</dd>
<dt class="field-even">Keyword Arguments<span class="colon">:</span></dt>
<dd class="field-even"><p><strong>EvCell.__init__.</strong> (<em>Other keywords are as per</em>)</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.EvTable.get">
<span class="sig-name descname"><span class="pre">get</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/utils/evtable.html#EvTable.get"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.EvTable.get" title="Link to this definition"></a></dt>
<dd><p>Return lines of table as a list.</p>
<dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p><em>table_lines (list)</em> The lines of the table, in order.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.EvTable.reformat">
<span class="sig-name descname"><span class="pre">reformat</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/utils/evtable.html#EvTable.reformat"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.EvTable.reformat" title="Link to this definition"></a></dt>
<dd><p>Force a re-shape of the entire table.</p>
<dl class="field-list simple">
<dt class="field-odd">Keyword Arguments<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>EvTable.__init__.</strong> (<em>Table options as per</em>)</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.EvTable.reformat_column">
<span class="sig-name descname"><span class="pre">reformat_column</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">index</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/utils/evtable.html#EvTable.reformat_column"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.EvTable.reformat_column" title="Link to this definition"></a></dt>
<dd><p>Sends custom options to a specific column in the table.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>index</strong> (<em>int</em>) Which column to reformat. The column index is
given from 0 to Ncolumns-1.</p>
</dd>
<dt class="field-even">Keyword Arguments<span class="colon">:</span></dt>
<dd class="field-even"><p><strong>EvCell.__init__.</strong> (<em>Column options as per</em>)</p>
</dd>
<dt class="field-odd">Raises<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>Exception</strong> if an invalid index is found.</p>
</dd>
</dl>
</dd></dl>
</dd></dl>
<dl class="py exception">
<dt class="sig sig-object py" id="evennia.commands.default.building.InterruptCommand">
<em class="property"><span class="k"><span class="pre">exception</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">evennia.commands.default.building.</span></span><span class="sig-name descname"><span class="pre">InterruptCommand</span></span><a class="reference internal" href="../_modules/evennia/commands/command.html#InterruptCommand"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.InterruptCommand" title="Link to this definition"></a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">Exception</span></code></p>
<p>Cleanly interrupt a command.</p>
</dd></dl>
<dl class="py exception">
<dt class="sig sig-object py" id="evennia.commands.default.building.LockException">
<em class="property"><span class="k"><span class="pre">exception</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">evennia.commands.default.building.</span></span><span class="sig-name descname"><span class="pre">LockException</span></span><a class="reference internal" href="../_modules/evennia/locks/lockhandler.html#LockException"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.LockException" title="Link to this definition"></a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">Exception</span></code></p>
<p>Raised during an error in a lock.</p>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="evennia.commands.default.building.Max">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">evennia.commands.default.building.</span></span><span class="sig-name descname"><span class="pre">Max</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/django/db/models/aggregates.html#Max"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.Max" title="Link to this definition"></a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">Aggregate</span></code></p>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.Max.arity">
<span class="sig-name descname"><span class="pre">arity</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">1</span></em><a class="headerlink" href="#evennia.commands.default.building.Max.arity" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.Max.function">
<span class="sig-name descname"><span class="pre">function</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'MAX'</span></em><a class="headerlink" href="#evennia.commands.default.building.Max.function" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.Max.name">
<span class="sig-name descname"><span class="pre">name</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'Max'</span></em><a class="headerlink" href="#evennia.commands.default.building.Max.name" title="Link to this definition"></a></dt>
<dd></dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="evennia.commands.default.building.Min">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">evennia.commands.default.building.</span></span><span class="sig-name descname"><span class="pre">Min</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/django/db/models/aggregates.html#Min"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.Min" title="Link to this definition"></a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">Aggregate</span></code></p>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.Min.arity">
<span class="sig-name descname"><span class="pre">arity</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">1</span></em><a class="headerlink" href="#evennia.commands.default.building.Min.arity" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.Min.function">
<span class="sig-name descname"><span class="pre">function</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'MIN'</span></em><a class="headerlink" href="#evennia.commands.default.building.Min.function" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.Min.name">
<span class="sig-name descname"><span class="pre">name</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'Min'</span></em><a class="headerlink" href="#evennia.commands.default.building.Min.name" title="Link to this definition"></a></dt>
<dd></dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="evennia.commands.default.building.ObjectDB">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">evennia.commands.default.building.</span></span><span class="sig-name descname"><span class="pre">ObjectDB</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/models.html#ObjectDB"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.ObjectDB" title="Link to this definition"></a></dt>
<dd><p>Bases: <a class="reference internal" href="evennia.typeclasses.models.html#evennia.typeclasses.models.TypedObject" title="evennia.typeclasses.models.TypedObject"><code class="xref py py-class docutils literal notranslate"><span class="pre">TypedObject</span></code></a></p>
<p>All objects in the game use the ObjectDB model to store
data in the database. This is handled transparently through
the typeclass system.</p>
<p>Note that the base objectdb is very simple, with
few defined fields. Use attributes to extend your
type class with new database-stored variables.</p>
<p>The TypedObject supplies the following (inherited) properties:</p>
<blockquote>
<div><ul class="simple">
<li><p>key - main name</p></li>
<li><p>name - alias for key</p></li>
<li><p>db_typeclass_path - the path to the decorating typeclass</p></li>
<li><p>db_date_created - time stamp of object creation</p></li>
<li><p>permissions - perm strings</p></li>
<li><p>locks - lock definitions (handler)</p></li>
<li><p>dbref - #id of object</p></li>
<li><p>db - persistent attribute storage</p></li>
<li><p>ndb - non-persistent attribute storage</p></li>
</ul>
</div></blockquote>
<p>The ObjectDB adds the following properties:</p>
<blockquote>
<div><ul class="simple">
<li><p>account - optional connected account (always together with sessid)</p></li>
<li><p>sessid - optional connection session id (always together with account)</p></li>
<li><p>location - in-game location of object</p></li>
<li><p>home - safety location for object (handler)</p></li>
<li><p>scripts - scripts assigned to object (handler from typeclass)</p></li>
<li><p>cmdset - active cmdset on object (handler from typeclass)</p></li>
<li><p>aliases - aliases for this object (property)</p></li>
<li><p>nicks - nicknames for <em>other</em> things in Evennia (handler)</p></li>
<li><p>sessions - sessions connected to this object (see also account)</p></li>
<li><p>has_account - bool if an active account is currently connected</p></li>
<li><p>contents - other objects having this object as location</p></li>
<li><p>exits - exits from this object</p></li>
</ul>
</div></blockquote>
<dl class="py exception">
<dt class="sig sig-object py" id="evennia.commands.default.building.ObjectDB.DoesNotExist">
<em class="property"><span class="k"><span class="pre">exception</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">DoesNotExist</span></span><a class="headerlink" href="#evennia.commands.default.building.ObjectDB.DoesNotExist" title="Link to this definition"></a></dt>
<dd><p>Bases: <a class="reference internal" href="evennia.utils.dbserialize.html#evennia.utils.dbserialize.ObjectDoesNotExist" title="django.core.exceptions.ObjectDoesNotExist"><code class="xref py py-class docutils literal notranslate"><span class="pre">ObjectDoesNotExist</span></code></a></p>
</dd></dl>
<dl class="py exception">
<dt class="sig sig-object py" id="evennia.commands.default.building.ObjectDB.MultipleObjectsReturned">
<em class="property"><span class="k"><span class="pre">exception</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">MultipleObjectsReturned</span></span><a class="headerlink" href="#evennia.commands.default.building.ObjectDB.MultipleObjectsReturned" title="Link to this definition"></a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">MultipleObjectsReturned</span></code></p>
</dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="evennia.commands.default.building.ObjectDB.account">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">account</span></span><a class="headerlink" href="#evennia.commands.default.building.ObjectDB.account" title="Link to this definition"></a></dt>
<dd><p>A wrapper for getting database field <strong>db_account</strong>.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.ObjectDB.at_db_location_postsave">
<span class="sig-name descname"><span class="pre">at_db_location_postsave</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">new</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/models.html#ObjectDB.at_db_location_postsave"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.ObjectDB.at_db_location_postsave" title="Link to this definition"></a></dt>
<dd><p>This is called automatically after the location field was
saved, no matter how. It checks for a variable
_safe_contents_update to know if the save was triggered via
the location handler (which updates the contents cache) or
not.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>new</strong> (<em>bool</em>) Set if this location has not yet been saved before.</p>
</dd>
</dl>
</dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="evennia.commands.default.building.ObjectDB.cmdset_storage">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">cmdset_storage</span></span><a class="headerlink" href="#evennia.commands.default.building.ObjectDB.cmdset_storage" title="Link to this definition"></a></dt>
<dd><p>getter</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.ObjectDB.contents_cache">
<span class="sig-name descname"><span class="pre">contents_cache</span></span><a class="reference internal" href="../_modules/evennia/objects/models.html#ObjectDB.contents_cache"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.ObjectDB.contents_cache" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.ObjectDB.db_account">
<span class="sig-name descname"><span class="pre">db_account</span></span><a class="headerlink" href="#evennia.commands.default.building.ObjectDB.db_account" title="Link to this definition"></a></dt>
<dd><p>Accessor to the related object on the forward side of a many-to-one or
one-to-one (via ForwardOneToOneDescriptor subclass) relation.</p>
<p>In the example:</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="k">class</span><span class="w"> </span><span class="nc">Child</span><span class="p">(</span><span class="n">Model</span><span class="p">):</span>
<span class="n">parent</span> <span class="o">=</span> <span class="n">ForeignKey</span><span class="p">(</span><span class="n">Parent</span><span class="p">,</span> <span class="n">related_name</span><span class="o">=</span><span class="s1">&#39;children&#39;</span><span class="p">)</span>
</pre></div>
</div>
<p><strong>**Child.parent**</strong> is a <strong>**ForwardManyToOneDescriptor**</strong> instance.</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.ObjectDB.db_account_id">
<span class="sig-name descname"><span class="pre">db_account_id</span></span><a class="headerlink" href="#evennia.commands.default.building.ObjectDB.db_account_id" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.ObjectDB.db_attributes">
<span class="sig-name descname"><span class="pre">db_attributes</span></span><a class="headerlink" href="#evennia.commands.default.building.ObjectDB.db_attributes" title="Link to this definition"></a></dt>
<dd><p>Accessor to the related objects manager on the forward and reverse sides of
a many-to-many relation.</p>
<p>In the example:</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="k">class</span><span class="w"> </span><span class="nc">Pizza</span><span class="p">(</span><span class="n">Model</span><span class="p">):</span>
<span class="n">toppings</span> <span class="o">=</span> <span class="n">ManyToManyField</span><span class="p">(</span><span class="n">Topping</span><span class="p">,</span> <span class="n">related_name</span><span class="o">=</span><span class="s1">&#39;pizzas&#39;</span><span class="p">)</span>
</pre></div>
</div>
<p><strong>**Pizza.toppings**</strong> and <strong>**Topping.pizzas**</strong> are <strong>**ManyToManyDescriptor**</strong>
instances.</p>
<p>Most of the implementation is delegated to a dynamically defined manager
class built by <strong>**create_forward_many_to_many_manager()**</strong> defined below.</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.ObjectDB.db_cmdset_storage">
<span class="sig-name descname"><span class="pre">db_cmdset_storage</span></span><a class="headerlink" href="#evennia.commands.default.building.ObjectDB.db_cmdset_storage" title="Link to this definition"></a></dt>
<dd><p>A wrapper for a deferred-loading field. When the value is read from this
object the first time, the query is executed.</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.ObjectDB.db_date_created">
<span class="sig-name descname"><span class="pre">db_date_created</span></span><a class="headerlink" href="#evennia.commands.default.building.ObjectDB.db_date_created" title="Link to this definition"></a></dt>
<dd><p>A wrapper for a deferred-loading field. When the value is read from this
object the first time, the query is executed.</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.ObjectDB.db_destination">
<span class="sig-name descname"><span class="pre">db_destination</span></span><a class="headerlink" href="#evennia.commands.default.building.ObjectDB.db_destination" title="Link to this definition"></a></dt>
<dd><p>Accessor to the related object on the forward side of a many-to-one or
one-to-one (via ForwardOneToOneDescriptor subclass) relation.</p>
<p>In the example:</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="k">class</span><span class="w"> </span><span class="nc">Child</span><span class="p">(</span><span class="n">Model</span><span class="p">):</span>
<span class="n">parent</span> <span class="o">=</span> <span class="n">ForeignKey</span><span class="p">(</span><span class="n">Parent</span><span class="p">,</span> <span class="n">related_name</span><span class="o">=</span><span class="s1">&#39;children&#39;</span><span class="p">)</span>
</pre></div>
</div>
<p><strong>**Child.parent**</strong> is a <strong>**ForwardManyToOneDescriptor**</strong> instance.</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.ObjectDB.db_destination_id">
<span class="sig-name descname"><span class="pre">db_destination_id</span></span><a class="headerlink" href="#evennia.commands.default.building.ObjectDB.db_destination_id" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.ObjectDB.db_home">
<span class="sig-name descname"><span class="pre">db_home</span></span><a class="headerlink" href="#evennia.commands.default.building.ObjectDB.db_home" title="Link to this definition"></a></dt>
<dd><p>Accessor to the related object on the forward side of a many-to-one or
one-to-one (via ForwardOneToOneDescriptor subclass) relation.</p>
<p>In the example:</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="k">class</span><span class="w"> </span><span class="nc">Child</span><span class="p">(</span><span class="n">Model</span><span class="p">):</span>
<span class="n">parent</span> <span class="o">=</span> <span class="n">ForeignKey</span><span class="p">(</span><span class="n">Parent</span><span class="p">,</span> <span class="n">related_name</span><span class="o">=</span><span class="s1">&#39;children&#39;</span><span class="p">)</span>
</pre></div>
</div>
<p><strong>**Child.parent**</strong> is a <strong>**ForwardManyToOneDescriptor**</strong> instance.</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.ObjectDB.db_home_id">
<span class="sig-name descname"><span class="pre">db_home_id</span></span><a class="headerlink" href="#evennia.commands.default.building.ObjectDB.db_home_id" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.ObjectDB.db_key">
<span class="sig-name descname"><span class="pre">db_key</span></span><a class="headerlink" href="#evennia.commands.default.building.ObjectDB.db_key" title="Link to this definition"></a></dt>
<dd><p>A wrapper for a deferred-loading field. When the value is read from this
object the first time, the query is executed.</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.ObjectDB.db_location">
<span class="sig-name descname"><span class="pre">db_location</span></span><a class="headerlink" href="#evennia.commands.default.building.ObjectDB.db_location" title="Link to this definition"></a></dt>
<dd><p>Accessor to the related object on the forward side of a many-to-one or
one-to-one (via ForwardOneToOneDescriptor subclass) relation.</p>
<p>In the example:</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="k">class</span><span class="w"> </span><span class="nc">Child</span><span class="p">(</span><span class="n">Model</span><span class="p">):</span>
<span class="n">parent</span> <span class="o">=</span> <span class="n">ForeignKey</span><span class="p">(</span><span class="n">Parent</span><span class="p">,</span> <span class="n">related_name</span><span class="o">=</span><span class="s1">&#39;children&#39;</span><span class="p">)</span>
</pre></div>
</div>
<p><strong>**Child.parent**</strong> is a <strong>**ForwardManyToOneDescriptor**</strong> instance.</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.ObjectDB.db_location_id">
<span class="sig-name descname"><span class="pre">db_location_id</span></span><a class="headerlink" href="#evennia.commands.default.building.ObjectDB.db_location_id" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.ObjectDB.db_lock_storage">
<span class="sig-name descname"><span class="pre">db_lock_storage</span></span><a class="headerlink" href="#evennia.commands.default.building.ObjectDB.db_lock_storage" title="Link to this definition"></a></dt>
<dd><p>A wrapper for a deferred-loading field. When the value is read from this
object the first time, the query is executed.</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.ObjectDB.db_sessid">
<span class="sig-name descname"><span class="pre">db_sessid</span></span><a class="headerlink" href="#evennia.commands.default.building.ObjectDB.db_sessid" title="Link to this definition"></a></dt>
<dd><p>A wrapper for a deferred-loading field. When the value is read from this
object the first time, the query is executed.</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.ObjectDB.db_tags">
<span class="sig-name descname"><span class="pre">db_tags</span></span><a class="headerlink" href="#evennia.commands.default.building.ObjectDB.db_tags" title="Link to this definition"></a></dt>
<dd><p>Accessor to the related objects manager on the forward and reverse sides of
a many-to-many relation.</p>
<p>In the example:</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="k">class</span><span class="w"> </span><span class="nc">Pizza</span><span class="p">(</span><span class="n">Model</span><span class="p">):</span>
<span class="n">toppings</span> <span class="o">=</span> <span class="n">ManyToManyField</span><span class="p">(</span><span class="n">Topping</span><span class="p">,</span> <span class="n">related_name</span><span class="o">=</span><span class="s1">&#39;pizzas&#39;</span><span class="p">)</span>
</pre></div>
</div>
<p><strong>**Pizza.toppings**</strong> and <strong>**Topping.pizzas**</strong> are <strong>**ManyToManyDescriptor**</strong>
instances.</p>
<p>Most of the implementation is delegated to a dynamically defined manager
class built by <strong>**create_forward_many_to_many_manager()**</strong> defined below.</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.ObjectDB.db_typeclass_path">
<span class="sig-name descname"><span class="pre">db_typeclass_path</span></span><a class="headerlink" href="#evennia.commands.default.building.ObjectDB.db_typeclass_path" title="Link to this definition"></a></dt>
<dd><p>A wrapper for a deferred-loading field. When the value is read from this
object the first time, the query is executed.</p>
</dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="evennia.commands.default.building.ObjectDB.destination">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">destination</span></span><a class="headerlink" href="#evennia.commands.default.building.ObjectDB.destination" title="Link to this definition"></a></dt>
<dd><p>A wrapper for getting database field <strong>db_destination</strong>.</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.ObjectDB.destinations_set">
<span class="sig-name descname"><span class="pre">destinations_set</span></span><a class="headerlink" href="#evennia.commands.default.building.ObjectDB.destinations_set" title="Link to this definition"></a></dt>
<dd><p>Accessor to the related objects manager on the reverse side of a
many-to-one relation.</p>
<p>In the example:</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="k">class</span><span class="w"> </span><span class="nc">Child</span><span class="p">(</span><span class="n">Model</span><span class="p">):</span>
<span class="n">parent</span> <span class="o">=</span> <span class="n">ForeignKey</span><span class="p">(</span><span class="n">Parent</span><span class="p">,</span> <span class="n">related_name</span><span class="o">=</span><span class="s1">&#39;children&#39;</span><span class="p">)</span>
</pre></div>
</div>
<p><strong>**Parent.children**</strong> is a <strong>**ReverseManyToOneDescriptor**</strong> instance.</p>
<p>Most of the implementation is delegated to a dynamically defined manager
class built by <strong>**create_forward_many_to_many_manager()**</strong> defined below.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.ObjectDB.get_next_by_db_date_created">
<span class="sig-name descname"><span class="pre">get_next_by_db_date_created</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">*</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">field=&lt;django.db.models.fields.DateTimeField:</span> <span class="pre">db_date_created&gt;</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">is_next=True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">**kwargs</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#evennia.commands.default.building.ObjectDB.get_next_by_db_date_created" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.ObjectDB.get_previous_by_db_date_created">
<span class="sig-name descname"><span class="pre">get_previous_by_db_date_created</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">*</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">field=&lt;django.db.models.fields.DateTimeField:</span> <span class="pre">db_date_created&gt;</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">is_next=False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">**kwargs</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#evennia.commands.default.building.ObjectDB.get_previous_by_db_date_created" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.ObjectDB.hide_from_objects_set">
<span class="sig-name descname"><span class="pre">hide_from_objects_set</span></span><a class="headerlink" href="#evennia.commands.default.building.ObjectDB.hide_from_objects_set" title="Link to this definition"></a></dt>
<dd><p>Accessor to the related objects manager on the forward and reverse sides of
a many-to-many relation.</p>
<p>In the example:</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="k">class</span><span class="w"> </span><span class="nc">Pizza</span><span class="p">(</span><span class="n">Model</span><span class="p">):</span>
<span class="n">toppings</span> <span class="o">=</span> <span class="n">ManyToManyField</span><span class="p">(</span><span class="n">Topping</span><span class="p">,</span> <span class="n">related_name</span><span class="o">=</span><span class="s1">&#39;pizzas&#39;</span><span class="p">)</span>
</pre></div>
</div>
<p><strong>**Pizza.toppings**</strong> and <strong>**Topping.pizzas**</strong> are <strong>**ManyToManyDescriptor**</strong>
instances.</p>
<p>Most of the implementation is delegated to a dynamically defined manager
class built by <strong>**create_forward_many_to_many_manager()**</strong> defined below.</p>
</dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="evennia.commands.default.building.ObjectDB.home">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">home</span></span><a class="headerlink" href="#evennia.commands.default.building.ObjectDB.home" title="Link to this definition"></a></dt>
<dd><p>A wrapper for getting database field <strong>db_home</strong>.</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.ObjectDB.homes_set">
<span class="sig-name descname"><span class="pre">homes_set</span></span><a class="headerlink" href="#evennia.commands.default.building.ObjectDB.homes_set" title="Link to this definition"></a></dt>
<dd><p>Accessor to the related objects manager on the reverse side of a
many-to-one relation.</p>
<p>In the example:</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="k">class</span><span class="w"> </span><span class="nc">Child</span><span class="p">(</span><span class="n">Model</span><span class="p">):</span>
<span class="n">parent</span> <span class="o">=</span> <span class="n">ForeignKey</span><span class="p">(</span><span class="n">Parent</span><span class="p">,</span> <span class="n">related_name</span><span class="o">=</span><span class="s1">&#39;children&#39;</span><span class="p">)</span>
</pre></div>
</div>
<p><strong>**Parent.children**</strong> is a <strong>**ReverseManyToOneDescriptor**</strong> instance.</p>
<p>Most of the implementation is delegated to a dynamically defined manager
class built by <strong>**create_forward_many_to_many_manager()**</strong> defined below.</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.ObjectDB.id">
<span class="sig-name descname"><span class="pre">id</span></span><a class="headerlink" href="#evennia.commands.default.building.ObjectDB.id" title="Link to this definition"></a></dt>
<dd><p>A wrapper for a deferred-loading field. When the value is read from this
object the first time, the query is executed.</p>
</dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="evennia.commands.default.building.ObjectDB.location">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">location</span></span><a class="headerlink" href="#evennia.commands.default.building.ObjectDB.location" title="Link to this definition"></a></dt>
<dd><p>Get location</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.ObjectDB.locations_set">
<span class="sig-name descname"><span class="pre">locations_set</span></span><a class="headerlink" href="#evennia.commands.default.building.ObjectDB.locations_set" title="Link to this definition"></a></dt>
<dd><p>Accessor to the related objects manager on the reverse side of a
many-to-one relation.</p>
<p>In the example:</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="k">class</span><span class="w"> </span><span class="nc">Child</span><span class="p">(</span><span class="n">Model</span><span class="p">):</span>
<span class="n">parent</span> <span class="o">=</span> <span class="n">ForeignKey</span><span class="p">(</span><span class="n">Parent</span><span class="p">,</span> <span class="n">related_name</span><span class="o">=</span><span class="s1">&#39;children&#39;</span><span class="p">)</span>
</pre></div>
</div>
<p><strong>**Parent.children**</strong> is a <strong>**ReverseManyToOneDescriptor**</strong> instance.</p>
<p>Most of the implementation is delegated to a dynamically defined manager
class built by <strong>**create_forward_many_to_many_manager()**</strong> defined below.</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.ObjectDB.object_subscription_set">
<span class="sig-name descname"><span class="pre">object_subscription_set</span></span><a class="headerlink" href="#evennia.commands.default.building.ObjectDB.object_subscription_set" title="Link to this definition"></a></dt>
<dd><p>Accessor to the related objects manager on the forward and reverse sides of
a many-to-many relation.</p>
<p>In the example:</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="k">class</span><span class="w"> </span><span class="nc">Pizza</span><span class="p">(</span><span class="n">Model</span><span class="p">):</span>
<span class="n">toppings</span> <span class="o">=</span> <span class="n">ManyToManyField</span><span class="p">(</span><span class="n">Topping</span><span class="p">,</span> <span class="n">related_name</span><span class="o">=</span><span class="s1">&#39;pizzas&#39;</span><span class="p">)</span>
</pre></div>
</div>
<p><strong>**Pizza.toppings**</strong> and <strong>**Topping.pizzas**</strong> are <strong>**ManyToManyDescriptor**</strong>
instances.</p>
<p>Most of the implementation is delegated to a dynamically defined manager
class built by <strong>**create_forward_many_to_many_manager()**</strong> defined below.</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.ObjectDB.objects">
<span class="sig-name descname"><span class="pre">objects</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">&lt;evennia.objects.manager.ObjectDBManager</span> <span class="pre">object&gt;</span></em><a class="headerlink" href="#evennia.commands.default.building.ObjectDB.objects" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.ObjectDB.path">
<span class="sig-name descname"><span class="pre">path</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'evennia.objects.models.ObjectDB'</span></em><a class="headerlink" href="#evennia.commands.default.building.ObjectDB.path" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.ObjectDB.receiver_object_set">
<span class="sig-name descname"><span class="pre">receiver_object_set</span></span><a class="headerlink" href="#evennia.commands.default.building.ObjectDB.receiver_object_set" title="Link to this definition"></a></dt>
<dd><p>Accessor to the related objects manager on the forward and reverse sides of
a many-to-many relation.</p>
<p>In the example:</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="k">class</span><span class="w"> </span><span class="nc">Pizza</span><span class="p">(</span><span class="n">Model</span><span class="p">):</span>
<span class="n">toppings</span> <span class="o">=</span> <span class="n">ManyToManyField</span><span class="p">(</span><span class="n">Topping</span><span class="p">,</span> <span class="n">related_name</span><span class="o">=</span><span class="s1">&#39;pizzas&#39;</span><span class="p">)</span>
</pre></div>
</div>
<p><strong>**Pizza.toppings**</strong> and <strong>**Topping.pizzas**</strong> are <strong>**ManyToManyDescriptor**</strong>
instances.</p>
<p>Most of the implementation is delegated to a dynamically defined manager
class built by <strong>**create_forward_many_to_many_manager()**</strong> defined below.</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.ObjectDB.scriptdb_set">
<span class="sig-name descname"><span class="pre">scriptdb_set</span></span><a class="headerlink" href="#evennia.commands.default.building.ObjectDB.scriptdb_set" title="Link to this definition"></a></dt>
<dd><p>Accessor to the related objects manager on the reverse side of a
many-to-one relation.</p>
<p>In the example:</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="k">class</span><span class="w"> </span><span class="nc">Child</span><span class="p">(</span><span class="n">Model</span><span class="p">):</span>
<span class="n">parent</span> <span class="o">=</span> <span class="n">ForeignKey</span><span class="p">(</span><span class="n">Parent</span><span class="p">,</span> <span class="n">related_name</span><span class="o">=</span><span class="s1">&#39;children&#39;</span><span class="p">)</span>
</pre></div>
</div>
<p><strong>**Parent.children**</strong> is a <strong>**ReverseManyToOneDescriptor**</strong> instance.</p>
<p>Most of the implementation is delegated to a dynamically defined manager
class built by <strong>**create_forward_many_to_many_manager()**</strong> defined below.</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.ObjectDB.sender_object_set">
<span class="sig-name descname"><span class="pre">sender_object_set</span></span><a class="headerlink" href="#evennia.commands.default.building.ObjectDB.sender_object_set" title="Link to this definition"></a></dt>
<dd><p>Accessor to the related objects manager on the forward and reverse sides of
a many-to-many relation.</p>
<p>In the example:</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="k">class</span><span class="w"> </span><span class="nc">Pizza</span><span class="p">(</span><span class="n">Model</span><span class="p">):</span>
<span class="n">toppings</span> <span class="o">=</span> <span class="n">ManyToManyField</span><span class="p">(</span><span class="n">Topping</span><span class="p">,</span> <span class="n">related_name</span><span class="o">=</span><span class="s1">&#39;pizzas&#39;</span><span class="p">)</span>
</pre></div>
</div>
<p><strong>**Pizza.toppings**</strong> and <strong>**Topping.pizzas**</strong> are <strong>**ManyToManyDescriptor**</strong>
instances.</p>
<p>Most of the implementation is delegated to a dynamically defined manager
class built by <strong>**create_forward_many_to_many_manager()**</strong> defined below.</p>
</dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="evennia.commands.default.building.ObjectDB.sessid">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">sessid</span></span><a class="headerlink" href="#evennia.commands.default.building.ObjectDB.sessid" title="Link to this definition"></a></dt>
<dd><p>A wrapper for getting database field <strong>db_sessid</strong>.</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.ObjectDB.typename">
<span class="sig-name descname"><span class="pre">typename</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'SharedMemoryModelBase'</span></em><a class="headerlink" href="#evennia.commands.default.building.ObjectDB.typename" title="Link to this definition"></a></dt>
<dd></dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="evennia.commands.default.building.Paginator">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">evennia.commands.default.building.</span></span><span class="sig-name descname"><span class="pre">Paginator</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">object_list</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">per_page</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">orphans</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">allow_empty_first_page</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">error_messages</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/django/core/paginator.html#Paginator"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.Paginator" title="Link to this definition"></a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">object</span></code></p>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.Paginator.ELLIPSIS">
<span class="sig-name descname"><span class="pre">ELLIPSIS</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'…'</span></em><a class="headerlink" href="#evennia.commands.default.building.Paginator.ELLIPSIS" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.Paginator.__init__">
<span class="sig-name descname"><span class="pre">__init__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">object_list</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">per_page</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">orphans</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">allow_empty_first_page</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">error_messages</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/django/core/paginator.html#Paginator.__init__"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.Paginator.__init__" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.Paginator.count">
<span class="sig-name descname"><span class="pre">count</span></span><a class="headerlink" href="#evennia.commands.default.building.Paginator.count" title="Link to this definition"></a></dt>
<dd><p>Return the total number of objects, across all pages.</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.Paginator.default_error_messages">
<span class="sig-name descname"><span class="pre">default_error_messages</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">{'invalid_page':</span> <span class="pre">'That</span> <span class="pre">page</span> <span class="pre">number</span> <span class="pre">is</span> <span class="pre">not</span> <span class="pre">an</span> <span class="pre">integer',</span> <span class="pre">'min_page':</span> <span class="pre">'That</span> <span class="pre">page</span> <span class="pre">number</span> <span class="pre">is</span> <span class="pre">less</span> <span class="pre">than</span> <span class="pre">1',</span> <span class="pre">'no_results':</span> <span class="pre">'That</span> <span class="pre">page</span> <span class="pre">contains</span> <span class="pre">no</span> <span class="pre">results'}</span></em><a class="headerlink" href="#evennia.commands.default.building.Paginator.default_error_messages" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.Paginator.get_elided_page_range">
<span class="sig-name descname"><span class="pre">get_elided_page_range</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">number</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">1</span></span></em>, <em class="sig-param"><span class="keyword-only-separator o"><abbr title="Keyword-only parameters separator (PEP 3102)"><span class="pre">*</span></abbr></span></em>, <em class="sig-param"><span class="n"><span class="pre">on_each_side</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">3</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">on_ends</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">2</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/django/core/paginator.html#Paginator.get_elided_page_range"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.Paginator.get_elided_page_range" title="Link to this definition"></a></dt>
<dd><p>Return a 1-based range of pages with some values elided.</p>
<p>If the page range is larger than a given size, the whole range is not
provided and a compact form is returned instead, e.g. for a paginator
with 50 pages, if page 43 were the current page, the output, with the
default arguments, would be:</p>
<blockquote>
<div><p>1, 2, …, 40, 41, 42, 43, 44, 45, 46, …, 49, 50.</p>
</div></blockquote>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.Paginator.get_page">
<span class="sig-name descname"><span class="pre">get_page</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">number</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/django/core/paginator.html#Paginator.get_page"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.Paginator.get_page" title="Link to this definition"></a></dt>
<dd><p>Return a valid page, even if the page argument isnt a number or isnt
in range.</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.Paginator.num_pages">
<span class="sig-name descname"><span class="pre">num_pages</span></span><a class="headerlink" href="#evennia.commands.default.building.Paginator.num_pages" title="Link to this definition"></a></dt>
<dd><p>Return the total number of pages.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.Paginator.page">
<span class="sig-name descname"><span class="pre">page</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">number</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/django/core/paginator.html#Paginator.page"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.Paginator.page" title="Link to this definition"></a></dt>
<dd><p>Return a Page object for the given 1-based page number.</p>
</dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="evennia.commands.default.building.Paginator.page_range">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">page_range</span></span><a class="headerlink" href="#evennia.commands.default.building.Paginator.page_range" title="Link to this definition"></a></dt>
<dd><p>Return a 1-based range of pages for iterating through within
a template for loop.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.Paginator.validate_number">
<span class="sig-name descname"><span class="pre">validate_number</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">number</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/django/core/paginator.html#Paginator.validate_number"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.Paginator.validate_number" title="Link to this definition"></a></dt>
<dd><p>Validate the given 1-based page number.</p>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="evennia.commands.default.building.Q">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">evennia.commands.default.building.</span></span><span class="sig-name descname"><span class="pre">Q</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">_connector</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">_negated</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/django/db/models/query_utils.html#Q"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.Q" title="Link to this definition"></a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">Node</span></code></p>
<p>Encapsulate filters as objects that can then be combined logically (using
<strong>&amp;</strong> and <strong>|</strong>).</p>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.Q.AND">
<span class="sig-name descname"><span class="pre">AND</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'AND'</span></em><a class="headerlink" href="#evennia.commands.default.building.Q.AND" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.Q.OR">
<span class="sig-name descname"><span class="pre">OR</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'OR'</span></em><a class="headerlink" href="#evennia.commands.default.building.Q.OR" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.Q.XOR">
<span class="sig-name descname"><span class="pre">XOR</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'XOR'</span></em><a class="headerlink" href="#evennia.commands.default.building.Q.XOR" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.Q.__init__">
<span class="sig-name descname"><span class="pre">__init__</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">_connector</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">_negated</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/django/db/models/query_utils.html#Q.__init__"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.Q.__init__" title="Link to this definition"></a></dt>
<dd><p>Construct a new Node. If no connector is given, use the default.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.Q.check">
<span class="sig-name descname"><span class="pre">check</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">against</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">using</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'default'</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/django/db/models/query_utils.html#Q.check"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.Q.check" title="Link to this definition"></a></dt>
<dd><p>Do a database query to check if the expressions of the Q instance
matches against the expressions.</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.Q.conditional">
<span class="sig-name descname"><span class="pre">conditional</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">True</span></em><a class="headerlink" href="#evennia.commands.default.building.Q.conditional" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.Q.connectors">
<span class="sig-name descname"><span class="pre">connectors</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">(None,</span> <span class="pre">'AND',</span> <span class="pre">'OR',</span> <span class="pre">'XOR')</span></em><a class="headerlink" href="#evennia.commands.default.building.Q.connectors" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.Q.deconstruct">
<span class="sig-name descname"><span class="pre">deconstruct</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/django/db/models/query_utils.html#Q.deconstruct"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.Q.deconstruct" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.Q.default">
<span class="sig-name descname"><span class="pre">default</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'AND'</span></em><a class="headerlink" href="#evennia.commands.default.building.Q.default" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.Q.flatten">
<span class="sig-name descname"><span class="pre">flatten</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/django/db/models/query_utils.html#Q.flatten"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.Q.flatten" title="Link to this definition"></a></dt>
<dd><p>Recursively yield this Q object and all subexpressions, in depth-first
order.</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.Q.identity">
<span class="sig-name descname"><span class="pre">identity</span></span><a class="headerlink" href="#evennia.commands.default.building.Q.identity" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.Q.referenced_base_fields">
<span class="sig-name descname"><span class="pre">referenced_base_fields</span></span><a class="headerlink" href="#evennia.commands.default.building.Q.referenced_base_fields" title="Link to this definition"></a></dt>
<dd><p>Retrieve all base fields referenced directly or through F expressions
excluding any fields referenced through joins.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.Q.replace_expressions">
<span class="sig-name descname"><span class="pre">replace_expressions</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">replacements</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/django/db/models/query_utils.html#Q.replace_expressions"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.Q.replace_expressions" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.Q.resolve_expression">
<span class="sig-name descname"><span class="pre">resolve_expression</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">query</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">allow_joins</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">reuse</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">summarize</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">for_save</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/django/db/models/query_utils.html#Q.resolve_expression"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.Q.resolve_expression" title="Link to this definition"></a></dt>
<dd></dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="evennia.commands.default.building.ScriptDB">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">evennia.commands.default.building.</span></span><span class="sig-name descname"><span class="pre">ScriptDB</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/scripts/models.html#ScriptDB"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.ScriptDB" title="Link to this definition"></a></dt>
<dd><p>Bases: <a class="reference internal" href="evennia.typeclasses.models.html#evennia.typeclasses.models.TypedObject" title="evennia.typeclasses.models.TypedObject"><code class="xref py py-class docutils literal notranslate"><span class="pre">TypedObject</span></code></a></p>
<p>The Script database representation.</p>
<dl class="simple">
<dt>The TypedObject supplies the following (inherited) properties:</dt><dd><p>key - main name
name - alias for key
typeclass_path - the path to the decorating typeclass
typeclass - auto-linked typeclass
date_created - time stamp of object creation
permissions - perm strings
dbref - #id of object
db - persistent attribute storage
ndb - non-persistent attribute storage</p>
</dd>
<dt>The ScriptDB adds the following properties:</dt><dd><p>desc - optional description of script
obj - the object the script is linked to, if any
account - the account the script is linked to (exclusive with obj)
interval - how often script should run
start_delay - if the script should start repeating right away
repeats - how many times the script should repeat
persistent - if script should survive a server reboot
is_active - bool if script is currently running</p>
</dd>
</dl>
<dl class="py exception">
<dt class="sig sig-object py" id="evennia.commands.default.building.ScriptDB.DoesNotExist">
<em class="property"><span class="k"><span class="pre">exception</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">DoesNotExist</span></span><a class="headerlink" href="#evennia.commands.default.building.ScriptDB.DoesNotExist" title="Link to this definition"></a></dt>
<dd><p>Bases: <a class="reference internal" href="evennia.utils.dbserialize.html#evennia.utils.dbserialize.ObjectDoesNotExist" title="django.core.exceptions.ObjectDoesNotExist"><code class="xref py py-class docutils literal notranslate"><span class="pre">ObjectDoesNotExist</span></code></a></p>
</dd></dl>
<dl class="py exception">
<dt class="sig sig-object py" id="evennia.commands.default.building.ScriptDB.MultipleObjectsReturned">
<em class="property"><span class="k"><span class="pre">exception</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">MultipleObjectsReturned</span></span><a class="headerlink" href="#evennia.commands.default.building.ScriptDB.MultipleObjectsReturned" title="Link to this definition"></a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">MultipleObjectsReturned</span></code></p>
</dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="evennia.commands.default.building.ScriptDB.account">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">account</span></span><a class="headerlink" href="#evennia.commands.default.building.ScriptDB.account" title="Link to this definition"></a></dt>
<dd><p>A wrapper for getting database field <strong>db_account</strong>.</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.ScriptDB.db_account">
<span class="sig-name descname"><span class="pre">db_account</span></span><a class="headerlink" href="#evennia.commands.default.building.ScriptDB.db_account" title="Link to this definition"></a></dt>
<dd><p>Accessor to the related object on the forward side of a many-to-one or
one-to-one (via ForwardOneToOneDescriptor subclass) relation.</p>
<p>In the example:</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="k">class</span><span class="w"> </span><span class="nc">Child</span><span class="p">(</span><span class="n">Model</span><span class="p">):</span>
<span class="n">parent</span> <span class="o">=</span> <span class="n">ForeignKey</span><span class="p">(</span><span class="n">Parent</span><span class="p">,</span> <span class="n">related_name</span><span class="o">=</span><span class="s1">&#39;children&#39;</span><span class="p">)</span>
</pre></div>
</div>
<p><strong>**Child.parent**</strong> is a <strong>**ForwardManyToOneDescriptor**</strong> instance.</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.ScriptDB.db_account_id">
<span class="sig-name descname"><span class="pre">db_account_id</span></span><a class="headerlink" href="#evennia.commands.default.building.ScriptDB.db_account_id" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.ScriptDB.db_attributes">
<span class="sig-name descname"><span class="pre">db_attributes</span></span><a class="headerlink" href="#evennia.commands.default.building.ScriptDB.db_attributes" title="Link to this definition"></a></dt>
<dd><p>Accessor to the related objects manager on the forward and reverse sides of
a many-to-many relation.</p>
<p>In the example:</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="k">class</span><span class="w"> </span><span class="nc">Pizza</span><span class="p">(</span><span class="n">Model</span><span class="p">):</span>
<span class="n">toppings</span> <span class="o">=</span> <span class="n">ManyToManyField</span><span class="p">(</span><span class="n">Topping</span><span class="p">,</span> <span class="n">related_name</span><span class="o">=</span><span class="s1">&#39;pizzas&#39;</span><span class="p">)</span>
</pre></div>
</div>
<p><strong>**Pizza.toppings**</strong> and <strong>**Topping.pizzas**</strong> are <strong>**ManyToManyDescriptor**</strong>
instances.</p>
<p>Most of the implementation is delegated to a dynamically defined manager
class built by <strong>**create_forward_many_to_many_manager()**</strong> defined below.</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.ScriptDB.db_date_created">
<span class="sig-name descname"><span class="pre">db_date_created</span></span><a class="headerlink" href="#evennia.commands.default.building.ScriptDB.db_date_created" title="Link to this definition"></a></dt>
<dd><p>A wrapper for a deferred-loading field. When the value is read from this
object the first time, the query is executed.</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.ScriptDB.db_desc">
<span class="sig-name descname"><span class="pre">db_desc</span></span><a class="headerlink" href="#evennia.commands.default.building.ScriptDB.db_desc" title="Link to this definition"></a></dt>
<dd><p>A wrapper for a deferred-loading field. When the value is read from this
object the first time, the query is executed.</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.ScriptDB.db_interval">
<span class="sig-name descname"><span class="pre">db_interval</span></span><a class="headerlink" href="#evennia.commands.default.building.ScriptDB.db_interval" title="Link to this definition"></a></dt>
<dd><p>A wrapper for a deferred-loading field. When the value is read from this
object the first time, the query is executed.</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.ScriptDB.db_is_active">
<span class="sig-name descname"><span class="pre">db_is_active</span></span><a class="headerlink" href="#evennia.commands.default.building.ScriptDB.db_is_active" title="Link to this definition"></a></dt>
<dd><p>A wrapper for a deferred-loading field. When the value is read from this
object the first time, the query is executed.</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.ScriptDB.db_key">
<span class="sig-name descname"><span class="pre">db_key</span></span><a class="headerlink" href="#evennia.commands.default.building.ScriptDB.db_key" title="Link to this definition"></a></dt>
<dd><p>A wrapper for a deferred-loading field. When the value is read from this
object the first time, the query is executed.</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.ScriptDB.db_lock_storage">
<span class="sig-name descname"><span class="pre">db_lock_storage</span></span><a class="headerlink" href="#evennia.commands.default.building.ScriptDB.db_lock_storage" title="Link to this definition"></a></dt>
<dd><p>A wrapper for a deferred-loading field. When the value is read from this
object the first time, the query is executed.</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.ScriptDB.db_obj">
<span class="sig-name descname"><span class="pre">db_obj</span></span><a class="headerlink" href="#evennia.commands.default.building.ScriptDB.db_obj" title="Link to this definition"></a></dt>
<dd><p>Accessor to the related object on the forward side of a many-to-one or
one-to-one (via ForwardOneToOneDescriptor subclass) relation.</p>
<p>In the example:</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="k">class</span><span class="w"> </span><span class="nc">Child</span><span class="p">(</span><span class="n">Model</span><span class="p">):</span>
<span class="n">parent</span> <span class="o">=</span> <span class="n">ForeignKey</span><span class="p">(</span><span class="n">Parent</span><span class="p">,</span> <span class="n">related_name</span><span class="o">=</span><span class="s1">&#39;children&#39;</span><span class="p">)</span>
</pre></div>
</div>
<p><strong>**Child.parent**</strong> is a <strong>**ForwardManyToOneDescriptor**</strong> instance.</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.ScriptDB.db_obj_id">
<span class="sig-name descname"><span class="pre">db_obj_id</span></span><a class="headerlink" href="#evennia.commands.default.building.ScriptDB.db_obj_id" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.ScriptDB.db_persistent">
<span class="sig-name descname"><span class="pre">db_persistent</span></span><a class="headerlink" href="#evennia.commands.default.building.ScriptDB.db_persistent" title="Link to this definition"></a></dt>
<dd><p>A wrapper for a deferred-loading field. When the value is read from this
object the first time, the query is executed.</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.ScriptDB.db_repeats">
<span class="sig-name descname"><span class="pre">db_repeats</span></span><a class="headerlink" href="#evennia.commands.default.building.ScriptDB.db_repeats" title="Link to this definition"></a></dt>
<dd><p>A wrapper for a deferred-loading field. When the value is read from this
object the first time, the query is executed.</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.ScriptDB.db_start_delay">
<span class="sig-name descname"><span class="pre">db_start_delay</span></span><a class="headerlink" href="#evennia.commands.default.building.ScriptDB.db_start_delay" title="Link to this definition"></a></dt>
<dd><p>A wrapper for a deferred-loading field. When the value is read from this
object the first time, the query is executed.</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.ScriptDB.db_tags">
<span class="sig-name descname"><span class="pre">db_tags</span></span><a class="headerlink" href="#evennia.commands.default.building.ScriptDB.db_tags" title="Link to this definition"></a></dt>
<dd><p>Accessor to the related objects manager on the forward and reverse sides of
a many-to-many relation.</p>
<p>In the example:</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="k">class</span><span class="w"> </span><span class="nc">Pizza</span><span class="p">(</span><span class="n">Model</span><span class="p">):</span>
<span class="n">toppings</span> <span class="o">=</span> <span class="n">ManyToManyField</span><span class="p">(</span><span class="n">Topping</span><span class="p">,</span> <span class="n">related_name</span><span class="o">=</span><span class="s1">&#39;pizzas&#39;</span><span class="p">)</span>
</pre></div>
</div>
<p><strong>**Pizza.toppings**</strong> and <strong>**Topping.pizzas**</strong> are <strong>**ManyToManyDescriptor**</strong>
instances.</p>
<p>Most of the implementation is delegated to a dynamically defined manager
class built by <strong>**create_forward_many_to_many_manager()**</strong> defined below.</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.ScriptDB.db_typeclass_path">
<span class="sig-name descname"><span class="pre">db_typeclass_path</span></span><a class="headerlink" href="#evennia.commands.default.building.ScriptDB.db_typeclass_path" title="Link to this definition"></a></dt>
<dd><p>A wrapper for a deferred-loading field. When the value is read from this
object the first time, the query is executed.</p>
</dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="evennia.commands.default.building.ScriptDB.desc">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">desc</span></span><a class="headerlink" href="#evennia.commands.default.building.ScriptDB.desc" title="Link to this definition"></a></dt>
<dd><p>A wrapper for getting database field <strong>db_desc</strong>.</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.ScriptDB.get_next_by_db_date_created">
<span class="sig-name descname"><span class="pre">get_next_by_db_date_created</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">*</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">field=&lt;django.db.models.fields.DateTimeField:</span> <span class="pre">db_date_created&gt;</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">is_next=True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">**kwargs</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#evennia.commands.default.building.ScriptDB.get_next_by_db_date_created" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.ScriptDB.get_previous_by_db_date_created">
<span class="sig-name descname"><span class="pre">get_previous_by_db_date_created</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">*</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">field=&lt;django.db.models.fields.DateTimeField:</span> <span class="pre">db_date_created&gt;</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">is_next=False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">**kwargs</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#evennia.commands.default.building.ScriptDB.get_previous_by_db_date_created" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.ScriptDB.id">
<span class="sig-name descname"><span class="pre">id</span></span><a class="headerlink" href="#evennia.commands.default.building.ScriptDB.id" title="Link to this definition"></a></dt>
<dd><p>A wrapper for a deferred-loading field. When the value is read from this
object the first time, the query is executed.</p>
</dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="evennia.commands.default.building.ScriptDB.interval">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">interval</span></span><a class="headerlink" href="#evennia.commands.default.building.ScriptDB.interval" title="Link to this definition"></a></dt>
<dd><p>A wrapper for getting database field <strong>db_interval</strong>.</p>
</dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="evennia.commands.default.building.ScriptDB.is_active">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">is_active</span></span><a class="headerlink" href="#evennia.commands.default.building.ScriptDB.is_active" title="Link to this definition"></a></dt>
<dd><p>A wrapper for getting database field <strong>db_is_active</strong>.</p>
</dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="evennia.commands.default.building.ScriptDB.obj">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">obj</span></span><a class="headerlink" href="#evennia.commands.default.building.ScriptDB.obj" title="Link to this definition"></a></dt>
<dd><p>Property wrapper that homogenizes access to either the
db_account or db_obj field, using the same object property
name.</p>
</dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="evennia.commands.default.building.ScriptDB.object">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">object</span></span><a class="headerlink" href="#evennia.commands.default.building.ScriptDB.object" title="Link to this definition"></a></dt>
<dd><p>Property wrapper that homogenizes access to either the
db_account or db_obj field, using the same object property
name.</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.ScriptDB.objects">
<span class="sig-name descname"><span class="pre">objects</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">&lt;evennia.scripts.manager.ScriptDBManager</span> <span class="pre">object&gt;</span></em><a class="headerlink" href="#evennia.commands.default.building.ScriptDB.objects" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.ScriptDB.path">
<span class="sig-name descname"><span class="pre">path</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'evennia.scripts.models.ScriptDB'</span></em><a class="headerlink" href="#evennia.commands.default.building.ScriptDB.path" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="evennia.commands.default.building.ScriptDB.persistent">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">persistent</span></span><a class="headerlink" href="#evennia.commands.default.building.ScriptDB.persistent" title="Link to this definition"></a></dt>
<dd><p>A wrapper for getting database field <strong>db_persistent</strong>.</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.ScriptDB.receiver_script_set">
<span class="sig-name descname"><span class="pre">receiver_script_set</span></span><a class="headerlink" href="#evennia.commands.default.building.ScriptDB.receiver_script_set" title="Link to this definition"></a></dt>
<dd><p>Accessor to the related objects manager on the forward and reverse sides of
a many-to-many relation.</p>
<p>In the example:</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="k">class</span><span class="w"> </span><span class="nc">Pizza</span><span class="p">(</span><span class="n">Model</span><span class="p">):</span>
<span class="n">toppings</span> <span class="o">=</span> <span class="n">ManyToManyField</span><span class="p">(</span><span class="n">Topping</span><span class="p">,</span> <span class="n">related_name</span><span class="o">=</span><span class="s1">&#39;pizzas&#39;</span><span class="p">)</span>
</pre></div>
</div>
<p><strong>**Pizza.toppings**</strong> and <strong>**Topping.pizzas**</strong> are <strong>**ManyToManyDescriptor**</strong>
instances.</p>
<p>Most of the implementation is delegated to a dynamically defined manager
class built by <strong>**create_forward_many_to_many_manager()**</strong> defined below.</p>
</dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="evennia.commands.default.building.ScriptDB.repeats">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">repeats</span></span><a class="headerlink" href="#evennia.commands.default.building.ScriptDB.repeats" title="Link to this definition"></a></dt>
<dd><p>A wrapper for getting database field <strong>db_repeats</strong>.</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.ScriptDB.sender_script_set">
<span class="sig-name descname"><span class="pre">sender_script_set</span></span><a class="headerlink" href="#evennia.commands.default.building.ScriptDB.sender_script_set" title="Link to this definition"></a></dt>
<dd><p>Accessor to the related objects manager on the forward and reverse sides of
a many-to-many relation.</p>
<p>In the example:</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="k">class</span><span class="w"> </span><span class="nc">Pizza</span><span class="p">(</span><span class="n">Model</span><span class="p">):</span>
<span class="n">toppings</span> <span class="o">=</span> <span class="n">ManyToManyField</span><span class="p">(</span><span class="n">Topping</span><span class="p">,</span> <span class="n">related_name</span><span class="o">=</span><span class="s1">&#39;pizzas&#39;</span><span class="p">)</span>
</pre></div>
</div>
<p><strong>**Pizza.toppings**</strong> and <strong>**Topping.pizzas**</strong> are <strong>**ManyToManyDescriptor**</strong>
instances.</p>
<p>Most of the implementation is delegated to a dynamically defined manager
class built by <strong>**create_forward_many_to_many_manager()**</strong> defined below.</p>
</dd></dl>
<dl class="py property">
<dt class="sig sig-object py" id="evennia.commands.default.building.ScriptDB.start_delay">
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">start_delay</span></span><a class="headerlink" href="#evennia.commands.default.building.ScriptDB.start_delay" title="Link to this definition"></a></dt>
<dd><p>A wrapper for getting database field <strong>db_start_delay</strong>.</p>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="evennia.commands.default.building.ScriptDB.typename">
<span class="sig-name descname"><span class="pre">typename</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'SharedMemoryModelBase'</span></em><a class="headerlink" href="#evennia.commands.default.building.ScriptDB.typename" title="Link to this definition"></a></dt>
<dd></dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="evennia.commands.default.building.ScriptEvMore">
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">evennia.commands.default.building.</span></span><span class="sig-name descname"><span class="pre">ScriptEvMore</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">caller</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">inp</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">always_page=False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">session=None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">justify=False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">justify_kwargs=None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">exit_on_lastpage=False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">exit_cmd=None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">page_formatter=&lt;class</span> <span class="pre">'str'&gt;</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">**kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#ScriptEvMore"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.ScriptEvMore" title="Link to this definition"></a></dt>
<dd><p>Bases: <a class="reference internal" href="evennia.utils.evmore.html#evennia.utils.evmore.EvMore" title="evennia.utils.evmore.EvMore"><code class="xref py py-class docutils literal notranslate"><span class="pre">EvMore</span></code></a></p>
<p>Listing 1000+ Scripts can be very slow and memory-consuming. So
we use this custom EvMore child to build en EvTable only for
each page of the list.</p>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.ScriptEvMore.init_pages">
<span class="sig-name descname"><span class="pre">init_pages</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">scripts</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#ScriptEvMore.init_pages"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.ScriptEvMore.init_pages" title="Link to this definition"></a></dt>
<dd><p>Prepare the script list pagination</p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="evennia.commands.default.building.ScriptEvMore.page_formatter">
<span class="sig-name descname"><span class="pre">page_formatter</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">scripts</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/default/building.html#ScriptEvMore.page_formatter"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.ScriptEvMore.page_formatter" title="Link to this definition"></a></dt>
<dd><p>Takes a page of scripts and formats the output
into an EvTable.</p>
</dd></dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="evennia.commands.default.building.ansi_raw">
<span class="sig-prename descclassname"><span class="pre">evennia.commands.default.building.</span></span><span class="sig-name descname"><span class="pre">ansi_raw</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">string</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#evennia.commands.default.building.ansi_raw" title="Link to this definition"></a></dt>
<dd><p>Escapes a string into a form which wont be colorized by the ansi
parser.</p>
<dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p><em>string (str)</em> The raw, escaped string.</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="evennia.commands.default.building.class_from_module">
<span class="sig-prename descclassname"><span class="pre">evennia.commands.default.building.</span></span><span class="sig-name descname"><span class="pre">class_from_module</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">path</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">defaultpaths</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">fallback</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/utils/utils.html#class_from_module"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.class_from_module" title="Link to this definition"></a></dt>
<dd><p>Return a class from a module, given the class full python path. This is
primarily used to convert db_typeclass_path:s to classes.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>path</strong> (<em>str</em>) Full Python dot-path to module.</p></li>
<li><p><strong>defaultpaths</strong> (<em>iterable</em><em>, </em><em>optional</em>) If a direct import from <strong>path</strong> fails,
try subsequent imports by prepending those paths to <strong>path</strong>.</p></li>
<li><p><strong>fallback</strong> (<em>str</em>) If all other attempts fail, use this path as a fallback.
This is intended as a last-resort. In the example of Evennia
loading, this would be a path to a default parent class in the
evennia repo itself.</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p><em>class (Class)</em> An uninstantiated class recovered from path.</p>
</dd>
<dt class="field-odd">Raises<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>ImportError</strong> If all loading failed.</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="evennia.commands.default.building.crop">
<span class="sig-prename descclassname"><span class="pre">evennia.commands.default.building.</span></span><span class="sig-name descname"><span class="pre">crop</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">text</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">width</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">suffix</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'[...]'</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/utils/utils.html#crop"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.crop" title="Link to this definition"></a></dt>
<dd><p>Crop text to a certain width, throwing away text from too-long
lines.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>text</strong> (<em>str</em>) Text to crop.</p></li>
<li><p><strong>width</strong> (<em>int</em><em>, </em><em>optional</em>) Width of line to crop, in characters.</p></li>
<li><p><strong>suffix</strong> (<em>str</em><em>, </em><em>optional</em>) This is appended to the end of cropped
lines to show that the line actually continues. Cropping
will be done so that the suffix will also fit within the
given width. If width is too small to fit both crop and
suffix, the suffix will be dropped.</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p><em>text (str)</em> The cropped text.</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="evennia.commands.default.building.dbref">
<span class="sig-prename descclassname"><span class="pre">evennia.commands.default.building.</span></span><span class="sig-name descname"><span class="pre">dbref</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">inp</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">reqhash</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/utils/utils.html#dbref"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.dbref" title="Link to this definition"></a></dt>
<dd><p>Converts/checks if input is a valid dbref.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>inp</strong> (<em>int</em><em>, </em><em>str</em>) A database ref on the form N or #N.</p></li>
<li><p><strong>reqhash</strong> (<em>bool</em><em>, </em><em>optional</em>) Require the #N form to accept
input as a valid dbref.</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p><p><em>dbref (int or None)</em> </p>
<dl class="simple">
<dt>The integer part of the dbref or <strong>None</strong></dt><dd><p>if input was not a valid dbref.</p>
</dd>
</dl>
</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="evennia.commands.default.building.deserialize">
<span class="sig-prename descclassname"><span class="pre">evennia.commands.default.building.</span></span><span class="sig-name descname"><span class="pre">deserialize</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">obj</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/utils/dbserialize.html#deserialize"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.deserialize" title="Link to this definition"></a></dt>
<dd><p>Make sure to <em>fully</em> decouple a structure from the database, by turning all _Saver*-mutables
inside it back into their normal Python forms.</p>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="evennia.commands.default.building.display_len">
<span class="sig-prename descclassname"><span class="pre">evennia.commands.default.building.</span></span><span class="sig-name descname"><span class="pre">display_len</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">target</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/utils/utils.html#display_len"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.display_len" title="Link to this definition"></a></dt>
<dd><p>Calculate the visible width of text. This is not necessarily the same as the
number of characters in the case of certain asian characters. This will also
strip MXP patterns.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>target</strong> (<em>any</em>) Something to measure the length of. If a string, it will be
measured keeping asian-character and MXP links in mind.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p><em>int</em> The visible width of the target.</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="evennia.commands.default.building.format_grid">
<span class="sig-prename descclassname"><span class="pre">evennia.commands.default.building.</span></span><span class="sig-name descname"><span class="pre">format_grid</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">elements</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">width</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">78</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">sep</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'</span>&#160; <span class="pre">'</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">verbatim_elements</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">line_prefix</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">''</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/utils/utils.html#format_grid"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.format_grid" title="Link to this definition"></a></dt>
<dd><p>This helper function makes a grid output, where it distributes the given
string-elements as evenly as possible to fill out the given width.
will not work well if the variation of length is very big!</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>elements</strong> (<em>iterable</em>) A 1D list of string elements to put in the grid.</p></li>
<li><p><strong>width</strong> (<em>int</em><em>, </em><em>optional</em>) The width of the grid area to fill.</p></li>
<li><p><strong>sep</strong> (<em>str</em><em>, </em><em>optional</em>) The extra separator to put between words. If
set to the empty string, words may run into each other.</p></li>
<li><p><strong>verbatim_elements</strong> (<em>list</em><em>, </em><em>optional</em>) This is a list of indices pointing to
specific items in the <strong>elements</strong> list. An element at this index will
not be included in the calculation of the slot sizes. It will still
be inserted into the grid at the correct position and may be surrounded
by padding unless filling the entire line. This is useful for embedding
decorations in the grid, such as horizontal bars.</p></li>
<li><p><strong>ignore_ansi</strong> (<em>bool</em><em>, </em><em>optional</em>) Ignore ansi markups when calculating white spacing.</p></li>
<li><p><strong>line_prefix</strong> (<em>str</em><em>, </em><em>optional</em>) A prefix to add at the beginning of each line.
This can e.g. be used to preserve line color across line breaks.</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p><em>list</em> The grid as a list of ready-formatted rows. We return it
like this to make it easier to insert decorations between rows, such
as horizontal bars.</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="evennia.commands.default.building.generate_cmdset_providers">
<span class="sig-prename descclassname"><span class="pre">evennia.commands.default.building.</span></span><span class="sig-name descname"><span class="pre">generate_cmdset_providers</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">called_by</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">session</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/cmdhandler.html#generate_cmdset_providers"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.generate_cmdset_providers" title="Link to this definition"></a></dt>
<dd></dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="evennia.commands.default.building.get_all_typeclasses">
<span class="sig-prename descclassname"><span class="pre">evennia.commands.default.building.</span></span><span class="sig-name descname"><span class="pre">get_all_typeclasses</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">parent</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/utils/utils.html#get_all_typeclasses"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.get_all_typeclasses" title="Link to this definition"></a></dt>
<dd><p>List available typeclasses from all available modules.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>parent</strong> (<em>str</em><em>, </em><em>optional</em>) If given, only return typeclasses inheriting
(at any distance) from this parent.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p><em>dict</em> On the form <strong>{“typeclass.path”: typeclass, …}</strong></p>
</dd>
</dl>
<p class="rubric">Notes</p>
<p>This will dynamically retrieve all abstract django models inheriting at
any distance from the TypedObject base (aka a Typeclass) so it will
work fine with any custom classes being added.</p>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="evennia.commands.default.building.get_and_merge_cmdsets">
<span class="sig-prename descclassname"><span class="pre">evennia.commands.default.building.</span></span><span class="sig-name descname"><span class="pre">get_and_merge_cmdsets</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">caller</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">cmdset_providers</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">callertype</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">raw_string</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">report_to</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">cmdid</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/commands/cmdhandler.html#get_and_merge_cmdsets"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.get_and_merge_cmdsets" title="Link to this definition"></a></dt>
<dd><p>Gather all relevant cmdsets and merge them.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>caller</strong> (<a class="reference internal" href="evennia.server.session.html#evennia.server.session.Session" title="evennia.server.session.Session"><em>Session</em></a><em>, </em><em>Account</em><em> or </em><em>Object</em>) The entity executing the command. Which
type of object this is depends on the current game state; for example
when the user is not logged in, this will be a Session, when being OOC
it will be an Account and when puppeting an object this will (often) be
a Character Object. In the end it depends on where the cmdset is stored.</p></li>
<li><p><strong>cmdset_providers</strong> (<em>list</em>) A list of sorted objects which provide cmdsets.</p></li>
<li><p><strong>callertype</strong> (<em>str</em>) This identifies caller as either “account”, “object” or “session”
to avoid having to do this check internally.</p></li>
<li><p><strong>raw_string</strong> (<em>str</em>) The input string. This is only used for error reporting.</p></li>
<li><p><strong>report_to</strong> (<em>Object</em><em>, </em><em>optional</em>) If given, this object will receive error messages</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p><em>cmdset (Deferred)</em> This deferred fires with the merged cmdset
result once merger finishes.</p>
</dd>
</dl>
<p class="rubric">Notes</p>
<p>The cdmsets are merged in order or generality, so that the
Objects cmdset is merged last (and will thus take precedence
over same-named and same-prio commands on Account and Session).</p>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="evennia.commands.default.building.inherits_from">
<span class="sig-prename descclassname"><span class="pre">evennia.commands.default.building.</span></span><span class="sig-name descname"><span class="pre">inherits_from</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">obj</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">parent</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/utils/utils.html#inherits_from"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.inherits_from" title="Link to this definition"></a></dt>
<dd><p>Takes an object and tries to determine if it inherits at <em>any</em>
distance from parent.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>obj</strong> (<em>any</em>) Object to analyze. This may be either an instance or
a class.</p></li>
<li><p><strong>parent</strong> (<em>any</em>) Can be either an instance, a class or the python
path to the class.</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p><em>inherits_from (bool)</em> If <strong>parent</strong> is a parent to <strong>obj</strong> or not.</p>
</dd>
</dl>
<p class="rubric">Notes</p>
<p>What differentiates this function from Pythons <strong>isinstance()</strong> is the
flexibility in the types allowed for the object and parent being compared.</p>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="evennia.commands.default.building.interactive">
<span class="sig-prename descclassname"><span class="pre">evennia.commands.default.building.</span></span><span class="sig-name descname"><span class="pre">interactive</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">func</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/utils/utils.html#interactive"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.interactive" title="Link to this definition"></a></dt>
<dd><p>Decorator to make a method pausable with <strong>yield(seconds)</strong>
and able to ask for user-input with <strong>response=yield(question)</strong>.
For the question-asking to work, one of the args or kwargs to the
decorated function must be named caller.</p>
<dl class="field-list simple">
<dt class="field-odd">Raises<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>ValueError</strong> If asking an interactive question but the decorated
function has no arg or kwarg named caller.</p></li>
<li><p><strong>ValueError</strong> If passing non int/float to yield using for pausing.</p></li>
</ul>
</dd>
</dl>
<p class="rubric">Examples</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="nd">@interactive</span>
<span class="k">def</span><span class="w"> </span><span class="nf">myfunc</span><span class="p">(</span><span class="n">caller</span><span class="p">):</span>
<span class="n">caller</span><span class="o">.</span><span class="n">msg</span><span class="p">(</span><span class="s2">&quot;This is a test&quot;</span><span class="p">)</span>
<span class="c1"># wait five seconds</span>
<span class="k">yield</span><span class="p">(</span><span class="mi">5</span><span class="p">)</span>
<span class="c1"># ask user (caller) a question</span>
<span class="n">response</span> <span class="o">=</span> <span class="k">yield</span><span class="p">(</span><span class="s2">&quot;Do you want to continue waiting?&quot;</span><span class="p">)</span>
<span class="k">if</span> <span class="n">response</span> <span class="o">==</span> <span class="s2">&quot;yes&quot;</span><span class="p">:</span>
<span class="k">yield</span><span class="p">(</span><span class="mi">5</span><span class="p">)</span>
<span class="k">else</span><span class="p">:</span>
<span class="c1"># ...</span>
</pre></div>
</div>
<p class="rubric">Notes</p>
<p>This turns the decorated function or method into a generator.</p>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="evennia.commands.default.building.list_to_string">
<span class="sig-prename descclassname"><span class="pre">evennia.commands.default.building.</span></span><span class="sig-name descname"><span class="pre">list_to_string</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">iterable</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">sep</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">','</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">endsep</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">',</span> <span class="pre">and'</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">addquote</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#evennia.commands.default.building.list_to_string" title="Link to this definition"></a></dt>
<dd><p>This pretty-formats an iterable list as string output, adding an optional
alternative separator to the second to last entry. If <strong>addquote</strong>
is <strong>True</strong>, the outgoing strings will be surrounded by quotes.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>iterable</strong> (<em>any</em>) Usually an iterable to print. Each element must be possible to
present with a string. Note that if this is a generator, it will be
consumed by this operation.</p></li>
<li><p><strong>sep</strong> (<em>str</em><em>, </em><em>optional</em>) The string to use as a separator for each item in the iterable.</p></li>
<li><p><strong>endsep</strong> (<em>str</em><em>, </em><em>optional</em>) The last item separator will be replaced with this value.</p></li>
<li><p><strong>addquote</strong> (<em>bool</em><em>, </em><em>optional</em>) This will surround all outgoing
values with double quotes.</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p><em>str</em> The list represented as a string.</p>
</dd>
</dl>
<p class="rubric">Notes</p>
<p>Default is to use Oxford comma, like 1, 2, 3, and 4.</p>
<p class="rubric">Examples</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">iter_to_string</span><span class="p">([</span><span class="mi">1</span><span class="p">,</span><span class="mi">2</span><span class="p">,</span><span class="mi">3</span><span class="p">],</span> <span class="n">endsep</span><span class="o">=</span><span class="s1">&#39;,&#39;</span><span class="p">)</span>
<span class="go">&#39;1, 2, 3&#39;</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">iter_to_string</span><span class="p">([</span><span class="mi">1</span><span class="p">,</span><span class="mi">2</span><span class="p">,</span><span class="mi">3</span><span class="p">],</span> <span class="n">endsep</span><span class="o">=</span><span class="s1">&#39;&#39;</span><span class="p">)</span>
<span class="go">&#39;1, 2 3&#39;</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">iter_to_string</span><span class="p">([</span><span class="mi">1</span><span class="p">,</span><span class="mi">2</span><span class="p">,</span><span class="mi">3</span><span class="p">],</span> <span class="n">ensdep</span><span class="o">=</span><span class="s1">&#39;and&#39;</span><span class="p">)</span>
<span class="go">&#39;1, 2 and 3&#39;</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">iter_to_string</span><span class="p">([</span><span class="mi">1</span><span class="p">,</span><span class="mi">2</span><span class="p">,</span><span class="mi">3</span><span class="p">],</span> <span class="n">sep</span><span class="o">=</span><span class="s1">&#39;;&#39;</span><span class="p">,</span> <span class="n">endsep</span><span class="o">=</span><span class="s1">&#39;;&#39;</span><span class="p">)</span>
<span class="go">&#39;1; 2; 3&#39;</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">iter_to_string</span><span class="p">([</span><span class="mi">1</span><span class="p">,</span><span class="mi">2</span><span class="p">,</span><span class="mi">3</span><span class="p">],</span> <span class="n">addquote</span><span class="o">=</span><span class="kc">True</span><span class="p">)</span>
<span class="go">&#39;&quot;1&quot;, &quot;2&quot;, and &quot;3&quot;&#39;</span>
</pre></div>
</div>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="evennia.commands.default.building.variable_from_module">
<span class="sig-prename descclassname"><span class="pre">evennia.commands.default.building.</span></span><span class="sig-name descname"><span class="pre">variable_from_module</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">module</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">variable</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">default</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/utils/utils.html#variable_from_module"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.commands.default.building.variable_from_module" title="Link to this definition"></a></dt>
<dd><p>Retrieve a variable or list of variables from a module. The
variable(s) must be defined globally in the module. If no variable
is given (or a list entry is <strong>None</strong>), all global variables are
extracted from the module.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>module</strong> (<em>string</em><em> or </em><em>module</em>) Python path, absolute path or a module.</p></li>
<li><p><strong>variable</strong> (<em>string</em><em> or </em><em>iterable</em><em>, </em><em>optional</em>) Single variable name or iterable
of variable names to extract. If not given, all variables in
the module will be returned.</p></li>
<li><p><strong>default</strong> (<em>string</em><em>, </em><em>optional</em>) Default value to use if a variable fails to
be extracted. Ignored if <strong>variable</strong> is not given.</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p><em>variables (value or list)</em> A single value or a list of values
depending on if <strong>variable</strong> is given or not. Errors in lists
are replaced by the <strong>default</strong> argument.</p>
</dd>
</dl>
</dd></dl>
</section>
<div class="clearer"></div>
</div>
</div>
</div>
<div class="sphinxsidebar" role="navigation" aria-label="Main">
<div class="sphinxsidebarwrapper">
<p class="logo"><a href="../index.html">
<img class="logo" src="../_static/evennia_logo.png" alt="Logo of Evennia"/>
</a></p>
<search id="searchbox" style="display: none" role="search">
<h3 id="searchlabel">Quick search</h3>
<div class="searchformwrapper">
<form class="search" action="../search.html" method="get">
<input type="text" name="q" aria-labelledby="searchlabel" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"/>
<input type="submit" value="Go" />
</form>
</div>
</search>
<script>document.getElementById('searchbox').style.display = "block"</script>
<h3><a href="../index.html">Table of Contents</a></h3>
<ul>
<li><a class="reference internal" href="#">evennia.commands.default.building</a><ul>
<li><a class="reference internal" href="#evennia.commands.default.building.ObjManipCommand"><code class="docutils literal notranslate"><span class="pre">ObjManipCommand</span></code></a><ul>
<li><a class="reference internal" href="#evennia.commands.default.building.ObjManipCommand.default_typeclasses"><code class="docutils literal notranslate"><span class="pre">ObjManipCommand.default_typeclasses</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ObjManipCommand.parse"><code class="docutils literal notranslate"><span class="pre">ObjManipCommand.parse()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ObjManipCommand.get_object_typeclass"><code class="docutils literal notranslate"><span class="pre">ObjManipCommand.get_object_typeclass()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ObjManipCommand.aliases"><code class="docutils literal notranslate"><span class="pre">ObjManipCommand.aliases</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ObjManipCommand.help_category"><code class="docutils literal notranslate"><span class="pre">ObjManipCommand.help_category</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ObjManipCommand.key"><code class="docutils literal notranslate"><span class="pre">ObjManipCommand.key</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ObjManipCommand.lock_storage"><code class="docutils literal notranslate"><span class="pre">ObjManipCommand.lock_storage</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ObjManipCommand.search_index_entry"><code class="docutils literal notranslate"><span class="pre">ObjManipCommand.search_index_entry</span></code></a></li>
</ul>
</li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdSetObjAlias"><code class="docutils literal notranslate"><span class="pre">CmdSetObjAlias</span></code></a><ul>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdSetObjAlias.key"><code class="docutils literal notranslate"><span class="pre">CmdSetObjAlias.key</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdSetObjAlias.aliases"><code class="docutils literal notranslate"><span class="pre">CmdSetObjAlias.aliases</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdSetObjAlias.switch_options"><code class="docutils literal notranslate"><span class="pre">CmdSetObjAlias.switch_options</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdSetObjAlias.locks"><code class="docutils literal notranslate"><span class="pre">CmdSetObjAlias.locks</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdSetObjAlias.help_category"><code class="docutils literal notranslate"><span class="pre">CmdSetObjAlias.help_category</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdSetObjAlias.method_type"><code class="docutils literal notranslate"><span class="pre">CmdSetObjAlias.method_type</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdSetObjAlias.func"><code class="docutils literal notranslate"><span class="pre">CmdSetObjAlias.func()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdSetObjAlias.lock_storage"><code class="docutils literal notranslate"><span class="pre">CmdSetObjAlias.lock_storage</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdSetObjAlias.search_index_entry"><code class="docutils literal notranslate"><span class="pre">CmdSetObjAlias.search_index_entry</span></code></a></li>
</ul>
</li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdCopy"><code class="docutils literal notranslate"><span class="pre">CmdCopy</span></code></a><ul>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdCopy.key"><code class="docutils literal notranslate"><span class="pre">CmdCopy.key</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdCopy.locks"><code class="docutils literal notranslate"><span class="pre">CmdCopy.locks</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdCopy.help_category"><code class="docutils literal notranslate"><span class="pre">CmdCopy.help_category</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdCopy.func"><code class="docutils literal notranslate"><span class="pre">CmdCopy.func()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdCopy.aliases"><code class="docutils literal notranslate"><span class="pre">CmdCopy.aliases</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdCopy.lock_storage"><code class="docutils literal notranslate"><span class="pre">CmdCopy.lock_storage</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdCopy.search_index_entry"><code class="docutils literal notranslate"><span class="pre">CmdCopy.search_index_entry</span></code></a></li>
</ul>
</li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdCpAttr"><code class="docutils literal notranslate"><span class="pre">CmdCpAttr</span></code></a><ul>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdCpAttr.key"><code class="docutils literal notranslate"><span class="pre">CmdCpAttr.key</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdCpAttr.switch_options"><code class="docutils literal notranslate"><span class="pre">CmdCpAttr.switch_options</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdCpAttr.locks"><code class="docutils literal notranslate"><span class="pre">CmdCpAttr.locks</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdCpAttr.help_category"><code class="docutils literal notranslate"><span class="pre">CmdCpAttr.help_category</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdCpAttr.check_from_attr"><code class="docutils literal notranslate"><span class="pre">CmdCpAttr.check_from_attr()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdCpAttr.check_to_attr"><code class="docutils literal notranslate"><span class="pre">CmdCpAttr.check_to_attr()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdCpAttr.check_has_attr"><code class="docutils literal notranslate"><span class="pre">CmdCpAttr.check_has_attr()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdCpAttr.get_attr"><code class="docutils literal notranslate"><span class="pre">CmdCpAttr.get_attr()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdCpAttr.func"><code class="docutils literal notranslate"><span class="pre">CmdCpAttr.func()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdCpAttr.aliases"><code class="docutils literal notranslate"><span class="pre">CmdCpAttr.aliases</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdCpAttr.lock_storage"><code class="docutils literal notranslate"><span class="pre">CmdCpAttr.lock_storage</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdCpAttr.search_index_entry"><code class="docutils literal notranslate"><span class="pre">CmdCpAttr.search_index_entry</span></code></a></li>
</ul>
</li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdMvAttr"><code class="docutils literal notranslate"><span class="pre">CmdMvAttr</span></code></a><ul>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdMvAttr.key"><code class="docutils literal notranslate"><span class="pre">CmdMvAttr.key</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdMvAttr.switch_options"><code class="docutils literal notranslate"><span class="pre">CmdMvAttr.switch_options</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdMvAttr.locks"><code class="docutils literal notranslate"><span class="pre">CmdMvAttr.locks</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdMvAttr.help_category"><code class="docutils literal notranslate"><span class="pre">CmdMvAttr.help_category</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdMvAttr.func"><code class="docutils literal notranslate"><span class="pre">CmdMvAttr.func()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdMvAttr.aliases"><code class="docutils literal notranslate"><span class="pre">CmdMvAttr.aliases</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdMvAttr.lock_storage"><code class="docutils literal notranslate"><span class="pre">CmdMvAttr.lock_storage</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdMvAttr.search_index_entry"><code class="docutils literal notranslate"><span class="pre">CmdMvAttr.search_index_entry</span></code></a></li>
</ul>
</li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdCreate"><code class="docutils literal notranslate"><span class="pre">CmdCreate</span></code></a><ul>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdCreate.key"><code class="docutils literal notranslate"><span class="pre">CmdCreate.key</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdCreate.switch_options"><code class="docutils literal notranslate"><span class="pre">CmdCreate.switch_options</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdCreate.locks"><code class="docutils literal notranslate"><span class="pre">CmdCreate.locks</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdCreate.help_category"><code class="docutils literal notranslate"><span class="pre">CmdCreate.help_category</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdCreate.func"><code class="docutils literal notranslate"><span class="pre">CmdCreate.func()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdCreate.aliases"><code class="docutils literal notranslate"><span class="pre">CmdCreate.aliases</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdCreate.lock_storage"><code class="docutils literal notranslate"><span class="pre">CmdCreate.lock_storage</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdCreate.search_index_entry"><code class="docutils literal notranslate"><span class="pre">CmdCreate.search_index_entry</span></code></a></li>
</ul>
</li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdDesc"><code class="docutils literal notranslate"><span class="pre">CmdDesc</span></code></a><ul>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdDesc.key"><code class="docutils literal notranslate"><span class="pre">CmdDesc.key</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdDesc.switch_options"><code class="docutils literal notranslate"><span class="pre">CmdDesc.switch_options</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdDesc.locks"><code class="docutils literal notranslate"><span class="pre">CmdDesc.locks</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdDesc.help_category"><code class="docutils literal notranslate"><span class="pre">CmdDesc.help_category</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdDesc.edit_handler"><code class="docutils literal notranslate"><span class="pre">CmdDesc.edit_handler()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdDesc.func"><code class="docutils literal notranslate"><span class="pre">CmdDesc.func()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdDesc.aliases"><code class="docutils literal notranslate"><span class="pre">CmdDesc.aliases</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdDesc.lock_storage"><code class="docutils literal notranslate"><span class="pre">CmdDesc.lock_storage</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdDesc.search_index_entry"><code class="docutils literal notranslate"><span class="pre">CmdDesc.search_index_entry</span></code></a></li>
</ul>
</li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdDestroy"><code class="docutils literal notranslate"><span class="pre">CmdDestroy</span></code></a><ul>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdDestroy.key"><code class="docutils literal notranslate"><span class="pre">CmdDestroy.key</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdDestroy.aliases"><code class="docutils literal notranslate"><span class="pre">CmdDestroy.aliases</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdDestroy.switch_options"><code class="docutils literal notranslate"><span class="pre">CmdDestroy.switch_options</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdDestroy.locks"><code class="docutils literal notranslate"><span class="pre">CmdDestroy.locks</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdDestroy.help_category"><code class="docutils literal notranslate"><span class="pre">CmdDestroy.help_category</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdDestroy.confirm"><code class="docutils literal notranslate"><span class="pre">CmdDestroy.confirm</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdDestroy.default_confirm"><code class="docutils literal notranslate"><span class="pre">CmdDestroy.default_confirm</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdDestroy.func"><code class="docutils literal notranslate"><span class="pre">CmdDestroy.func()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdDestroy.lock_storage"><code class="docutils literal notranslate"><span class="pre">CmdDestroy.lock_storage</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdDestroy.search_index_entry"><code class="docutils literal notranslate"><span class="pre">CmdDestroy.search_index_entry</span></code></a></li>
</ul>
</li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdDig"><code class="docutils literal notranslate"><span class="pre">CmdDig</span></code></a><ul>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdDig.key"><code class="docutils literal notranslate"><span class="pre">CmdDig.key</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdDig.switch_options"><code class="docutils literal notranslate"><span class="pre">CmdDig.switch_options</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdDig.locks"><code class="docutils literal notranslate"><span class="pre">CmdDig.locks</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdDig.help_category"><code class="docutils literal notranslate"><span class="pre">CmdDig.help_category</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdDig.method_type"><code class="docutils literal notranslate"><span class="pre">CmdDig.method_type</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdDig.new_room_lockstring"><code class="docutils literal notranslate"><span class="pre">CmdDig.new_room_lockstring</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdDig.func"><code class="docutils literal notranslate"><span class="pre">CmdDig.func()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdDig.aliases"><code class="docutils literal notranslate"><span class="pre">CmdDig.aliases</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdDig.lock_storage"><code class="docutils literal notranslate"><span class="pre">CmdDig.lock_storage</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdDig.search_index_entry"><code class="docutils literal notranslate"><span class="pre">CmdDig.search_index_entry</span></code></a></li>
</ul>
</li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdTunnel"><code class="docutils literal notranslate"><span class="pre">CmdTunnel</span></code></a><ul>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdTunnel.key"><code class="docutils literal notranslate"><span class="pre">CmdTunnel.key</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdTunnel.aliases"><code class="docutils literal notranslate"><span class="pre">CmdTunnel.aliases</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdTunnel.switch_options"><code class="docutils literal notranslate"><span class="pre">CmdTunnel.switch_options</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdTunnel.locks"><code class="docutils literal notranslate"><span class="pre">CmdTunnel.locks</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdTunnel.help_category"><code class="docutils literal notranslate"><span class="pre">CmdTunnel.help_category</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdTunnel.method_type"><code class="docutils literal notranslate"><span class="pre">CmdTunnel.method_type</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdTunnel.directions"><code class="docutils literal notranslate"><span class="pre">CmdTunnel.directions</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdTunnel.func"><code class="docutils literal notranslate"><span class="pre">CmdTunnel.func()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdTunnel.lock_storage"><code class="docutils literal notranslate"><span class="pre">CmdTunnel.lock_storage</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdTunnel.search_index_entry"><code class="docutils literal notranslate"><span class="pre">CmdTunnel.search_index_entry</span></code></a></li>
</ul>
</li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdLink"><code class="docutils literal notranslate"><span class="pre">CmdLink</span></code></a><ul>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdLink.key"><code class="docutils literal notranslate"><span class="pre">CmdLink.key</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdLink.locks"><code class="docutils literal notranslate"><span class="pre">CmdLink.locks</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdLink.help_category"><code class="docutils literal notranslate"><span class="pre">CmdLink.help_category</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdLink.func"><code class="docutils literal notranslate"><span class="pre">CmdLink.func()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdLink.aliases"><code class="docutils literal notranslate"><span class="pre">CmdLink.aliases</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdLink.lock_storage"><code class="docutils literal notranslate"><span class="pre">CmdLink.lock_storage</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdLink.search_index_entry"><code class="docutils literal notranslate"><span class="pre">CmdLink.search_index_entry</span></code></a></li>
</ul>
</li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdUnLink"><code class="docutils literal notranslate"><span class="pre">CmdUnLink</span></code></a><ul>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdUnLink.key"><code class="docutils literal notranslate"><span class="pre">CmdUnLink.key</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdUnLink.locks"><code class="docutils literal notranslate"><span class="pre">CmdUnLink.locks</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdUnLink.help_key"><code class="docutils literal notranslate"><span class="pre">CmdUnLink.help_key</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdUnLink.func"><code class="docutils literal notranslate"><span class="pre">CmdUnLink.func()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdUnLink.aliases"><code class="docutils literal notranslate"><span class="pre">CmdUnLink.aliases</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdUnLink.help_category"><code class="docutils literal notranslate"><span class="pre">CmdUnLink.help_category</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdUnLink.lock_storage"><code class="docutils literal notranslate"><span class="pre">CmdUnLink.lock_storage</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdUnLink.search_index_entry"><code class="docutils literal notranslate"><span class="pre">CmdUnLink.search_index_entry</span></code></a></li>
</ul>
</li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdSetHome"><code class="docutils literal notranslate"><span class="pre">CmdSetHome</span></code></a><ul>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdSetHome.key"><code class="docutils literal notranslate"><span class="pre">CmdSetHome.key</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdSetHome.locks"><code class="docutils literal notranslate"><span class="pre">CmdSetHome.locks</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdSetHome.help_category"><code class="docutils literal notranslate"><span class="pre">CmdSetHome.help_category</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdSetHome.func"><code class="docutils literal notranslate"><span class="pre">CmdSetHome.func()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdSetHome.aliases"><code class="docutils literal notranslate"><span class="pre">CmdSetHome.aliases</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdSetHome.lock_storage"><code class="docutils literal notranslate"><span class="pre">CmdSetHome.lock_storage</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdSetHome.search_index_entry"><code class="docutils literal notranslate"><span class="pre">CmdSetHome.search_index_entry</span></code></a></li>
</ul>
</li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdListCmdSets"><code class="docutils literal notranslate"><span class="pre">CmdListCmdSets</span></code></a><ul>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdListCmdSets.key"><code class="docutils literal notranslate"><span class="pre">CmdListCmdSets.key</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdListCmdSets.locks"><code class="docutils literal notranslate"><span class="pre">CmdListCmdSets.locks</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdListCmdSets.help_category"><code class="docutils literal notranslate"><span class="pre">CmdListCmdSets.help_category</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdListCmdSets.func"><code class="docutils literal notranslate"><span class="pre">CmdListCmdSets.func()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdListCmdSets.aliases"><code class="docutils literal notranslate"><span class="pre">CmdListCmdSets.aliases</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdListCmdSets.lock_storage"><code class="docutils literal notranslate"><span class="pre">CmdListCmdSets.lock_storage</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdListCmdSets.search_index_entry"><code class="docutils literal notranslate"><span class="pre">CmdListCmdSets.search_index_entry</span></code></a></li>
</ul>
</li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdName"><code class="docutils literal notranslate"><span class="pre">CmdName</span></code></a><ul>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdName.key"><code class="docutils literal notranslate"><span class="pre">CmdName.key</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdName.aliases"><code class="docutils literal notranslate"><span class="pre">CmdName.aliases</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdName.locks"><code class="docutils literal notranslate"><span class="pre">CmdName.locks</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdName.help_category"><code class="docutils literal notranslate"><span class="pre">CmdName.help_category</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdName.func"><code class="docutils literal notranslate"><span class="pre">CmdName.func()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdName.lock_storage"><code class="docutils literal notranslate"><span class="pre">CmdName.lock_storage</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdName.search_index_entry"><code class="docutils literal notranslate"><span class="pre">CmdName.search_index_entry</span></code></a></li>
</ul>
</li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdOpen"><code class="docutils literal notranslate"><span class="pre">CmdOpen</span></code></a><ul>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdOpen.key"><code class="docutils literal notranslate"><span class="pre">CmdOpen.key</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdOpen.locks"><code class="docutils literal notranslate"><span class="pre">CmdOpen.locks</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdOpen.help_category"><code class="docutils literal notranslate"><span class="pre">CmdOpen.help_category</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdOpen.method_type"><code class="docutils literal notranslate"><span class="pre">CmdOpen.method_type</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdOpen.new_obj_lockstring"><code class="docutils literal notranslate"><span class="pre">CmdOpen.new_obj_lockstring</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdOpen.create_exit"><code class="docutils literal notranslate"><span class="pre">CmdOpen.create_exit()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdOpen.parse"><code class="docutils literal notranslate"><span class="pre">CmdOpen.parse()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdOpen.func"><code class="docutils literal notranslate"><span class="pre">CmdOpen.func()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdOpen.aliases"><code class="docutils literal notranslate"><span class="pre">CmdOpen.aliases</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdOpen.lock_storage"><code class="docutils literal notranslate"><span class="pre">CmdOpen.lock_storage</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdOpen.search_index_entry"><code class="docutils literal notranslate"><span class="pre">CmdOpen.search_index_entry</span></code></a></li>
</ul>
</li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdSetAttribute"><code class="docutils literal notranslate"><span class="pre">CmdSetAttribute</span></code></a><ul>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdSetAttribute.key"><code class="docutils literal notranslate"><span class="pre">CmdSetAttribute.key</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdSetAttribute.locks"><code class="docutils literal notranslate"><span class="pre">CmdSetAttribute.locks</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdSetAttribute.help_category"><code class="docutils literal notranslate"><span class="pre">CmdSetAttribute.help_category</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdSetAttribute.nested_re"><code class="docutils literal notranslate"><span class="pre">CmdSetAttribute.nested_re</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdSetAttribute.not_found"><code class="docutils literal notranslate"><span class="pre">CmdSetAttribute.not_found</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdSetAttribute.check_obj"><code class="docutils literal notranslate"><span class="pre">CmdSetAttribute.check_obj()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdSetAttribute.check_attr"><code class="docutils literal notranslate"><span class="pre">CmdSetAttribute.check_attr()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdSetAttribute.split_nested_attr"><code class="docutils literal notranslate"><span class="pre">CmdSetAttribute.split_nested_attr()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdSetAttribute.do_nested_lookup"><code class="docutils literal notranslate"><span class="pre">CmdSetAttribute.do_nested_lookup()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdSetAttribute.view_attr"><code class="docutils literal notranslate"><span class="pre">CmdSetAttribute.view_attr()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdSetAttribute.rm_attr"><code class="docutils literal notranslate"><span class="pre">CmdSetAttribute.rm_attr()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdSetAttribute.set_attr"><code class="docutils literal notranslate"><span class="pre">CmdSetAttribute.set_attr()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdSetAttribute.edit_handler"><code class="docutils literal notranslate"><span class="pre">CmdSetAttribute.edit_handler()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdSetAttribute.search_for_obj"><code class="docutils literal notranslate"><span class="pre">CmdSetAttribute.search_for_obj()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdSetAttribute.func"><code class="docutils literal notranslate"><span class="pre">CmdSetAttribute.func()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdSetAttribute.aliases"><code class="docutils literal notranslate"><span class="pre">CmdSetAttribute.aliases</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdSetAttribute.lock_storage"><code class="docutils literal notranslate"><span class="pre">CmdSetAttribute.lock_storage</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdSetAttribute.search_index_entry"><code class="docutils literal notranslate"><span class="pre">CmdSetAttribute.search_index_entry</span></code></a></li>
</ul>
</li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdTypeclass"><code class="docutils literal notranslate"><span class="pre">CmdTypeclass</span></code></a><ul>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdTypeclass.key"><code class="docutils literal notranslate"><span class="pre">CmdTypeclass.key</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdTypeclass.aliases"><code class="docutils literal notranslate"><span class="pre">CmdTypeclass.aliases</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdTypeclass.switch_options"><code class="docutils literal notranslate"><span class="pre">CmdTypeclass.switch_options</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdTypeclass.locks"><code class="docutils literal notranslate"><span class="pre">CmdTypeclass.locks</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdTypeclass.help_category"><code class="docutils literal notranslate"><span class="pre">CmdTypeclass.help_category</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdTypeclass.func"><code class="docutils literal notranslate"><span class="pre">CmdTypeclass.func()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdTypeclass.lock_storage"><code class="docutils literal notranslate"><span class="pre">CmdTypeclass.lock_storage</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdTypeclass.search_index_entry"><code class="docutils literal notranslate"><span class="pre">CmdTypeclass.search_index_entry</span></code></a></li>
</ul>
</li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdWipe"><code class="docutils literal notranslate"><span class="pre">CmdWipe</span></code></a><ul>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdWipe.key"><code class="docutils literal notranslate"><span class="pre">CmdWipe.key</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdWipe.locks"><code class="docutils literal notranslate"><span class="pre">CmdWipe.locks</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdWipe.help_category"><code class="docutils literal notranslate"><span class="pre">CmdWipe.help_category</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdWipe.func"><code class="docutils literal notranslate"><span class="pre">CmdWipe.func()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdWipe.aliases"><code class="docutils literal notranslate"><span class="pre">CmdWipe.aliases</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdWipe.lock_storage"><code class="docutils literal notranslate"><span class="pre">CmdWipe.lock_storage</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdWipe.search_index_entry"><code class="docutils literal notranslate"><span class="pre">CmdWipe.search_index_entry</span></code></a></li>
</ul>
</li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdLock"><code class="docutils literal notranslate"><span class="pre">CmdLock</span></code></a><ul>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdLock.key"><code class="docutils literal notranslate"><span class="pre">CmdLock.key</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdLock.aliases"><code class="docutils literal notranslate"><span class="pre">CmdLock.aliases</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdLock.locks"><code class="docutils literal notranslate"><span class="pre">CmdLock.locks</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdLock.help_category"><code class="docutils literal notranslate"><span class="pre">CmdLock.help_category</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdLock.func"><code class="docutils literal notranslate"><span class="pre">CmdLock.func()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdLock.lock_storage"><code class="docutils literal notranslate"><span class="pre">CmdLock.lock_storage</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdLock.search_index_entry"><code class="docutils literal notranslate"><span class="pre">CmdLock.search_index_entry</span></code></a></li>
</ul>
</li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdExamine"><code class="docutils literal notranslate"><span class="pre">CmdExamine</span></code></a><ul>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdExamine.key"><code class="docutils literal notranslate"><span class="pre">CmdExamine.key</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdExamine.aliases"><code class="docutils literal notranslate"><span class="pre">CmdExamine.aliases</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdExamine.locks"><code class="docutils literal notranslate"><span class="pre">CmdExamine.locks</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdExamine.help_category"><code class="docutils literal notranslate"><span class="pre">CmdExamine.help_category</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdExamine.arg_regex"><code class="docutils literal notranslate"><span class="pre">CmdExamine.arg_regex</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdExamine.switch_options"><code class="docutils literal notranslate"><span class="pre">CmdExamine.switch_options</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdExamine.object_type"><code class="docutils literal notranslate"><span class="pre">CmdExamine.object_type</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdExamine.detail_color"><code class="docutils literal notranslate"><span class="pre">CmdExamine.detail_color</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdExamine.header_color"><code class="docutils literal notranslate"><span class="pre">CmdExamine.header_color</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdExamine.quell_color"><code class="docutils literal notranslate"><span class="pre">CmdExamine.quell_color</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdExamine.separator"><code class="docutils literal notranslate"><span class="pre">CmdExamine.separator</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdExamine.msg"><code class="docutils literal notranslate"><span class="pre">CmdExamine.msg()</span></code></a><ul>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdExamine.text"><code class="docutils literal notranslate"><span class="pre">CmdExamine.text</span></code></a></li>
</ul>
</li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdExamine.format_key"><code class="docutils literal notranslate"><span class="pre">CmdExamine.format_key()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdExamine.format_aliases"><code class="docutils literal notranslate"><span class="pre">CmdExamine.format_aliases()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdExamine.format_typeclass"><code class="docutils literal notranslate"><span class="pre">CmdExamine.format_typeclass()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdExamine.format_sessions"><code class="docutils literal notranslate"><span class="pre">CmdExamine.format_sessions()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdExamine.format_email"><code class="docutils literal notranslate"><span class="pre">CmdExamine.format_email()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdExamine.format_last_login"><code class="docutils literal notranslate"><span class="pre">CmdExamine.format_last_login()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdExamine.format_account_key"><code class="docutils literal notranslate"><span class="pre">CmdExamine.format_account_key()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdExamine.format_account_typeclass"><code class="docutils literal notranslate"><span class="pre">CmdExamine.format_account_typeclass()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdExamine.format_account_permissions"><code class="docutils literal notranslate"><span class="pre">CmdExamine.format_account_permissions()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdExamine.format_location"><code class="docutils literal notranslate"><span class="pre">CmdExamine.format_location()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdExamine.format_home"><code class="docutils literal notranslate"><span class="pre">CmdExamine.format_home()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdExamine.format_destination"><code class="docutils literal notranslate"><span class="pre">CmdExamine.format_destination()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdExamine.format_permissions"><code class="docutils literal notranslate"><span class="pre">CmdExamine.format_permissions()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdExamine.format_locks"><code class="docutils literal notranslate"><span class="pre">CmdExamine.format_locks()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdExamine.format_scripts"><code class="docutils literal notranslate"><span class="pre">CmdExamine.format_scripts()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdExamine.format_single_tag"><code class="docutils literal notranslate"><span class="pre">CmdExamine.format_single_tag()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdExamine.format_tags"><code class="docutils literal notranslate"><span class="pre">CmdExamine.format_tags()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdExamine.format_single_cmdset_options"><code class="docutils literal notranslate"><span class="pre">CmdExamine.format_single_cmdset_options()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdExamine.format_single_cmdset"><code class="docutils literal notranslate"><span class="pre">CmdExamine.format_single_cmdset()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdExamine.format_stored_cmdsets"><code class="docutils literal notranslate"><span class="pre">CmdExamine.format_stored_cmdsets()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdExamine.format_merged_cmdsets"><code class="docutils literal notranslate"><span class="pre">CmdExamine.format_merged_cmdsets()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdExamine.format_current_cmds"><code class="docutils literal notranslate"><span class="pre">CmdExamine.format_current_cmds()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdExamine.format_single_attribute_detail"><code class="docutils literal notranslate"><span class="pre">CmdExamine.format_single_attribute_detail()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdExamine.format_single_attribute"><code class="docutils literal notranslate"><span class="pre">CmdExamine.format_single_attribute()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdExamine.format_attributes"><code class="docutils literal notranslate"><span class="pre">CmdExamine.format_attributes()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdExamine.format_nattributes"><code class="docutils literal notranslate"><span class="pre">CmdExamine.format_nattributes()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdExamine.format_exits"><code class="docutils literal notranslate"><span class="pre">CmdExamine.format_exits()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdExamine.format_chars"><code class="docutils literal notranslate"><span class="pre">CmdExamine.format_chars()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdExamine.format_things"><code class="docutils literal notranslate"><span class="pre">CmdExamine.format_things()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdExamine.format_script_desc"><code class="docutils literal notranslate"><span class="pre">CmdExamine.format_script_desc()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdExamine.format_script_is_persistent"><code class="docutils literal notranslate"><span class="pre">CmdExamine.format_script_is_persistent()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdExamine.format_script_timer_data"><code class="docutils literal notranslate"><span class="pre">CmdExamine.format_script_timer_data()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdExamine.format_channel_sub_totals"><code class="docutils literal notranslate"><span class="pre">CmdExamine.format_channel_sub_totals()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdExamine.format_channel_account_subs"><code class="docutils literal notranslate"><span class="pre">CmdExamine.format_channel_account_subs()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdExamine.format_channel_object_subs"><code class="docutils literal notranslate"><span class="pre">CmdExamine.format_channel_object_subs()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdExamine.get_formatted_obj_data"><code class="docutils literal notranslate"><span class="pre">CmdExamine.get_formatted_obj_data()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdExamine.format_output"><code class="docutils literal notranslate"><span class="pre">CmdExamine.format_output()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdExamine.parse"><code class="docutils literal notranslate"><span class="pre">CmdExamine.parse()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdExamine.func"><code class="docutils literal notranslate"><span class="pre">CmdExamine.func()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdExamine.lock_storage"><code class="docutils literal notranslate"><span class="pre">CmdExamine.lock_storage</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdExamine.search_index_entry"><code class="docutils literal notranslate"><span class="pre">CmdExamine.search_index_entry</span></code></a></li>
</ul>
</li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdFind"><code class="docutils literal notranslate"><span class="pre">CmdFind</span></code></a><ul>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdFind.key"><code class="docutils literal notranslate"><span class="pre">CmdFind.key</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdFind.aliases"><code class="docutils literal notranslate"><span class="pre">CmdFind.aliases</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdFind.switch_options"><code class="docutils literal notranslate"><span class="pre">CmdFind.switch_options</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdFind.locks"><code class="docutils literal notranslate"><span class="pre">CmdFind.locks</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdFind.help_category"><code class="docutils literal notranslate"><span class="pre">CmdFind.help_category</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdFind.func"><code class="docutils literal notranslate"><span class="pre">CmdFind.func()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdFind.lock_storage"><code class="docutils literal notranslate"><span class="pre">CmdFind.lock_storage</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdFind.search_index_entry"><code class="docutils literal notranslate"><span class="pre">CmdFind.search_index_entry</span></code></a></li>
</ul>
</li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdTeleport"><code class="docutils literal notranslate"><span class="pre">CmdTeleport</span></code></a><ul>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdTeleport.key"><code class="docutils literal notranslate"><span class="pre">CmdTeleport.key</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdTeleport.aliases"><code class="docutils literal notranslate"><span class="pre">CmdTeleport.aliases</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdTeleport.switch_options"><code class="docutils literal notranslate"><span class="pre">CmdTeleport.switch_options</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdTeleport.rhs_split"><code class="docutils literal notranslate"><span class="pre">CmdTeleport.rhs_split</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdTeleport.locks"><code class="docutils literal notranslate"><span class="pre">CmdTeleport.locks</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdTeleport.help_category"><code class="docutils literal notranslate"><span class="pre">CmdTeleport.help_category</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdTeleport.parse"><code class="docutils literal notranslate"><span class="pre">CmdTeleport.parse()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdTeleport.func"><code class="docutils literal notranslate"><span class="pre">CmdTeleport.func()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdTeleport.lock_storage"><code class="docutils literal notranslate"><span class="pre">CmdTeleport.lock_storage</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdTeleport.search_index_entry"><code class="docutils literal notranslate"><span class="pre">CmdTeleport.search_index_entry</span></code></a></li>
</ul>
</li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdScripts"><code class="docutils literal notranslate"><span class="pre">CmdScripts</span></code></a><ul>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdScripts.key"><code class="docutils literal notranslate"><span class="pre">CmdScripts.key</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdScripts.aliases"><code class="docutils literal notranslate"><span class="pre">CmdScripts.aliases</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdScripts.switch_options"><code class="docutils literal notranslate"><span class="pre">CmdScripts.switch_options</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdScripts.locks"><code class="docutils literal notranslate"><span class="pre">CmdScripts.locks</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdScripts.help_category"><code class="docutils literal notranslate"><span class="pre">CmdScripts.help_category</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdScripts.excluded_typeclass_paths"><code class="docutils literal notranslate"><span class="pre">CmdScripts.excluded_typeclass_paths</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdScripts.switch_mapping"><code class="docutils literal notranslate"><span class="pre">CmdScripts.switch_mapping</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdScripts.hide_script_paths"><code class="docutils literal notranslate"><span class="pre">CmdScripts.hide_script_paths</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdScripts.parse"><code class="docutils literal notranslate"><span class="pre">CmdScripts.parse()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdScripts.func"><code class="docutils literal notranslate"><span class="pre">CmdScripts.func()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdScripts.lock_storage"><code class="docutils literal notranslate"><span class="pre">CmdScripts.lock_storage</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdScripts.search_index_entry"><code class="docutils literal notranslate"><span class="pre">CmdScripts.search_index_entry</span></code></a></li>
</ul>
</li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdObjects"><code class="docutils literal notranslate"><span class="pre">CmdObjects</span></code></a><ul>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdObjects.key"><code class="docutils literal notranslate"><span class="pre">CmdObjects.key</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdObjects.locks"><code class="docutils literal notranslate"><span class="pre">CmdObjects.locks</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdObjects.help_category"><code class="docutils literal notranslate"><span class="pre">CmdObjects.help_category</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdObjects.func"><code class="docutils literal notranslate"><span class="pre">CmdObjects.func()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdObjects.aliases"><code class="docutils literal notranslate"><span class="pre">CmdObjects.aliases</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdObjects.lock_storage"><code class="docutils literal notranslate"><span class="pre">CmdObjects.lock_storage</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdObjects.search_index_entry"><code class="docutils literal notranslate"><span class="pre">CmdObjects.search_index_entry</span></code></a></li>
</ul>
</li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdTag"><code class="docutils literal notranslate"><span class="pre">CmdTag</span></code></a><ul>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdTag.key"><code class="docutils literal notranslate"><span class="pre">CmdTag.key</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdTag.aliases"><code class="docutils literal notranslate"><span class="pre">CmdTag.aliases</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdTag.switch_options"><code class="docutils literal notranslate"><span class="pre">CmdTag.switch_options</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdTag.locks"><code class="docutils literal notranslate"><span class="pre">CmdTag.locks</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdTag.help_category"><code class="docutils literal notranslate"><span class="pre">CmdTag.help_category</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdTag.arg_regex"><code class="docutils literal notranslate"><span class="pre">CmdTag.arg_regex</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdTag.func"><code class="docutils literal notranslate"><span class="pre">CmdTag.func()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdTag.lock_storage"><code class="docutils literal notranslate"><span class="pre">CmdTag.lock_storage</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdTag.search_index_entry"><code class="docutils literal notranslate"><span class="pre">CmdTag.search_index_entry</span></code></a></li>
</ul>
</li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdSpawn"><code class="docutils literal notranslate"><span class="pre">CmdSpawn</span></code></a><ul>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdSpawn.key"><code class="docutils literal notranslate"><span class="pre">CmdSpawn.key</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdSpawn.aliases"><code class="docutils literal notranslate"><span class="pre">CmdSpawn.aliases</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdSpawn.switch_options"><code class="docutils literal notranslate"><span class="pre">CmdSpawn.switch_options</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdSpawn.locks"><code class="docutils literal notranslate"><span class="pre">CmdSpawn.locks</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdSpawn.help_category"><code class="docutils literal notranslate"><span class="pre">CmdSpawn.help_category</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdSpawn.func"><code class="docutils literal notranslate"><span class="pre">CmdSpawn.func()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdSpawn.lock_storage"><code class="docutils literal notranslate"><span class="pre">CmdSpawn.lock_storage</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.CmdSpawn.search_index_entry"><code class="docutils literal notranslate"><span class="pre">CmdSpawn.search_index_entry</span></code></a></li>
</ul>
</li>
<li><a class="reference internal" href="#evennia.commands.default.building.COMMAND_DEFAULT_CLASS"><code class="docutils literal notranslate"><span class="pre">COMMAND_DEFAULT_CLASS</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.EvEditor"><code class="docutils literal notranslate"><span class="pre">EvEditor</span></code></a><ul>
<li><a class="reference internal" href="#evennia.commands.default.building.EvEditor.__init__"><code class="docutils literal notranslate"><span class="pre">EvEditor.__init__()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.EvEditor.decrease_indent"><code class="docutils literal notranslate"><span class="pre">EvEditor.decrease_indent()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.EvEditor.deduce_indent"><code class="docutils literal notranslate"><span class="pre">EvEditor.deduce_indent()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.EvEditor.display_buffer"><code class="docutils literal notranslate"><span class="pre">EvEditor.display_buffer()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.EvEditor.display_help"><code class="docutils literal notranslate"><span class="pre">EvEditor.display_help()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.EvEditor.get_buffer"><code class="docutils literal notranslate"><span class="pre">EvEditor.get_buffer()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.EvEditor.increase_indent"><code class="docutils literal notranslate"><span class="pre">EvEditor.increase_indent()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.EvEditor.load_buffer"><code class="docutils literal notranslate"><span class="pre">EvEditor.load_buffer()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.EvEditor.quit"><code class="docutils literal notranslate"><span class="pre">EvEditor.quit()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.EvEditor.save_buffer"><code class="docutils literal notranslate"><span class="pre">EvEditor.save_buffer()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.EvEditor.swap_autoindent"><code class="docutils literal notranslate"><span class="pre">EvEditor.swap_autoindent()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.EvEditor.update_buffer"><code class="docutils literal notranslate"><span class="pre">EvEditor.update_buffer()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.EvEditor.update_undo"><code class="docutils literal notranslate"><span class="pre">EvEditor.update_undo()</span></code></a></li>
</ul>
</li>
<li><a class="reference internal" href="#evennia.commands.default.building.EvMore"><code class="docutils literal notranslate"><span class="pre">EvMore</span></code></a><ul>
<li><a class="reference internal" href="#evennia.commands.default.building.EvMore.__init__"><code class="docutils literal notranslate"><span class="pre">EvMore.__init__()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.EvMore.display"><code class="docutils literal notranslate"><span class="pre">EvMore.display()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.EvMore.init_django_paginator"><code class="docutils literal notranslate"><span class="pre">EvMore.init_django_paginator()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.EvMore.init_evtable"><code class="docutils literal notranslate"><span class="pre">EvMore.init_evtable()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.EvMore.init_f_str"><code class="docutils literal notranslate"><span class="pre">EvMore.init_f_str()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.EvMore.init_iterable"><code class="docutils literal notranslate"><span class="pre">EvMore.init_iterable()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.EvMore.init_pages"><code class="docutils literal notranslate"><span class="pre">EvMore.init_pages()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.EvMore.init_queryset"><code class="docutils literal notranslate"><span class="pre">EvMore.init_queryset()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.EvMore.init_str"><code class="docutils literal notranslate"><span class="pre">EvMore.init_str()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.EvMore.page_back"><code class="docutils literal notranslate"><span class="pre">EvMore.page_back()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.EvMore.page_end"><code class="docutils literal notranslate"><span class="pre">EvMore.page_end()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.EvMore.page_formatter"><code class="docutils literal notranslate"><span class="pre">EvMore.page_formatter()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.EvMore.page_next"><code class="docutils literal notranslate"><span class="pre">EvMore.page_next()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.EvMore.page_quit"><code class="docutils literal notranslate"><span class="pre">EvMore.page_quit()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.EvMore.page_top"><code class="docutils literal notranslate"><span class="pre">EvMore.page_top()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.EvMore.paginator"><code class="docutils literal notranslate"><span class="pre">EvMore.paginator()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.EvMore.paginator_django"><code class="docutils literal notranslate"><span class="pre">EvMore.paginator_django()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.EvMore.paginator_index"><code class="docutils literal notranslate"><span class="pre">EvMore.paginator_index()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.EvMore.paginator_slice"><code class="docutils literal notranslate"><span class="pre">EvMore.paginator_slice()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.EvMore.start"><code class="docutils literal notranslate"><span class="pre">EvMore.start()</span></code></a></li>
</ul>
</li>
<li><a class="reference internal" href="#evennia.commands.default.building.EvTable"><code class="docutils literal notranslate"><span class="pre">EvTable</span></code></a><ul>
<li><a class="reference internal" href="#evennia.commands.default.building.EvTable.__init__"><code class="docutils literal notranslate"><span class="pre">EvTable.__init__()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.EvTable.add_column"><code class="docutils literal notranslate"><span class="pre">EvTable.add_column()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.EvTable.add_header"><code class="docutils literal notranslate"><span class="pre">EvTable.add_header()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.EvTable.add_row"><code class="docutils literal notranslate"><span class="pre">EvTable.add_row()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.EvTable.get"><code class="docutils literal notranslate"><span class="pre">EvTable.get()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.EvTable.reformat"><code class="docutils literal notranslate"><span class="pre">EvTable.reformat()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.EvTable.reformat_column"><code class="docutils literal notranslate"><span class="pre">EvTable.reformat_column()</span></code></a></li>
</ul>
</li>
<li><a class="reference internal" href="#evennia.commands.default.building.InterruptCommand"><code class="docutils literal notranslate"><span class="pre">InterruptCommand</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.LockException"><code class="docutils literal notranslate"><span class="pre">LockException</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.Max"><code class="docutils literal notranslate"><span class="pre">Max</span></code></a><ul>
<li><a class="reference internal" href="#evennia.commands.default.building.Max.arity"><code class="docutils literal notranslate"><span class="pre">Max.arity</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.Max.function"><code class="docutils literal notranslate"><span class="pre">Max.function</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.Max.name"><code class="docutils literal notranslate"><span class="pre">Max.name</span></code></a></li>
</ul>
</li>
<li><a class="reference internal" href="#evennia.commands.default.building.Min"><code class="docutils literal notranslate"><span class="pre">Min</span></code></a><ul>
<li><a class="reference internal" href="#evennia.commands.default.building.Min.arity"><code class="docutils literal notranslate"><span class="pre">Min.arity</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.Min.function"><code class="docutils literal notranslate"><span class="pre">Min.function</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.Min.name"><code class="docutils literal notranslate"><span class="pre">Min.name</span></code></a></li>
</ul>
</li>
<li><a class="reference internal" href="#evennia.commands.default.building.ObjectDB"><code class="docutils literal notranslate"><span class="pre">ObjectDB</span></code></a><ul>
<li><a class="reference internal" href="#evennia.commands.default.building.ObjectDB.DoesNotExist"><code class="docutils literal notranslate"><span class="pre">ObjectDB.DoesNotExist</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ObjectDB.MultipleObjectsReturned"><code class="docutils literal notranslate"><span class="pre">ObjectDB.MultipleObjectsReturned</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ObjectDB.account"><code class="docutils literal notranslate"><span class="pre">ObjectDB.account</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ObjectDB.at_db_location_postsave"><code class="docutils literal notranslate"><span class="pre">ObjectDB.at_db_location_postsave()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ObjectDB.cmdset_storage"><code class="docutils literal notranslate"><span class="pre">ObjectDB.cmdset_storage</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ObjectDB.contents_cache"><code class="docutils literal notranslate"><span class="pre">ObjectDB.contents_cache</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ObjectDB.db_account"><code class="docutils literal notranslate"><span class="pre">ObjectDB.db_account</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ObjectDB.db_account_id"><code class="docutils literal notranslate"><span class="pre">ObjectDB.db_account_id</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ObjectDB.db_attributes"><code class="docutils literal notranslate"><span class="pre">ObjectDB.db_attributes</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ObjectDB.db_cmdset_storage"><code class="docutils literal notranslate"><span class="pre">ObjectDB.db_cmdset_storage</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ObjectDB.db_date_created"><code class="docutils literal notranslate"><span class="pre">ObjectDB.db_date_created</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ObjectDB.db_destination"><code class="docutils literal notranslate"><span class="pre">ObjectDB.db_destination</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ObjectDB.db_destination_id"><code class="docutils literal notranslate"><span class="pre">ObjectDB.db_destination_id</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ObjectDB.db_home"><code class="docutils literal notranslate"><span class="pre">ObjectDB.db_home</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ObjectDB.db_home_id"><code class="docutils literal notranslate"><span class="pre">ObjectDB.db_home_id</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ObjectDB.db_key"><code class="docutils literal notranslate"><span class="pre">ObjectDB.db_key</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ObjectDB.db_location"><code class="docutils literal notranslate"><span class="pre">ObjectDB.db_location</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ObjectDB.db_location_id"><code class="docutils literal notranslate"><span class="pre">ObjectDB.db_location_id</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ObjectDB.db_lock_storage"><code class="docutils literal notranslate"><span class="pre">ObjectDB.db_lock_storage</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ObjectDB.db_sessid"><code class="docutils literal notranslate"><span class="pre">ObjectDB.db_sessid</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ObjectDB.db_tags"><code class="docutils literal notranslate"><span class="pre">ObjectDB.db_tags</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ObjectDB.db_typeclass_path"><code class="docutils literal notranslate"><span class="pre">ObjectDB.db_typeclass_path</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ObjectDB.destination"><code class="docutils literal notranslate"><span class="pre">ObjectDB.destination</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ObjectDB.destinations_set"><code class="docutils literal notranslate"><span class="pre">ObjectDB.destinations_set</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ObjectDB.get_next_by_db_date_created"><code class="docutils literal notranslate"><span class="pre">ObjectDB.get_next_by_db_date_created()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ObjectDB.get_previous_by_db_date_created"><code class="docutils literal notranslate"><span class="pre">ObjectDB.get_previous_by_db_date_created()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ObjectDB.hide_from_objects_set"><code class="docutils literal notranslate"><span class="pre">ObjectDB.hide_from_objects_set</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ObjectDB.home"><code class="docutils literal notranslate"><span class="pre">ObjectDB.home</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ObjectDB.homes_set"><code class="docutils literal notranslate"><span class="pre">ObjectDB.homes_set</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ObjectDB.id"><code class="docutils literal notranslate"><span class="pre">ObjectDB.id</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ObjectDB.location"><code class="docutils literal notranslate"><span class="pre">ObjectDB.location</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ObjectDB.locations_set"><code class="docutils literal notranslate"><span class="pre">ObjectDB.locations_set</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ObjectDB.object_subscription_set"><code class="docutils literal notranslate"><span class="pre">ObjectDB.object_subscription_set</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ObjectDB.objects"><code class="docutils literal notranslate"><span class="pre">ObjectDB.objects</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ObjectDB.path"><code class="docutils literal notranslate"><span class="pre">ObjectDB.path</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ObjectDB.receiver_object_set"><code class="docutils literal notranslate"><span class="pre">ObjectDB.receiver_object_set</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ObjectDB.scriptdb_set"><code class="docutils literal notranslate"><span class="pre">ObjectDB.scriptdb_set</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ObjectDB.sender_object_set"><code class="docutils literal notranslate"><span class="pre">ObjectDB.sender_object_set</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ObjectDB.sessid"><code class="docutils literal notranslate"><span class="pre">ObjectDB.sessid</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ObjectDB.typename"><code class="docutils literal notranslate"><span class="pre">ObjectDB.typename</span></code></a></li>
</ul>
</li>
<li><a class="reference internal" href="#evennia.commands.default.building.Paginator"><code class="docutils literal notranslate"><span class="pre">Paginator</span></code></a><ul>
<li><a class="reference internal" href="#evennia.commands.default.building.Paginator.ELLIPSIS"><code class="docutils literal notranslate"><span class="pre">Paginator.ELLIPSIS</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.Paginator.__init__"><code class="docutils literal notranslate"><span class="pre">Paginator.__init__()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.Paginator.count"><code class="docutils literal notranslate"><span class="pre">Paginator.count</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.Paginator.default_error_messages"><code class="docutils literal notranslate"><span class="pre">Paginator.default_error_messages</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.Paginator.get_elided_page_range"><code class="docutils literal notranslate"><span class="pre">Paginator.get_elided_page_range()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.Paginator.get_page"><code class="docutils literal notranslate"><span class="pre">Paginator.get_page()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.Paginator.num_pages"><code class="docutils literal notranslate"><span class="pre">Paginator.num_pages</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.Paginator.page"><code class="docutils literal notranslate"><span class="pre">Paginator.page()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.Paginator.page_range"><code class="docutils literal notranslate"><span class="pre">Paginator.page_range</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.Paginator.validate_number"><code class="docutils literal notranslate"><span class="pre">Paginator.validate_number()</span></code></a></li>
</ul>
</li>
<li><a class="reference internal" href="#evennia.commands.default.building.Q"><code class="docutils literal notranslate"><span class="pre">Q</span></code></a><ul>
<li><a class="reference internal" href="#evennia.commands.default.building.Q.AND"><code class="docutils literal notranslate"><span class="pre">Q.AND</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.Q.OR"><code class="docutils literal notranslate"><span class="pre">Q.OR</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.Q.XOR"><code class="docutils literal notranslate"><span class="pre">Q.XOR</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.Q.__init__"><code class="docutils literal notranslate"><span class="pre">Q.__init__()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.Q.check"><code class="docutils literal notranslate"><span class="pre">Q.check()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.Q.conditional"><code class="docutils literal notranslate"><span class="pre">Q.conditional</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.Q.connectors"><code class="docutils literal notranslate"><span class="pre">Q.connectors</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.Q.deconstruct"><code class="docutils literal notranslate"><span class="pre">Q.deconstruct()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.Q.default"><code class="docutils literal notranslate"><span class="pre">Q.default</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.Q.flatten"><code class="docutils literal notranslate"><span class="pre">Q.flatten()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.Q.identity"><code class="docutils literal notranslate"><span class="pre">Q.identity</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.Q.referenced_base_fields"><code class="docutils literal notranslate"><span class="pre">Q.referenced_base_fields</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.Q.replace_expressions"><code class="docutils literal notranslate"><span class="pre">Q.replace_expressions()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.Q.resolve_expression"><code class="docutils literal notranslate"><span class="pre">Q.resolve_expression()</span></code></a></li>
</ul>
</li>
<li><a class="reference internal" href="#evennia.commands.default.building.ScriptDB"><code class="docutils literal notranslate"><span class="pre">ScriptDB</span></code></a><ul>
<li><a class="reference internal" href="#evennia.commands.default.building.ScriptDB.DoesNotExist"><code class="docutils literal notranslate"><span class="pre">ScriptDB.DoesNotExist</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ScriptDB.MultipleObjectsReturned"><code class="docutils literal notranslate"><span class="pre">ScriptDB.MultipleObjectsReturned</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ScriptDB.account"><code class="docutils literal notranslate"><span class="pre">ScriptDB.account</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ScriptDB.db_account"><code class="docutils literal notranslate"><span class="pre">ScriptDB.db_account</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ScriptDB.db_account_id"><code class="docutils literal notranslate"><span class="pre">ScriptDB.db_account_id</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ScriptDB.db_attributes"><code class="docutils literal notranslate"><span class="pre">ScriptDB.db_attributes</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ScriptDB.db_date_created"><code class="docutils literal notranslate"><span class="pre">ScriptDB.db_date_created</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ScriptDB.db_desc"><code class="docutils literal notranslate"><span class="pre">ScriptDB.db_desc</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ScriptDB.db_interval"><code class="docutils literal notranslate"><span class="pre">ScriptDB.db_interval</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ScriptDB.db_is_active"><code class="docutils literal notranslate"><span class="pre">ScriptDB.db_is_active</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ScriptDB.db_key"><code class="docutils literal notranslate"><span class="pre">ScriptDB.db_key</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ScriptDB.db_lock_storage"><code class="docutils literal notranslate"><span class="pre">ScriptDB.db_lock_storage</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ScriptDB.db_obj"><code class="docutils literal notranslate"><span class="pre">ScriptDB.db_obj</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ScriptDB.db_obj_id"><code class="docutils literal notranslate"><span class="pre">ScriptDB.db_obj_id</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ScriptDB.db_persistent"><code class="docutils literal notranslate"><span class="pre">ScriptDB.db_persistent</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ScriptDB.db_repeats"><code class="docutils literal notranslate"><span class="pre">ScriptDB.db_repeats</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ScriptDB.db_start_delay"><code class="docutils literal notranslate"><span class="pre">ScriptDB.db_start_delay</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ScriptDB.db_tags"><code class="docutils literal notranslate"><span class="pre">ScriptDB.db_tags</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ScriptDB.db_typeclass_path"><code class="docutils literal notranslate"><span class="pre">ScriptDB.db_typeclass_path</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ScriptDB.desc"><code class="docutils literal notranslate"><span class="pre">ScriptDB.desc</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ScriptDB.get_next_by_db_date_created"><code class="docutils literal notranslate"><span class="pre">ScriptDB.get_next_by_db_date_created()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ScriptDB.get_previous_by_db_date_created"><code class="docutils literal notranslate"><span class="pre">ScriptDB.get_previous_by_db_date_created()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ScriptDB.id"><code class="docutils literal notranslate"><span class="pre">ScriptDB.id</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ScriptDB.interval"><code class="docutils literal notranslate"><span class="pre">ScriptDB.interval</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ScriptDB.is_active"><code class="docutils literal notranslate"><span class="pre">ScriptDB.is_active</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ScriptDB.obj"><code class="docutils literal notranslate"><span class="pre">ScriptDB.obj</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ScriptDB.object"><code class="docutils literal notranslate"><span class="pre">ScriptDB.object</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ScriptDB.objects"><code class="docutils literal notranslate"><span class="pre">ScriptDB.objects</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ScriptDB.path"><code class="docutils literal notranslate"><span class="pre">ScriptDB.path</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ScriptDB.persistent"><code class="docutils literal notranslate"><span class="pre">ScriptDB.persistent</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ScriptDB.receiver_script_set"><code class="docutils literal notranslate"><span class="pre">ScriptDB.receiver_script_set</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ScriptDB.repeats"><code class="docutils literal notranslate"><span class="pre">ScriptDB.repeats</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ScriptDB.sender_script_set"><code class="docutils literal notranslate"><span class="pre">ScriptDB.sender_script_set</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ScriptDB.start_delay"><code class="docutils literal notranslate"><span class="pre">ScriptDB.start_delay</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ScriptDB.typename"><code class="docutils literal notranslate"><span class="pre">ScriptDB.typename</span></code></a></li>
</ul>
</li>
<li><a class="reference internal" href="#evennia.commands.default.building.ScriptEvMore"><code class="docutils literal notranslate"><span class="pre">ScriptEvMore</span></code></a><ul>
<li><a class="reference internal" href="#evennia.commands.default.building.ScriptEvMore.init_pages"><code class="docutils literal notranslate"><span class="pre">ScriptEvMore.init_pages()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.ScriptEvMore.page_formatter"><code class="docutils literal notranslate"><span class="pre">ScriptEvMore.page_formatter()</span></code></a></li>
</ul>
</li>
<li><a class="reference internal" href="#evennia.commands.default.building.ansi_raw"><code class="docutils literal notranslate"><span class="pre">ansi_raw()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.class_from_module"><code class="docutils literal notranslate"><span class="pre">class_from_module()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.crop"><code class="docutils literal notranslate"><span class="pre">crop()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.dbref"><code class="docutils literal notranslate"><span class="pre">dbref()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.deserialize"><code class="docutils literal notranslate"><span class="pre">deserialize()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.display_len"><code class="docutils literal notranslate"><span class="pre">display_len()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.format_grid"><code class="docutils literal notranslate"><span class="pre">format_grid()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.generate_cmdset_providers"><code class="docutils literal notranslate"><span class="pre">generate_cmdset_providers()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.get_all_typeclasses"><code class="docutils literal notranslate"><span class="pre">get_all_typeclasses()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.get_and_merge_cmdsets"><code class="docutils literal notranslate"><span class="pre">get_and_merge_cmdsets()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.inherits_from"><code class="docutils literal notranslate"><span class="pre">inherits_from()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.interactive"><code class="docutils literal notranslate"><span class="pre">interactive()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.list_to_string"><code class="docutils literal notranslate"><span class="pre">list_to_string()</span></code></a></li>
<li><a class="reference internal" href="#evennia.commands.default.building.variable_from_module"><code class="docutils literal notranslate"><span class="pre">variable_from_module()</span></code></a></li>
</ul>
</li>
</ul>
<div>
<h4>Previous topic</h4>
<p class="topless"><a href="evennia.commands.default.batchprocess.html"
title="previous chapter">evennia.commands.default.batchprocess</a></p>
</div>
<div>
<h4>Next topic</h4>
<p class="topless"><a href="evennia.commands.default.cmdset_account.html"
title="next chapter">evennia.commands.default.cmdset_account</a></p>
</div>
<div role="note" aria-label="source link">
<!--h3>This Page</h3-->
<ul class="this-page-menu">
<li><a href="../_sources/api/evennia.commands.default.building.md.txt"
rel="nofollow">Show Page Source</a></li>
</ul>
</div><h3>Links</h3>
<ul>
<li><a href="https://www.evennia.com/docs/latest/index.html">Documentation Top</a> </li>
<li><a href="https://www.evennia.com">Evennia Home</a> </li>
<li><a href="https://github.com/evennia/evennia">Github</a> </li>
<li><a href="http://games.evennia.com">Game Index</a> </li>
<li>
<a href="https://discord.gg/AJJpcRUhtF">Discord</a> -
<a href="https://github.com/evennia/evennia/discussions">Discussions</a> -
<a href="https://evennia.blogspot.com/">Blog</a>
</li>
</ul>
<h3>Doc Versions</h3>
<ul>
<li>
<a href="https://www.evennia.com/docs/latest/index.html">latest (main branch)</a>
</li>
<li>
<a href="https://www.evennia.com/docs/5.x/index.html">v5.0.0 branch (outdated)</a>
</li>
<li>
<a href="https://www.evennia.com/docs/4.x/index.html">v4.0.0 branch (outdated)</a>
</li>
<li>
<a href="https://www.evennia.com/docs/3.x/index.html">v3.0.0 branch (outdated)</a>
</li>
<li>
<a href="https://www.evennia.com/docs/2.x/index.html">v2.0.0 branch (outdated)</a>
</li>
<li>
<a href="https://www.evennia.com/docs/1.x/index.html">v1.0.0 branch (outdated)</a>
</li>
<li>
<a href="https://www.evennia.com/docs/0.x/index.html">v0.9.5 branch (outdated)</a>
</li>
</ul>
</div>
</div>
<div class="clearer"></div>
</div>
<div class="related" role="navigation" aria-label="Related">
<h3>Navigation</h3>
<ul>
<li class="right" style="margin-right: 10px">
<a href="../genindex.html" title="General Index"
>index</a></li>
<li class="right" >
<a href="../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="right" >
<a href="evennia.commands.default.cmdset_account.html" title="evennia.commands.default.cmdset_account"
>next</a> |</li>
<li class="right" >
<a href="evennia.commands.default.batchprocess.html" title="evennia.commands.default.batchprocess"
>previous</a> |</li>
<li class="nav-item nav-item-0"><a href="../index.html">Evennia</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="../Evennia-API.html" >API Summary</a> &#187;</li>
<li class="nav-item nav-item-2"><a href="evennia-api.html" >evennia</a> &#187;</li>
<li class="nav-item nav-item-3"><a href="evennia.html" >evennia</a> &#187;</li>
<li class="nav-item nav-item-4"><a href="evennia.commands.html" >evennia.commands</a> &#187;</li>
<li class="nav-item nav-item-5"><a href="evennia.commands.default.html" >evennia.commands.default</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">evennia.commands.default.building</a></li>
</ul>
</div>
<div class="footer" role="contentinfo">
&#169; Copyright 2024, The Evennia developer community.
Created using <a href="https://www.sphinx-doc.org/">Sphinx</a> 8.2.3.
</div>
</body>
</html>