<spanid="evennia-contrib-game-systems-multidescer-multidescer"></span><h1>evennia.contrib.game_systems.multidescer.multidescer<aclass="headerlink"href="#module-evennia.contrib.game_systems.multidescer.multidescer"title="Permalink to this headline">¶</a></h1>
<p>Evennia Multidescer</p>
<p>Contrib - Griatch 2016</p>
<p>A “multidescer” is a concept from the MUSH world. It allows for
creating, managing and switching between multiple character
descriptions. This multidescer will not require any changes to the
Character class, rather it will use the <strong>multidescs</strong> Attribute (a
list) and create it if it does not exist.</p>
<p>This contrib also works well together with the rpsystem contrib (which
also adds the short descriptions and the <strong>sdesc</strong> command).</p>
<p>Installation:</p>
<p>Edit <strong>mygame/commands/default_cmdsets.py</strong> and add
<strong>from evennia.contrib.game_systems.multidescer import CmdMultiDesc</strong> to the top.</p>
<p>Next, look up the <strong>at_cmdset_create</strong> method of the <strong>CharacterCmdSet</strong>
class and add a line <strong>self.add(CmdMultiDesc())</strong> to the end
of it.</p>
<p>Reload the server and you should have the +desc command available (it
will replace the default <strong>desc</strong> command).</p>
<emclass="property">exception </em><codeclass="sig-prename descclassname">evennia.contrib.game_systems.multidescer.multidescer.</code><codeclass="sig-name descname">DescValidateError</code><aclass="reference internal"href="../_modules/evennia/contrib/game_systems/multidescer/multidescer.html#DescValidateError"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.game_systems.multidescer.multidescer.DescValidateError"title="Permalink to this definition">¶</a></dt>
<emclass="property">class </em><codeclass="sig-prename descclassname">evennia.contrib.game_systems.multidescer.multidescer.</code><codeclass="sig-name descname">CmdMultiDesc</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="o">**</span><spanclass="n">kwargs</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/game_systems/multidescer/multidescer.html#CmdMultiDesc"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.game_systems.multidescer.multidescer.CmdMultiDesc"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">key</code><emclass="property"> = '+desc'</em><aclass="headerlink"href="#evennia.contrib.game_systems.multidescer.multidescer.CmdMultiDesc.key"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">aliases</code><emclass="property"> = ['desc']</em><aclass="headerlink"href="#evennia.contrib.game_systems.multidescer.multidescer.CmdMultiDesc.aliases"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">locks</code><emclass="property"> = 'cmd:all()'</em><aclass="headerlink"href="#evennia.contrib.game_systems.multidescer.multidescer.CmdMultiDesc.locks"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">help_category</code><emclass="property"> = 'general'</em><aclass="headerlink"href="#evennia.contrib.game_systems.multidescer.multidescer.CmdMultiDesc.help_category"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">func</code><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/game_systems/multidescer/multidescer.html#CmdMultiDesc.func"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.game_systems.multidescer.multidescer.CmdMultiDesc.func"title="Permalink to this definition">¶</a></dt>
<dd><p>Implements the multidescer. We will use <strong>db.desc</strong> for the
description in use and <strong>db.multidesc</strong> to store all descriptions.</p>
<codeclass="sig-name descname">lock_storage</code><emclass="property"> = 'cmd:all()'</em><aclass="headerlink"href="#evennia.contrib.game_systems.multidescer.multidescer.CmdMultiDesc.lock_storage"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">search_index_entry</code><emclass="property"> = {'aliases': 'desc', 'category': 'general', 'key': '+desc', 'no_prefix': 'desc desc', 'tags': '', 'text': '\n Manage multiple descriptions\n\n Usage:\n +desc [key] - show current desc desc with <key>\n +desc <key> = <text> - add/replace desc with <key>\n +desc/list - list descriptions (abbreviated)\n +desc/list/full - list descriptions (full texts)\n +desc/edit <key> - add/edit desc <key> in line editor\n +desc/del <key> - delete desc <key>\n +desc/swap <key1>-<key2> - swap positions of <key1> and <key2> in list\n +desc/set <key> [+key+...] - set desc as default or combine multiple descs\n\n Notes:\n When combining multiple descs with +desc/set <key> + <key2> + ...,\n any keys not matching an actual description will be inserted\n as plain text. Use e.g. ansi line break ||/ to add a new\n paragraph and + + or ansi space ||_ to add extra whitespace.\n\n '}</em><aclass="headerlink"href="#evennia.contrib.game_systems.multidescer.multidescer.CmdMultiDesc.search_index_entry"title="Permalink to this definition">¶</a></dt>