<spanid="evennia-contrib-tutorial-examples-package"></span><h1>evennia.contrib.tutorial_examples package<aclass="headerlink"href="#module-evennia.contrib.tutorial_examples"title="Permalink to this headline">¶</a></h1>
<divclass="section"id="submodules">
<h2>Submodules<aclass="headerlink"href="#submodules"title="Permalink to this headline">¶</a></h2>
<spanid="evennia-contrib-tutorial-examples-bodyfunctions-module"></span><h2>evennia.contrib.tutorial_examples.bodyfunctions module<aclass="headerlink"href="#module-evennia.contrib.tutorial_examples.bodyfunctions"title="Permalink to this headline">¶</a></h2>
<p>Example script for testing. This adds a simple timer that has your
character make observations and notices at irregular intervals.</p>
<dlclass="simple">
<dt>To test, use</dt><dd><p>@script me = tutorial_examples.bodyfunctions.BodyFunctions</p>
</dd>
</dl>
<p>The script will only send messages to the object it is stored on, so
make sure to put it on yourself or you won’t see any messages!</p>
<emclass="property">class </em><codeclass="sig-prename descclassname">evennia.contrib.tutorial_examples.bodyfunctions.</code><codeclass="sig-name descname">BodyFunctions</code><spanclass="sig-paren">(</span><emclass="sig-param">*args</em>, <emclass="sig-param">**kwargs</em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorial_examples/bodyfunctions.html#BodyFunctions"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorial_examples.bodyfunctions.BodyFunctions"title="Permalink to this definition">¶</a></dt>
<emclass="property">exception </em><codeclass="sig-name descname">DoesNotExist</code><aclass="headerlink"href="#evennia.contrib.tutorial_examples.bodyfunctions.BodyFunctions.DoesNotExist"title="Permalink to this definition">¶</a></dt>
<emclass="property">exception </em><codeclass="sig-name descname">MultipleObjectsReturned</code><aclass="headerlink"href="#evennia.contrib.tutorial_examples.bodyfunctions.BodyFunctions.MultipleObjectsReturned"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">_meta</code><emclass="property"> = <Options for BodyFunctions></em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.bodyfunctions.BodyFunctions._meta"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">at_repeat</code><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorial_examples/bodyfunctions.html#BodyFunctions.at_repeat"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorial_examples.bodyfunctions.BodyFunctions.at_repeat"title="Permalink to this definition">¶</a></dt>
<dd><p>This gets called every self.interval seconds. We make
a random check here so as to only return 33% of the time.</p>
<codeclass="sig-name descname">at_script_creation</code><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorial_examples/bodyfunctions.html#BodyFunctions.at_script_creation"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorial_examples.bodyfunctions.BodyFunctions.at_script_creation"title="Permalink to this definition">¶</a></dt>
<dd><p>Only called once, when script is first created.</p>
<codeclass="sig-name descname">path</code><emclass="property"> = 'evennia.contrib.tutorial_examples.bodyfunctions.BodyFunctions'</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.bodyfunctions.BodyFunctions.path"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">send_random_message</code><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorial_examples/bodyfunctions.html#BodyFunctions.send_random_message"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorial_examples.bodyfunctions.BodyFunctions.send_random_message"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">typename</code><emclass="property"> = 'BodyFunctions'</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.bodyfunctions.BodyFunctions.typename"title="Permalink to this definition">¶</a></dt>
<spanid="evennia-contrib-tutorial-examples-cmdset-red-button-module"></span><h2>evennia.contrib.tutorial_examples.cmdset_red_button module<aclass="headerlink"href="#module-evennia.contrib.tutorial_examples.cmdset_red_button"title="Permalink to this headline">¶</a></h2>
<p>This defines the cmdset for the red_button. Here we have defined
the commands and the cmdset in the same module, but if you
have many different commands to merge it is often better
to define the cmdset separately, picking and choosing from
among the available commands as to what should be included in the
cmdset - this way you can often re-use the commands too.</p>
<emclass="property">class </em><codeclass="sig-prename descclassname">evennia.contrib.tutorial_examples.cmdset_red_button.</code><codeclass="sig-name descname">BlindCmdSet</code><spanclass="sig-paren">(</span><emclass="sig-param">cmdsetobj=None</em>, <emclass="sig-param">key=None</em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorial_examples/cmdset_red_button.html#BlindCmdSet"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.BlindCmdSet"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/tutorial_examples/cmdset_red_button.html#BlindCmdSet.at_cmdset_creation"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.BlindCmdSet.at_cmdset_creation"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">key</code><emclass="property"> = 'BlindCmdSet'</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.BlindCmdSet.key"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">mergetype</code><emclass="property"> = 'Replace'</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.BlindCmdSet.mergetype"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">no_exits</code><emclass="property"> = True</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.BlindCmdSet.no_exits"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">no_objs</code><emclass="property"> = True</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.BlindCmdSet.no_objs"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">path</code><emclass="property"> = 'evennia.contrib.tutorial_examples.cmdset_red_button.BlindCmdSet'</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.BlindCmdSet.path"title="Permalink to this definition">¶</a></dt>
<emclass="property">class </em><codeclass="sig-prename descclassname">evennia.contrib.tutorial_examples.cmdset_red_button.</code><codeclass="sig-name descname">CmdBlindHelp</code><spanclass="sig-paren">(</span><emclass="sig-param">**kwargs</em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorial_examples/cmdset_red_button.html#CmdBlindHelp"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.CmdBlindHelp"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">_keyaliases</code><emclass="property"> = ('help', 'h')</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.CmdBlindHelp._keyaliases"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">_matchset</code><emclass="property"> = {'h', 'help'}</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.CmdBlindHelp._matchset"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">aliases</code><emclass="property"> = ['h']</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.CmdBlindHelp.aliases"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/tutorial_examples/cmdset_red_button.html#CmdBlindHelp.func"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.CmdBlindHelp.func"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">help_category</code><emclass="property"> = 'general'</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.CmdBlindHelp.help_category"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">key</code><emclass="property"> = 'help'</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.CmdBlindHelp.key"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">lock_storage</code><emclass="property"> = 'cmd:all()'</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.CmdBlindHelp.lock_storage"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">locks</code><emclass="property"> = 'cmd:all()'</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.CmdBlindHelp.locks"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">search_index_entry</code><emclass="property"> = {'aliases': 'h', 'category': 'general', 'key': 'help', 'tags': '', 'text': '\n Help function while in the blinded state\n\n Usage:\n help\n\n '}</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.CmdBlindHelp.search_index_entry"title="Permalink to this definition">¶</a></dt>
<emclass="property">class </em><codeclass="sig-prename descclassname">evennia.contrib.tutorial_examples.cmdset_red_button.</code><codeclass="sig-name descname">CmdBlindLook</code><spanclass="sig-paren">(</span><emclass="sig-param">**kwargs</em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorial_examples/cmdset_red_button.html#CmdBlindLook"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.CmdBlindLook"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/tutorial_examples/cmdset_red_button.html#CmdBlindLook.func"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.CmdBlindLook.func"title="Permalink to this definition">¶</a></dt>
<dd><p>This replaces all the senses when blinded.</p>
<codeclass="sig-name descname">help_category</code><emclass="property"> = 'general'</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.CmdBlindLook.help_category"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">key</code><emclass="property"> = 'look'</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.CmdBlindLook.key"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">lock_storage</code><emclass="property"> = 'cmd:all()'</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.CmdBlindLook.lock_storage"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">locks</code><emclass="property"> = 'cmd:all()'</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.CmdBlindLook.locks"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">search_index_entry</code><emclass="property"> = {'aliases': 'ex examine listen l get feel', 'category': 'general', 'key': 'look', 'tags': '', 'text': "\n Looking around in darkness\n\n Usage:\n look <obj>\n\n ... not that there's much to see in the dark.\n\n "}</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.CmdBlindLook.search_index_entry"title="Permalink to this definition">¶</a></dt>
<emclass="property">class </em><codeclass="sig-prename descclassname">evennia.contrib.tutorial_examples.cmdset_red_button.</code><codeclass="sig-name descname">CmdCloseLid</code><spanclass="sig-paren">(</span><emclass="sig-param">**kwargs</em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorial_examples/cmdset_red_button.html#CmdCloseLid"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.CmdCloseLid"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">_keyaliases</code><emclass="property"> = ('close', 'close lid')</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.CmdCloseLid._keyaliases"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">_matchset</code><emclass="property"> = {'close', 'close lid'}</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.CmdCloseLid._matchset"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">aliases</code><emclass="property"> = ['close']</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.CmdCloseLid.aliases"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/tutorial_examples/cmdset_red_button.html#CmdCloseLid.func"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.CmdCloseLid.func"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">help_category</code><emclass="property"> = 'general'</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.CmdCloseLid.help_category"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">key</code><emclass="property"> = 'close lid'</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.CmdCloseLid.key"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">lock_storage</code><emclass="property"> = 'cmd:all()'</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.CmdCloseLid.lock_storage"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">locks</code><emclass="property"> = 'cmd:all()'</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.CmdCloseLid.locks"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">search_index_entry</code><emclass="property"> = {'aliases': 'close', 'category': 'general', 'key': 'close lid', 'tags': '', 'text': '\n close the lid\n\n Usage:\n close lid\n\n Closes the lid of the red button.\n '}</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.CmdCloseLid.search_index_entry"title="Permalink to this definition">¶</a></dt>
<emclass="property">class </em><codeclass="sig-prename descclassname">evennia.contrib.tutorial_examples.cmdset_red_button.</code><codeclass="sig-name descname">CmdNudge</code><spanclass="sig-paren">(</span><emclass="sig-param">**kwargs</em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorial_examples/cmdset_red_button.html#CmdNudge"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.CmdNudge"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">_keyaliases</code><emclass="property"> = ('nudge lid', 'nudge')</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.CmdNudge._keyaliases"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">_matchset</code><emclass="property"> = {'nudge', 'nudge lid'}</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.CmdNudge._matchset"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">aliases</code><emclass="property"> = ['nudge']</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.CmdNudge.aliases"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/tutorial_examples/cmdset_red_button.html#CmdNudge.func"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.CmdNudge.func"title="Permalink to this definition">¶</a></dt>
<dd><p>nudge the lid. Random chance of success to open it.</p>
<codeclass="sig-name descname">help_category</code><emclass="property"> = 'general'</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.CmdNudge.help_category"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">key</code><emclass="property"> = 'nudge lid'</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.CmdNudge.key"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">lock_storage</code><emclass="property"> = 'cmd:all()'</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.CmdNudge.lock_storage"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">locks</code><emclass="property"> = 'cmd:all()'</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.CmdNudge.locks"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">search_index_entry</code><emclass="property"> = {'aliases': 'nudge', 'category': 'general', 'key': 'nudge lid', 'tags': '', 'text': "\n Try to nudge the button's lid\n\n Usage:\n nudge lid\n\n This command will have you try to\n push the lid of the button away.\n "}</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.CmdNudge.search_index_entry"title="Permalink to this definition">¶</a></dt>
<emclass="property">class </em><codeclass="sig-prename descclassname">evennia.contrib.tutorial_examples.cmdset_red_button.</code><codeclass="sig-name descname">CmdOpenLid</code><spanclass="sig-paren">(</span><emclass="sig-param">**kwargs</em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorial_examples/cmdset_red_button.html#CmdOpenLid"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.CmdOpenLid"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">aliases</code><emclass="property"> = ['open button', 'open']</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.CmdOpenLid.aliases"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/tutorial_examples/cmdset_red_button.html#CmdOpenLid.func"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.CmdOpenLid.func"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">help_category</code><emclass="property"> = 'general'</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.CmdOpenLid.help_category"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">key</code><emclass="property"> = 'open lid'</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.CmdOpenLid.key"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">lock_storage</code><emclass="property"> = 'cmd:all()'</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.CmdOpenLid.lock_storage"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">locks</code><emclass="property"> = 'cmd:all()'</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.CmdOpenLid.locks"title="Permalink to this definition">¶</a></dt>
<emclass="property">class </em><codeclass="sig-prename descclassname">evennia.contrib.tutorial_examples.cmdset_red_button.</code><codeclass="sig-name descname">CmdPush</code><spanclass="sig-paren">(</span><emclass="sig-param">**kwargs</em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorial_examples/cmdset_red_button.html#CmdPush"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.CmdPush"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">aliases</code><emclass="property"> = ['press button', 'press', 'push']</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.CmdPush.aliases"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/tutorial_examples/cmdset_red_button.html#CmdPush.func"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.CmdPush.func"title="Permalink to this definition">¶</a></dt>
<dd><p>Note that we choose to implement this with checking for
if the lid is open/closed. This is because this command
is likely to be tried regardless of the state of the lid.</p>
<p>An alternative would be to make two versions of this command
and tuck them into the cmdset linked to the Open and Closed
<codeclass="sig-name descname">help_category</code><emclass="property"> = 'general'</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.CmdPush.help_category"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">key</code><emclass="property"> = 'push button'</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.CmdPush.key"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">lock_storage</code><emclass="property"> = 'cmd:all()'</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.CmdPush.lock_storage"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">locks</code><emclass="property"> = 'cmd:all()'</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.CmdPush.locks"title="Permalink to this definition">¶</a></dt>
<emclass="property">class </em><codeclass="sig-prename descclassname">evennia.contrib.tutorial_examples.cmdset_red_button.</code><codeclass="sig-name descname">CmdSmashGlass</code><spanclass="sig-paren">(</span><emclass="sig-param">**kwargs</em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorial_examples/cmdset_red_button.html#CmdSmashGlass"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.CmdSmashGlass"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/tutorial_examples/cmdset_red_button.html#CmdSmashGlass.func"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.CmdSmashGlass.func"title="Permalink to this definition">¶</a></dt>
<dd><p>The lid won’t open, but there is a small chance
<codeclass="sig-name descname">help_category</code><emclass="property"> = 'general'</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.CmdSmashGlass.help_category"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">key</code><emclass="property"> = 'smash glass'</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.CmdSmashGlass.key"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">lock_storage</code><emclass="property"> = 'cmd:all()'</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.CmdSmashGlass.lock_storage"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">locks</code><emclass="property"> = 'cmd:all()'</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.CmdSmashGlass.locks"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">search_index_entry</code><emclass="property"> = {'aliases': 'break lid smash smash lid', 'category': 'general', 'key': 'smash glass', 'tags': '', 'text': '\n smash glass\n\n Usage:\n smash glass\n\n Try to smash the glass of the button.\n '}</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.CmdSmashGlass.search_index_entry"title="Permalink to this definition">¶</a></dt>
<emclass="property">class </em><codeclass="sig-prename descclassname">evennia.contrib.tutorial_examples.cmdset_red_button.</code><codeclass="sig-name descname">DefaultCmdSet</code><spanclass="sig-paren">(</span><emclass="sig-param">cmdsetobj=None</em>, <emclass="sig-param">key=None</em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorial_examples/cmdset_red_button.html#DefaultCmdSet"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.DefaultCmdSet"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/tutorial_examples/cmdset_red_button.html#DefaultCmdSet.at_cmdset_creation"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.DefaultCmdSet.at_cmdset_creation"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">key</code><emclass="property"> = 'RedButtonDefault'</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.DefaultCmdSet.key"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">mergetype</code><emclass="property"> = 'Union'</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.DefaultCmdSet.mergetype"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">path</code><emclass="property"> = 'evennia.contrib.tutorial_examples.cmdset_red_button.DefaultCmdSet'</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.DefaultCmdSet.path"title="Permalink to this definition">¶</a></dt>
<emclass="property">class </em><codeclass="sig-prename descclassname">evennia.contrib.tutorial_examples.cmdset_red_button.</code><codeclass="sig-name descname">LidClosedCmdSet</code><spanclass="sig-paren">(</span><emclass="sig-param">cmdsetobj=None</em>, <emclass="sig-param">key=None</em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorial_examples/cmdset_red_button.html#LidClosedCmdSet"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.LidClosedCmdSet"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/tutorial_examples/cmdset_red_button.html#LidClosedCmdSet.at_cmdset_creation"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.LidClosedCmdSet.at_cmdset_creation"title="Permalink to this definition">¶</a></dt>
<dd><p>Populates the cmdset when it is instantiated.</p>
<codeclass="sig-name descname">key</code><emclass="property"> = 'LidClosedCmdSet'</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.LidClosedCmdSet.key"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">key_mergetype</code><emclass="property"> = {'LidOpenCmdSet': 'Replace'}</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.LidClosedCmdSet.key_mergetype"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">path</code><emclass="property"> = 'evennia.contrib.tutorial_examples.cmdset_red_button.LidClosedCmdSet'</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.LidClosedCmdSet.path"title="Permalink to this definition">¶</a></dt>
<emclass="property">class </em><codeclass="sig-prename descclassname">evennia.contrib.tutorial_examples.cmdset_red_button.</code><codeclass="sig-name descname">LidOpenCmdSet</code><spanclass="sig-paren">(</span><emclass="sig-param">cmdsetobj=None</em>, <emclass="sig-param">key=None</em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorial_examples/cmdset_red_button.html#LidOpenCmdSet"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.LidOpenCmdSet"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/tutorial_examples/cmdset_red_button.html#LidOpenCmdSet.at_cmdset_creation"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.LidOpenCmdSet.at_cmdset_creation"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">key</code><emclass="property"> = 'LidOpenCmdSet'</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.LidOpenCmdSet.key"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">key_mergetype</code><emclass="property"> = {'LidClosedCmdSet': 'Replace'}</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.LidOpenCmdSet.key_mergetype"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">path</code><emclass="property"> = 'evennia.contrib.tutorial_examples.cmdset_red_button.LidOpenCmdSet'</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.cmdset_red_button.LidOpenCmdSet.path"title="Permalink to this definition">¶</a></dt>
<h2>evennia.contrib.tutorial_examples.example_batch_code module<aclass="headerlink"href="#evennia-contrib-tutorial-examples-example-batch-code-module"title="Permalink to this headline">¶</a></h2>
<spanid="evennia-contrib-tutorial-examples-red-button-module"></span><h2>evennia.contrib.tutorial_examples.red_button module<aclass="headerlink"href="#module-evennia.contrib.tutorial_examples.red_button"title="Permalink to this headline">¶</a></h2>
<p>This is a more advanced example object. It combines functions from
script.examples as well as commands.examples to make an interactive
<emclass="property">class </em><codeclass="sig-prename descclassname">evennia.contrib.tutorial_examples.red_button.</code><codeclass="sig-name descname">RedButton</code><spanclass="sig-paren">(</span><emclass="sig-param">*args</em>, <emclass="sig-param">**kwargs</em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorial_examples/red_button.html#RedButton"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorial_examples.red_button.RedButton"title="Permalink to this definition">¶</a></dt>
<emclass="property">exception </em><codeclass="sig-name descname">DoesNotExist</code><aclass="headerlink"href="#evennia.contrib.tutorial_examples.red_button.RedButton.DoesNotExist"title="Permalink to this definition">¶</a></dt>
<emclass="property">exception </em><codeclass="sig-name descname">MultipleObjectsReturned</code><aclass="headerlink"href="#evennia.contrib.tutorial_examples.red_button.RedButton.MultipleObjectsReturned"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">_meta</code><emclass="property"> = <Options for RedButton></em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.red_button.RedButton._meta"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">at_object_creation</code><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorial_examples/red_button.html#RedButton.at_object_creation"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorial_examples.red_button.RedButton.at_object_creation"title="Permalink to this definition">¶</a></dt>
<dd><p>This function is called when object is created. Use this
<codeclass="sig-name descname">blink</code><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorial_examples/red_button.html#RedButton.blink"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorial_examples.red_button.RedButton.blink"title="Permalink to this definition">¶</a></dt>
<dd><p>The script system will regularly call this
function to make the button blink. Now and then
it won’t blink at all though, to add some randomness
<codeclass="sig-name descname">break_lamp</code><spanclass="sig-paren">(</span><emclass="sig-param">feedback=True</em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorial_examples/red_button.html#RedButton.break_lamp"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorial_examples.red_button.RedButton.break_lamp"title="Permalink to this definition">¶</a></dt>
<dd><p>Breaks the lamp in the button, stopping it from blinking.</p>
<dlclass="field-list simple">
<dtclass="field-odd">Parameters</dt>
<ddclass="field-odd"><p><strong>feedback</strong> (<em>bool</em>) – Show a message about breaking the lamp.</p>
<codeclass="sig-name descname">close_lid</code><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorial_examples/red_button.html#RedButton.close_lid"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorial_examples.red_button.RedButton.close_lid"title="Permalink to this definition">¶</a></dt>
<dd><p>Close the glass lid. This validates all scripts on the button,
which means that scripts only being valid when the lid is open
<codeclass="sig-name descname">open_lid</code><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorial_examples/red_button.html#RedButton.open_lid"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorial_examples.red_button.RedButton.open_lid"title="Permalink to this definition">¶</a></dt>
<dd><p>Opens the glass lid and start the timer so it will soon close
<codeclass="sig-name descname">path</code><emclass="property"> = 'evennia.contrib.tutorial_examples.red_button.RedButton'</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.red_button.RedButton.path"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">press_button</code><spanclass="sig-paren">(</span><emclass="sig-param">pobject</em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorial_examples/red_button.html#RedButton.press_button"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorial_examples.red_button.RedButton.press_button"title="Permalink to this definition">¶</a></dt>
<dd><p>Someone was foolish enough to press the button!</p>
<dlclass="field-list simple">
<dtclass="field-odd">Parameters</dt>
<ddclass="field-odd"><p><strong>pobject</strong> (<em>Object</em>) – The person pressing the button</p>
<codeclass="sig-name descname">typename</code><emclass="property"> = 'RedButton'</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.red_button.RedButton.typename"title="Permalink to this definition">¶</a></dt>
<spanid="evennia-contrib-tutorial-examples-red-button-scripts-module"></span><h2>evennia.contrib.tutorial_examples.red_button_scripts module<aclass="headerlink"href="#module-evennia.contrib.tutorial_examples.red_button_scripts"title="Permalink to this headline">¶</a></h2>
<p>Example of scripts.</p>
<p>These are scripts intended for a particular object - the
red_button object type in contrib/examples. A few variations
<emclass="property">class </em><codeclass="sig-prename descclassname">evennia.contrib.tutorial_examples.red_button_scripts.</code><codeclass="sig-name descname">BlindedState</code><spanclass="sig-paren">(</span><emclass="sig-param">*args</em>, <emclass="sig-param">**kwargs</em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorial_examples/red_button_scripts.html#BlindedState"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorial_examples.red_button_scripts.BlindedState"title="Permalink to this definition">¶</a></dt>
<emclass="property">exception </em><codeclass="sig-name descname">DoesNotExist</code><aclass="headerlink"href="#evennia.contrib.tutorial_examples.red_button_scripts.BlindedState.DoesNotExist"title="Permalink to this definition">¶</a></dt>
<emclass="property">exception </em><codeclass="sig-name descname">MultipleObjectsReturned</code><aclass="headerlink"href="#evennia.contrib.tutorial_examples.red_button_scripts.BlindedState.MultipleObjectsReturned"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">_meta</code><emclass="property"> = <Options for BlindedState></em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.red_button_scripts.BlindedState._meta"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">at_script_creation</code><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorial_examples/red_button_scripts.html#BlindedState.at_script_creation"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorial_examples.red_button_scripts.BlindedState.at_script_creation"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">at_start</code><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorial_examples/red_button_scripts.html#BlindedState.at_start"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorial_examples.red_button_scripts.BlindedState.at_start"title="Permalink to this definition">¶</a></dt>
<dd><p>We want to add the cmdset to the linked object.</p>
<p>Note that the RedButtonBlind cmdset is defined to completly
replace the other cmdsets on the stack while it is active
(this means that while blinded, only operations in this cmdset
will be possible for the account to perform). It is however
not persistent, so should there be a bug in it, we just need
to restart the server to clear out of it during development.</p>
<codeclass="sig-name descname">at_stop</code><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorial_examples/red_button_scripts.html#BlindedState.at_stop"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorial_examples.red_button_scripts.BlindedState.at_stop"title="Permalink to this definition">¶</a></dt>
<dd><p>It’s important that we clear out that blinded cmdset
<codeclass="sig-name descname">path</code><emclass="property"> = 'evennia.contrib.tutorial_examples.red_button_scripts.BlindedState'</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.red_button_scripts.BlindedState.path"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">typename</code><emclass="property"> = 'BlindedState'</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.red_button_scripts.BlindedState.typename"title="Permalink to this definition">¶</a></dt>
<emclass="property">class </em><codeclass="sig-prename descclassname">evennia.contrib.tutorial_examples.red_button_scripts.</code><codeclass="sig-name descname">BlinkButtonEvent</code><spanclass="sig-paren">(</span><emclass="sig-param">*args</em>, <emclass="sig-param">**kwargs</em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorial_examples/red_button_scripts.html#BlinkButtonEvent"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorial_examples.red_button_scripts.BlinkButtonEvent"title="Permalink to this definition">¶</a></dt>
<emclass="property">exception </em><codeclass="sig-name descname">DoesNotExist</code><aclass="headerlink"href="#evennia.contrib.tutorial_examples.red_button_scripts.BlinkButtonEvent.DoesNotExist"title="Permalink to this definition">¶</a></dt>
<emclass="property">exception </em><codeclass="sig-name descname">MultipleObjectsReturned</code><aclass="headerlink"href="#evennia.contrib.tutorial_examples.red_button_scripts.BlinkButtonEvent.MultipleObjectsReturned"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">_meta</code><emclass="property"> = <Options for BlinkButtonEvent></em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.red_button_scripts.BlinkButtonEvent._meta"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">at_repeat</code><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorial_examples/red_button_scripts.html#BlinkButtonEvent.at_repeat"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorial_examples.red_button_scripts.BlinkButtonEvent.at_repeat"title="Permalink to this definition">¶</a></dt>
<dd><p>Called every self.interval seconds. Makes the lamp in
<codeclass="sig-name descname">at_script_creation</code><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorial_examples/red_button_scripts.html#BlinkButtonEvent.at_script_creation"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorial_examples.red_button_scripts.BlinkButtonEvent.at_script_creation"title="Permalink to this definition">¶</a></dt>
<dd><p>Sets things up. We want the button’s lamp to blink at
<codeclass="sig-name descname">is_valid</code><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorial_examples/red_button_scripts.html#BlinkButtonEvent.is_valid"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorial_examples.red_button_scripts.BlinkButtonEvent.is_valid"title="Permalink to this definition">¶</a></dt>
<dd><p>Button will keep blinking unless it is broken.</p>
<codeclass="sig-name descname">path</code><emclass="property"> = 'evennia.contrib.tutorial_examples.red_button_scripts.BlinkButtonEvent'</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.red_button_scripts.BlinkButtonEvent.path"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">typename</code><emclass="property"> = 'BlinkButtonEvent'</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.red_button_scripts.BlinkButtonEvent.typename"title="Permalink to this definition">¶</a></dt>
<emclass="property">class </em><codeclass="sig-prename descclassname">evennia.contrib.tutorial_examples.red_button_scripts.</code><codeclass="sig-name descname">CloseLidEvent</code><spanclass="sig-paren">(</span><emclass="sig-param">*args</em>, <emclass="sig-param">**kwargs</em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorial_examples/red_button_scripts.html#CloseLidEvent"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorial_examples.red_button_scripts.CloseLidEvent"title="Permalink to this definition">¶</a></dt>
<emclass="property">exception </em><codeclass="sig-name descname">DoesNotExist</code><aclass="headerlink"href="#evennia.contrib.tutorial_examples.red_button_scripts.CloseLidEvent.DoesNotExist"title="Permalink to this definition">¶</a></dt>
<emclass="property">exception </em><codeclass="sig-name descname">MultipleObjectsReturned</code><aclass="headerlink"href="#evennia.contrib.tutorial_examples.red_button_scripts.CloseLidEvent.MultipleObjectsReturned"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">_meta</code><emclass="property"> = <Options for CloseLidEvent></em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.red_button_scripts.CloseLidEvent._meta"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">at_repeat</code><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorial_examples/red_button_scripts.html#CloseLidEvent.at_repeat"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorial_examples.red_button_scripts.CloseLidEvent.at_repeat"title="Permalink to this definition">¶</a></dt>
<dd><p>Called after self.interval seconds. It closes the lid. Before this method is
called, self.is_valid() is automatically checked, so there is no need to
<codeclass="sig-name descname">at_script_creation</code><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorial_examples/red_button_scripts.html#CloseLidEvent.at_script_creation"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorial_examples.red_button_scripts.CloseLidEvent.at_script_creation"title="Permalink to this definition">¶</a></dt>
<dd><p>Called when script object is first created. Sets things up.
We want to have a lid on the button that the user can pull
aside in order to make the button ‘pressable’. But after a set
time that lid should auto-close again, making the button safe
<codeclass="sig-name descname">is_valid</code><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorial_examples/red_button_scripts.html#CloseLidEvent.is_valid"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorial_examples.red_button_scripts.CloseLidEvent.is_valid"title="Permalink to this definition">¶</a></dt>
<dd><p>This script can only operate if the lid is open; if it
is already closed, the script is clearly invalid.</p>
<p>Note that we are here relying on an self.obj being
defined (and being a RedButton object) - this we should be able to
expect since this type of script is always tied to one individual
red button object and not having it would be an error.</p>
<codeclass="sig-name descname">path</code><emclass="property"> = 'evennia.contrib.tutorial_examples.red_button_scripts.CloseLidEvent'</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.red_button_scripts.CloseLidEvent.path"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">typename</code><emclass="property"> = 'CloseLidEvent'</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.red_button_scripts.CloseLidEvent.typename"title="Permalink to this definition">¶</a></dt>
<emclass="property">class </em><codeclass="sig-prename descclassname">evennia.contrib.tutorial_examples.red_button_scripts.</code><codeclass="sig-name descname">ClosedLidState</code><spanclass="sig-paren">(</span><emclass="sig-param">*args</em>, <emclass="sig-param">**kwargs</em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorial_examples/red_button_scripts.html#ClosedLidState"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorial_examples.red_button_scripts.ClosedLidState"title="Permalink to this definition">¶</a></dt>
<emclass="property">exception </em><codeclass="sig-name descname">DoesNotExist</code><aclass="headerlink"href="#evennia.contrib.tutorial_examples.red_button_scripts.ClosedLidState.DoesNotExist"title="Permalink to this definition">¶</a></dt>
<emclass="property">exception </em><codeclass="sig-name descname">MultipleObjectsReturned</code><aclass="headerlink"href="#evennia.contrib.tutorial_examples.red_button_scripts.ClosedLidState.MultipleObjectsReturned"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">_meta</code><emclass="property"> = <Options for ClosedLidState></em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.red_button_scripts.ClosedLidState._meta"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">at_script_creation</code><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorial_examples/red_button_scripts.html#ClosedLidState.at_script_creation"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorial_examples.red_button_scripts.ClosedLidState.at_script_creation"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">at_start</code><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorial_examples/red_button_scripts.html#ClosedLidState.at_start"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorial_examples.red_button_scripts.ClosedLidState.at_start"title="Permalink to this definition">¶</a></dt>
<dd><p>This is called once every server restart, so we want to add the
(memory-resident) cmdset to the object here. is_valid is automatically
checked so we don’t need to worry about adding the script to an
<codeclass="sig-name descname">at_stop</code><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorial_examples/red_button_scripts.html#ClosedLidState.at_stop"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorial_examples.red_button_scripts.ClosedLidState.at_stop"title="Permalink to this definition">¶</a></dt>
<dd><p>When the script stops we must make sure to clean up after us.</p>
<codeclass="sig-name descname">is_valid</code><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorial_examples/red_button_scripts.html#ClosedLidState.is_valid"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorial_examples.red_button_scripts.ClosedLidState.is_valid"title="Permalink to this definition">¶</a></dt>
<dd><p>The script is only valid while the lid is closed.
self.obj is the red_button on which this script is defined.</p>
<codeclass="sig-name descname">path</code><emclass="property"> = 'evennia.contrib.tutorial_examples.red_button_scripts.ClosedLidState'</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.red_button_scripts.ClosedLidState.path"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">typename</code><emclass="property"> = 'ClosedLidState'</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.red_button_scripts.ClosedLidState.typename"title="Permalink to this definition">¶</a></dt>
<emclass="property">class </em><codeclass="sig-prename descclassname">evennia.contrib.tutorial_examples.red_button_scripts.</code><codeclass="sig-name descname">DeactivateButtonEvent</code><spanclass="sig-paren">(</span><emclass="sig-param">*args</em>, <emclass="sig-param">**kwargs</em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorial_examples/red_button_scripts.html#DeactivateButtonEvent"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorial_examples.red_button_scripts.DeactivateButtonEvent"title="Permalink to this definition">¶</a></dt>
<emclass="property">exception </em><codeclass="sig-name descname">DoesNotExist</code><aclass="headerlink"href="#evennia.contrib.tutorial_examples.red_button_scripts.DeactivateButtonEvent.DoesNotExist"title="Permalink to this definition">¶</a></dt>
<emclass="property">exception </em><codeclass="sig-name descname">MultipleObjectsReturned</code><aclass="headerlink"href="#evennia.contrib.tutorial_examples.red_button_scripts.DeactivateButtonEvent.MultipleObjectsReturned"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">_meta</code><emclass="property"> = <Options for DeactivateButtonEvent></em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.red_button_scripts.DeactivateButtonEvent._meta"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">at_repeat</code><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorial_examples/red_button_scripts.html#DeactivateButtonEvent.at_repeat"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorial_examples.red_button_scripts.DeactivateButtonEvent.at_repeat"title="Permalink to this definition">¶</a></dt>
<dd><p>When this is called, reset the functionality of the button.</p>
<codeclass="sig-name descname">at_script_creation</code><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorial_examples/red_button_scripts.html#DeactivateButtonEvent.at_script_creation"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorial_examples.red_button_scripts.DeactivateButtonEvent.at_script_creation"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">at_start</code><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorial_examples/red_button_scripts.html#DeactivateButtonEvent.at_start"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorial_examples.red_button_scripts.DeactivateButtonEvent.at_start"title="Permalink to this definition">¶</a></dt>
<dd><p>Deactivate the button. Observe that this method is always
called directly, regardless of the value of self.start_delay
(that just controls when at_repeat() is called)</p>
<codeclass="sig-name descname">path</code><emclass="property"> = 'evennia.contrib.tutorial_examples.red_button_scripts.DeactivateButtonEvent'</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.red_button_scripts.DeactivateButtonEvent.path"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">typename</code><emclass="property"> = 'DeactivateButtonEvent'</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.red_button_scripts.DeactivateButtonEvent.typename"title="Permalink to this definition">¶</a></dt>
<emclass="property">class </em><codeclass="sig-prename descclassname">evennia.contrib.tutorial_examples.red_button_scripts.</code><codeclass="sig-name descname">OpenLidState</code><spanclass="sig-paren">(</span><emclass="sig-param">*args</em>, <emclass="sig-param">**kwargs</em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorial_examples/red_button_scripts.html#OpenLidState"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorial_examples.red_button_scripts.OpenLidState"title="Permalink to this definition">¶</a></dt>
<emclass="property">exception </em><codeclass="sig-name descname">DoesNotExist</code><aclass="headerlink"href="#evennia.contrib.tutorial_examples.red_button_scripts.OpenLidState.DoesNotExist"title="Permalink to this definition">¶</a></dt>
<emclass="property">exception </em><codeclass="sig-name descname">MultipleObjectsReturned</code><aclass="headerlink"href="#evennia.contrib.tutorial_examples.red_button_scripts.OpenLidState.MultipleObjectsReturned"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">_meta</code><emclass="property"> = <Options for OpenLidState></em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.red_button_scripts.OpenLidState._meta"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">at_script_creation</code><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorial_examples/red_button_scripts.html#OpenLidState.at_script_creation"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorial_examples.red_button_scripts.OpenLidState.at_script_creation"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">at_start</code><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorial_examples/red_button_scripts.html#OpenLidState.at_start"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorial_examples.red_button_scripts.OpenLidState.at_start"title="Permalink to this definition">¶</a></dt>
<dd><p>This is called once every server restart, so we want to add the
(memory-resident) cmdset to the object here. is_valid is
automatically checked, so we don’t need to worry about
<codeclass="sig-name descname">at_stop</code><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorial_examples/red_button_scripts.html#OpenLidState.at_stop"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorial_examples.red_button_scripts.OpenLidState.at_stop"title="Permalink to this definition">¶</a></dt>
<dd><p>When the script stops (like if the lid is closed again)
<codeclass="sig-name descname">is_valid</code><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorial_examples/red_button_scripts.html#OpenLidState.is_valid"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorial_examples.red_button_scripts.OpenLidState.is_valid"title="Permalink to this definition">¶</a></dt>
<dd><p>The script is only valid while the lid is open.
self.obj is the red_button on which this script is defined.</p>
<codeclass="sig-name descname">path</code><emclass="property"> = 'evennia.contrib.tutorial_examples.red_button_scripts.OpenLidState'</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.red_button_scripts.OpenLidState.path"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">typename</code><emclass="property"> = 'OpenLidState'</em><aclass="headerlink"href="#evennia.contrib.tutorial_examples.red_button_scripts.OpenLidState.typename"title="Permalink to this definition">¶</a></dt>
<spanid="evennia-contrib-tutorial-examples-tests-module"></span><h2>evennia.contrib.tutorial_examples.tests module<aclass="headerlink"href="#module-evennia.contrib.tutorial_examples.tests"title="Permalink to this headline">¶</a></h2>
<emclass="property">class </em><codeclass="sig-prename descclassname">evennia.contrib.tutorial_examples.tests.</code><codeclass="sig-name descname">TestBodyFunctions</code><spanclass="sig-paren">(</span><emclass="sig-param">methodName='runTest'</em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorial_examples/tests.html#TestBodyFunctions"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorial_examples.tests.TestBodyFunctions"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">script_typeclass</code><aclass="headerlink"href="#evennia.contrib.tutorial_examples.tests.TestBodyFunctions.script_typeclass"title="Permalink to this definition">¶</a></dt>
<dd><p>alias of <aclass="reference internal"href="#evennia.contrib.tutorial_examples.bodyfunctions.BodyFunctions"title="evennia.contrib.tutorial_examples.bodyfunctions.BodyFunctions"><codeclass="xref py py-class docutils literal notranslate"><spanclass="pre">evennia.contrib.tutorial_examples.bodyfunctions.BodyFunctions</span></code></a></p>
<codeclass="sig-name descname">setUp</code><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorial_examples/tests.html#TestBodyFunctions.setUp"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorial_examples.tests.TestBodyFunctions.setUp"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">tearDown</code><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorial_examples/tests.html#TestBodyFunctions.tearDown"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorial_examples.tests.TestBodyFunctions.tearDown"title="Permalink to this definition">¶</a></dt>
<dd><p>Hook method for deconstructing the test fixture after testing it.</p>
<codeclass="sig-name descname">test_at_repeat</code><spanclass="sig-paren">(</span><emclass="sig-param">mock_random</em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorial_examples/tests.html#TestBodyFunctions.test_at_repeat"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorial_examples.tests.TestBodyFunctions.test_at_repeat"title="Permalink to this definition">¶</a></dt>
<dd><p>test that no message will be sent when below the 66% threshold</p>
<codeclass="sig-name descname">test_send_random_message</code><spanclass="sig-paren">(</span><emclass="sig-param">mock_random</em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorial_examples/tests.html#TestBodyFunctions.test_send_random_message"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorial_examples.tests.TestBodyFunctions.test_send_random_message"title="Permalink to this definition">¶</a></dt>
<dd><p>Test that correct message is sent for each random value</p>