mirror of
https://github.com/evennia/evennia.git
synced 2026-04-07 00:45:22 +02:00
1102 lines
No EOL
110 KiB
HTML
1102 lines
No EOL
110 KiB
HTML
<!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.contrib.base_systems.building_menu.building_menu — 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.contrib.base_systems.building_menu.tests" href="evennia.contrib.base_systems.building_menu.tests.html" />
|
||
<link rel="prev" title="evennia.contrib.base_systems.building_menu" href="evennia.contrib.base_systems.building_menu.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.contrib.base_systems.building_menu.tests.html" title="evennia.contrib.base_systems.building_menu.tests"
|
||
accesskey="N">next</a> |</li>
|
||
<li class="right" >
|
||
<a href="evennia.contrib.base_systems.building_menu.html" title="evennia.contrib.base_systems.building_menu"
|
||
accesskey="P">previous</a> |</li>
|
||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia</a> »</li>
|
||
<li class="nav-item nav-item-1"><a href="../Evennia-API.html" >API Summary</a> »</li>
|
||
<li class="nav-item nav-item-2"><a href="evennia-api.html" >evennia</a> »</li>
|
||
<li class="nav-item nav-item-3"><a href="evennia.html" >evennia</a> »</li>
|
||
<li class="nav-item nav-item-4"><a href="evennia.contrib.html" >evennia.contrib</a> »</li>
|
||
<li class="nav-item nav-item-5"><a href="evennia.contrib.base_systems.html" >evennia.contrib.base_systems</a> »</li>
|
||
<li class="nav-item nav-item-6"><a href="evennia.contrib.base_systems.building_menu.html" accesskey="U">evennia.contrib.base_systems.building_menu</a> »</li>
|
||
<li class="nav-item nav-item-this"><a href="">evennia.contrib.base_systems.building_menu.building_menu</a></li>
|
||
</ul>
|
||
</div>
|
||
|
||
<div class="document">
|
||
<div class="documentwrapper">
|
||
<div class="bodywrapper">
|
||
<div class="body" role="main">
|
||
|
||
<section id="module-evennia.contrib.base_systems.building_menu.building_menu">
|
||
<span id="evennia-contrib-base-systems-building-menu-building-menu"></span><h1>evennia.contrib.base_systems.building_menu.building_menu<a class="headerlink" href="#module-evennia.contrib.base_systems.building_menu.building_menu" title="Link to this heading">¶</a></h1>
|
||
<p>Module containing the building menu system.</p>
|
||
<p>Evennia contributor: vincent-lg 2018</p>
|
||
<p>Building menus are in-game menus, not unlike <strong>EvMenu</strong> though using a
|
||
different approach. Building menus have been specifically designed to edit
|
||
information as a builder. Creating a building menu in a command allows
|
||
builders quick-editing of a given object, like a room. If you follow the
|
||
steps below to add the contrib, you will have access to an <strong>@edit</strong> command
|
||
that will edit any default object offering to change its key and description.</p>
|
||
<ol class="arabic">
|
||
<li><p>Import the <strong>GenericBuildingCmd</strong> class from this contrib in your
|
||
<strong>mygame/commands/default_cmdset.py</strong> file:</p>
|
||
<blockquote>
|
||
<div><div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="kn">from</span><span class="w"> </span><span class="nn">evennia.contrib.base_systems.building_menu</span><span class="w"> </span><span class="kn">import</span> <span class="n">GenericBuildingCmd</span>
|
||
</pre></div>
|
||
</div>
|
||
</div></blockquote>
|
||
</li>
|
||
<li><p>Below, add the command in the <strong>CharacterCmdSet</strong>:</p>
|
||
<blockquote>
|
||
<div><div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="c1"># ... These lines should exist in the file</span>
|
||
<span class="k">class</span><span class="w"> </span><span class="nc">CharacterCmdSet</span><span class="p">(</span><span class="n">default_cmds</span><span class="o">.</span><span class="n">CharacterCmdSet</span><span class="p">):</span>
|
||
<span class="n">key</span> <span class="o">=</span> <span class="s2">"DefaultCharacter"</span>
|
||
|
||
<span class="k">def</span><span class="w"> </span><span class="nf">at_cmdset_creation</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
||
<span class="nb">super</span><span class="p">()</span><span class="o">.</span><span class="n">at_cmdset_creation</span><span class="p">()</span>
|
||
<span class="c1"># ... add the line below</span>
|
||
<span class="bp">self</span><span class="o">.</span><span class="n">add</span><span class="p">(</span><span class="n">GenericBuildingCmd</span><span class="p">())</span>
|
||
</pre></div>
|
||
</div>
|
||
</div></blockquote>
|
||
</li>
|
||
</ol>
|
||
<p>The <strong>@edit</strong> command will allow you to edit any object. You will need to
|
||
specify the object name or ID as an argument. For instance: <strong>@edit here</strong>
|
||
will edit the current room. However, building menus can perform much more
|
||
than this very simple example, read on for more details.</p>
|
||
<p>Building menus can be set to edit about anything. Here is an example of
|
||
output you could obtain when editing the room:</p>
|
||
<blockquote>
|
||
<div><p>Editing the room: Limbo(#2)</p>
|
||
<p>[T]itle: the limbo room
|
||
[D]escription</p>
|
||
<blockquote>
|
||
<div><p>This is the limbo room. You can easily change this default description,
|
||
either by using the <a href="#id1"><span class="problematic" id="id2">|</span></a><a class="reference external" href="mailto:y%40desc/edit|n">y<span>@</span>desc/edit|n</a> command, or simply by entering this
|
||
menu (enter <a href="#id3"><span class="problematic" id="id4">|</span></a>yd|n).</p>
|
||
</div></blockquote>
|
||
<dl class="simple">
|
||
<dt>[E]xits:</dt><dd><p>north to A parking(#4)</p>
|
||
</dd>
|
||
</dl>
|
||
<p>[Q]uit this menu</p>
|
||
</div></blockquote>
|
||
<p>From there, you can open the title choice by pressing t. You can then
|
||
change the room title by simply entering text, and go back to the
|
||
main menu entering @ (all this is customizable). Press q to quit this menu.</p>
|
||
<p>The first thing to do is to create a new module and place a class
|
||
inheriting from <strong>BuildingMenu</strong> in it.</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.contrib.base_systems.building_menu.building_menu</span><span class="w"> </span><span class="kn">import</span> <span class="n">BuildingMenu</span>
|
||
|
||
<span class="k">class</span><span class="w"> </span><span class="nc">RoomBuildingMenu</span><span class="p">(</span><span class="n">BuildingMenu</span><span class="p">):</span>
|
||
<span class="c1"># ...</span>
|
||
</pre></div>
|
||
</div>
|
||
<p>Next, override the <strong>init</strong> method. You can add choices (like the title,
|
||
description, and exits choices as seen above) by using the <strong>add_choice</strong>
|
||
method.</p>
|
||
<dl class="simple">
|
||
<dt>class RoomBuildingMenu(BuildingMenu):</dt><dd><dl class="simple">
|
||
<dt>def init(self, room):</dt><dd><p>self.add_choice(“title”, “t”, attr=”key”)</p>
|
||
</dd>
|
||
</dl>
|
||
</dd>
|
||
</dl>
|
||
<p>That will create the first choice, the title choice. If one opens your menu
|
||
and enter t, she will be in the title choice. She can change the title
|
||
(it will write in the room’s <strong>key</strong> attribute) and then go back to the
|
||
main menu using <strong>@</strong>.</p>
|
||
<p><strong>add_choice</strong> has a lot of arguments and offers a great deal of
|
||
flexibility. The most useful ones is probably the usage of callbacks,
|
||
as you can set almost any argument in <strong>add_choice</strong> to be a callback, a
|
||
function that you have defined above in your module. This function will be
|
||
called when the menu element is triggered.</p>
|
||
<p>Notice that in order to edit a description, the best method to call isn’t
|
||
<strong>add_choice</strong>, but <strong>add_choice_edit</strong>. This is a convenient shortcut
|
||
which is available to quickly open an <strong>EvEditor</strong> when entering this choice
|
||
and going back to the menu when the editor closes.</p>
|
||
<dl class="simple">
|
||
<dt>class RoomBuildingMenu(BuildingMenu):</dt><dd><dl class="simple">
|
||
<dt>def init(self, room):</dt><dd><p>self.add_choice(“title”, “t”, attr=”key”)
|
||
self.add_choice_edit(“description”, key=”d”, attr=”db.desc”)</p>
|
||
</dd>
|
||
</dl>
|
||
</dd>
|
||
</dl>
|
||
<p>When you wish to create a building menu, you just need to import your
|
||
class, create it specifying your intended caller and object to edit,
|
||
then call <strong>open</strong>:</p>
|
||
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="kn">from</span><span class="w"> </span><span class="o"><</span><span class="n">wherever</span><span class="o">></span> <span class="kn">import</span><span class="w"> </span><span class="nn">RoomBuildingMenu</span>
|
||
|
||
<span class="k">class</span><span class="w"> </span><span class="nc">CmdEdit</span><span class="p">(</span><span class="n">Command</span><span class="p">):</span>
|
||
|
||
<span class="n">key</span> <span class="o">=</span> <span class="s2">"redit"</span>
|
||
|
||
<span class="k">def</span><span class="w"> </span><span class="nf">func</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
||
<span class="n">menu</span> <span class="o">=</span> <span class="n">RoomBuildingMenu</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">caller</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">caller</span><span class="o">.</span><span class="n">location</span><span class="p">)</span>
|
||
<span class="n">menu</span><span class="o">.</span><span class="n">open</span><span class="p">()</span>
|
||
</pre></div>
|
||
</div>
|
||
<p>This is a very short introduction. For more details, see the online tutorial
|
||
(<a class="reference external" href="https://github.com/evennia/evennia/wiki/Building-menus">https://github.com/evennia/evennia/wiki/Building-menus</a>) or read the
|
||
heavily-documented code below.</p>
|
||
<dl class="py function">
|
||
<dt class="sig sig-object py" id="evennia.contrib.base_systems.building_menu.building_menu.menu_setattr">
|
||
<span class="sig-prename descclassname"><span class="pre">evennia.contrib.base_systems.building_menu.building_menu.</span></span><span class="sig-name descname"><span class="pre">menu_setattr</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">menu</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">choice</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">obj</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">string</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/contrib/base_systems/building_menu/building_menu.html#menu_setattr"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.contrib.base_systems.building_menu.building_menu.menu_setattr" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Set the value at the specified attribute.</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>menu</strong> (<a class="reference internal" href="#evennia.contrib.base_systems.building_menu.building_menu.BuildingMenu" title="evennia.contrib.base_systems.building_menu.building_menu.BuildingMenu"><em>BuildingMenu</em></a>) – the menu object.</p></li>
|
||
<li><p><strong>choice</strong> (<em>Chocie</em>) – the specific choice.</p></li>
|
||
<li><p><strong>obj</strong> (<em>Object</em>) – the object to modify.</p></li>
|
||
<li><p><strong>string</strong> (<em>str</em>) – the string with the new value.</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
<div class="admonition note">
|
||
<p class="admonition-title">Note</p>
|
||
<p>This function is supposed to be used as a default to
|
||
<strong>BuildingMenu.add_choice</strong>, when an attribute name is specified
|
||
(in the <strong>attr</strong> argument) but no function <strong>on_nomatch</strong> is defined.</p>
|
||
</div>
|
||
</dd></dl>
|
||
|
||
<dl class="py function">
|
||
<dt class="sig sig-object py" id="evennia.contrib.base_systems.building_menu.building_menu.menu_quit">
|
||
<span class="sig-prename descclassname"><span class="pre">evennia.contrib.base_systems.building_menu.building_menu.</span></span><span class="sig-name descname"><span class="pre">menu_quit</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">menu</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/contrib/base_systems/building_menu/building_menu.html#menu_quit"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.contrib.base_systems.building_menu.building_menu.menu_quit" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Quit the menu, closing the CmdSet.</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>Account</em><em> or </em><em>Object</em>) – the caller.</p></li>
|
||
<li><p><strong>menu</strong> (<a class="reference internal" href="#evennia.contrib.base_systems.building_menu.building_menu.BuildingMenu" title="evennia.contrib.base_systems.building_menu.building_menu.BuildingMenu"><em>BuildingMenu</em></a>) – the building menu to close.</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
<div class="admonition note">
|
||
<p class="admonition-title">Note</p>
|
||
<p>This callback is used by default when using the
|
||
<strong>BuildingMenu.add_choice_quit</strong> method. This method is called
|
||
automatically if the menu has no parent.</p>
|
||
</div>
|
||
</dd></dl>
|
||
|
||
<dl class="py function">
|
||
<dt class="sig sig-object py" id="evennia.contrib.base_systems.building_menu.building_menu.menu_edit">
|
||
<span class="sig-prename descclassname"><span class="pre">evennia.contrib.base_systems.building_menu.building_menu.</span></span><span class="sig-name descname"><span class="pre">menu_edit</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">choice</span></span></em>, <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/contrib/base_systems/building_menu/building_menu.html#menu_edit"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.contrib.base_systems.building_menu.building_menu.menu_edit" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Open the EvEditor to edit a specified attribute.</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>Account</em><em> or </em><em>Object</em>) – the caller.</p></li>
|
||
<li><p><strong>choice</strong> (<a class="reference internal" href="#evennia.contrib.base_systems.building_menu.building_menu.Choice" title="evennia.contrib.base_systems.building_menu.building_menu.Choice"><em>Choice</em></a>) – the choice object.</p></li>
|
||
<li><p><strong>obj</strong> (<em>Object</em>) – the object to edit.</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py class">
|
||
<dt class="sig sig-object py" id="evennia.contrib.base_systems.building_menu.building_menu.CmdNoInput">
|
||
<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.contrib.base_systems.building_menu.building_menu.</span></span><span class="sig-name descname"><span class="pre">CmdNoInput</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/contrib/base_systems/building_menu/building_menu.html#CmdNoInput"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.contrib.base_systems.building_menu.building_menu.CmdNoInput" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Bases: <a class="reference internal" href="evennia.commands.command.html#evennia.commands.command.Command" title="evennia.commands.command.Command"><code class="xref py py-class docutils literal notranslate"><span class="pre">Command</span></code></a></p>
|
||
<p>No input has been found.</p>
|
||
<dl class="py attribute">
|
||
<dt class="sig sig-object py" id="evennia.contrib.base_systems.building_menu.building_menu.CmdNoInput.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">'__noinput_command'</span></em><a class="headerlink" href="#evennia.contrib.base_systems.building_menu.building_menu.CmdNoInput.key" title="Link to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt class="sig sig-object py" id="evennia.contrib.base_systems.building_menu.building_menu.CmdNoInput.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()'</span></em><a class="headerlink" href="#evennia.contrib.base_systems.building_menu.building_menu.CmdNoInput.locks" title="Link to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.contrib.base_systems.building_menu.building_menu.CmdNoInput.__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">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/contrib/base_systems/building_menu/building_menu.html#CmdNoInput.__init__"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.contrib.base_systems.building_menu.building_menu.CmdNoInput.__init__" title="Link to this definition">¶</a></dt>
|
||
<dd><p>The lockhandler works the same as for objects.
|
||
optional kwargs will be set as properties on the Command at runtime,
|
||
overloading evential same-named class properties.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.contrib.base_systems.building_menu.building_menu.CmdNoInput.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/contrib/base_systems/building_menu/building_menu.html#CmdNoInput.func"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.contrib.base_systems.building_menu.building_menu.CmdNoInput.func" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Display the menu or choice text.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt class="sig sig-object py" id="evennia.contrib.base_systems.building_menu.building_menu.CmdNoInput.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.contrib.base_systems.building_menu.building_menu.CmdNoInput.aliases" title="Link to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt class="sig sig-object py" id="evennia.contrib.base_systems.building_menu.building_menu.CmdNoInput.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.contrib.base_systems.building_menu.building_menu.CmdNoInput.help_category" title="Link to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt class="sig sig-object py" id="evennia.contrib.base_systems.building_menu.building_menu.CmdNoInput.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.contrib.base_systems.building_menu.building_menu.CmdNoInput.lock_storage" title="Link to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt class="sig sig-object py" id="evennia.contrib.base_systems.building_menu.building_menu.CmdNoInput.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">'__noinput_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">'No</span> <span class="pre">input</span> <span class="pre">has</span> <span class="pre">been</span> <span class="pre">found.'}</span></em><a class="headerlink" href="#evennia.contrib.base_systems.building_menu.building_menu.CmdNoInput.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.contrib.base_systems.building_menu.building_menu.CmdNoMatch">
|
||
<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.contrib.base_systems.building_menu.building_menu.</span></span><span class="sig-name descname"><span class="pre">CmdNoMatch</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/contrib/base_systems/building_menu/building_menu.html#CmdNoMatch"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.contrib.base_systems.building_menu.building_menu.CmdNoMatch" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Bases: <a class="reference internal" href="evennia.commands.command.html#evennia.commands.command.Command" title="evennia.commands.command.Command"><code class="xref py py-class docutils literal notranslate"><span class="pre">Command</span></code></a></p>
|
||
<p>No input has been found.</p>
|
||
<dl class="py attribute">
|
||
<dt class="sig sig-object py" id="evennia.contrib.base_systems.building_menu.building_menu.CmdNoMatch.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">'__nomatch_command'</span></em><a class="headerlink" href="#evennia.contrib.base_systems.building_menu.building_menu.CmdNoMatch.key" title="Link to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt class="sig sig-object py" id="evennia.contrib.base_systems.building_menu.building_menu.CmdNoMatch.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()'</span></em><a class="headerlink" href="#evennia.contrib.base_systems.building_menu.building_menu.CmdNoMatch.locks" title="Link to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.contrib.base_systems.building_menu.building_menu.CmdNoMatch.__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">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/contrib/base_systems/building_menu/building_menu.html#CmdNoMatch.__init__"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.contrib.base_systems.building_menu.building_menu.CmdNoMatch.__init__" title="Link to this definition">¶</a></dt>
|
||
<dd><p>The lockhandler works the same as for objects.
|
||
optional kwargs will be set as properties on the Command at runtime,
|
||
overloading evential same-named class properties.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.contrib.base_systems.building_menu.building_menu.CmdNoMatch.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/contrib/base_systems/building_menu/building_menu.html#CmdNoMatch.func"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.contrib.base_systems.building_menu.building_menu.CmdNoMatch.func" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Call the proper menu or redirect to nomatch.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt class="sig sig-object py" id="evennia.contrib.base_systems.building_menu.building_menu.CmdNoMatch.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.contrib.base_systems.building_menu.building_menu.CmdNoMatch.aliases" title="Link to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt class="sig sig-object py" id="evennia.contrib.base_systems.building_menu.building_menu.CmdNoMatch.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.contrib.base_systems.building_menu.building_menu.CmdNoMatch.help_category" title="Link to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt class="sig sig-object py" id="evennia.contrib.base_systems.building_menu.building_menu.CmdNoMatch.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.contrib.base_systems.building_menu.building_menu.CmdNoMatch.lock_storage" title="Link to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt class="sig sig-object py" id="evennia.contrib.base_systems.building_menu.building_menu.CmdNoMatch.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">'__nomatch_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">'No</span> <span class="pre">input</span> <span class="pre">has</span> <span class="pre">been</span> <span class="pre">found.'}</span></em><a class="headerlink" href="#evennia.contrib.base_systems.building_menu.building_menu.CmdNoMatch.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.contrib.base_systems.building_menu.building_menu.BuildingMenuCmdSet">
|
||
<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.contrib.base_systems.building_menu.building_menu.</span></span><span class="sig-name descname"><span class="pre">BuildingMenuCmdSet</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">cmdsetobj</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">None</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/contrib/base_systems/building_menu/building_menu.html#BuildingMenuCmdSet"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.contrib.base_systems.building_menu.building_menu.BuildingMenuCmdSet" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Bases: <a class="reference internal" href="evennia.commands.cmdset.html#evennia.commands.cmdset.CmdSet" title="evennia.commands.cmdset.CmdSet"><code class="xref py py-class docutils literal notranslate"><span class="pre">CmdSet</span></code></a></p>
|
||
<p>Building menu CmdSet.</p>
|
||
<dl class="py attribute">
|
||
<dt class="sig sig-object py" id="evennia.contrib.base_systems.building_menu.building_menu.BuildingMenuCmdSet.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">'building_menu'</span></em><a class="headerlink" href="#evennia.contrib.base_systems.building_menu.building_menu.BuildingMenuCmdSet.key" title="Link to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt class="sig sig-object py" id="evennia.contrib.base_systems.building_menu.building_menu.BuildingMenuCmdSet.priority">
|
||
<span class="sig-name descname"><span class="pre">priority</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">5</span></em><a class="headerlink" href="#evennia.contrib.base_systems.building_menu.building_menu.BuildingMenuCmdSet.priority" title="Link to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt class="sig sig-object py" id="evennia.contrib.base_systems.building_menu.building_menu.BuildingMenuCmdSet.mergetype">
|
||
<span class="sig-name descname"><span class="pre">mergetype</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'Replace'</span></em><a class="headerlink" href="#evennia.contrib.base_systems.building_menu.building_menu.BuildingMenuCmdSet.mergetype" title="Link to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.contrib.base_systems.building_menu.building_menu.BuildingMenuCmdSet.at_cmdset_creation">
|
||
<span class="sig-name descname"><span class="pre">at_cmdset_creation</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/contrib/base_systems/building_menu/building_menu.html#BuildingMenuCmdSet.at_cmdset_creation"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.contrib.base_systems.building_menu.building_menu.BuildingMenuCmdSet.at_cmdset_creation" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Populates the cmdset with commands.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt class="sig sig-object py" id="evennia.contrib.base_systems.building_menu.building_menu.BuildingMenuCmdSet.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.contrib.base_systems.building_menu.building_menu.BuildingMenuCmdSet'</span></em><a class="headerlink" href="#evennia.contrib.base_systems.building_menu.building_menu.BuildingMenuCmdSet.path" title="Link to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
</dd></dl>
|
||
|
||
<dl class="py class">
|
||
<dt class="sig sig-object py" id="evennia.contrib.base_systems.building_menu.building_menu.Choice">
|
||
<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.contrib.base_systems.building_menu.building_menu.</span></span><span class="sig-name descname"><span class="pre">Choice</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">title</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">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">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">attr</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">text</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">glance</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">on_enter</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">on_nomatch</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">on_leave</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">menu</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">caller</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">obj</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/contrib/base_systems/building_menu/building_menu.html#Choice"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.contrib.base_systems.building_menu.building_menu.Choice" 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>A choice object, created by <strong>add_choice</strong>.</p>
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.contrib.base_systems.building_menu.building_menu.Choice.__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">title</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">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">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">attr</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">text</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">glance</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">on_enter</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">on_nomatch</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">on_leave</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">menu</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">caller</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">obj</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/contrib/base_systems/building_menu/building_menu.html#Choice.__init__"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.contrib.base_systems.building_menu.building_menu.Choice.__init__" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Constructor.</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>title</strong> (<em>str</em>) – the choice’s title.</p></li>
|
||
<li><p><strong>key</strong> (<em>str</em><em>, </em><em>optional</em>) – the key of the letters to type to access
|
||
the choice. If not set, try to guess it based on the title.</p></li>
|
||
<li><p><strong>aliases</strong> (<em>list</em><em> of </em><em>str</em><em>, </em><em>optional</em>) – the allowed aliases for this choice.</p></li>
|
||
<li><p><strong>attr</strong> (<em>str</em><em>, </em><em>optional</em>) – the name of the attribute of ‘obj’ to set.</p></li>
|
||
<li><p><strong>text</strong> (<em>str</em><em> or </em><em>callable</em><em>, </em><em>optional</em>) – a text to be displayed for this
|
||
choice. It can be a callable.</p></li>
|
||
<li><p><strong>glance</strong> (<em>str</em><em> or </em><em>callable</em><em>, </em><em>optional</em>) – an at-a-glance summary of the
|
||
sub-menu shown in the main menu. It can be set to
|
||
display the current value of the attribute in the
|
||
main menu itself.</p></li>
|
||
<li><p><strong>menu</strong> (<a class="reference internal" href="#evennia.contrib.base_systems.building_menu.building_menu.BuildingMenu" title="evennia.contrib.base_systems.building_menu.building_menu.BuildingMenu"><em>BuildingMenu</em></a><em>, </em><em>optional</em>) – the parent building menu.</p></li>
|
||
<li><p><strong>on_enter</strong> (<em>callable</em><em>, </em><em>optional</em>) – a callable to call when the
|
||
caller enters into the choice.</p></li>
|
||
<li><p><strong>on_nomatch</strong> (<em>callable</em><em>, </em><em>optional</em>) – a callable to call when no
|
||
match is entered in the choice.</p></li>
|
||
<li><p><strong>on_leave</strong> (<em>callable</em><em>, </em><em>optional</em>) – a callable to call when the caller
|
||
leaves the choice.</p></li>
|
||
<li><p><strong>caller</strong> (<em>Account</em><em> or </em><em>Object</em><em>, </em><em>optional</em>) – the caller.</p></li>
|
||
<li><p><strong>obj</strong> (<em>Object</em><em>, </em><em>optional</em>) – the object to edit.</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py property">
|
||
<dt class="sig sig-object py" id="evennia.contrib.base_systems.building_menu.building_menu.Choice.keys">
|
||
<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">keys</span></span><a class="headerlink" href="#evennia.contrib.base_systems.building_menu.building_menu.Choice.keys" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Return a tuple of keys separated by <strong>sep_keys</strong>.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.contrib.base_systems.building_menu.building_menu.Choice.format_text">
|
||
<span class="sig-name descname"><span class="pre">format_text</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/contrib/base_systems/building_menu/building_menu.html#Choice.format_text"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.contrib.base_systems.building_menu.building_menu.Choice.format_text" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Format the choice text and return it, or an empty string.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.contrib.base_systems.building_menu.building_menu.Choice.enter">
|
||
<span class="sig-name descname"><span class="pre">enter</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="reference internal" href="../_modules/evennia/contrib/base_systems/building_menu/building_menu.html#Choice.enter"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.contrib.base_systems.building_menu.building_menu.Choice.enter" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Called when the user opens the choice.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
|
||
<dd class="field-odd"><p><strong>string</strong> (<em>str</em>) – the entered string.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.contrib.base_systems.building_menu.building_menu.Choice.nomatch">
|
||
<span class="sig-name descname"><span class="pre">nomatch</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="reference internal" href="../_modules/evennia/contrib/base_systems/building_menu/building_menu.html#Choice.nomatch"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.contrib.base_systems.building_menu.building_menu.Choice.nomatch" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Called when the user entered something in the choice.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
|
||
<dd class="field-odd"><p><strong>string</strong> (<em>str</em>) – the entered string.</p>
|
||
</dd>
|
||
<dt class="field-even">Returns<span class="colon">:</span></dt>
|
||
<dd class="field-even"><p><em>to_display (bool)</em> – The return value of <strong>nomatch</strong> if set or
|
||
<strong>True</strong>. The rule is that if <strong>no_match</strong> returns <strong>True</strong>,
|
||
then the choice or menu is displayed.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.contrib.base_systems.building_menu.building_menu.Choice.leave">
|
||
<span class="sig-name descname"><span class="pre">leave</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="reference internal" href="../_modules/evennia/contrib/base_systems/building_menu/building_menu.html#Choice.leave"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.contrib.base_systems.building_menu.building_menu.Choice.leave" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Called when the user closes the choice.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
|
||
<dd class="field-odd"><p><strong>string</strong> (<em>str</em>) – the entered string.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
</dd></dl>
|
||
|
||
<dl class="py class">
|
||
<dt class="sig sig-object py" id="evennia.contrib.base_systems.building_menu.building_menu.BuildingMenu">
|
||
<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.contrib.base_systems.building_menu.building_menu.</span></span><span class="sig-name descname"><span class="pre">BuildingMenu</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">caller</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">obj</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">title</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'Building</span> <span class="pre">menu:</span> <span class="pre">{obj}'</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">keys</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">parents</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">persistent</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/contrib/base_systems/building_menu/building_menu.html#BuildingMenu"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.contrib.base_systems.building_menu.building_menu.BuildingMenu" 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>Class allowing to create and set building menus to edit specific objects.</p>
|
||
<p>A building menu is somewhat similar to <strong>EvMenu</strong>, but designed to edit
|
||
objects by builders, although it can be used for players in some contexts.
|
||
You could, for instance, create a building menu to edit a room with a
|
||
sub-menu for the room’s key, another for the room’s description,
|
||
another for the room’s exits, and so on.</p>
|
||
<p>To add choices (simple sub-menus), you should call <strong>add_choice</strong> (see the
|
||
full documentation of this method). With most arguments, you can
|
||
specify either a plain string or a callback. This callback will be
|
||
called when the operation is to be performed.</p>
|
||
<p>Some methods are provided for frequent needs (see the <strong>add_choice_*</strong>
|
||
methods). Some helper functions are defined at the top of this
|
||
module in order to be used as arguments to <strong>add_choice</strong>
|
||
in frequent cases.</p>
|
||
<dl class="py attribute">
|
||
<dt class="sig sig-object py" id="evennia.contrib.base_systems.building_menu.building_menu.BuildingMenu.keys_go_back">
|
||
<span class="sig-name descname"><span class="pre">keys_go_back</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.contrib.base_systems.building_menu.building_menu.BuildingMenu.keys_go_back" title="Link to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt class="sig sig-object py" id="evennia.contrib.base_systems.building_menu.building_menu.BuildingMenu.sep_keys">
|
||
<span class="sig-name descname"><span class="pre">sep_keys</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.contrib.base_systems.building_menu.building_menu.BuildingMenu.sep_keys" title="Link to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt class="sig sig-object py" id="evennia.contrib.base_systems.building_menu.building_menu.BuildingMenu.joker_key">
|
||
<span class="sig-name descname"><span class="pre">joker_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">'*'</span></em><a class="headerlink" href="#evennia.contrib.base_systems.building_menu.building_menu.BuildingMenu.joker_key" title="Link to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt class="sig sig-object py" id="evennia.contrib.base_systems.building_menu.building_menu.BuildingMenu.min_shortcut">
|
||
<span class="sig-name descname"><span class="pre">min_shortcut</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.contrib.base_systems.building_menu.building_menu.BuildingMenu.min_shortcut" title="Link to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.contrib.base_systems.building_menu.building_menu.BuildingMenu.__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><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">obj</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">title</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'Building</span> <span class="pre">menu:</span> <span class="pre">{obj}'</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">keys</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">parents</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">persistent</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/contrib/base_systems/building_menu/building_menu.html#BuildingMenu.__init__"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.contrib.base_systems.building_menu.building_menu.BuildingMenu.__init__" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Constructor, you shouldn’t override. See <strong>init</strong> instead.</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>Account</em><em> or </em><em>Object</em>) – the caller.</p></li>
|
||
<li><p><strong>obj</strong> (<em>Object</em>) – the object to be edited, like a room.</p></li>
|
||
<li><p><strong>title</strong> (<em>str</em><em>, </em><em>optional</em>) – the menu title.</p></li>
|
||
<li><p><strong>keys</strong> (<em>list</em><em> of </em><em>str</em><em>, </em><em>optional</em>) – the starting menu keys (None
|
||
to start from the first level).</p></li>
|
||
<li><p><strong>parents</strong> (<em>tuple</em><em>, </em><em>optional</em>) – information for parent menus,
|
||
automatically supplied.</p></li>
|
||
<li><p><strong>persistent</strong> (<em>bool</em><em>, </em><em>optional</em>) – should this building menu
|
||
survive a reload/restart?</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
<div class="admonition note">
|
||
<p class="admonition-title">Note</p>
|
||
<p>If some of these options have to be changed, it is
|
||
preferable to do so in the <strong>init</strong> method and not to
|
||
override <strong>__init__</strong>. For instance:</p>
|
||
<blockquote>
|
||
<div><dl class="simple">
|
||
<dt>class RoomBuildingMenu(BuildingMenu):</dt><dd><dl class="simple">
|
||
<dt>def init(self, room):</dt><dd><p>self.title = “Menu for room: {obj.key}(#{obj.id})”
|
||
# …</p>
|
||
</dd>
|
||
</dl>
|
||
</dd>
|
||
</dl>
|
||
</div></blockquote>
|
||
</div>
|
||
</dd></dl>
|
||
|
||
<dl class="py property">
|
||
<dt class="sig sig-object py" id="evennia.contrib.base_systems.building_menu.building_menu.BuildingMenu.current_choice">
|
||
<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">current_choice</span></span><a class="headerlink" href="#evennia.contrib.base_systems.building_menu.building_menu.BuildingMenu.current_choice" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Return the current choice or None.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Returns<span class="colon">:</span></dt>
|
||
<dd class="field-odd"><p><em>choice (Choice)</em> – the current choice or None.</p>
|
||
</dd>
|
||
</dl>
|
||
<div class="admonition note">
|
||
<p class="admonition-title">Note</p>
|
||
<p>We use the menu keys to identify the current position of
|
||
the caller in the menu. The menu <strong>keys</strong> hold a list of
|
||
keys that should match a choice to be usable.</p>
|
||
</div>
|
||
</dd></dl>
|
||
|
||
<dl class="py property">
|
||
<dt class="sig sig-object py" id="evennia.contrib.base_systems.building_menu.building_menu.BuildingMenu.relevant_choices">
|
||
<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">relevant_choices</span></span><a class="headerlink" href="#evennia.contrib.base_systems.building_menu.building_menu.BuildingMenu.relevant_choices" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Only return the relevant choices according to the current meny key.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Returns<span class="colon">:</span></dt>
|
||
<dd class="field-odd"><p><em>relevant (list of Choice object)</em> – the relevant choices.</p>
|
||
</dd>
|
||
</dl>
|
||
<div class="admonition note">
|
||
<p class="admonition-title">Note</p>
|
||
<p>We use the menu keys to identify the current position of
|
||
the caller in the menu. The menu <strong>keys</strong> hold a list of
|
||
keys that should match a choice to be usable.</p>
|
||
</div>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.contrib.base_systems.building_menu.building_menu.BuildingMenu.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">obj</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/contrib/base_systems/building_menu/building_menu.html#BuildingMenu.init"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.contrib.base_systems.building_menu.building_menu.BuildingMenu.init" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Create the sub-menu to edit the specified object.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
|
||
<dd class="field-odd"><p><strong>obj</strong> (<em>Object</em>) – the object to edit.</p>
|
||
</dd>
|
||
</dl>
|
||
<div class="admonition note">
|
||
<p class="admonition-title">Note</p>
|
||
<p>This method is probably to be overridden in your subclasses.
|
||
Use <strong>add_choice</strong> and its variants to create menu choices.</p>
|
||
</div>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.contrib.base_systems.building_menu.building_menu.BuildingMenu.add_choice">
|
||
<span class="sig-name descname"><span class="pre">add_choice</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">title</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">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">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">attr</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">text</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">glance</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">on_enter</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">on_nomatch</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">on_leave</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/contrib/base_systems/building_menu/building_menu.html#BuildingMenu.add_choice"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.contrib.base_systems.building_menu.building_menu.BuildingMenu.add_choice" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Add a choice, a valid sub-menu, in the current builder menu.</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>title</strong> (<em>str</em>) – the choice’s title.</p></li>
|
||
<li><p><strong>key</strong> (<em>str</em><em>, </em><em>optional</em>) – the key of the letters to type to access
|
||
the sub-neu. If not set, try to guess it based on the
|
||
choice title.</p></li>
|
||
<li><p><strong>aliases</strong> (<em>list</em><em> of </em><em>str</em><em>, </em><em>optional</em>) – the aliases for this choice.</p></li>
|
||
<li><p><strong>attr</strong> (<em>str</em><em>, </em><em>optional</em>) – the name of the attribute of ‘obj’ to set.
|
||
This is really useful if you want to edit an
|
||
attribute of the object (that’s a frequent need). If
|
||
you don’t want to do so, just use the <strong>on_*</strong> arguments.</p></li>
|
||
<li><p><strong>text</strong> (<em>str</em><em> or </em><em>callable</em><em>, </em><em>optional</em>) – a text to be displayed when
|
||
the menu is opened It can be a callable.</p></li>
|
||
<li><p><strong>glance</strong> (<em>str</em><em> or </em><em>callable</em><em>, </em><em>optional</em>) – an at-a-glance summary of the
|
||
sub-menu shown in the main menu. It can be set to
|
||
display the current value of the attribute in the
|
||
main menu itself.</p></li>
|
||
<li><p><strong>on_enter</strong> (<em>callable</em><em>, </em><em>optional</em>) – a callable to call when the
|
||
caller enters into this choice.</p></li>
|
||
<li><p><strong>on_nomatch</strong> (<em>callable</em><em>, </em><em>optional</em>) – a callable to call when
|
||
the caller enters something in this choice. If you
|
||
don’t set this argument but you have specified
|
||
<strong>attr</strong>, then <strong>obj</strong>.**attr** will be set with the value
|
||
entered by the user.</p></li>
|
||
<li><p><strong>on_leave</strong> (<em>callable</em><em>, </em><em>optional</em>) – a callable to call when the
|
||
caller leaves the choice.</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-even">Returns<span class="colon">:</span></dt>
|
||
<dd class="field-even"><p><em>choice (Choice)</em> – the newly-created choice.</p>
|
||
</dd>
|
||
<dt class="field-odd">Raises<span class="colon">:</span></dt>
|
||
<dd class="field-odd"><p><strong>ValueError if the choice cannot be added.</strong> – </p>
|
||
</dd>
|
||
</dl>
|
||
<div class="admonition note">
|
||
<p class="admonition-title">Note</p>
|
||
<p>Most arguments can be callables, like functions. This has the
|
||
advantage of allowing great flexibility. If you specify
|
||
a callable in most of the arguments, the callable should return
|
||
the value expected by the argument (a str more often than
|
||
not). For instance, you could set a function to be called
|
||
to get the menu text, which allows for some filtering:</p>
|
||
<blockquote>
|
||
<div><dl class="simple">
|
||
<dt>def text_exits(menu):</dt><dd><p>return “Some text to display”</p>
|
||
</dd>
|
||
<dt>class RoomBuildingMenu(BuildingMenu):</dt><dd><dl class="simple">
|
||
<dt>def init(self):</dt><dd><p>self.add_choice(“exits”, key=”x”, text=text_exits)</p>
|
||
</dd>
|
||
</dl>
|
||
</dd>
|
||
</dl>
|
||
</div></blockquote>
|
||
<p>The allowed arguments in a callable are specific to the
|
||
argument names (they are not sensitive to orders, not all
|
||
arguments have to be present). For more information, see
|
||
<strong>_call_or_get</strong>.</p>
|
||
</div>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.contrib.base_systems.building_menu.building_menu.BuildingMenu.add_choice_edit">
|
||
<span class="sig-name descname"><span class="pre">add_choice_edit</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">title</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'description'</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">'d'</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">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">attr</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'db.desc'</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">glance</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'\n</span>   <span class="pre">{obj.db.desc}'</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">on_enter</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/contrib/base_systems/building_menu/building_menu.html#BuildingMenu.add_choice_edit"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.contrib.base_systems.building_menu.building_menu.BuildingMenu.add_choice_edit" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Add a simple choice to edit a given attribute in the EvEditor.</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>title</strong> (<em>str</em><em>, </em><em>optional</em>) – the choice’s title.</p></li>
|
||
<li><p><strong>key</strong> (<em>str</em><em>, </em><em>optional</em>) – the choice’s key.</p></li>
|
||
<li><p><strong>aliases</strong> (<em>list</em><em> of </em><em>str</em><em>, </em><em>optional</em>) – the choice’s aliases.</p></li>
|
||
<li><p><strong>glance</strong> (<em>str</em><em> or </em><em>callable</em><em>, </em><em>optional</em>) – the at-a-glance description.</p></li>
|
||
<li><p><strong>on_enter</strong> (<em>callable</em><em>, </em><em>optional</em>) – a different callable to edit
|
||
the attribute.</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-even">Returns<span class="colon">:</span></dt>
|
||
<dd class="field-even"><p><em>choice (Choice)</em> – the newly-created choice.</p>
|
||
</dd>
|
||
</dl>
|
||
<div class="admonition note">
|
||
<p class="admonition-title">Note</p>
|
||
<p>This is just a shortcut method, calling <strong>add_choice</strong>.
|
||
If <strong>on_enter</strong> is not set, use <strong>menu_edit</strong> which opens
|
||
an EvEditor to edit the specified attribute.
|
||
When the caller closes the editor (with :q), the menu
|
||
will be re-opened.</p>
|
||
</div>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.contrib.base_systems.building_menu.building_menu.BuildingMenu.add_choice_quit">
|
||
<span class="sig-name descname"><span class="pre">add_choice_quit</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">title</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'quit</span> <span class="pre">the</span> <span class="pre">menu'</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">'q'</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">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">on_enter</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/contrib/base_systems/building_menu/building_menu.html#BuildingMenu.add_choice_quit"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.contrib.base_systems.building_menu.building_menu.BuildingMenu.add_choice_quit" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Add a simple choice just to quit the building menu.</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>title</strong> (<em>str</em><em>, </em><em>optional</em>) – the choice’s title.</p></li>
|
||
<li><p><strong>key</strong> (<em>str</em><em>, </em><em>optional</em>) – the choice’s key.</p></li>
|
||
<li><p><strong>aliases</strong> (<em>list</em><em> of </em><em>str</em><em>, </em><em>optional</em>) – the choice’s aliases.</p></li>
|
||
<li><p><strong>on_enter</strong> (<em>callable</em><em>, </em><em>optional</em>) – a different callable
|
||
to quit the building menu.</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
<div class="admonition note">
|
||
<p class="admonition-title">Note</p>
|
||
<p>This is just a shortcut method, calling <strong>add_choice</strong>.
|
||
If <strong>on_enter</strong> is not set, use <strong>menu_quit</strong> which simply
|
||
closes the menu and displays a message. It also
|
||
removes the CmdSet from the caller. If you supply
|
||
another callable instead, make sure to do the same.</p>
|
||
</div>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.contrib.base_systems.building_menu.building_menu.BuildingMenu.open">
|
||
<span class="sig-name descname"><span class="pre">open</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/contrib/base_systems/building_menu/building_menu.html#BuildingMenu.open"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.contrib.base_systems.building_menu.building_menu.BuildingMenu.open" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Open the building menu for the caller.</p>
|
||
<div class="admonition note">
|
||
<p class="admonition-title">Note</p>
|
||
<p>This method should be called once when the building menu
|
||
has been instanciated. From there, the building menu will
|
||
be re-created automatically when the server
|
||
reloads/restarts, assuming <strong>persistent</strong> is set to <strong>True</strong>.</p>
|
||
</div>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.contrib.base_systems.building_menu.building_menu.BuildingMenu.open_parent_menu">
|
||
<span class="sig-name descname"><span class="pre">open_parent_menu</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/contrib/base_systems/building_menu/building_menu.html#BuildingMenu.open_parent_menu"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.contrib.base_systems.building_menu.building_menu.BuildingMenu.open_parent_menu" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Open the parent menu, using <strong>self.parents</strong>.</p>
|
||
<div class="admonition note">
|
||
<p class="admonition-title">Note</p>
|
||
<p>You probably don’t need to call this method directly,
|
||
since the caller can go back to the parent menu using the
|
||
<strong>keys_go_back</strong> automatically.</p>
|
||
</div>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.contrib.base_systems.building_menu.building_menu.BuildingMenu.open_submenu">
|
||
<span class="sig-name descname"><span class="pre">open_submenu</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">submenu_class</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">submenu_obj</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">parent_keys</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/contrib/base_systems/building_menu/building_menu.html#BuildingMenu.open_submenu"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.contrib.base_systems.building_menu.building_menu.BuildingMenu.open_submenu" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Open a sub-menu, closing the current menu and opening the new one.</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>submenu_class</strong> (<em>str</em>) – the submenu class as a Python path.</p></li>
|
||
<li><p><strong>submenu_obj</strong> (<em>Object</em>) – the object to give to the submenu.</p></li>
|
||
<li><p><strong>parent_keys</strong> (<em>list</em><em> of </em><em>str</em><em>, </em><em>optional</em>) – the parent keys when
|
||
the submenu is closed.</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
<div class="admonition note">
|
||
<p class="admonition-title">Note</p>
|
||
<p>When the user enters <strong>@</strong> in the submenu, she will go back to
|
||
the current menu, with the <strong>parent_keys</strong> set as its keys.
|
||
Therefore, you should set it on the keys of the choice that
|
||
should be opened when the user leaves the submenu.</p>
|
||
</div>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Returns<span class="colon">:</span></dt>
|
||
<dd class="field-odd"><p><em>new_menu (BuildingMenu)</em> – the new building menu or None.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.contrib.base_systems.building_menu.building_menu.BuildingMenu.move">
|
||
<span class="sig-name descname"><span class="pre">move</span></span><span class="sig-paren">(</span><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">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">back</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">quiet</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">string</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/contrib/base_systems/building_menu/building_menu.html#BuildingMenu.move"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.contrib.base_systems.building_menu.building_menu.BuildingMenu.move" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Move inside the menu.</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>key</strong> (<em>any</em>) – the portion of the key to add to the current
|
||
menu keys. If you wish to go back in the menu
|
||
tree, don’t provide a <strong>key</strong>, just set <strong>back</strong> to <strong>True</strong>.</p></li>
|
||
<li><p><strong>back</strong> (<em>bool</em><em>, </em><em>optional</em>) – go back in the menu (<strong>False</strong> by default).</p></li>
|
||
<li><p><strong>quiet</strong> (<em>bool</em><em>, </em><em>optional</em>) – should the menu or choice be
|
||
displayed afterward?</p></li>
|
||
<li><p><strong>string</strong> (<em>str</em><em>, </em><em>optional</em>) – the string sent by the caller to move.</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
<div class="admonition note">
|
||
<p class="admonition-title">Note</p>
|
||
<p>This method will need to be called directly should you
|
||
use more than two levels in your menu. For instance,
|
||
in your room menu, if you want to have an “exits”
|
||
option, and then be able to enter “north” in this
|
||
choice to edit an exit. The specific exit choice
|
||
could be a different menu (with a different class), but
|
||
it could also be an additional level in your original menu.
|
||
If that’s the case, you will need to use this method.</p>
|
||
</div>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.contrib.base_systems.building_menu.building_menu.BuildingMenu.close">
|
||
<span class="sig-name descname"><span class="pre">close</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/contrib/base_systems/building_menu/building_menu.html#BuildingMenu.close"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.contrib.base_systems.building_menu.building_menu.BuildingMenu.close" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Close the building menu, removing the CmdSet.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.contrib.base_systems.building_menu.building_menu.BuildingMenu.display_title">
|
||
<span class="sig-name descname"><span class="pre">display_title</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/contrib/base_systems/building_menu/building_menu.html#BuildingMenu.display_title"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.contrib.base_systems.building_menu.building_menu.BuildingMenu.display_title" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Return the menu title to be displayed.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.contrib.base_systems.building_menu.building_menu.BuildingMenu.display_choice">
|
||
<span class="sig-name descname"><span class="pre">display_choice</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">choice</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/contrib/base_systems/building_menu/building_menu.html#BuildingMenu.display_choice"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.contrib.base_systems.building_menu.building_menu.BuildingMenu.display_choice" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Display the specified choice.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
|
||
<dd class="field-odd"><p><strong>choice</strong> (<a class="reference internal" href="#evennia.contrib.base_systems.building_menu.building_menu.Choice" title="evennia.contrib.base_systems.building_menu.building_menu.Choice"><em>Choice</em></a>) – the menu choice.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.contrib.base_systems.building_menu.building_menu.BuildingMenu.display">
|
||
<span class="sig-name descname"><span class="pre">display</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/contrib/base_systems/building_menu/building_menu.html#BuildingMenu.display"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.contrib.base_systems.building_menu.building_menu.BuildingMenu.display" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Display the entire menu or a single choice, depending on the keys.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.contrib.base_systems.building_menu.building_menu.BuildingMenu.restore">
|
||
<em class="property"><span class="k"><span class="pre">static</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">restore</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">caller</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/contrib/base_systems/building_menu/building_menu.html#BuildingMenu.restore"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.contrib.base_systems.building_menu.building_menu.BuildingMenu.restore" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Restore the building menu for the caller.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
|
||
<dd class="field-odd"><p><strong>caller</strong> (<em>Account</em><em> or </em><em>Object</em>) – the caller.</p>
|
||
</dd>
|
||
</dl>
|
||
<div class="admonition note">
|
||
<p class="admonition-title">Note</p>
|
||
<p>This method should be automatically called if a menu is
|
||
saved in the caller, but the object itself cannot be found.</p>
|
||
</div>
|
||
</dd></dl>
|
||
|
||
</dd></dl>
|
||
|
||
<dl class="py class">
|
||
<dt class="sig sig-object py" id="evennia.contrib.base_systems.building_menu.building_menu.GenericBuildingMenu">
|
||
<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.contrib.base_systems.building_menu.building_menu.</span></span><span class="sig-name descname"><span class="pre">GenericBuildingMenu</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">caller</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">obj</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">title</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'Building</span> <span class="pre">menu:</span> <span class="pre">{obj}'</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">keys</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">parents</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">persistent</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/contrib/base_systems/building_menu/building_menu.html#GenericBuildingMenu"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.contrib.base_systems.building_menu.building_menu.GenericBuildingMenu" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Bases: <a class="reference internal" href="#evennia.contrib.base_systems.building_menu.building_menu.BuildingMenu" title="evennia.contrib.base_systems.building_menu.building_menu.BuildingMenu"><code class="xref py py-class docutils literal notranslate"><span class="pre">BuildingMenu</span></code></a></p>
|
||
<p>A generic building menu, allowing to edit any object.</p>
|
||
<p>This is more a demonstration menu. By default, it allows to edit the
|
||
object key and description. Nevertheless, it will be useful to demonstrate
|
||
how building menus are meant to be used.</p>
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.contrib.base_systems.building_menu.building_menu.GenericBuildingMenu.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">obj</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/contrib/base_systems/building_menu/building_menu.html#GenericBuildingMenu.init"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.contrib.base_systems.building_menu.building_menu.GenericBuildingMenu.init" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Build the meny, adding the ‘key’ and ‘description’ choices.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
|
||
<dd class="field-odd"><p><strong>obj</strong> (<em>Object</em>) – any object to be edited, like a character or room.</p>
|
||
</dd>
|
||
</dl>
|
||
<div class="admonition note">
|
||
<p class="admonition-title">Note</p>
|
||
<p>The ‘quit’ choice will be automatically added, though you can
|
||
call <strong>add_choice_quit</strong> to add this choice with different options.</p>
|
||
</div>
|
||
</dd></dl>
|
||
|
||
</dd></dl>
|
||
|
||
<dl class="py class">
|
||
<dt class="sig sig-object py" id="evennia.contrib.base_systems.building_menu.building_menu.GenericBuildingCmd">
|
||
<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.contrib.base_systems.building_menu.building_menu.</span></span><span class="sig-name descname"><span class="pre">GenericBuildingCmd</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/contrib/base_systems/building_menu/building_menu.html#GenericBuildingCmd"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.contrib.base_systems.building_menu.building_menu.GenericBuildingCmd" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Bases: <a class="reference internal" href="evennia.commands.command.html#evennia.commands.command.Command" title="evennia.commands.command.Command"><code class="xref py py-class docutils literal notranslate"><span class="pre">Command</span></code></a></p>
|
||
<p>Generic building command.</p>
|
||
<dl class="simple">
|
||
<dt>Syntax:</dt><dd><p>@edit [object]</p>
|
||
</dd>
|
||
</dl>
|
||
<p>Open a building menu to edit the specified object. This menu allows to
|
||
change the object’s key and description.</p>
|
||
<p class="rubric">Examples</p>
|
||
<p>@edit here
|
||
@edit self
|
||
@edit #142</p>
|
||
<dl class="py attribute">
|
||
<dt class="sig sig-object py" id="evennia.contrib.base_systems.building_menu.building_menu.GenericBuildingCmd.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">'@edit'</span></em><a class="headerlink" href="#evennia.contrib.base_systems.building_menu.building_menu.GenericBuildingCmd.key" title="Link to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt class="sig sig-object py" id="evennia.contrib.base_systems.building_menu.building_menu.GenericBuildingCmd.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.contrib.base_systems.building_menu.building_menu.GenericBuildingCmd.help_category" title="Link to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.contrib.base_systems.building_menu.building_menu.GenericBuildingCmd.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/contrib/base_systems/building_menu/building_menu.html#GenericBuildingCmd.func"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.contrib.base_systems.building_menu.building_menu.GenericBuildingCmd.func" title="Link to this definition">¶</a></dt>
|
||
<dd><p>This is the actual executing part of the command. It is
|
||
called directly after self.parse(). See the docstring of this
|
||
module for which object properties are available (beyond those
|
||
set in self.parse())</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt class="sig sig-object py" id="evennia.contrib.base_systems.building_menu.building_menu.GenericBuildingCmd.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.contrib.base_systems.building_menu.building_menu.GenericBuildingCmd.aliases" title="Link to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt class="sig sig-object py" id="evennia.contrib.base_systems.building_menu.building_menu.GenericBuildingCmd.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.contrib.base_systems.building_menu.building_menu.GenericBuildingCmd.lock_storage" title="Link to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt class="sig sig-object py" id="evennia.contrib.base_systems.building_menu.building_menu.GenericBuildingCmd.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">'@edit',</span> <span class="pre">'no_prefix':</span> <span class="pre">'edit</span> <span class="pre">',</span> <span class="pre">'tags':</span> <span class="pre">'',</span> <span class="pre">'text':</span> <span class="pre">"\nGeneric</span> <span class="pre">building</span> <span class="pre">command.\n\nSyntax:\n</span>  <span class="pre">@edit</span> <span class="pre">[object]\n\nOpen</span> <span class="pre">a</span> <span class="pre">building</span> <span class="pre">menu</span> <span class="pre">to</span> <span class="pre">edit</span> <span class="pre">the</span> <span class="pre">specified</span> <span class="pre">object.</span>  <span class="pre">This</span> <span class="pre">menu</span> <span class="pre">allows</span> <span class="pre">to\nchange</span> <span class="pre">the</span> <span class="pre">object's</span> <span class="pre">key</span> <span class="pre">and</span> <span class="pre">description.\n\nExamples:\n</span>  <span class="pre">@edit</span> <span class="pre">here\n</span>  <span class="pre">@edit</span> <span class="pre">self\n</span>  <span class="pre">@edit</span> <span class="pre">#142\n\n"}</span></em><a class="headerlink" href="#evennia.contrib.base_systems.building_menu.building_menu.GenericBuildingCmd.search_index_entry" title="Link to this definition">¶</a></dt>
|
||
<dd></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.contrib.base_systems.building_menu.building_menu</a><ul>
|
||
<li><a class="reference internal" href="#evennia.contrib.base_systems.building_menu.building_menu.menu_setattr"><code class="docutils literal notranslate"><span class="pre">menu_setattr()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.contrib.base_systems.building_menu.building_menu.menu_quit"><code class="docutils literal notranslate"><span class="pre">menu_quit()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.contrib.base_systems.building_menu.building_menu.menu_edit"><code class="docutils literal notranslate"><span class="pre">menu_edit()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.contrib.base_systems.building_menu.building_menu.CmdNoInput"><code class="docutils literal notranslate"><span class="pre">CmdNoInput</span></code></a><ul>
|
||
<li><a class="reference internal" href="#evennia.contrib.base_systems.building_menu.building_menu.CmdNoInput.key"><code class="docutils literal notranslate"><span class="pre">CmdNoInput.key</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.contrib.base_systems.building_menu.building_menu.CmdNoInput.locks"><code class="docutils literal notranslate"><span class="pre">CmdNoInput.locks</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.contrib.base_systems.building_menu.building_menu.CmdNoInput.__init__"><code class="docutils literal notranslate"><span class="pre">CmdNoInput.__init__()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.contrib.base_systems.building_menu.building_menu.CmdNoInput.func"><code class="docutils literal notranslate"><span class="pre">CmdNoInput.func()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.contrib.base_systems.building_menu.building_menu.CmdNoInput.aliases"><code class="docutils literal notranslate"><span class="pre">CmdNoInput.aliases</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.contrib.base_systems.building_menu.building_menu.CmdNoInput.help_category"><code class="docutils literal notranslate"><span class="pre">CmdNoInput.help_category</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.contrib.base_systems.building_menu.building_menu.CmdNoInput.lock_storage"><code class="docutils literal notranslate"><span class="pre">CmdNoInput.lock_storage</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.contrib.base_systems.building_menu.building_menu.CmdNoInput.search_index_entry"><code class="docutils literal notranslate"><span class="pre">CmdNoInput.search_index_entry</span></code></a></li>
|
||
</ul>
|
||
</li>
|
||
<li><a class="reference internal" href="#evennia.contrib.base_systems.building_menu.building_menu.CmdNoMatch"><code class="docutils literal notranslate"><span class="pre">CmdNoMatch</span></code></a><ul>
|
||
<li><a class="reference internal" href="#evennia.contrib.base_systems.building_menu.building_menu.CmdNoMatch.key"><code class="docutils literal notranslate"><span class="pre">CmdNoMatch.key</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.contrib.base_systems.building_menu.building_menu.CmdNoMatch.locks"><code class="docutils literal notranslate"><span class="pre">CmdNoMatch.locks</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.contrib.base_systems.building_menu.building_menu.CmdNoMatch.__init__"><code class="docutils literal notranslate"><span class="pre">CmdNoMatch.__init__()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.contrib.base_systems.building_menu.building_menu.CmdNoMatch.func"><code class="docutils literal notranslate"><span class="pre">CmdNoMatch.func()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.contrib.base_systems.building_menu.building_menu.CmdNoMatch.aliases"><code class="docutils literal notranslate"><span class="pre">CmdNoMatch.aliases</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.contrib.base_systems.building_menu.building_menu.CmdNoMatch.help_category"><code class="docutils literal notranslate"><span class="pre">CmdNoMatch.help_category</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.contrib.base_systems.building_menu.building_menu.CmdNoMatch.lock_storage"><code class="docutils literal notranslate"><span class="pre">CmdNoMatch.lock_storage</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.contrib.base_systems.building_menu.building_menu.CmdNoMatch.search_index_entry"><code class="docutils literal notranslate"><span class="pre">CmdNoMatch.search_index_entry</span></code></a></li>
|
||
</ul>
|
||
</li>
|
||
<li><a class="reference internal" href="#evennia.contrib.base_systems.building_menu.building_menu.BuildingMenuCmdSet"><code class="docutils literal notranslate"><span class="pre">BuildingMenuCmdSet</span></code></a><ul>
|
||
<li><a class="reference internal" href="#evennia.contrib.base_systems.building_menu.building_menu.BuildingMenuCmdSet.key"><code class="docutils literal notranslate"><span class="pre">BuildingMenuCmdSet.key</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.contrib.base_systems.building_menu.building_menu.BuildingMenuCmdSet.priority"><code class="docutils literal notranslate"><span class="pre">BuildingMenuCmdSet.priority</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.contrib.base_systems.building_menu.building_menu.BuildingMenuCmdSet.mergetype"><code class="docutils literal notranslate"><span class="pre">BuildingMenuCmdSet.mergetype</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.contrib.base_systems.building_menu.building_menu.BuildingMenuCmdSet.at_cmdset_creation"><code class="docutils literal notranslate"><span class="pre">BuildingMenuCmdSet.at_cmdset_creation()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.contrib.base_systems.building_menu.building_menu.BuildingMenuCmdSet.path"><code class="docutils literal notranslate"><span class="pre">BuildingMenuCmdSet.path</span></code></a></li>
|
||
</ul>
|
||
</li>
|
||
<li><a class="reference internal" href="#evennia.contrib.base_systems.building_menu.building_menu.Choice"><code class="docutils literal notranslate"><span class="pre">Choice</span></code></a><ul>
|
||
<li><a class="reference internal" href="#evennia.contrib.base_systems.building_menu.building_menu.Choice.__init__"><code class="docutils literal notranslate"><span class="pre">Choice.__init__()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.contrib.base_systems.building_menu.building_menu.Choice.keys"><code class="docutils literal notranslate"><span class="pre">Choice.keys</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.contrib.base_systems.building_menu.building_menu.Choice.format_text"><code class="docutils literal notranslate"><span class="pre">Choice.format_text()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.contrib.base_systems.building_menu.building_menu.Choice.enter"><code class="docutils literal notranslate"><span class="pre">Choice.enter()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.contrib.base_systems.building_menu.building_menu.Choice.nomatch"><code class="docutils literal notranslate"><span class="pre">Choice.nomatch()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.contrib.base_systems.building_menu.building_menu.Choice.leave"><code class="docutils literal notranslate"><span class="pre">Choice.leave()</span></code></a></li>
|
||
</ul>
|
||
</li>
|
||
<li><a class="reference internal" href="#evennia.contrib.base_systems.building_menu.building_menu.BuildingMenu"><code class="docutils literal notranslate"><span class="pre">BuildingMenu</span></code></a><ul>
|
||
<li><a class="reference internal" href="#evennia.contrib.base_systems.building_menu.building_menu.BuildingMenu.keys_go_back"><code class="docutils literal notranslate"><span class="pre">BuildingMenu.keys_go_back</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.contrib.base_systems.building_menu.building_menu.BuildingMenu.sep_keys"><code class="docutils literal notranslate"><span class="pre">BuildingMenu.sep_keys</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.contrib.base_systems.building_menu.building_menu.BuildingMenu.joker_key"><code class="docutils literal notranslate"><span class="pre">BuildingMenu.joker_key</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.contrib.base_systems.building_menu.building_menu.BuildingMenu.min_shortcut"><code class="docutils literal notranslate"><span class="pre">BuildingMenu.min_shortcut</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.contrib.base_systems.building_menu.building_menu.BuildingMenu.__init__"><code class="docutils literal notranslate"><span class="pre">BuildingMenu.__init__()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.contrib.base_systems.building_menu.building_menu.BuildingMenu.current_choice"><code class="docutils literal notranslate"><span class="pre">BuildingMenu.current_choice</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.contrib.base_systems.building_menu.building_menu.BuildingMenu.relevant_choices"><code class="docutils literal notranslate"><span class="pre">BuildingMenu.relevant_choices</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.contrib.base_systems.building_menu.building_menu.BuildingMenu.init"><code class="docutils literal notranslate"><span class="pre">BuildingMenu.init()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.contrib.base_systems.building_menu.building_menu.BuildingMenu.add_choice"><code class="docutils literal notranslate"><span class="pre">BuildingMenu.add_choice()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.contrib.base_systems.building_menu.building_menu.BuildingMenu.add_choice_edit"><code class="docutils literal notranslate"><span class="pre">BuildingMenu.add_choice_edit()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.contrib.base_systems.building_menu.building_menu.BuildingMenu.add_choice_quit"><code class="docutils literal notranslate"><span class="pre">BuildingMenu.add_choice_quit()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.contrib.base_systems.building_menu.building_menu.BuildingMenu.open"><code class="docutils literal notranslate"><span class="pre">BuildingMenu.open()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.contrib.base_systems.building_menu.building_menu.BuildingMenu.open_parent_menu"><code class="docutils literal notranslate"><span class="pre">BuildingMenu.open_parent_menu()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.contrib.base_systems.building_menu.building_menu.BuildingMenu.open_submenu"><code class="docutils literal notranslate"><span class="pre">BuildingMenu.open_submenu()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.contrib.base_systems.building_menu.building_menu.BuildingMenu.move"><code class="docutils literal notranslate"><span class="pre">BuildingMenu.move()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.contrib.base_systems.building_menu.building_menu.BuildingMenu.close"><code class="docutils literal notranslate"><span class="pre">BuildingMenu.close()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.contrib.base_systems.building_menu.building_menu.BuildingMenu.display_title"><code class="docutils literal notranslate"><span class="pre">BuildingMenu.display_title()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.contrib.base_systems.building_menu.building_menu.BuildingMenu.display_choice"><code class="docutils literal notranslate"><span class="pre">BuildingMenu.display_choice()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.contrib.base_systems.building_menu.building_menu.BuildingMenu.display"><code class="docutils literal notranslate"><span class="pre">BuildingMenu.display()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.contrib.base_systems.building_menu.building_menu.BuildingMenu.restore"><code class="docutils literal notranslate"><span class="pre">BuildingMenu.restore()</span></code></a></li>
|
||
</ul>
|
||
</li>
|
||
<li><a class="reference internal" href="#evennia.contrib.base_systems.building_menu.building_menu.GenericBuildingMenu"><code class="docutils literal notranslate"><span class="pre">GenericBuildingMenu</span></code></a><ul>
|
||
<li><a class="reference internal" href="#evennia.contrib.base_systems.building_menu.building_menu.GenericBuildingMenu.init"><code class="docutils literal notranslate"><span class="pre">GenericBuildingMenu.init()</span></code></a></li>
|
||
</ul>
|
||
</li>
|
||
<li><a class="reference internal" href="#evennia.contrib.base_systems.building_menu.building_menu.GenericBuildingCmd"><code class="docutils literal notranslate"><span class="pre">GenericBuildingCmd</span></code></a><ul>
|
||
<li><a class="reference internal" href="#evennia.contrib.base_systems.building_menu.building_menu.GenericBuildingCmd.key"><code class="docutils literal notranslate"><span class="pre">GenericBuildingCmd.key</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.contrib.base_systems.building_menu.building_menu.GenericBuildingCmd.help_category"><code class="docutils literal notranslate"><span class="pre">GenericBuildingCmd.help_category</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.contrib.base_systems.building_menu.building_menu.GenericBuildingCmd.func"><code class="docutils literal notranslate"><span class="pre">GenericBuildingCmd.func()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.contrib.base_systems.building_menu.building_menu.GenericBuildingCmd.aliases"><code class="docutils literal notranslate"><span class="pre">GenericBuildingCmd.aliases</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.contrib.base_systems.building_menu.building_menu.GenericBuildingCmd.lock_storage"><code class="docutils literal notranslate"><span class="pre">GenericBuildingCmd.lock_storage</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.contrib.base_systems.building_menu.building_menu.GenericBuildingCmd.search_index_entry"><code class="docutils literal notranslate"><span class="pre">GenericBuildingCmd.search_index_entry</span></code></a></li>
|
||
</ul>
|
||
</li>
|
||
</ul>
|
||
</li>
|
||
</ul>
|
||
|
||
<div>
|
||
<h4>Previous topic</h4>
|
||
<p class="topless"><a href="evennia.contrib.base_systems.building_menu.html"
|
||
title="previous chapter">evennia.contrib.base_systems.building_menu</a></p>
|
||
</div>
|
||
<div>
|
||
<h4>Next topic</h4>
|
||
<p class="topless"><a href="evennia.contrib.base_systems.building_menu.tests.html"
|
||
title="next chapter">evennia.contrib.base_systems.building_menu.tests</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.contrib.base_systems.building_menu.building_menu.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.contrib.base_systems.building_menu.tests.html" title="evennia.contrib.base_systems.building_menu.tests"
|
||
>next</a> |</li>
|
||
<li class="right" >
|
||
<a href="evennia.contrib.base_systems.building_menu.html" title="evennia.contrib.base_systems.building_menu"
|
||
>previous</a> |</li>
|
||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia</a> »</li>
|
||
<li class="nav-item nav-item-1"><a href="../Evennia-API.html" >API Summary</a> »</li>
|
||
<li class="nav-item nav-item-2"><a href="evennia-api.html" >evennia</a> »</li>
|
||
<li class="nav-item nav-item-3"><a href="evennia.html" >evennia</a> »</li>
|
||
<li class="nav-item nav-item-4"><a href="evennia.contrib.html" >evennia.contrib</a> »</li>
|
||
<li class="nav-item nav-item-5"><a href="evennia.contrib.base_systems.html" >evennia.contrib.base_systems</a> »</li>
|
||
<li class="nav-item nav-item-6"><a href="evennia.contrib.base_systems.building_menu.html" >evennia.contrib.base_systems.building_menu</a> »</li>
|
||
<li class="nav-item nav-item-this"><a href="">evennia.contrib.base_systems.building_menu.building_menu</a></li>
|
||
</ul>
|
||
</div>
|
||
<div class="footer" role="contentinfo">
|
||
© Copyright 2024, The Evennia developer community.
|
||
Created using <a href="https://www.sphinx-doc.org/">Sphinx</a> 8.2.3.
|
||
</div>
|
||
</body>
|
||
</html> |