mirror of
https://github.com/evennia/evennia.git
synced 2026-03-18 13:56:30 +01:00
3027 lines
No EOL
233 KiB
HTML
3027 lines
No EOL
233 KiB
HTML
|
||
<!DOCTYPE html>
|
||
|
||
<html>
|
||
<head>
|
||
<meta charset="utf-8" />
|
||
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.17.1: http://docutils.sourceforge.net/" />
|
||
|
||
<title>evennia.objects.objects — Evennia latest documentation</title>
|
||
<link rel="stylesheet" href="../_static/nature.css" type="text/css" />
|
||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||
<script id="documentation_options" data-url_root="../" src="../_static/documentation_options.js"></script>
|
||
<script src="../_static/jquery.js"></script>
|
||
<script src="../_static/underscore.js"></script>
|
||
<script src="../_static/doctools.js"></script>
|
||
<script src="../_static/language_data.js"></script>
|
||
<link rel="shortcut 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.prototypes" href="evennia.prototypes.html" />
|
||
<link rel="prev" title="evennia.objects.models" href="evennia.objects.models.html" />
|
||
</head><body>
|
||
|
||
|
||
|
||
|
||
<div class="related" role="navigation" aria-label="related navigation">
|
||
<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.prototypes.html" title="evennia.prototypes"
|
||
accesskey="N">next</a> |</li>
|
||
<li class="right" >
|
||
<a href="evennia.objects.models.html" title="evennia.objects.models"
|
||
accesskey="P">previous</a> |</li>
|
||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia latest</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.objects.html" accesskey="U">evennia.objects</a> »</li>
|
||
<li class="nav-item nav-item-this"><a href="">evennia.objects.objects</a></li>
|
||
</ul>
|
||
</div>
|
||
|
||
<div class="document">
|
||
|
||
<div class="documentwrapper">
|
||
<div class="sphinxsidebar" role="navigation" aria-label="main navigation">
|
||
<div class="sphinxsidebarwrapper">
|
||
<p class="logo"><a href="../index.html">
|
||
<img class="logo" src="../_static/evennia_logo.png" alt="Logo"/>
|
||
</a></p>
|
||
<div 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" />
|
||
<input type="submit" value="Go" />
|
||
</form>
|
||
</div>
|
||
</div>
|
||
<script>$('#searchbox').show(0);</script>
|
||
<h4>Previous topic</h4>
|
||
<p class="topless"><a href="evennia.objects.models.html"
|
||
title="previous chapter">evennia.objects.models</a></p>
|
||
<h4>Next topic</h4>
|
||
<p class="topless"><a href="evennia.prototypes.html"
|
||
title="next chapter">evennia.prototypes</a></p>
|
||
<div role="note" aria-label="source link">
|
||
<!--h3>This Page</h3-->
|
||
<ul class="this-page-menu">
|
||
<li><a href="../_sources/api/evennia.objects.objects.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="evennia.objects.objects.html">latest (main branch)</a></li>
|
||
|
||
<li><a href="../4.x/index.html">v4.0.0 branch (outdated)</a></li>
|
||
|
||
<li><a href="../3.x/index.html">v3.0.0 branch (outdated)</a></li>
|
||
|
||
<li><a href="../2.x/index.html">v2.0.0 branch (outdated)</a></li>
|
||
|
||
<li><a href="../1.x/index.html">v1.0.0 branch (outdated)</a></li>
|
||
|
||
<li><a href="../0.x/index.html">v0.9.5 branch (outdated)</a></li>
|
||
|
||
|
||
</ul>
|
||
|
||
</div>
|
||
</div>
|
||
<div class="bodywrapper">
|
||
<div class="body" role="main">
|
||
|
||
<section id="module-evennia.objects.objects">
|
||
<span id="evennia-objects-objects"></span><h1>evennia.objects.objects<a class="headerlink" href="#module-evennia.objects.objects" title="Permalink to this headline">¶</a></h1>
|
||
<p>This module defines the basic <strong>DefaultObject</strong> and its children
|
||
<strong>DefaultCharacter</strong>, <strong>DefaultAccount</strong>, <strong>DefaultRoom</strong> and <strong>DefaultExit</strong>.
|
||
These are the (default) starting points for all in-game visible
|
||
entities.</p>
|
||
<dl class="py class">
|
||
<dt id="evennia.objects.objects.ObjectSessionHandler">
|
||
<em class="property">class </em><code class="sig-prename descclassname">evennia.objects.objects.</code><code class="sig-name descname">ObjectSessionHandler</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">obj</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#ObjectSessionHandler"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.ObjectSessionHandler" title="Permalink 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>Handles the get/setting of the sessid comma-separated integer field</p>
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.ObjectSessionHandler.__init__">
|
||
<code class="sig-name descname">__init__</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">obj</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#ObjectSessionHandler.__init__"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.ObjectSessionHandler.__init__" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Initializes the handler.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><p><strong>obj</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The object on which the handler is defined.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.ObjectSessionHandler.get">
|
||
<code class="sig-name descname">get</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">sessid</span><span class="o">=</span><span class="default_value">None</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#ObjectSessionHandler.get"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.ObjectSessionHandler.get" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Get the sessions linked to this Object.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><p><strong>sessid</strong> (<em>int</em><em>, </em><em>optional</em>) – A specific session id.</p>
|
||
</dd>
|
||
<dt class="field-even">Returns</dt>
|
||
<dd class="field-even"><p><p><em>list</em> –</p>
|
||
<dl class="simple">
|
||
<dt>The sessions connected to this object. If <strong>sessid</strong> is given,</dt><dd><p>this is a list of one (or zero) elements.</p>
|
||
</dd>
|
||
</dl>
|
||
</p>
|
||
</dd>
|
||
</dl>
|
||
<p class="rubric">Notes</p>
|
||
<p>Aliased to <strong>self.all()</strong>.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.ObjectSessionHandler.all">
|
||
<code class="sig-name descname">all</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#ObjectSessionHandler.all"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.ObjectSessionHandler.all" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Alias to get(), returning all sessions.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Returns</dt>
|
||
<dd class="field-odd"><p><em>list</em> – All sessions.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.ObjectSessionHandler.add">
|
||
<code class="sig-name descname">add</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">session</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#ObjectSessionHandler.add"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.ObjectSessionHandler.add" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Add session to handler.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><p><strong>session</strong> (<a class="reference internal" href="evennia.server.session.html#evennia.server.session.Session" title="evennia.server.session.Session"><em>Session</em></a><em> or </em><em>int</em>) – Session or session id to add.</p>
|
||
</dd>
|
||
</dl>
|
||
<p class="rubric">Notes</p>
|
||
<p>We will only add a session/sessid if this actually also exists
|
||
in the the core sessionhandler.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.ObjectSessionHandler.remove">
|
||
<code class="sig-name descname">remove</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">session</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#ObjectSessionHandler.remove"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.ObjectSessionHandler.remove" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Remove session from handler.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><p><strong>or int</strong> (<a class="reference internal" href="evennia.server.session.html#evennia.server.session.Session" title="evennia.server.session.Session"><em>Session</em></a>) – Session or session id to remove.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.ObjectSessionHandler.clear">
|
||
<code class="sig-name descname">clear</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#ObjectSessionHandler.clear"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.ObjectSessionHandler.clear" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Clear all handled sessids.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.ObjectSessionHandler.count">
|
||
<code class="sig-name descname">count</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#ObjectSessionHandler.count"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.ObjectSessionHandler.count" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Get amount of sessions connected.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Returns</dt>
|
||
<dd class="field-odd"><p><em>int</em> – Number of sessions handled.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
</dd></dl>
|
||
|
||
<dl class="py class">
|
||
<dt id="evennia.objects.objects.DefaultObject">
|
||
<em class="property">class </em><code class="sig-prename descclassname">evennia.objects.objects.</code><code class="sig-name descname">DefaultObject</code><span class="sig-paren">(</span><em class="sig-param"><span class="o">*</span><span class="n">args</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Bases: <a class="reference internal" href="evennia.objects.models.html#evennia.objects.models.ObjectDB" title="evennia.objects.models.ObjectDB"><code class="xref py py-class docutils literal notranslate"><span class="pre">evennia.objects.models.ObjectDB</span></code></a></p>
|
||
<p>This is the root Object typeclass, representing all entities that
|
||
have an actual presence in-game. DefaultObjects generally have a
|
||
location. They can also be manipulated and looked at. Game
|
||
entities you define should inherit from DefaultObject at some distance.</p>
|
||
<p>It is recommended to create children of this class using the
|
||
<strong>evennia.create_object()</strong> function rather than to initialize the class
|
||
directly - this will both set things up and efficiently save the object
|
||
without <strong>obj.save()</strong> having to be called explicitly.</p>
|
||
<p>Note: Check the autodocs for complete class members, this may not always
|
||
be up-to date.</p>
|
||
<ul class="simple">
|
||
<li><p>Base properties defined/available on all Objects</p></li>
|
||
</ul>
|
||
<blockquote>
|
||
<div><p>key (string) - name of object
|
||
name (string)- same as key
|
||
dbref (int, read-only) - unique #id-number. Also “id” can be used.
|
||
date_created (string) - time stamp of object creation</p>
|
||
<dl class="simple">
|
||
<dt>account (Account) - controlling account (if any, only set together with</dt><dd><p>sessid below)</p>
|
||
</dd>
|
||
<dt>sessid (int, read-only) - session id (if any, only set together with</dt><dd><p>account above). Use <strong>sessions</strong> handler to get the
|
||
Sessions directly.</p>
|
||
</dd>
|
||
</dl>
|
||
<p>location (Object) - current location. Is None if this is a room
|
||
home (Object) - safety start-location
|
||
has_account (bool, read-only)- will only return <em>connected</em> accounts
|
||
contents (list, read only) - returns all objects inside this object
|
||
exits (list of Objects, read-only) - returns all exits from this</p>
|
||
<blockquote>
|
||
<div><p>object, if any</p>
|
||
</div></blockquote>
|
||
<p>destination (Object) - only set if this object is an exit.
|
||
is_superuser (bool, read-only) - True/False if this user is a superuser
|
||
is_connected (bool, read-only) - True if this object is associated with</p>
|
||
<blockquote>
|
||
<div><p>an Account with any connected sessions.</p>
|
||
</div></blockquote>
|
||
<p>has_account (bool, read-only) - True is this object has an associated account.
|
||
is_superuser (bool, read-only): True if this object has an account and that</p>
|
||
<blockquote>
|
||
<div><p>account is a superuser.</p>
|
||
</div></blockquote>
|
||
<p>plural_category (string) - Alias category for the plural strings of this object</p>
|
||
</div></blockquote>
|
||
<ul class="simple">
|
||
<li><p>Handlers available</p></li>
|
||
</ul>
|
||
<blockquote>
|
||
<div><p>aliases - alias-handler: use aliases.add/remove/get() to use.
|
||
permissions - permission-handler: use permissions.add/remove() to</p>
|
||
<blockquote>
|
||
<div><p>add/remove new perms.</p>
|
||
</div></blockquote>
|
||
<p>locks - lock-handler: use locks.add() to add new lock strings
|
||
scripts - script-handler. Add new scripts to object with scripts.add()
|
||
cmdset - cmdset-handler. Use cmdset.add() to add new cmdsets to object
|
||
nicks - nick-handler. New nicks with nicks.add().
|
||
sessions - sessions-handler. Get Sessions connected to this</p>
|
||
<blockquote>
|
||
<div><p>object with sessions.get()</p>
|
||
</div></blockquote>
|
||
<p>attributes - attribute-handler. Use attributes.add/remove/get.
|
||
db - attribute-handler: Shortcut for attribute-handler. Store/retrieve</p>
|
||
<blockquote>
|
||
<div><p>database attributes using 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 create</dt><dd><p>a database entry when storing data</p>
|
||
</dd>
|
||
</dl>
|
||
</div></blockquote>
|
||
<ul class="simple">
|
||
<li><p>Helper methods (see src.objects.objects.py for full headers)</p></li>
|
||
</ul>
|
||
<blockquote>
|
||
<div><p>get_search_query_replacement(searchdata, <a href="#id1"><span class="problematic" id="id2">**</span></a>kwargs)
|
||
get_search_direct_match(searchdata, <a href="#id3"><span class="problematic" id="id4">**</span></a>kwargs)
|
||
get_search_candidates(searchdata, <a href="#id5"><span class="problematic" id="id6">**</span></a>kwargs)
|
||
get_search_result(searchdata, attribute_name=None, typeclass=None,</p>
|
||
<blockquote>
|
||
<div><p>candidates=None, exact=False, use_dbref=None, tags=None, <a href="#id7"><span class="problematic" id="id8">**</span></a>kwargs)</p>
|
||
</div></blockquote>
|
||
<p>get_stacked_result(results, <a href="#id9"><span class="problematic" id="id10">**</span></a>kwargs)
|
||
handle_search_results(searchdata, results, <a href="#id11"><span class="problematic" id="id12">**</span></a>kwargs)
|
||
search(searchdata, global_search=False, use_nicks=True, typeclass=None,</p>
|
||
<blockquote>
|
||
<div><p>location=None, attribute_name=None, quiet=False, exact=False,
|
||
candidates=None, use_locks=True, nofound_string=None,
|
||
multimatch_string=None, use_dbref=None, tags=None, stacked=0)</p>
|
||
</div></blockquote>
|
||
<p>search_account(searchdata, quiet=False)
|
||
execute_cmd(raw_string, session=None, <a href="#id13"><span class="problematic" id="id14">**</span></a>kwargs))
|
||
msg(text=None, from_obj=None, session=None, options=None, <a href="#id15"><span class="problematic" id="id16">**</span></a>kwargs)
|
||
for_contents(func, exclude=None, <a href="#id17"><span class="problematic" id="id18">**</span></a>kwargs)
|
||
msg_contents(message, exclude=None, from_obj=None, mapping=None,</p>
|
||
<blockquote>
|
||
<div><p>raise_funcparse_errors=False, <a href="#id19"><span class="problematic" id="id20">**</span></a>kwargs)</p>
|
||
</div></blockquote>
|
||
<p>move_to(destination, quiet=False, emit_to_obj=None, use_destination=True)
|
||
clear_contents()
|
||
create(key, account, caller, method, <a href="#id21"><span class="problematic" id="id22">**</span></a>kwargs)
|
||
copy(new_key=None)
|
||
at_object_post_copy(new_obj, <a href="#id23"><span class="problematic" id="id24">**</span></a>kwargs)
|
||
delete()
|
||
is_typeclass(typeclass, exact=False)
|
||
swap_typeclass(new_typeclass, clean_attributes=False, no_default=True)
|
||
access(accessing_obj, access_type=’read’, default=False,</p>
|
||
<blockquote>
|
||
<div><p>no_superuser_bypass=False, <a href="#id25"><span class="problematic" id="id26">**</span></a>kwargs)</p>
|
||
</div></blockquote>
|
||
<p>filter_visible(obj_list, looker, <a href="#id27"><span class="problematic" id="id28">**</span></a>kwargs)
|
||
get_default_lockstring()
|
||
get_cmdsets(caller, current, <a href="#id29"><span class="problematic" id="id30">**</span></a>kwargs)
|
||
check_permstring(permstring)
|
||
get_cmdset_providers()
|
||
get_display_name(looker=None, <a href="#id31"><span class="problematic" id="id32">**</span></a>kwargs)
|
||
get_extra_display_name_info(looker=None, <a href="#id33"><span class="problematic" id="id34">**</span></a>kwargs)
|
||
get_numbered_name(count, looker, <a href="#id35"><span class="problematic" id="id36">**</span></a>kwargs)
|
||
get_display_header(looker, <a href="#id37"><span class="problematic" id="id38">**</span></a>kwargs)
|
||
get_display_desc(looker, <a href="#id39"><span class="problematic" id="id40">**</span></a>kwargs)
|
||
get_display_exits(looker, <a href="#id41"><span class="problematic" id="id42">**</span></a>kwargs)
|
||
get_display_characters(looker, <a href="#id43"><span class="problematic" id="id44">**</span></a>kwargs)
|
||
get_display_things(looker, <a href="#id45"><span class="problematic" id="id46">**</span></a>kwargs)
|
||
get_display_footer(looker, <a href="#id47"><span class="problematic" id="id48">**</span></a>kwargs)
|
||
format_appearance(appearance, looker, <a href="#id49"><span class="problematic" id="id50">**</span></a>kwargs)
|
||
return_apperance(looker, <a href="#id51"><span class="problematic" id="id52">**</span></a>kwargs)</p>
|
||
</div></blockquote>
|
||
<ul class="simple">
|
||
<li><p>Hooks (these are class methods, so args should start with self):</p></li>
|
||
</ul>
|
||
<blockquote>
|
||
<div><dl class="simple">
|
||
<dt>basetype_setup() - only called once, used for behind-the-scenes</dt><dd><p>setup. Normally not modified.</p>
|
||
</dd>
|
||
<dt>basetype_posthook_setup() - customization in basetype, after the object</dt><dd><p>has been created; Normally not modified.</p>
|
||
</dd>
|
||
<dt>at_object_creation() - only called once, when object is first created.</dt><dd><p>Object customizations go here.</p>
|
||
</dd>
|
||
<dt>at_object_post_creation() - only called once, when object is first created.</dt><dd><p>Additional setup involving e.g. prototype-set attributes can go here.</p>
|
||
</dd>
|
||
<dt>at_object_delete() - called just before deleting an object. If returning</dt><dd><p>False, deletion is aborted. Note that all objects
|
||
inside a deleted object are automatically moved
|
||
to their <home>, they don’t need to be removed here.</p>
|
||
</dd>
|
||
<dt>at_object_post_spawn() - called when object is spawned from a prototype or updated</dt><dd><p>by the spawner to apply prototype changes.</p>
|
||
</dd>
|
||
<dt>at_init() - called whenever typeclass is cached from memory,</dt><dd><p>at least once every server restart/reload</p>
|
||
</dd>
|
||
</dl>
|
||
<p>at_first_save()
|
||
at_cmdset_get(<a href="#id53"><span class="problematic" id="id54">**</span></a>kwargs) - this is called just before the command handler</p>
|
||
<blockquote>
|
||
<div><p>requests a cmdset from this object. The kwargs are
|
||
not normally used unless the cmdset is created
|
||
dynamically (see e.g. Exits).</p>
|
||
</div></blockquote>
|
||
<dl class="simple">
|
||
<dt>at_pre_puppet(account)- (account-controlled objects only) called just</dt><dd><p>before puppeting</p>
|
||
</dd>
|
||
<dt>at_post_puppet() - (account-controlled objects only) called just</dt><dd><p>after completing connection account<->object</p>
|
||
</dd>
|
||
<dt>at_pre_unpuppet() - (account-controlled objects only) called just</dt><dd><p>before un-puppeting</p>
|
||
</dd>
|
||
<dt>at_post_unpuppet(account) - (account-controlled objects only) called just</dt><dd><p>after disconnecting account<->object link</p>
|
||
</dd>
|
||
</dl>
|
||
<p>at_server_reload() - called before server is reloaded
|
||
at_server_shutdown() - called just before server is fully shut down</p>
|
||
<dl class="simple">
|
||
<dt>at_access(result, accessing_obj, access_type) - called with the result</dt><dd><p>of a lock access check on this object. Return value
|
||
does not affect check result.</p>
|
||
</dd>
|
||
<dt>at_pre_move(destination) - called just before moving object</dt><dd><p>to the destination. If returns False, move is cancelled.</p>
|
||
</dd>
|
||
<dt>announce_move_from(destination) - called in old location, just</dt><dd><p>before move, if obj.move_to() has quiet=False</p>
|
||
</dd>
|
||
<dt>announce_move_to(source_location) - called in new location, just</dt><dd><p>after move, if obj.move_to() has quiet=False</p>
|
||
</dd>
|
||
<dt>at_post_move(source_location) - always called after a move has</dt><dd><p>been successfully performed.</p>
|
||
</dd>
|
||
</dl>
|
||
<p>at_pre_object_leave(leaving_object, destination, <a href="#id55"><span class="problematic" id="id56">**</span></a>kwargs)
|
||
at_object_leave(obj, target_location, move_type=”move”, <a href="#id57"><span class="problematic" id="id58">**</span></a>kwargs)
|
||
at_object_leave(obj, target_location) - called when an object leaves</p>
|
||
<blockquote>
|
||
<div><p>this object in any fashion</p>
|
||
</div></blockquote>
|
||
<p>at_pre_object_receive(obj, source_location)
|
||
at_object_receive(obj, source_location, move_type=”move”, <a href="#id59"><span class="problematic" id="id60">**</span></a>kwargs) - called when this object</p>
|
||
<blockquote>
|
||
<div><p>receives another object</p>
|
||
</div></blockquote>
|
||
<p>at_post_move(source_location, move_type=”move”, <a href="#id61"><span class="problematic" id="id62">**</span></a>kwargs)</p>
|
||
<dl class="simple">
|
||
<dt>at_traverse(traversing_object, target_location, <a href="#id63"><span class="problematic" id="id64">**</span></a>kwargs) - (exit-objects only)</dt><dd><p>handles all moving across the exit, including
|
||
calling the other exit hooks. Use super() to retain
|
||
the default functionality.</p>
|
||
</dd>
|
||
<dt>at_post_traverse(traversing_object, source_location) - (exit-objects only)</dt><dd><p>called just after a traversal has happened.</p>
|
||
</dd>
|
||
<dt>at_failed_traverse(traversing_object) - (exit-objects only) called if</dt><dd><p>traversal fails and property err_traverse is not defined.</p>
|
||
</dd>
|
||
<dt>at_msg_receive(self, msg, from_obj=None, <a href="#id65"><span class="problematic" id="id66">**</span></a>kwargs) - called when a message</dt><dd><p>(via self.msg()) is sent to this obj.
|
||
If returns false, aborts send.</p>
|
||
</dd>
|
||
<dt>at_msg_send(self, msg, to_obj=None, <a href="#id67"><span class="problematic" id="id68">**</span></a>kwargs) - called when this objects</dt><dd><p>sends a message to someone via self.msg().</p>
|
||
</dd>
|
||
<dt>return_appearance(looker) - describes this object. Used by “look”</dt><dd><p>command by default</p>
|
||
</dd>
|
||
<dt>at_desc(looker=None) - called by ‘look’ whenever the</dt><dd><p>appearance is requested.</p>
|
||
</dd>
|
||
</dl>
|
||
<p>at_pre_get(getter, <a href="#id69"><span class="problematic" id="id70">**</span></a>kwargs)
|
||
at_get(getter) - called after object has been picked up.</p>
|
||
<blockquote>
|
||
<div><p>Does not stop pickup.</p>
|
||
</div></blockquote>
|
||
<p>at_pre_give(giver, getter, <a href="#id71"><span class="problematic" id="id72">**</span></a>kwargs)
|
||
at_give(giver, getter, <a href="#id73"><span class="problematic" id="id74">**</span></a>kwargs)
|
||
at_pre_drop(dropper, <a href="#id75"><span class="problematic" id="id76">**</span></a>kwargs)
|
||
at_drop(dropper, <a href="#id77"><span class="problematic" id="id78">**</span></a>kwargs) - called when this object has been dropped.
|
||
at_pre_say(speaker, message, <a href="#id79"><span class="problematic" id="id80">**</span></a>kwargs)
|
||
at_say(message, msg_self=None, msg_location=None, receivers=None, msg_receivers=None, <a href="#id81"><span class="problematic" id="id82">**</span></a>kwargs)</p>
|
||
<p>at_look(target, <a href="#id83"><span class="problematic" id="id84">**</span></a>kwargs)
|
||
at_desc(looker=None)
|
||
at_rename(oldname, newname)</p>
|
||
</div></blockquote>
|
||
<dl class="py attribute">
|
||
<dt id="evennia.objects.objects.DefaultObject.cmdset_provider_order">
|
||
<code class="sig-name descname">cmdset_provider_order</code><em class="property"> = 100</em><a class="headerlink" href="#evennia.objects.objects.DefaultObject.cmdset_provider_order" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt id="evennia.objects.objects.DefaultObject.cmdset_provider_error_order">
|
||
<code class="sig-name descname">cmdset_provider_error_order</code><em class="property"> = 100</em><a class="headerlink" href="#evennia.objects.objects.DefaultObject.cmdset_provider_error_order" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt id="evennia.objects.objects.DefaultObject.cmdset_provider_type">
|
||
<code class="sig-name descname">cmdset_provider_type</code><em class="property"> = 'object'</em><a class="headerlink" href="#evennia.objects.objects.DefaultObject.cmdset_provider_type" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt id="evennia.objects.objects.DefaultObject.objects">
|
||
<code class="sig-name descname">objects</code><em class="property"> = <evennia.objects.manager.ObjectManager object></em><a class="headerlink" href="#evennia.objects.objects.DefaultObject.objects" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt id="evennia.objects.objects.DefaultObject.appearance_template">
|
||
<code class="sig-name descname">appearance_template</code><em class="property"> = '\n{header}\n|c{name}{extra_name_info}|n\n{desc}\n{exits}\n{characters}\n{things}\n{footer}\n '</em><a class="headerlink" href="#evennia.objects.objects.DefaultObject.appearance_template" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt id="evennia.objects.objects.DefaultObject.plural_category">
|
||
<code class="sig-name descname">plural_category</code><em class="property"> = 'plural_key'</em><a class="headerlink" href="#evennia.objects.objects.DefaultObject.plural_category" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt id="evennia.objects.objects.DefaultObject.cmdset">
|
||
<code class="sig-name descname">cmdset</code><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.cmdset"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.cmdset" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>CmdSetHandler</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt id="evennia.objects.objects.DefaultObject.scripts">
|
||
<code class="sig-name descname">scripts</code><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.scripts"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.scripts" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>ScriptHandler</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt id="evennia.objects.objects.DefaultObject.nicks">
|
||
<code class="sig-name descname">nicks</code><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.nicks"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.nicks" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>NickHandler</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt id="evennia.objects.objects.DefaultObject.sessions">
|
||
<code class="sig-name descname">sessions</code><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.sessions"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.sessions" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>SessionHandler</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.is_connected">
|
||
<em class="property">property </em><code class="sig-name descname">is_connected</code><a class="headerlink" href="#evennia.objects.objects.DefaultObject.is_connected" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>True if this object is associated with an Account with any connected sessions.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.has_account">
|
||
<em class="property">property </em><code class="sig-name descname">has_account</code><a class="headerlink" href="#evennia.objects.objects.DefaultObject.has_account" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>True is this object has an associated account.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.get_cmdset_providers">
|
||
<code class="sig-name descname">get_cmdset_providers</code><span class="sig-paren">(</span><span class="sig-paren">)</span> → dict<a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.get_cmdset_providers"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.get_cmdset_providers" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Overrideable method which returns a dictionary of every kind of object which
|
||
has a cmdsethandler linked to this Object, and should participate in cmdset
|
||
merging.</p>
|
||
<p>Objects might be aware of an Account. Otherwise, just themselves, by default.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Returns</dt>
|
||
<dd class="field-odd"><p><em>dict[str, CmdSetProvider]</em> – The CmdSetProviders linked to this Object.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.is_superuser">
|
||
<em class="property">property </em><code class="sig-name descname">is_superuser</code><a class="headerlink" href="#evennia.objects.objects.DefaultObject.is_superuser" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>True if this object has an account and that account is a superuser.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.contents_get">
|
||
<code class="sig-name descname">contents_get</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">exclude</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">content_type</span><span class="o">=</span><span class="default_value">None</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.contents_get"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.contents_get" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Returns the contents of this object, i.e. all
|
||
objects that has this object set as its location.
|
||
This should be publically available.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>exclude</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – Object to exclude from returned
|
||
contents list</p></li>
|
||
<li><p><strong>content_type</strong> (<em>str</em>) – A content_type to filter by. None for no
|
||
filtering.</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-even">Returns</dt>
|
||
<dd class="field-even"><p><em>list</em> – List of contents of this Object.</p>
|
||
</dd>
|
||
</dl>
|
||
<p class="rubric">Notes</p>
|
||
<p>Also available as the <strong>.contents</strong> property, but that doesn’t allow for exclusion and
|
||
filtering on content-types.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.contents_set">
|
||
<code class="sig-name descname">contents_set</code><span class="sig-paren">(</span><em class="sig-param"><span class="o">*</span><span class="n">args</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.contents_set"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.contents_set" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Makes sure <strong>.contents</strong> is read-only. Raises <strong>AttributeError</strong> if trying to set it.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.contents">
|
||
<em class="property">property </em><code class="sig-name descname">contents</code><a class="headerlink" href="#evennia.objects.objects.DefaultObject.contents" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Returns the contents of this object, i.e. all
|
||
objects that has this object set as its location.
|
||
This should be publically available.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>exclude</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – Object to exclude from returned
|
||
contents list</p></li>
|
||
<li><p><strong>content_type</strong> (<em>str</em>) – A content_type to filter by. None for no
|
||
filtering.</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-even">Returns</dt>
|
||
<dd class="field-even"><p><em>list</em> – List of contents of this Object.</p>
|
||
</dd>
|
||
</dl>
|
||
<p class="rubric">Notes</p>
|
||
<p>Also available as the <strong>.contents</strong> property, but that doesn’t allow for exclusion and
|
||
filtering on content-types.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.exits">
|
||
<em class="property">property </em><code class="sig-name descname">exits</code><a class="headerlink" href="#evennia.objects.objects.DefaultObject.exits" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Returns all exits from this object, i.e. all objects at this
|
||
location having the property .destination != <strong>None</strong>.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.get_search_query_replacement">
|
||
<code class="sig-name descname">get_search_query_replacement</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">searchdata</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.get_search_query_replacement"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.get_search_query_replacement" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>This method is called by the search method to allow for direct
|
||
replacements of the search string before it is used in the search.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>searchdata</strong> (<em>str</em>) – The search string to replace.</p></li>
|
||
<li><p><strong>**kwargs</strong> (<em>any</em>) – These are the same as passed to the <strong>search</strong> method.</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-even">Returns</dt>
|
||
<dd class="field-even"><p><em>str</em> – The (potentially modified) search string.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.get_search_direct_match">
|
||
<code class="sig-name descname">get_search_direct_match</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">searchdata</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.get_search_direct_match"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.get_search_direct_match" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>This method is called by the search method to allow for direct
|
||
replacements, such as ‘me’ always being an alias for this object.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>searchdata</strong> (<em>str</em>) – The search string to replace.</p></li>
|
||
<li><p><strong>**kwargs</strong> (<em>any</em>) – These are the same as passed to the <strong>search</strong> method.</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-even">Returns</dt>
|
||
<dd class="field-even"><p><em>tuple</em> – A tuple <strong>(should_return, str or Obj)</strong>, where <strong>should_return</strong> is a boolean
|
||
indicating the <strong>.search</strong> method should return the result immediately without further
|
||
processing. If <strong>should_return</strong> is <strong>True</strong>, the second element of the tuple is the result
|
||
that is returned.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.get_search_candidates">
|
||
<code class="sig-name descname">get_search_candidates</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">searchdata</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.get_search_candidates"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.get_search_candidates" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Helper for the <strong>.search</strong> method. Get the candidates for a search. Also the <strong>candidates</strong>
|
||
provided to the search function is included, and could be modified in-place here.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>searchdata</strong> (<em>str</em>) – The search criterion (could be modified by
|
||
<strong>get_search_query_replacement</strong>).</p></li>
|
||
<li><p><strong>**kwargs</strong> (<em>any</em>) – These are the same as passed to the <strong>search</strong> method.</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-even">Returns</dt>
|
||
<dd class="field-even"><p><em>list</em> – A list of objects possibly relevant for the search.</p>
|
||
</dd>
|
||
</dl>
|
||
<p class="rubric">Notes</p>
|
||
<p>If <strong>searchdata</strong> is a #dbref, this method should always return <strong>None</strong>. This is because
|
||
the search should always be global in this case. If <strong>candidates</strong> were already given,
|
||
they should be used as is. If <strong>location</strong> was given, the candidates should be based on
|
||
that.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.get_search_result">
|
||
<code class="sig-name descname">get_search_result</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">searchdata</span></em>, <em class="sig-param"><span class="n">attribute_name</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">typeclass</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">candidates</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">exact</span><span class="o">=</span><span class="default_value">False</span></em>, <em class="sig-param"><span class="n">use_dbref</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">tags</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.get_search_result"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.get_search_result" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Helper for the <strong>.search</strong> method. This is a wrapper for actually searching for objects, used
|
||
by the <strong>search</strong> method. This is broken out into a separate method to allow for easier
|
||
overriding in child classes.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>searchdata</strong> (<em>str</em>) – The search criterion.</p></li>
|
||
<li><p><strong>attribute_name</strong> (<em>str</em>) – The attribute to search on (default is <a href="#id85"><span class="problematic" id="id86">**</span></a>.</p></li>
|
||
<li><p><strong>typeclass</strong> (<em>Typeclass</em><em> or </em><em>list</em>) – The typeclass to search for.</p></li>
|
||
<li><p><strong>candidates</strong> (<em>list</em>) – A list of objects to search between.</p></li>
|
||
<li><p><strong>exact</strong> (<em>bool</em>) – Require exact match.</p></li>
|
||
<li><p><strong>use_dbref</strong> (<em>bool</em>) – Allow dbref search.</p></li>
|
||
<li><p><strong>tags</strong> (<em>list</em>) – Tags to search for.</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-even">Returns</dt>
|
||
<dd class="field-even"><p><em>queryset or iterable</em> – The result of the search.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.get_stacked_results">
|
||
<code class="sig-name descname">get_stacked_results</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">results</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.get_stacked_results"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.get_stacked_results" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>This method is called by the search method to allow for handling of multi-match
|
||
results that should be stacked.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><p><strong>results</strong> (<em>list</em>) – The list of results from the search.</p>
|
||
</dd>
|
||
<dt class="field-even">Returns</dt>
|
||
<dd class="field-even"><p><em>tuple</em> – A tuple <strong>(stacked, results)</strong>, where <strong>stacked</strong> is a boolean indicating if the
|
||
result is stacked and <strong>results</strong> is the list of results to return. If <strong>stacked</strong>
|
||
is True, the “.search” method will return <strong>results</strong> immediately without further
|
||
processing (it will not result in a multimatch-error).</p>
|
||
</dd>
|
||
</dl>
|
||
<p class="rubric">Notes</p>
|
||
<p>The <strong>stacked</strong> keyword argument is an integer that controls the max size of each stack
|
||
(if >0). It’s important to make sure to only stack _identical_ objects, otherwise we
|
||
risk losing track of objects.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.handle_search_results">
|
||
<code class="sig-name descname">handle_search_results</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">searchdata</span></em>, <em class="sig-param"><span class="n">results</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.handle_search_results"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.handle_search_results" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>This method is called by the search method to allow for handling of the final search result.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>searchdata</strong> (<em>str</em>) – The original search criterion (potentially modified by
|
||
<strong>get_search_query_replacement</strong>).</p></li>
|
||
<li><p><strong>results</strong> (<em>list</em>) – The list of results from the search.</p></li>
|
||
<li><p><strong>**kwargs</strong> (<em>any</em>) – These are the same as passed to the <strong>search</strong> method.</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-even">Returns</dt>
|
||
<dd class="field-even"><p><em>Object, None or list</em> – Normally this is a single object, but if <strong>quiet=True</strong> it should be
|
||
a list. If quiet=False and we have to handle a no/multi-match error (directly messaging
|
||
the user), this should return <strong>None</strong>.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.search">
|
||
<code class="sig-name descname">search</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">searchdata</span></em>, <em class="sig-param"><span class="n">global_search</span><span class="o">=</span><span class="default_value">False</span></em>, <em class="sig-param"><span class="n">use_nicks</span><span class="o">=</span><span class="default_value">True</span></em>, <em class="sig-param"><span class="n">typeclass</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">location</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">attribute_name</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">quiet</span><span class="o">=</span><span class="default_value">False</span></em>, <em class="sig-param"><span class="n">exact</span><span class="o">=</span><span class="default_value">False</span></em>, <em class="sig-param"><span class="n">candidates</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">use_locks</span><span class="o">=</span><span class="default_value">True</span></em>, <em class="sig-param"><span class="n">nofound_string</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">multimatch_string</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">use_dbref</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">tags</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">stacked</span><span class="o">=</span><span class="default_value">0</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.search"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.search" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Returns an Object matching a search string/condition</p>
|
||
<p>Perform a standard object search in the database, handling
|
||
multiple results and lack thereof gracefully. By default, only
|
||
objects in the current <strong>location</strong> of <strong>self</strong> or its inventory are searched for.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>searchdata</strong> (<em>str</em><em> or </em><em>obj</em>) – <p>Primary search criterion. Will be matched
|
||
against <strong>object.key</strong> (with <strong>object.aliases</strong> second) unless
|
||
the keyword attribute_name specifies otherwise.</p>
|
||
<p>Special keywords:</p>
|
||
<ul>
|
||
<li><p><strong>#<num></strong>: search by unique dbref. This is always a global search.</p></li>
|
||
<li><p><strong>me,self</strong>: self-reference to this object</p></li>
|
||
<li><dl class="simple">
|
||
<dt><strong><num>-<string></strong> - can be used to differentiate</dt><dd><p>between multiple same-named matches. The exact form of this input
|
||
is given by <strong>settings.SEARCH_MULTIMATCH_REGEX</strong>.</p>
|
||
</dd>
|
||
</dl>
|
||
</li>
|
||
</ul>
|
||
</p></li>
|
||
<li><p><strong>global_search</strong> (<em>bool</em>) – Search all objects globally. This overrules ‘location’ data.</p></li>
|
||
<li><p><strong>use_nicks</strong> (<em>bool</em>) – Use nickname-replace (nicktype “object”) on <strong>searchdata</strong>.</p></li>
|
||
<li><p><strong>typeclass</strong> (<em>str</em><em> or </em><em>Typeclass</em><em>, or </em><em>list of either</em>) – Limit search only
|
||
to <strong>Objects</strong> with this typeclass. May be a list of typeclasses
|
||
for a broader search.</p></li>
|
||
<li><p><strong>location</strong> (<em>Object</em><em> or </em><em>list</em>) – Specify a location or multiple locations
|
||
to search. Note that this is used to query the <em>contents</em> of a
|
||
location and will not match for the location itself -
|
||
if you want that, don’t set this or use <strong>candidates</strong> to specify
|
||
exactly which objects should be searched. If this nor candidates are
|
||
given, candidates will include caller’s inventory, current location and
|
||
all objects in the current location.</p></li>
|
||
<li><p><strong>attribute_name</strong> (<em>str</em>) – Define which property to search. If set, no
|
||
key+alias search will be performed. This can be used
|
||
to search database fields (<a href="#id1"><span class="problematic" id="id2">db_</span></a> will be automatically
|
||
prepended), and if that fails, it will try to return
|
||
objects having Attributes with this name and value
|
||
equal to searchdata. A special use is to search for
|
||
“key” here if you want to do a key-search without
|
||
including aliases.</p></li>
|
||
<li><p><strong>quiet</strong> (<em>bool</em>) – don’t display default error messages - this tells the
|
||
search method that the user wants to handle all errors
|
||
themselves. It also changes the return value type, see
|
||
below.</p></li>
|
||
<li><p><strong>exact</strong> (<em>bool</em>) – if unset (default) - prefers to match to beginning of
|
||
string rather than not matching at all. If set, requires
|
||
exact matching of entire string.</p></li>
|
||
<li><p><strong>candidates</strong> (<em>list of objects</em>) – this is an optional custom list of objects
|
||
to search (filter) between. It is ignored if <strong>global_search</strong>
|
||
is given. If not set, this list will automatically be defined
|
||
to include the location, the contents of location and the
|
||
caller’s contents (inventory).</p></li>
|
||
<li><p><strong>use_locks</strong> (<em>bool</em>) – If True (default) - removes search results which
|
||
fail the “search” lock.</p></li>
|
||
<li><p><strong>nofound_string</strong> (<em>str</em>) – optional custom string for not-found error message.</p></li>
|
||
<li><p><strong>multimatch_string</strong> (<em>str</em>) – optional custom string for multimatch error header.</p></li>
|
||
<li><p><strong>use_dbref</strong> (<em>bool</em><em> or </em><em>None</em><em>, </em><em>optional</em>) – If <strong>True</strong>, allow to enter e.g. a query “#123”
|
||
to find an object (globally) by its database-id 123. If <strong>False</strong>, the string “#123”
|
||
will be treated like a normal string. If <strong>None</strong> (default), the ability to query by
|
||
#dbref is turned on if <strong>self</strong> has the permission ‘Builder’ and is turned off
|
||
otherwise.</p></li>
|
||
<li><p><strong>tags</strong> (<em>list</em><em> or </em><em>tuple</em>) – Find objects matching one or more Tags. This should be one or
|
||
more tag definitions on the form <strong>tagname</strong> or <strong>(tagname, tagcategory)</strong>.</p></li>
|
||
<li><p><strong>stacked</strong> (<em>int</em><em>, </em><em>optional</em>) – If > 0, multimatches will be analyzed to determine if they
|
||
only contains identical objects; these are then assumed ‘stacked’ and no multi-match
|
||
error will be generated, instead <strong>stacked</strong> number of matches will be returned as a
|
||
list. If <strong>stacked</strong> is larger than number of matches, returns that number of matches.
|
||
If the found stack is a mix of objects, return None and handle the multi-match error
|
||
depending on the value of <strong>quiet</strong>.</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-even">Returns</dt>
|
||
<dd class="field-even"><p><em>Object, None or list</em> – Will return an <strong>Object</strong> or <strong>None</strong> if <strong>quiet=False</strong>. Will return
|
||
a <strong>list</strong> with 0, 1 or more matches if <strong>quiet=True</strong>. If <strong>stacked</strong> is a positive integer,
|
||
this list may contain all stacked identical matches.</p>
|
||
</dd>
|
||
</dl>
|
||
<p class="rubric">Notes</p>
|
||
<p>To find Accounts, use eg. <strong>evennia.account_search</strong>. If
|
||
<strong>quiet=False</strong>, error messages will be handled by
|
||
<strong>settings.SEARCH_AT_RESULT</strong> and echoed automatically (on
|
||
error, return will be <strong>None</strong>). If <strong>quiet=True</strong>, the error
|
||
messaging is assumed to be handled by the caller.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.search_account">
|
||
<code class="sig-name descname">search_account</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">searchdata</span></em>, <em class="sig-param"><span class="n">quiet</span><span class="o">=</span><span class="default_value">False</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.search_account"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.search_account" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Simple shortcut wrapper to search for accounts, not characters.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>searchdata</strong> (<em>str</em>) – Search criterion - the key or dbref of the account
|
||
to search for. If this is “here” or “me”, search
|
||
for the account connected to this object.</p></li>
|
||
<li><p><strong>quiet</strong> (<em>bool</em>) – Returns the results as a list rather than
|
||
echo eventual standard error messages. Default <strong>False</strong>.</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-even">Returns</dt>
|
||
<dd class="field-even"><p><p><em>DefaultAccount, None or list</em> – What is returned depends on
|
||
the <strong>quiet</strong> setting:</p>
|
||
<ul class="simple">
|
||
<li><p><strong>quiet=False</strong>: No match or multumatch auto-echoes errors
|
||
to self.msg, then returns <strong>None</strong>. The esults are passed
|
||
through <strong>settings.SEARCH_AT_RESULT</strong> and
|
||
<strong>settings.SEARCH_AT_MULTIMATCH_INPUT</strong>. If there is a
|
||
unique match, this will be returned.</p></li>
|
||
<li><p><strong>quiet=True</strong>: No automatic error messaging is done, and
|
||
what is returned is always a list with 0, 1 or more
|
||
matching Accounts.</p></li>
|
||
</ul>
|
||
</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.execute_cmd">
|
||
<code class="sig-name descname">execute_cmd</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">raw_string</span></em>, <em class="sig-param"><span class="n">session</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.execute_cmd"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.execute_cmd" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Do something as this object. This is never called normally,
|
||
it’s only used when wanting specifically to let an object be
|
||
the caller of a command. It makes use of nicks of eventual
|
||
connected accounts as well.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>raw_string</strong> (<em>string</em>) – Raw command input</p></li>
|
||
<li><p><strong>session</strong> (<a class="reference internal" href="evennia.server.session.html#evennia.server.session.Session" title="evennia.server.session.Session"><em>Session</em></a><em>, </em><em>optional</em>) – Session to
|
||
return results to</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-even">Keyword Arguments</dt>
|
||
<dd class="field-even"><ul class="simple">
|
||
<li><p><strong>keyword arguments will be added to the found command</strong> (<em>Other</em>) – </p></li>
|
||
<li><p><strong>instace as variables before it executes. This is</strong> (<a class="reference internal" href="evennia.scripts.models.html#evennia.scripts.models.ScriptDB.object" title="evennia.scripts.models.ScriptDB.object"><em>object</em></a>) – </p></li>
|
||
<li><p><strong>by default Evennia but may be used to set flags and</strong> (<em>unused</em>) – </p></li>
|
||
<li><p><strong>operating paramaters for commands at run-time.</strong> (<em>change</em>) – </p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-odd">Returns</dt>
|
||
<dd class="field-odd"><p><em>Deferred</em> – This is an asynchronous Twisted object that
|
||
will not fire until the command has actually finished
|
||
executing. To overload this one needs to attach
|
||
callback functions to it, with addCallback(function).
|
||
This function will be called with an eventual return
|
||
value from the command execution. This return is not
|
||
used at all by Evennia by default, but might be useful
|
||
for coders intending to implement some sort of nested
|
||
command structure.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.msg">
|
||
<code class="sig-name descname">msg</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">text</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">from_obj</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">session</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">options</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.msg"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.msg" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Emits something to a session attached to the object.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Keyword Arguments</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>text</strong> (<em>str</em><em> or </em><em>tuple</em>) – The message to send. This
|
||
is treated internally like any send-command, so its
|
||
value can be a tuple if sending multiple arguments to
|
||
the <strong>text</strong> oob command.</p></li>
|
||
<li><p><strong>from_obj</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a><em>, </em><a class="reference internal" href="evennia.accounts.accounts.html#evennia.accounts.accounts.DefaultAccount" title="evennia.accounts.accounts.DefaultAccount"><em>DefaultAccount</em></a><em>, </em><a class="reference internal" href="evennia.server.session.html#evennia.server.session.Session" title="evennia.server.session.Session"><em>Session</em></a><em>, or </em><a class="reference internal" href="evennia.contrib.game_systems.barter.barter.html#evennia.contrib.game_systems.barter.barter.TradeHandler.list" title="evennia.contrib.game_systems.barter.barter.TradeHandler.list"><em>list</em></a>) – object that is sending. If
|
||
given, at_msg_send will be called. This value will be
|
||
passed on to the protocol. If iterable, will execute hook
|
||
on all entities in it.</p></li>
|
||
<li><p><strong>session</strong> (<a class="reference internal" href="evennia.server.session.html#evennia.server.session.Session" title="evennia.server.session.Session"><em>Session</em></a><em> or </em><a class="reference internal" href="evennia.contrib.game_systems.barter.barter.html#evennia.contrib.game_systems.barter.barter.TradeHandler.list" title="evennia.contrib.game_systems.barter.barter.TradeHandler.list"><em>list</em></a>) – Session or list of
|
||
Sessions to relay data to, if any. If set, will force send
|
||
to these sessions. If unset, who receives the message
|
||
depends on the MULTISESSION_MODE.</p></li>
|
||
<li><p><strong>options</strong> (<em>dict</em>) – Message-specific option-value
|
||
pairs. These will be applied at the protocol level.</p></li>
|
||
<li><p><strong>**kwargs</strong> (<em>string</em><em> or </em><em>tuples</em>) – All kwarg keys not listed above
|
||
will be treated as send-command names and their arguments
|
||
(which can be a string or a tuple).</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
<p class="rubric">Notes</p>
|
||
<p>The <strong>at_msg_receive</strong> method will be called on this Object.
|
||
All extra kwargs will be passed on to the protocol.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.for_contents">
|
||
<code class="sig-name descname">for_contents</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">func</span></em>, <em class="sig-param"><span class="n">exclude</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.for_contents"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.for_contents" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Runs a function on every object contained within this one.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>func</strong> (<em>callable</em>) – Function to call. This must have the
|
||
formal call sign func(obj, <strong>kwargs), where obj is the
|
||
object currently being processed and ****kwargs</strong> are
|
||
passed on from the call to <strong>for_contents</strong>.</p></li>
|
||
<li><p><strong>exclude</strong> (<em>list</em><em>, </em><em>optional</em>) – A list of object not to call the
|
||
function on.</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-even">Keyword Arguments</dt>
|
||
<dd class="field-even"><p><strong>arguments will be passed to the function for all objects.</strong> (<em>Keyword</em>) – </p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.msg_contents">
|
||
<code class="sig-name descname">msg_contents</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">text</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">exclude</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">from_obj</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">mapping</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">raise_funcparse_errors</span><span class="o">=</span><span class="default_value">False</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.msg_contents"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.msg_contents" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Emits a message to all objects inside this object.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>text</strong> (<em>str</em><em> or </em><em>tuple</em>) – Message to send. If a tuple, this should be
|
||
on the valid OOB outmessage form <strong>(message, {kwargs})</strong>,
|
||
where kwargs are optional data passed to the <strong>text</strong>
|
||
outputfunc. The message will be parsed for <strong>{key}</strong> formatting and
|
||
<strong>$You/$you()/$You()</strong>, <strong>$obj(name)</strong>, <strong>$conj(verb)</strong> and <strong>$pron(pronoun, option)</strong>
|
||
inline function callables.
|
||
The <strong>name</strong> is taken from the <strong>mapping</strong> kwarg {“name”: object, …}**.
|
||
The <strong>mapping[key].get_display_name(looker=recipient)</strong> will be called
|
||
for that key for every recipient of the string.</p></li>
|
||
<li><p><strong>exclude</strong> (<em>list</em><em>, </em><em>optional</em>) – A list of objects not to send to.</p></li>
|
||
<li><p><strong>from_obj</strong> (<em>Object</em><em>, </em><em>optional</em>) – An object designated as the
|
||
“sender” of the message. See <strong>DefaultObject.msg()</strong> for
|
||
more info. This will be used for <strong>$You/you</strong> if using funcparser inlines.</p></li>
|
||
<li><p><strong>mapping</strong> (<em>dict</em><em>, </em><em>optional</em>) – A mapping of formatting keys
|
||
<strong>{“key”:<object>, “key2”:<object2>,…}.
|
||
The keys must either match **{key}</strong> or <strong>$You(key)/$you(key)</strong> markers
|
||
in the <strong>text</strong> string. If <strong><object></strong> doesn’t have a <strong>get_display_name</strong>
|
||
method, it will be returned as a string. Pass “you” to represent the caller,
|
||
this can be skipped if <strong>from_obj</strong> is provided (that will then act as ‘you’).</p></li>
|
||
<li><p><strong>raise_funcparse_errors</strong> (<em>bool</em><em>, </em><em>optional</em>) – If set, a failing <strong>$func()</strong> will
|
||
lead to an outright error. If unset (default), the failing <strong>$func()</strong>
|
||
will instead appear in output unparsed.</p></li>
|
||
<li><p><strong>**kwargs</strong> – Keyword arguments will be passed on to <strong>obj.msg()</strong> for all
|
||
messaged objects.</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
<p class="rubric">Notes</p>
|
||
<p>For ‘actor-stance’ reporting (You say/Name says), use the
|
||
<strong>$You()/$you()/$You(key)</strong> and <strong>$conj(verb)</strong> (verb-conjugation)
|
||
inline callables. This will use the respective <strong>get_display_name()</strong>
|
||
for all onlookers except for <strong>from_obj or self</strong>, which will become
|
||
‘You/you’. If you use <strong>$You/you(key)</strong>, the key must be in <strong>mapping</strong>.</p>
|
||
<p>For ‘director-stance’ reporting (Name says/Name says), use {key}
|
||
syntax directly. For both <strong>{key}</strong> and <strong>You/you(key)</strong>,
|
||
<strong>mapping[key].get_display_name(looker=recipient)</strong> may be called
|
||
depending on who the recipient is.</p>
|
||
<p class="rubric">Examples</p>
|
||
<p>Let’s assume:</p>
|
||
<ul class="simple">
|
||
<li><p><strong>player1.key</strong> -> “Player1”,</p></li>
|
||
<li><p><strong>player1.get_display_name(looker=player2)</strong> -> “The First girl”</p></li>
|
||
<li><p><strong>player2.key</strong> -> “Player2”,</p></li>
|
||
<li><p><strong>player2.get_display_name(looker=player1)</strong> -> “The Second girl”</p></li>
|
||
</ul>
|
||
<p>Actor-stance:</p>
|
||
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">char</span><span class="o">.</span><span class="n">location</span><span class="o">.</span><span class="n">msg_contents</span><span class="p">(</span>
|
||
<span class="s2">"$You() $conj(attack) $you(defender)."</span><span class="p">,</span>
|
||
<span class="n">from_obj</span><span class="o">=</span><span class="n">player1</span><span class="p">,</span>
|
||
<span class="n">mapping</span><span class="o">=</span><span class="p">{</span><span class="s2">"defender"</span><span class="p">:</span> <span class="n">player2</span><span class="p">})</span>
|
||
</pre></div>
|
||
</div>
|
||
<ul class="simple">
|
||
<li><p>player1 will see <strong>You attack The Second girl.</strong></p></li>
|
||
<li><p>player2 will see ‘The First girl attacks you.’</p></li>
|
||
</ul>
|
||
<p>Director-stance:</p>
|
||
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">char</span><span class="o">.</span><span class="n">location</span><span class="o">.</span><span class="n">msg_contents</span><span class="p">(</span>
|
||
<span class="s2">"</span><span class="si">{attacker}</span><span class="s2"> attacks </span><span class="si">{defender}</span><span class="s2">."</span><span class="p">,</span>
|
||
<span class="n">mapping</span><span class="o">=</span><span class="p">{</span><span class="s2">"attacker"</span><span class="p">:</span><span class="n">player1</span><span class="p">,</span> <span class="s2">"defender"</span><span class="p">:</span><span class="n">player2</span><span class="p">})</span>
|
||
</pre></div>
|
||
</div>
|
||
<ul class="simple">
|
||
<li><p>player1 will see: ‘Player1 attacks The Second girl.’</p></li>
|
||
<li><p>player2 will see: ‘The First girl attacks Player2’</p></li>
|
||
</ul>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.move_to">
|
||
<code class="sig-name descname">move_to</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">destination</span></em>, <em class="sig-param"><span class="n">quiet</span><span class="o">=</span><span class="default_value">False</span></em>, <em class="sig-param"><span class="n">emit_to_obj</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">use_destination</span><span class="o">=</span><span class="default_value">True</span></em>, <em class="sig-param"><span class="n">to_none</span><span class="o">=</span><span class="default_value">False</span></em>, <em class="sig-param"><span class="n">move_hooks</span><span class="o">=</span><span class="default_value">True</span></em>, <em class="sig-param"><span class="n">move_type</span><span class="o">=</span><span class="default_value">'move'</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.move_to"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.move_to" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Moves this object to a new location.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>destination</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – Reference to the object to move to. This
|
||
can also be an exit object, in which case the
|
||
destination property is used as destination.</p></li>
|
||
<li><p><strong>quiet</strong> (<em>bool</em>) – If true, turn off the calling of the emit hooks
|
||
(announce_move_to/from etc)</p></li>
|
||
<li><p><strong>emit_to_obj</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – object to receive error messages</p></li>
|
||
<li><p><strong>use_destination</strong> (<em>bool</em>) – Default is for objects to use the “destination”
|
||
property of destinations as the target to move to. Turning off this
|
||
keyword allows objects to move “inside” exit objects.</p></li>
|
||
<li><p><strong>to_none</strong> (<em>bool</em>) – Allow destination to be None. Note that no hooks are run when
|
||
moving to a None location. If you want to run hooks, run them manually
|
||
(and make sure they can manage None locations).</p></li>
|
||
<li><p><strong>move_hooks</strong> (<em>bool</em>) – If False, turn off the calling of move-related hooks
|
||
(at_pre/post_move etc) with quiet=True, this is as quiet a move
|
||
as can be done.</p></li>
|
||
<li><p><strong>move_type</strong> (<em>str</em>) – The “kind of move” being performed, such as “teleport”, “traverse”,
|
||
“get”, “give”, or “drop”. The value can be arbitrary. By default, it only affects
|
||
the text message generated by announce_move_to and announce_move_from by defining
|
||
their {“type”: move_type} for outgoing text. This can be used for altering
|
||
messages and/or overloaded hook behaviors.</p></li>
|
||
<li><p><strong>**kwargs</strong> – Passed on to all movement- and announcement hooks. Use in your game to let
|
||
hooks know about any special condition of the move (such as running or sneaking).
|
||
Exits will pass an “exit_obj” kwarg.</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-even">Returns</dt>
|
||
<dd class="field-even"><p><em>bool</em> – True/False depending on if there were problems with the move. This method may also
|
||
return various error messages to the <strong>emit_to_obj</strong>.</p>
|
||
</dd>
|
||
</dl>
|
||
<p class="rubric">Notes</p>
|
||
<p>No access checks are done in this method, these should be handled before
|
||
calling <strong>move_to</strong>.</p>
|
||
<p>The <strong>DefaultObject</strong> hooks called (if <strong>move_hooks=True</strong>) are, in order:</p>
|
||
<ol class="arabic simple">
|
||
<li><p><strong>self.at_pre_move(destination)</strong> (abort if return False)</p></li>
|
||
<li><p><strong>source_location.at_pre_object_leave(self, destination)</strong> (abort if return False)</p></li>
|
||
<li><p><strong>destination.at_pre_object_receive(self, source_location)</strong> (abort if return False)</p></li>
|
||
<li><p><strong>source_location.at_object_leave(self, destination)</strong></p></li>
|
||
<li><p><strong>self.announce_move_from(destination)</strong></p></li>
|
||
<li><p>(move happens here)</p></li>
|
||
<li><p><strong>self.announce_move_to(source_location)</strong></p></li>
|
||
<li><p><strong>destination.at_object_receive(self, source_location)</strong></p></li>
|
||
<li><p><strong>self.at_post_move(source_location)</strong></p></li>
|
||
</ol>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.clear_exits">
|
||
<code class="sig-name descname">clear_exits</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.clear_exits"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.clear_exits" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Destroys all of the exits and any exits pointing to this
|
||
object as a destination.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.clear_contents">
|
||
<code class="sig-name descname">clear_contents</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.clear_contents"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.clear_contents" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Moves all objects (accounts/things) to their home location or
|
||
to default home.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.get_default_lockstring">
|
||
<em class="property">classmethod </em><code class="sig-name descname">get_default_lockstring</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">account</span><span class="p">:</span> <span class="n">DefaultAccount</span> <span class="o">=</span> <span class="default_value">None</span></em>, <em class="sig-param"><span class="n">caller</span><span class="p">:</span> <span class="n"><a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject">DefaultObject</a></span> <span class="o">=</span> <span class="default_value">None</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.get_default_lockstring"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.get_default_lockstring" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Classmethod called during .create() to determine default locks for the object.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>account</strong> (<a class="reference internal" href="evennia.accounts.accounts.html#evennia.accounts.accounts.DefaultAccount" title="evennia.accounts.accounts.DefaultAccount"><em>DefaultAccount</em></a>) – Account to attribute this object to.</p></li>
|
||
<li><p><strong>caller</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The object which is creating this one.</p></li>
|
||
<li><p><strong>**kwargs</strong> – Arbitrary input.</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-even">Returns</dt>
|
||
<dd class="field-even"><p><em>str</em> – A lockstring to use for this object.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.create">
|
||
<em class="property">classmethod </em><code class="sig-name descname">create</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">key</span><span class="p">:</span> <span class="n">str</span></em>, <em class="sig-param"><span class="n">account</span><span class="p">:</span> <span class="n">DefaultAccount</span> <span class="o">=</span> <span class="default_value">None</span></em>, <em class="sig-param"><span class="n">caller</span><span class="p">:</span> <span class="n"><a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject">DefaultObject</a></span> <span class="o">=</span> <span class="default_value">None</span></em>, <em class="sig-param"><span class="n">method</span><span class="p">:</span> <span class="n">str</span> <span class="o">=</span> <span class="default_value">'create'</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.create"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.create" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Creates a basic object with default parameters, unless otherwise
|
||
specified or extended.</p>
|
||
<p>Provides a friendlier interface to the utils.create_object() function.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><p><strong>key</strong> (<em>str</em>) – Name of the new object.</p>
|
||
</dd>
|
||
<dt class="field-even">Keyword Arguments</dt>
|
||
<dd class="field-even"><ul class="simple">
|
||
<li><p><strong>account</strong> (<a class="reference internal" href="evennia.accounts.accounts.html#evennia.accounts.accounts.DefaultAccount" title="evennia.accounts.accounts.DefaultAccount"><em>DefaultAccount</em></a>) – Account to attribute this object to.</p></li>
|
||
<li><p><strong>caller</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The object which is creating this one.</p></li>
|
||
<li><p><strong>description</strong> (<em>str</em>) – Brief description for this object.</p></li>
|
||
<li><p><strong>ip</strong> (<em>str</em>) – IP address of creator (for object auditing).</p></li>
|
||
<li><p><strong>method</strong> (<em>str</em>) – The method of creation. Defaults to “create”.</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-odd">Returns</dt>
|
||
<dd class="field-odd"><p><em>tuple</em> – A tuple (Object, errors): A newly created object of the given typeclass. This
|
||
will be <strong>None</strong> if there are errors. The second element is then a list of errors that
|
||
occurred during creation. If this is empty, it’s safe to assume the object was created
|
||
successfully.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.copy">
|
||
<code class="sig-name descname">copy</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">new_key</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.copy"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.copy" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Makes an identical copy of this object, identical except for a
|
||
new dbref in the database. If you want to customize the copy
|
||
by changing some settings, use ObjectDB.object.copy_object()
|
||
directly.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><p><strong>new_key</strong> (<em>string</em>) – New key/name of copied object. If new_key is not
|
||
specified, the copy will be named <old_key>_copy by default.</p>
|
||
</dd>
|
||
<dt class="field-even">Returns</dt>
|
||
<dd class="field-even"><p><em>Object</em> – A copy of this object.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.at_object_post_copy">
|
||
<code class="sig-name descname">at_object_post_copy</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">new_obj</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.at_object_post_copy"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.at_object_post_copy" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Called by DefaultObject.copy(). Meant to be overloaded. In case there’s extra data not
|
||
covered by .copy(), this can be used to deal with it.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><p><strong>new_obj</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The new Copy of this object.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.delete">
|
||
<code class="sig-name descname">delete</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.delete"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.delete" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Deletes this object. Before deletion, this method makes sure
|
||
to move all contained objects to their respective home
|
||
locations, as well as clean up all exits to/from the object.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Returns</dt>
|
||
<dd class="field-odd"><p><em>bool</em> – Whether or not the delete completed successfully or not.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.access">
|
||
<code class="sig-name descname">access</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">accessing_obj</span></em>, <em class="sig-param"><span class="n">access_type</span><span class="o">=</span><span class="default_value">'read'</span></em>, <em class="sig-param"><span class="n">default</span><span class="o">=</span><span class="default_value">False</span></em>, <em class="sig-param"><span class="n">no_superuser_bypass</span><span class="o">=</span><span class="default_value">False</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.access"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.access" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Determines if another object has permission to access this object
|
||
in whatever way.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>accessing_obj</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – Object trying to access this one.</p></li>
|
||
<li><p><strong>access_type</strong> (<em>str</em><em>, </em><em>optional</em>) – Type of access sought.</p></li>
|
||
<li><p><strong>default</strong> (<em>bool</em><em>, </em><em>optional</em>) – What to return if no lock of access_type was found.</p></li>
|
||
<li><p><strong>no_superuser_bypass</strong> (<em>bool</em><em>, </em><em>optional</em>) – If <strong>True</strong>, don’t skip
|
||
lock check for superuser (be careful with this one).</p></li>
|
||
<li><p><strong>**kwargs</strong> – Passed on to the at_access hook along with the result of the access check.</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.filter_visible">
|
||
<code class="sig-name descname">filter_visible</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">obj_list</span></em>, <em class="sig-param"><span class="n">looker</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.filter_visible"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.filter_visible" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Filter a list of objects to only include those that are visible to the looker.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>obj_list</strong> (<em>list</em>) – List of objects to filter.</p></li>
|
||
<li><p><strong>looker</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – Object doing the looking.</p></li>
|
||
<li><p><strong>**kwargs</strong> – Arbitrary data for use when overriding.</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-even">Returns</dt>
|
||
<dd class="field-even"><p><em>list</em> – The filtered list of visible objects.</p>
|
||
</dd>
|
||
</dl>
|
||
<p class="rubric">Notes</p>
|
||
<p>By default this simply checks the ‘view’ and ‘search’ locks on each object in the list.
|
||
Override this
|
||
method to implement custom visibility mechanics.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.get_display_name">
|
||
<code class="sig-name descname">get_display_name</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">looker</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.get_display_name"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.get_display_name" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Displays the name of the object in a viewer-aware manner.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><p><strong>looker</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The object or account that is looking at or getting information
|
||
for this object.</p>
|
||
</dd>
|
||
<dt class="field-even">Returns</dt>
|
||
<dd class="field-even"><p><em>str</em> – A name to display for this object. By default this returns the <strong>.name</strong> of the object.</p>
|
||
</dd>
|
||
</dl>
|
||
<p class="rubric">Notes</p>
|
||
<p>This function can be extended to change how object names appear to users in character,
|
||
but it does not change an object’s keys or aliases when searching.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.get_extra_display_name_info">
|
||
<code class="sig-name descname">get_extra_display_name_info</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">looker</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.get_extra_display_name_info"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.get_extra_display_name_info" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Adds any extra display information to the object’s name. By default this is is the
|
||
object’s dbref in parentheses, if the looker has permission to see it.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><p><strong>looker</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The object looking at this object.</p>
|
||
</dd>
|
||
<dt class="field-even">Returns</dt>
|
||
<dd class="field-even"><p><em>str</em> – The dbref of this object, if the looker has permission to see it. Otherwise, an
|
||
empty string is returned.</p>
|
||
</dd>
|
||
</dl>
|
||
<p class="rubric">Notes</p>
|
||
<p>By default, this becomes a string (#dbref) attached to the object’s name.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.get_numbered_name">
|
||
<code class="sig-name descname">get_numbered_name</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">count</span></em>, <em class="sig-param"><span class="n">looker</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.get_numbered_name"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.get_numbered_name" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Return the numbered (singular, plural) forms of this object’s key. This is by default called
|
||
by return_appearance and is used for grouping multiple same-named of this object. Note that
|
||
this will be called on <em>every</em> member of a group even though the plural name will be only
|
||
shown once. Also the singular display version, such as ‘an apple’, ‘a tree’ is determined
|
||
from this method.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>count</strong> (<em>int</em>) – Number of objects of this type</p></li>
|
||
<li><p><strong>looker</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – Onlooker. Not used by default.</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-even">Keyword Arguments</dt>
|
||
<dd class="field-even"><ul class="simple">
|
||
<li><p><strong>key</strong> (<em>str</em>) – Optional key to pluralize. If not given, the object’s <strong>.get_display_name()</strong>
|
||
method is used.</p></li>
|
||
<li><p><strong>return_string</strong> (<em>bool</em>) – If <strong>True</strong>, return only the singular form if count is 0,1 or
|
||
the plural form otherwise. If <strong>False</strong> (default), return both forms as a tuple.</p></li>
|
||
<li><p><strong>no_article</strong> (<em>bool</em>) – If <strong>True</strong>, do not return an article if <strong>count</strong> is 1.</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-odd">Returns</dt>
|
||
<dd class="field-odd"><p><em>tuple</em> – This is a tuple <strong>(str, str)</strong> with the singular and plural forms of the key
|
||
including the count.</p>
|
||
</dd>
|
||
</dl>
|
||
<p>Examples:</p>
|
||
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">obj</span><span class="o">.</span><span class="n">get_numbered_name</span><span class="p">(</span><span class="mi">3</span><span class="p">,</span> <span class="n">looker</span><span class="p">,</span> <span class="n">key</span><span class="o">=</span><span class="s2">"foo"</span><span class="p">)</span>
|
||
<span class="o">-></span> <span class="p">(</span><span class="s2">"a foo"</span><span class="p">,</span> <span class="s2">"three foos"</span><span class="p">)</span>
|
||
<span class="n">obj</span><span class="o">.</span><span class="n">get_numbered_name</span><span class="p">(</span><span class="mi">1</span><span class="p">,</span> <span class="n">looker</span><span class="p">,</span> <span class="n">key</span><span class="o">=</span><span class="s2">"Foobert"</span><span class="p">,</span> <span class="n">return_string</span><span class="o">=</span><span class="kc">True</span><span class="p">)</span>
|
||
<span class="o">-></span> <span class="s2">"a Foobert"</span>
|
||
<span class="n">obj</span><span class="o">.</span><span class="n">get_numbered_name</span><span class="p">(</span><span class="mi">1</span><span class="p">,</span> <span class="n">looker</span><span class="p">,</span> <span class="n">key</span><span class="o">=</span><span class="s2">"Foobert"</span><span class="p">,</span> <span class="n">return_string</span><span class="o">=</span><span class="kc">True</span><span class="p">,</span> <span class="n">no_article</span><span class="o">=</span><span class="kc">True</span><span class="p">)</span>
|
||
<span class="o">-></span> <span class="s2">"Foobert"</span>
|
||
</pre></div>
|
||
</div>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.get_display_header">
|
||
<code class="sig-name descname">get_display_header</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">looker</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.get_display_header"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.get_display_header" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Get the ‘header’ component of the object description. Called by <strong>return_appearance</strong>.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>looker</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – Object doing the looking.</p></li>
|
||
<li><p><strong>**kwargs</strong> – Arbitrary data for use when overriding.</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-even">Returns</dt>
|
||
<dd class="field-even"><p><em>str</em> – The header display string.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.get_display_desc">
|
||
<code class="sig-name descname">get_display_desc</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">looker</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.get_display_desc"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.get_display_desc" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Get the ‘desc’ component of the object description. Called by <strong>return_appearance</strong>.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>looker</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – Object doing the looking.</p></li>
|
||
<li><p><strong>**kwargs</strong> – Arbitrary data for use when overriding.</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-even">Returns</dt>
|
||
<dd class="field-even"><p><em>str</em> – The desc display string.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.get_display_exits">
|
||
<code class="sig-name descname">get_display_exits</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">looker</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.get_display_exits"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.get_display_exits" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Get the ‘exits’ component of the object description. Called by <strong>return_appearance</strong>.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>looker</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – Object doing the looking.</p></li>
|
||
<li><p><strong>**kwargs</strong> – Arbitrary data for use when overriding.</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-even">Keyword Arguments</dt>
|
||
<dd class="field-even"><p><strong>exit_order</strong> (<em>iterable of str</em>) – The order in which exits should be listed, with
|
||
unspecified exits appearing at the end, alphabetically.</p>
|
||
</dd>
|
||
<dt class="field-odd">Returns</dt>
|
||
<dd class="field-odd"><p><em>str</em> – The exits display data.</p>
|
||
</dd>
|
||
</dl>
|
||
<p>Examples:</p>
|
||
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">For</span> <span class="n">a</span> <span class="n">room</span> <span class="k">with</span> <span class="n">exits</span> <span class="ow">in</span> <span class="n">the</span> <span class="n">order</span> <span class="s1">'portal'</span><span class="p">,</span> <span class="s1">'south'</span><span class="p">,</span> <span class="s1">'north'</span><span class="p">,</span> <span class="ow">and</span> <span class="s1">'out'</span><span class="p">:</span>
|
||
<span class="n">obj</span><span class="o">.</span><span class="n">get_display_name</span><span class="p">(</span><span class="n">looker</span><span class="p">,</span> <span class="n">exit_order</span><span class="o">=</span><span class="p">(</span><span class="s1">'north'</span><span class="p">,</span> <span class="s1">'south'</span><span class="p">))</span>
|
||
<span class="o">-></span> <span class="s2">"Exits: north, south, out, and portal."</span> <span class="p">(</span><span class="n">markup</span> <span class="ow">not</span> <span class="n">shown</span> <span class="n">here</span><span class="p">)</span>
|
||
</pre></div>
|
||
</div>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.get_display_characters">
|
||
<code class="sig-name descname">get_display_characters</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">looker</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.get_display_characters"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.get_display_characters" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Get the ‘characters’ component of the object description. Called by <strong>return_appearance</strong>.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>looker</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – Object doing the looking.</p></li>
|
||
<li><p><strong>**kwargs</strong> – Arbitrary data for use when overriding.</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-even">Returns</dt>
|
||
<dd class="field-even"><p><em>str</em> – The character display data.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.get_display_things">
|
||
<code class="sig-name descname">get_display_things</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">looker</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.get_display_things"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.get_display_things" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Get the ‘things’ component of the object description. Called by <strong>return_appearance</strong>.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>looker</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – Object doing the looking.</p></li>
|
||
<li><p><strong>**kwargs</strong> – Arbitrary data for use when overriding.</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-even">Returns</dt>
|
||
<dd class="field-even"><p><em>str</em> – The things display data.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.get_display_footer">
|
||
<code class="sig-name descname">get_display_footer</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">looker</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.get_display_footer"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.get_display_footer" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Get the ‘footer’ component of the object description. Called by <strong>return_appearance</strong>.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>looker</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – Object doing the looking.</p></li>
|
||
<li><p><strong>**kwargs</strong> – Arbitrary data for use when overriding.</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-even">Returns</dt>
|
||
<dd class="field-even"><p><em>str</em> – The footer display string.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.format_appearance">
|
||
<code class="sig-name descname">format_appearance</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">appearance</span></em>, <em class="sig-param"><span class="n">looker</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.format_appearance"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.format_appearance" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Final processing of the entire appearance string. Called by <strong>return_appearance</strong>.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>appearance</strong> (<em>str</em>) – The compiled appearance string.</p></li>
|
||
<li><p><strong>looker</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – Object doing the looking.</p></li>
|
||
<li><p><strong>**kwargs</strong> – Arbitrary data for use when overriding.</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-even">Returns</dt>
|
||
<dd class="field-even"><p><em>str</em> – The final formatted output.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.return_appearance">
|
||
<code class="sig-name descname">return_appearance</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">looker</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.return_appearance"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.return_appearance" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Main callback used by ‘look’ for the object to describe itself.
|
||
This formats a description. By default, this looks for the <strong>appearance_template</strong>
|
||
string set on this class and populates it with formatting keys
|
||
‘name’, ‘desc’, ‘exits’, ‘characters’, ‘things’ as well as
|
||
(currently empty) ‘header’/’footer’. Each of these values are
|
||
retrieved by a matching method <strong>.get_display_*</strong>, such as <strong>get_display_name</strong>,
|
||
<strong>get_display_footer</strong> etc.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>looker</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – Object doing the looking. Passed into all helper methods.</p></li>
|
||
<li><p><strong>**kwargs</strong> (<em>dict</em>) – Arbitrary, optional arguments for users
|
||
overriding the call. This is passed into all helper methods.</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-even">Returns</dt>
|
||
<dd class="field-even"><p><em>str</em> – The description of this entity. By default this includes
|
||
the entity’s name, description and any contents inside it.</p>
|
||
</dd>
|
||
</dl>
|
||
<p class="rubric">Notes</p>
|
||
<p>To simply change the layout of how the object displays itself (like
|
||
adding some line decorations or change colors of different sections),
|
||
you can simply edit <strong>.appearance_template</strong>. You only need to override
|
||
this method (and/or its helpers) if you want to change what is passed
|
||
into the template or want the most control over output.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.at_first_save">
|
||
<code class="sig-name descname">at_first_save</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.at_first_save"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.at_first_save" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>This is called by the typeclass system whenever an instance of
|
||
this class is saved for the first time. It is a generic hook
|
||
for calling the startup hooks for the various game entities.
|
||
When overloading you generally don’t overload this but
|
||
overload the hooks called by this method.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.basetype_setup">
|
||
<code class="sig-name descname">basetype_setup</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.basetype_setup"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.basetype_setup" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>This sets up the default properties of an Object, just before
|
||
the more general at_object_creation.</p>
|
||
<p>You normally don’t need to change this unless you change some
|
||
fundamental things like names of permission groups.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.basetype_posthook_setup">
|
||
<code class="sig-name descname">basetype_posthook_setup</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.basetype_posthook_setup"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.basetype_posthook_setup" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Called once, after basetype_setup and at_object_creation. This
|
||
should generally not be overloaded unless you are redefining
|
||
how a room/exit/object works. It allows for basetype-like
|
||
setup after the object is created. An example of this is
|
||
EXITs, who need to know keys, aliases, locks etc to set up
|
||
their exit-cmdsets.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.at_object_creation">
|
||
<code class="sig-name descname">at_object_creation</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.at_object_creation"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.at_object_creation" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Called once, when this object is first created. This is the
|
||
normal hook to overload for most object types.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.at_object_post_creation">
|
||
<code class="sig-name descname">at_object_post_creation</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.at_object_post_creation"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.at_object_post_creation" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Called once, when this object is first created and after any attributes, tags, etc.
|
||
that were passed to the <strong>create_object</strong> function or defined in a prototype have been
|
||
applied.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.at_object_delete">
|
||
<code class="sig-name descname">at_object_delete</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.at_object_delete"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.at_object_delete" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Called just before the database object is persistently
|
||
delete()d from the database. If this method returns False,
|
||
deletion is aborted.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.at_object_post_spawn">
|
||
<code class="sig-name descname">at_object_post_spawn</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">prototype</span><span class="o">=</span><span class="default_value">None</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.at_object_post_spawn"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.at_object_post_spawn" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Called when this object is spawned or updated from a prototype, after all other
|
||
hooks have been run.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Keyword Arguments</dt>
|
||
<dd class="field-odd"><p><strong>prototype</strong> (<em>dict</em>) – The prototype that was used to spawn or update this object.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.at_init">
|
||
<code class="sig-name descname">at_init</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.at_init"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.at_init" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>This is always called whenever this object is initiated –
|
||
that is, whenever it its typeclass is cached from memory. This
|
||
happens on-demand first time the object is used or activated
|
||
in some way after being created but also after each server
|
||
restart or reload.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.at_cmdset_get">
|
||
<code class="sig-name descname">at_cmdset_get</code><span class="sig-paren">(</span><em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.at_cmdset_get"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.at_cmdset_get" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Called just before cmdsets on this object are requested by the
|
||
command handler. If changes need to be done on the fly to the
|
||
cmdset before passing them on to the cmdhandler, this is the
|
||
place to do it. This is called also if the object currently
|
||
have no cmdsets.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Keyword Arguments</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>caller</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a><em>, </em><a class="reference internal" href="evennia.accounts.accounts.html#evennia.accounts.accounts.DefaultAccount" title="evennia.accounts.accounts.DefaultAccount"><em>DefaultAccount</em></a><em> or </em><a class="reference internal" href="evennia.server.session.html#evennia.server.session.Session" title="evennia.server.session.Session"><em>Session</em></a>) – The object requesting the cmdsets.</p></li>
|
||
<li><p><strong>current</strong> (<a class="reference internal" href="evennia.commands.cmdset.html#evennia.commands.cmdset.CmdSet" title="evennia.commands.cmdset.CmdSet"><em>CmdSet</em></a>) – The current merged cmdset.</p></li>
|
||
<li><p><strong>force_init</strong> (<em>bool</em>) – If <strong>True</strong>, force a re-build of the cmdset. (seems unused)</p></li>
|
||
<li><p><strong>**kwargs</strong> – Arbitrary input for overloads.</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.get_cmdsets">
|
||
<code class="sig-name descname">get_cmdsets</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">caller</span></em>, <em class="sig-param"><span class="n">current</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.get_cmdsets"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.get_cmdsets" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Called by the CommandHandler to get a list of cmdsets to merge.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>caller</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The object requesting the cmdsets.</p></li>
|
||
<li><p><strong>current</strong> (<em>cmdset</em>) – The current merged cmdset.</p></li>
|
||
<li><p><strong>**kwargs</strong> – Arbitrary input for overloads.</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-even">Returns</dt>
|
||
<dd class="field-even"><p><em>tuple</em> – A tuple of (current, cmdsets), which is probably self.cmdset.current and self.cmdset.cmdset_stack</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.at_pre_puppet">
|
||
<code class="sig-name descname">at_pre_puppet</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">account</span></em>, <em class="sig-param"><span class="n">session</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.at_pre_puppet"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.at_pre_puppet" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Called just before an Account connects to this object to puppet
|
||
it.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>account</strong> (<a class="reference internal" href="evennia.accounts.accounts.html#evennia.accounts.accounts.DefaultAccount" title="evennia.accounts.accounts.DefaultAccount"><em>DefaultAccount</em></a>) – This is the connecting account.</p></li>
|
||
<li><p><strong>session</strong> (<a class="reference internal" href="evennia.server.session.html#evennia.server.session.Session" title="evennia.server.session.Session"><em>Session</em></a>) – Session controlling the connection.</p></li>
|
||
<li><p><strong>**kwargs</strong> – Arbitrary, optional arguments for users
|
||
overriding the call (unused by default).</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.at_post_puppet">
|
||
<code class="sig-name descname">at_post_puppet</code><span class="sig-paren">(</span><em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.at_post_puppet"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.at_post_puppet" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Called just after puppeting has been completed and all
|
||
Account<->Object links have been established.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><p><strong>**kwargs</strong> – Arbitrary, optional arguments for users
|
||
overriding the call (unused by default).</p>
|
||
</dd>
|
||
</dl>
|
||
<p class="rubric">Notes</p>
|
||
<p>You can use <strong>self.account</strong> and <strong>self.sessions.get()</strong> to get account and sessions at this
|
||
point; the last entry in the list from <strong>self.sessions.get()</strong> is the latest Session
|
||
puppeting this Object.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.at_pre_unpuppet">
|
||
<code class="sig-name descname">at_pre_unpuppet</code><span class="sig-paren">(</span><em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.at_pre_unpuppet"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.at_pre_unpuppet" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Called just before beginning to un-connect a puppeting from
|
||
this Account.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><p><strong>**kwargs</strong> – Arbitrary, optional arguments for users
|
||
overriding the call (unused by default).</p>
|
||
</dd>
|
||
</dl>
|
||
<p class="rubric">Notes</p>
|
||
<p>You can use <strong>self.account</strong> and <strong>self.sessions.get()</strong> to get
|
||
account and sessions at this point; the last entry in the
|
||
list from <strong>self.sessions.get()</strong> is the latest Session
|
||
puppeting this Object.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.at_post_unpuppet">
|
||
<code class="sig-name descname">at_post_unpuppet</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">account</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">session</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.at_post_unpuppet"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.at_post_unpuppet" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Called just after the Account successfully disconnected from
|
||
this object, severing all connections.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>account</strong> (<a class="reference internal" href="evennia.accounts.accounts.html#evennia.accounts.accounts.DefaultAccount" title="evennia.accounts.accounts.DefaultAccount"><em>DefaultAccount</em></a>) – The account object that just disconnected
|
||
from this object. This can be <strong>None</strong> if this is called
|
||
automatically (such as after a cleanup operation).</p></li>
|
||
<li><p><strong>session</strong> (<a class="reference internal" href="evennia.server.session.html#evennia.server.session.Session" title="evennia.server.session.Session"><em>Session</em></a>) – Session id controlling the connection that
|
||
just disconnected.</p></li>
|
||
<li><p><strong>**kwargs</strong> – Arbitrary, optional arguments for users
|
||
overriding the call (unused by default).</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.at_server_reload">
|
||
<code class="sig-name descname">at_server_reload</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.at_server_reload"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.at_server_reload" title="Permalink 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 id="evennia.objects.objects.DefaultObject.at_server_shutdown">
|
||
<code class="sig-name descname">at_server_shutdown</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.at_server_shutdown"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.at_server_shutdown" title="Permalink 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 id="evennia.objects.objects.DefaultObject.at_access">
|
||
<code class="sig-name descname">at_access</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">result</span></em>, <em class="sig-param"><span class="n">accessing_obj</span></em>, <em class="sig-param"><span class="n">access_type</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.at_access"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.at_access" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>This is called with the result of an access call, along with
|
||
any kwargs used for that call. The return of this method does
|
||
not affect the result of the lock check. It can be used e.g. to
|
||
customize error messages in a central location or other effects
|
||
based on the access result.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>result</strong> (<em>bool</em>) – The outcome of the access call.</p></li>
|
||
<li><p><strong>accessing_obj</strong> (<em>Object</em><em> or </em><em>Account</em>) – The entity trying to gain access.</p></li>
|
||
<li><p><strong>access_type</strong> (<em>str</em>) – The type of access that was requested.</p></li>
|
||
<li><p><strong>**kwargs</strong> – Arbitrary, optional arguments. Unused by default.</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.at_pre_move">
|
||
<code class="sig-name descname">at_pre_move</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">destination</span></em>, <em class="sig-param"><span class="n">move_type</span><span class="o">=</span><span class="default_value">'move'</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.at_pre_move"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.at_pre_move" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Called just before starting to move this object to
|
||
destination. Return False to abort move.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>destination</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The object we are moving to</p></li>
|
||
<li><p><strong>move_type</strong> (<em>str</em>) – The type of move. “give”, “traverse”, etc.
|
||
This is an arbitrary string provided to obj.move_to().
|
||
Useful for altering messages or altering logic depending
|
||
on the kind of movement.</p></li>
|
||
<li><p><strong>**kwargs</strong> – Arbitrary, optional arguments for users
|
||
overriding the call (unused by default).</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-even">Returns</dt>
|
||
<dd class="field-even"><p><em>bool</em> – If we should move or not.</p>
|
||
</dd>
|
||
</dl>
|
||
<p class="rubric">Notes</p>
|
||
<p>If this method returns <strong>False</strong> or <strong>None</strong>, the move is cancelled
|
||
before it is even started.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.at_pre_object_leave">
|
||
<code class="sig-name descname">at_pre_object_leave</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">leaving_object</span></em>, <em class="sig-param"><span class="n">destination</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.at_pre_object_leave"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.at_pre_object_leave" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Called just before this object is about lose an object that was
|
||
previously ‘inside’ it. Return False to abort move.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>leaving_object</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The object that is about to leave.</p></li>
|
||
<li><p><strong>destination</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – Where object is going to.</p></li>
|
||
<li><p><strong>**kwargs</strong> – Arbitrary, optional arguments for users
|
||
overriding the call (unused by default).</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-even">Returns</dt>
|
||
<dd class="field-even"><p><em>bool</em> – If <strong>leaving_object</strong> should be allowed to leave or not.</p>
|
||
</dd>
|
||
</dl>
|
||
<p class="rubric">Notes</p>
|
||
<p>If this method returns <strong>False</strong> or <strong>None</strong>, the move is canceled before
|
||
it even started.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.at_pre_object_receive">
|
||
<code class="sig-name descname">at_pre_object_receive</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">arriving_object</span></em>, <em class="sig-param"><span class="n">source_location</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.at_pre_object_receive"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.at_pre_object_receive" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Called just before this object received another object. If this
|
||
method returns <strong>False</strong>, the move is aborted and the moved entity
|
||
remains where it was.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>arriving_object</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The object moved into this one</p></li>
|
||
<li><p><strong>source_location</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – Where <strong>moved_object</strong> came from.
|
||
Note that this could be <strong>None</strong>.</p></li>
|
||
<li><p><strong>**kwargs</strong> – Arbitrary, optional arguments for users
|
||
overriding the call (unused by default).</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-even">Returns</dt>
|
||
<dd class="field-even"><p><em>bool</em> – If False, abort move and <strong>moved_obj</strong> remains where it was.</p>
|
||
</dd>
|
||
</dl>
|
||
<p class="rubric">Notes</p>
|
||
<p>If this method returns <strong>False</strong> or <strong>None</strong>, the move is canceled before
|
||
it even started.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.at_before_move">
|
||
<code class="sig-name descname">at_before_move</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">destination</span></em>, <em class="sig-param"><span class="n">move_type</span><span class="o">=</span><span class="default_value">'move'</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="headerlink" href="#evennia.objects.objects.DefaultObject.at_before_move" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Called just before starting to move this object to
|
||
destination. Return False to abort move.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>destination</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The object we are moving to</p></li>
|
||
<li><p><strong>move_type</strong> (<em>str</em>) – The type of move. “give”, “traverse”, etc.
|
||
This is an arbitrary string provided to obj.move_to().
|
||
Useful for altering messages or altering logic depending
|
||
on the kind of movement.</p></li>
|
||
<li><p><strong>**kwargs</strong> – Arbitrary, optional arguments for users
|
||
overriding the call (unused by default).</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-even">Returns</dt>
|
||
<dd class="field-even"><p><em>bool</em> – If we should move or not.</p>
|
||
</dd>
|
||
</dl>
|
||
<p class="rubric">Notes</p>
|
||
<p>If this method returns <strong>False</strong> or <strong>None</strong>, the move is cancelled
|
||
before it is even started.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.announce_move_from">
|
||
<code class="sig-name descname">announce_move_from</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">destination</span></em>, <em class="sig-param"><span class="n">msg</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">mapping</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">move_type</span><span class="o">=</span><span class="default_value">'move'</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.announce_move_from"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.announce_move_from" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Called if the move is to be announced. This is
|
||
called while we are still standing in the old
|
||
location.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>destination</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The place we are going to.</p></li>
|
||
<li><p><strong>msg</strong> (<em>str</em><em>, </em><em>optional</em>) – a replacement message.</p></li>
|
||
<li><p><strong>mapping</strong> (<em>dict</em><em>, </em><em>optional</em>) – additional mapping objects.</p></li>
|
||
<li><p><strong>move_type</strong> (<em>str</em>) – The type of move. “give”, “traverse”, etc.
|
||
This is an arbitrary string provided to obj.move_to().
|
||
Useful for altering messages or altering logic depending
|
||
on the kind of movement.</p></li>
|
||
<li><p><strong>**kwargs</strong> – Arbitrary, optional arguments for users
|
||
overriding the call (unused by default).</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
<p class="rubric">Notes</p>
|
||
<p>You can override this method and call its parent with a
|
||
message to simply change the default message. In the string,
|
||
you can use the following as mappings:</p>
|
||
<ul class="simple">
|
||
<li><p><strong>{object}</strong>: the object which is moving.</p></li>
|
||
<li><p><strong>{exit}</strong>: the exit from which the object is moving (if found).</p></li>
|
||
<li><p><strong>{origin}</strong>: the location of the object before the move.</p></li>
|
||
<li><p><strong>{destination}</strong>: the location of the object after moving.</p></li>
|
||
</ul>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.announce_move_to">
|
||
<code class="sig-name descname">announce_move_to</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">source_location</span></em>, <em class="sig-param"><span class="n">msg</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">mapping</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">move_type</span><span class="o">=</span><span class="default_value">'move'</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.announce_move_to"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.announce_move_to" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Called after the move if the move was not quiet. At this point
|
||
we are standing in the new location.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>source_location</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The place we came from</p></li>
|
||
<li><p><strong>msg</strong> (<em>str</em><em>, </em><em>optional</em>) – the replacement message if location.</p></li>
|
||
<li><p><strong>mapping</strong> (<em>dict</em><em>, </em><em>optional</em>) – additional mapping objects.</p></li>
|
||
<li><p><strong>move_type</strong> (<em>str</em>) – The type of move. “give”, “traverse”, etc.
|
||
This is an arbitrary string provided to obj.move_to().
|
||
Useful for altering messages or altering logic depending
|
||
on the kind of movement.</p></li>
|
||
<li><p><strong>**kwargs</strong> – Arbitrary, optional arguments for users
|
||
overriding the call (unused by default).</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
<p class="rubric">Notes</p>
|
||
<p>You can override this method and call its parent with a
|
||
message to simply change the default message. In the string,
|
||
you can use the following as mappings (between braces):</p>
|
||
<ul class="simple">
|
||
<li><p><strong>{object}</strong>: the object which is moving.</p></li>
|
||
<li><p><strong>{exit}</strong>: the exit from which the object is moving (if found).</p></li>
|
||
<li><p><strong>{origin}</strong>: the location of the object before the move.</p></li>
|
||
<li><p><strong>{destination}</strong>: the location of the object after moving.</p></li>
|
||
</ul>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.at_post_move">
|
||
<code class="sig-name descname">at_post_move</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">source_location</span></em>, <em class="sig-param"><span class="n">move_type</span><span class="o">=</span><span class="default_value">'move'</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.at_post_move"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.at_post_move" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Called after move has completed, regardless of quiet mode or
|
||
not. Allows changes to the object due to the location it is
|
||
now in.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>source_location</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – Where we came from. This may be <strong>None</strong>.</p></li>
|
||
<li><p><strong>move_type</strong> (<em>str</em>) – The type of move. “give”, “traverse”, etc.
|
||
This is an arbitrary string provided to obj.move_to().
|
||
Useful for altering messages or altering logic depending
|
||
on the kind of movement.</p></li>
|
||
<li><p><strong>**kwargs</strong> – Arbitrary, optional arguments for users
|
||
overriding the call (unused by default).</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.at_after_move">
|
||
<code class="sig-name descname">at_after_move</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">source_location</span></em>, <em class="sig-param"><span class="n">move_type</span><span class="o">=</span><span class="default_value">'move'</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="headerlink" href="#evennia.objects.objects.DefaultObject.at_after_move" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Called after move has completed, regardless of quiet mode or
|
||
not. Allows changes to the object due to the location it is
|
||
now in.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>source_location</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – Where we came from. This may be <strong>None</strong>.</p></li>
|
||
<li><p><strong>move_type</strong> (<em>str</em>) – The type of move. “give”, “traverse”, etc.
|
||
This is an arbitrary string provided to obj.move_to().
|
||
Useful for altering messages or altering logic depending
|
||
on the kind of movement.</p></li>
|
||
<li><p><strong>**kwargs</strong> – Arbitrary, optional arguments for users
|
||
overriding the call (unused by default).</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.at_object_leave">
|
||
<code class="sig-name descname">at_object_leave</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">moved_obj</span></em>, <em class="sig-param"><span class="n">target_location</span></em>, <em class="sig-param"><span class="n">move_type</span><span class="o">=</span><span class="default_value">'move'</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.at_object_leave"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.at_object_leave" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Called just before an object leaves from inside this object</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>moved_obj</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The object leaving</p></li>
|
||
<li><p><strong>target_location</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – Where <strong>moved_obj</strong> is going.</p></li>
|
||
<li><p><strong>move_type</strong> (<em>str</em>) – The type of move. “give”, “traverse”, etc.
|
||
This is an arbitrary string provided to obj.move_to().
|
||
Useful for altering messages or altering logic depending
|
||
on the kind of movement.</p></li>
|
||
<li><p><strong>**kwargs</strong> – Arbitrary, optional arguments for users
|
||
overriding the call (unused by default).</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.at_object_receive">
|
||
<code class="sig-name descname">at_object_receive</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">moved_obj</span></em>, <em class="sig-param"><span class="n">source_location</span></em>, <em class="sig-param"><span class="n">move_type</span><span class="o">=</span><span class="default_value">'move'</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.at_object_receive"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.at_object_receive" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Called after an object has been moved into this object.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>moved_obj</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The object moved into this one</p></li>
|
||
<li><p><strong>source_location</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – Where <strong>moved_object</strong> came from.
|
||
Note that this could be <strong>None</strong>.</p></li>
|
||
<li><p><strong>move_type</strong> (<em>str</em>) – The type of move. “give”, “traverse”, etc.
|
||
This is an arbitrary string provided to obj.move_to().
|
||
Useful for altering messages or altering logic depending
|
||
on the kind of movement.</p></li>
|
||
<li><p><strong>**kwargs</strong> – Arbitrary, optional arguments for users
|
||
overriding the call (unused by default).</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.at_traverse">
|
||
<code class="sig-name descname">at_traverse</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">traversing_object</span></em>, <em class="sig-param"><span class="n">target_location</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.at_traverse"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.at_traverse" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>This hook is responsible for handling the actual traversal,
|
||
normally by calling
|
||
<strong>traversing_object.move_to(target_location)</strong>. It is normally
|
||
only implemented by Exit objects. If it returns False (usually
|
||
because <strong>move_to</strong> returned False), <strong>at_post_traverse</strong> below
|
||
should not be called and instead <strong>at_failed_traverse</strong> should be
|
||
called.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>traversing_object</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – Object traversing us.</p></li>
|
||
<li><p><strong>target_location</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – Where target is going.</p></li>
|
||
<li><p><strong>**kwargs</strong> – Arbitrary, optional arguments for users
|
||
overriding the call (unused by default).</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.at_post_traverse">
|
||
<code class="sig-name descname">at_post_traverse</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">traversing_object</span></em>, <em class="sig-param"><span class="n">source_location</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.at_post_traverse"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.at_post_traverse" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Called just after an object successfully used this object to
|
||
traverse to another object (i.e. this object is a type of
|
||
Exit)</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>traversing_object</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The object traversing us.</p></li>
|
||
<li><p><strong>source_location</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – Where <strong>traversing_object</strong> came from.</p></li>
|
||
<li><p><strong>**kwargs</strong> (<em>dict</em>) – Arbitrary, optional arguments for users
|
||
overriding the call (unused by default).</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
<p class="rubric">Notes</p>
|
||
<p>The target location should normally be available as <strong>self.destination</strong>.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.at_after_traverse">
|
||
<code class="sig-name descname">at_after_traverse</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">traversing_object</span></em>, <em class="sig-param"><span class="n">source_location</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="headerlink" href="#evennia.objects.objects.DefaultObject.at_after_traverse" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Called just after an object successfully used this object to
|
||
traverse to another object (i.e. this object is a type of
|
||
Exit)</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>traversing_object</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The object traversing us.</p></li>
|
||
<li><p><strong>source_location</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – Where <strong>traversing_object</strong> came from.</p></li>
|
||
<li><p><strong>**kwargs</strong> (<em>dict</em>) – Arbitrary, optional arguments for users
|
||
overriding the call (unused by default).</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
<p class="rubric">Notes</p>
|
||
<p>The target location should normally be available as <strong>self.destination</strong>.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.at_failed_traverse">
|
||
<code class="sig-name descname">at_failed_traverse</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">traversing_object</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.at_failed_traverse"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.at_failed_traverse" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>This is called if an object fails to traverse this object for
|
||
some reason.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>traversing_object</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The object that failed traversing us.</p></li>
|
||
<li><p><strong>**kwargs</strong> – Arbitrary, optional arguments for users
|
||
overriding the call (unused by default).</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
<p class="rubric">Notes</p>
|
||
<p>Using the default exits, this hook will not be called if an
|
||
Attribute <strong>err_traverse</strong> is defined - this will in that case be
|
||
read for an error string instead.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.at_msg_receive">
|
||
<code class="sig-name descname">at_msg_receive</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">text</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">from_obj</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.at_msg_receive"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.at_msg_receive" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>This hook is called whenever someone sends a message to this
|
||
object using the <strong>msg</strong> method.</p>
|
||
<p>Note that from_obj may be None if the sender did not include
|
||
itself as an argument to the obj.msg() call - so you have to
|
||
check for this. .</p>
|
||
<p>Consider this a pre-processing method before msg is passed on
|
||
to the user session. If this method returns False, the msg
|
||
will not be passed on.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>text</strong> (<em>str</em><em>, </em><em>optional</em>) – The message received.</p></li>
|
||
<li><p><strong>from_obj</strong> (<em>any</em><em>, </em><em>optional</em>) – The object sending the message.</p></li>
|
||
<li><p><strong>**kwargs</strong> – This includes any keywords sent to the <strong>msg</strong> method.</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-even">Returns</dt>
|
||
<dd class="field-even"><p><em>receive (bool)</em> – If this message should be received.</p>
|
||
</dd>
|
||
</dl>
|
||
<p class="rubric">Notes</p>
|
||
<p>If this method returns False, the <strong>msg</strong> operation
|
||
will abort without sending the message.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.at_msg_send">
|
||
<code class="sig-name descname">at_msg_send</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">text</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">to_obj</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.at_msg_send"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.at_msg_send" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>This is a hook that is called when <em>this</em> object sends a
|
||
message to another object with <strong>obj.msg(text, to_obj=obj)</strong>.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>text</strong> (<em>str</em><em>, </em><em>optional</em>) – Text to send.</p></li>
|
||
<li><p><strong>to_obj</strong> (<em>any</em><em>, </em><em>optional</em>) – The object to send to.</p></li>
|
||
<li><p><strong>**kwargs</strong> – Keywords passed from msg().</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
<p class="rubric">Notes</p>
|
||
<p>Since this method is executed by <strong>from_obj</strong>, if no <strong>from_obj</strong>
|
||
was passed to <strong>DefaultCharacter.msg</strong> this hook will never
|
||
get called.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.get_visible_contents">
|
||
<code class="sig-name descname">get_visible_contents</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">looker</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.get_visible_contents"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.get_visible_contents" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>DEPRECATED
|
||
Get all contents of this object that a looker can see (whatever that means, by default it
|
||
checks the ‘view’ and ‘search’ locks and excludes the looker themselves), grouped by type.
|
||
Helper method to return_appearance.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>looker</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The entity looking.</p></li>
|
||
<li><p><strong>**kwargs</strong> – Passed from <strong>return_appearance</strong>. Unused by default.</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-even">Returns</dt>
|
||
<dd class="field-even"><p><em>dict</em> – A dict of lists categorized by type. Byt default this
|
||
contains ‘exits’, ‘characters’ and ‘things’. The elements of these
|
||
lists are the actual objects.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.get_content_names">
|
||
<code class="sig-name descname">get_content_names</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">looker</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.get_content_names"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.get_content_names" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>DEPRECATED
|
||
Get the proper names for all contents of this object. Helper method
|
||
for return_appearance.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>looker</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The entity looking.</p></li>
|
||
<li><p><strong>**kwargs</strong> – Passed from <strong>return_appearance</strong>. Passed into
|
||
<strong>get_display_name</strong> for each found entity.</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-even">Returns</dt>
|
||
<dd class="field-even"><p><em>dict</em> – A dict of lists categorized by type. Byt default this
|
||
contains ‘exits’, ‘characters’ and ‘things’. The elements
|
||
of these lists are strings - names of the objects that
|
||
can depend on the looker and also be grouped in the case
|
||
of multiple same-named things etc.</p>
|
||
</dd>
|
||
</dl>
|
||
<p class="rubric">Notes</p>
|
||
<p>This method shouldn’t add extra coloring to the names beyond what is
|
||
already given by the .get_display_name() (and the .name field) already.
|
||
Per-type coloring can be applied in <strong>return_appearance</strong>.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.at_look">
|
||
<code class="sig-name descname">at_look</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">target</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.at_look"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.at_look" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Called when this object performs a look. It allows to
|
||
customize just what this means. It will not itself
|
||
send any data.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>target</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The target being looked at. This is
|
||
commonly an object or the current location. It will
|
||
be checked for the “view” type access.</p></li>
|
||
<li><p><strong>**kwargs</strong> – Arbitrary, optional arguments for users
|
||
overriding the call. This will be passed into
|
||
return_appearance, get_display_name and at_desc but is not used
|
||
by default.</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-even">Returns</dt>
|
||
<dd class="field-even"><p><em>str</em> – A ready-processed look string potentially ready to return to the looker.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.at_desc">
|
||
<code class="sig-name descname">at_desc</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">looker</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.at_desc"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.at_desc" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>This is called whenever someone looks at this object.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>looker</strong> (<em>Object</em><em>, </em><em>optional</em>) – The object requesting the description.</p></li>
|
||
<li><p><strong>**kwargs</strong> – Arbitrary, optional arguments for users
|
||
overriding the call (unused by default).</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.at_pre_get">
|
||
<code class="sig-name descname">at_pre_get</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">getter</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.at_pre_get"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.at_pre_get" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Called by the default <strong>get</strong> command before this object has been
|
||
picked up.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>getter</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The object about to get this object.</p></li>
|
||
<li><p><strong>**kwargs</strong> – Arbitrary, optional arguments for users
|
||
overriding the call (unused by default).</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-even">Returns</dt>
|
||
<dd class="field-even"><p><em>bool</em> – If the object should be gotten or not.</p>
|
||
</dd>
|
||
</dl>
|
||
<p class="rubric">Notes</p>
|
||
<p>If this method returns False/None, the getting is cancelled
|
||
before it is even started.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.at_before_get">
|
||
<code class="sig-name descname">at_before_get</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">getter</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="headerlink" href="#evennia.objects.objects.DefaultObject.at_before_get" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Called by the default <strong>get</strong> command before this object has been
|
||
picked up.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>getter</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The object about to get this object.</p></li>
|
||
<li><p><strong>**kwargs</strong> – Arbitrary, optional arguments for users
|
||
overriding the call (unused by default).</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-even">Returns</dt>
|
||
<dd class="field-even"><p><em>bool</em> – If the object should be gotten or not.</p>
|
||
</dd>
|
||
</dl>
|
||
<p class="rubric">Notes</p>
|
||
<p>If this method returns False/None, the getting is cancelled
|
||
before it is even started.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.at_get">
|
||
<code class="sig-name descname">at_get</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">getter</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.at_get"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.at_get" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Called by the default <strong>get</strong> command when this object has been
|
||
picked up.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>getter</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The object getting this object.</p></li>
|
||
<li><p><strong>**kwargs</strong> – Arbitrary, optional arguments for users
|
||
overriding the call (unused by default).</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
<p class="rubric">Notes</p>
|
||
<p>This hook cannot stop the pickup from happening. Use
|
||
permissions or the at_pre_get() hook for that.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.at_pre_give">
|
||
<code class="sig-name descname">at_pre_give</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">giver</span></em>, <em class="sig-param"><span class="n">getter</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.at_pre_give"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.at_pre_give" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Called by the default <strong>give</strong> command before this object has been
|
||
given.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>giver</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The object about to give this object.</p></li>
|
||
<li><p><strong>getter</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The object about to get this object.</p></li>
|
||
<li><p><strong>**kwargs</strong> – Arbitrary, optional arguments for users
|
||
overriding the call (unused by default).</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-even">Returns</dt>
|
||
<dd class="field-even"><p><em>shouldgive (bool)</em> – If the object should be given or not.</p>
|
||
</dd>
|
||
</dl>
|
||
<p class="rubric">Notes</p>
|
||
<p>If this method returns <strong>False</strong> or <strong>None</strong>, the giving is cancelled
|
||
before it is even started.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.at_before_give">
|
||
<code class="sig-name descname">at_before_give</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">giver</span></em>, <em class="sig-param"><span class="n">getter</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="headerlink" href="#evennia.objects.objects.DefaultObject.at_before_give" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Called by the default <strong>give</strong> command before this object has been
|
||
given.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>giver</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The object about to give this object.</p></li>
|
||
<li><p><strong>getter</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The object about to get this object.</p></li>
|
||
<li><p><strong>**kwargs</strong> – Arbitrary, optional arguments for users
|
||
overriding the call (unused by default).</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-even">Returns</dt>
|
||
<dd class="field-even"><p><em>shouldgive (bool)</em> – If the object should be given or not.</p>
|
||
</dd>
|
||
</dl>
|
||
<p class="rubric">Notes</p>
|
||
<p>If this method returns <strong>False</strong> or <strong>None</strong>, the giving is cancelled
|
||
before it is even started.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.at_give">
|
||
<code class="sig-name descname">at_give</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">giver</span></em>, <em class="sig-param"><span class="n">getter</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.at_give"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.at_give" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Called by the default <strong>give</strong> command when this object has been
|
||
given.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>giver</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The object giving this object.</p></li>
|
||
<li><p><strong>getter</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The object getting this object.</p></li>
|
||
<li><p><strong>**kwargs</strong> – Arbitrary, optional arguments for users
|
||
overriding the call (unused by default).</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
<p class="rubric">Notes</p>
|
||
<p>This hook cannot stop the give from happening. Use
|
||
permissions or the at_pre_give() hook for that.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.at_pre_drop">
|
||
<code class="sig-name descname">at_pre_drop</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">dropper</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.at_pre_drop"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.at_pre_drop" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Called by the default <strong>drop</strong> command before this object has been
|
||
dropped.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>dropper</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The object which will drop this object.</p></li>
|
||
<li><p><strong>**kwargs</strong> – Arbitrary, optional arguments for users
|
||
overriding the call (unused by default).</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-even">Returns</dt>
|
||
<dd class="field-even"><p><em>bool</em> – If the object should be dropped or not.</p>
|
||
</dd>
|
||
</dl>
|
||
<p class="rubric">Notes</p>
|
||
<p>If this method returns <strong>False</strong> or <strong>None</strong>, the dropping is cancelled
|
||
before it is even started.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.at_before_drop">
|
||
<code class="sig-name descname">at_before_drop</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">dropper</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="headerlink" href="#evennia.objects.objects.DefaultObject.at_before_drop" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Called by the default <strong>drop</strong> command before this object has been
|
||
dropped.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>dropper</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The object which will drop this object.</p></li>
|
||
<li><p><strong>**kwargs</strong> – Arbitrary, optional arguments for users
|
||
overriding the call (unused by default).</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-even">Returns</dt>
|
||
<dd class="field-even"><p><em>bool</em> – If the object should be dropped or not.</p>
|
||
</dd>
|
||
</dl>
|
||
<p class="rubric">Notes</p>
|
||
<p>If this method returns <strong>False</strong> or <strong>None</strong>, the dropping is cancelled
|
||
before it is even started.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.at_drop">
|
||
<code class="sig-name descname">at_drop</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">dropper</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.at_drop"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.at_drop" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Called by the default <strong>drop</strong> command when this object has been
|
||
dropped.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>dropper</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The object which just dropped this object.</p></li>
|
||
<li><p><strong>**kwargs</strong> – Arbitrary, optional arguments for users
|
||
overriding the call (unused by default).</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
<p class="rubric">Notes</p>
|
||
<p>This hook cannot stop the drop from happening. Use
|
||
permissions or the at_pre_drop() hook for that.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.at_pre_say">
|
||
<code class="sig-name descname">at_pre_say</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">message</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.at_pre_say"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.at_pre_say" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Before the object says something.</p>
|
||
<p>This hook is by default used by the ‘say’ and ‘whisper’
|
||
commands as used by this command it is called before the text
|
||
is said/whispered and can be used to customize the outgoing
|
||
text from the object. Returning <strong>None</strong> aborts the command.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><p><strong>message</strong> (<em>str</em>) – The suggested say/whisper text spoken by self.</p>
|
||
</dd>
|
||
<dt class="field-even">Keyword Arguments</dt>
|
||
<dd class="field-even"><ul class="simple">
|
||
<li><p><strong>whisper</strong> (<em>bool</em>) – If True, this is a whisper rather than
|
||
a say. This is sent by the whisper command by default.
|
||
Other verbal commands could use this hook in similar
|
||
ways.</p></li>
|
||
<li><p><strong>receivers</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a><em> or </em><em>iterable</em>) – If set, this is the target or targets for the
|
||
say/whisper.</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-odd">Returns</dt>
|
||
<dd class="field-odd"><p><em>str</em> – The (possibly modified) text to be spoken.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.at_before_say">
|
||
<code class="sig-name descname">at_before_say</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">message</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="headerlink" href="#evennia.objects.objects.DefaultObject.at_before_say" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Before the object says something.</p>
|
||
<p>This hook is by default used by the ‘say’ and ‘whisper’
|
||
commands as used by this command it is called before the text
|
||
is said/whispered and can be used to customize the outgoing
|
||
text from the object. Returning <strong>None</strong> aborts the command.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><p><strong>message</strong> (<em>str</em>) – The suggested say/whisper text spoken by self.</p>
|
||
</dd>
|
||
<dt class="field-even">Keyword Arguments</dt>
|
||
<dd class="field-even"><ul class="simple">
|
||
<li><p><strong>whisper</strong> (<em>bool</em>) – If True, this is a whisper rather than
|
||
a say. This is sent by the whisper command by default.
|
||
Other verbal commands could use this hook in similar
|
||
ways.</p></li>
|
||
<li><p><strong>receivers</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a><em> or </em><em>iterable</em>) – If set, this is the target or targets for the
|
||
say/whisper.</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-odd">Returns</dt>
|
||
<dd class="field-odd"><p><em>str</em> – The (possibly modified) text to be spoken.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.at_say">
|
||
<code class="sig-name descname">at_say</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">message</span></em>, <em class="sig-param"><span class="n">msg_self</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">msg_location</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">receivers</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">msg_receivers</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.at_say"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.at_say" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Display the actual say (or whisper) of self.</p>
|
||
<p>This hook should display the actual say/whisper of the object in its
|
||
location. It should both alert the object (self) and its
|
||
location that some text is spoken. The overriding of messages or
|
||
<strong>mapping</strong> allows for simple customization of the hook without
|
||
re-writing it completely.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>message</strong> (<em>str</em>) – The message to convey.</p></li>
|
||
<li><p><strong>msg_self</strong> (<em>bool</em><em> or </em><em>str</em><em>, </em><em>optional</em>) – If boolean True, echo <strong>message</strong> to self. If a string,
|
||
return that message. If False or unset, don’t echo to self.</p></li>
|
||
<li><p><strong>msg_location</strong> (<em>str</em><em>, </em><em>optional</em>) – The message to echo to self’s location.</p></li>
|
||
<li><p><strong>receivers</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a><em> or </em><em>iterable</em><em>, </em><em>optional</em>) – An eventual receiver or receivers of the
|
||
message (by default only used by whispers).</p></li>
|
||
<li><p><strong>msg_receivers</strong> (<em>str</em>) – Specific message to pass to the receiver(s). This will parsed
|
||
with the {receiver} placeholder replaced with the given receiver.</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-even">Keyword Arguments</dt>
|
||
<dd class="field-even"><ul class="simple">
|
||
<li><p><strong>whisper</strong> (<em>bool</em>) – If this is a whisper rather than a say. Kwargs
|
||
can be used by other verbal commands in a similar way.</p></li>
|
||
<li><p><strong>mapping</strong> (<em>dict</em>) – Pass an additional mapping to the message.</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
<p class="rubric">Notes</p>
|
||
<p>Messages can contain {} markers. These are substituted against the values
|
||
passed in the <strong>mapping</strong> argument.</p>
|
||
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">msg_self</span> <span class="o">=</span> <span class="s1">'You say: "</span><span class="si">{speech}</span><span class="s1">"'</span>
|
||
<span class="n">msg_location</span> <span class="o">=</span> <span class="s1">'</span><span class="si">{object}</span><span class="s1"> says: "</span><span class="si">{speech}</span><span class="s1">"'</span>
|
||
<span class="n">msg_receivers</span> <span class="o">=</span> <span class="s1">'</span><span class="si">{object}</span><span class="s1"> whispers: "</span><span class="si">{speech}</span><span class="s1">"'</span>
|
||
</pre></div>
|
||
</div>
|
||
<p>Supported markers by default:</p>
|
||
<ul class="simple">
|
||
<li><p>{self}: text to self-reference with (default ‘You’)</p></li>
|
||
<li><p>{speech}: the text spoken/whispered by self.</p></li>
|
||
<li><p>{object}: the object speaking.</p></li>
|
||
<li><p>{receiver}: replaced with a single receiver only for strings meant for a specific
|
||
receiver (otherwise ‘None’).</p></li>
|
||
<li><p>{all_receivers}: comma-separated list of all receivers,
|
||
if more than one, otherwise same as receiver</p></li>
|
||
<li><p>{location}: the location where object is.</p></li>
|
||
</ul>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultObject.at_rename">
|
||
<code class="sig-name descname">at_rename</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">oldname</span></em>, <em class="sig-param"><span class="n">newname</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultObject.at_rename"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultObject.at_rename" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>This Hook is called by @name on a successful rename.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>oldname</strong> (<em>str</em>) – The instance’s original name.</p></li>
|
||
<li><p><strong>newname</strong> (<em>str</em>) – The new name for the instance.</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py exception">
|
||
<dt id="evennia.objects.objects.DefaultObject.DoesNotExist">
|
||
<em class="property">exception </em><code class="sig-name descname">DoesNotExist</code><a class="headerlink" href="#evennia.objects.objects.DefaultObject.DoesNotExist" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Bases: <a class="reference internal" href="evennia.objects.models.html#evennia.objects.models.ObjectDB.DoesNotExist" title="evennia.objects.models.ObjectDB.DoesNotExist"><code class="xref py py-class docutils literal notranslate"><span class="pre">evennia.objects.models.ObjectDB.DoesNotExist</span></code></a></p>
|
||
</dd></dl>
|
||
|
||
<dl class="py exception">
|
||
<dt id="evennia.objects.objects.DefaultObject.MultipleObjectsReturned">
|
||
<em class="property">exception </em><code class="sig-name descname">MultipleObjectsReturned</code><a class="headerlink" href="#evennia.objects.objects.DefaultObject.MultipleObjectsReturned" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Bases: <a class="reference internal" href="evennia.objects.models.html#evennia.objects.models.ObjectDB.MultipleObjectsReturned" title="evennia.objects.models.ObjectDB.MultipleObjectsReturned"><code class="xref py py-class docutils literal notranslate"><span class="pre">evennia.objects.models.ObjectDB.MultipleObjectsReturned</span></code></a></p>
|
||
</dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt id="evennia.objects.objects.DefaultObject.path">
|
||
<code class="sig-name descname">path</code><em class="property"> = 'evennia.objects.objects.DefaultObject'</em><a class="headerlink" href="#evennia.objects.objects.DefaultObject.path" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt id="evennia.objects.objects.DefaultObject.typename">
|
||
<code class="sig-name descname">typename</code><em class="property"> = 'DefaultObject'</em><a class="headerlink" href="#evennia.objects.objects.DefaultObject.typename" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
</dd></dl>
|
||
|
||
<dl class="py class">
|
||
<dt id="evennia.objects.objects.DefaultCharacter">
|
||
<em class="property">class </em><code class="sig-prename descclassname">evennia.objects.objects.</code><code class="sig-name descname">DefaultCharacter</code><span class="sig-paren">(</span><em class="sig-param"><span class="o">*</span><span class="n">args</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultCharacter"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultCharacter" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Bases: <a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><code class="xref py py-class docutils literal notranslate"><span class="pre">evennia.objects.objects.DefaultObject</span></code></a></p>
|
||
<p>This implements an Object puppeted by a Session - that is,
|
||
a character avatar controlled by an account.</p>
|
||
<dl class="py attribute">
|
||
<dt id="evennia.objects.objects.DefaultCharacter.lockstring">
|
||
<code class="sig-name descname">lockstring</code><em class="property"> = 'puppet:id({character_id}) or pid({account_id}) or perm(Developer) or pperm(Developer);delete:id({account_id}) or perm(Admin);edit:pid({account_id}) or perm(Admin)'</em><a class="headerlink" href="#evennia.objects.objects.DefaultCharacter.lockstring" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultCharacter.get_default_lockstring">
|
||
<em class="property">classmethod </em><code class="sig-name descname">get_default_lockstring</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">account</span><span class="p">:</span> <span class="n">DefaultAccount</span> <span class="o">=</span> <span class="default_value">None</span></em>, <em class="sig-param"><span class="n">caller</span><span class="p">:</span> <span class="n"><a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject">DefaultObject</a></span> <span class="o">=</span> <span class="default_value">None</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultCharacter.get_default_lockstring"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultCharacter.get_default_lockstring" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Classmethod called during .create() to determine default locks for the object.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>account</strong> (<a class="reference internal" href="evennia.accounts.accounts.html#evennia.accounts.accounts.DefaultAccount" title="evennia.accounts.accounts.DefaultAccount"><em>DefaultAccount</em></a>) – Account to attribute this object to.</p></li>
|
||
<li><p><strong>caller</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The object which is creating this one.</p></li>
|
||
<li><p><strong>**kwargs</strong> – Arbitrary input.</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-even">Returns</dt>
|
||
<dd class="field-even"><p><em>str</em> – A lockstring to use for this object.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultCharacter.create">
|
||
<em class="property">classmethod </em><code class="sig-name descname">create</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">key</span></em>, <em class="sig-param"><span class="n">account</span><span class="p">:</span> <span class="n">DefaultAccount</span> <span class="o">=</span> <span class="default_value">None</span></em>, <em class="sig-param"><span class="n">caller</span><span class="p">:</span> <span class="n"><a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject">DefaultObject</a></span> <span class="o">=</span> <span class="default_value">None</span></em>, <em class="sig-param"><span class="n">method</span><span class="p">:</span> <span class="n">str</span> <span class="o">=</span> <span class="default_value">'create'</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultCharacter.create"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultCharacter.create" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Creates a basic Character with default parameters, unless otherwise
|
||
specified or extended.</p>
|
||
<p>Provides a friendlier interface to the utils.create_character() function.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>key</strong> (<em>str</em>) – Name of the new Character.</p></li>
|
||
<li><p><strong>account</strong> (<em>obj</em><em>, </em><em>optional</em>) – Account to associate this Character with.
|
||
If unset supplying None– it will
|
||
change the default lockset and skip creator attribution.</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-even">Keyword Arguments</dt>
|
||
<dd class="field-even"><ul class="simple">
|
||
<li><p><strong>description</strong> (<em>str</em>) – Brief description for this object.</p></li>
|
||
<li><p><strong>ip</strong> (<em>str</em>) – IP address of creator (for object auditing).</p></li>
|
||
<li><p><strong>other kwargs will be passed into the create_object call.</strong> (<em>All</em>) – </p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-odd">Returns</dt>
|
||
<dd class="field-odd"><p><em>tuple</em> – <strong>(new_character, errors)</strong>. On error, the <strong>new_character</strong> is <strong>None</strong> and
|
||
<strong>errors</strong> is a <strong>list</strong> of error strings (an empty list otherwise).</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultCharacter.normalize_name">
|
||
<em class="property">classmethod </em><code class="sig-name descname">normalize_name</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">name</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultCharacter.normalize_name"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultCharacter.normalize_name" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Normalize the character name prior to creating.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><p><strong>name</strong> (<em>str</em>) – The name of the character</p>
|
||
</dd>
|
||
<dt class="field-even">Returns</dt>
|
||
<dd class="field-even"><p><em>str</em> – A valid, latinized name.</p>
|
||
</dd>
|
||
</dl>
|
||
<p class="rubric">Notes</p>
|
||
<p>The main purpose of this is to make sure that character names are not created with
|
||
special unicode characters that look visually identical to latin charaters. This could
|
||
be used to impersonate other characters.</p>
|
||
<p>This method should be refactored to support i18n for non-latin names, but as we
|
||
(currently) have no bug reports requesting better support of non-latin character sets,
|
||
requiring character names to be latinified is an acceptable default option.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultCharacter.validate_name">
|
||
<em class="property">classmethod </em><code class="sig-name descname">validate_name</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">name</span></em>, <em class="sig-param"><span class="n">account</span><span class="o">=</span><span class="default_value">None</span></em><span class="sig-paren">)</span> → Optional<span class="p">[</span>str<span class="p">, </span>None<span class="p">]</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultCharacter.validate_name"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultCharacter.validate_name" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Validate the character name prior to creating. Overload this function to add custom validators</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><p><strong>name</strong> (<em>str</em>) – The name of the character</p>
|
||
</dd>
|
||
<dt class="field-even">Keyword Arguments</dt>
|
||
<dd class="field-even"><p><strong>account</strong> (<a class="reference internal" href="evennia.accounts.accounts.html#evennia.accounts.accounts.DefaultAccount" title="evennia.accounts.accounts.DefaultAccount"><em>DefaultAccount</em></a><em>, </em><em>optional</em>) – The account creating the character.</p>
|
||
</dd>
|
||
<dt class="field-odd">Returns</dt>
|
||
<dd class="field-odd"><p><em>str or None</em> – A non-empty error message if there is a problem, otherwise <strong>None</strong>.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultCharacter.basetype_setup">
|
||
<code class="sig-name descname">basetype_setup</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultCharacter.basetype_setup"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultCharacter.basetype_setup" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Setup character-specific security.</p>
|
||
<p>You should normally not need to overload this, but if you do,
|
||
make sure to reproduce at least the two last commands in this
|
||
method (unless you want to fundamentally change how a
|
||
Character object works).</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultCharacter.at_post_move">
|
||
<code class="sig-name descname">at_post_move</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">source_location</span></em>, <em class="sig-param"><span class="n">move_type</span><span class="o">=</span><span class="default_value">'move'</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultCharacter.at_post_move"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultCharacter.at_post_move" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>We make sure to look around after a move.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultCharacter.at_after_move">
|
||
<code class="sig-name descname">at_after_move</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">source_location</span></em>, <em class="sig-param"><span class="n">move_type</span><span class="o">=</span><span class="default_value">'move'</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="headerlink" href="#evennia.objects.objects.DefaultCharacter.at_after_move" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>We make sure to look around after a move.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultCharacter.at_pre_puppet">
|
||
<code class="sig-name descname">at_pre_puppet</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">account</span></em>, <em class="sig-param"><span class="n">session</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultCharacter.at_pre_puppet"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultCharacter.at_pre_puppet" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Return the character from storage in None location in <strong>at_post_unpuppet</strong>.
|
||
:param account: This is the connecting account.
|
||
:type account: DefaultAccount
|
||
:param session: Session controlling the connection.
|
||
:type session: Session</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultCharacter.at_post_puppet">
|
||
<code class="sig-name descname">at_post_puppet</code><span class="sig-paren">(</span><em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultCharacter.at_post_puppet"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultCharacter.at_post_puppet" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Called just after puppeting has been completed and all
|
||
Account<->Object links have been established.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</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>
|
||
<p class="rubric">Notes</p>
|
||
<p>You can use <strong>self.account</strong> and <strong>self.sessions.get()</strong> to get
|
||
account and sessions at this point; the last entry in the
|
||
list from <strong>self.sessions.get()</strong> is the latest Session
|
||
puppeting this Object.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultCharacter.at_post_unpuppet">
|
||
<code class="sig-name descname">at_post_unpuppet</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">account</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">session</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultCharacter.at_post_unpuppet"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultCharacter.at_post_unpuppet" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>We stove away the character when the account goes ooc/logs off,
|
||
otherwise the character object will remain in the room also
|
||
after the account logged off (“headless”, so to say).</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>account</strong> (<a class="reference internal" href="evennia.accounts.accounts.html#evennia.accounts.accounts.DefaultAccount" title="evennia.accounts.accounts.DefaultAccount"><em>DefaultAccount</em></a>) – The account object that just disconnected
|
||
from this object.</p></li>
|
||
<li><p><strong>session</strong> (<a class="reference internal" href="evennia.server.session.html#evennia.server.session.Session" title="evennia.server.session.Session"><em>Session</em></a>) – Session controlling the connection that
|
||
just disconnected.</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-even">Keyword Arguments</dt>
|
||
<dd class="field-even"><ul class="simple">
|
||
<li><p><strong>reason</strong> (<em>str</em>) – If given, adds a reason for the unpuppet. This
|
||
is set when the user is auto-unpuppeted due to being link-dead.</p></li>
|
||
<li><p><strong>**kwargs</strong> – Arbitrary, optional arguments for users
|
||
overriding the call (unused by default).</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultCharacter.idle_time">
|
||
<em class="property">property </em><code class="sig-name descname">idle_time</code><a class="headerlink" href="#evennia.objects.objects.DefaultCharacter.idle_time" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Returns the idle time of the least idle session in seconds. If
|
||
no sessions are connected it returns nothing.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultCharacter.connection_time">
|
||
<em class="property">property </em><code class="sig-name descname">connection_time</code><a class="headerlink" href="#evennia.objects.objects.DefaultCharacter.connection_time" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Returns the maximum connection time of all connected sessions
|
||
in seconds. Returns nothing if there are no sessions.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py exception">
|
||
<dt id="evennia.objects.objects.DefaultCharacter.DoesNotExist">
|
||
<em class="property">exception </em><code class="sig-name descname">DoesNotExist</code><a class="headerlink" href="#evennia.objects.objects.DefaultCharacter.DoesNotExist" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Bases: <a class="reference internal" href="#evennia.objects.objects.DefaultObject.DoesNotExist" title="evennia.objects.objects.DefaultObject.DoesNotExist"><code class="xref py py-class docutils literal notranslate"><span class="pre">evennia.objects.objects.DefaultObject.DoesNotExist</span></code></a></p>
|
||
</dd></dl>
|
||
|
||
<dl class="py exception">
|
||
<dt id="evennia.objects.objects.DefaultCharacter.MultipleObjectsReturned">
|
||
<em class="property">exception </em><code class="sig-name descname">MultipleObjectsReturned</code><a class="headerlink" href="#evennia.objects.objects.DefaultCharacter.MultipleObjectsReturned" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Bases: <a class="reference internal" href="#evennia.objects.objects.DefaultObject.MultipleObjectsReturned" title="evennia.objects.objects.DefaultObject.MultipleObjectsReturned"><code class="xref py py-class docutils literal notranslate"><span class="pre">evennia.objects.objects.DefaultObject.MultipleObjectsReturned</span></code></a></p>
|
||
</dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt id="evennia.objects.objects.DefaultCharacter.path">
|
||
<code class="sig-name descname">path</code><em class="property"> = 'evennia.objects.objects.DefaultCharacter'</em><a class="headerlink" href="#evennia.objects.objects.DefaultCharacter.path" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt id="evennia.objects.objects.DefaultCharacter.typename">
|
||
<code class="sig-name descname">typename</code><em class="property"> = 'DefaultCharacter'</em><a class="headerlink" href="#evennia.objects.objects.DefaultCharacter.typename" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
</dd></dl>
|
||
|
||
<dl class="py class">
|
||
<dt id="evennia.objects.objects.DefaultRoom">
|
||
<em class="property">class </em><code class="sig-prename descclassname">evennia.objects.objects.</code><code class="sig-name descname">DefaultRoom</code><span class="sig-paren">(</span><em class="sig-param"><span class="o">*</span><span class="n">args</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultRoom"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultRoom" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Bases: <a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><code class="xref py py-class docutils literal notranslate"><span class="pre">evennia.objects.objects.DefaultObject</span></code></a></p>
|
||
<p>This is the base room object. It’s just like any Object except its
|
||
location is always <strong>None</strong>.</p>
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultRoom.create">
|
||
<em class="property">classmethod </em><code class="sig-name descname">create</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">key</span><span class="p">:</span> <span class="n">str</span></em>, <em class="sig-param"><span class="n">account</span><span class="p">:</span> <span class="n">DefaultAccount</span> <span class="o">=</span> <span class="default_value">None</span></em>, <em class="sig-param"><span class="n">caller</span><span class="p">:</span> <span class="n"><a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject">evennia.objects.objects.DefaultObject</a></span> <span class="o">=</span> <span class="default_value">None</span></em>, <em class="sig-param"><span class="n">method</span><span class="p">:</span> <span class="n">str</span> <span class="o">=</span> <span class="default_value">'create'</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultRoom.create"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultRoom.create" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Creates a basic Room with default parameters, unless otherwise
|
||
specified or extended.</p>
|
||
<p>Provides a friendlier interface to the utils.create_object() function.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><p><strong>key</strong> (<em>str</em>) – Name of the new Room.</p>
|
||
</dd>
|
||
<dt class="field-even">Keyword Arguments</dt>
|
||
<dd class="field-even"><ul class="simple">
|
||
<li><p><strong>account</strong> (<a class="reference internal" href="evennia.accounts.accounts.html#evennia.accounts.accounts.DefaultAccount" title="evennia.accounts.accounts.DefaultAccount"><em>DefaultAccount</em></a><em>, </em><em>optional</em>) – Account to associate this Room with. If
|
||
given, it will be given specific control/edit permissions to this
|
||
object (along with normal Admin perms). If not given, default</p></li>
|
||
<li><p><strong>caller</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The object which is creating this one.</p></li>
|
||
<li><p><strong>description</strong> (<em>str</em>) – Brief description for this object.</p></li>
|
||
<li><p><strong>ip</strong> (<em>str</em>) – IP address of creator (for object auditing).</p></li>
|
||
<li><p><strong>method</strong> (<em>str</em>) – The method used to create the room. Defaults to “create”.</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-odd">Returns</dt>
|
||
<dd class="field-odd"><p><em>tuple</em> – A tuple <strong>(Object, error)</strong> with the newly created Room of the given typeclass,
|
||
or <strong>None</strong> if there was an error. If there was an error, <strong>error</strong> will be a list of
|
||
error strings.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultRoom.basetype_setup">
|
||
<code class="sig-name descname">basetype_setup</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultRoom.basetype_setup"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultRoom.basetype_setup" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Simple room setup setting locks to make sure the room cannot be picked up.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py exception">
|
||
<dt id="evennia.objects.objects.DefaultRoom.DoesNotExist">
|
||
<em class="property">exception </em><code class="sig-name descname">DoesNotExist</code><a class="headerlink" href="#evennia.objects.objects.DefaultRoom.DoesNotExist" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Bases: <a class="reference internal" href="#evennia.objects.objects.DefaultObject.DoesNotExist" title="evennia.objects.objects.DefaultObject.DoesNotExist"><code class="xref py py-class docutils literal notranslate"><span class="pre">evennia.objects.objects.DefaultObject.DoesNotExist</span></code></a></p>
|
||
</dd></dl>
|
||
|
||
<dl class="py exception">
|
||
<dt id="evennia.objects.objects.DefaultRoom.MultipleObjectsReturned">
|
||
<em class="property">exception </em><code class="sig-name descname">MultipleObjectsReturned</code><a class="headerlink" href="#evennia.objects.objects.DefaultRoom.MultipleObjectsReturned" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Bases: <a class="reference internal" href="#evennia.objects.objects.DefaultObject.MultipleObjectsReturned" title="evennia.objects.objects.DefaultObject.MultipleObjectsReturned"><code class="xref py py-class docutils literal notranslate"><span class="pre">evennia.objects.objects.DefaultObject.MultipleObjectsReturned</span></code></a></p>
|
||
</dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt id="evennia.objects.objects.DefaultRoom.path">
|
||
<code class="sig-name descname">path</code><em class="property"> = 'evennia.objects.objects.DefaultRoom'</em><a class="headerlink" href="#evennia.objects.objects.DefaultRoom.path" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt id="evennia.objects.objects.DefaultRoom.typename">
|
||
<code class="sig-name descname">typename</code><em class="property"> = 'DefaultRoom'</em><a class="headerlink" href="#evennia.objects.objects.DefaultRoom.typename" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
</dd></dl>
|
||
|
||
<dl class="py class">
|
||
<dt id="evennia.objects.objects.ExitCommand">
|
||
<em class="property">class </em><code class="sig-prename descclassname">evennia.objects.objects.</code><code class="sig-name descname">ExitCommand</code><span class="sig-paren">(</span><em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#ExitCommand"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.ExitCommand" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Bases: <a class="reference internal" href="evennia.commands.default.muxcommand.html#evennia.commands.default.muxcommand.MuxCommand" title="evennia.commands.default.muxcommand.MuxCommand"><code class="xref py py-class docutils literal notranslate"><span class="pre">evennia.commands.default.muxcommand.MuxCommand</span></code></a></p>
|
||
<p>This is a command that simply cause the caller to traverse
|
||
the object it is attached to.</p>
|
||
<dl class="py attribute">
|
||
<dt id="evennia.objects.objects.ExitCommand.obj">
|
||
<code class="sig-name descname">obj</code><em class="property"> = None</em><a class="headerlink" href="#evennia.objects.objects.ExitCommand.obj" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.ExitCommand.func">
|
||
<code class="sig-name descname">func</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#ExitCommand.func"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.ExitCommand.func" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Default exit traverse if no syscommand is defined.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.ExitCommand.get_extra_info">
|
||
<code class="sig-name descname">get_extra_info</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">caller</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#ExitCommand.get_extra_info"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.ExitCommand.get_extra_info" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Shows a bit of information on where the exit leads.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>caller</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The object (usually a character) that entered an ambiguous command.</p></li>
|
||
<li><p><strong>**kwargs</strong> (<em>dict</em>) – Arbitrary, optional arguments for users
|
||
overriding the call (unused by default).</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-even">Returns</dt>
|
||
<dd class="field-even"><p><em>str</em> – A string with identifying information to disambiguate the command, conventionally
|
||
with a preceding space.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt id="evennia.objects.objects.ExitCommand.aliases">
|
||
<code class="sig-name descname">aliases</code><em class="property"> = []</em><a class="headerlink" href="#evennia.objects.objects.ExitCommand.aliases" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt id="evennia.objects.objects.ExitCommand.help_category">
|
||
<code class="sig-name descname">help_category</code><em class="property"> = 'general'</em><a class="headerlink" href="#evennia.objects.objects.ExitCommand.help_category" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt id="evennia.objects.objects.ExitCommand.key">
|
||
<code class="sig-name descname">key</code><em class="property"> = 'command'</em><a class="headerlink" href="#evennia.objects.objects.ExitCommand.key" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt id="evennia.objects.objects.ExitCommand.lock_storage">
|
||
<code class="sig-name descname">lock_storage</code><em class="property"> = 'cmd:all();'</em><a class="headerlink" href="#evennia.objects.objects.ExitCommand.lock_storage" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt id="evennia.objects.objects.ExitCommand.search_index_entry">
|
||
<code class="sig-name descname">search_index_entry</code><em class="property"> = {'aliases': '', 'category': 'general', 'key': 'command', 'no_prefix': ' ', 'tags': '', 'text': '\n This is a command that simply cause the caller to traverse\n the object it is attached to.\n\n '}</em><a class="headerlink" href="#evennia.objects.objects.ExitCommand.search_index_entry" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
</dd></dl>
|
||
|
||
<dl class="py class">
|
||
<dt id="evennia.objects.objects.DefaultExit">
|
||
<em class="property">class </em><code class="sig-prename descclassname">evennia.objects.objects.</code><code class="sig-name descname">DefaultExit</code><span class="sig-paren">(</span><em class="sig-param"><span class="o">*</span><span class="n">args</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultExit"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultExit" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Bases: <a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><code class="xref py py-class docutils literal notranslate"><span class="pre">evennia.objects.objects.DefaultObject</span></code></a></p>
|
||
<p>This is the base exit object - it connects a location to another.
|
||
This is done by the exit assigning a “command” on itself with the
|
||
same name as the exit object (to do this we need to remember to
|
||
re-create the command when the object is cached since it must be
|
||
created dynamically depending on what the exit is called). This
|
||
command (which has a high priority) will thus allow us to traverse
|
||
exits simply by giving the exit-object’s name on its own.</p>
|
||
<dl class="py attribute">
|
||
<dt id="evennia.objects.objects.DefaultExit.exit_command">
|
||
<code class="sig-name descname">exit_command</code><a class="headerlink" href="#evennia.objects.objects.DefaultExit.exit_command" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>alias of <a class="reference internal" href="#evennia.objects.objects.ExitCommand" title="evennia.objects.objects.ExitCommand"><code class="xref py py-class docutils literal notranslate"><span class="pre">ExitCommand</span></code></a></p>
|
||
</dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt id="evennia.objects.objects.DefaultExit.priority">
|
||
<code class="sig-name descname">priority</code><em class="property"> = 101</em><a class="headerlink" href="#evennia.objects.objects.DefaultExit.priority" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultExit.create_exit_cmdset">
|
||
<code class="sig-name descname">create_exit_cmdset</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">exidbobj</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultExit.create_exit_cmdset"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultExit.create_exit_cmdset" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Helper function for creating an exit command set + command.</p>
|
||
<p>The command of this cmdset has the same name as the Exit
|
||
object and allows the exit to react when the account enter the
|
||
exit’s name, triggering the movement between rooms.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><p><strong>exidbobj</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The DefaultExit object to base the command on.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultExit.create">
|
||
<em class="property">classmethod </em><code class="sig-name descname">create</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">key</span><span class="p">:</span> <span class="n">str</span></em>, <em class="sig-param"><span class="n">location</span><span class="p">:</span> <span class="n"><a class="reference internal" href="#evennia.objects.objects.DefaultRoom" title="evennia.objects.objects.DefaultRoom">evennia.objects.objects.DefaultRoom</a></span> <span class="o">=</span> <span class="default_value">None</span></em>, <em class="sig-param"><span class="n">destination</span><span class="p">:</span> <span class="n"><a class="reference internal" href="#evennia.objects.objects.DefaultRoom" title="evennia.objects.objects.DefaultRoom">evennia.objects.objects.DefaultRoom</a></span> <span class="o">=</span> <span class="default_value">None</span></em>, <em class="sig-param"><span class="n">account</span><span class="p">:</span> <span class="n">DefaultAccount</span> <span class="o">=</span> <span class="default_value">None</span></em>, <em class="sig-param"><span class="n">caller</span><span class="p">:</span> <span class="n"><a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject">evennia.objects.objects.DefaultObject</a></span> <span class="o">=</span> <span class="default_value">None</span></em>, <em class="sig-param"><span class="n">method</span><span class="p">:</span> <span class="n">str</span> <span class="o">=</span> <span class="default_value">'create'</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span> → tuple<a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultExit.create"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultExit.create" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Creates a basic Exit with default parameters, unless otherwise
|
||
specified or extended.</p>
|
||
<p>Provides a friendlier interface to the utils.create_object() function.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>key</strong> (<em>str</em>) – Name of the new Exit, as it should appear from the
|
||
source room.</p></li>
|
||
<li><p><strong>location</strong> (<em>Room</em>) – The room to create this exit in.</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-even">Keyword Arguments</dt>
|
||
<dd class="field-even"><ul class="simple">
|
||
<li><p><strong>account</strong> (<em>DefaultAccountDB</em>) – Account to associate this Exit with.</p></li>
|
||
<li><p><strong>caller</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The Object creating this Object.</p></li>
|
||
<li><p><strong>description</strong> (<em>str</em>) – Brief description for this object.</p></li>
|
||
<li><p><strong>ip</strong> (<em>str</em>) – IP address of creator (for object auditing).</p></li>
|
||
<li><p><strong>destination</strong> (<em>Room</em>) – The room to which this exit should go.</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-odd">Returns</dt>
|
||
<dd class="field-odd"><p><em>tuple</em> – A tuple <strong>(Object, errors)</strong>, where the object is the newly
|
||
created exit of the given typeclass, or <strong>None</strong> if there was an error.
|
||
If there was an error, <strong>errors</strong> will be a list of error strings.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultExit.basetype_setup">
|
||
<code class="sig-name descname">basetype_setup</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultExit.basetype_setup"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultExit.basetype_setup" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Setup exit-security.</p>
|
||
<p>You should normally not need to overload this - if you do make
|
||
sure you include all the functionality in this method.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultExit.at_cmdset_get">
|
||
<code class="sig-name descname">at_cmdset_get</code><span class="sig-paren">(</span><em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultExit.at_cmdset_get"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultExit.at_cmdset_get" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Called just before cmdsets on this object are requested by the
|
||
command handler. If changes need to be done on the fly to the
|
||
cmdset before passing them on to the cmdhandler, this is the
|
||
place to do it. This is called also if the object currently
|
||
has no cmdsets.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Keyword Arguments</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>caller</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a><em>, </em><a class="reference internal" href="evennia.accounts.accounts.html#evennia.accounts.accounts.DefaultAccount" title="evennia.accounts.accounts.DefaultAccount"><em>DefaultAccount</em></a><em> or </em><a class="reference internal" href="evennia.server.session.html#evennia.server.session.Session" title="evennia.server.session.Session"><em>Session</em></a>) – The object requesting the cmdsets.</p></li>
|
||
<li><p><strong>current</strong> (<a class="reference internal" href="evennia.commands.cmdset.html#evennia.commands.cmdset.CmdSet" title="evennia.commands.cmdset.CmdSet"><em>CmdSet</em></a>) – The current merged cmdset.</p></li>
|
||
<li><p><strong>force_init</strong> (<em>bool</em>) – If <strong>True</strong>, force a re-build of the cmdset
|
||
(for example to update aliases).</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultExit.at_init">
|
||
<code class="sig-name descname">at_init</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultExit.at_init"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultExit.at_init" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>This is called when this objects is re-loaded from cache. When
|
||
that happens, we make sure to remove any old ExitCmdSet cmdset
|
||
(this most commonly occurs when renaming an existing exit)</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultExit.at_traverse">
|
||
<code class="sig-name descname">at_traverse</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">traversing_object</span></em>, <em class="sig-param"><span class="n">target_location</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultExit.at_traverse"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultExit.at_traverse" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>This implements the actual traversal. The traverse lock has
|
||
already been checked (in the Exit command) at this point.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>traversing_object</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – Object traversing us.</p></li>
|
||
<li><p><strong>target_location</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – Where target is going.</p></li>
|
||
<li><p><strong>**kwargs</strong> (<em>dict</em>) – Arbitrary, optional arguments for users
|
||
overriding the call (unused by default).</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultExit.at_failed_traverse">
|
||
<code class="sig-name descname">at_failed_traverse</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">traversing_object</span></em>, <em class="sig-param"><span class="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultExit.at_failed_traverse"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultExit.at_failed_traverse" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Overloads the default hook to implement a simple default error message.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>traversing_object</strong> (<a class="reference internal" href="#evennia.objects.objects.DefaultObject" title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The object that failed traversing us.</p></li>
|
||
<li><p><strong>**kwargs</strong> (<em>dict</em>) – Arbitrary, optional arguments for users
|
||
overriding the call (unused by default).</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
<p class="rubric">Notes</p>
|
||
<p>Using the default exits, this hook will not be called if an
|
||
Attribute <strong>err_traverse</strong> is defined - this will in that case be
|
||
read for an error string instead.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="py method">
|
||
<dt id="evennia.objects.objects.DefaultExit.get_return_exit">
|
||
<code class="sig-name descname">get_return_exit</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">return_all</span><span class="o">=</span><span class="default_value">False</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/objects/objects.html#DefaultExit.get_return_exit"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.objects.objects.DefaultExit.get_return_exit" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Get the exits that pair with this one in its destination room
|
||
(i.e. returns to its location)</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><p><strong>return_all</strong> (<em>bool</em>) – Whether to return available results as a
|
||
queryset or single matching exit.</p>
|
||
</dd>
|
||
<dt class="field-even">Returns</dt>
|
||
<dd class="field-even"><p><em>Exit or queryset</em> – The matching exit(s). If <strong>return_all</strong> is <strong>True</strong>, this
|
||
will be a queryset of all matching exits. Otherwise, it will be the first Exit matched.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="py exception">
|
||
<dt id="evennia.objects.objects.DefaultExit.DoesNotExist">
|
||
<em class="property">exception </em><code class="sig-name descname">DoesNotExist</code><a class="headerlink" href="#evennia.objects.objects.DefaultExit.DoesNotExist" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Bases: <a class="reference internal" href="#evennia.objects.objects.DefaultObject.DoesNotExist" title="evennia.objects.objects.DefaultObject.DoesNotExist"><code class="xref py py-class docutils literal notranslate"><span class="pre">evennia.objects.objects.DefaultObject.DoesNotExist</span></code></a></p>
|
||
</dd></dl>
|
||
|
||
<dl class="py exception">
|
||
<dt id="evennia.objects.objects.DefaultExit.MultipleObjectsReturned">
|
||
<em class="property">exception </em><code class="sig-name descname">MultipleObjectsReturned</code><a class="headerlink" href="#evennia.objects.objects.DefaultExit.MultipleObjectsReturned" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Bases: <a class="reference internal" href="#evennia.objects.objects.DefaultObject.MultipleObjectsReturned" title="evennia.objects.objects.DefaultObject.MultipleObjectsReturned"><code class="xref py py-class docutils literal notranslate"><span class="pre">evennia.objects.objects.DefaultObject.MultipleObjectsReturned</span></code></a></p>
|
||
</dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt id="evennia.objects.objects.DefaultExit.path">
|
||
<code class="sig-name descname">path</code><em class="property"> = 'evennia.objects.objects.DefaultExit'</em><a class="headerlink" href="#evennia.objects.objects.DefaultExit.path" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="py attribute">
|
||
<dt id="evennia.objects.objects.DefaultExit.typename">
|
||
<code class="sig-name descname">typename</code><em class="property"> = 'DefaultExit'</em><a class="headerlink" href="#evennia.objects.objects.DefaultExit.typename" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
</dd></dl>
|
||
|
||
</section>
|
||
|
||
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
</div>
|
||
<div class="related" role="navigation" aria-label="related navigation">
|
||
<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.prototypes.html" title="evennia.prototypes"
|
||
>next</a> |</li>
|
||
<li class="right" >
|
||
<a href="evennia.objects.models.html" title="evennia.objects.models"
|
||
>previous</a> |</li>
|
||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia latest</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.objects.html" >evennia.objects</a> »</li>
|
||
<li class="nav-item nav-item-this"><a href="">evennia.objects.objects</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> 3.2.1.
|
||
</div>
|
||
</body>
|
||
</html> |