<spanid="evennia-contrib-grid-slow-exit-slow-exit"></span><h1>evennia.contrib.grid.slow_exit.slow_exit<aclass="headerlink"href="#module-evennia.contrib.grid.slow_exit.slow_exit"title="Permalink to this headline">¶</a></h1>
<p>Slow Exit typeclass</p>
<p>Contribution - Griatch 2014</p>
<p>This is an example of an Exit-type that delays its traversal. This
simulates slow movement, common in many different types of games. The
contrib also contains two commands, <strong>CmdSetSpeed</strong> and CmdStop for changing
the movement speed and abort an ongoing traversal, respectively.</p>
<sectionid="installation">
<h2>Installation:<aclass="headerlink"href="#installation"title="Permalink to this headline">¶</a></h2>
<p>To try out an exit of this type, you could connect two existing rooms
<emclass="property">class </em><codeclass="sig-prename descclassname">evennia.contrib.grid.slow_exit.slow_exit.</code><codeclass="sig-name descname">SlowExit</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="o">*</span><spanclass="n">args</span></em>, <emclass="sig-param"><spanclass="o">**</span><spanclass="n">kwargs</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/grid/slow_exit/slow_exit.html#SlowExit"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.grid.slow_exit.slow_exit.SlowExit"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">at_traverse</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n">traversing_object</span></em>, <emclass="sig-param"><spanclass="n">target_location</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/grid/slow_exit/slow_exit.html#SlowExit.at_traverse"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.grid.slow_exit.slow_exit.SlowExit.at_traverse"title="Permalink to this definition">¶</a></dt>
<dd><p>Implements the actual traversal, using utils.delay to delay the move_to.</p>
<emclass="property">exception </em><codeclass="sig-name descname">DoesNotExist</code><aclass="headerlink"href="#evennia.contrib.grid.slow_exit.slow_exit.SlowExit.DoesNotExist"title="Permalink to this definition">¶</a></dt>
<emclass="property">exception </em><codeclass="sig-name descname">MultipleObjectsReturned</code><aclass="headerlink"href="#evennia.contrib.grid.slow_exit.slow_exit.SlowExit.MultipleObjectsReturned"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">path</code><emclass="property"> = 'evennia.contrib.grid.slow_exit.slow_exit.SlowExit'</em><aclass="headerlink"href="#evennia.contrib.grid.slow_exit.slow_exit.SlowExit.path"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">typename</code><emclass="property"> = 'SlowExit'</em><aclass="headerlink"href="#evennia.contrib.grid.slow_exit.slow_exit.SlowExit.typename"title="Permalink to this definition">¶</a></dt>
<emclass="property">class </em><codeclass="sig-prename descclassname">evennia.contrib.grid.slow_exit.slow_exit.</code><codeclass="sig-name descname">CmdSetSpeed</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/grid/slow_exit/slow_exit.html#CmdSetSpeed"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.grid.slow_exit.slow_exit.CmdSetSpeed"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">key</code><emclass="property"> = 'setspeed'</em><aclass="headerlink"href="#evennia.contrib.grid.slow_exit.slow_exit.CmdSetSpeed.key"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/grid/slow_exit/slow_exit.html#CmdSetSpeed.func"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.grid.slow_exit.slow_exit.CmdSetSpeed.func"title="Permalink to this definition">¶</a></dt>
<dd><p>Simply sets an Attribute used by the SlowExit above.</p>
<codeclass="sig-name descname">aliases</code><emclass="property"> = []</em><aclass="headerlink"href="#evennia.contrib.grid.slow_exit.slow_exit.CmdSetSpeed.aliases"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">help_category</code><emclass="property"> = 'general'</em><aclass="headerlink"href="#evennia.contrib.grid.slow_exit.slow_exit.CmdSetSpeed.help_category"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">lock_storage</code><emclass="property"> = 'cmd:all();'</em><aclass="headerlink"href="#evennia.contrib.grid.slow_exit.slow_exit.CmdSetSpeed.lock_storage"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">search_index_entry</code><emclass="property"> = {'aliases': '', 'category': 'general', 'key': 'setspeed', 'no_prefix': ' ', 'tags': '', 'text': "\n set your movement speed\n\n Usage:\n setspeed stroll|walk|run|sprint\n\n This will set your movement speed, determining how long time\n it takes to traverse exits. If no speed is set, 'walk' speed\n is assumed.\n "}</em><aclass="headerlink"href="#evennia.contrib.grid.slow_exit.slow_exit.CmdSetSpeed.search_index_entry"title="Permalink to this definition">¶</a></dt>
<emclass="property">class </em><codeclass="sig-prename descclassname">evennia.contrib.grid.slow_exit.slow_exit.</code><codeclass="sig-name descname">CmdStop</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/grid/slow_exit/slow_exit.html#CmdStop"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.grid.slow_exit.slow_exit.CmdStop"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">key</code><emclass="property"> = 'stop'</em><aclass="headerlink"href="#evennia.contrib.grid.slow_exit.slow_exit.CmdStop.key"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/grid/slow_exit/slow_exit.html#CmdStop.func"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.grid.slow_exit.slow_exit.CmdStop.func"title="Permalink to this definition">¶</a></dt>
<dd><p>This is a very simple command, using the
stored deferred from the exit traversal above.</p>
<codeclass="sig-name descname">aliases</code><emclass="property"> = []</em><aclass="headerlink"href="#evennia.contrib.grid.slow_exit.slow_exit.CmdStop.aliases"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">help_category</code><emclass="property"> = 'general'</em><aclass="headerlink"href="#evennia.contrib.grid.slow_exit.slow_exit.CmdStop.help_category"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">lock_storage</code><emclass="property"> = 'cmd:all();'</em><aclass="headerlink"href="#evennia.contrib.grid.slow_exit.slow_exit.CmdStop.lock_storage"title="Permalink to this definition">¶</a></dt>
<emclass="property">class </em><codeclass="sig-prename descclassname">evennia.contrib.grid.slow_exit.slow_exit.</code><codeclass="sig-name descname">SlowExitCmdSet</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n">cmdsetobj</span><spanclass="o">=</span><spanclass="default_value">None</span></em>, <emclass="sig-param"><spanclass="n">key</span><spanclass="o">=</span><spanclass="default_value">None</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/grid/slow_exit/slow_exit.html#SlowExitCmdSet"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.grid.slow_exit.slow_exit.SlowExitCmdSet"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">at_cmdset_creation</code><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/grid/slow_exit/slow_exit.html#SlowExitCmdSet.at_cmdset_creation"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.grid.slow_exit.slow_exit.SlowExitCmdSet.at_cmdset_creation"title="Permalink to this definition">¶</a></dt>
<dd><p>Hook method - this should be overloaded in the inheriting
class, and should take care of populating the cmdset by use of
<codeclass="sig-name descname">path</code><emclass="property"> = 'evennia.contrib.grid.slow_exit.slow_exit.SlowExitCmdSet'</em><aclass="headerlink"href="#evennia.contrib.grid.slow_exit.slow_exit.SlowExitCmdSet.path"title="Permalink to this definition">¶</a></dt>