mirror of
https://github.com/evennia/evennia.git
synced 2026-03-19 06:16:31 +01:00
1826 lines
No EOL
185 KiB
HTML
1826 lines
No EOL
185 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.scripts.scripts — 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.scripts.taskhandler" href="evennia.scripts.taskhandler.html" />
|
||
<link rel="prev" title="evennia.scripts.scripthandler" href="evennia.scripts.scripthandler.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.scripts.taskhandler.html" title="evennia.scripts.taskhandler"
|
||
accesskey="N">next</a> |</li>
|
||
<li class="right" >
|
||
<a href="evennia.scripts.scripthandler.html" title="evennia.scripts.scripthandler"
|
||
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.scripts.html" accesskey="U">evennia.scripts</a> »</li>
|
||
<li class="nav-item nav-item-this"><a href="">evennia.scripts.scripts</a></li>
|
||
</ul>
|
||
</div>
|
||
|
||
<div class="document">
|
||
<div class="documentwrapper">
|
||
<div class="bodywrapper">
|
||
<div class="body" role="main">
|
||
|
||
<section id="module-evennia.scripts.scripts">
|
||
<span id="evennia-scripts-scripts"></span><h1>evennia.scripts.scripts<a class="headerlink" href="#module-evennia.scripts.scripts" title="Link to this heading">¶</a></h1>
|
||
<p>This module defines Scripts, out-of-character entities that can store
|
||
data both on themselves and on other objects while also having the
|
||
ability to run timers.</p>
|
||
<dl class="py class">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.DefaultScript">
|
||
<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.scripts.scripts.</span></span><span class="sig-name descname"><span class="pre">DefaultScript</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/scripts/scripts.html#DefaultScript"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.scripts.DefaultScript" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Bases: <a class="reference internal" href="#evennia.scripts.scripts.ScriptBase" title="evennia.scripts.scripts.ScriptBase"><code class="xref py py-class docutils literal notranslate"><span class="pre">ScriptBase</span></code></a></p>
|
||
<p>This is the base TypeClass for all Scripts. Scripts describe
|
||
all entities/systems without a physical existence in the game world
|
||
that require database storage (like an economic system or
|
||
combat tracker). They
|
||
can also have a timer/ticker component.</p>
|
||
<p>A script type is customized by redefining some or all of its hook
|
||
methods and variables.</p>
|
||
<ul class="simple">
|
||
<li><p>available properties (check docs for full listing, this could be
|
||
outdated).</p></li>
|
||
</ul>
|
||
<blockquote>
|
||
<div><p>key (string) - name of object
|
||
name (string)- same as key
|
||
aliases (list of strings) - aliases to the object. Will be saved</p>
|
||
<blockquote>
|
||
<div><p>to database as AliasDB entries but returned as strings.</p>
|
||
</div></blockquote>
|
||
<p>dbref (int, read-only) - unique #id-number. Also “id” can be used.
|
||
date_created (string) - time stamp of object creation
|
||
permissions (list of strings) - list of permission strings</p>
|
||
<p>desc (string) - optional description of script, shown in listings
|
||
obj (Object) - optional object that this script is connected to</p>
|
||
<blockquote>
|
||
<div><p>and acts on (set automatically by obj.scripts.add())</p>
|
||
</div></blockquote>
|
||
<dl class="simple">
|
||
<dt>interval (int) - how often script should run, in seconds. <0 turns</dt><dd><p>off ticker</p>
|
||
</dd>
|
||
<dt>start_delay (bool) - if the script should start repeating right away or</dt><dd><p>wait self.interval seconds</p>
|
||
</dd>
|
||
<dt>repeats (int) - how many times the script should repeat before</dt><dd><p>stopping. 0 means infinite repeats</p>
|
||
</dd>
|
||
</dl>
|
||
<p>persistent (bool) - if script should survive a server shutdown or not
|
||
is_active (bool) - if script is currently running</p>
|
||
</div></blockquote>
|
||
<ul class="simple">
|
||
<li><p>Handlers</p></li>
|
||
</ul>
|
||
<blockquote>
|
||
<div><p>locks - lock-handler: use locks.add() to add new lock strings
|
||
db - attribute-handler: store/retrieve database attributes on this</p>
|
||
<blockquote>
|
||
<div><p>self.db.myattr=val, val=self.db.myattr</p>
|
||
</div></blockquote>
|
||
<dl class="simple">
|
||
<dt>ndb - non-persistent attribute handler: same as db but does not</dt><dd><p>create a database entry when storing data</p>
|
||
</dd>
|
||
</dl>
|
||
</div></blockquote>
|
||
<ul class="simple">
|
||
<li><p>Helper methods</p></li>
|
||
</ul>
|
||
<blockquote>
|
||
<div><p>create(key, <a href="#id1"><span class="problematic" id="id2">**</span></a>kwargs)
|
||
start() - start script (this usually happens automatically at creation</p>
|
||
<blockquote>
|
||
<div><p>and obj.script.add() etc)</p>
|
||
</div></blockquote>
|
||
<p>stop() - stop script, and delete it
|
||
pause() - put the script on hold, until unpause() is called. If script</p>
|
||
<blockquote>
|
||
<div><p>is persistent, the pause state will survive a shutdown.</p>
|
||
</div></blockquote>
|
||
<dl class="simple">
|
||
<dt>unpause() - restart a previously paused script. The script will continue</dt><dd><p>from the paused timer (but at_start() will be called).</p>
|
||
</dd>
|
||
<dt>time_until_next_repeat() - if a timed script (interval>0), returns time</dt><dd><p>until next tick</p>
|
||
</dd>
|
||
</dl>
|
||
</div></blockquote>
|
||
<ul class="simple">
|
||
<li><p>Hook methods (should also include self as the first argument):</p></li>
|
||
</ul>
|
||
<blockquote>
|
||
<div><dl>
|
||
<dt>at_script_creation() - called only once, when an object of this</dt><dd><p>class is first created.</p>
|
||
</dd>
|
||
<dt>is_valid() - is called to check if the script is valid to be running</dt><dd><blockquote>
|
||
<div><p>at the current time. If is_valid() returns False, the running
|
||
script is stopped and removed from the game. You can use this
|
||
to check state changes (i.e. an script tracking some combat
|
||
stats at regular intervals is only valid to run while there is
|
||
actual combat going on).</p>
|
||
</div></blockquote>
|
||
<dl class="simple">
|
||
<dt>at_start() - Called every time the script is started, which for persistent</dt><dd><p>scripts is at least once every server start. Note that this is
|
||
unaffected by self.delay_start, which only delays the first
|
||
call to at_repeat().</p>
|
||
</dd>
|
||
<dt>at_repeat() - Called every self.interval seconds. It will be called</dt><dd><p>immediately upon launch unless self.delay_start is True, which
|
||
will delay the first call of this method by self.interval
|
||
seconds. If self.interval==0, this method will never
|
||
be called.</p>
|
||
</dd>
|
||
</dl>
|
||
<p>at_pause()
|
||
at_stop() - Called as the script object is stopped and is about to be</p>
|
||
<blockquote>
|
||
<div><p>removed from the game, e.g. because is_valid() returned False.</p>
|
||
</div></blockquote>
|
||
<p>at_script_delete()
|
||
at_server_reload() - Called when server reloads. Can be used to</p>
|
||
<blockquote>
|
||
<div><p>save temporary variables you want should survive a reload.</p>
|
||
</div></blockquote>
|
||
<p>at_server_shutdown() - called at a full server shutdown.
|
||
at_server_start()</p>
|
||
</dd>
|
||
</dl>
|
||
</div></blockquote>
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.DefaultScript.create">
|
||
<em class="property"><span class="k"><span class="pre">classmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">create</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">key</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/scripts/scripts.html#DefaultScript.create"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.scripts.DefaultScript.create" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Provides a passthrough interface to the utils.create_script() function.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
|
||
<dd class="field-odd"><p><strong>key</strong> (<em>str</em>) – Name of the new object.</p>
|
||
</dd>
|
||
<dt class="field-even">Returns<span class="colon">:</span></dt>
|
||
<dd class="field-even"><p><em>object (Object)</em> – A newly created object of the given typeclass.
|
||
errors (list): A list of errors in string form, if any.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.DefaultScript.at_script_creation">
|
||
<span class="sig-name descname"><span class="pre">at_script_creation</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/scripts/scripts.html#DefaultScript.at_script_creation"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.scripts.DefaultScript.at_script_creation" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Only called once, when script is first created.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.DefaultScript.is_valid">
|
||
<span class="sig-name descname"><span class="pre">is_valid</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/scripts/scripts.html#DefaultScript.is_valid"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.scripts.DefaultScript.is_valid" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Is called to check if the script’s timer is valid to run at this time.
|
||
Should return a boolean. If False, the timer will be stopped.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.DefaultScript.at_start">
|
||
<span class="sig-name descname"><span class="pre">at_start</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/scripts/scripts.html#DefaultScript.at_start"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.scripts.DefaultScript.at_start" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Called whenever the script timer is started, which for persistent
|
||
timed scripts is at least once every server start. It will also be
|
||
called when starting again after a pause (including after a
|
||
server reload).</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
|
||
<dd class="field-odd"><p><strong>**kwargs</strong> (<em>dict</em>) – Arbitrary, optional arguments for users
|
||
overriding the call (unused by default).</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.DefaultScript.at_repeat">
|
||
<span class="sig-name descname"><span class="pre">at_repeat</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/scripts/scripts.html#DefaultScript.at_repeat"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.scripts.DefaultScript.at_repeat" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Called repeatedly if this Script is set to repeat regularly.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
|
||
<dd class="field-odd"><p><strong>**kwargs</strong> (<em>dict</em>) – Arbitrary, optional arguments for users
|
||
overriding the call (unused by default).</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.DefaultScript.at_pause">
|
||
<span class="sig-name descname"><span class="pre">at_pause</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">manual_pause</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/scripts/scripts.html#DefaultScript.at_pause"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.scripts.DefaultScript.at_pause" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Called when this script’s timer pauses.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
|
||
<dd class="field-odd"><p><strong>manual_pause</strong> (<em>bool</em>) – If set, pausing was done by a direct call. The
|
||
non-manual pause indicates the script was paused as part of
|
||
the server reload.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.DefaultScript.at_stop">
|
||
<span class="sig-name descname"><span class="pre">at_stop</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/scripts/scripts.html#DefaultScript.at_stop"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.scripts.DefaultScript.at_stop" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Called whenever when it’s time for this script’s timer to stop (either
|
||
because is_valid returned False, it ran out of iterations or it was manuallys
|
||
stopped.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
|
||
<dd class="field-odd"><p><strong>**kwargs</strong> (<em>dict</em>) – Arbitrary, optional arguments for users
|
||
overriding the call (unused by default).</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.DefaultScript.at_script_delete">
|
||
<span class="sig-name descname"><span class="pre">at_script_delete</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/scripts/scripts.html#DefaultScript.at_script_delete"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.scripts.DefaultScript.at_script_delete" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Called when the Script is deleted, before stopping the timer.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Returns<span class="colon">:</span></dt>
|
||
<dd class="field-odd"><p><em>bool</em> – If False, the deletion is aborted.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.DefaultScript.at_server_reload">
|
||
<span class="sig-name descname"><span class="pre">at_server_reload</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/scripts/scripts.html#DefaultScript.at_server_reload"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.scripts.DefaultScript.at_server_reload" title="Link to this definition">¶</a></dt>
|
||
<dd><p>This hook is called whenever the server is shutting down for
|
||
restart/reboot. If you want to, for example, save
|
||
non-persistent properties across a restart, this is the place
|
||
to do it.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.DefaultScript.at_server_shutdown">
|
||
<span class="sig-name descname"><span class="pre">at_server_shutdown</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/scripts/scripts.html#DefaultScript.at_server_shutdown"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.scripts.DefaultScript.at_server_shutdown" title="Link to this definition">¶</a></dt>
|
||
<dd><p>This hook is called whenever the server is shutting down fully
|
||
(i.e. not for a restart).</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.DefaultScript.at_server_start">
|
||
<span class="sig-name descname"><span class="pre">at_server_start</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/scripts/scripts.html#DefaultScript.at_server_start"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.scripts.DefaultScript.at_server_start" title="Link to this definition">¶</a></dt>
|
||
<dd><p>This hook is called after the server has started. It can be used to add
|
||
post-startup setup for Scripts without a timer component (for which at_start
|
||
could be used).</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py exception">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.DefaultScript.DoesNotExist">
|
||
<em class="property"><span class="k"><span class="pre">exception</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">DoesNotExist</span></span><a class="headerlink" href="#evennia.scripts.scripts.DefaultScript.DoesNotExist" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Bases: <a class="reference internal" href="#evennia.scripts.scripts.ScriptBase.DoesNotExist" title="evennia.scripts.scripts.ScriptBase.DoesNotExist"><code class="xref py py-class docutils literal notranslate"><span class="pre">DoesNotExist</span></code></a></p>
|
||
</dd></dl>
|
||
|
||
<dl class="py exception">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.DefaultScript.MultipleObjectsReturned">
|
||
<em class="property"><span class="k"><span class="pre">exception</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">MultipleObjectsReturned</span></span><a class="headerlink" href="#evennia.scripts.scripts.DefaultScript.MultipleObjectsReturned" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Bases: <a class="reference internal" href="#evennia.scripts.scripts.ScriptBase.MultipleObjectsReturned" title="evennia.scripts.scripts.ScriptBase.MultipleObjectsReturned"><code class="xref py py-class docutils literal notranslate"><span class="pre">MultipleObjectsReturned</span></code></a></p>
|
||
</dd></dl>
|
||
|
||
<dl class="py exception">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.DefaultScript.NotUpdated">
|
||
<em class="property"><span class="k"><span class="pre">exception</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">NotUpdated</span></span><a class="headerlink" href="#evennia.scripts.scripts.DefaultScript.NotUpdated" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Bases: <a class="reference internal" href="#evennia.scripts.scripts.ScriptBase.NotUpdated" title="evennia.scripts.scripts.ScriptBase.NotUpdated"><code class="xref py py-class docutils literal notranslate"><span class="pre">NotUpdated</span></code></a></p>
|
||
</dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.DefaultScript.path">
|
||
<span class="sig-name descname"><span class="pre">path</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'evennia.scripts.scripts.DefaultScript'</span></em><a class="headerlink" href="#evennia.scripts.scripts.DefaultScript.path" title="Link to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.DefaultScript.typename">
|
||
<span class="sig-name descname"><span class="pre">typename</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'DefaultScript'</span></em><a class="headerlink" href="#evennia.scripts.scripts.DefaultScript.typename" title="Link to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
</dd></dl>
|
||
|
||
<dl class="py class">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.DoNothing">
|
||
<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.scripts.scripts.</span></span><span class="sig-name descname"><span class="pre">DoNothing</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/scripts/scripts.html#DoNothing"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.scripts.DoNothing" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Bases: <a class="reference internal" href="#evennia.scripts.scripts.DefaultScript" title="evennia.scripts.scripts.DefaultScript"><code class="xref py py-class docutils literal notranslate"><span class="pre">DefaultScript</span></code></a></p>
|
||
<p>A script that does nothing. Used as default fallback.</p>
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.DoNothing.at_script_creation">
|
||
<span class="sig-name descname"><span class="pre">at_script_creation</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/scripts/scripts.html#DoNothing.at_script_creation"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.scripts.DoNothing.at_script_creation" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Setup the script</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py exception">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.DoNothing.DoesNotExist">
|
||
<em class="property"><span class="k"><span class="pre">exception</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">DoesNotExist</span></span><a class="headerlink" href="#evennia.scripts.scripts.DoNothing.DoesNotExist" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Bases: <a class="reference internal" href="#evennia.scripts.scripts.DefaultScript.DoesNotExist" title="evennia.scripts.scripts.DefaultScript.DoesNotExist"><code class="xref py py-class docutils literal notranslate"><span class="pre">DoesNotExist</span></code></a></p>
|
||
</dd></dl>
|
||
|
||
<dl class="py exception">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.DoNothing.MultipleObjectsReturned">
|
||
<em class="property"><span class="k"><span class="pre">exception</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">MultipleObjectsReturned</span></span><a class="headerlink" href="#evennia.scripts.scripts.DoNothing.MultipleObjectsReturned" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Bases: <a class="reference internal" href="#evennia.scripts.scripts.DefaultScript.MultipleObjectsReturned" title="evennia.scripts.scripts.DefaultScript.MultipleObjectsReturned"><code class="xref py py-class docutils literal notranslate"><span class="pre">MultipleObjectsReturned</span></code></a></p>
|
||
</dd></dl>
|
||
|
||
<dl class="py exception">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.DoNothing.NotUpdated">
|
||
<em class="property"><span class="k"><span class="pre">exception</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">NotUpdated</span></span><a class="headerlink" href="#evennia.scripts.scripts.DoNothing.NotUpdated" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Bases: <a class="reference internal" href="#evennia.scripts.scripts.DefaultScript.NotUpdated" title="evennia.scripts.scripts.DefaultScript.NotUpdated"><code class="xref py py-class docutils literal notranslate"><span class="pre">NotUpdated</span></code></a></p>
|
||
</dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.DoNothing.path">
|
||
<span class="sig-name descname"><span class="pre">path</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'evennia.scripts.scripts.DoNothing'</span></em><a class="headerlink" href="#evennia.scripts.scripts.DoNothing.path" title="Link to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.DoNothing.typename">
|
||
<span class="sig-name descname"><span class="pre">typename</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'DoNothing'</span></em><a class="headerlink" href="#evennia.scripts.scripts.DoNothing.typename" title="Link to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
</dd></dl>
|
||
|
||
<dl class="py class">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.Store">
|
||
<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.scripts.scripts.</span></span><span class="sig-name descname"><span class="pre">Store</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/scripts/scripts.html#Store"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.scripts.Store" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Bases: <a class="reference internal" href="#evennia.scripts.scripts.DefaultScript" title="evennia.scripts.scripts.DefaultScript"><code class="xref py py-class docutils literal notranslate"><span class="pre">DefaultScript</span></code></a></p>
|
||
<p>Simple storage script</p>
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.Store.at_script_creation">
|
||
<span class="sig-name descname"><span class="pre">at_script_creation</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/scripts/scripts.html#Store.at_script_creation"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.scripts.Store.at_script_creation" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Setup the script</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py exception">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.Store.DoesNotExist">
|
||
<em class="property"><span class="k"><span class="pre">exception</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">DoesNotExist</span></span><a class="headerlink" href="#evennia.scripts.scripts.Store.DoesNotExist" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Bases: <a class="reference internal" href="#evennia.scripts.scripts.DefaultScript.DoesNotExist" title="evennia.scripts.scripts.DefaultScript.DoesNotExist"><code class="xref py py-class docutils literal notranslate"><span class="pre">DoesNotExist</span></code></a></p>
|
||
</dd></dl>
|
||
|
||
<dl class="py exception">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.Store.MultipleObjectsReturned">
|
||
<em class="property"><span class="k"><span class="pre">exception</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">MultipleObjectsReturned</span></span><a class="headerlink" href="#evennia.scripts.scripts.Store.MultipleObjectsReturned" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Bases: <a class="reference internal" href="#evennia.scripts.scripts.DefaultScript.MultipleObjectsReturned" title="evennia.scripts.scripts.DefaultScript.MultipleObjectsReturned"><code class="xref py py-class docutils literal notranslate"><span class="pre">MultipleObjectsReturned</span></code></a></p>
|
||
</dd></dl>
|
||
|
||
<dl class="py exception">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.Store.NotUpdated">
|
||
<em class="property"><span class="k"><span class="pre">exception</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">NotUpdated</span></span><a class="headerlink" href="#evennia.scripts.scripts.Store.NotUpdated" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Bases: <a class="reference internal" href="#evennia.scripts.scripts.DefaultScript.NotUpdated" title="evennia.scripts.scripts.DefaultScript.NotUpdated"><code class="xref py py-class docutils literal notranslate"><span class="pre">NotUpdated</span></code></a></p>
|
||
</dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.Store.path">
|
||
<span class="sig-name descname"><span class="pre">path</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'evennia.scripts.scripts.Store'</span></em><a class="headerlink" href="#evennia.scripts.scripts.Store.path" title="Link to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.Store.typename">
|
||
<span class="sig-name descname"><span class="pre">typename</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'Store'</span></em><a class="headerlink" href="#evennia.scripts.scripts.Store.typename" title="Link to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
</dd></dl>
|
||
|
||
<dl class="py class">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.Deferred">
|
||
<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.scripts.scripts.</span></span><span class="sig-name descname"><span class="pre">Deferred</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">canceller</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Callable</span><span class="p"><span class="pre">[</span></span><span class="p"><span class="pre">[</span></span><a class="reference internal" href="#evennia.scripts.scripts.Deferred" title="twisted.internet.defer.Deferred"><span class="pre">Deferred</span></a><span class="p"><span class="pre">[</span></span><span class="pre">Any</span><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">None</span><span class="p"><span class="pre">]</span></span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">None</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/twisted/internet/defer.html#Deferred"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.scripts.Deferred" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">Awaitable</span></code>[<code class="xref py py-obj docutils literal notranslate"><span class="pre">_SelfResultT</span></code>]</p>
|
||
<p>This is a callback which will be put off until later.</p>
|
||
<p>Why do we want this? Well, in cases where a function in a threaded
|
||
program would block until it gets a result, for Twisted it should
|
||
not block. Instead, it should return a L{Deferred}.</p>
|
||
<p>This can be implemented for protocols that run over the network by
|
||
writing an asynchronous protocol for L{twisted.internet}. For methods
|
||
that come from outside packages that are not under our control, we use
|
||
threads (see for example L{twisted.enterprise.adbapi}).</p>
|
||
<p>For more information about Deferreds, see doc/core/howto/defer.html or
|
||
U{<a class="reference external" href="http://twistedmatrix.com/documents/current/core/howto/defer.html">http://twistedmatrix.com/documents/current/core/howto/defer.html</a>}</p>
|
||
<p>When creating a Deferred, you may provide a canceller function, which
|
||
will be called by d.cancel() to let you do any clean-up necessary if the
|
||
user decides not to wait for the deferred to complete.</p>
|
||
<dl class="simple">
|
||
<dt>@ivar called: A flag which is C{False} until either C{callback} or</dt><dd><p>C{errback} is called and afterwards always C{True}.</p>
|
||
</dd>
|
||
<dt>@ivar paused: A counter of how many unmatched C{pause} calls have been made</dt><dd><p>on this instance.</p>
|
||
</dd>
|
||
<dt>@ivar _suppressAlreadyCalled: A flag used by the cancellation mechanism</dt><dd><p>which is C{True} if the Deferred has no canceller and has been
|
||
cancelled, C{False} otherwise. If C{True}, it can be expected that
|
||
C{callback} or C{errback} will eventually be called and the result
|
||
should be silently discarded.</p>
|
||
</dd>
|
||
<dt>@ivar _runningCallbacks: A flag which is C{True} while this instance is</dt><dd><p>executing its callback chain, used to stop recursive execution of
|
||
L{_runCallbacks}</p>
|
||
</dd>
|
||
<dt>@ivar _chainedTo: If this L{Deferred} is waiting for the result of another</dt><dd><p>L{Deferred}, this is a reference to the other Deferred. Otherwise,
|
||
L{None}.</p>
|
||
</dd>
|
||
</dl>
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.Deferred.__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">canceller</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Callable</span><span class="p"><span class="pre">[</span></span><span class="p"><span class="pre">[</span></span><a class="reference internal" href="#evennia.scripts.scripts.Deferred" title="twisted.internet.defer.Deferred"><span class="pre">Deferred</span></a><span class="p"><span class="pre">[</span></span><span class="pre">Any</span><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">None</span><span class="p"><span class="pre">]</span></span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">None</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">→</span> <span class="sig-return-typehint"><span class="pre">None</span></span></span><a class="reference internal" href="../_modules/twisted/internet/defer.html#Deferred.__init__"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.scripts.Deferred.__init__" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Initialize a L{Deferred}.</p>
|
||
<dl>
|
||
<dt>@param canceller: a callable used to stop the pending operation</dt><dd><p>scheduled by this L{Deferred} when L{Deferred.cancel} is invoked.
|
||
The canceller will be passed the deferred whose cancellation is
|
||
requested (i.e., C{self}).</p>
|
||
<p>If a canceller is not given, or does not invoke its argument’s
|
||
C{callback} or C{errback} method, L{Deferred.cancel} will
|
||
invoke L{Deferred.errback} with a L{CancelledError}.</p>
|
||
<p>Note that if a canceller is not given, C{callback} or
|
||
C{errback} may still be invoked exactly once, even though
|
||
defer.py will have already invoked C{errback}, as described
|
||
above. This allows clients of code which returns a L{Deferred}
|
||
to cancel it without requiring the L{Deferred} instantiator to
|
||
provide any specific implementation support for cancellation.
|
||
New in 10.1.</p>
|
||
</dd>
|
||
<dt>@type canceller: a 1-argument callable which takes a L{Deferred}. The</dt><dd><p>return result is ignored.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.Deferred.addBoth">
|
||
<span class="sig-name descname"><span class="pre">addBoth</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">callback</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Any</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Any</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Any</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">→</span> <span class="sig-return-typehint"><a class="reference internal" href="#evennia.scripts.scripts.Deferred" title="twisted.internet.defer.Deferred"><span class="pre">Deferred</span></a><span class="p"><span class="pre">[</span></span><span class="pre">Any</span><span class="p"><span class="pre">]</span></span></span></span><a class="reference internal" href="../_modules/twisted/internet/defer.html#Deferred.addBoth"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.scripts.Deferred.addBoth" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Convenience method for adding a single callable as both a callback
|
||
and an errback.</p>
|
||
<p>See L{addCallbacks}.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.Deferred.addCallback">
|
||
<span class="sig-name descname"><span class="pre">addCallback</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">callback</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Any</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Any</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Any</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">→</span> <span class="sig-return-typehint"><a class="reference internal" href="#evennia.scripts.scripts.Deferred" title="twisted.internet.defer.Deferred"><span class="pre">Deferred</span></a><span class="p"><span class="pre">[</span></span><span class="pre">Any</span><span class="p"><span class="pre">]</span></span></span></span><a class="reference internal" href="../_modules/twisted/internet/defer.html#Deferred.addCallback"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.scripts.Deferred.addCallback" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Convenience method for adding just a callback.</p>
|
||
<p>See L{addCallbacks}.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.Deferred.addCallbacks">
|
||
<span class="sig-name descname"><span class="pre">addCallbacks</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">callback</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Callable</span><span class="p"><span class="pre">[</span></span><span class="p"><span class="pre">[</span></span><span class="p"><span class="pre">...</span></span><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">_NextResultT</span><span class="p"><span class="pre">]</span></span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">Callable</span><span class="p"><span class="pre">[</span></span><span class="p"><span class="pre">[</span></span><span class="p"><span class="pre">...</span></span><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><a class="reference internal" href="#evennia.scripts.scripts.Deferred" title="twisted.internet.defer.Deferred"><span class="pre">Deferred</span></a><span class="p"><span class="pre">[</span></span><span class="pre">_NextResultT</span><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">]</span></span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">Callable</span><span class="p"><span class="pre">[</span></span><span class="p"><span class="pre">[</span></span><span class="p"><span class="pre">...</span></span><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">Failure</span><span class="p"><span class="pre">]</span></span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">Callable</span><span class="p"><span class="pre">[</span></span><span class="p"><span class="pre">[</span></span><span class="p"><span class="pre">...</span></span><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">_NextResultT</span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><a class="reference internal" href="#evennia.scripts.scripts.Deferred" title="twisted.internet.defer.Deferred"><span class="pre">Deferred</span></a><span class="p"><span class="pre">[</span></span><span class="pre">_NextResultT</span><span class="p"><span class="pre">]</span></span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">Failure</span><span class="p"><span class="pre">]</span></span></span></em>, <em class="sig-param"><span class="n"><span class="pre">errback</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Callable</span><span class="p"><span class="pre">[</span></span><span class="p"><span class="pre">[</span></span><span class="p"><span class="pre">...</span></span><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">_NextResultT</span><span class="p"><span class="pre">]</span></span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">Callable</span><span class="p"><span class="pre">[</span></span><span class="p"><span class="pre">[</span></span><span class="p"><span class="pre">...</span></span><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><a class="reference internal" href="#evennia.scripts.scripts.Deferred" title="twisted.internet.defer.Deferred"><span class="pre">Deferred</span></a><span class="p"><span class="pre">[</span></span><span class="pre">_NextResultT</span><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">]</span></span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">Callable</span><span class="p"><span class="pre">[</span></span><span class="p"><span class="pre">[</span></span><span class="p"><span class="pre">...</span></span><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">Failure</span><span class="p"><span class="pre">]</span></span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">Callable</span><span class="p"><span class="pre">[</span></span><span class="p"><span class="pre">[</span></span><span class="p"><span class="pre">...</span></span><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">_NextResultT</span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><a class="reference internal" href="#evennia.scripts.scripts.Deferred" title="twisted.internet.defer.Deferred"><span class="pre">Deferred</span></a><span class="p"><span class="pre">[</span></span><span class="pre">_NextResultT</span><span class="p"><span class="pre">]</span></span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">Failure</span><span class="p"><span class="pre">]</span></span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">None</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">callbackArgs</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Tuple</span><span class="p"><span class="pre">[</span></span><span class="pre">Any</span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="p"><span class="pre">...</span></span><span class="p"><span class="pre">]</span></span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">()</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">callbackKeywords</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Mapping</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">Any</span><span class="p"><span class="pre">]</span></span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">mappingproxy({})</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">errbackArgs</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Tuple</span><span class="p"><span class="pre">[</span></span><span class="pre">object</span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="p"><span class="pre">...</span></span><span class="p"><span class="pre">]</span></span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">()</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">errbackKeywords</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Mapping</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">object</span><span class="p"><span class="pre">]</span></span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">mappingproxy({})</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">→</span> <span class="sig-return-typehint"><a class="reference internal" href="#evennia.scripts.scripts.Deferred" title="twisted.internet.defer.Deferred"><span class="pre">Deferred</span></a><span class="p"><span class="pre">[</span></span><span class="pre">_NextResultT</span><span class="p"><span class="pre">]</span></span></span></span><a class="reference internal" href="../_modules/twisted/internet/defer.html#Deferred.addCallbacks"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.scripts.Deferred.addCallbacks" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Add a pair of callbacks (success and error) to this L{Deferred}.</p>
|
||
<p>These will be executed when the ‘master’ callback is run.</p>
|
||
<dl class="simple">
|
||
<dt>@note: The signature of this function was designed many years before</dt><dd><p>PEP 612; ParamSpec provides no mechanism to annotate parameters
|
||
like C{callbackArgs}; this is therefore inherently less type-safe
|
||
than calling C{addCallback} and C{addErrback} separately.</p>
|
||
</dd>
|
||
</dl>
|
||
<p>@return: C{self}.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.Deferred.addErrback">
|
||
<span class="sig-name descname"><span class="pre">addErrback</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">errback</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Any</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Any</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Any</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">→</span> <span class="sig-return-typehint"><a class="reference internal" href="#evennia.scripts.scripts.Deferred" title="twisted.internet.defer.Deferred"><span class="pre">Deferred</span></a><span class="p"><span class="pre">[</span></span><span class="pre">Any</span><span class="p"><span class="pre">]</span></span></span></span><a class="reference internal" href="../_modules/twisted/internet/defer.html#Deferred.addErrback"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.scripts.Deferred.addErrback" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Convenience method for adding just an errback.</p>
|
||
<p>See L{addCallbacks}.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.Deferred.addTimeout">
|
||
<span class="sig-name descname"><span class="pre">addTimeout</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="pre">timeout:</span> <span class="pre">float,</span> <span class="pre">clock:</span> <span class="pre"><InterfaceClass</span> <span class="pre">twisted.internet.interfaces.IReactorTime>,</span> <span class="pre">onTimeoutCancel:</span> <span class="pre">~typing.Callable[[~twisted.internet.defer._SelfResultT</span> <span class="pre">|</span> <span class="pre">~twisted.python.failure.Failure,</span> <span class="pre">float],</span> <span class="pre">~twisted.internet.defer._NextResultT</span> <span class="pre">|</span> <span class="pre">~twisted.python.failure.Failure]</span> <span class="pre">|</span> <span class="pre">None</span> <span class="pre">=</span> <span class="pre">None</span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">→</span> <span class="sig-return-typehint"><a class="reference internal" href="#evennia.scripts.scripts.Deferred" title="twisted.internet.defer.Deferred"><span class="pre">Deferred</span></a><span class="p"><span class="pre">[</span></span><span class="pre">_SelfResultT</span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">_NextResultT</span><span class="p"><span class="pre">]</span></span></span></span><a class="reference internal" href="../_modules/twisted/internet/defer.html#Deferred.addTimeout"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.scripts.Deferred.addTimeout" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Time out this L{Deferred} by scheduling it to be cancelled after
|
||
C{timeout} seconds.</p>
|
||
<p>The timeout encompasses all the callbacks and errbacks added to this
|
||
L{defer.Deferred} before the call to L{addTimeout}, and none added
|
||
after the call.</p>
|
||
<p>If this L{Deferred} gets timed out, it errbacks with a L{TimeoutError},
|
||
unless a cancelable function was passed to its initialization or unless
|
||
a different C{onTimeoutCancel} callable is provided.</p>
|
||
<dl class="simple">
|
||
<dt>@param timeout: number of seconds to wait before timing out this</dt><dd><p>L{Deferred}</p>
|
||
</dd>
|
||
</dl>
|
||
<p>@param clock: The object which will be used to schedule the timeout.
|
||
@param onTimeoutCancel: A callable which is called immediately after</p>
|
||
<blockquote>
|
||
<div><p>this L{Deferred} times out, and not if this L{Deferred} is
|
||
otherwise cancelled before the timeout. It takes an arbitrary
|
||
value, which is the value of this L{Deferred} at that exact point
|
||
in time (probably a L{CancelledError} L{Failure}), and the
|
||
C{timeout}. The default callable (if C{None} is provided) will
|
||
translate a L{CancelledError} L{Failure} into a L{TimeoutError}.</p>
|
||
</div></blockquote>
|
||
<p>@return: C{self}.</p>
|
||
<p>@since: 16.5</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.Deferred.asFuture">
|
||
<span class="sig-name descname"><span class="pre">asFuture</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">loop</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">AbstractEventLoop</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">→</span> <span class="sig-return-typehint"><span class="pre">Future</span><span class="p"><span class="pre">[</span></span><span class="pre">_SelfResultT</span><span class="p"><span class="pre">]</span></span></span></span><a class="reference internal" href="../_modules/twisted/internet/defer.html#Deferred.asFuture"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.scripts.Deferred.asFuture" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Adapt this L{Deferred} into a L{Future} which is bound to C{loop}.</p>
|
||
<dl class="simple">
|
||
<dt>@note: converting a L{Deferred} to an L{Future} consumes both</dt><dd><p>its result and its errors, so this method implicitly converts
|
||
C{self} into a L{Deferred} firing with L{None}, regardless of what
|
||
its result previously would have been.</p>
|
||
</dd>
|
||
</dl>
|
||
<p>@since: Twisted 17.5.0</p>
|
||
<p>@param loop: The L{asyncio} event loop to bind the L{Future} to.</p>
|
||
<p>@return: A L{Future} which will fire when the L{Deferred} fires.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.Deferred.callback">
|
||
<span class="sig-name descname"><span class="pre">callback</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">result</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">_SelfResultT</span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">Failure</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">→</span> <span class="sig-return-typehint"><span class="pre">None</span></span></span><a class="reference internal" href="../_modules/twisted/internet/defer.html#Deferred.callback"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.scripts.Deferred.callback" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Run all success callbacks that have been added to this L{Deferred}.</p>
|
||
<p>Each callback will have its result passed as the first argument to
|
||
the next; this way, the callbacks act as a ‘processing chain’. If
|
||
the success-callback returns a L{Failure} or raises an L{Exception},
|
||
processing will continue on the <em>error</em> callback chain. If a
|
||
callback (or errback) returns another L{Deferred}, this L{Deferred}
|
||
will be chained to it (and further callbacks will not run until that
|
||
L{Deferred} has a result).</p>
|
||
<p>An instance of L{Deferred} may only have either L{callback} or
|
||
L{errback} called on it, and only once.</p>
|
||
<dl class="simple">
|
||
<dt>@param result: The object which will be passed to the first callback</dt><dd><p>added to this L{Deferred} (via L{addCallback}), unless C{result} is
|
||
a L{Failure}, in which case the behavior is the same as calling
|
||
C{errback(result)}.</p>
|
||
</dd>
|
||
<dt>@raise AlreadyCalledError: If L{callback} or L{errback} has already been</dt><dd><p>called on this L{Deferred}.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.Deferred.called">
|
||
<span class="sig-name descname"><span class="pre">called</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">False</span></em><a class="headerlink" href="#evennia.scripts.scripts.Deferred.called" title="Link to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.Deferred.cancel">
|
||
<span class="sig-name descname"><span class="pre">cancel</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">→</span> <span class="sig-return-typehint"><span class="pre">None</span></span></span><a class="reference internal" href="../_modules/twisted/internet/defer.html#Deferred.cancel"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.scripts.Deferred.cancel" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Cancel this L{Deferred}.</p>
|
||
<p>If the L{Deferred} has not yet had its C{errback} or C{callback} method
|
||
invoked, call the canceller function provided to the constructor. If
|
||
that function does not invoke C{callback} or C{errback}, or if no
|
||
canceller function was provided, errback with L{CancelledError}.</p>
|
||
<p>If this L{Deferred} is waiting on another L{Deferred}, forward the
|
||
cancellation to the other L{Deferred}.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.Deferred.chainDeferred">
|
||
<span class="sig-name descname"><span class="pre">chainDeferred</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">d</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#evennia.scripts.scripts.Deferred" title="twisted.internet.defer.Deferred"><span class="pre">Deferred</span></a><span class="p"><span class="pre">[</span></span><span class="pre">_SelfResultT</span><span class="p"><span class="pre">]</span></span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">→</span> <span class="sig-return-typehint"><a class="reference internal" href="#evennia.scripts.scripts.Deferred" title="twisted.internet.defer.Deferred"><span class="pre">Deferred</span></a><span class="p"><span class="pre">[</span></span><span class="pre">None</span><span class="p"><span class="pre">]</span></span></span></span><a class="reference internal" href="../_modules/twisted/internet/defer.html#Deferred.chainDeferred"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.scripts.Deferred.chainDeferred" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Chain another L{Deferred} to this L{Deferred}.</p>
|
||
<p>This method adds callbacks to this L{Deferred} to call C{d}’s callback
|
||
or errback, as appropriate. It is merely a shorthand way of performing
|
||
the following:</p>
|
||
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">d1</span><span class="o">.</span><span class="n">addCallbacks</span><span class="p">(</span><span class="n">d2</span><span class="o">.</span><span class="n">callback</span><span class="p">,</span> <span class="n">d2</span><span class="o">.</span><span class="n">errback</span><span class="p">)</span>
|
||
</pre></div>
|
||
</div>
|
||
<p>When you chain a deferred C{d2} to another deferred C{d1} with
|
||
C{d1.chainDeferred(d2)}, you are making C{d2} participate in the
|
||
callback chain of C{d1}.
|
||
Thus any event that fires C{d1} will also fire C{d2}.
|
||
However, the converse is B{not} true; if C{d2} is fired, C{d1} will not
|
||
be affected.</p>
|
||
<p>Note that unlike the case where chaining is caused by a L{Deferred}
|
||
being returned from a callback, it is possible to cause the call
|
||
stack size limit to be exceeded by chaining many L{Deferred}s
|
||
together with C{chainDeferred}.</p>
|
||
<p>@return: C{self}.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.Deferred.debug">
|
||
<span class="sig-name descname"><span class="pre">debug</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">False</span></em><a class="headerlink" href="#evennia.scripts.scripts.Deferred.debug" title="Link to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.Deferred.errback">
|
||
<span class="sig-name descname"><span class="pre">errback</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">fail</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Failure</span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">BaseException</span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">None</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">→</span> <span class="sig-return-typehint"><span class="pre">None</span></span></span><a class="reference internal" href="../_modules/twisted/internet/defer.html#Deferred.errback"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.scripts.Deferred.errback" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Run all error callbacks that have been added to this L{Deferred}.</p>
|
||
<p>Each callback will have its result passed as the first
|
||
argument to the next; this way, the callbacks act as a
|
||
‘processing chain’. Also, if the error-callback returns a non-Failure
|
||
or doesn’t raise an L{Exception}, processing will continue on the
|
||
<em>success</em>-callback chain.</p>
|
||
<p>If the argument that’s passed to me is not a L{Failure} instance,
|
||
it will be embedded in one. If no argument is passed, a
|
||
L{Failure} instance will be created based on the current
|
||
traceback stack.</p>
|
||
<p>Passing a string as <a href="#id3"><span class="problematic" id="id4">**</span></a>fail’ is deprecated, and will be punished with
|
||
a warning message.</p>
|
||
<p>An instance of L{Deferred} may only have either L{callback} or
|
||
L{errback} called on it, and only once.</p>
|
||
<dl class="simple">
|
||
<dt>@param fail: The L{Failure} object which will be passed to the first</dt><dd><p>errback added to this L{Deferred} (via L{addErrback}).
|
||
Alternatively, a L{Exception} instance from which a L{Failure} will
|
||
be constructed (with no traceback) or L{None} to create a L{Failure}
|
||
instance from the current exception state (with a traceback).</p>
|
||
</dd>
|
||
<dt>@raise AlreadyCalledError: If L{callback} or L{errback} has already been</dt><dd><p>called on this L{Deferred}.</p>
|
||
</dd>
|
||
<dt>@raise NoCurrentExceptionError: If C{fail} is L{None} but there is</dt><dd><p>no current exception state.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.Deferred.fromCoroutine">
|
||
<em class="property"><span class="k"><span class="pre">classmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">fromCoroutine</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">coro</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Coroutine</span><span class="p"><span class="pre">[</span></span><a class="reference internal" href="#evennia.scripts.scripts.Deferred" title="twisted.internet.defer.Deferred"><span class="pre">Deferred</span></a><span class="p"><span class="pre">[</span></span><span class="pre">Any</span><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">Any</span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">_T</span><span class="p"><span class="pre">]</span></span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">Generator</span><span class="p"><span class="pre">[</span></span><a class="reference internal" href="#evennia.scripts.scripts.Deferred" title="twisted.internet.defer.Deferred"><span class="pre">Deferred</span></a><span class="p"><span class="pre">[</span></span><span class="pre">Any</span><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">Any</span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">_T</span><span class="p"><span class="pre">]</span></span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">→</span> <span class="sig-return-typehint"><a class="reference internal" href="#evennia.scripts.scripts.Deferred" title="twisted.internet.defer.Deferred"><span class="pre">Deferred</span></a><span class="p"><span class="pre">[</span></span><span class="pre">_T</span><span class="p"><span class="pre">]</span></span></span></span><a class="reference internal" href="../_modules/twisted/internet/defer.html#Deferred.fromCoroutine"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.scripts.Deferred.fromCoroutine" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Schedule the execution of a coroutine that awaits on L{Deferred}s,
|
||
wrapping it in a L{Deferred} that will fire on success/failure of the
|
||
coroutine.</p>
|
||
<p>Coroutine functions return a coroutine object, similar to how
|
||
generators work. This function turns that coroutine into a Deferred,
|
||
meaning that it can be used in regular Twisted code. For example:</p>
|
||
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="kn">import</span><span class="w"> </span><span class="nn">treq</span>
|
||
<span class="kn">from</span><span class="w"> </span><span class="nn">twisted.internet.defer</span><span class="w"> </span><span class="kn">import</span> <span class="n">Deferred</span>
|
||
<span class="kn">from</span><span class="w"> </span><span class="nn">twisted.internet.task</span><span class="w"> </span><span class="kn">import</span> <span class="n">react</span>
|
||
|
||
<span class="k">async</span> <span class="k">def</span><span class="w"> </span><span class="nf">crawl</span><span class="p">(</span><span class="n">pages</span><span class="p">):</span>
|
||
<span class="n">results</span> <span class="o">=</span> <span class="p">{}</span>
|
||
<span class="k">for</span> <span class="n">page</span> <span class="ow">in</span> <span class="n">pages</span><span class="p">:</span>
|
||
<span class="n">results</span><span class="p">[</span><span class="n">page</span><span class="p">]</span> <span class="o">=</span> <span class="k">await</span> <span class="n">treq</span><span class="o">.</span><span class="n">content</span><span class="p">(</span><span class="k">await</span> <span class="n">treq</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="n">page</span><span class="p">))</span>
|
||
<span class="k">return</span> <span class="n">results</span>
|
||
|
||
<span class="k">def</span><span class="w"> </span><span class="nf">main</span><span class="p">(</span><span class="n">reactor</span><span class="p">):</span>
|
||
<span class="n">pages</span> <span class="o">=</span> <span class="p">[</span>
|
||
<span class="s2">"http://localhost:8080"</span>
|
||
<span class="p">]</span>
|
||
<span class="n">d</span> <span class="o">=</span> <span class="n">Deferred</span><span class="o">.</span><span class="n">fromCoroutine</span><span class="p">(</span><span class="n">crawl</span><span class="p">(</span><span class="n">pages</span><span class="p">))</span>
|
||
<span class="n">d</span><span class="o">.</span><span class="n">addCallback</span><span class="p">(</span><span class="nb">print</span><span class="p">)</span>
|
||
<span class="k">return</span> <span class="n">d</span>
|
||
|
||
<span class="n">react</span><span class="p">(</span><span class="n">main</span><span class="p">)</span>
|
||
</pre></div>
|
||
</div>
|
||
<p>@since: Twisted 21.2.0</p>
|
||
<p>@param coro: The coroutine object to schedule.</p>
|
||
<p>@raise ValueError: If C{coro} is not a coroutine or generator.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.Deferred.fromFuture">
|
||
<em class="property"><span class="k"><span class="pre">classmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">fromFuture</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">future</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Future</span><span class="p"><span class="pre">[</span></span><span class="pre">_SelfResultT</span><span class="p"><span class="pre">]</span></span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">→</span> <span class="sig-return-typehint"><a class="reference internal" href="#evennia.scripts.scripts.Deferred" title="twisted.internet.defer.Deferred"><span class="pre">Deferred</span></a><span class="p"><span class="pre">[</span></span><span class="pre">_SelfResultT</span><span class="p"><span class="pre">]</span></span></span></span><a class="reference internal" href="../_modules/twisted/internet/defer.html#Deferred.fromFuture"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.scripts.Deferred.fromFuture" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Adapt a L{Future} to a L{Deferred}.</p>
|
||
<dl class="simple">
|
||
<dt>@note: This creates a L{Deferred} from a L{Future}, I{not} from</dt><dd><p>a C{coroutine}; in other words, you will need to call
|
||
L{asyncio.ensure_future}, L{asyncio.loop.create_task} or create an
|
||
L{asyncio.Task} yourself to get from a C{coroutine} to a
|
||
L{Future} if what you have is an awaitable coroutine and
|
||
not a L{Future}. (The length of this list of techniques is
|
||
exactly why we have left it to the caller!)</p>
|
||
</dd>
|
||
</dl>
|
||
<p>@since: Twisted 17.5.0</p>
|
||
<p>@param future: The L{Future} to adapt.</p>
|
||
<p>@return: A L{Deferred} which will fire when the L{Future} fires.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.Deferred.pause">
|
||
<span class="sig-name descname"><span class="pre">pause</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">→</span> <span class="sig-return-typehint"><span class="pre">None</span></span></span><a class="reference internal" href="../_modules/twisted/internet/defer.html#Deferred.pause"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.scripts.Deferred.pause" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Stop processing on a L{Deferred} until L{unpause}() is called.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.Deferred.paused">
|
||
<span class="sig-name descname"><span class="pre">paused</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">0</span></em><a class="headerlink" href="#evennia.scripts.scripts.Deferred.paused" title="Link to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.Deferred.unpause">
|
||
<span class="sig-name descname"><span class="pre">unpause</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">→</span> <span class="sig-return-typehint"><span class="pre">None</span></span></span><a class="reference internal" href="../_modules/twisted/internet/defer.html#Deferred.unpause"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.scripts.Deferred.unpause" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Process all callbacks made since L{pause}() was called.</p>
|
||
</dd></dl>
|
||
|
||
</dd></dl>
|
||
|
||
<dl class="py class">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ExtendedLoopingCall">
|
||
<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.scripts.scripts.</span></span><span class="sig-name descname"><span class="pre">ExtendedLoopingCall</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">f</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Callable</span><span class="p"><span class="pre">[</span></span><span class="p"><span class="pre">[</span></span><span class="p"><span class="pre">...</span></span><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">object</span><span class="p"><span class="pre">]</span></span></span></em>, <em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">a</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">object</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kw</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">object</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/scripts/scripts.html#ExtendedLoopingCall"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.scripts.ExtendedLoopingCall" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Bases: <a class="reference internal" href="#evennia.scripts.scripts.LoopingCall" title="twisted.internet.task.LoopingCall"><code class="xref py py-class docutils literal notranslate"><span class="pre">LoopingCall</span></code></a></p>
|
||
<p>Custom child of LoopingCall that can start at a delay different than
|
||
<strong>self.interval</strong> and self.count=0. This allows it to support pausing
|
||
by resuming at a later period.</p>
|
||
<dl class="py attribute">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ExtendedLoopingCall.start_delay">
|
||
<span class="sig-name descname"><span class="pre">start_delay</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">None</span></em><a class="headerlink" href="#evennia.scripts.scripts.ExtendedLoopingCall.start_delay" title="Link to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ExtendedLoopingCall.callcount">
|
||
<span class="sig-name descname"><span class="pre">callcount</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">0</span></em><a class="headerlink" href="#evennia.scripts.scripts.ExtendedLoopingCall.callcount" title="Link to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ExtendedLoopingCall.start">
|
||
<span class="sig-name descname"><span class="pre">start</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">interval</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">now</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">start_delay</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">count_start</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/scripts/scripts.html#ExtendedLoopingCall.start"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.scripts.ExtendedLoopingCall.start" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Start running function every interval seconds.</p>
|
||
<p>This overloads the LoopingCall default by offering the
|
||
start_delay keyword and ability to repeat.</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>interval</strong> (<em>int</em>) – Repeat interval in seconds.</p></li>
|
||
<li><p><strong>now</strong> (<em>bool</em><em>, </em><em>optional</em>) – Whether to start immediately or after
|
||
<strong>start_delay</strong> seconds.</p></li>
|
||
<li><p><strong>start_delay</strong> (<em>int</em><em>, </em><em>optional</em>) – This only applies is <strong>now=False</strong>. It gives
|
||
number of seconds to wait before starting. If <strong>None</strong>, use
|
||
<strong>interval</strong> as this value instead. Internally, this is used as a
|
||
way to start with a variable start time after a pause.</p></li>
|
||
<li><p><strong>count_start</strong> (<em>int</em>) – Number of repeats to start at. The count
|
||
goes up every time the system repeats. This is used to
|
||
implement something repeating <strong>N</strong> number of times etc.</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-even">Raises<span class="colon">:</span></dt>
|
||
<dd class="field-even"><ul class="simple">
|
||
<li><p><strong>AssertError</strong> – if trying to start a task which is already running.</p></li>
|
||
<li><p><strong>ValueError</strong> – If interval is set to an invalid value < 0.</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
<p class="rubric">Notes</p>
|
||
<p>As opposed to Twisted’s inbuilt count mechanism, this
|
||
system will count also if force_repeat() was called rather
|
||
than just the number of <strong>interval</strong> seconds since the start.
|
||
This allows us to force-step through a limited number of
|
||
steps if we want.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ExtendedLoopingCall.force_repeat">
|
||
<span class="sig-name descname"><span class="pre">force_repeat</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/scripts/scripts.html#ExtendedLoopingCall.force_repeat"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.scripts.ExtendedLoopingCall.force_repeat" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Force-fire the callback</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Raises<span class="colon">:</span></dt>
|
||
<dd class="field-odd"><p><strong>AssertionError</strong> – When trying to force a task that is not
|
||
running.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ExtendedLoopingCall.next_call_time">
|
||
<span class="sig-name descname"><span class="pre">next_call_time</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/scripts/scripts.html#ExtendedLoopingCall.next_call_time"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.scripts.ExtendedLoopingCall.next_call_time" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Get the next call time. This also takes the eventual effect
|
||
of start_delay into account.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Returns<span class="colon">:</span></dt>
|
||
<dd class="field-odd"><p><p><em>int or None</em> –</p>
|
||
<dl class="simple">
|
||
<dt>The time in seconds until the next call. This</dt><dd><p>takes <strong>start_delay</strong> into account. Returns <strong>None</strong> if
|
||
the task is not running.</p>
|
||
</dd>
|
||
</dl>
|
||
</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
</dd></dl>
|
||
|
||
<dl class="py class">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.LoopingCall">
|
||
<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.scripts.scripts.</span></span><span class="sig-name descname"><span class="pre">LoopingCall</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">f</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Callable</span><span class="p"><span class="pre">[</span></span><span class="p"><span class="pre">[</span></span><span class="p"><span class="pre">...</span></span><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">object</span><span class="p"><span class="pre">]</span></span></span></em>, <em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">a</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">object</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kw</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">object</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/twisted/internet/task.html#LoopingCall"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.scripts.LoopingCall" 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>Call a function repeatedly.</p>
|
||
<p>If C{f} returns a deferred, rescheduling will not take place until the
|
||
deferred has fired. The result value is ignored.</p>
|
||
<p>@ivar f: The function to call.
|
||
@ivar a: A tuple of arguments to pass the function.
|
||
@ivar kw: A dictionary of keyword arguments to pass to the function.
|
||
@ivar clock: A provider of</p>
|
||
<blockquote>
|
||
<div><p>L{twisted.internet.interfaces.IReactorTime}. The default is
|
||
L{twisted.internet.reactor}. Feel free to set this to
|
||
something else, but it probably ought to be set <em>before</em>
|
||
calling L{start}.</p>
|
||
</div></blockquote>
|
||
<dl class="simple">
|
||
<dt>@ivar running: A flag which is C{True} while C{f} is scheduled to be called</dt><dd><p>(or is currently being called). It is set to C{True} when L{start} is
|
||
called and set to C{False} when L{stop} is called or if C{f} raises an
|
||
exception. In either case, it will be C{False} by the time the
|
||
C{Deferred} returned by L{start} fires its callback or errback.</p>
|
||
</dd>
|
||
<dt>@ivar _realLastTime: When counting skips, the time at which the skip</dt><dd><p>counter was last invoked.</p>
|
||
</dd>
|
||
<dt>@ivar _runAtStart: A flag indicating whether the ‘now’ argument was passed</dt><dd><p>to L{LoopingCall.start}.</p>
|
||
</dd>
|
||
</dl>
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.LoopingCall.__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">f</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Callable</span><span class="p"><span class="pre">[</span></span><span class="p"><span class="pre">[</span></span><span class="p"><span class="pre">...</span></span><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">object</span><span class="p"><span class="pre">]</span></span></span></em>, <em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">a</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">object</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kw</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">object</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">→</span> <span class="sig-return-typehint"><span class="pre">None</span></span></span><a class="reference internal" href="../_modules/twisted/internet/task.html#LoopingCall.__init__"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.scripts.LoopingCall.__init__" title="Link to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.LoopingCall.call">
|
||
<span class="sig-name descname"><span class="pre">call</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre"><InterfaceClass</span> <span class="pre">twisted.internet.interfaces.IDelayedCall></span> <span class="pre">|</span> <span class="pre">None</span></em><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">None</span></em><a class="headerlink" href="#evennia.scripts.scripts.LoopingCall.call" title="Link to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="py property">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.LoopingCall.deferred">
|
||
<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">deferred</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><a class="reference internal" href="#evennia.scripts.scripts.Deferred" title="twisted.internet.defer.Deferred"><span class="pre">Deferred</span></a><span class="p"><span class="pre">[</span></span><a class="reference internal" href="#evennia.scripts.scripts.LoopingCall" title="twisted.internet.task.LoopingCall"><span class="pre">LoopingCall</span></a><span class="p"><span class="pre">]</span></span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">None</span></em><a class="headerlink" href="#evennia.scripts.scripts.LoopingCall.deferred" title="Link to this definition">¶</a></dt>
|
||
<dd><p>DEPRECATED. L{Deferred} fired when loop stops or fails.</p>
|
||
<p>Use the L{Deferred} returned by L{LoopingCall.start}.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.LoopingCall.interval">
|
||
<span class="sig-name descname"><span class="pre">interval</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">float</span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">None</span></em><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">None</span></em><a class="headerlink" href="#evennia.scripts.scripts.LoopingCall.interval" title="Link to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.LoopingCall.reset">
|
||
<span class="sig-name descname"><span class="pre">reset</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">→</span> <span class="sig-return-typehint"><span class="pre">None</span></span></span><a class="reference internal" href="../_modules/twisted/internet/task.html#LoopingCall.reset"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.scripts.LoopingCall.reset" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Skip the next iteration and reset the timer.</p>
|
||
<p>@since: 11.1</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.LoopingCall.running">
|
||
<span class="sig-name descname"><span class="pre">running</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">False</span></em><a class="headerlink" href="#evennia.scripts.scripts.LoopingCall.running" title="Link to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.LoopingCall.start">
|
||
<span class="sig-name descname"><span class="pre">start</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">interval</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">float</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">now</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">True</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">→</span> <span class="sig-return-typehint"><a class="reference internal" href="#evennia.scripts.scripts.Deferred" title="twisted.internet.defer.Deferred"><span class="pre">Deferred</span></a><span class="p"><span class="pre">[</span></span><a class="reference internal" href="#evennia.scripts.scripts.LoopingCall" title="twisted.internet.task.LoopingCall"><span class="pre">LoopingCall</span></a><span class="p"><span class="pre">]</span></span></span></span><a class="reference internal" href="../_modules/twisted/internet/task.html#LoopingCall.start"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.scripts.LoopingCall.start" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Start running function every interval seconds.</p>
|
||
<p>@param interval: The number of seconds between calls. May be
|
||
less than one. Precision will depend on the underlying
|
||
platform, the available hardware, and the load on the system.</p>
|
||
<p>@param now: If True, run this call right now. Otherwise, wait
|
||
until the interval has elapsed before beginning.</p>
|
||
<p>@return: A Deferred whose callback will be invoked with
|
||
C{self} when C{self.stop} is called, or whose errback will be
|
||
invoked when the function raises an exception or returned a
|
||
deferred that has its errback invoked.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.LoopingCall.starttime">
|
||
<span class="sig-name descname"><span class="pre">starttime</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">float</span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">None</span></em><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">None</span></em><a class="headerlink" href="#evennia.scripts.scripts.LoopingCall.starttime" title="Link to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.LoopingCall.stop">
|
||
<span class="sig-name descname"><span class="pre">stop</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">→</span> <span class="sig-return-typehint"><span class="pre">None</span></span></span><a class="reference internal" href="../_modules/twisted/internet/task.html#LoopingCall.stop"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.scripts.LoopingCall.stop" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Stop running function.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.LoopingCall.withCount">
|
||
<em class="property"><span class="k"><span class="pre">classmethod</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">withCount</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">countCallable</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Callable</span><span class="p"><span class="pre">[</span></span><span class="p"><span class="pre">[</span></span><span class="pre">int</span><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">object</span><span class="p"><span class="pre">]</span></span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">→</span> <span class="sig-return-typehint"><a class="reference internal" href="#evennia.scripts.scripts.LoopingCall" title="twisted.internet.task.LoopingCall"><span class="pre">LoopingCall</span></a></span></span><a class="reference internal" href="../_modules/twisted/internet/task.html#LoopingCall.withCount"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.scripts.LoopingCall.withCount" title="Link to this definition">¶</a></dt>
|
||
<dd><p>An alternate constructor for L{LoopingCall} that makes available the
|
||
number of calls which should have occurred since it was last invoked.</p>
|
||
<p>Note that this number is an C{int} value; It represents the discrete
|
||
number of calls that should have been made. For example, if you are
|
||
using a looping call to display an animation with discrete frames, this
|
||
number would be the number of frames to advance.</p>
|
||
<p>The count is normally 1, but can be higher. For example, if the reactor
|
||
is blocked and takes too long to invoke the L{LoopingCall}, a Deferred
|
||
returned from a previous call is not fired before an interval has
|
||
elapsed, or if the callable itself blocks for longer than an interval,
|
||
preventing I{itself} from being called.</p>
|
||
<p>When running with an interval of 0, count will be always 1.</p>
|
||
<dl class="simple">
|
||
<dt>@param countCallable: A callable that will be invoked each time the</dt><dd><p>resulting LoopingCall is run, with an integer specifying the number
|
||
of calls that should have been invoked.</p>
|
||
</dd>
|
||
<dt>@return: An instance of L{LoopingCall} with call counting enabled,</dt><dd><p>which provides the count as the first positional argument.</p>
|
||
</dd>
|
||
</dl>
|
||
<p>@since: 9.0</p>
|
||
</dd></dl>
|
||
|
||
</dd></dl>
|
||
|
||
<dl class="py class">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ScriptBase">
|
||
<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.scripts.scripts.</span></span><span class="sig-name descname"><span class="pre">ScriptBase</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/scripts/scripts.html#ScriptBase"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.scripts.ScriptBase" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Bases: <a class="reference internal" href="evennia.scripts.models.html#evennia.scripts.models.ScriptDB" title="evennia.scripts.models.ScriptDB"><code class="xref py py-class docutils literal notranslate"><span class="pre">ScriptDB</span></code></a></p>
|
||
<p>Base class for scripts. Don’t inherit from this, inherit from the
|
||
class <strong>DefaultScript</strong> below instead.</p>
|
||
<p>This handles the timer-component of the Script.</p>
|
||
<dl class="py attribute">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ScriptBase.objects">
|
||
<span class="sig-name descname"><span class="pre">objects</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre"><evennia.scripts.manager.ScriptManager</span> <span class="pre">object></span></em><a class="headerlink" href="#evennia.scripts.scripts.ScriptBase.objects" title="Link to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ScriptBase.at_idmapper_flush">
|
||
<span class="sig-name descname"><span class="pre">at_idmapper_flush</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/scripts/scripts.html#ScriptBase.at_idmapper_flush"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.scripts.ScriptBase.at_idmapper_flush" title="Link to this definition">¶</a></dt>
|
||
<dd><p>If we’re flushing this object, make sure the LoopingCall is gone too.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ScriptBase.at_first_save">
|
||
<span class="sig-name descname"><span class="pre">at_first_save</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/scripts/scripts.html#ScriptBase.at_first_save"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.scripts.ScriptBase.at_first_save" title="Link to this definition">¶</a></dt>
|
||
<dd><p>This is called after very first time this object is saved.
|
||
Generally, you don’t need to overload this, but only the hooks
|
||
called by this method.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
|
||
<dd class="field-odd"><p><strong>**kwargs</strong> (<em>dict</em>) – Arbitrary, optional arguments for users
|
||
overriding the call (unused by default).</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ScriptBase.delete">
|
||
<span class="sig-name descname"><span class="pre">delete</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/scripts/scripts.html#ScriptBase.delete"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.scripts.ScriptBase.delete" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Delete the Script. Normally stops any timer task. This fires at_script_delete before
|
||
deletion.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Returns<span class="colon">:</span></dt>
|
||
<dd class="field-odd"><p><p><em>bool</em> –</p>
|
||
<dl class="simple">
|
||
<dt>If deletion was successful or not. Only time this can fail would be if</dt><dd><p>the script was already previously deleted, or <strong>at_script_delete</strong> returns
|
||
False.</p>
|
||
</dd>
|
||
</dl>
|
||
</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ScriptBase.basetype_setup">
|
||
<span class="sig-name descname"><span class="pre">basetype_setup</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/scripts/scripts.html#ScriptBase.basetype_setup"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.scripts.ScriptBase.basetype_setup" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Changes fundamental aspects of the type. Usually changes are made in at_script creation
|
||
instead.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ScriptBase.at_init">
|
||
<span class="sig-name descname"><span class="pre">at_init</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/scripts/scripts.html#ScriptBase.at_init"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.scripts.ScriptBase.at_init" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Called when the Script is cached in the idmapper. This is usually more reliable
|
||
than overriding <strong>__init__</strong> since the latter can be called at unexpected times.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ScriptBase.at_script_creation">
|
||
<span class="sig-name descname"><span class="pre">at_script_creation</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/scripts/scripts.html#ScriptBase.at_script_creation"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.scripts.ScriptBase.at_script_creation" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Should be overridden in child.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ScriptBase.at_script_delete">
|
||
<span class="sig-name descname"><span class="pre">at_script_delete</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/scripts/scripts.html#ScriptBase.at_script_delete"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.scripts.ScriptBase.at_script_delete" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Called when script is deleted, before the script timer stops.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Returns<span class="colon">:</span></dt>
|
||
<dd class="field-odd"><p><em>bool</em> – If False, deletion is aborted.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ScriptBase.is_valid">
|
||
<span class="sig-name descname"><span class="pre">is_valid</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/scripts/scripts.html#ScriptBase.is_valid"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.scripts.ScriptBase.is_valid" title="Link to this definition">¶</a></dt>
|
||
<dd><p>If returning False, <strong>at_repeat</strong> will not be called and timer will stop
|
||
updating.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ScriptBase.at_repeat">
|
||
<span class="sig-name descname"><span class="pre">at_repeat</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/scripts/scripts.html#ScriptBase.at_repeat"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.scripts.ScriptBase.at_repeat" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Called repeatedly every <strong>interval</strong> seconds, once <strong>.start()</strong> has
|
||
been called on the Script at least once.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
|
||
<dd class="field-odd"><p><strong>**kwargs</strong> (<em>dict</em>) – Arbitrary, optional arguments for users
|
||
overriding the call (unused by default).</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ScriptBase.at_start">
|
||
<span class="sig-name descname"><span class="pre">at_start</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/scripts/scripts.html#ScriptBase.at_start"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.scripts.ScriptBase.at_start" title="Link to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ScriptBase.at_pause">
|
||
<span class="sig-name descname"><span class="pre">at_pause</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/scripts/scripts.html#ScriptBase.at_pause"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.scripts.ScriptBase.at_pause" title="Link to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ScriptBase.at_stop">
|
||
<span class="sig-name descname"><span class="pre">at_stop</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/scripts/scripts.html#ScriptBase.at_stop"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.scripts.ScriptBase.at_stop" title="Link to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ScriptBase.start">
|
||
<span class="sig-name descname"><span class="pre">start</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">interval</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">start_delay</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">repeats</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="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/scripts/scripts.html#ScriptBase.start"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.scripts.ScriptBase.start" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Start/Unpause timer component, optionally with new values. If given,
|
||
this will update the Script’s fields. This will start <strong>at_repeat</strong> being
|
||
called every <strong>interval</strong> seconds.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Keyword Arguments<span class="colon">:</span></dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>interval</strong> (<em>int</em>) – How often to fire <strong>at_repeat</strong> in seconds.</p></li>
|
||
<li><p><strong>start_delay</strong> (<em>int</em>) – If the start of ticking should be delayed and by how much.</p></li>
|
||
<li><p><strong>repeats</strong> (<em>int</em>) – How many repeats. 0 for infinite repeats.</p></li>
|
||
<li><p><strong>**kwargs</strong> – Optional (default unused) kwargs passed on into the <strong>at_start</strong> hook.</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
<p class="rubric">Notes</p>
|
||
<p>If setting the <strong>start-delay</strong> of a <em>paused</em> Script, the Script will
|
||
restart exactly after that new start-delay, ignoring the time it
|
||
was paused at. If only changing the <strong>interval</strong>, the Script will
|
||
come out of pause comparing the time it spent in the <em>old</em> interval
|
||
with the <em>new</em> interval in order to determine when next to fire.</p>
|
||
<p class="rubric">Examples</p>
|
||
<ul class="simple">
|
||
<li><p>Script previously had an interval of 10s and was paused 5s into that interval.
|
||
Script is now restarted with a 20s interval. It will next fire after 15s.</p></li>
|
||
<li><p>Same Script is restarted with a 3s interval. It will fire immediately.</p></li>
|
||
</ul>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ScriptBase.update">
|
||
<span class="sig-name descname"><span class="pre">update</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">interval</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">start_delay</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">repeats</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="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#evennia.scripts.scripts.ScriptBase.update" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Start/Unpause timer component, optionally with new values. If given,
|
||
this will update the Script’s fields. This will start <strong>at_repeat</strong> being
|
||
called every <strong>interval</strong> seconds.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Keyword Arguments<span class="colon">:</span></dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>interval</strong> (<em>int</em>) – How often to fire <strong>at_repeat</strong> in seconds.</p></li>
|
||
<li><p><strong>start_delay</strong> (<em>int</em>) – If the start of ticking should be delayed and by how much.</p></li>
|
||
<li><p><strong>repeats</strong> (<em>int</em>) – How many repeats. 0 for infinite repeats.</p></li>
|
||
<li><p><strong>**kwargs</strong> – Optional (default unused) kwargs passed on into the <strong>at_start</strong> hook.</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
<p class="rubric">Notes</p>
|
||
<p>If setting the <strong>start-delay</strong> of a <em>paused</em> Script, the Script will
|
||
restart exactly after that new start-delay, ignoring the time it
|
||
was paused at. If only changing the <strong>interval</strong>, the Script will
|
||
come out of pause comparing the time it spent in the <em>old</em> interval
|
||
with the <em>new</em> interval in order to determine when next to fire.</p>
|
||
<p class="rubric">Examples</p>
|
||
<ul class="simple">
|
||
<li><p>Script previously had an interval of 10s and was paused 5s into that interval.
|
||
Script is now restarted with a 20s interval. It will next fire after 15s.</p></li>
|
||
<li><p>Same Script is restarted with a 3s interval. It will fire immediately.</p></li>
|
||
</ul>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ScriptBase.stop">
|
||
<span class="sig-name descname"><span class="pre">stop</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/scripts/scripts.html#ScriptBase.stop"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.scripts.ScriptBase.stop" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Stop the Script’s timer component. This will not delete the Sctipt,
|
||
just stop the regular firing of <strong>at_repeat</strong>. Running <strong>.start()</strong> will
|
||
start the timer anew, optionally with new settings..</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
|
||
<dd class="field-odd"><p><strong>**kwargs</strong> – Optional (default unused) kwargs passed on into the <strong>at_stop</strong> hook.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ScriptBase.pause">
|
||
<span class="sig-name descname"><span class="pre">pause</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/scripts/scripts.html#ScriptBase.pause"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.scripts.ScriptBase.pause" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Manually the Script’s timer component manually.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
|
||
<dd class="field-odd"><p><strong>**kwargs</strong> – Optional (default unused) kwargs passed on into the <strong>at_pause</strong> hook.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ScriptBase.unpause">
|
||
<span class="sig-name descname"><span class="pre">unpause</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/scripts/scripts.html#ScriptBase.unpause"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.scripts.ScriptBase.unpause" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Manually unpause a Paused Script.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
|
||
<dd class="field-odd"><p><strong>**kwargs</strong> – Optional (default unused) kwargs passed on into the <strong>at_start</strong> hook.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ScriptBase.time_until_next_repeat">
|
||
<span class="sig-name descname"><span class="pre">time_until_next_repeat</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/scripts/scripts.html#ScriptBase.time_until_next_repeat"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.scripts.ScriptBase.time_until_next_repeat" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Get time until the script fires it <strong>at_repeat</strong> hook again.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Returns<span class="colon">:</span></dt>
|
||
<dd class="field-odd"><p><p><em>int or None</em> –</p>
|
||
<dl class="simple">
|
||
<dt>Time in seconds until the script runs again.</dt><dd><p>If not a timed script, return <strong>None</strong>.</p>
|
||
</dd>
|
||
</dl>
|
||
</p>
|
||
</dd>
|
||
</dl>
|
||
<p class="rubric">Notes</p>
|
||
<p>This hook is not used in any way by the script’s stepping
|
||
system; it’s only here for the user to be able to check in
|
||
on their scripts and when they will next be run.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ScriptBase.remaining_repeats">
|
||
<span class="sig-name descname"><span class="pre">remaining_repeats</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/scripts/scripts.html#ScriptBase.remaining_repeats"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.scripts.ScriptBase.remaining_repeats" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Get the number of returning repeats for limited Scripts.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Returns<span class="colon">:</span></dt>
|
||
<dd class="field-odd"><p><p><em>int or None</em> –</p>
|
||
<dl class="simple">
|
||
<dt>The number of repeats remaining until the Script</dt><dd><p>stops. Returns <strong>None</strong> if it has unlimited repeats.</p>
|
||
</dd>
|
||
</dl>
|
||
</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ScriptBase.reset_callcount">
|
||
<span class="sig-name descname"><span class="pre">reset_callcount</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">value</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/scripts/scripts.html#ScriptBase.reset_callcount"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.scripts.ScriptBase.reset_callcount" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Reset the count of the number of calls done.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
|
||
<dd class="field-odd"><p><strong>value</strong> (<em>int</em><em>, </em><em>optional</em>) – The repeat value to reset to. Default
|
||
is to set it all the way back to 0.</p>
|
||
</dd>
|
||
</dl>
|
||
<p class="rubric">Notes</p>
|
||
<p>This is only useful if repeats != 0.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ScriptBase.force_repeat">
|
||
<span class="sig-name descname"><span class="pre">force_repeat</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/scripts/scripts.html#ScriptBase.force_repeat"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.scripts.ScriptBase.force_repeat" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Fire a premature triggering of the script callback. This
|
||
will reset the timer and count down repeats as if the script
|
||
had fired normally.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py exception">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ScriptBase.DoesNotExist">
|
||
<em class="property"><span class="k"><span class="pre">exception</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">DoesNotExist</span></span><a class="headerlink" href="#evennia.scripts.scripts.ScriptBase.DoesNotExist" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Bases: <a class="reference internal" href="evennia.scripts.models.html#evennia.scripts.models.ScriptDB.DoesNotExist" title="evennia.scripts.models.ScriptDB.DoesNotExist"><code class="xref py py-class docutils literal notranslate"><span class="pre">DoesNotExist</span></code></a></p>
|
||
</dd></dl>
|
||
|
||
<dl class="py exception">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ScriptBase.MultipleObjectsReturned">
|
||
<em class="property"><span class="k"><span class="pre">exception</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">MultipleObjectsReturned</span></span><a class="headerlink" href="#evennia.scripts.scripts.ScriptBase.MultipleObjectsReturned" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Bases: <a class="reference internal" href="evennia.scripts.models.html#evennia.scripts.models.ScriptDB.MultipleObjectsReturned" title="evennia.scripts.models.ScriptDB.MultipleObjectsReturned"><code class="xref py py-class docutils literal notranslate"><span class="pre">MultipleObjectsReturned</span></code></a></p>
|
||
</dd></dl>
|
||
|
||
<dl class="py exception">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ScriptBase.NotUpdated">
|
||
<em class="property"><span class="k"><span class="pre">exception</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">NotUpdated</span></span><a class="headerlink" href="#evennia.scripts.scripts.ScriptBase.NotUpdated" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Bases: <a class="reference internal" href="evennia.scripts.models.html#evennia.scripts.models.ScriptDB.NotUpdated" title="evennia.scripts.models.ScriptDB.NotUpdated"><code class="xref py py-class docutils literal notranslate"><span class="pre">NotUpdated</span></code></a></p>
|
||
</dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ScriptBase.path">
|
||
<span class="sig-name descname"><span class="pre">path</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'evennia.scripts.scripts.ScriptBase'</span></em><a class="headerlink" href="#evennia.scripts.scripts.ScriptBase.path" title="Link to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ScriptBase.typename">
|
||
<span class="sig-name descname"><span class="pre">typename</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'ScriptBase'</span></em><a class="headerlink" href="#evennia.scripts.scripts.ScriptBase.typename" title="Link to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
</dd></dl>
|
||
|
||
<dl class="py class">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ScriptDB">
|
||
<em class="property"><span class="k"><span class="pre">class</span></span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">evennia.scripts.scripts.</span></span><span class="sig-name descname"><span class="pre">ScriptDB</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/scripts/models.html#ScriptDB"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.scripts.ScriptDB" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Bases: <a class="reference internal" href="evennia.typeclasses.models.html#evennia.typeclasses.models.TypedObject" title="evennia.typeclasses.models.TypedObject"><code class="xref py py-class docutils literal notranslate"><span class="pre">TypedObject</span></code></a></p>
|
||
<p>The Script database representation.</p>
|
||
<dl class="simple">
|
||
<dt>The TypedObject supplies the following (inherited) properties:</dt><dd><p>key - main name
|
||
name - alias for key
|
||
typeclass_path - the path to the decorating typeclass
|
||
typeclass - auto-linked typeclass
|
||
date_created - time stamp of object creation
|
||
permissions - perm strings
|
||
dbref - #id of object
|
||
db - persistent attribute storage
|
||
ndb - non-persistent attribute storage</p>
|
||
</dd>
|
||
<dt>The ScriptDB adds the following properties:</dt><dd><p>desc - optional description of script
|
||
obj - the object the script is linked to, if any
|
||
account - the account the script is linked to (exclusive with obj)
|
||
interval - how often script should run
|
||
start_delay - if the script should start repeating right away
|
||
repeats - how many times the script should repeat
|
||
persistent - if script should survive a server reboot
|
||
is_active - bool if script is currently running</p>
|
||
</dd>
|
||
</dl>
|
||
<dl class="py exception">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ScriptDB.DoesNotExist">
|
||
<em class="property"><span class="k"><span class="pre">exception</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">DoesNotExist</span></span><a class="headerlink" href="#evennia.scripts.scripts.ScriptDB.DoesNotExist" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Bases: <a class="reference internal" href="evennia.utils.dbserialize.html#evennia.utils.dbserialize.ObjectDoesNotExist" title="django.core.exceptions.ObjectDoesNotExist"><code class="xref py py-class docutils literal notranslate"><span class="pre">ObjectDoesNotExist</span></code></a></p>
|
||
</dd></dl>
|
||
|
||
<dl class="py exception">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ScriptDB.MultipleObjectsReturned">
|
||
<em class="property"><span class="k"><span class="pre">exception</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">MultipleObjectsReturned</span></span><a class="headerlink" href="#evennia.scripts.scripts.ScriptDB.MultipleObjectsReturned" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">MultipleObjectsReturned</span></code></p>
|
||
</dd></dl>
|
||
|
||
<dl class="py exception">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ScriptDB.NotUpdated">
|
||
<em class="property"><span class="k"><span class="pre">exception</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">NotUpdated</span></span><a class="headerlink" href="#evennia.scripts.scripts.ScriptDB.NotUpdated" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">ObjectNotUpdated</span></code>, <code class="xref py py-class docutils literal notranslate"><span class="pre">DatabaseError</span></code></p>
|
||
</dd></dl>
|
||
|
||
<dl class="py property">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ScriptDB.account">
|
||
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">account</span></span><a class="headerlink" href="#evennia.scripts.scripts.ScriptDB.account" title="Link to this definition">¶</a></dt>
|
||
<dd><p>A wrapper for getting database field <strong>db_account</strong>.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ScriptDB.db_account">
|
||
<span class="sig-name descname"><span class="pre">db_account</span></span><a class="headerlink" href="#evennia.scripts.scripts.ScriptDB.db_account" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Accessor to the related object on the forward side of a many-to-one or
|
||
one-to-one (via ForwardOneToOneDescriptor subclass) relation.</p>
|
||
<p>In the example:</p>
|
||
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="k">class</span><span class="w"> </span><span class="nc">Child</span><span class="p">(</span><span class="n">Model</span><span class="p">):</span>
|
||
<span class="n">parent</span> <span class="o">=</span> <span class="n">ForeignKey</span><span class="p">(</span><span class="n">Parent</span><span class="p">,</span> <span class="n">related_name</span><span class="o">=</span><span class="s1">'children'</span><span class="p">)</span>
|
||
</pre></div>
|
||
</div>
|
||
<p><strong>**Child.parent**</strong> is a <strong>**ForwardManyToOneDescriptor**</strong> instance.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ScriptDB.db_account_id">
|
||
<span class="sig-name descname"><span class="pre">db_account_id</span></span><a class="headerlink" href="#evennia.scripts.scripts.ScriptDB.db_account_id" title="Link to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ScriptDB.db_attributes">
|
||
<span class="sig-name descname"><span class="pre">db_attributes</span></span><a class="headerlink" href="#evennia.scripts.scripts.ScriptDB.db_attributes" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Accessor to the related objects manager on the forward and reverse sides of
|
||
a many-to-many relation.</p>
|
||
<p>In the example:</p>
|
||
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="k">class</span><span class="w"> </span><span class="nc">Pizza</span><span class="p">(</span><span class="n">Model</span><span class="p">):</span>
|
||
<span class="n">toppings</span> <span class="o">=</span> <span class="n">ManyToManyField</span><span class="p">(</span><span class="n">Topping</span><span class="p">,</span> <span class="n">related_name</span><span class="o">=</span><span class="s1">'pizzas'</span><span class="p">)</span>
|
||
</pre></div>
|
||
</div>
|
||
<p><strong>**Pizza.toppings**</strong> and <strong>**Topping.pizzas**</strong> are <strong>**ManyToManyDescriptor**</strong>
|
||
instances.</p>
|
||
<p>Most of the implementation is delegated to a dynamically defined manager
|
||
class built by <strong>**create_forward_many_to_many_manager()**</strong> defined below.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ScriptDB.db_date_created">
|
||
<span class="sig-name descname"><span class="pre">db_date_created</span></span><a class="headerlink" href="#evennia.scripts.scripts.ScriptDB.db_date_created" title="Link to this definition">¶</a></dt>
|
||
<dd><p>A wrapper for a deferred-loading field. When the value is read from this
|
||
object the first time, the query is executed.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ScriptDB.db_desc">
|
||
<span class="sig-name descname"><span class="pre">db_desc</span></span><a class="headerlink" href="#evennia.scripts.scripts.ScriptDB.db_desc" title="Link to this definition">¶</a></dt>
|
||
<dd><p>A wrapper for a deferred-loading field. When the value is read from this
|
||
object the first time, the query is executed.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ScriptDB.db_interval">
|
||
<span class="sig-name descname"><span class="pre">db_interval</span></span><a class="headerlink" href="#evennia.scripts.scripts.ScriptDB.db_interval" title="Link to this definition">¶</a></dt>
|
||
<dd><p>A wrapper for a deferred-loading field. When the value is read from this
|
||
object the first time, the query is executed.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ScriptDB.db_is_active">
|
||
<span class="sig-name descname"><span class="pre">db_is_active</span></span><a class="headerlink" href="#evennia.scripts.scripts.ScriptDB.db_is_active" title="Link to this definition">¶</a></dt>
|
||
<dd><p>A wrapper for a deferred-loading field. When the value is read from this
|
||
object the first time, the query is executed.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ScriptDB.db_key">
|
||
<span class="sig-name descname"><span class="pre">db_key</span></span><a class="headerlink" href="#evennia.scripts.scripts.ScriptDB.db_key" title="Link to this definition">¶</a></dt>
|
||
<dd><p>A wrapper for a deferred-loading field. When the value is read from this
|
||
object the first time, the query is executed.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ScriptDB.db_lock_storage">
|
||
<span class="sig-name descname"><span class="pre">db_lock_storage</span></span><a class="headerlink" href="#evennia.scripts.scripts.ScriptDB.db_lock_storage" title="Link to this definition">¶</a></dt>
|
||
<dd><p>A wrapper for a deferred-loading field. When the value is read from this
|
||
object the first time, the query is executed.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ScriptDB.db_obj">
|
||
<span class="sig-name descname"><span class="pre">db_obj</span></span><a class="headerlink" href="#evennia.scripts.scripts.ScriptDB.db_obj" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Accessor to the related object on the forward side of a many-to-one or
|
||
one-to-one (via ForwardOneToOneDescriptor subclass) relation.</p>
|
||
<p>In the example:</p>
|
||
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="k">class</span><span class="w"> </span><span class="nc">Child</span><span class="p">(</span><span class="n">Model</span><span class="p">):</span>
|
||
<span class="n">parent</span> <span class="o">=</span> <span class="n">ForeignKey</span><span class="p">(</span><span class="n">Parent</span><span class="p">,</span> <span class="n">related_name</span><span class="o">=</span><span class="s1">'children'</span><span class="p">)</span>
|
||
</pre></div>
|
||
</div>
|
||
<p><strong>**Child.parent**</strong> is a <strong>**ForwardManyToOneDescriptor**</strong> instance.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ScriptDB.db_obj_id">
|
||
<span class="sig-name descname"><span class="pre">db_obj_id</span></span><a class="headerlink" href="#evennia.scripts.scripts.ScriptDB.db_obj_id" title="Link to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ScriptDB.db_persistent">
|
||
<span class="sig-name descname"><span class="pre">db_persistent</span></span><a class="headerlink" href="#evennia.scripts.scripts.ScriptDB.db_persistent" title="Link to this definition">¶</a></dt>
|
||
<dd><p>A wrapper for a deferred-loading field. When the value is read from this
|
||
object the first time, the query is executed.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ScriptDB.db_repeats">
|
||
<span class="sig-name descname"><span class="pre">db_repeats</span></span><a class="headerlink" href="#evennia.scripts.scripts.ScriptDB.db_repeats" title="Link to this definition">¶</a></dt>
|
||
<dd><p>A wrapper for a deferred-loading field. When the value is read from this
|
||
object the first time, the query is executed.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ScriptDB.db_start_delay">
|
||
<span class="sig-name descname"><span class="pre">db_start_delay</span></span><a class="headerlink" href="#evennia.scripts.scripts.ScriptDB.db_start_delay" title="Link to this definition">¶</a></dt>
|
||
<dd><p>A wrapper for a deferred-loading field. When the value is read from this
|
||
object the first time, the query is executed.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ScriptDB.db_tags">
|
||
<span class="sig-name descname"><span class="pre">db_tags</span></span><a class="headerlink" href="#evennia.scripts.scripts.ScriptDB.db_tags" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Accessor to the related objects manager on the forward and reverse sides of
|
||
a many-to-many relation.</p>
|
||
<p>In the example:</p>
|
||
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="k">class</span><span class="w"> </span><span class="nc">Pizza</span><span class="p">(</span><span class="n">Model</span><span class="p">):</span>
|
||
<span class="n">toppings</span> <span class="o">=</span> <span class="n">ManyToManyField</span><span class="p">(</span><span class="n">Topping</span><span class="p">,</span> <span class="n">related_name</span><span class="o">=</span><span class="s1">'pizzas'</span><span class="p">)</span>
|
||
</pre></div>
|
||
</div>
|
||
<p><strong>**Pizza.toppings**</strong> and <strong>**Topping.pizzas**</strong> are <strong>**ManyToManyDescriptor**</strong>
|
||
instances.</p>
|
||
<p>Most of the implementation is delegated to a dynamically defined manager
|
||
class built by <strong>**create_forward_many_to_many_manager()**</strong> defined below.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ScriptDB.db_typeclass_path">
|
||
<span class="sig-name descname"><span class="pre">db_typeclass_path</span></span><a class="headerlink" href="#evennia.scripts.scripts.ScriptDB.db_typeclass_path" title="Link to this definition">¶</a></dt>
|
||
<dd><p>A wrapper for a deferred-loading field. When the value is read from this
|
||
object the first time, the query is executed.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py property">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ScriptDB.desc">
|
||
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">desc</span></span><a class="headerlink" href="#evennia.scripts.scripts.ScriptDB.desc" title="Link to this definition">¶</a></dt>
|
||
<dd><p>A wrapper for getting database field <strong>db_desc</strong>.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ScriptDB.get_next_by_db_date_created">
|
||
<span class="sig-name descname"><span class="pre">get_next_by_db_date_created</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">*</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">field=<django.db.models.fields.DateTimeField:</span> <span class="pre">db_date_created></span></span></em>, <em class="sig-param"><span class="n"><span class="pre">is_next=True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">**kwargs</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#evennia.scripts.scripts.ScriptDB.get_next_by_db_date_created" title="Link to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ScriptDB.get_previous_by_db_date_created">
|
||
<span class="sig-name descname"><span class="pre">get_previous_by_db_date_created</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">*</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">field=<django.db.models.fields.DateTimeField:</span> <span class="pre">db_date_created></span></span></em>, <em class="sig-param"><span class="n"><span class="pre">is_next=False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">**kwargs</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#evennia.scripts.scripts.ScriptDB.get_previous_by_db_date_created" title="Link to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ScriptDB.id">
|
||
<span class="sig-name descname"><span class="pre">id</span></span><a class="headerlink" href="#evennia.scripts.scripts.ScriptDB.id" title="Link to this definition">¶</a></dt>
|
||
<dd><p>A wrapper for a deferred-loading field. When the value is read from this
|
||
object the first time, the query is executed.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py property">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ScriptDB.interval">
|
||
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">interval</span></span><a class="headerlink" href="#evennia.scripts.scripts.ScriptDB.interval" title="Link to this definition">¶</a></dt>
|
||
<dd><p>A wrapper for getting database field <strong>db_interval</strong>.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py property">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ScriptDB.is_active">
|
||
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">is_active</span></span><a class="headerlink" href="#evennia.scripts.scripts.ScriptDB.is_active" title="Link to this definition">¶</a></dt>
|
||
<dd><p>A wrapper for getting database field <strong>db_is_active</strong>.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py property">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ScriptDB.obj">
|
||
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">obj</span></span><a class="headerlink" href="#evennia.scripts.scripts.ScriptDB.obj" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Property wrapper that homogenizes access to either the
|
||
db_account or db_obj field, using the same object property
|
||
name.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py property">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ScriptDB.object">
|
||
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">object</span></span><a class="headerlink" href="#evennia.scripts.scripts.ScriptDB.object" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Property wrapper that homogenizes access to either the
|
||
db_account or db_obj field, using the same object property
|
||
name.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ScriptDB.objects">
|
||
<span class="sig-name descname"><span class="pre">objects</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre"><evennia.scripts.manager.ScriptDBManager</span> <span class="pre">object></span></em><a class="headerlink" href="#evennia.scripts.scripts.ScriptDB.objects" title="Link to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ScriptDB.path">
|
||
<span class="sig-name descname"><span class="pre">path</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'evennia.scripts.models.ScriptDB'</span></em><a class="headerlink" href="#evennia.scripts.scripts.ScriptDB.path" title="Link to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="py property">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ScriptDB.persistent">
|
||
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">persistent</span></span><a class="headerlink" href="#evennia.scripts.scripts.ScriptDB.persistent" title="Link to this definition">¶</a></dt>
|
||
<dd><p>A wrapper for getting database field <strong>db_persistent</strong>.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ScriptDB.receiver_script_set">
|
||
<span class="sig-name descname"><span class="pre">receiver_script_set</span></span><a class="headerlink" href="#evennia.scripts.scripts.ScriptDB.receiver_script_set" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Accessor to the related objects manager on the forward and reverse sides of
|
||
a many-to-many relation.</p>
|
||
<p>In the example:</p>
|
||
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="k">class</span><span class="w"> </span><span class="nc">Pizza</span><span class="p">(</span><span class="n">Model</span><span class="p">):</span>
|
||
<span class="n">toppings</span> <span class="o">=</span> <span class="n">ManyToManyField</span><span class="p">(</span><span class="n">Topping</span><span class="p">,</span> <span class="n">related_name</span><span class="o">=</span><span class="s1">'pizzas'</span><span class="p">)</span>
|
||
</pre></div>
|
||
</div>
|
||
<p><strong>**Pizza.toppings**</strong> and <strong>**Topping.pizzas**</strong> are <strong>**ManyToManyDescriptor**</strong>
|
||
instances.</p>
|
||
<p>Most of the implementation is delegated to a dynamically defined manager
|
||
class built by <strong>**create_forward_many_to_many_manager()**</strong> defined below.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py property">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ScriptDB.repeats">
|
||
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">repeats</span></span><a class="headerlink" href="#evennia.scripts.scripts.ScriptDB.repeats" title="Link to this definition">¶</a></dt>
|
||
<dd><p>A wrapper for getting database field <strong>db_repeats</strong>.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ScriptDB.sender_script_set">
|
||
<span class="sig-name descname"><span class="pre">sender_script_set</span></span><a class="headerlink" href="#evennia.scripts.scripts.ScriptDB.sender_script_set" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Accessor to the related objects manager on the forward and reverse sides of
|
||
a many-to-many relation.</p>
|
||
<p>In the example:</p>
|
||
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="k">class</span><span class="w"> </span><span class="nc">Pizza</span><span class="p">(</span><span class="n">Model</span><span class="p">):</span>
|
||
<span class="n">toppings</span> <span class="o">=</span> <span class="n">ManyToManyField</span><span class="p">(</span><span class="n">Topping</span><span class="p">,</span> <span class="n">related_name</span><span class="o">=</span><span class="s1">'pizzas'</span><span class="p">)</span>
|
||
</pre></div>
|
||
</div>
|
||
<p><strong>**Pizza.toppings**</strong> and <strong>**Topping.pizzas**</strong> are <strong>**ManyToManyDescriptor**</strong>
|
||
instances.</p>
|
||
<p>Most of the implementation is delegated to a dynamically defined manager
|
||
class built by <strong>**create_forward_many_to_many_manager()**</strong> defined below.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py property">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ScriptDB.start_delay">
|
||
<em class="property"><span class="k"><span class="pre">property</span></span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">start_delay</span></span><a class="headerlink" href="#evennia.scripts.scripts.ScriptDB.start_delay" title="Link to this definition">¶</a></dt>
|
||
<dd><p>A wrapper for getting database field <strong>db_start_delay</strong>.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ScriptDB.typename">
|
||
<span class="sig-name descname"><span class="pre">typename</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'SharedMemoryModelBase'</span></em><a class="headerlink" href="#evennia.scripts.scripts.ScriptDB.typename" title="Link to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
</dd></dl>
|
||
|
||
<dl class="py class">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.ScriptManager">
|
||
<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.scripts.scripts.</span></span><span class="sig-name descname"><span class="pre">ScriptManager</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/scripts/manager.html#ScriptManager"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.scripts.ScriptManager" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Bases: <a class="reference internal" href="evennia.scripts.manager.html#evennia.scripts.manager.ScriptDBManager" title="evennia.scripts.manager.ScriptDBManager"><code class="xref py py-class docutils literal notranslate"><span class="pre">ScriptDBManager</span></code></a>, <a class="reference internal" href="evennia.typeclasses.managers.html#evennia.typeclasses.managers.TypeclassManager" title="evennia.typeclasses.managers.TypeclassManager"><code class="xref py py-class docutils literal notranslate"><span class="pre">TypeclassManager</span></code></a></p>
|
||
</dd></dl>
|
||
|
||
<dl class="py class">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.TypeclassBase">
|
||
<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.scripts.scripts.</span></span><span class="sig-name descname"><span class="pre">TypeclassBase</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">name</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">bases</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">attrs</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/typeclasses/models.html#TypeclassBase"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.scripts.TypeclassBase" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Bases: <a class="reference internal" href="evennia.utils.idmapper.models.html#evennia.utils.idmapper.models.SharedMemoryModelBase" title="evennia.utils.idmapper.models.SharedMemoryModelBase"><code class="xref py py-class docutils literal notranslate"><span class="pre">SharedMemoryModelBase</span></code></a></p>
|
||
<p>Metaclass which should be set for the root of model proxies
|
||
that don’t define any new fields, like Object, Script etc. This
|
||
is the basis for the typeclassing system.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py function">
|
||
<dt class="sig sig-object py" id="evennia.scripts.scripts.maybeDeferred">
|
||
<span class="sig-prename descclassname"><span class="pre">evennia.scripts.scripts.</span></span><span class="sig-name descname"><span class="pre">maybeDeferred</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="pre">f:</span> <span class="pre">~typing.Callable[[~_P],</span> <span class="pre">~twisted.internet.defer.Deferred[~twisted.internet.defer._T]</span> <span class="pre">|</span> <span class="pre">~typing.Coroutine[~twisted.internet.defer.Deferred[~typing.Any],</span> <span class="pre">~typing.Any,</span> <span class="pre">~twisted.internet.defer._T]</span> <span class="pre">|</span> <span class="pre">~twisted.internet.defer._T],</span> <span class="pre">*args:</span> <span class="pre">~typing.~_P,</span> <span class="pre">**kwargs:</span> <span class="pre">~typing.~_P</span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">→</span> <span class="sig-return-typehint"><a class="reference internal" href="#evennia.scripts.scripts.Deferred" title="twisted.internet.defer.Deferred"><span class="pre">Deferred</span></a><span class="p"><span class="pre">[</span></span><span class="pre">_T</span><span class="p"><span class="pre">]</span></span></span></span><a class="reference internal" href="../_modules/twisted/internet/defer.html#maybeDeferred"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#evennia.scripts.scripts.maybeDeferred" title="Link to this definition">¶</a></dt>
|
||
<dd><p>Invoke a function that may or may not return a L{Deferred} or coroutine.</p>
|
||
<p>Call the given function with the given arguments. Then:</p>
|
||
<blockquote>
|
||
<div><ul class="simple">
|
||
<li><p>If the returned object is a L{Deferred}, return it.</p></li>
|
||
<li><p>If the returned object is a L{Failure}, wrap it with L{fail} and
|
||
return it.</p></li>
|
||
<li><p>If the returned object is a L{types.CoroutineType}, wrap it with
|
||
L{Deferred.fromCoroutine} and return it.</p></li>
|
||
<li><p>Otherwise, wrap it in L{succeed} and return it.</p></li>
|
||
<li><p>If an exception is raised, convert it to a L{Failure}, wrap it in
|
||
L{fail}, and then return it.</p></li>
|
||
</ul>
|
||
</div></blockquote>
|
||
<p>@param f: The callable to invoke
|
||
@param args: The arguments to pass to C{f}
|
||
@param kwargs: The keyword arguments to pass to C{f}</p>
|
||
<p>@return: The result of the function call, wrapped in a L{Deferred} if
|
||
necessary.</p>
|
||
</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.scripts.scripts</a><ul>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.DefaultScript"><code class="docutils literal notranslate"><span class="pre">DefaultScript</span></code></a><ul>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.DefaultScript.create"><code class="docutils literal notranslate"><span class="pre">DefaultScript.create()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.DefaultScript.at_script_creation"><code class="docutils literal notranslate"><span class="pre">DefaultScript.at_script_creation()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.DefaultScript.is_valid"><code class="docutils literal notranslate"><span class="pre">DefaultScript.is_valid()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.DefaultScript.at_start"><code class="docutils literal notranslate"><span class="pre">DefaultScript.at_start()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.DefaultScript.at_repeat"><code class="docutils literal notranslate"><span class="pre">DefaultScript.at_repeat()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.DefaultScript.at_pause"><code class="docutils literal notranslate"><span class="pre">DefaultScript.at_pause()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.DefaultScript.at_stop"><code class="docutils literal notranslate"><span class="pre">DefaultScript.at_stop()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.DefaultScript.at_script_delete"><code class="docutils literal notranslate"><span class="pre">DefaultScript.at_script_delete()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.DefaultScript.at_server_reload"><code class="docutils literal notranslate"><span class="pre">DefaultScript.at_server_reload()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.DefaultScript.at_server_shutdown"><code class="docutils literal notranslate"><span class="pre">DefaultScript.at_server_shutdown()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.DefaultScript.at_server_start"><code class="docutils literal notranslate"><span class="pre">DefaultScript.at_server_start()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.DefaultScript.DoesNotExist"><code class="docutils literal notranslate"><span class="pre">DefaultScript.DoesNotExist</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.DefaultScript.MultipleObjectsReturned"><code class="docutils literal notranslate"><span class="pre">DefaultScript.MultipleObjectsReturned</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.DefaultScript.NotUpdated"><code class="docutils literal notranslate"><span class="pre">DefaultScript.NotUpdated</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.DefaultScript.path"><code class="docutils literal notranslate"><span class="pre">DefaultScript.path</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.DefaultScript.typename"><code class="docutils literal notranslate"><span class="pre">DefaultScript.typename</span></code></a></li>
|
||
</ul>
|
||
</li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.DoNothing"><code class="docutils literal notranslate"><span class="pre">DoNothing</span></code></a><ul>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.DoNothing.at_script_creation"><code class="docutils literal notranslate"><span class="pre">DoNothing.at_script_creation()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.DoNothing.DoesNotExist"><code class="docutils literal notranslate"><span class="pre">DoNothing.DoesNotExist</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.DoNothing.MultipleObjectsReturned"><code class="docutils literal notranslate"><span class="pre">DoNothing.MultipleObjectsReturned</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.DoNothing.NotUpdated"><code class="docutils literal notranslate"><span class="pre">DoNothing.NotUpdated</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.DoNothing.path"><code class="docutils literal notranslate"><span class="pre">DoNothing.path</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.DoNothing.typename"><code class="docutils literal notranslate"><span class="pre">DoNothing.typename</span></code></a></li>
|
||
</ul>
|
||
</li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.Store"><code class="docutils literal notranslate"><span class="pre">Store</span></code></a><ul>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.Store.at_script_creation"><code class="docutils literal notranslate"><span class="pre">Store.at_script_creation()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.Store.DoesNotExist"><code class="docutils literal notranslate"><span class="pre">Store.DoesNotExist</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.Store.MultipleObjectsReturned"><code class="docutils literal notranslate"><span class="pre">Store.MultipleObjectsReturned</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.Store.NotUpdated"><code class="docutils literal notranslate"><span class="pre">Store.NotUpdated</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.Store.path"><code class="docutils literal notranslate"><span class="pre">Store.path</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.Store.typename"><code class="docutils literal notranslate"><span class="pre">Store.typename</span></code></a></li>
|
||
</ul>
|
||
</li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.Deferred"><code class="docutils literal notranslate"><span class="pre">Deferred</span></code></a><ul>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.Deferred.__init__"><code class="docutils literal notranslate"><span class="pre">Deferred.__init__()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.Deferred.addBoth"><code class="docutils literal notranslate"><span class="pre">Deferred.addBoth()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.Deferred.addCallback"><code class="docutils literal notranslate"><span class="pre">Deferred.addCallback()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.Deferred.addCallbacks"><code class="docutils literal notranslate"><span class="pre">Deferred.addCallbacks()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.Deferred.addErrback"><code class="docutils literal notranslate"><span class="pre">Deferred.addErrback()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.Deferred.addTimeout"><code class="docutils literal notranslate"><span class="pre">Deferred.addTimeout()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.Deferred.asFuture"><code class="docutils literal notranslate"><span class="pre">Deferred.asFuture()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.Deferred.callback"><code class="docutils literal notranslate"><span class="pre">Deferred.callback()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.Deferred.called"><code class="docutils literal notranslate"><span class="pre">Deferred.called</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.Deferred.cancel"><code class="docutils literal notranslate"><span class="pre">Deferred.cancel()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.Deferred.chainDeferred"><code class="docutils literal notranslate"><span class="pre">Deferred.chainDeferred()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.Deferred.debug"><code class="docutils literal notranslate"><span class="pre">Deferred.debug</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.Deferred.errback"><code class="docutils literal notranslate"><span class="pre">Deferred.errback()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.Deferred.fromCoroutine"><code class="docutils literal notranslate"><span class="pre">Deferred.fromCoroutine()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.Deferred.fromFuture"><code class="docutils literal notranslate"><span class="pre">Deferred.fromFuture()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.Deferred.pause"><code class="docutils literal notranslate"><span class="pre">Deferred.pause()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.Deferred.paused"><code class="docutils literal notranslate"><span class="pre">Deferred.paused</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.Deferred.unpause"><code class="docutils literal notranslate"><span class="pre">Deferred.unpause()</span></code></a></li>
|
||
</ul>
|
||
</li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ExtendedLoopingCall"><code class="docutils literal notranslate"><span class="pre">ExtendedLoopingCall</span></code></a><ul>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ExtendedLoopingCall.start_delay"><code class="docutils literal notranslate"><span class="pre">ExtendedLoopingCall.start_delay</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ExtendedLoopingCall.callcount"><code class="docutils literal notranslate"><span class="pre">ExtendedLoopingCall.callcount</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ExtendedLoopingCall.start"><code class="docutils literal notranslate"><span class="pre">ExtendedLoopingCall.start()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ExtendedLoopingCall.force_repeat"><code class="docutils literal notranslate"><span class="pre">ExtendedLoopingCall.force_repeat()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ExtendedLoopingCall.next_call_time"><code class="docutils literal notranslate"><span class="pre">ExtendedLoopingCall.next_call_time()</span></code></a></li>
|
||
</ul>
|
||
</li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.LoopingCall"><code class="docutils literal notranslate"><span class="pre">LoopingCall</span></code></a><ul>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.LoopingCall.__init__"><code class="docutils literal notranslate"><span class="pre">LoopingCall.__init__()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.LoopingCall.call"><code class="docutils literal notranslate"><span class="pre">LoopingCall.call</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.LoopingCall.deferred"><code class="docutils literal notranslate"><span class="pre">LoopingCall.deferred</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.LoopingCall.interval"><code class="docutils literal notranslate"><span class="pre">LoopingCall.interval</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.LoopingCall.reset"><code class="docutils literal notranslate"><span class="pre">LoopingCall.reset()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.LoopingCall.running"><code class="docutils literal notranslate"><span class="pre">LoopingCall.running</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.LoopingCall.start"><code class="docutils literal notranslate"><span class="pre">LoopingCall.start()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.LoopingCall.starttime"><code class="docutils literal notranslate"><span class="pre">LoopingCall.starttime</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.LoopingCall.stop"><code class="docutils literal notranslate"><span class="pre">LoopingCall.stop()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.LoopingCall.withCount"><code class="docutils literal notranslate"><span class="pre">LoopingCall.withCount()</span></code></a></li>
|
||
</ul>
|
||
</li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ScriptBase"><code class="docutils literal notranslate"><span class="pre">ScriptBase</span></code></a><ul>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ScriptBase.objects"><code class="docutils literal notranslate"><span class="pre">ScriptBase.objects</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ScriptBase.at_idmapper_flush"><code class="docutils literal notranslate"><span class="pre">ScriptBase.at_idmapper_flush()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ScriptBase.at_first_save"><code class="docutils literal notranslate"><span class="pre">ScriptBase.at_first_save()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ScriptBase.delete"><code class="docutils literal notranslate"><span class="pre">ScriptBase.delete()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ScriptBase.basetype_setup"><code class="docutils literal notranslate"><span class="pre">ScriptBase.basetype_setup()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ScriptBase.at_init"><code class="docutils literal notranslate"><span class="pre">ScriptBase.at_init()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ScriptBase.at_script_creation"><code class="docutils literal notranslate"><span class="pre">ScriptBase.at_script_creation()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ScriptBase.at_script_delete"><code class="docutils literal notranslate"><span class="pre">ScriptBase.at_script_delete()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ScriptBase.is_valid"><code class="docutils literal notranslate"><span class="pre">ScriptBase.is_valid()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ScriptBase.at_repeat"><code class="docutils literal notranslate"><span class="pre">ScriptBase.at_repeat()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ScriptBase.at_start"><code class="docutils literal notranslate"><span class="pre">ScriptBase.at_start()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ScriptBase.at_pause"><code class="docutils literal notranslate"><span class="pre">ScriptBase.at_pause()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ScriptBase.at_stop"><code class="docutils literal notranslate"><span class="pre">ScriptBase.at_stop()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ScriptBase.start"><code class="docutils literal notranslate"><span class="pre">ScriptBase.start()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ScriptBase.update"><code class="docutils literal notranslate"><span class="pre">ScriptBase.update()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ScriptBase.stop"><code class="docutils literal notranslate"><span class="pre">ScriptBase.stop()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ScriptBase.pause"><code class="docutils literal notranslate"><span class="pre">ScriptBase.pause()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ScriptBase.unpause"><code class="docutils literal notranslate"><span class="pre">ScriptBase.unpause()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ScriptBase.time_until_next_repeat"><code class="docutils literal notranslate"><span class="pre">ScriptBase.time_until_next_repeat()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ScriptBase.remaining_repeats"><code class="docutils literal notranslate"><span class="pre">ScriptBase.remaining_repeats()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ScriptBase.reset_callcount"><code class="docutils literal notranslate"><span class="pre">ScriptBase.reset_callcount()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ScriptBase.force_repeat"><code class="docutils literal notranslate"><span class="pre">ScriptBase.force_repeat()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ScriptBase.DoesNotExist"><code class="docutils literal notranslate"><span class="pre">ScriptBase.DoesNotExist</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ScriptBase.MultipleObjectsReturned"><code class="docutils literal notranslate"><span class="pre">ScriptBase.MultipleObjectsReturned</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ScriptBase.NotUpdated"><code class="docutils literal notranslate"><span class="pre">ScriptBase.NotUpdated</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ScriptBase.path"><code class="docutils literal notranslate"><span class="pre">ScriptBase.path</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ScriptBase.typename"><code class="docutils literal notranslate"><span class="pre">ScriptBase.typename</span></code></a></li>
|
||
</ul>
|
||
</li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ScriptDB"><code class="docutils literal notranslate"><span class="pre">ScriptDB</span></code></a><ul>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ScriptDB.DoesNotExist"><code class="docutils literal notranslate"><span class="pre">ScriptDB.DoesNotExist</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ScriptDB.MultipleObjectsReturned"><code class="docutils literal notranslate"><span class="pre">ScriptDB.MultipleObjectsReturned</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ScriptDB.NotUpdated"><code class="docutils literal notranslate"><span class="pre">ScriptDB.NotUpdated</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ScriptDB.account"><code class="docutils literal notranslate"><span class="pre">ScriptDB.account</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ScriptDB.db_account"><code class="docutils literal notranslate"><span class="pre">ScriptDB.db_account</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ScriptDB.db_account_id"><code class="docutils literal notranslate"><span class="pre">ScriptDB.db_account_id</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ScriptDB.db_attributes"><code class="docutils literal notranslate"><span class="pre">ScriptDB.db_attributes</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ScriptDB.db_date_created"><code class="docutils literal notranslate"><span class="pre">ScriptDB.db_date_created</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ScriptDB.db_desc"><code class="docutils literal notranslate"><span class="pre">ScriptDB.db_desc</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ScriptDB.db_interval"><code class="docutils literal notranslate"><span class="pre">ScriptDB.db_interval</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ScriptDB.db_is_active"><code class="docutils literal notranslate"><span class="pre">ScriptDB.db_is_active</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ScriptDB.db_key"><code class="docutils literal notranslate"><span class="pre">ScriptDB.db_key</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ScriptDB.db_lock_storage"><code class="docutils literal notranslate"><span class="pre">ScriptDB.db_lock_storage</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ScriptDB.db_obj"><code class="docutils literal notranslate"><span class="pre">ScriptDB.db_obj</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ScriptDB.db_obj_id"><code class="docutils literal notranslate"><span class="pre">ScriptDB.db_obj_id</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ScriptDB.db_persistent"><code class="docutils literal notranslate"><span class="pre">ScriptDB.db_persistent</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ScriptDB.db_repeats"><code class="docutils literal notranslate"><span class="pre">ScriptDB.db_repeats</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ScriptDB.db_start_delay"><code class="docutils literal notranslate"><span class="pre">ScriptDB.db_start_delay</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ScriptDB.db_tags"><code class="docutils literal notranslate"><span class="pre">ScriptDB.db_tags</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ScriptDB.db_typeclass_path"><code class="docutils literal notranslate"><span class="pre">ScriptDB.db_typeclass_path</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ScriptDB.desc"><code class="docutils literal notranslate"><span class="pre">ScriptDB.desc</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ScriptDB.get_next_by_db_date_created"><code class="docutils literal notranslate"><span class="pre">ScriptDB.get_next_by_db_date_created()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ScriptDB.get_previous_by_db_date_created"><code class="docutils literal notranslate"><span class="pre">ScriptDB.get_previous_by_db_date_created()</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ScriptDB.id"><code class="docutils literal notranslate"><span class="pre">ScriptDB.id</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ScriptDB.interval"><code class="docutils literal notranslate"><span class="pre">ScriptDB.interval</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ScriptDB.is_active"><code class="docutils literal notranslate"><span class="pre">ScriptDB.is_active</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ScriptDB.obj"><code class="docutils literal notranslate"><span class="pre">ScriptDB.obj</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ScriptDB.object"><code class="docutils literal notranslate"><span class="pre">ScriptDB.object</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ScriptDB.objects"><code class="docutils literal notranslate"><span class="pre">ScriptDB.objects</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ScriptDB.path"><code class="docutils literal notranslate"><span class="pre">ScriptDB.path</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ScriptDB.persistent"><code class="docutils literal notranslate"><span class="pre">ScriptDB.persistent</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ScriptDB.receiver_script_set"><code class="docutils literal notranslate"><span class="pre">ScriptDB.receiver_script_set</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ScriptDB.repeats"><code class="docutils literal notranslate"><span class="pre">ScriptDB.repeats</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ScriptDB.sender_script_set"><code class="docutils literal notranslate"><span class="pre">ScriptDB.sender_script_set</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ScriptDB.start_delay"><code class="docutils literal notranslate"><span class="pre">ScriptDB.start_delay</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ScriptDB.typename"><code class="docutils literal notranslate"><span class="pre">ScriptDB.typename</span></code></a></li>
|
||
</ul>
|
||
</li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.ScriptManager"><code class="docutils literal notranslate"><span class="pre">ScriptManager</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.TypeclassBase"><code class="docutils literal notranslate"><span class="pre">TypeclassBase</span></code></a></li>
|
||
<li><a class="reference internal" href="#evennia.scripts.scripts.maybeDeferred"><code class="docutils literal notranslate"><span class="pre">maybeDeferred()</span></code></a></li>
|
||
</ul>
|
||
</li>
|
||
</ul>
|
||
|
||
<div>
|
||
<h4>Previous topic</h4>
|
||
<p class="topless"><a href="evennia.scripts.scripthandler.html"
|
||
title="previous chapter">evennia.scripts.scripthandler</a></p>
|
||
</div>
|
||
<div>
|
||
<h4>Next topic</h4>
|
||
<p class="topless"><a href="evennia.scripts.taskhandler.html"
|
||
title="next chapter">evennia.scripts.taskhandler</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.scripts.scripts.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.scripts.taskhandler.html" title="evennia.scripts.taskhandler"
|
||
>next</a> |</li>
|
||
<li class="right" >
|
||
<a href="evennia.scripts.scripthandler.html" title="evennia.scripts.scripthandler"
|
||
>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.scripts.html" >evennia.scripts</a> »</li>
|
||
<li class="nav-item nav-item-this"><a href="">evennia.scripts.scripts</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> |