mirror of
https://github.com/evennia/evennia.git
synced 2026-03-25 01:06:32 +01:00
Updated HTML docs
This commit is contained in:
parent
801df95026
commit
b77bb57004
690 changed files with 24165 additions and 10952 deletions
|
|
@ -1,4 +1,4 @@
|
|||
# Sphinx build info version 1
|
||||
# This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done.
|
||||
config: 038fdb322c369db1cc82eabb59d37c56
|
||||
config: 1186b0975bd5d3e707418a127dfdfe8b
|
||||
tags: 645f666f9bcd5a90fca523b33c5a78b7
|
||||
|
|
|
|||
|
|
@ -419,19 +419,6 @@
|
|||
<span class="k">del</span> <span class="n">SystemCmds</span>
|
||||
<span class="k">del</span> <span class="n">_EvContainer</span>
|
||||
|
||||
<span class="c1"># typeclases</span>
|
||||
<span class="kn">from</span> <span class="nn">.utils.utils</span> <span class="kn">import</span> <span class="n">class_from_module</span>
|
||||
|
||||
<span class="n">BASE_ACCOUNT_TYPECLASS</span> <span class="o">=</span> <span class="n">class_from_module</span><span class="p">(</span><span class="n">settings</span><span class="o">.</span><span class="n">BASE_ACCOUNT_TYPECLASS</span><span class="p">)</span>
|
||||
<span class="n">BASE_OBJECT_TYPECLASS</span> <span class="o">=</span> <span class="n">class_from_module</span><span class="p">(</span><span class="n">settings</span><span class="o">.</span><span class="n">BASE_OBJECT_TYPECLASS</span><span class="p">)</span>
|
||||
<span class="n">BASE_CHARACTER_TYPECLASS</span> <span class="o">=</span> <span class="n">class_from_module</span><span class="p">(</span><span class="n">settings</span><span class="o">.</span><span class="n">BASE_CHARACTER_TYPECLASS</span><span class="p">)</span>
|
||||
<span class="n">BASE_ROOM_TYPECLASS</span> <span class="o">=</span> <span class="n">class_from_module</span><span class="p">(</span><span class="n">settings</span><span class="o">.</span><span class="n">BASE_ROOM_TYPECLASS</span><span class="p">)</span>
|
||||
<span class="n">BASE_EXIT_TYPECLASS</span> <span class="o">=</span> <span class="n">class_from_module</span><span class="p">(</span><span class="n">settings</span><span class="o">.</span><span class="n">BASE_EXIT_TYPECLASS</span><span class="p">)</span>
|
||||
<span class="n">BASE_CHANNEL_TYPECLASS</span> <span class="o">=</span> <span class="n">class_from_module</span><span class="p">(</span><span class="n">settings</span><span class="o">.</span><span class="n">BASE_CHANNEL_TYPECLASS</span><span class="p">)</span>
|
||||
<span class="n">BASE_SCRIPT_TYPECLASS</span> <span class="o">=</span> <span class="n">class_from_module</span><span class="p">(</span><span class="n">settings</span><span class="o">.</span><span class="n">BASE_SCRIPT_TYPECLASS</span><span class="p">)</span>
|
||||
<span class="n">BASE_GUEST_TYPECLASS</span> <span class="o">=</span> <span class="n">class_from_module</span><span class="p">(</span><span class="n">settings</span><span class="o">.</span><span class="n">BASE_GUEST_TYPECLASS</span><span class="p">)</span>
|
||||
<span class="k">del</span> <span class="n">class_from_module</span>
|
||||
|
||||
<span class="c1"># delayed starts - important so as to not back-access evennia before it has</span>
|
||||
<span class="c1"># finished initializing</span>
|
||||
<span class="n">GLOBAL_SCRIPTS</span><span class="o">.</span><span class="n">start</span><span class="p">()</span>
|
||||
|
|
|
|||
|
|
@ -60,7 +60,8 @@
|
|||
<span class="kn">from</span> <span class="nn">evennia.utils.utils</span> <span class="kn">import</span> <span class="n">make_iter</span><span class="p">,</span> <span class="n">class_from_module</span>
|
||||
|
||||
<span class="n">COMMAND_DEFAULT_CLASS</span> <span class="o">=</span> <span class="n">class_from_module</span><span class="p">(</span><span class="n">settings</span><span class="o">.</span><span class="n">COMMAND_DEFAULT_CLASS</span><span class="p">)</span>
|
||||
<span class="n">CHANNEL_DEFAULT_TYPECLASS</span> <span class="o">=</span> <span class="n">class_from_module</span><span class="p">(</span><span class="n">settings</span><span class="o">.</span><span class="n">BASE_CHANNEL_TYPECLASS</span><span class="p">)</span>
|
||||
<span class="n">CHANNEL_DEFAULT_TYPECLASS</span> <span class="o">=</span> <span class="n">class_from_module</span><span class="p">(</span>
|
||||
<span class="n">settings</span><span class="o">.</span><span class="n">BASE_CHANNEL_TYPECLASS</span><span class="p">,</span> <span class="n">fallback</span><span class="o">=</span><span class="n">settings</span><span class="o">.</span><span class="n">FALLBACK_CHANNEL_TYPECLASS</span><span class="p">)</span>
|
||||
|
||||
|
||||
<span class="c1"># limit symbol import for API</span>
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load diff
|
|
@ -1,596 +0,0 @@
|
|||
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<title>evennia.contrib.mapbuilder — Evennia 0.9.5 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" />
|
||||
</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="nav-item nav-item-0"><a href="../../../index.html">Evennia 0.9.5</a> »</li>
|
||||
<li class="nav-item nav-item-1"><a href="../../index.html" >Module code</a> »</li>
|
||||
<li class="nav-item nav-item-2"><a href="../../evennia.html" accesskey="U">evennia</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">evennia.contrib.mapbuilder</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="document">
|
||||
<div class="documentwrapper">
|
||||
<div class="bodywrapper">
|
||||
<div class="body" role="main">
|
||||
|
||||
<h1>Source code for evennia.contrib.mapbuilder</h1><div class="highlight"><pre>
|
||||
<span></span><span class="c1"># -*- coding: utf-8 -*-</span>
|
||||
|
||||
<span class="sd">"""</span>
|
||||
<span class="sd">Evennia World Builder</span>
|
||||
|
||||
<span class="sd">Contribution - Cloud_Keeper 2016</span>
|
||||
|
||||
<span class="sd">Build a map from a 2D ASCII map.</span>
|
||||
|
||||
<span class="sd">This is a command which takes two inputs:</span>
|
||||
|
||||
<span class="sd">≈≈≈≈≈</span>
|
||||
<span class="sd">≈♣n♣≈ MAP_LEGEND = {("♣", "♠"): build_forest,</span>
|
||||
<span class="sd">≈∩▲∩≈ ("∩", "n"): build_mountains,</span>
|
||||
<span class="sd">≈♠n♠≈ ("▲"): build_temple}</span>
|
||||
<span class="sd">≈≈≈≈≈</span>
|
||||
|
||||
<span class="sd">A string of ASCII characters representing a map and a dictionary of functions</span>
|
||||
<span class="sd">containing build instructions. The characters of the map are iterated over and</span>
|
||||
<span class="sd">compared to a list of trigger characters. When a match is found the</span>
|
||||
<span class="sd">corresponding function is executed generating the rooms, exits and objects as</span>
|
||||
<span class="sd">defined by the users build instructions. If a character is not a match to</span>
|
||||
<span class="sd">a provided trigger character (including spaces) it is simply skipped and the</span>
|
||||
<span class="sd">process continues.</span>
|
||||
|
||||
<span class="sd">For instance, the above map represents a temple (▲) amongst mountains (n,∩)</span>
|
||||
<span class="sd">in a forest (♣,♠) on an island surrounded by water (≈). Each character on the</span>
|
||||
<span class="sd">first line is iterated over but as there is no match with our MAP_LEGEND it</span>
|
||||
<span class="sd">is skipped. On the second line it finds "♣" which is a match and so the</span>
|
||||
<span class="sd">`build_forest` function is called. Next the `build_mountains` function is</span>
|
||||
<span class="sd">called and so on until the map is completed. Building instructions are passed</span>
|
||||
<span class="sd">the following arguments:</span>
|
||||
<span class="sd"> x - The rooms position on the maps x axis</span>
|
||||
<span class="sd"> y - The rooms position on the maps y axis</span>
|
||||
<span class="sd"> caller - The account calling the command</span>
|
||||
<span class="sd"> iteration - The current iterations number (0, 1 or 2)</span>
|
||||
<span class="sd"> room_dict - A dictionary containing room references returned by build</span>
|
||||
<span class="sd"> functions where tuple coordinates are the keys (x, y).</span>
|
||||
<span class="sd"> ie room_dict[(2, 2)] will return the temple room above.</span>
|
||||
|
||||
<span class="sd">Building functions should return the room they create. By default these rooms</span>
|
||||
<span class="sd">are used to create exits between valid adjacent rooms to the north, south,</span>
|
||||
<span class="sd">east and west directions. This behaviour can turned off with the use of switch</span>
|
||||
<span class="sd">arguments. In addition to turning off automatic exit generation the switches</span>
|
||||
<span class="sd">allow the map to be iterated over a number of times. This is important for</span>
|
||||
<span class="sd">something like custom exit building. Exits require a reference to both the</span>
|
||||
<span class="sd">exits location and the exits destination. During the first iteration it is</span>
|
||||
<span class="sd">possible that an exit is created pointing towards a destination that</span>
|
||||
<span class="sd">has not yet been created resulting in error. By iterating over the map twice</span>
|
||||
<span class="sd">the rooms can be created on the first iteration and room reliant code can be</span>
|
||||
<span class="sd">be used on the second iteration. The iteration number and a dictionary of</span>
|
||||
<span class="sd">references to rooms previously created is passed to the build commands.</span>
|
||||
|
||||
<span class="sd">Use by importing and including the command in your default_cmdsets module.</span>
|
||||
<span class="sd">For example:</span>
|
||||
|
||||
<span class="sd"> # mygame/commands/default_cmdsets.py</span>
|
||||
|
||||
<span class="sd"> from evennia.contrib import mapbuilder</span>
|
||||
|
||||
<span class="sd"> ...</span>
|
||||
|
||||
<span class="sd"> self.add(mapbuilder.CmdMapBuilder())</span>
|
||||
|
||||
<span class="sd">You then call the command in-game using the path to the MAP and MAP_LEGEND vars</span>
|
||||
<span class="sd">The path you provide is relative to the evennia or mygame folder.</span>
|
||||
|
||||
<span class="sd">Usage:</span>
|
||||
<span class="sd"> @mapbuilder[/switch] <path.to.file.MAPNAME> <path.to.file.MAP_LEGEND></span>
|
||||
|
||||
<span class="sd">Switches:</span>
|
||||
<span class="sd"> one - execute build instructions once without automatic exit creation.</span>
|
||||
<span class="sd"> two - execute build instructions twice without automatic exit creation.</span>
|
||||
|
||||
<span class="sd">Example:</span>
|
||||
<span class="sd"> @mapbuilder world.gamemap.MAP world.maplegend.MAP_LEGEND</span>
|
||||
<span class="sd"> @mapbuilder evennia.contrib.mapbuilder.EXAMPLE1_MAP EXAMPLE1_LEGEND</span>
|
||||
<span class="sd"> @mapbuilder/two evennia.contrib.mapbuilder.EXAMPLE2_MAP EXAMPLE2_LEGEND</span>
|
||||
<span class="sd"> (Legend path defaults to map path)</span>
|
||||
|
||||
<span class="sd">Below are two examples showcasing the use of automatic exit generation and</span>
|
||||
<span class="sd">custom exit generation. Whilst located, and can be used, from this module for</span>
|
||||
<span class="sd">convenience The below example code should be in mymap.py in mygame/world.</span>
|
||||
|
||||
<span class="sd">"""</span>
|
||||
|
||||
<span class="kn">from</span> <span class="nn">django.conf</span> <span class="kn">import</span> <span class="n">settings</span>
|
||||
<span class="kn">from</span> <span class="nn">evennia.utils</span> <span class="kn">import</span> <span class="n">utils</span>
|
||||
|
||||
<span class="c1"># ---------- EXAMPLE 1 ---------- #</span>
|
||||
<span class="c1"># @mapbuilder evennia.contrib.mapbuilder.EXAMPLE1_MAP EXAMPLE1_LEGEND</span>
|
||||
|
||||
<span class="c1"># -*- coding: utf-8 -*-</span>
|
||||
|
||||
<span class="c1"># Add the necessary imports for your instructions here.</span>
|
||||
<span class="kn">from</span> <span class="nn">evennia</span> <span class="kn">import</span> <span class="n">create_object</span>
|
||||
<span class="kn">from</span> <span class="nn">typeclasses</span> <span class="kn">import</span> <span class="n">rooms</span><span class="p">,</span> <span class="n">exits</span>
|
||||
<span class="kn">from</span> <span class="nn">random</span> <span class="kn">import</span> <span class="n">randint</span>
|
||||
<span class="kn">import</span> <span class="nn">random</span>
|
||||
|
||||
|
||||
<span class="c1"># A map with a temple (▲) amongst mountains (n,∩) in a forest (♣,♠) on an</span>
|
||||
<span class="c1"># island surrounded by water (≈). By giving no instructions for the water</span>
|
||||
<span class="c1"># characters we effectively skip it and create no rooms for those squares.</span>
|
||||
<span class="n">EXAMPLE1_MAP</span> <span class="o">=</span> <span class="s2">"""</span><span class="se">\</span>
|
||||
<span class="s2">≈≈≈≈≈</span>
|
||||
<span class="s2">≈♣n♣≈</span>
|
||||
<span class="s2">≈∩▲∩≈</span>
|
||||
<span class="s2">≈♠n♠≈</span>
|
||||
<span class="s2">≈≈≈≈≈</span>
|
||||
<span class="s2">"""</span>
|
||||
|
||||
|
||||
<div class="viewcode-block" id="example1_build_forest"><a class="viewcode-back" href="../../../api/evennia.contrib.mapbuilder.html#evennia.contrib.mapbuilder.example1_build_forest">[docs]</a><span class="k">def</span> <span class="nf">example1_build_forest</span><span class="p">(</span><span class="n">x</span><span class="p">,</span> <span class="n">y</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span>
|
||||
<span class="sd">"""A basic example of build instructions. Make sure to include **kwargs</span>
|
||||
<span class="sd"> in the arguments and return an instance of the room for exit generation."""</span>
|
||||
|
||||
<span class="c1"># Create a room and provide a basic description.</span>
|
||||
<span class="n">room</span> <span class="o">=</span> <span class="n">create_object</span><span class="p">(</span><span class="n">rooms</span><span class="o">.</span><span class="n">Room</span><span class="p">,</span> <span class="n">key</span><span class="o">=</span><span class="s2">"forest"</span> <span class="o">+</span> <span class="nb">str</span><span class="p">(</span><span class="n">x</span><span class="p">)</span> <span class="o">+</span> <span class="nb">str</span><span class="p">(</span><span class="n">y</span><span class="p">))</span>
|
||||
<span class="n">room</span><span class="o">.</span><span class="n">db</span><span class="o">.</span><span class="n">desc</span> <span class="o">=</span> <span class="s2">"Basic forest room."</span>
|
||||
|
||||
<span class="c1"># Send a message to the account</span>
|
||||
<span class="n">kwargs</span><span class="p">[</span><span class="s2">"caller"</span><span class="p">]</span><span class="o">.</span><span class="n">msg</span><span class="p">(</span><span class="n">room</span><span class="o">.</span><span class="n">key</span> <span class="o">+</span> <span class="s2">" "</span> <span class="o">+</span> <span class="n">room</span><span class="o">.</span><span class="n">dbref</span><span class="p">)</span>
|
||||
|
||||
<span class="c1"># This is generally mandatory.</span>
|
||||
<span class="k">return</span> <span class="n">room</span></div>
|
||||
|
||||
|
||||
<div class="viewcode-block" id="example1_build_mountains"><a class="viewcode-back" href="../../../api/evennia.contrib.mapbuilder.html#evennia.contrib.mapbuilder.example1_build_mountains">[docs]</a><span class="k">def</span> <span class="nf">example1_build_mountains</span><span class="p">(</span><span class="n">x</span><span class="p">,</span> <span class="n">y</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span>
|
||||
<span class="sd">"""A room that is a little more advanced"""</span>
|
||||
|
||||
<span class="c1"># Create the room.</span>
|
||||
<span class="n">room</span> <span class="o">=</span> <span class="n">create_object</span><span class="p">(</span><span class="n">rooms</span><span class="o">.</span><span class="n">Room</span><span class="p">,</span> <span class="n">key</span><span class="o">=</span><span class="s2">"mountains"</span> <span class="o">+</span> <span class="nb">str</span><span class="p">(</span><span class="n">x</span><span class="p">)</span> <span class="o">+</span> <span class="nb">str</span><span class="p">(</span><span class="n">y</span><span class="p">))</span>
|
||||
|
||||
<span class="c1"># Generate a description by randomly selecting an entry from a list.</span>
|
||||
<span class="n">room_desc</span> <span class="o">=</span> <span class="p">[</span>
|
||||
<span class="s2">"Mountains as far as the eye can see"</span><span class="p">,</span>
|
||||
<span class="s2">"Your path is surrounded by sheer cliffs"</span><span class="p">,</span>
|
||||
<span class="s2">"Haven't you seen that rock before?"</span><span class="p">,</span>
|
||||
<span class="p">]</span>
|
||||
<span class="n">room</span><span class="o">.</span><span class="n">db</span><span class="o">.</span><span class="n">desc</span> <span class="o">=</span> <span class="n">random</span><span class="o">.</span><span class="n">choice</span><span class="p">(</span><span class="n">room_desc</span><span class="p">)</span>
|
||||
|
||||
<span class="c1"># Create a random number of objects to populate the room.</span>
|
||||
<span class="k">for</span> <span class="n">i</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="n">randint</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">3</span><span class="p">)):</span>
|
||||
<span class="n">rock</span> <span class="o">=</span> <span class="n">create_object</span><span class="p">(</span><span class="n">key</span><span class="o">=</span><span class="s2">"Rock"</span><span class="p">,</span> <span class="n">location</span><span class="o">=</span><span class="n">room</span><span class="p">)</span>
|
||||
<span class="n">rock</span><span class="o">.</span><span class="n">db</span><span class="o">.</span><span class="n">desc</span> <span class="o">=</span> <span class="s2">"An ordinary rock."</span>
|
||||
|
||||
<span class="c1"># Send a message to the account</span>
|
||||
<span class="n">kwargs</span><span class="p">[</span><span class="s2">"caller"</span><span class="p">]</span><span class="o">.</span><span class="n">msg</span><span class="p">(</span><span class="n">room</span><span class="o">.</span><span class="n">key</span> <span class="o">+</span> <span class="s2">" "</span> <span class="o">+</span> <span class="n">room</span><span class="o">.</span><span class="n">dbref</span><span class="p">)</span>
|
||||
|
||||
<span class="c1"># This is generally mandatory.</span>
|
||||
<span class="k">return</span> <span class="n">room</span></div>
|
||||
|
||||
|
||||
<div class="viewcode-block" id="example1_build_temple"><a class="viewcode-back" href="../../../api/evennia.contrib.mapbuilder.html#evennia.contrib.mapbuilder.example1_build_temple">[docs]</a><span class="k">def</span> <span class="nf">example1_build_temple</span><span class="p">(</span><span class="n">x</span><span class="p">,</span> <span class="n">y</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span>
|
||||
<span class="sd">"""A unique room that does not need to be as general"""</span>
|
||||
|
||||
<span class="c1"># Create the room.</span>
|
||||
<span class="n">room</span> <span class="o">=</span> <span class="n">create_object</span><span class="p">(</span><span class="n">rooms</span><span class="o">.</span><span class="n">Room</span><span class="p">,</span> <span class="n">key</span><span class="o">=</span><span class="s2">"temple"</span> <span class="o">+</span> <span class="nb">str</span><span class="p">(</span><span class="n">x</span><span class="p">)</span> <span class="o">+</span> <span class="nb">str</span><span class="p">(</span><span class="n">y</span><span class="p">))</span>
|
||||
|
||||
<span class="c1"># Set the description.</span>
|
||||
<span class="n">room</span><span class="o">.</span><span class="n">db</span><span class="o">.</span><span class="n">desc</span> <span class="o">=</span> <span class="p">(</span>
|
||||
<span class="s2">"In what, from the outside, appeared to be a grand and "</span>
|
||||
<span class="s2">"ancient temple you've somehow found yourself in the the "</span>
|
||||
<span class="s2">"Evennia Inn! It consists of one large room filled with "</span>
|
||||
<span class="s2">"tables. The bardisk extends along the east wall, where "</span>
|
||||
<span class="s2">"multiple barrels and bottles line the shelves. The "</span>
|
||||
<span class="s2">"barkeep seems busy handing out ale and chatting with "</span>
|
||||
<span class="s2">"the patrons, which are a rowdy and cheerful lot, "</span>
|
||||
<span class="s2">"keeping the sound level only just below thunderous. "</span>
|
||||
<span class="s2">"This is a rare spot of mirth on this dread moor."</span>
|
||||
<span class="p">)</span>
|
||||
|
||||
<span class="c1"># Send a message to the account</span>
|
||||
<span class="n">kwargs</span><span class="p">[</span><span class="s2">"caller"</span><span class="p">]</span><span class="o">.</span><span class="n">msg</span><span class="p">(</span><span class="n">room</span><span class="o">.</span><span class="n">key</span> <span class="o">+</span> <span class="s2">" "</span> <span class="o">+</span> <span class="n">room</span><span class="o">.</span><span class="n">dbref</span><span class="p">)</span>
|
||||
|
||||
<span class="c1"># This is generally mandatory.</span>
|
||||
<span class="k">return</span> <span class="n">room</span></div>
|
||||
|
||||
|
||||
<span class="c1"># Include your trigger characters and build functions in a legend dict.</span>
|
||||
<span class="n">EXAMPLE1_LEGEND</span> <span class="o">=</span> <span class="p">{</span>
|
||||
<span class="p">(</span><span class="s2">"♣"</span><span class="p">,</span> <span class="s2">"♠"</span><span class="p">):</span> <span class="n">example1_build_forest</span><span class="p">,</span>
|
||||
<span class="p">(</span><span class="s2">"∩"</span><span class="p">,</span> <span class="s2">"n"</span><span class="p">):</span> <span class="n">example1_build_mountains</span><span class="p">,</span>
|
||||
<span class="p">(</span><span class="s2">"▲"</span><span class="p">):</span> <span class="n">example1_build_temple</span><span class="p">,</span>
|
||||
<span class="p">}</span>
|
||||
|
||||
<span class="c1"># ---------- EXAMPLE 2 ---------- #</span>
|
||||
<span class="c1"># @mapbuilder/two evennia.contrib.mapbuilder.EXAMPLE2_MAP EXAMPLE2_LEGEND</span>
|
||||
|
||||
<span class="c1"># -*- coding: utf-8 -*-</span>
|
||||
|
||||
<span class="c1"># Add the necessary imports for your instructions here.</span>
|
||||
<span class="c1"># from evennia import create_object</span>
|
||||
<span class="c1"># from typeclasses import rooms, exits</span>
|
||||
<span class="c1"># from evennia.utils import utils</span>
|
||||
<span class="c1"># from random import randint</span>
|
||||
<span class="c1"># import random</span>
|
||||
|
||||
<span class="c1"># This is the same layout as Example 1 but included are characters for exits.</span>
|
||||
<span class="c1"># We can use these characters to determine which rooms should be connected.</span>
|
||||
<span class="n">EXAMPLE2_MAP</span> <span class="o">=</span> <span class="s2">"""</span><span class="se">\</span>
|
||||
<span class="s2">≈ ≈ ≈ ≈ ≈</span>
|
||||
|
||||
<span class="s2">≈ ♣-♣-♣ ≈</span>
|
||||
<span class="s2"> | |</span>
|
||||
<span class="s2">≈ ♣ ♣ ♣ ≈</span>
|
||||
<span class="s2"> | | |</span>
|
||||
<span class="s2">≈ ♣-♣-♣ ≈</span>
|
||||
|
||||
<span class="s2">≈ ≈ ≈ ≈ ≈</span>
|
||||
<span class="s2">"""</span>
|
||||
|
||||
|
||||
<div class="viewcode-block" id="example2_build_forest"><a class="viewcode-back" href="../../../api/evennia.contrib.mapbuilder.html#evennia.contrib.mapbuilder.example2_build_forest">[docs]</a><span class="k">def</span> <span class="nf">example2_build_forest</span><span class="p">(</span><span class="n">x</span><span class="p">,</span> <span class="n">y</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span>
|
||||
<span class="sd">"""A basic room"""</span>
|
||||
<span class="c1"># If on anything other than the first iteration - Do nothing.</span>
|
||||
<span class="k">if</span> <span class="n">kwargs</span><span class="p">[</span><span class="s2">"iteration"</span><span class="p">]</span> <span class="o">></span> <span class="mi">0</span><span class="p">:</span>
|
||||
<span class="k">return</span> <span class="kc">None</span>
|
||||
|
||||
<span class="n">room</span> <span class="o">=</span> <span class="n">create_object</span><span class="p">(</span><span class="n">rooms</span><span class="o">.</span><span class="n">Room</span><span class="p">,</span> <span class="n">key</span><span class="o">=</span><span class="s2">"forest"</span> <span class="o">+</span> <span class="nb">str</span><span class="p">(</span><span class="n">x</span><span class="p">)</span> <span class="o">+</span> <span class="nb">str</span><span class="p">(</span><span class="n">y</span><span class="p">))</span>
|
||||
<span class="n">room</span><span class="o">.</span><span class="n">db</span><span class="o">.</span><span class="n">desc</span> <span class="o">=</span> <span class="s2">"Basic forest room."</span>
|
||||
|
||||
<span class="n">kwargs</span><span class="p">[</span><span class="s2">"caller"</span><span class="p">]</span><span class="o">.</span><span class="n">msg</span><span class="p">(</span><span class="n">room</span><span class="o">.</span><span class="n">key</span> <span class="o">+</span> <span class="s2">" "</span> <span class="o">+</span> <span class="n">room</span><span class="o">.</span><span class="n">dbref</span><span class="p">)</span>
|
||||
|
||||
<span class="k">return</span> <span class="n">room</span></div>
|
||||
|
||||
|
||||
<div class="viewcode-block" id="example2_build_verticle_exit"><a class="viewcode-back" href="../../../api/evennia.contrib.mapbuilder.html#evennia.contrib.mapbuilder.example2_build_verticle_exit">[docs]</a><span class="k">def</span> <span class="nf">example2_build_verticle_exit</span><span class="p">(</span><span class="n">x</span><span class="p">,</span> <span class="n">y</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span>
|
||||
<span class="sd">"""Creates two exits to and from the two rooms north and south."""</span>
|
||||
<span class="c1"># If on the first iteration - Do nothing.</span>
|
||||
<span class="k">if</span> <span class="n">kwargs</span><span class="p">[</span><span class="s2">"iteration"</span><span class="p">]</span> <span class="o">==</span> <span class="mi">0</span><span class="p">:</span>
|
||||
<span class="k">return</span>
|
||||
|
||||
<span class="n">north_room</span> <span class="o">=</span> <span class="n">kwargs</span><span class="p">[</span><span class="s2">"room_dict"</span><span class="p">][(</span><span class="n">x</span><span class="p">,</span> <span class="n">y</span> <span class="o">-</span> <span class="mi">1</span><span class="p">)]</span>
|
||||
<span class="n">south_room</span> <span class="o">=</span> <span class="n">kwargs</span><span class="p">[</span><span class="s2">"room_dict"</span><span class="p">][(</span><span class="n">x</span><span class="p">,</span> <span class="n">y</span> <span class="o">+</span> <span class="mi">1</span><span class="p">)]</span>
|
||||
|
||||
<span class="c1"># create exits in the rooms</span>
|
||||
<span class="n">create_object</span><span class="p">(</span>
|
||||
<span class="n">exits</span><span class="o">.</span><span class="n">Exit</span><span class="p">,</span> <span class="n">key</span><span class="o">=</span><span class="s2">"south"</span><span class="p">,</span> <span class="n">aliases</span><span class="o">=</span><span class="p">[</span><span class="s2">"s"</span><span class="p">],</span> <span class="n">location</span><span class="o">=</span><span class="n">north_room</span><span class="p">,</span> <span class="n">destination</span><span class="o">=</span><span class="n">south_room</span>
|
||||
<span class="p">)</span>
|
||||
|
||||
<span class="n">create_object</span><span class="p">(</span>
|
||||
<span class="n">exits</span><span class="o">.</span><span class="n">Exit</span><span class="p">,</span> <span class="n">key</span><span class="o">=</span><span class="s2">"north"</span><span class="p">,</span> <span class="n">aliases</span><span class="o">=</span><span class="p">[</span><span class="s2">"n"</span><span class="p">],</span> <span class="n">location</span><span class="o">=</span><span class="n">south_room</span><span class="p">,</span> <span class="n">destination</span><span class="o">=</span><span class="n">north_room</span>
|
||||
<span class="p">)</span>
|
||||
|
||||
<span class="n">kwargs</span><span class="p">[</span><span class="s2">"caller"</span><span class="p">]</span><span class="o">.</span><span class="n">msg</span><span class="p">(</span><span class="s2">"Connected: "</span> <span class="o">+</span> <span class="n">north_room</span><span class="o">.</span><span class="n">key</span> <span class="o">+</span> <span class="s2">" & "</span> <span class="o">+</span> <span class="n">south_room</span><span class="o">.</span><span class="n">key</span><span class="p">)</span></div>
|
||||
|
||||
|
||||
<div class="viewcode-block" id="example2_build_horizontal_exit"><a class="viewcode-back" href="../../../api/evennia.contrib.mapbuilder.html#evennia.contrib.mapbuilder.example2_build_horizontal_exit">[docs]</a><span class="k">def</span> <span class="nf">example2_build_horizontal_exit</span><span class="p">(</span><span class="n">x</span><span class="p">,</span> <span class="n">y</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span>
|
||||
<span class="sd">"""Creates two exits to and from the two rooms east and west."""</span>
|
||||
<span class="c1"># If on the first iteration - Do nothing.</span>
|
||||
<span class="k">if</span> <span class="n">kwargs</span><span class="p">[</span><span class="s2">"iteration"</span><span class="p">]</span> <span class="o">==</span> <span class="mi">0</span><span class="p">:</span>
|
||||
<span class="k">return</span>
|
||||
|
||||
<span class="n">west_room</span> <span class="o">=</span> <span class="n">kwargs</span><span class="p">[</span><span class="s2">"room_dict"</span><span class="p">][(</span><span class="n">x</span> <span class="o">-</span> <span class="mi">1</span><span class="p">,</span> <span class="n">y</span><span class="p">)]</span>
|
||||
<span class="n">east_room</span> <span class="o">=</span> <span class="n">kwargs</span><span class="p">[</span><span class="s2">"room_dict"</span><span class="p">][(</span><span class="n">x</span> <span class="o">+</span> <span class="mi">1</span><span class="p">,</span> <span class="n">y</span><span class="p">)]</span>
|
||||
|
||||
<span class="n">create_object</span><span class="p">(</span><span class="n">exits</span><span class="o">.</span><span class="n">Exit</span><span class="p">,</span> <span class="n">key</span><span class="o">=</span><span class="s2">"east"</span><span class="p">,</span> <span class="n">aliases</span><span class="o">=</span><span class="p">[</span><span class="s2">"e"</span><span class="p">],</span> <span class="n">location</span><span class="o">=</span><span class="n">west_room</span><span class="p">,</span> <span class="n">destination</span><span class="o">=</span><span class="n">east_room</span><span class="p">)</span>
|
||||
|
||||
<span class="n">create_object</span><span class="p">(</span><span class="n">exits</span><span class="o">.</span><span class="n">Exit</span><span class="p">,</span> <span class="n">key</span><span class="o">=</span><span class="s2">"west"</span><span class="p">,</span> <span class="n">aliases</span><span class="o">=</span><span class="p">[</span><span class="s2">"w"</span><span class="p">],</span> <span class="n">location</span><span class="o">=</span><span class="n">east_room</span><span class="p">,</span> <span class="n">destination</span><span class="o">=</span><span class="n">west_room</span><span class="p">)</span>
|
||||
|
||||
<span class="n">kwargs</span><span class="p">[</span><span class="s2">"caller"</span><span class="p">]</span><span class="o">.</span><span class="n">msg</span><span class="p">(</span><span class="s2">"Connected: "</span> <span class="o">+</span> <span class="n">west_room</span><span class="o">.</span><span class="n">key</span> <span class="o">+</span> <span class="s2">" & "</span> <span class="o">+</span> <span class="n">east_room</span><span class="o">.</span><span class="n">key</span><span class="p">)</span></div>
|
||||
|
||||
|
||||
<span class="c1"># Include your trigger characters and build functions in a legend dict.</span>
|
||||
<span class="n">EXAMPLE2_LEGEND</span> <span class="o">=</span> <span class="p">{</span>
|
||||
<span class="p">(</span><span class="s2">"♣"</span><span class="p">,</span> <span class="s2">"♠"</span><span class="p">):</span> <span class="n">example2_build_forest</span><span class="p">,</span>
|
||||
<span class="p">(</span><span class="s2">"|"</span><span class="p">):</span> <span class="n">example2_build_verticle_exit</span><span class="p">,</span>
|
||||
<span class="p">(</span><span class="s2">"-"</span><span class="p">):</span> <span class="n">example2_build_horizontal_exit</span><span class="p">,</span>
|
||||
<span class="p">}</span>
|
||||
|
||||
<span class="c1"># ---------- END OF EXAMPLES ---------- #</span>
|
||||
|
||||
<span class="n">COMMAND_DEFAULT_CLASS</span> <span class="o">=</span> <span class="n">utils</span><span class="o">.</span><span class="n">class_from_module</span><span class="p">(</span><span class="n">settings</span><span class="o">.</span><span class="n">COMMAND_DEFAULT_CLASS</span><span class="p">)</span>
|
||||
|
||||
|
||||
<span class="c1"># Helper function for readability.</span>
|
||||
<span class="k">def</span> <span class="nf">_map_to_list</span><span class="p">(</span><span class="n">game_map</span><span class="p">):</span>
|
||||
<span class="sd">"""</span>
|
||||
<span class="sd"> Splits multi line map string into list of rows.</span>
|
||||
|
||||
<span class="sd"> Args:</span>
|
||||
<span class="sd"> game_map (str): An ASCII map</span>
|
||||
|
||||
<span class="sd"> Returns:</span>
|
||||
<span class="sd"> list (list): The map split into rows</span>
|
||||
|
||||
<span class="sd"> """</span>
|
||||
<span class="k">return</span> <span class="n">game_map</span><span class="o">.</span><span class="n">split</span><span class="p">(</span><span class="s2">"</span><span class="se">\n</span><span class="s2">"</span><span class="p">)</span>
|
||||
|
||||
|
||||
<div class="viewcode-block" id="build_map"><a class="viewcode-back" href="../../../api/evennia.contrib.mapbuilder.html#evennia.contrib.mapbuilder.build_map">[docs]</a><span class="k">def</span> <span class="nf">build_map</span><span class="p">(</span><span class="n">caller</span><span class="p">,</span> <span class="n">game_map</span><span class="p">,</span> <span class="n">legend</span><span class="p">,</span> <span class="n">iterations</span><span class="o">=</span><span class="mi">1</span><span class="p">,</span> <span class="n">build_exits</span><span class="o">=</span><span class="kc">True</span><span class="p">):</span>
|
||||
<span class="sd">"""</span>
|
||||
<span class="sd"> Receives the fetched map and legend vars provided by the player.</span>
|
||||
|
||||
<span class="sd"> Args:</span>
|
||||
<span class="sd"> caller (Object): The creator of the map.</span>
|
||||
<span class="sd"> game_map (str): An ASCII map string.</span>
|
||||
<span class="sd"> legend (dict): Mapping of map symbols to object types.</span>
|
||||
<span class="sd"> iterations (int): The number of iteration passes.</span>
|
||||
<span class="sd"> build_exits (bool): Create exits between new rooms.</span>
|
||||
|
||||
<span class="sd"> Notes:</span>
|
||||
<span class="sd"> The map</span>
|
||||
<span class="sd"> is iterated over character by character, comparing it to the trigger</span>
|
||||
<span class="sd"> characters in the legend var and executing the build instructions on</span>
|
||||
<span class="sd"> finding a match. The map is iterated over according to the `iterations`</span>
|
||||
<span class="sd"> value and exits are optionally generated between adjacent rooms according</span>
|
||||
<span class="sd"> to the `build_exits` value.</span>
|
||||
|
||||
<span class="sd"> """</span>
|
||||
|
||||
<span class="c1"># Split map string to list of rows and create reference list.</span>
|
||||
<span class="n">caller</span><span class="o">.</span><span class="n">msg</span><span class="p">(</span><span class="s2">"Creating Map..."</span><span class="p">)</span>
|
||||
<span class="n">caller</span><span class="o">.</span><span class="n">msg</span><span class="p">(</span><span class="n">game_map</span><span class="p">)</span>
|
||||
<span class="n">game_map</span> <span class="o">=</span> <span class="n">_map_to_list</span><span class="p">(</span><span class="n">game_map</span><span class="p">)</span>
|
||||
|
||||
<span class="c1"># Create a reference dictionary which be passed to build functions and</span>
|
||||
<span class="c1"># will store obj returned by build functions so objs can be referenced.</span>
|
||||
<span class="n">room_dict</span> <span class="o">=</span> <span class="p">{}</span>
|
||||
|
||||
<span class="n">caller</span><span class="o">.</span><span class="n">msg</span><span class="p">(</span><span class="s2">"Creating Landmass..."</span><span class="p">)</span>
|
||||
<span class="k">for</span> <span class="n">iteration</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="n">iterations</span><span class="p">):</span>
|
||||
<span class="k">for</span> <span class="n">y</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="nb">len</span><span class="p">(</span><span class="n">game_map</span><span class="p">)):</span>
|
||||
<span class="k">for</span> <span class="n">x</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="nb">len</span><span class="p">(</span><span class="n">game_map</span><span class="p">[</span><span class="n">y</span><span class="p">])):</span>
|
||||
<span class="k">for</span> <span class="n">key</span> <span class="ow">in</span> <span class="n">legend</span><span class="p">:</span>
|
||||
<span class="c1"># obs - we must use == for strings</span>
|
||||
<span class="k">if</span> <span class="n">game_map</span><span class="p">[</span><span class="n">y</span><span class="p">][</span><span class="n">x</span><span class="p">]</span> <span class="o">==</span> <span class="n">key</span><span class="p">:</span>
|
||||
<span class="n">room</span> <span class="o">=</span> <span class="n">legend</span><span class="p">[</span><span class="n">key</span><span class="p">](</span>
|
||||
<span class="n">x</span><span class="p">,</span> <span class="n">y</span><span class="p">,</span> <span class="n">iteration</span><span class="o">=</span><span class="n">iteration</span><span class="p">,</span> <span class="n">room_dict</span><span class="o">=</span><span class="n">room_dict</span><span class="p">,</span> <span class="n">caller</span><span class="o">=</span><span class="n">caller</span>
|
||||
<span class="p">)</span>
|
||||
<span class="k">if</span> <span class="n">iteration</span> <span class="o">==</span> <span class="mi">0</span><span class="p">:</span>
|
||||
<span class="n">room_dict</span><span class="p">[(</span><span class="n">x</span><span class="p">,</span> <span class="n">y</span><span class="p">)]</span> <span class="o">=</span> <span class="n">room</span>
|
||||
|
||||
<span class="k">if</span> <span class="n">build_exits</span><span class="p">:</span>
|
||||
<span class="c1"># Creating exits. Assumes single room object in dict entry</span>
|
||||
<span class="n">caller</span><span class="o">.</span><span class="n">msg</span><span class="p">(</span><span class="s2">"Connecting Areas..."</span><span class="p">)</span>
|
||||
<span class="k">for</span> <span class="n">loc_key</span><span class="p">,</span> <span class="n">location</span> <span class="ow">in</span> <span class="n">room_dict</span><span class="o">.</span><span class="n">items</span><span class="p">():</span>
|
||||
<span class="n">x</span> <span class="o">=</span> <span class="n">loc_key</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span>
|
||||
<span class="n">y</span> <span class="o">=</span> <span class="n">loc_key</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span>
|
||||
|
||||
<span class="c1"># north</span>
|
||||
<span class="k">if</span> <span class="p">(</span><span class="n">x</span><span class="p">,</span> <span class="n">y</span> <span class="o">-</span> <span class="mi">1</span><span class="p">)</span> <span class="ow">in</span> <span class="n">room_dict</span><span class="p">:</span>
|
||||
<span class="k">if</span> <span class="n">room_dict</span><span class="p">[(</span><span class="n">x</span><span class="p">,</span> <span class="n">y</span> <span class="o">-</span> <span class="mi">1</span><span class="p">)]:</span>
|
||||
<span class="n">create_object</span><span class="p">(</span>
|
||||
<span class="n">exits</span><span class="o">.</span><span class="n">Exit</span><span class="p">,</span>
|
||||
<span class="n">key</span><span class="o">=</span><span class="s2">"north"</span><span class="p">,</span>
|
||||
<span class="n">aliases</span><span class="o">=</span><span class="p">[</span><span class="s2">"n"</span><span class="p">],</span>
|
||||
<span class="n">location</span><span class="o">=</span><span class="n">location</span><span class="p">,</span>
|
||||
<span class="n">destination</span><span class="o">=</span><span class="n">room_dict</span><span class="p">[(</span><span class="n">x</span><span class="p">,</span> <span class="n">y</span> <span class="o">-</span> <span class="mi">1</span><span class="p">)],</span>
|
||||
<span class="p">)</span>
|
||||
|
||||
<span class="c1"># east</span>
|
||||
<span class="k">if</span> <span class="p">(</span><span class="n">x</span> <span class="o">+</span> <span class="mi">1</span><span class="p">,</span> <span class="n">y</span><span class="p">)</span> <span class="ow">in</span> <span class="n">room_dict</span><span class="p">:</span>
|
||||
<span class="k">if</span> <span class="n">room_dict</span><span class="p">[(</span><span class="n">x</span> <span class="o">+</span> <span class="mi">1</span><span class="p">,</span> <span class="n">y</span><span class="p">)]:</span>
|
||||
<span class="n">create_object</span><span class="p">(</span>
|
||||
<span class="n">exits</span><span class="o">.</span><span class="n">Exit</span><span class="p">,</span>
|
||||
<span class="n">key</span><span class="o">=</span><span class="s2">"east"</span><span class="p">,</span>
|
||||
<span class="n">aliases</span><span class="o">=</span><span class="p">[</span><span class="s2">"e"</span><span class="p">],</span>
|
||||
<span class="n">location</span><span class="o">=</span><span class="n">location</span><span class="p">,</span>
|
||||
<span class="n">destination</span><span class="o">=</span><span class="n">room_dict</span><span class="p">[(</span><span class="n">x</span> <span class="o">+</span> <span class="mi">1</span><span class="p">,</span> <span class="n">y</span><span class="p">)],</span>
|
||||
<span class="p">)</span>
|
||||
|
||||
<span class="c1"># south</span>
|
||||
<span class="k">if</span> <span class="p">(</span><span class="n">x</span><span class="p">,</span> <span class="n">y</span> <span class="o">+</span> <span class="mi">1</span><span class="p">)</span> <span class="ow">in</span> <span class="n">room_dict</span><span class="p">:</span>
|
||||
<span class="k">if</span> <span class="n">room_dict</span><span class="p">[(</span><span class="n">x</span><span class="p">,</span> <span class="n">y</span> <span class="o">+</span> <span class="mi">1</span><span class="p">)]:</span>
|
||||
<span class="n">create_object</span><span class="p">(</span>
|
||||
<span class="n">exits</span><span class="o">.</span><span class="n">Exit</span><span class="p">,</span>
|
||||
<span class="n">key</span><span class="o">=</span><span class="s2">"south"</span><span class="p">,</span>
|
||||
<span class="n">aliases</span><span class="o">=</span><span class="p">[</span><span class="s2">"s"</span><span class="p">],</span>
|
||||
<span class="n">location</span><span class="o">=</span><span class="n">location</span><span class="p">,</span>
|
||||
<span class="n">destination</span><span class="o">=</span><span class="n">room_dict</span><span class="p">[(</span><span class="n">x</span><span class="p">,</span> <span class="n">y</span> <span class="o">+</span> <span class="mi">1</span><span class="p">)],</span>
|
||||
<span class="p">)</span>
|
||||
|
||||
<span class="c1"># west</span>
|
||||
<span class="k">if</span> <span class="p">(</span><span class="n">x</span> <span class="o">-</span> <span class="mi">1</span><span class="p">,</span> <span class="n">y</span><span class="p">)</span> <span class="ow">in</span> <span class="n">room_dict</span><span class="p">:</span>
|
||||
<span class="k">if</span> <span class="n">room_dict</span><span class="p">[(</span><span class="n">x</span> <span class="o">-</span> <span class="mi">1</span><span class="p">,</span> <span class="n">y</span><span class="p">)]:</span>
|
||||
<span class="n">create_object</span><span class="p">(</span>
|
||||
<span class="n">exits</span><span class="o">.</span><span class="n">Exit</span><span class="p">,</span>
|
||||
<span class="n">key</span><span class="o">=</span><span class="s2">"west"</span><span class="p">,</span>
|
||||
<span class="n">aliases</span><span class="o">=</span><span class="p">[</span><span class="s2">"w"</span><span class="p">],</span>
|
||||
<span class="n">location</span><span class="o">=</span><span class="n">location</span><span class="p">,</span>
|
||||
<span class="n">destination</span><span class="o">=</span><span class="n">room_dict</span><span class="p">[(</span><span class="n">x</span> <span class="o">-</span> <span class="mi">1</span><span class="p">,</span> <span class="n">y</span><span class="p">)],</span>
|
||||
<span class="p">)</span>
|
||||
|
||||
<span class="n">caller</span><span class="o">.</span><span class="n">msg</span><span class="p">(</span><span class="s2">"Map Created."</span><span class="p">)</span></div>
|
||||
|
||||
|
||||
<span class="c1"># access command</span>
|
||||
|
||||
|
||||
<div class="viewcode-block" id="CmdMapBuilder"><a class="viewcode-back" href="../../../api/evennia.contrib.mapbuilder.html#evennia.contrib.mapbuilder.CmdMapBuilder">[docs]</a><span class="k">class</span> <span class="nc">CmdMapBuilder</span><span class="p">(</span><span class="n">COMMAND_DEFAULT_CLASS</span><span class="p">):</span>
|
||||
<span class="sd">"""</span>
|
||||
<span class="sd"> Build a map from a 2D ASCII map.</span>
|
||||
|
||||
<span class="sd"> Usage:</span>
|
||||
<span class="sd"> @mapbuilder[/switch] <path.to.file.MAPNAME> <path.to.file.MAP_LEGEND></span>
|
||||
|
||||
<span class="sd"> Switches:</span>
|
||||
<span class="sd"> one - execute build instructions once without automatic exit creation</span>
|
||||
<span class="sd"> two - execute build instructions twice without automatic exit creation</span>
|
||||
|
||||
<span class="sd"> Example:</span>
|
||||
<span class="sd"> @mapbuilder world.gamemap.MAP world.maplegend.MAP_LEGEND</span>
|
||||
<span class="sd"> @mapbuilder evennia.contrib.mapbuilder.EXAMPLE1_MAP EXAMPLE1_LEGEND</span>
|
||||
<span class="sd"> @mapbuilder/two evennia.contrib.mapbuilder.EXAMPLE2_MAP EXAMPLE2_LEGEND</span>
|
||||
<span class="sd"> (Legend path defaults to map path)</span>
|
||||
|
||||
<span class="sd"> This is a command which takes two inputs:</span>
|
||||
<span class="sd"> A string of ASCII characters representing a map and a dictionary of</span>
|
||||
<span class="sd"> functions containing build instructions. The characters of the map are</span>
|
||||
<span class="sd"> iterated over and compared to a list of trigger characters. When a match</span>
|
||||
<span class="sd"> is found the corresponding function is executed generating the rooms,</span>
|
||||
<span class="sd"> exits and objects as defined by the users build instructions. If a</span>
|
||||
<span class="sd"> character is not a match to a provided trigger character (including spaces)</span>
|
||||
<span class="sd"> it is simply skipped and the process continues. By default exits are</span>
|
||||
<span class="sd"> automatically generated but is turned off by switches which also determines</span>
|
||||
<span class="sd"> how many times the map is iterated over.</span>
|
||||
<span class="sd"> """</span>
|
||||
|
||||
<span class="n">key</span> <span class="o">=</span> <span class="s2">"@mapbuilder"</span>
|
||||
<span class="n">aliases</span> <span class="o">=</span> <span class="p">[</span><span class="s2">"@buildmap"</span><span class="p">]</span>
|
||||
<span class="n">locks</span> <span class="o">=</span> <span class="s2">"cmd:superuser()"</span>
|
||||
<span class="n">help_category</span> <span class="o">=</span> <span class="s2">"Building"</span>
|
||||
|
||||
<div class="viewcode-block" id="CmdMapBuilder.func"><a class="viewcode-back" href="../../../api/evennia.contrib.mapbuilder.html#evennia.contrib.mapbuilder.CmdMapBuilder.func">[docs]</a> <span class="k">def</span> <span class="nf">func</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
||||
<span class="sd">"""Starts the processor."""</span>
|
||||
|
||||
<span class="n">caller</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">caller</span>
|
||||
<span class="n">args</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">args</span><span class="o">.</span><span class="n">split</span><span class="p">()</span>
|
||||
|
||||
<span class="c1"># Check if arguments passed.</span>
|
||||
<span class="k">if</span> <span class="ow">not</span> <span class="bp">self</span><span class="o">.</span><span class="n">args</span> <span class="ow">or</span> <span class="p">(</span><span class="nb">len</span><span class="p">(</span><span class="n">args</span><span class="p">)</span> <span class="o">!=</span> <span class="mi">2</span><span class="p">):</span>
|
||||
<span class="n">caller</span><span class="o">.</span><span class="n">msg</span><span class="p">(</span><span class="s2">"Usage: @mapbuilder <path.to.module.VARNAME> "</span> <span class="s2">"<path.to.module.MAP_LEGEND>"</span><span class="p">)</span>
|
||||
<span class="k">return</span>
|
||||
|
||||
<span class="c1"># Set up base variables.</span>
|
||||
<span class="n">game_map</span> <span class="o">=</span> <span class="kc">None</span>
|
||||
<span class="n">legend</span> <span class="o">=</span> <span class="kc">None</span>
|
||||
|
||||
<span class="c1"># OBTAIN MAP FROM MODULE</span>
|
||||
|
||||
<span class="c1"># Breaks down path_to_map into [PATH, VARIABLE]</span>
|
||||
<span class="n">path_to_map</span> <span class="o">=</span> <span class="n">args</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span>
|
||||
<span class="n">path_to_map</span> <span class="o">=</span> <span class="n">path_to_map</span><span class="o">.</span><span class="n">rsplit</span><span class="p">(</span><span class="s2">"."</span><span class="p">,</span> <span class="mi">1</span><span class="p">)</span>
|
||||
|
||||
<span class="k">try</span><span class="p">:</span>
|
||||
<span class="c1"># Retrieves map variable from module or raises error.</span>
|
||||
<span class="n">game_map</span> <span class="o">=</span> <span class="n">utils</span><span class="o">.</span><span class="n">variable_from_module</span><span class="p">(</span><span class="n">path_to_map</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span> <span class="n">path_to_map</span><span class="p">[</span><span class="mi">1</span><span class="p">])</span>
|
||||
<span class="k">if</span> <span class="ow">not</span> <span class="n">game_map</span><span class="p">:</span>
|
||||
<span class="k">raise</span> <span class="ne">ValueError</span><span class="p">(</span>
|
||||
<span class="s2">"Command Aborted!</span><span class="se">\n</span><span class="s2">"</span>
|
||||
<span class="s2">"Path to map variable failed.</span><span class="se">\n</span><span class="s2">"</span>
|
||||
<span class="s2">"Usage: @mapbuilder <path.to.module."</span>
|
||||
<span class="s2">"VARNAME> <path.to.module.MAP_LEGEND>"</span>
|
||||
<span class="p">)</span>
|
||||
|
||||
<span class="k">except</span> <span class="ne">Exception</span> <span class="k">as</span> <span class="n">exc</span><span class="p">:</span>
|
||||
<span class="c1"># Or relays error message if fails.</span>
|
||||
<span class="n">caller</span><span class="o">.</span><span class="n">msg</span><span class="p">(</span><span class="n">exc</span><span class="p">)</span>
|
||||
<span class="k">return</span>
|
||||
|
||||
<span class="c1"># OBTAIN MAP_LEGEND FROM MODULE</span>
|
||||
|
||||
<span class="c1"># Breaks down path_to_legend into [PATH, VARIABLE]</span>
|
||||
<span class="n">path_to_legend</span> <span class="o">=</span> <span class="n">args</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span>
|
||||
<span class="n">path_to_legend</span> <span class="o">=</span> <span class="n">path_to_legend</span><span class="o">.</span><span class="n">rsplit</span><span class="p">(</span><span class="s2">"."</span><span class="p">,</span> <span class="mi">1</span><span class="p">)</span>
|
||||
|
||||
<span class="c1"># If no path given default to path_to_map's path</span>
|
||||
<span class="k">if</span> <span class="nb">len</span><span class="p">(</span><span class="n">path_to_legend</span><span class="p">)</span> <span class="o">==</span> <span class="mi">1</span><span class="p">:</span>
|
||||
<span class="n">path_to_legend</span><span class="o">.</span><span class="n">insert</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="n">path_to_map</span><span class="p">[</span><span class="mi">0</span><span class="p">])</span>
|
||||
|
||||
<span class="k">try</span><span class="p">:</span>
|
||||
<span class="c1"># Retrieves legend variable from module or raises error if fails.</span>
|
||||
<span class="n">legend</span> <span class="o">=</span> <span class="n">utils</span><span class="o">.</span><span class="n">variable_from_module</span><span class="p">(</span><span class="n">path_to_legend</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span> <span class="n">path_to_legend</span><span class="p">[</span><span class="mi">1</span><span class="p">])</span>
|
||||
<span class="k">if</span> <span class="ow">not</span> <span class="n">legend</span><span class="p">:</span>
|
||||
<span class="k">raise</span> <span class="ne">ValueError</span><span class="p">(</span>
|
||||
<span class="s2">"Command Aborted!</span><span class="se">\n</span><span class="s2">"</span>
|
||||
<span class="s2">"Path to legend variable failed.</span><span class="se">\n</span><span class="s2">"</span>
|
||||
<span class="s2">"Usage: @mapbuilder <path.to.module."</span>
|
||||
<span class="s2">"VARNAME> <path.to.module.MAP_LEGEND>"</span>
|
||||
<span class="p">)</span>
|
||||
|
||||
<span class="k">except</span> <span class="ne">Exception</span> <span class="k">as</span> <span class="n">exc</span><span class="p">:</span>
|
||||
<span class="c1"># Or relays error message if fails.</span>
|
||||
<span class="n">caller</span><span class="o">.</span><span class="n">msg</span><span class="p">(</span><span class="n">exc</span><span class="p">)</span>
|
||||
<span class="k">return</span>
|
||||
|
||||
<span class="c1"># Set up build_map arguments from switches</span>
|
||||
<span class="n">iterations</span> <span class="o">=</span> <span class="mi">1</span>
|
||||
<span class="n">build_exits</span> <span class="o">=</span> <span class="kc">True</span>
|
||||
|
||||
<span class="k">if</span> <span class="s2">"one"</span> <span class="ow">in</span> <span class="bp">self</span><span class="o">.</span><span class="n">switches</span><span class="p">:</span>
|
||||
<span class="n">build_exits</span> <span class="o">=</span> <span class="kc">False</span>
|
||||
|
||||
<span class="k">if</span> <span class="s2">"two"</span> <span class="ow">in</span> <span class="bp">self</span><span class="o">.</span><span class="n">switches</span><span class="p">:</span>
|
||||
<span class="n">iterations</span> <span class="o">=</span> <span class="mi">2</span>
|
||||
<span class="n">build_exits</span> <span class="o">=</span> <span class="kc">False</span>
|
||||
|
||||
<span class="c1"># Pass map and legend to the build function.</span>
|
||||
<span class="n">build_map</span><span class="p">(</span><span class="n">caller</span><span class="p">,</span> <span class="n">game_map</span><span class="p">,</span> <span class="n">legend</span><span class="p">,</span> <span class="n">iterations</span><span class="p">,</span> <span class="n">build_exits</span><span class="p">)</span></div></div>
|
||||
</pre></div>
|
||||
|
||||
<div class="clearer"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<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>
|
||||
<h3>Versions</h3>
|
||||
<ul>
|
||||
<li><a href="../../../../1.0-dev/index.html">1.0-dev (develop branch)</a></li>
|
||||
<li><a href="mapbuilder.html">0.9.5 (v0.9.5 branch)</a></li>
|
||||
</ul>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearer"></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="nav-item nav-item-0"><a href="../../../index.html">Evennia 0.9.5</a> »</li>
|
||||
<li class="nav-item nav-item-1"><a href="../../index.html" >Module code</a> »</li>
|
||||
<li class="nav-item nav-item-2"><a href="../../evennia.html" >evennia</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">evennia.contrib.mapbuilder</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="footer" role="contentinfo">
|
||||
© Copyright 2020, The Evennia developer community.
|
||||
Created using <a href="https://www.sphinx-doc.org/">Sphinx</a> 3.2.1.
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -1,348 +0,0 @@
|
|||
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<title>evennia.contrib.menu_login — Evennia 0.9.5 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" />
|
||||
</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="nav-item nav-item-0"><a href="../../../index.html">Evennia 0.9.5</a> »</li>
|
||||
<li class="nav-item nav-item-1"><a href="../../index.html" >Module code</a> »</li>
|
||||
<li class="nav-item nav-item-2"><a href="../../evennia.html" accesskey="U">evennia</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">evennia.contrib.menu_login</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="document">
|
||||
<div class="documentwrapper">
|
||||
<div class="bodywrapper">
|
||||
<div class="body" role="main">
|
||||
|
||||
<h1>Source code for evennia.contrib.menu_login</h1><div class="highlight"><pre>
|
||||
<span></span><span class="sd">"""</span>
|
||||
<span class="sd">A login menu using EvMenu.</span>
|
||||
|
||||
<span class="sd">Contribution - Vincent-lg 2016, Griatch 2019 (rework for modern EvMenu)</span>
|
||||
|
||||
<span class="sd">This changes the Evennia login to ask for the account name and password in</span>
|
||||
<span class="sd">sequence instead of requiring you to enter both at once. </span>
|
||||
|
||||
<span class="sd">To install, add this line to the settings file (`mygame/server/conf/settings.py`):</span>
|
||||
|
||||
<span class="sd"> CMDSET_UNLOGGEDIN = "evennia.contrib.menu_login.UnloggedinCmdSet"</span>
|
||||
|
||||
<span class="sd">Reload the server and the new connection method will be active. Note that you must</span>
|
||||
<span class="sd">independently change the connection screen to match this login style, by editing </span>
|
||||
<span class="sd">`mygame/server/conf/connection_screens.py`.</span>
|
||||
|
||||
<span class="sd">This uses Evennia's menu system EvMenu and is triggered by a command that is </span>
|
||||
<span class="sd">called automatically when a new user connects.</span>
|
||||
|
||||
<span class="sd">"""</span>
|
||||
|
||||
<span class="kn">from</span> <span class="nn">django.conf</span> <span class="kn">import</span> <span class="n">settings</span>
|
||||
|
||||
<span class="kn">from</span> <span class="nn">evennia</span> <span class="kn">import</span> <span class="n">Command</span><span class="p">,</span> <span class="n">CmdSet</span>
|
||||
<span class="kn">from</span> <span class="nn">evennia</span> <span class="kn">import</span> <span class="n">syscmdkeys</span>
|
||||
<span class="kn">from</span> <span class="nn">evennia.utils.evmenu</span> <span class="kn">import</span> <span class="n">EvMenu</span>
|
||||
<span class="kn">from</span> <span class="nn">evennia.utils.utils</span> <span class="kn">import</span> <span class="n">random_string_from_module</span><span class="p">,</span> <span class="n">class_from_module</span><span class="p">,</span> <span class="n">callables_from_module</span>
|
||||
|
||||
<span class="n">_CONNECTION_SCREEN_MODULE</span> <span class="o">=</span> <span class="n">settings</span><span class="o">.</span><span class="n">CONNECTION_SCREEN_MODULE</span>
|
||||
<span class="n">_GUEST_ENABLED</span> <span class="o">=</span> <span class="n">settings</span><span class="o">.</span><span class="n">GUEST_ENABLED</span>
|
||||
<span class="n">_ACCOUNT</span> <span class="o">=</span> <span class="n">class_from_module</span><span class="p">(</span><span class="n">settings</span><span class="o">.</span><span class="n">BASE_ACCOUNT_TYPECLASS</span><span class="p">)</span>
|
||||
<span class="n">_GUEST</span> <span class="o">=</span> <span class="n">class_from_module</span><span class="p">(</span><span class="n">settings</span><span class="o">.</span><span class="n">BASE_GUEST_TYPECLASS</span><span class="p">)</span>
|
||||
|
||||
<span class="n">_ACCOUNT_HELP</span> <span class="o">=</span> <span class="p">(</span>
|
||||
<span class="s2">"Enter the name you used to log into the game before, "</span> <span class="s2">"or a new account-name if you are new."</span>
|
||||
<span class="p">)</span>
|
||||
<span class="n">_PASSWORD_HELP</span> <span class="o">=</span> <span class="p">(</span>
|
||||
<span class="s2">"Password should be a minimum of 8 characters (preferably longer) and "</span>
|
||||
<span class="s2">"can contain a mix of letters, spaces, digits and @/./+/-/_/'/, only."</span>
|
||||
<span class="p">)</span>
|
||||
|
||||
<span class="c1"># Menu nodes</span>
|
||||
|
||||
|
||||
<span class="k">def</span> <span class="nf">_show_help</span><span class="p">(</span><span class="n">caller</span><span class="p">,</span> <span class="n">raw_string</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span>
|
||||
<span class="sd">"""Echo help message, then re-run node that triggered it"""</span>
|
||||
<span class="n">help_entry</span> <span class="o">=</span> <span class="n">kwargs</span><span class="p">[</span><span class="s2">"help_entry"</span><span class="p">]</span>
|
||||
<span class="n">caller</span><span class="o">.</span><span class="n">msg</span><span class="p">(</span><span class="n">help_entry</span><span class="p">)</span>
|
||||
<span class="k">return</span> <span class="kc">None</span> <span class="c1"># re-run calling node</span>
|
||||
|
||||
|
||||
<div class="viewcode-block" id="node_enter_username"><a class="viewcode-back" href="../../../api/evennia.contrib.menu_login.html#evennia.contrib.menu_login.node_enter_username">[docs]</a><span class="k">def</span> <span class="nf">node_enter_username</span><span class="p">(</span><span class="n">caller</span><span class="p">,</span> <span class="n">raw_text</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span>
|
||||
<span class="sd">"""</span>
|
||||
<span class="sd"> Start node of menu</span>
|
||||
<span class="sd"> Start login by displaying the connection screen and ask for a user name.</span>
|
||||
|
||||
<span class="sd"> """</span>
|
||||
|
||||
<span class="k">def</span> <span class="nf">_check_input</span><span class="p">(</span><span class="n">caller</span><span class="p">,</span> <span class="n">username</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span>
|
||||
<span class="sd">"""</span>
|
||||
<span class="sd"> 'Goto-callable', set up to be called from the _default option below.</span>
|
||||
|
||||
<span class="sd"> Called when user enters a username string. Check if this username already exists and set the flag</span>
|
||||
<span class="sd"> 'new_user' if not. Will also directly login if the username is 'guest'</span>
|
||||
<span class="sd"> and GUEST_ENABLED is True.</span>
|
||||
|
||||
<span class="sd"> The return from this goto-callable determines which node we go to next</span>
|
||||
<span class="sd"> and what kwarg it will be called with.</span>
|
||||
|
||||
<span class="sd"> """</span>
|
||||
<span class="n">username</span> <span class="o">=</span> <span class="n">username</span><span class="o">.</span><span class="n">rstrip</span><span class="p">(</span><span class="s2">"</span><span class="se">\n</span><span class="s2">"</span><span class="p">)</span>
|
||||
|
||||
<span class="k">if</span> <span class="n">username</span> <span class="o">==</span> <span class="s2">"guest"</span> <span class="ow">and</span> <span class="n">_GUEST_ENABLED</span><span class="p">:</span>
|
||||
<span class="c1"># do an immediate guest login</span>
|
||||
<span class="n">session</span> <span class="o">=</span> <span class="n">caller</span>
|
||||
<span class="n">address</span> <span class="o">=</span> <span class="n">session</span><span class="o">.</span><span class="n">address</span>
|
||||
<span class="n">account</span><span class="p">,</span> <span class="n">errors</span> <span class="o">=</span> <span class="n">_GUEST</span><span class="o">.</span><span class="n">authenticate</span><span class="p">(</span><span class="n">ip</span><span class="o">=</span><span class="n">address</span><span class="p">)</span>
|
||||
<span class="k">if</span> <span class="n">account</span><span class="p">:</span>
|
||||
<span class="k">return</span> <span class="s2">"node_quit_or_login"</span><span class="p">,</span> <span class="p">{</span><span class="s2">"login"</span><span class="p">:</span> <span class="kc">True</span><span class="p">,</span> <span class="s2">"account"</span><span class="p">:</span> <span class="n">account</span><span class="p">}</span>
|
||||
<span class="k">else</span><span class="p">:</span>
|
||||
<span class="n">session</span><span class="o">.</span><span class="n">msg</span><span class="p">(</span><span class="s2">"|R</span><span class="si">{}</span><span class="s2">|n"</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="s2">"</span><span class="se">\n</span><span class="s2">"</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="n">errors</span><span class="p">)))</span>
|
||||
<span class="k">return</span> <span class="kc">None</span> <span class="c1"># re-run the username node</span>
|
||||
|
||||
<span class="k">try</span><span class="p">:</span>
|
||||
<span class="n">_ACCOUNT</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="n">username__iexact</span><span class="o">=</span><span class="n">username</span><span class="p">)</span>
|
||||
<span class="k">except</span> <span class="n">_ACCOUNT</span><span class="o">.</span><span class="n">DoesNotExist</span><span class="p">:</span>
|
||||
<span class="n">new_user</span> <span class="o">=</span> <span class="kc">True</span>
|
||||
<span class="k">else</span><span class="p">:</span>
|
||||
<span class="n">new_user</span> <span class="o">=</span> <span class="kc">False</span>
|
||||
|
||||
<span class="c1"># pass username/new_user into next node as kwargs</span>
|
||||
<span class="k">return</span> <span class="s2">"node_enter_password"</span><span class="p">,</span> <span class="p">{</span><span class="s2">"new_user"</span><span class="p">:</span> <span class="n">new_user</span><span class="p">,</span> <span class="s2">"username"</span><span class="p">:</span> <span class="n">username</span><span class="p">}</span>
|
||||
|
||||
<span class="n">callables</span> <span class="o">=</span> <span class="n">callables_from_module</span><span class="p">(</span><span class="n">_CONNECTION_SCREEN_MODULE</span><span class="p">)</span>
|
||||
<span class="k">if</span> <span class="s2">"connection_screen"</span> <span class="ow">in</span> <span class="n">callables</span><span class="p">:</span>
|
||||
<span class="n">connection_screen</span> <span class="o">=</span> <span class="n">callables</span><span class="p">[</span><span class="s2">"connection_screen"</span><span class="p">]()</span>
|
||||
<span class="k">else</span><span class="p">:</span>
|
||||
<span class="n">connection_screen</span> <span class="o">=</span> <span class="n">random_string_from_module</span><span class="p">(</span><span class="n">_CONNECTION_SCREEN_MODULE</span><span class="p">)</span>
|
||||
|
||||
<span class="k">if</span> <span class="n">_GUEST_ENABLED</span><span class="p">:</span>
|
||||
<span class="n">text</span> <span class="o">=</span> <span class="s2">"Enter a new or existing user name to login (write 'guest' for a guest login):"</span>
|
||||
<span class="k">else</span><span class="p">:</span>
|
||||
<span class="n">text</span> <span class="o">=</span> <span class="s2">"Enter a new or existing user name to login:"</span>
|
||||
<span class="n">text</span> <span class="o">=</span> <span class="s2">"</span><span class="si">{}</span><span class="se">\n\n</span><span class="si">{}</span><span class="s2">"</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">connection_screen</span><span class="p">,</span> <span class="n">text</span><span class="p">)</span>
|
||||
|
||||
<span class="n">options</span> <span class="o">=</span> <span class="p">(</span>
|
||||
<span class="p">{</span><span class="s2">"key"</span><span class="p">:</span> <span class="s2">""</span><span class="p">,</span> <span class="s2">"goto"</span><span class="p">:</span> <span class="s2">"node_enter_username"</span><span class="p">},</span>
|
||||
<span class="p">{</span><span class="s2">"key"</span><span class="p">:</span> <span class="p">(</span><span class="s2">"quit"</span><span class="p">,</span> <span class="s2">"q"</span><span class="p">),</span> <span class="s2">"goto"</span><span class="p">:</span> <span class="s2">"node_quit_or_login"</span><span class="p">},</span>
|
||||
<span class="p">{</span><span class="s2">"key"</span><span class="p">:</span> <span class="p">(</span><span class="s2">"help"</span><span class="p">,</span> <span class="s2">"h"</span><span class="p">),</span> <span class="s2">"goto"</span><span class="p">:</span> <span class="p">(</span><span class="n">_show_help</span><span class="p">,</span> <span class="p">{</span><span class="s2">"help_entry"</span><span class="p">:</span> <span class="n">_ACCOUNT_HELP</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">})},</span>
|
||||
<span class="p">{</span><span class="s2">"key"</span><span class="p">:</span> <span class="s2">"_default"</span><span class="p">,</span> <span class="s2">"goto"</span><span class="p">:</span> <span class="n">_check_input</span><span class="p">},</span>
|
||||
<span class="p">)</span>
|
||||
<span class="k">return</span> <span class="n">text</span><span class="p">,</span> <span class="n">options</span></div>
|
||||
|
||||
|
||||
<div class="viewcode-block" id="node_enter_password"><a class="viewcode-back" href="../../../api/evennia.contrib.menu_login.html#evennia.contrib.menu_login.node_enter_password">[docs]</a><span class="k">def</span> <span class="nf">node_enter_password</span><span class="p">(</span><span class="n">caller</span><span class="p">,</span> <span class="n">raw_string</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span>
|
||||
<span class="sd">"""</span>
|
||||
<span class="sd"> Handle password input.</span>
|
||||
|
||||
<span class="sd"> """</span>
|
||||
|
||||
<span class="k">def</span> <span class="nf">_check_input</span><span class="p">(</span><span class="n">caller</span><span class="p">,</span> <span class="n">password</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span>
|
||||
<span class="sd">"""</span>
|
||||
<span class="sd"> 'Goto-callable', set up to be called from the _default option below.</span>
|
||||
|
||||
<span class="sd"> Called when user enters a password string. Check username + password</span>
|
||||
<span class="sd"> viability. If it passes, the account will have been created and login</span>
|
||||
<span class="sd"> will be initiated.</span>
|
||||
|
||||
<span class="sd"> The return from this goto-callable determines which node we go to next</span>
|
||||
<span class="sd"> and what kwarg it will be called with.</span>
|
||||
|
||||
<span class="sd"> """</span>
|
||||
<span class="c1"># these flags were set by the goto-callable</span>
|
||||
<span class="n">username</span> <span class="o">=</span> <span class="n">kwargs</span><span class="p">[</span><span class="s2">"username"</span><span class="p">]</span>
|
||||
<span class="n">new_user</span> <span class="o">=</span> <span class="n">kwargs</span><span class="p">[</span><span class="s2">"new_user"</span><span class="p">]</span>
|
||||
<span class="n">password</span> <span class="o">=</span> <span class="n">password</span><span class="o">.</span><span class="n">rstrip</span><span class="p">(</span><span class="s2">"</span><span class="se">\n</span><span class="s2">"</span><span class="p">)</span>
|
||||
|
||||
<span class="n">session</span> <span class="o">=</span> <span class="n">caller</span>
|
||||
<span class="n">address</span> <span class="o">=</span> <span class="n">session</span><span class="o">.</span><span class="n">address</span>
|
||||
<span class="k">if</span> <span class="n">new_user</span><span class="p">:</span>
|
||||
<span class="c1"># create a new account</span>
|
||||
<span class="n">account</span><span class="p">,</span> <span class="n">errors</span> <span class="o">=</span> <span class="n">_ACCOUNT</span><span class="o">.</span><span class="n">create</span><span class="p">(</span>
|
||||
<span class="n">username</span><span class="o">=</span><span class="n">username</span><span class="p">,</span> <span class="n">password</span><span class="o">=</span><span class="n">password</span><span class="p">,</span> <span class="n">ip</span><span class="o">=</span><span class="n">address</span><span class="p">,</span> <span class="n">session</span><span class="o">=</span><span class="n">session</span>
|
||||
<span class="p">)</span>
|
||||
<span class="k">else</span><span class="p">:</span>
|
||||
<span class="c1"># check password against existing account</span>
|
||||
<span class="n">account</span><span class="p">,</span> <span class="n">errors</span> <span class="o">=</span> <span class="n">_ACCOUNT</span><span class="o">.</span><span class="n">authenticate</span><span class="p">(</span>
|
||||
<span class="n">username</span><span class="o">=</span><span class="n">username</span><span class="p">,</span> <span class="n">password</span><span class="o">=</span><span class="n">password</span><span class="p">,</span> <span class="n">ip</span><span class="o">=</span><span class="n">address</span><span class="p">,</span> <span class="n">session</span><span class="o">=</span><span class="n">session</span>
|
||||
<span class="p">)</span>
|
||||
|
||||
<span class="k">if</span> <span class="n">account</span><span class="p">:</span>
|
||||
<span class="k">if</span> <span class="n">new_user</span><span class="p">:</span>
|
||||
<span class="n">session</span><span class="o">.</span><span class="n">msg</span><span class="p">(</span><span class="s2">"|gA new account |c</span><span class="si">{}</span><span class="s2">|g was created. Welcome!|n"</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">username</span><span class="p">))</span>
|
||||
<span class="c1"># pass login info to login node</span>
|
||||
<span class="k">return</span> <span class="s2">"node_quit_or_login"</span><span class="p">,</span> <span class="p">{</span><span class="s2">"login"</span><span class="p">:</span> <span class="kc">True</span><span class="p">,</span> <span class="s2">"account"</span><span class="p">:</span> <span class="n">account</span><span class="p">}</span>
|
||||
<span class="k">else</span><span class="p">:</span>
|
||||
<span class="c1"># restart due to errors</span>
|
||||
<span class="n">session</span><span class="o">.</span><span class="n">msg</span><span class="p">(</span><span class="s2">"|R</span><span class="si">{}</span><span class="s2">"</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="s2">"</span><span class="se">\n</span><span class="s2">"</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="n">errors</span><span class="p">)))</span>
|
||||
<span class="n">kwargs</span><span class="p">[</span><span class="s2">"retry_password"</span><span class="p">]</span> <span class="o">=</span> <span class="kc">True</span>
|
||||
<span class="k">return</span> <span class="s2">"node_enter_password"</span><span class="p">,</span> <span class="n">kwargs</span>
|
||||
|
||||
<span class="k">def</span> <span class="nf">_restart_login</span><span class="p">(</span><span class="n">caller</span><span class="p">,</span> <span class="o">*</span><span class="n">args</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span>
|
||||
<span class="n">caller</span><span class="o">.</span><span class="n">msg</span><span class="p">(</span><span class="s2">"|yCancelled login.|n"</span><span class="p">)</span>
|
||||
<span class="k">return</span> <span class="s2">"node_enter_username"</span>
|
||||
|
||||
<span class="n">username</span> <span class="o">=</span> <span class="n">kwargs</span><span class="p">[</span><span class="s2">"username"</span><span class="p">]</span>
|
||||
<span class="k">if</span> <span class="n">kwargs</span><span class="p">[</span><span class="s2">"new_user"</span><span class="p">]:</span>
|
||||
|
||||
<span class="k">if</span> <span class="n">kwargs</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">"retry_password"</span><span class="p">):</span>
|
||||
<span class="c1"># Attempting to fix password</span>
|
||||
<span class="n">text</span> <span class="o">=</span> <span class="s2">"Enter a new password:"</span>
|
||||
<span class="k">else</span><span class="p">:</span>
|
||||
<span class="n">text</span> <span class="o">=</span> <span class="s2">"Creating a new account |c</span><span class="si">{}</span><span class="s2">|n. "</span> <span class="s2">"Enter a password (empty to abort):"</span><span class="o">.</span><span class="n">format</span><span class="p">(</span>
|
||||
<span class="n">username</span>
|
||||
<span class="p">)</span>
|
||||
<span class="k">else</span><span class="p">:</span>
|
||||
<span class="n">text</span> <span class="o">=</span> <span class="s2">"Enter the password for account |c</span><span class="si">{}</span><span class="s2">|n (empty to abort):"</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">username</span><span class="p">)</span>
|
||||
<span class="n">options</span> <span class="o">=</span> <span class="p">(</span>
|
||||
<span class="p">{</span><span class="s2">"key"</span><span class="p">:</span> <span class="s2">""</span><span class="p">,</span> <span class="s2">"goto"</span><span class="p">:</span> <span class="n">_restart_login</span><span class="p">},</span>
|
||||
<span class="p">{</span><span class="s2">"key"</span><span class="p">:</span> <span class="p">(</span><span class="s2">"quit"</span><span class="p">,</span> <span class="s2">"q"</span><span class="p">),</span> <span class="s2">"goto"</span><span class="p">:</span> <span class="s2">"node_quit_or_login"</span><span class="p">},</span>
|
||||
<span class="p">{</span><span class="s2">"key"</span><span class="p">:</span> <span class="p">(</span><span class="s2">"help"</span><span class="p">,</span> <span class="s2">"h"</span><span class="p">),</span> <span class="s2">"goto"</span><span class="p">:</span> <span class="p">(</span><span class="n">_show_help</span><span class="p">,</span> <span class="p">{</span><span class="s2">"help_entry"</span><span class="p">:</span> <span class="n">_PASSWORD_HELP</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">})},</span>
|
||||
<span class="p">{</span><span class="s2">"key"</span><span class="p">:</span> <span class="s2">"_default"</span><span class="p">,</span> <span class="s2">"goto"</span><span class="p">:</span> <span class="p">(</span><span class="n">_check_input</span><span class="p">,</span> <span class="n">kwargs</span><span class="p">)},</span>
|
||||
<span class="p">)</span>
|
||||
<span class="k">return</span> <span class="n">text</span><span class="p">,</span> <span class="n">options</span></div>
|
||||
|
||||
|
||||
<div class="viewcode-block" id="node_quit_or_login"><a class="viewcode-back" href="../../../api/evennia.contrib.menu_login.html#evennia.contrib.menu_login.node_quit_or_login">[docs]</a><span class="k">def</span> <span class="nf">node_quit_or_login</span><span class="p">(</span><span class="n">caller</span><span class="p">,</span> <span class="n">raw_text</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span>
|
||||
<span class="sd">"""</span>
|
||||
<span class="sd"> Exit menu, either by disconnecting or logging in.</span>
|
||||
|
||||
<span class="sd"> """</span>
|
||||
<span class="n">session</span> <span class="o">=</span> <span class="n">caller</span>
|
||||
<span class="k">if</span> <span class="n">kwargs</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">"login"</span><span class="p">):</span>
|
||||
<span class="n">account</span> <span class="o">=</span> <span class="n">kwargs</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">"account"</span><span class="p">)</span>
|
||||
<span class="n">session</span><span class="o">.</span><span class="n">msg</span><span class="p">(</span><span class="s2">"|gLogging in ...|n"</span><span class="p">)</span>
|
||||
<span class="n">session</span><span class="o">.</span><span class="n">sessionhandler</span><span class="o">.</span><span class="n">login</span><span class="p">(</span><span class="n">session</span><span class="p">,</span> <span class="n">account</span><span class="p">)</span>
|
||||
<span class="k">else</span><span class="p">:</span>
|
||||
<span class="n">session</span><span class="o">.</span><span class="n">sessionhandler</span><span class="o">.</span><span class="n">disconnect</span><span class="p">(</span><span class="n">session</span><span class="p">,</span> <span class="s2">"Goodbye! Logging off."</span><span class="p">)</span>
|
||||
<span class="k">return</span> <span class="s2">""</span><span class="p">,</span> <span class="p">{}</span></div>
|
||||
|
||||
|
||||
<span class="c1"># EvMenu helper function</span>
|
||||
|
||||
|
||||
<span class="k">def</span> <span class="nf">_node_formatter</span><span class="p">(</span><span class="n">nodetext</span><span class="p">,</span> <span class="n">optionstext</span><span class="p">,</span> <span class="n">caller</span><span class="o">=</span><span class="kc">None</span><span class="p">):</span>
|
||||
<span class="sd">"""Do not display the options, only the text.</span>
|
||||
|
||||
<span class="sd"> This function is used by EvMenu to format the text of nodes. The menu login</span>
|
||||
<span class="sd"> is just a series of prompts so we disable all automatic display decoration</span>
|
||||
<span class="sd"> and let the nodes handle everything on their own.</span>
|
||||
|
||||
<span class="sd"> """</span>
|
||||
<span class="k">return</span> <span class="n">nodetext</span>
|
||||
|
||||
|
||||
<span class="c1"># Commands and CmdSets</span>
|
||||
|
||||
|
||||
<div class="viewcode-block" id="UnloggedinCmdSet"><a class="viewcode-back" href="../../../api/evennia.contrib.menu_login.html#evennia.contrib.menu_login.UnloggedinCmdSet">[docs]</a><span class="k">class</span> <span class="nc">UnloggedinCmdSet</span><span class="p">(</span><span class="n">CmdSet</span><span class="p">):</span>
|
||||
<span class="s2">"Cmdset for the unloggedin state"</span>
|
||||
<span class="n">key</span> <span class="o">=</span> <span class="s2">"DefaultUnloggedin"</span>
|
||||
<span class="n">priority</span> <span class="o">=</span> <span class="mi">0</span>
|
||||
|
||||
<div class="viewcode-block" id="UnloggedinCmdSet.at_cmdset_creation"><a class="viewcode-back" href="../../../api/evennia.contrib.menu_login.html#evennia.contrib.menu_login.UnloggedinCmdSet.at_cmdset_creation">[docs]</a> <span class="k">def</span> <span class="nf">at_cmdset_creation</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
||||
<span class="s2">"Called when cmdset is first created."</span>
|
||||
<span class="bp">self</span><span class="o">.</span><span class="n">add</span><span class="p">(</span><span class="n">CmdUnloggedinLook</span><span class="p">())</span></div></div>
|
||||
|
||||
|
||||
<div class="viewcode-block" id="CmdUnloggedinLook"><a class="viewcode-back" href="../../../api/evennia.contrib.menu_login.html#evennia.contrib.menu_login.CmdUnloggedinLook">[docs]</a><span class="k">class</span> <span class="nc">CmdUnloggedinLook</span><span class="p">(</span><span class="n">Command</span><span class="p">):</span>
|
||||
<span class="sd">"""</span>
|
||||
<span class="sd"> An unloggedin version of the look command. This is called by the server</span>
|
||||
<span class="sd"> when the account first connects. It sets up the menu before handing off</span>
|
||||
<span class="sd"> to the menu's own look command.</span>
|
||||
|
||||
<span class="sd"> """</span>
|
||||
|
||||
<span class="n">key</span> <span class="o">=</span> <span class="n">syscmdkeys</span><span class="o">.</span><span class="n">CMD_LOGINSTART</span>
|
||||
<span class="n">locks</span> <span class="o">=</span> <span class="s2">"cmd:all()"</span>
|
||||
<span class="n">arg_regex</span> <span class="o">=</span> <span class="sa">r</span><span class="s2">"^$"</span>
|
||||
|
||||
<div class="viewcode-block" id="CmdUnloggedinLook.func"><a class="viewcode-back" href="../../../api/evennia.contrib.menu_login.html#evennia.contrib.menu_login.CmdUnloggedinLook.func">[docs]</a> <span class="k">def</span> <span class="nf">func</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
||||
<span class="sd">"""</span>
|
||||
<span class="sd"> Run the menu using the nodes in this module.</span>
|
||||
|
||||
<span class="sd"> """</span>
|
||||
<span class="n">EvMenu</span><span class="p">(</span>
|
||||
<span class="bp">self</span><span class="o">.</span><span class="n">caller</span><span class="p">,</span>
|
||||
<span class="s2">"evennia.contrib.menu_login"</span><span class="p">,</span>
|
||||
<span class="n">startnode</span><span class="o">=</span><span class="s2">"node_enter_username"</span><span class="p">,</span>
|
||||
<span class="n">auto_look</span><span class="o">=</span><span class="kc">False</span><span class="p">,</span>
|
||||
<span class="n">auto_quit</span><span class="o">=</span><span class="kc">False</span><span class="p">,</span>
|
||||
<span class="n">cmd_on_exit</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span>
|
||||
<span class="n">node_formatter</span><span class="o">=</span><span class="n">_node_formatter</span><span class="p">,</span>
|
||||
<span class="p">)</span></div></div>
|
||||
</pre></div>
|
||||
|
||||
<div class="clearer"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<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>
|
||||
<h3>Versions</h3>
|
||||
<ul>
|
||||
<li><a href="../../../../1.0-dev/index.html">1.0-dev (develop branch)</a></li>
|
||||
<li><a href="menu_login.html">0.9.5 (v0.9.5 branch)</a></li>
|
||||
</ul>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearer"></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="nav-item nav-item-0"><a href="../../../index.html">Evennia 0.9.5</a> »</li>
|
||||
<li class="nav-item nav-item-1"><a href="../../index.html" >Module code</a> »</li>
|
||||
<li class="nav-item nav-item-2"><a href="../../evennia.html" >evennia</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">evennia.contrib.menu_login</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="footer" role="contentinfo">
|
||||
© Copyright 2020, The Evennia developer community.
|
||||
Created using <a href="https://www.sphinx-doc.org/">Sphinx</a> 3.2.1.
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -72,7 +72,6 @@
|
|||
<span class="kn">from</span> <span class="nn">evennia.server.portal.portalsessionhandler</span> <span class="kn">import</span> <span class="n">PORTAL_SESSIONS</span>
|
||||
<span class="kn">from</span> <span class="nn">evennia.utils</span> <span class="kn">import</span> <span class="n">logger</span>
|
||||
<span class="kn">from</span> <span class="nn">evennia.server.webserver</span> <span class="kn">import</span> <span class="n">EvenniaReverseProxyResource</span>
|
||||
<span class="kn">from</span> <span class="nn">django.db</span> <span class="kn">import</span> <span class="n">connection</span>
|
||||
|
||||
|
||||
<span class="c1"># we don't need a connection to the database so close it right away</span>
|
||||
|
|
@ -472,7 +471,9 @@
|
|||
|
||||
<span class="k">for</span> <span class="n">plugin_module</span> <span class="ow">in</span> <span class="n">PORTAL_SERVICES_PLUGIN_MODULES</span><span class="p">:</span>
|
||||
<span class="c1"># external plugin services to start</span>
|
||||
<span class="n">plugin_module</span><span class="o">.</span><span class="n">start_plugin_services</span><span class="p">(</span><span class="n">PORTAL</span><span class="p">)</span>
|
||||
<span class="k">if</span> <span class="n">plugin_module</span><span class="p">:</span>
|
||||
<span class="n">plugin_module</span><span class="o">.</span><span class="n">start_plugin_services</span><span class="p">(</span><span class="n">PORTAL</span><span class="p">)</span>
|
||||
|
||||
</pre></div>
|
||||
|
||||
<div class="clearer"></div>
|
||||
|
|
|
|||
|
|
@ -67,6 +67,7 @@
|
|||
<span class="n">evennia</span><span class="o">.</span><span class="n">_init</span><span class="p">()</span>
|
||||
|
||||
<span class="kn">from</span> <span class="nn">django.db</span> <span class="kn">import</span> <span class="n">connection</span>
|
||||
<span class="kn">from</span> <span class="nn">django.db.utils</span> <span class="kn">import</span> <span class="n">OperationalError</span>
|
||||
<span class="kn">from</span> <span class="nn">django.conf</span> <span class="kn">import</span> <span class="n">settings</span>
|
||||
|
||||
<span class="kn">from</span> <span class="nn">evennia.accounts.models</span> <span class="kn">import</span> <span class="n">AccountDB</span>
|
||||
|
|
@ -246,7 +247,10 @@
|
|||
<span class="bp">self</span><span class="o">.</span><span class="n">start_time</span> <span class="o">=</span> <span class="n">time</span><span class="o">.</span><span class="n">time</span><span class="p">()</span>
|
||||
|
||||
<span class="c1"># initialize channelhandler</span>
|
||||
<span class="n">channelhandler</span><span class="o">.</span><span class="n">CHANNELHANDLER</span><span class="o">.</span><span class="n">update</span><span class="p">()</span>
|
||||
<span class="k">try</span><span class="p">:</span>
|
||||
<span class="n">channelhandler</span><span class="o">.</span><span class="n">CHANNELHANDLER</span><span class="o">.</span><span class="n">update</span><span class="p">()</span>
|
||||
<span class="k">except</span> <span class="n">OperationalError</span><span class="p">:</span>
|
||||
<span class="nb">print</span><span class="p">(</span><span class="s2">"channelhandler couldn't update - db not set up"</span><span class="p">)</span>
|
||||
|
||||
<span class="c1"># wrap the SIGINT handler to make sure we empty the threadpool</span>
|
||||
<span class="c1"># even when we reload and we have long-running requests in queue.</span>
|
||||
|
|
@ -657,7 +661,11 @@
|
|||
|
||||
|
||||
<span class="c1"># Tell the system the server is starting up; some things are not available yet</span>
|
||||
<span class="n">ServerConfig</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">conf</span><span class="p">(</span><span class="s2">"server_starting_mode"</span><span class="p">,</span> <span class="kc">True</span><span class="p">)</span>
|
||||
<span class="k">try</span><span class="p">:</span>
|
||||
<span class="n">ServerConfig</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">conf</span><span class="p">(</span><span class="s2">"server_starting_mode"</span><span class="p">,</span> <span class="kc">True</span><span class="p">)</span>
|
||||
<span class="k">except</span> <span class="n">OperationalError</span><span class="p">:</span>
|
||||
<span class="nb">print</span><span class="p">(</span><span class="s2">"Server server_starting_mode couldn't be set - database not set up."</span><span class="p">)</span>
|
||||
|
||||
|
||||
<span class="c1"># twistd requires us to define the variable 'application' so it knows</span>
|
||||
<span class="c1"># what to execute from.</span>
|
||||
|
|
@ -769,7 +777,10 @@
|
|||
<span class="nb">print</span><span class="p">(</span><span class="sa">f</span><span class="s2">"Could not load plugin module </span><span class="si">{</span><span class="n">plugin_module</span><span class="si">}</span><span class="s2">"</span><span class="p">)</span>
|
||||
|
||||
<span class="c1"># clear server startup mode</span>
|
||||
<span class="n">ServerConfig</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">conf</span><span class="p">(</span><span class="s2">"server_starting_mode"</span><span class="p">,</span> <span class="n">delete</span><span class="o">=</span><span class="kc">True</span><span class="p">)</span>
|
||||
<span class="k">try</span><span class="p">:</span>
|
||||
<span class="n">ServerConfig</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">conf</span><span class="p">(</span><span class="s2">"server_starting_mode"</span><span class="p">,</span> <span class="n">delete</span><span class="o">=</span><span class="kc">True</span><span class="p">)</span>
|
||||
<span class="k">except</span> <span class="n">OperationalError</span><span class="p">:</span>
|
||||
<span class="nb">print</span><span class="p">(</span><span class="s2">"Server server_starting_mode couldn't unset - db not set up."</span><span class="p">)</span>
|
||||
</pre></div>
|
||||
|
||||
<div class="clearer"></div>
|
||||
|
|
|
|||
|
|
@ -42,8 +42,8 @@
|
|||
<span></span><span class="sd">"""</span>
|
||||
<span class="sd">ANSI - Gives colour to text.</span>
|
||||
|
||||
<span class="sd">Use the codes defined in ANSIPARSER in your text</span>
|
||||
<span class="sd">to apply colour to text according to the ANSI standard.</span>
|
||||
<span class="sd">Use the codes defined in ANSIPARSER in your text to apply colour to text</span>
|
||||
<span class="sd">according to the ANSI standard.</span>
|
||||
|
||||
<span class="sd">Examples:</span>
|
||||
|
||||
|
|
@ -51,10 +51,9 @@
|
|||
<span class="sd">"This is |rRed text|n and this is normal again."</span>
|
||||
<span class="sd">```</span>
|
||||
|
||||
<span class="sd">Mostly you should not need to call `parse_ansi()` explicitly;</span>
|
||||
<span class="sd">it is run by Evennia just before returning data to/from the</span>
|
||||
<span class="sd">user. Depreciated example forms are available by extending</span>
|
||||
<span class="sd">the ansi mapping.</span>
|
||||
<span class="sd">Mostly you should not need to call `parse_ansi()` explicitly; it is run by</span>
|
||||
<span class="sd">Evennia just before returning data to/from the user. Depreciated example forms</span>
|
||||
<span class="sd">are available by extending the ansi mapping.</span>
|
||||
|
||||
<span class="sd">"""</span>
|
||||
<span class="kn">import</span> <span class="nn">functools</span>
|
||||
|
|
@ -122,11 +121,9 @@
|
|||
|
||||
<div class="viewcode-block" id="ANSIParser"><a class="viewcode-back" href="../../../api/evennia.utils.ansi.html#evennia.utils.ansi.ANSIParser">[docs]</a><span class="k">class</span> <span class="nc">ANSIParser</span><span class="p">(</span><span class="nb">object</span><span class="p">):</span>
|
||||
<span class="sd">"""</span>
|
||||
<span class="sd"> A class that parses ANSI markup</span>
|
||||
<span class="sd"> to ANSI command sequences</span>
|
||||
<span class="sd"> A class that parses ANSI markup to ANSI command sequences.</span>
|
||||
|
||||
<span class="sd"> We also allow to escape colour codes</span>
|
||||
<span class="sd"> by prepending with an extra |.</span>
|
||||
<span class="sd"> We also allow to escape colour codes by prepending with an extra `|`.</span>
|
||||
|
||||
<span class="sd"> """</span>
|
||||
|
||||
|
|
|
|||
|
|
@ -137,16 +137,16 @@
|
|||
<span class="sd"> location itself or during unittests.</span>
|
||||
<span class="sd"> attributes (list): Tuples on the form (key, value) or (key, value, category),</span>
|
||||
<span class="sd"> (key, value, lockstring) or (key, value, lockstring, default_access).</span>
|
||||
<span class="sd"> to set as Attributes on the new object.</span>
|
||||
<span class="sd"> to set as Attributes on the new object.</span>
|
||||
<span class="sd"> nattributes (list): Non-persistent tuples on the form (key, value). Note that</span>
|
||||
<span class="sd"> adding this rarely makes sense since this data will not survive a reload.</span>
|
||||
<span class="sd"> adding this rarely makes sense since this data will not survive a reload.</span>
|
||||
|
||||
<span class="sd"> Returns:</span>
|
||||
<span class="sd"> object (Object): A newly created object of the given typeclass.</span>
|
||||
|
||||
<span class="sd"> Raises:</span>
|
||||
<span class="sd"> ObjectDB.DoesNotExist: If trying to create an Object with</span>
|
||||
<span class="sd"> `location` or `home` that can't be found.</span>
|
||||
<span class="sd"> `location` or `home` that can't be found.</span>
|
||||
|
||||
<span class="sd"> """</span>
|
||||
<span class="k">global</span> <span class="n">_ObjectDB</span>
|
||||
|
|
|
|||
|
|
@ -51,6 +51,7 @@
|
|||
<span class="kn">from</span> <span class="nn">calendar</span> <span class="kn">import</span> <span class="n">monthrange</span>
|
||||
<span class="kn">from</span> <span class="nn">datetime</span> <span class="kn">import</span> <span class="n">datetime</span><span class="p">,</span> <span class="n">timedelta</span>
|
||||
|
||||
<span class="kn">from</span> <span class="nn">django.db.utils</span> <span class="kn">import</span> <span class="n">OperationalError</span>
|
||||
<span class="kn">from</span> <span class="nn">django.conf</span> <span class="kn">import</span> <span class="n">settings</span>
|
||||
<span class="kn">from</span> <span class="nn">evennia</span> <span class="kn">import</span> <span class="n">DefaultScript</span>
|
||||
<span class="kn">from</span> <span class="nn">evennia.server.models</span> <span class="kn">import</span> <span class="n">ServerConfig</span>
|
||||
|
|
@ -64,7 +65,11 @@
|
|||
|
||||
|
||||
<span class="c1"># Only set if gametime_reset was called at some point.</span>
|
||||
<span class="n">GAME_TIME_OFFSET</span> <span class="o">=</span> <span class="n">ServerConfig</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">conf</span><span class="p">(</span><span class="s2">"gametime_offset"</span><span class="p">,</span> <span class="n">default</span><span class="o">=</span><span class="mi">0</span><span class="p">)</span>
|
||||
<span class="k">try</span><span class="p">:</span>
|
||||
<span class="n">GAME_TIME_OFFSET</span> <span class="o">=</span> <span class="n">ServerConfig</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">conf</span><span class="p">(</span><span class="s2">"gametime_offset"</span><span class="p">,</span> <span class="n">default</span><span class="o">=</span><span class="mi">0</span><span class="p">)</span>
|
||||
<span class="k">except</span> <span class="n">OperationalError</span><span class="p">:</span>
|
||||
<span class="nb">print</span><span class="p">(</span><span class="s2">"Gametime offset could not load - db not set up."</span><span class="p">)</span>
|
||||
<span class="n">GAME_TIME_OFFSET</span> <span class="o">=</span> <span class="mi">0</span>
|
||||
|
||||
<span class="c1"># Common real-life time measure, in seconds.</span>
|
||||
<span class="c1"># You should not change this.</span>
|
||||
|
|
|
|||
|
|
@ -67,6 +67,7 @@
|
|||
|
||||
<span class="c1"># Import the manager methods to be wrapped</span>
|
||||
|
||||
<span class="kn">from</span> <span class="nn">django.db.utils</span> <span class="kn">import</span> <span class="n">OperationalError</span>
|
||||
<span class="kn">from</span> <span class="nn">django.contrib.contenttypes.models</span> <span class="kn">import</span> <span class="n">ContentType</span>
|
||||
|
||||
<span class="c1"># limit symbol import from API</span>
|
||||
|
|
@ -84,14 +85,23 @@
|
|||
|
||||
|
||||
<span class="c1"># import objects this way to avoid circular import problems</span>
|
||||
<span class="n">ObjectDB</span> <span class="o">=</span> <span class="n">ContentType</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="n">app_label</span><span class="o">=</span><span class="s2">"objects"</span><span class="p">,</span> <span class="n">model</span><span class="o">=</span><span class="s2">"objectdb"</span><span class="p">)</span><span class="o">.</span><span class="n">model_class</span><span class="p">()</span>
|
||||
<span class="n">AccountDB</span> <span class="o">=</span> <span class="n">ContentType</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="n">app_label</span><span class="o">=</span><span class="s2">"accounts"</span><span class="p">,</span> <span class="n">model</span><span class="o">=</span><span class="s2">"accountdb"</span><span class="p">)</span><span class="o">.</span><span class="n">model_class</span><span class="p">()</span>
|
||||
<span class="n">ScriptDB</span> <span class="o">=</span> <span class="n">ContentType</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="n">app_label</span><span class="o">=</span><span class="s2">"scripts"</span><span class="p">,</span> <span class="n">model</span><span class="o">=</span><span class="s2">"scriptdb"</span><span class="p">)</span><span class="o">.</span><span class="n">model_class</span><span class="p">()</span>
|
||||
<span class="n">Msg</span> <span class="o">=</span> <span class="n">ContentType</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="n">app_label</span><span class="o">=</span><span class="s2">"comms"</span><span class="p">,</span> <span class="n">model</span><span class="o">=</span><span class="s2">"msg"</span><span class="p">)</span><span class="o">.</span><span class="n">model_class</span><span class="p">()</span>
|
||||
<span class="n">Channel</span> <span class="o">=</span> <span class="n">ContentType</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="n">app_label</span><span class="o">=</span><span class="s2">"comms"</span><span class="p">,</span> <span class="n">model</span><span class="o">=</span><span class="s2">"channeldb"</span><span class="p">)</span><span class="o">.</span><span class="n">model_class</span><span class="p">()</span>
|
||||
<span class="n">HelpEntry</span> <span class="o">=</span> <span class="n">ContentType</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="n">app_label</span><span class="o">=</span><span class="s2">"help"</span><span class="p">,</span> <span class="n">model</span><span class="o">=</span><span class="s2">"helpentry"</span><span class="p">)</span><span class="o">.</span><span class="n">model_class</span><span class="p">()</span>
|
||||
<span class="n">Tag</span> <span class="o">=</span> <span class="n">ContentType</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="n">app_label</span><span class="o">=</span><span class="s2">"typeclasses"</span><span class="p">,</span> <span class="n">model</span><span class="o">=</span><span class="s2">"tag"</span><span class="p">)</span><span class="o">.</span><span class="n">model_class</span><span class="p">()</span>
|
||||
|
||||
<span class="k">try</span><span class="p">:</span>
|
||||
<span class="n">ObjectDB</span> <span class="o">=</span> <span class="n">ContentType</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="n">app_label</span><span class="o">=</span><span class="s2">"objects"</span><span class="p">,</span> <span class="n">model</span><span class="o">=</span><span class="s2">"objectdb"</span><span class="p">)</span><span class="o">.</span><span class="n">model_class</span><span class="p">()</span>
|
||||
<span class="n">AccountDB</span> <span class="o">=</span> <span class="n">ContentType</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="n">app_label</span><span class="o">=</span><span class="s2">"accounts"</span><span class="p">,</span> <span class="n">model</span><span class="o">=</span><span class="s2">"accountdb"</span><span class="p">)</span><span class="o">.</span><span class="n">model_class</span><span class="p">()</span>
|
||||
<span class="n">ScriptDB</span> <span class="o">=</span> <span class="n">ContentType</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="n">app_label</span><span class="o">=</span><span class="s2">"scripts"</span><span class="p">,</span> <span class="n">model</span><span class="o">=</span><span class="s2">"scriptdb"</span><span class="p">)</span><span class="o">.</span><span class="n">model_class</span><span class="p">()</span>
|
||||
<span class="n">Msg</span> <span class="o">=</span> <span class="n">ContentType</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="n">app_label</span><span class="o">=</span><span class="s2">"comms"</span><span class="p">,</span> <span class="n">model</span><span class="o">=</span><span class="s2">"msg"</span><span class="p">)</span><span class="o">.</span><span class="n">model_class</span><span class="p">()</span>
|
||||
<span class="n">ChannelDB</span> <span class="o">=</span> <span class="n">ContentType</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="n">app_label</span><span class="o">=</span><span class="s2">"comms"</span><span class="p">,</span> <span class="n">model</span><span class="o">=</span><span class="s2">"channeldb"</span><span class="p">)</span><span class="o">.</span><span class="n">model_class</span><span class="p">()</span>
|
||||
<span class="n">HelpEntry</span> <span class="o">=</span> <span class="n">ContentType</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="n">app_label</span><span class="o">=</span><span class="s2">"help"</span><span class="p">,</span> <span class="n">model</span><span class="o">=</span><span class="s2">"helpentry"</span><span class="p">)</span><span class="o">.</span><span class="n">model_class</span><span class="p">()</span>
|
||||
<span class="n">Tag</span> <span class="o">=</span> <span class="n">ContentType</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="n">app_label</span><span class="o">=</span><span class="s2">"typeclasses"</span><span class="p">,</span> <span class="n">model</span><span class="o">=</span><span class="s2">"tag"</span><span class="p">)</span><span class="o">.</span><span class="n">model_class</span><span class="p">()</span>
|
||||
<span class="k">except</span> <span class="n">OperationalError</span><span class="p">:</span>
|
||||
<span class="c1"># this is a fallback used during tests/doc building</span>
|
||||
<span class="nb">print</span><span class="p">(</span><span class="s2">"Couldn't initialize search managers - db not set up."</span><span class="p">)</span>
|
||||
<span class="kn">from</span> <span class="nn">evennia.objects.models</span> <span class="kn">import</span> <span class="n">ObjectDB</span>
|
||||
<span class="kn">from</span> <span class="nn">evennia.accounts.models</span> <span class="kn">import</span> <span class="n">AccountDB</span>
|
||||
<span class="kn">from</span> <span class="nn">evennia.scripts.models</span> <span class="kn">import</span> <span class="n">ScriptDB</span>
|
||||
<span class="kn">from</span> <span class="nn">evennia.comms.models</span> <span class="kn">import</span> <span class="n">Msg</span><span class="p">,</span> <span class="n">ChannelDB</span>
|
||||
<span class="kn">from</span> <span class="nn">evennia.help.models</span> <span class="kn">import</span> <span class="n">HelpEntry</span>
|
||||
<span class="kn">from</span> <span class="nn">evennia.typeclasses.tags</span> <span class="kn">import</span> <span class="n">Tag</span>
|
||||
|
||||
<span class="c1"># -------------------------------------------------------------------</span>
|
||||
<span class="c1"># Search manager-wrappers</span>
|
||||
|
|
@ -211,7 +221,7 @@
|
|||
<span class="c1"># exact - requires an exact ostring match (not case sensitive)</span>
|
||||
<span class="c1">#</span>
|
||||
|
||||
<span class="n">search_channel</span> <span class="o">=</span> <span class="n">Channel</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">channel_search</span>
|
||||
<span class="n">search_channel</span> <span class="o">=</span> <span class="n">ChannelDB</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">channel_search</span>
|
||||
<span class="n">search_channels</span> <span class="o">=</span> <span class="n">search_channel</span>
|
||||
<span class="n">channel_search</span> <span class="o">=</span> <span class="n">search_channel</span>
|
||||
<span class="n">channels</span> <span class="o">=</span> <span class="n">search_channels</span>
|
||||
|
|
@ -272,7 +282,7 @@
|
|||
<span class="k">def</span> <span class="nf">search_channel_attribute</span><span class="p">(</span>
|
||||
<span class="n">key</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="n">category</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="n">value</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="n">strvalue</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="n">attrtype</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span>
|
||||
<span class="p">):</span>
|
||||
<span class="k">return</span> <span class="n">Channel</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">get_by_attribute</span><span class="p">(</span>
|
||||
<span class="k">return</span> <span class="n">ChannelDB</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">get_by_attribute</span><span class="p">(</span>
|
||||
<span class="n">key</span><span class="o">=</span><span class="n">key</span><span class="p">,</span> <span class="n">category</span><span class="o">=</span><span class="n">category</span><span class="p">,</span> <span class="n">value</span><span class="o">=</span><span class="n">value</span><span class="p">,</span> <span class="n">strvalue</span><span class="o">=</span><span class="n">strvalue</span><span class="p">,</span> <span class="n">attrtype</span><span class="o">=</span><span class="n">attrtype</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span>
|
||||
<span class="p">)</span>
|
||||
|
||||
|
|
@ -387,7 +397,7 @@
|
|||
<span class="sd"> matches were found.</span>
|
||||
|
||||
<span class="sd"> """</span>
|
||||
<span class="k">return</span> <span class="n">Channel</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">get_by_tag</span><span class="p">(</span><span class="n">key</span><span class="o">=</span><span class="n">key</span><span class="p">,</span> <span class="n">category</span><span class="o">=</span><span class="n">category</span><span class="p">,</span> <span class="n">tagtype</span><span class="o">=</span><span class="n">tagtype</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">)</span></div>
|
||||
<span class="k">return</span> <span class="n">ChannelDB</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">get_by_tag</span><span class="p">(</span><span class="n">key</span><span class="o">=</span><span class="n">key</span><span class="p">,</span> <span class="n">category</span><span class="o">=</span><span class="n">category</span><span class="p">,</span> <span class="n">tagtype</span><span class="o">=</span><span class="n">tagtype</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">)</span></div>
|
||||
|
||||
|
||||
<span class="c1"># search for tag objects (not the objects they are attached to</span>
|
||||
|
|
|
|||
|
|
@ -1363,6 +1363,9 @@
|
|||
|
||||
<span class="n">mod</span> <span class="o">=</span> <span class="n">mod_import</span><span class="p">(</span><span class="n">module</span><span class="p">)</span>
|
||||
|
||||
<span class="k">if</span> <span class="ow">not</span> <span class="n">mod</span><span class="p">:</span>
|
||||
<span class="k">return</span> <span class="n">default</span>
|
||||
|
||||
<span class="k">if</span> <span class="n">variable</span><span class="p">:</span>
|
||||
<span class="n">result</span> <span class="o">=</span> <span class="p">[]</span>
|
||||
<span class="k">for</span> <span class="n">var</span> <span class="ow">in</span> <span class="n">make_iter</span><span class="p">(</span><span class="n">variable</span><span class="p">):</span>
|
||||
|
|
@ -1454,7 +1457,7 @@
|
|||
<span class="k">return</span> <span class="n">default</span></div>
|
||||
|
||||
|
||||
<div class="viewcode-block" id="class_from_module"><a class="viewcode-back" href="../../../api/evennia.utils.utils.html#evennia.utils.utils.class_from_module">[docs]</a><span class="k">def</span> <span class="nf">class_from_module</span><span class="p">(</span><span class="n">path</span><span class="p">,</span> <span class="n">defaultpaths</span><span class="o">=</span><span class="kc">None</span><span class="p">):</span>
|
||||
<div class="viewcode-block" id="class_from_module"><a class="viewcode-back" href="../../../api/evennia.utils.utils.html#evennia.utils.utils.class_from_module">[docs]</a><span class="k">def</span> <span class="nf">class_from_module</span><span class="p">(</span><span class="n">path</span><span class="p">,</span> <span class="n">defaultpaths</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="n">fallback</span><span class="o">=</span><span class="kc">None</span><span class="p">):</span>
|
||||
<span class="sd">"""</span>
|
||||
<span class="sd"> Return a class from a module, given the module's path. This is</span>
|
||||
<span class="sd"> primarily used to convert db_typeclass_path:s to classes.</span>
|
||||
|
|
@ -1463,6 +1466,10 @@
|
|||
<span class="sd"> path (str): Full Python dot-path to module.</span>
|
||||
<span class="sd"> defaultpaths (iterable, optional): If a direct import from `path` fails,</span>
|
||||
<span class="sd"> try subsequent imports by prepending those paths to `path`.</span>
|
||||
<span class="sd"> fallback (str): If all other attempts fail, use this path as a fallback.</span>
|
||||
<span class="sd"> This is intended as a last-resport. In the example of Evennia</span>
|
||||
<span class="sd"> loading, this would be a path to a default parent class in the</span>
|
||||
<span class="sd"> evennia repo itself.</span>
|
||||
|
||||
<span class="sd"> Returns:</span>
|
||||
<span class="sd"> class (Class): An uninstatiated class recovered from path.</span>
|
||||
|
|
@ -1516,7 +1523,13 @@
|
|||
<span class="n">err</span> <span class="o">+=</span> <span class="s2">"</span><span class="se">\n</span><span class="s2">Paths searched:</span><span class="se">\n</span><span class="s2"> </span><span class="si">%s</span><span class="s2">"</span> <span class="o">%</span> <span class="s2">"</span><span class="se">\n</span><span class="s2"> "</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="n">paths</span><span class="p">)</span>
|
||||
<span class="k">else</span><span class="p">:</span>
|
||||
<span class="n">err</span> <span class="o">+=</span> <span class="s2">"."</span>
|
||||
<span class="k">raise</span> <span class="ne">ImportError</span><span class="p">(</span><span class="n">err</span><span class="p">)</span>
|
||||
<span class="n">logger</span><span class="o">.</span><span class="n">log_err</span><span class="p">(</span><span class="n">err</span><span class="p">)</span>
|
||||
<span class="k">if</span> <span class="n">fallback</span><span class="p">:</span>
|
||||
<span class="n">logger</span><span class="o">.</span><span class="n">log_warn</span><span class="p">(</span><span class="sa">f</span><span class="s2">"Falling back to </span><span class="si">{</span><span class="n">fallback</span><span class="si">}</span><span class="s2">."</span><span class="p">)</span>
|
||||
<span class="k">return</span> <span class="n">class_from_module</span><span class="p">(</span><span class="n">fallback</span><span class="p">)</span>
|
||||
<span class="k">else</span><span class="p">:</span>
|
||||
<span class="c1"># even fallback fails</span>
|
||||
<span class="k">raise</span> <span class="ne">ImportError</span><span class="p">(</span><span class="n">err</span><span class="p">)</span>
|
||||
<span class="k">return</span> <span class="bp">cls</span></div>
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -93,7 +93,8 @@
|
|||
<span class="sd"> """</span>
|
||||
|
||||
<span class="c1"># The model/typeclass this form creates</span>
|
||||
<span class="n">model</span> <span class="o">=</span> <span class="n">class_from_module</span><span class="p">(</span><span class="n">settings</span><span class="o">.</span><span class="n">BASE_ACCOUNT_TYPECLASS</span><span class="p">)</span>
|
||||
<span class="n">model</span> <span class="o">=</span> <span class="n">class_from_module</span><span class="p">(</span><span class="n">settings</span><span class="o">.</span><span class="n">BASE_ACCOUNT_TYPECLASS</span><span class="p">,</span>
|
||||
<span class="n">fallback</span><span class="o">=</span><span class="n">settings</span><span class="o">.</span><span class="n">FALLBACK_ACCOUNT_TYPECLASS</span><span class="p">)</span>
|
||||
|
||||
<span class="c1"># The fields to display on the form, in the given order</span>
|
||||
<span class="n">fields</span> <span class="o">=</span> <span class="p">(</span><span class="s2">"username"</span><span class="p">,</span> <span class="s2">"email"</span><span class="p">)</span>
|
||||
|
|
@ -128,7 +129,8 @@
|
|||
<span class="sd"> """</span>
|
||||
|
||||
<span class="c1"># The model/typeclass this form creates</span>
|
||||
<span class="n">model</span> <span class="o">=</span> <span class="n">class_from_module</span><span class="p">(</span><span class="n">settings</span><span class="o">.</span><span class="n">BASE_OBJECT_TYPECLASS</span><span class="p">)</span>
|
||||
<span class="n">model</span> <span class="o">=</span> <span class="n">class_from_module</span><span class="p">(</span><span class="n">settings</span><span class="o">.</span><span class="n">BASE_OBJECT_TYPECLASS</span><span class="p">,</span>
|
||||
<span class="n">fallback</span><span class="o">=</span><span class="n">settings</span><span class="o">.</span><span class="n">FALLBACK_OBJECT_TYPECLASS</span><span class="p">)</span>
|
||||
|
||||
<span class="c1"># The fields to display on the form, in the given order</span>
|
||||
<span class="n">fields</span> <span class="o">=</span> <span class="p">(</span><span class="s2">"db_key"</span><span class="p">,)</span>
|
||||
|
|
@ -181,7 +183,8 @@
|
|||
<span class="sd"> """</span>
|
||||
|
||||
<span class="c1"># Get the correct object model</span>
|
||||
<span class="n">model</span> <span class="o">=</span> <span class="n">class_from_module</span><span class="p">(</span><span class="n">settings</span><span class="o">.</span><span class="n">BASE_CHARACTER_TYPECLASS</span><span class="p">)</span>
|
||||
<span class="n">model</span> <span class="o">=</span> <span class="n">class_from_module</span><span class="p">(</span><span class="n">settings</span><span class="o">.</span><span class="n">BASE_CHARACTER_TYPECLASS</span><span class="p">,</span>
|
||||
<span class="n">fallback</span><span class="o">=</span><span class="n">settings</span><span class="o">.</span><span class="n">FALLBACK_CHARACTER_TYPECLASS</span><span class="p">)</span>
|
||||
|
||||
<span class="c1"># Allow entry of the 'key' field</span>
|
||||
<span class="n">fields</span> <span class="o">=</span> <span class="p">(</span><span class="s2">"db_key"</span><span class="p">,)</span>
|
||||
|
|
|
|||
|
|
@ -166,7 +166,8 @@
|
|||
<div class="viewcode-block" id="ChannelDetailTest.setUp"><a class="viewcode-back" href="../../../../api/evennia.web.website.tests.html#evennia.web.website.tests.ChannelDetailTest.setUp">[docs]</a> <span class="k">def</span> <span class="nf">setUp</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
||||
<span class="nb">super</span><span class="p">(</span><span class="n">ChannelDetailTest</span><span class="p">,</span> <span class="bp">self</span><span class="p">)</span><span class="o">.</span><span class="n">setUp</span><span class="p">()</span>
|
||||
|
||||
<span class="n">klass</span> <span class="o">=</span> <span class="n">class_from_module</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">channel_typeclass</span><span class="p">)</span>
|
||||
<span class="n">klass</span> <span class="o">=</span> <span class="n">class_from_module</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">channel_typeclass</span><span class="p">,</span>
|
||||
<span class="n">fallback</span><span class="o">=</span><span class="n">settings</span><span class="o">.</span><span class="n">FALLBACK_CHANNEL_TYPECLASS</span><span class="p">)</span>
|
||||
|
||||
<span class="c1"># Create a channel</span>
|
||||
<span class="n">klass</span><span class="o">.</span><span class="n">create</span><span class="p">(</span><span class="s2">"demo"</span><span class="p">)</span></div>
|
||||
|
|
|
|||
|
|
@ -73,6 +73,7 @@
|
|||
|
||||
<span class="n">_BASE_CHAR_TYPECLASS</span> <span class="o">=</span> <span class="n">settings</span><span class="o">.</span><span class="n">BASE_CHARACTER_TYPECLASS</span>
|
||||
|
||||
<span class="c1"># typeclass fallbacks</span>
|
||||
|
||||
<span class="k">def</span> <span class="nf">_gamestats</span><span class="p">():</span>
|
||||
<span class="c1"># Some misc. configurable stuff.</span>
|
||||
|
|
@ -89,11 +90,14 @@
|
|||
|
||||
<span class="n">nobjs</span> <span class="o">=</span> <span class="n">ObjectDB</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">count</span><span class="p">()</span>
|
||||
<span class="n">nobjs</span> <span class="o">=</span> <span class="n">nobjs</span> <span class="ow">or</span> <span class="mi">1</span> <span class="c1"># fix zero-div error with empty database</span>
|
||||
<span class="n">Character</span> <span class="o">=</span> <span class="n">class_from_module</span><span class="p">(</span><span class="n">settings</span><span class="o">.</span><span class="n">BASE_CHARACTER_TYPECLASS</span><span class="p">)</span>
|
||||
<span class="n">Character</span> <span class="o">=</span> <span class="n">class_from_module</span><span class="p">(</span><span class="n">settings</span><span class="o">.</span><span class="n">BASE_CHARACTER_TYPECLASS</span><span class="p">,</span>
|
||||
<span class="n">fallback</span><span class="o">=</span><span class="n">settings</span><span class="o">.</span><span class="n">FALLBACK_CHARACTER_TYPECLASS</span><span class="p">)</span>
|
||||
<span class="n">nchars</span> <span class="o">=</span> <span class="n">Character</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">all_family</span><span class="p">()</span><span class="o">.</span><span class="n">count</span><span class="p">()</span>
|
||||
<span class="n">Room</span> <span class="o">=</span> <span class="n">class_from_module</span><span class="p">(</span><span class="n">settings</span><span class="o">.</span><span class="n">BASE_ROOM_TYPECLASS</span><span class="p">)</span>
|
||||
<span class="n">Room</span> <span class="o">=</span> <span class="n">class_from_module</span><span class="p">(</span><span class="n">settings</span><span class="o">.</span><span class="n">BASE_ROOM_TYPECLASS</span><span class="p">,</span>
|
||||
<span class="n">fallback</span><span class="o">=</span><span class="n">settings</span><span class="o">.</span><span class="n">FALLBACK_ROOM_TYPECLASS</span><span class="p">)</span>
|
||||
<span class="n">nrooms</span> <span class="o">=</span> <span class="n">Room</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">all_family</span><span class="p">()</span><span class="o">.</span><span class="n">count</span><span class="p">()</span>
|
||||
<span class="n">Exit</span> <span class="o">=</span> <span class="n">class_from_module</span><span class="p">(</span><span class="n">settings</span><span class="o">.</span><span class="n">BASE_EXIT_TYPECLASS</span><span class="p">)</span>
|
||||
<span class="n">Exit</span> <span class="o">=</span> <span class="n">class_from_module</span><span class="p">(</span><span class="n">settings</span><span class="o">.</span><span class="n">BASE_EXIT_TYPECLASS</span><span class="p">,</span>
|
||||
<span class="n">fallback</span><span class="o">=</span><span class="n">settings</span><span class="o">.</span><span class="n">FALLBACK_EXIT_TYPECLASS</span><span class="p">)</span>
|
||||
<span class="n">nexits</span> <span class="o">=</span> <span class="n">Exit</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">all_family</span><span class="p">()</span><span class="o">.</span><span class="n">count</span><span class="p">()</span>
|
||||
<span class="n">nothers</span> <span class="o">=</span> <span class="n">nobjs</span> <span class="o">-</span> <span class="n">nchars</span> <span class="o">-</span> <span class="n">nrooms</span> <span class="o">-</span> <span class="n">nexits</span>
|
||||
|
||||
|
|
@ -310,7 +314,8 @@
|
|||
<span class="c1">#</span>
|
||||
<span class="c1"># So when you extend it, this line should look simple, like:</span>
|
||||
<span class="c1"># model = Object</span>
|
||||
<span class="n">model</span> <span class="o">=</span> <span class="n">class_from_module</span><span class="p">(</span><span class="n">settings</span><span class="o">.</span><span class="n">BASE_OBJECT_TYPECLASS</span><span class="p">)</span>
|
||||
<span class="n">model</span> <span class="o">=</span> <span class="n">class_from_module</span><span class="p">(</span><span class="n">settings</span><span class="o">.</span><span class="n">BASE_OBJECT_TYPECLASS</span><span class="p">,</span>
|
||||
<span class="n">fallback</span><span class="o">=</span><span class="n">settings</span><span class="o">.</span><span class="n">FALLBACK_OBJECT_TYPECLASS</span><span class="p">)</span>
|
||||
|
||||
<span class="c1"># What HTML template you wish to use to display this page.</span>
|
||||
<span class="n">template_name</span> <span class="o">=</span> <span class="s2">"website/object_detail.html"</span>
|
||||
|
|
@ -413,7 +418,8 @@
|
|||
|
||||
<span class="sd"> """</span>
|
||||
|
||||
<span class="n">model</span> <span class="o">=</span> <span class="n">class_from_module</span><span class="p">(</span><span class="n">settings</span><span class="o">.</span><span class="n">BASE_OBJECT_TYPECLASS</span><span class="p">)</span></div>
|
||||
<span class="n">model</span> <span class="o">=</span> <span class="n">class_from_module</span><span class="p">(</span><span class="n">settings</span><span class="o">.</span><span class="n">BASE_OBJECT_TYPECLASS</span><span class="p">,</span>
|
||||
<span class="n">fallback</span><span class="o">=</span><span class="n">settings</span><span class="o">.</span><span class="n">FALLBACK_OBJECT_TYPECLASS</span><span class="p">)</span></div>
|
||||
|
||||
|
||||
<div class="viewcode-block" id="ObjectDeleteView"><a class="viewcode-back" href="../../../../api/evennia.web.website.views.html#evennia.web.website.views.ObjectDeleteView">[docs]</a><span class="k">class</span> <span class="nc">ObjectDeleteView</span><span class="p">(</span><span class="n">LoginRequiredMixin</span><span class="p">,</span> <span class="n">ObjectDetailView</span><span class="p">,</span> <span class="n">EvenniaDeleteView</span><span class="p">):</span>
|
||||
|
|
@ -428,7 +434,8 @@
|
|||
<span class="sd"> """</span>
|
||||
|
||||
<span class="c1"># -- Django constructs --</span>
|
||||
<span class="n">model</span> <span class="o">=</span> <span class="n">class_from_module</span><span class="p">(</span><span class="n">settings</span><span class="o">.</span><span class="n">BASE_OBJECT_TYPECLASS</span><span class="p">)</span>
|
||||
<span class="n">model</span> <span class="o">=</span> <span class="n">class_from_module</span><span class="p">(</span><span class="n">settings</span><span class="o">.</span><span class="n">BASE_OBJECT_TYPECLASS</span><span class="p">,</span>
|
||||
<span class="n">fallback</span><span class="o">=</span><span class="n">settings</span><span class="o">.</span><span class="n">FALLBACK_OBJECT_TYPECLASS</span><span class="p">)</span>
|
||||
<span class="n">template_name</span> <span class="o">=</span> <span class="s2">"website/object_confirm_delete.html"</span>
|
||||
|
||||
<span class="c1"># -- Evennia constructs --</span>
|
||||
|
|
@ -471,7 +478,8 @@
|
|||
<span class="sd"> """</span>
|
||||
|
||||
<span class="c1"># -- Django constructs --</span>
|
||||
<span class="n">model</span> <span class="o">=</span> <span class="n">class_from_module</span><span class="p">(</span><span class="n">settings</span><span class="o">.</span><span class="n">BASE_OBJECT_TYPECLASS</span><span class="p">)</span>
|
||||
<span class="n">model</span> <span class="o">=</span> <span class="n">class_from_module</span><span class="p">(</span><span class="n">settings</span><span class="o">.</span><span class="n">BASE_OBJECT_TYPECLASS</span><span class="p">,</span>
|
||||
<span class="n">fallback</span><span class="o">=</span><span class="n">settings</span><span class="o">.</span><span class="n">FALLBACK_OBJECT_TYPECLASS</span><span class="p">)</span>
|
||||
|
||||
<span class="c1"># -- Evennia constructs --</span>
|
||||
<span class="n">access_type</span> <span class="o">=</span> <span class="s2">"edit"</span>
|
||||
|
|
@ -554,7 +562,8 @@
|
|||
<span class="sd"> """</span>
|
||||
|
||||
<span class="c1"># -- Django constructs --</span>
|
||||
<span class="n">model</span> <span class="o">=</span> <span class="n">class_from_module</span><span class="p">(</span><span class="n">settings</span><span class="o">.</span><span class="n">BASE_ACCOUNT_TYPECLASS</span><span class="p">)</span>
|
||||
<span class="n">model</span> <span class="o">=</span> <span class="n">class_from_module</span><span class="p">(</span><span class="n">settings</span><span class="o">.</span><span class="n">BASE_ACCOUNT_TYPECLASS</span><span class="p">,</span>
|
||||
<span class="n">fallback</span><span class="o">=</span><span class="n">settings</span><span class="o">.</span><span class="n">FALLBACK_ACCOUNT_TYPECLASS</span><span class="p">)</span>
|
||||
<span class="n">form_class</span> <span class="o">=</span> <span class="n">website_forms</span><span class="o">.</span><span class="n">AccountForm</span></div>
|
||||
|
||||
|
||||
|
|
@ -619,7 +628,8 @@
|
|||
<span class="sd"> """</span>
|
||||
|
||||
<span class="c1"># -- Django constructs --</span>
|
||||
<span class="n">model</span> <span class="o">=</span> <span class="n">class_from_module</span><span class="p">(</span><span class="n">settings</span><span class="o">.</span><span class="n">BASE_CHARACTER_TYPECLASS</span><span class="p">)</span>
|
||||
<span class="n">model</span> <span class="o">=</span> <span class="n">class_from_module</span><span class="p">(</span><span class="n">settings</span><span class="o">.</span><span class="n">BASE_CHARACTER_TYPECLASS</span><span class="p">,</span>
|
||||
<span class="n">fallback</span><span class="o">=</span><span class="n">settings</span><span class="o">.</span><span class="n">FALLBACK_CHARACTER_TYPECLASS</span><span class="p">)</span>
|
||||
<span class="n">form_class</span> <span class="o">=</span> <span class="n">website_forms</span><span class="o">.</span><span class="n">CharacterForm</span>
|
||||
<span class="n">success_url</span> <span class="o">=</span> <span class="n">reverse_lazy</span><span class="p">(</span><span class="s2">"character-manage"</span><span class="p">)</span>
|
||||
|
||||
|
|
@ -858,7 +868,8 @@
|
|||
<span class="sd"> """</span>
|
||||
|
||||
<span class="c1"># -- Django constructs --</span>
|
||||
<span class="n">model</span> <span class="o">=</span> <span class="n">class_from_module</span><span class="p">(</span><span class="n">settings</span><span class="o">.</span><span class="n">BASE_CHANNEL_TYPECLASS</span><span class="p">)</span>
|
||||
<span class="n">model</span> <span class="o">=</span> <span class="n">class_from_module</span><span class="p">(</span><span class="n">settings</span><span class="o">.</span><span class="n">BASE_CHANNEL_TYPECLASS</span><span class="p">,</span>
|
||||
<span class="n">fallback</span><span class="o">=</span><span class="n">settings</span><span class="o">.</span><span class="n">FALLBACK_CHANNEL_TYPECLASS</span><span class="p">)</span>
|
||||
|
||||
<span class="c1"># -- Evennia constructs --</span>
|
||||
<span class="n">page_title</span> <span class="o">=</span> <span class="s2">"Channels"</span>
|
||||
|
|
|
|||
|
|
@ -90,11 +90,8 @@
|
|||
<li><a href="evennia/contrib/ingame_python/eventfuncs.html">evennia.contrib.ingame_python.eventfuncs</a></li>
|
||||
<li><a href="evennia/contrib/ingame_python/scripts.html">evennia.contrib.ingame_python.scripts</a></li>
|
||||
<li><a href="evennia/contrib/ingame_python/tests.html">evennia.contrib.ingame_python.tests</a></li>
|
||||
<li><a href="evennia/contrib/ingame_python/typeclasses.html">evennia.contrib.ingame_python.typeclasses</a></li>
|
||||
<li><a href="evennia/contrib/ingame_python/utils.html">evennia.contrib.ingame_python.utils</a></li>
|
||||
<li><a href="evennia/contrib/mail.html">evennia.contrib.mail</a></li>
|
||||
<li><a href="evennia/contrib/mapbuilder.html">evennia.contrib.mapbuilder</a></li>
|
||||
<li><a href="evennia/contrib/menu_login.html">evennia.contrib.menu_login</a></li>
|
||||
<li><a href="evennia/contrib/multidescer.html">evennia.contrib.multidescer</a></li>
|
||||
<li><a href="evennia/contrib/puzzles.html">evennia.contrib.puzzles</a></li>
|
||||
<li><a href="evennia/contrib/random_string_generator.html">evennia.contrib.random_string_generator</a></li>
|
||||
|
|
@ -228,10 +225,6 @@
|
|||
<li><a href="evennia/web/website/tests.html">evennia.web.website.tests</a></li>
|
||||
<li><a href="evennia/web/website/views.html">evennia.web.website.views</a></li>
|
||||
</ul><li><a href="functools.html">functools</a></li>
|
||||
<li><a href="typeclasses/accounts.html">typeclasses.accounts</a></li>
|
||||
<li><a href="typeclasses/channels.html">typeclasses.channels</a></li>
|
||||
<li><a href="typeclasses/characters.html">typeclasses.characters</a></li>
|
||||
<li><a href="typeclasses/objects.html">typeclasses.objects</a></li>
|
||||
</ul>
|
||||
|
||||
<div class="clearer"></div>
|
||||
|
|
|
|||
|
|
@ -1,196 +0,0 @@
|
|||
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<title>typeclasses.accounts — Evennia 0.9.5 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" />
|
||||
</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="nav-item nav-item-0"><a href="../../index.html">Evennia 0.9.5</a> »</li>
|
||||
<li class="nav-item nav-item-1"><a href="../index.html" accesskey="U">Module code</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">typeclasses.accounts</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="document">
|
||||
<div class="documentwrapper">
|
||||
<div class="bodywrapper">
|
||||
<div class="body" role="main">
|
||||
|
||||
<h1>Source code for typeclasses.accounts</h1><div class="highlight"><pre>
|
||||
<span></span><span class="sd">"""</span>
|
||||
<span class="sd">Account</span>
|
||||
|
||||
<span class="sd">The Account represents the game "account" and each login has only one</span>
|
||||
<span class="sd">Account object. An Account is what chats on default channels but has no</span>
|
||||
<span class="sd">other in-game-world existence. Rather the Account puppets Objects (such</span>
|
||||
<span class="sd">as Characters) in order to actually participate in the game world.</span>
|
||||
|
||||
|
||||
<span class="sd">Guest</span>
|
||||
|
||||
<span class="sd">Guest accounts are simple low-level accounts that are created/deleted</span>
|
||||
<span class="sd">on the fly and allows users to test the game without the commitment</span>
|
||||
<span class="sd">of a full registration. Guest accounts are deactivated by default; to</span>
|
||||
<span class="sd">activate them, add the following line to your settings file:</span>
|
||||
|
||||
<span class="sd"> GUEST_ENABLED = True</span>
|
||||
|
||||
<span class="sd">You will also need to modify the connection screen to reflect the</span>
|
||||
<span class="sd">possibility to connect with a guest account. The setting file accepts</span>
|
||||
<span class="sd">several more options for customizing the Guest account system.</span>
|
||||
|
||||
<span class="sd">"""</span>
|
||||
|
||||
<span class="kn">from</span> <span class="nn">evennia</span> <span class="kn">import</span> <span class="n">DefaultAccount</span><span class="p">,</span> <span class="n">DefaultGuest</span>
|
||||
|
||||
|
||||
<span class="k">class</span> <span class="nc">Account</span><span class="p">(</span><span class="n">DefaultAccount</span><span class="p">):</span>
|
||||
<span class="sd">"""</span>
|
||||
<span class="sd"> This class describes the actual OOC account (i.e. the user connecting</span>
|
||||
<span class="sd"> to the MUD). It does NOT have visual appearance in the game world (that</span>
|
||||
<span class="sd"> is handled by the character which is connected to this). Comm channels</span>
|
||||
<span class="sd"> are attended/joined using this object.</span>
|
||||
|
||||
<span class="sd"> It can be useful e.g. for storing configuration options for your game, but</span>
|
||||
<span class="sd"> should generally not hold any character-related info (that's best handled</span>
|
||||
<span class="sd"> on the character level).</span>
|
||||
|
||||
<span class="sd"> Can be set using BASE_ACCOUNT_TYPECLASS.</span>
|
||||
|
||||
|
||||
<span class="sd"> * available properties</span>
|
||||
|
||||
<span class="sd"> key (string) - name of account</span>
|
||||
<span class="sd"> name (string)- wrapper for user.username</span>
|
||||
<span class="sd"> aliases (list of strings) - aliases to the object. Will be saved to database as AliasDB entries but returned as strings.</span>
|
||||
<span class="sd"> dbref (int, read-only) - unique #id-number. Also "id" can be used.</span>
|
||||
<span class="sd"> date_created (string) - time stamp of object creation</span>
|
||||
<span class="sd"> permissions (list of strings) - list of permission strings</span>
|
||||
|
||||
<span class="sd"> user (User, read-only) - django User authorization object</span>
|
||||
<span class="sd"> obj (Object) - game object controlled by account. 'character' can also be used.</span>
|
||||
<span class="sd"> sessions (list of Sessions) - sessions connected to this account</span>
|
||||
<span class="sd"> is_superuser (bool, read-only) - if the connected user is a superuser</span>
|
||||
|
||||
<span class="sd"> * Handlers</span>
|
||||
|
||||
<span class="sd"> locks - lock-handler: use locks.add() to add new lock strings</span>
|
||||
<span class="sd"> db - attribute-handler: store/retrieve database attributes on this self.db.myattr=val, val=self.db.myattr</span>
|
||||
<span class="sd"> ndb - non-persistent attribute handler: same as db but does not create a database entry when storing data</span>
|
||||
<span class="sd"> scripts - script-handler. Add new scripts to object with scripts.add()</span>
|
||||
<span class="sd"> cmdset - cmdset-handler. Use cmdset.add() to add new cmdsets to object</span>
|
||||
<span class="sd"> nicks - nick-handler. New nicks with nicks.add().</span>
|
||||
|
||||
<span class="sd"> * Helper methods</span>
|
||||
|
||||
<span class="sd"> msg(text=None, **kwargs)</span>
|
||||
<span class="sd"> execute_cmd(raw_string, session=None)</span>
|
||||
<span class="sd"> search(ostring, global_search=False, attribute_name=None, use_nicks=False, location=None, ignore_errors=False, account=False)</span>
|
||||
<span class="sd"> is_typeclass(typeclass, exact=False)</span>
|
||||
<span class="sd"> swap_typeclass(new_typeclass, clean_attributes=False, no_default=True)</span>
|
||||
<span class="sd"> access(accessing_obj, access_type='read', default=False)</span>
|
||||
<span class="sd"> check_permstring(permstring)</span>
|
||||
|
||||
<span class="sd"> * Hook methods (when re-implementation, remember methods need to have self as first arg)</span>
|
||||
|
||||
<span class="sd"> basetype_setup()</span>
|
||||
<span class="sd"> at_account_creation()</span>
|
||||
|
||||
<span class="sd"> - note that the following hooks are also found on Objects and are</span>
|
||||
<span class="sd"> usually handled on the character level:</span>
|
||||
|
||||
<span class="sd"> at_init()</span>
|
||||
<span class="sd"> at_cmdset_get(**kwargs)</span>
|
||||
<span class="sd"> at_first_login()</span>
|
||||
<span class="sd"> at_post_login(session=None)</span>
|
||||
<span class="sd"> at_disconnect()</span>
|
||||
<span class="sd"> at_message_receive()</span>
|
||||
<span class="sd"> at_message_send()</span>
|
||||
<span class="sd"> at_server_reload()</span>
|
||||
<span class="sd"> at_server_shutdown()</span>
|
||||
|
||||
<span class="sd"> """</span>
|
||||
|
||||
<span class="k">pass</span>
|
||||
|
||||
|
||||
<span class="k">class</span> <span class="nc">Guest</span><span class="p">(</span><span class="n">DefaultGuest</span><span class="p">):</span>
|
||||
<span class="sd">"""</span>
|
||||
<span class="sd"> This class is used for guest logins. Unlike Accounts, Guests and their</span>
|
||||
<span class="sd"> characters are deleted after disconnection.</span>
|
||||
<span class="sd"> """</span>
|
||||
|
||||
<span class="k">pass</span>
|
||||
</pre></div>
|
||||
|
||||
<div class="clearer"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<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>
|
||||
<h3>Versions</h3>
|
||||
<ul>
|
||||
<li><a href="../../../1.0-dev/index.html">1.0-dev (develop branch)</a></li>
|
||||
<li><a href="accounts.html">0.9.5 (v0.9.5 branch)</a></li>
|
||||
</ul>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearer"></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="nav-item nav-item-0"><a href="../../index.html">Evennia 0.9.5</a> »</li>
|
||||
<li class="nav-item nav-item-1"><a href="../index.html" >Module code</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">typeclasses.accounts</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="footer" role="contentinfo">
|
||||
© Copyright 2020, The Evennia developer community.
|
||||
Created using <a href="https://www.sphinx-doc.org/">Sphinx</a> 3.2.1.
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -1,154 +0,0 @@
|
|||
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<title>typeclasses.channels — Evennia 0.9.5 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" />
|
||||
</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="nav-item nav-item-0"><a href="../../index.html">Evennia 0.9.5</a> »</li>
|
||||
<li class="nav-item nav-item-1"><a href="../index.html" accesskey="U">Module code</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">typeclasses.channels</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="document">
|
||||
<div class="documentwrapper">
|
||||
<div class="bodywrapper">
|
||||
<div class="body" role="main">
|
||||
|
||||
<h1>Source code for typeclasses.channels</h1><div class="highlight"><pre>
|
||||
<span></span><span class="sd">"""</span>
|
||||
<span class="sd">Channel</span>
|
||||
|
||||
<span class="sd">The channel class represents the out-of-character chat-room usable by</span>
|
||||
<span class="sd">Accounts in-game. It is mostly overloaded to change its appearance, but</span>
|
||||
<span class="sd">channels can be used to implement many different forms of message</span>
|
||||
<span class="sd">distribution systems.</span>
|
||||
|
||||
<span class="sd">Note that sending data to channels are handled via the CMD_CHANNEL</span>
|
||||
<span class="sd">syscommand (see evennia.syscmds). The sending should normally not need</span>
|
||||
<span class="sd">to be modified.</span>
|
||||
|
||||
<span class="sd">"""</span>
|
||||
|
||||
<span class="kn">from</span> <span class="nn">evennia</span> <span class="kn">import</span> <span class="n">DefaultChannel</span>
|
||||
|
||||
|
||||
<span class="k">class</span> <span class="nc">Channel</span><span class="p">(</span><span class="n">DefaultChannel</span><span class="p">):</span>
|
||||
<span class="sd">"""</span>
|
||||
<span class="sd"> Working methods:</span>
|
||||
<span class="sd"> at_channel_creation() - called once, when the channel is created</span>
|
||||
<span class="sd"> has_connection(account) - check if the given account listens to this channel</span>
|
||||
<span class="sd"> connect(account) - connect account to this channel</span>
|
||||
<span class="sd"> disconnect(account) - disconnect account from channel</span>
|
||||
<span class="sd"> access(access_obj, access_type='listen', default=False) - check the</span>
|
||||
<span class="sd"> access on this channel (default access_type is listen)</span>
|
||||
<span class="sd"> delete() - delete this channel</span>
|
||||
<span class="sd"> message_transform(msg, emit=False, prefix=True,</span>
|
||||
<span class="sd"> sender_strings=None, external=False) - called by</span>
|
||||
<span class="sd"> the comm system and triggers the hooks below</span>
|
||||
<span class="sd"> msg(msgobj, header=None, senders=None, sender_strings=None,</span>
|
||||
<span class="sd"> persistent=None, online=False, emit=False, external=False) - main</span>
|
||||
<span class="sd"> send method, builds and sends a new message to channel.</span>
|
||||
<span class="sd"> tempmsg(msg, header=None, senders=None) - wrapper for sending non-persistent</span>
|
||||
<span class="sd"> messages.</span>
|
||||
<span class="sd"> distribute_message(msg, online=False) - send a message to all</span>
|
||||
<span class="sd"> connected accounts on channel, optionally sending only</span>
|
||||
<span class="sd"> to accounts that are currently online (optimized for very large sends)</span>
|
||||
|
||||
<span class="sd"> Useful hooks:</span>
|
||||
<span class="sd"> channel_prefix(msg, emit=False) - how the channel should be</span>
|
||||
<span class="sd"> prefixed when returning to user. Returns a string</span>
|
||||
<span class="sd"> format_senders(senders) - should return how to display multiple</span>
|
||||
<span class="sd"> senders to a channel</span>
|
||||
<span class="sd"> pose_transform(msg, sender_string) - should detect if the</span>
|
||||
<span class="sd"> sender is posing, and if so, modify the string</span>
|
||||
<span class="sd"> format_external(msg, senders, emit=False) - format messages sent</span>
|
||||
<span class="sd"> from outside the game, like from IRC</span>
|
||||
<span class="sd"> format_message(msg, emit=False) - format the message body before</span>
|
||||
<span class="sd"> displaying it to the user. 'emit' generally means that the</span>
|
||||
<span class="sd"> message should not be displayed with the sender's name.</span>
|
||||
|
||||
<span class="sd"> pre_join_channel(joiner) - if returning False, abort join</span>
|
||||
<span class="sd"> post_join_channel(joiner) - called right after successful join</span>
|
||||
<span class="sd"> pre_leave_channel(leaver) - if returning False, abort leave</span>
|
||||
<span class="sd"> post_leave_channel(leaver) - called right after successful leave</span>
|
||||
<span class="sd"> pre_send_message(msg) - runs just before a message is sent to channel</span>
|
||||
<span class="sd"> post_send_message(msg) - called just after message was sent to channel</span>
|
||||
|
||||
<span class="sd"> """</span>
|
||||
|
||||
<span class="k">pass</span>
|
||||
</pre></div>
|
||||
|
||||
<div class="clearer"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<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>
|
||||
<h3>Versions</h3>
|
||||
<ul>
|
||||
<li><a href="../../../1.0-dev/index.html">1.0-dev (develop branch)</a></li>
|
||||
<li><a href="channels.html">0.9.5 (v0.9.5 branch)</a></li>
|
||||
</ul>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearer"></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="nav-item nav-item-0"><a href="../../index.html">Evennia 0.9.5</a> »</li>
|
||||
<li class="nav-item nav-item-1"><a href="../index.html" >Module code</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">typeclasses.channels</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="footer" role="contentinfo">
|
||||
© Copyright 2020, The Evennia developer community.
|
||||
Created using <a href="https://www.sphinx-doc.org/">Sphinx</a> 3.2.1.
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -1,126 +0,0 @@
|
|||
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<title>typeclasses.characters — Evennia 0.9.5 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" />
|
||||
</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="nav-item nav-item-0"><a href="../../index.html">Evennia 0.9.5</a> »</li>
|
||||
<li class="nav-item nav-item-1"><a href="../index.html" accesskey="U">Module code</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">typeclasses.characters</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="document">
|
||||
<div class="documentwrapper">
|
||||
<div class="bodywrapper">
|
||||
<div class="body" role="main">
|
||||
|
||||
<h1>Source code for typeclasses.characters</h1><div class="highlight"><pre>
|
||||
<span></span><span class="sd">"""</span>
|
||||
<span class="sd">Characters</span>
|
||||
|
||||
<span class="sd">Characters are (by default) Objects setup to be puppeted by Accounts.</span>
|
||||
<span class="sd">They are what you "see" in game. The Character class in this module</span>
|
||||
<span class="sd">is setup to be the "default" character type created by the default</span>
|
||||
<span class="sd">creation commands.</span>
|
||||
|
||||
<span class="sd">"""</span>
|
||||
<span class="kn">from</span> <span class="nn">evennia</span> <span class="kn">import</span> <span class="n">DefaultCharacter</span>
|
||||
|
||||
|
||||
<span class="k">class</span> <span class="nc">Character</span><span class="p">(</span><span class="n">DefaultCharacter</span><span class="p">):</span>
|
||||
<span class="sd">"""</span>
|
||||
<span class="sd"> The Character defaults to reimplementing some of base Object's hook methods with the</span>
|
||||
<span class="sd"> following functionality:</span>
|
||||
|
||||
<span class="sd"> at_basetype_setup - always assigns the DefaultCmdSet to this object type</span>
|
||||
<span class="sd"> (important!)sets locks so character cannot be picked up</span>
|
||||
<span class="sd"> and its commands only be called by itself, not anyone else.</span>
|
||||
<span class="sd"> (to change things, use at_object_creation() instead).</span>
|
||||
<span class="sd"> at_after_move(source_location) - Launches the "look" command after every move.</span>
|
||||
<span class="sd"> at_post_unpuppet(account) - when Account disconnects from the Character, we</span>
|
||||
<span class="sd"> store the current location in the pre_logout_location Attribute and</span>
|
||||
<span class="sd"> move it to a None-location so the "unpuppeted" character</span>
|
||||
<span class="sd"> object does not need to stay on grid. Echoes "Account has disconnected"</span>
|
||||
<span class="sd"> to the room.</span>
|
||||
<span class="sd"> at_pre_puppet - Just before Account re-connects, retrieves the character's</span>
|
||||
<span class="sd"> pre_logout_location Attribute and move it back on the grid.</span>
|
||||
<span class="sd"> at_post_puppet - Echoes "AccountName has entered the game" to the room.</span>
|
||||
|
||||
<span class="sd"> """</span>
|
||||
|
||||
<span class="k">pass</span>
|
||||
</pre></div>
|
||||
|
||||
<div class="clearer"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<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>
|
||||
<h3>Versions</h3>
|
||||
<ul>
|
||||
<li><a href="../../../1.0-dev/index.html">1.0-dev (develop branch)</a></li>
|
||||
<li><a href="characters.html">0.9.5 (v0.9.5 branch)</a></li>
|
||||
</ul>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearer"></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="nav-item nav-item-0"><a href="../../index.html">Evennia 0.9.5</a> »</li>
|
||||
<li class="nav-item nav-item-1"><a href="../index.html" >Module code</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">typeclasses.characters</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="footer" role="contentinfo">
|
||||
© Copyright 2020, The Evennia developer community.
|
||||
Created using <a href="https://www.sphinx-doc.org/">Sphinx</a> 3.2.1.
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -1,254 +0,0 @@
|
|||
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<title>typeclasses.objects — Evennia 0.9.5 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" />
|
||||
</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="nav-item nav-item-0"><a href="../../index.html">Evennia 0.9.5</a> »</li>
|
||||
<li class="nav-item nav-item-1"><a href="../index.html" accesskey="U">Module code</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">typeclasses.objects</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="document">
|
||||
<div class="documentwrapper">
|
||||
<div class="bodywrapper">
|
||||
<div class="body" role="main">
|
||||
|
||||
<h1>Source code for typeclasses.objects</h1><div class="highlight"><pre>
|
||||
<span></span><span class="sd">"""</span>
|
||||
<span class="sd">Object</span>
|
||||
|
||||
<span class="sd">The Object is the "naked" base class for things in the game world.</span>
|
||||
|
||||
<span class="sd">Note that the default Character, Room and Exit does not inherit from</span>
|
||||
<span class="sd">this Object, but from their respective default implementations in the</span>
|
||||
<span class="sd">evennia library. If you want to use this class as a parent to change</span>
|
||||
<span class="sd">the other types, you can do so by adding this as a multiple</span>
|
||||
<span class="sd">inheritance.</span>
|
||||
|
||||
<span class="sd">"""</span>
|
||||
<span class="kn">from</span> <span class="nn">evennia</span> <span class="kn">import</span> <span class="n">DefaultObject</span>
|
||||
|
||||
|
||||
<span class="k">class</span> <span class="nc">Object</span><span class="p">(</span><span class="n">DefaultObject</span><span class="p">):</span>
|
||||
<span class="sd">"""</span>
|
||||
<span class="sd"> This is the root typeclass object, implementing an in-game Evennia</span>
|
||||
<span class="sd"> game object, such as having a location, being able to be</span>
|
||||
<span class="sd"> manipulated or looked at, etc. If you create a new typeclass, it</span>
|
||||
<span class="sd"> must always inherit from this object (or any of the other objects</span>
|
||||
<span class="sd"> in this file, since they all actually inherit from BaseObject, as</span>
|
||||
<span class="sd"> seen in src.object.objects).</span>
|
||||
|
||||
<span class="sd"> The BaseObject class implements several hooks tying into the game</span>
|
||||
<span class="sd"> engine. By re-implementing these hooks you can control the</span>
|
||||
<span class="sd"> system. You should never need to re-implement special Python</span>
|
||||
<span class="sd"> methods, such as __init__ and especially never __getattribute__ and</span>
|
||||
<span class="sd"> __setattr__ since these are used heavily by the typeclass system</span>
|
||||
<span class="sd"> of Evennia and messing with them might well break things for you.</span>
|
||||
|
||||
|
||||
<span class="sd"> * Base properties defined/available on all Objects</span>
|
||||
|
||||
<span class="sd"> key (string) - name of object</span>
|
||||
<span class="sd"> name (string)- same as key</span>
|
||||
<span class="sd"> dbref (int, read-only) - unique #id-number. Also "id" can be used.</span>
|
||||
<span class="sd"> date_created (string) - time stamp of object creation</span>
|
||||
|
||||
<span class="sd"> account (Account) - controlling account (if any, only set together with</span>
|
||||
<span class="sd"> sessid below)</span>
|
||||
<span class="sd"> sessid (int, read-only) - session id (if any, only set together with</span>
|
||||
<span class="sd"> account above). Use `sessions` handler to get the</span>
|
||||
<span class="sd"> Sessions directly.</span>
|
||||
<span class="sd"> location (Object) - current location. Is None if this is a room</span>
|
||||
<span class="sd"> home (Object) - safety start-location</span>
|
||||
<span class="sd"> has_account (bool, read-only)- will only return *connected* accounts</span>
|
||||
<span class="sd"> contents (list of Objects, read-only) - returns all objects inside this</span>
|
||||
<span class="sd"> object (including exits)</span>
|
||||
<span class="sd"> exits (list of Objects, read-only) - returns all exits from this</span>
|
||||
<span class="sd"> object, if any</span>
|
||||
<span class="sd"> destination (Object) - only set if this object is an exit.</span>
|
||||
<span class="sd"> is_superuser (bool, read-only) - True/False if this user is a superuser</span>
|
||||
|
||||
<span class="sd"> * Handlers available</span>
|
||||
|
||||
<span class="sd"> aliases - alias-handler: use aliases.add/remove/get() to use.</span>
|
||||
<span class="sd"> permissions - permission-handler: use permissions.add/remove() to</span>
|
||||
<span class="sd"> add/remove new perms.</span>
|
||||
<span class="sd"> locks - lock-handler: use locks.add() to add new lock strings</span>
|
||||
<span class="sd"> scripts - script-handler. Add new scripts to object with scripts.add()</span>
|
||||
<span class="sd"> cmdset - cmdset-handler. Use cmdset.add() to add new cmdsets to object</span>
|
||||
<span class="sd"> nicks - nick-handler. New nicks with nicks.add().</span>
|
||||
<span class="sd"> sessions - sessions-handler. Get Sessions connected to this</span>
|
||||
<span class="sd"> object with sessions.get()</span>
|
||||
<span class="sd"> attributes - attribute-handler. Use attributes.add/remove/get.</span>
|
||||
<span class="sd"> db - attribute-handler: Shortcut for attribute-handler. Store/retrieve</span>
|
||||
<span class="sd"> database attributes using self.db.myattr=val, val=self.db.myattr</span>
|
||||
<span class="sd"> ndb - non-persistent attribute handler: same as db but does not create</span>
|
||||
<span class="sd"> a database entry when storing data</span>
|
||||
|
||||
<span class="sd"> * Helper methods (see src.objects.objects.py for full headers)</span>
|
||||
|
||||
<span class="sd"> search(ostring, global_search=False, attribute_name=None,</span>
|
||||
<span class="sd"> use_nicks=False, location=None, ignore_errors=False, account=False)</span>
|
||||
<span class="sd"> execute_cmd(raw_string)</span>
|
||||
<span class="sd"> msg(text=None, **kwargs)</span>
|
||||
<span class="sd"> msg_contents(message, exclude=None, from_obj=None, **kwargs)</span>
|
||||
<span class="sd"> move_to(destination, quiet=False, emit_to_obj=None, use_destination=True)</span>
|
||||
<span class="sd"> copy(new_key=None)</span>
|
||||
<span class="sd"> delete()</span>
|
||||
<span class="sd"> is_typeclass(typeclass, exact=False)</span>
|
||||
<span class="sd"> swap_typeclass(new_typeclass, clean_attributes=False, no_default=True)</span>
|
||||
<span class="sd"> access(accessing_obj, access_type='read', default=False)</span>
|
||||
<span class="sd"> check_permstring(permstring)</span>
|
||||
|
||||
<span class="sd"> * Hooks (these are class methods, so args should start with self):</span>
|
||||
|
||||
<span class="sd"> basetype_setup() - only called once, used for behind-the-scenes</span>
|
||||
<span class="sd"> setup. Normally not modified.</span>
|
||||
<span class="sd"> basetype_posthook_setup() - customization in basetype, after the object</span>
|
||||
<span class="sd"> has been created; Normally not modified.</span>
|
||||
|
||||
<span class="sd"> at_object_creation() - only called once, when object is first created.</span>
|
||||
<span class="sd"> Object customizations go here.</span>
|
||||
<span class="sd"> at_object_delete() - called just before deleting an object. If returning</span>
|
||||
<span class="sd"> False, deletion is aborted. Note that all objects</span>
|
||||
<span class="sd"> inside a deleted object are automatically moved</span>
|
||||
<span class="sd"> to their <home>, they don't need to be removed here.</span>
|
||||
|
||||
<span class="sd"> at_init() - called whenever typeclass is cached from memory,</span>
|
||||
<span class="sd"> at least once every server restart/reload</span>
|
||||
<span class="sd"> at_cmdset_get(**kwargs) - this is called just before the command handler</span>
|
||||
<span class="sd"> requests a cmdset from this object. The kwargs are</span>
|
||||
<span class="sd"> not normally used unless the cmdset is created</span>
|
||||
<span class="sd"> dynamically (see e.g. Exits).</span>
|
||||
<span class="sd"> at_pre_puppet(account)- (account-controlled objects only) called just</span>
|
||||
<span class="sd"> before puppeting</span>
|
||||
<span class="sd"> at_post_puppet() - (account-controlled objects only) called just</span>
|
||||
<span class="sd"> after completing connection account<->object</span>
|
||||
<span class="sd"> at_pre_unpuppet() - (account-controlled objects only) called just</span>
|
||||
<span class="sd"> before un-puppeting</span>
|
||||
<span class="sd"> at_post_unpuppet(account) - (account-controlled objects only) called just</span>
|
||||
<span class="sd"> after disconnecting account<->object link</span>
|
||||
<span class="sd"> at_server_reload() - called before server is reloaded</span>
|
||||
<span class="sd"> at_server_shutdown() - called just before server is fully shut down</span>
|
||||
|
||||
<span class="sd"> at_access(result, accessing_obj, access_type) - called with the result</span>
|
||||
<span class="sd"> of a lock access check on this object. Return value</span>
|
||||
<span class="sd"> does not affect check result.</span>
|
||||
|
||||
<span class="sd"> at_before_move(destination) - called just before moving object</span>
|
||||
<span class="sd"> to the destination. If returns False, move is cancelled.</span>
|
||||
<span class="sd"> announce_move_from(destination) - called in old location, just</span>
|
||||
<span class="sd"> before move, if obj.move_to() has quiet=False</span>
|
||||
<span class="sd"> announce_move_to(source_location) - called in new location, just</span>
|
||||
<span class="sd"> after move, if obj.move_to() has quiet=False</span>
|
||||
<span class="sd"> at_after_move(source_location) - always called after a move has</span>
|
||||
<span class="sd"> been successfully performed.</span>
|
||||
<span class="sd"> at_object_leave(obj, target_location) - called when an object leaves</span>
|
||||
<span class="sd"> this object in any fashion</span>
|
||||
<span class="sd"> at_object_receive(obj, source_location) - called when this object receives</span>
|
||||
<span class="sd"> another object</span>
|
||||
|
||||
<span class="sd"> at_traverse(traversing_object, source_loc) - (exit-objects only)</span>
|
||||
<span class="sd"> handles all moving across the exit, including</span>
|
||||
<span class="sd"> calling the other exit hooks. Use super() to retain</span>
|
||||
<span class="sd"> the default functionality.</span>
|
||||
<span class="sd"> at_after_traverse(traversing_object, source_location) - (exit-objects only)</span>
|
||||
<span class="sd"> called just after a traversal has happened.</span>
|
||||
<span class="sd"> at_failed_traverse(traversing_object) - (exit-objects only) called if</span>
|
||||
<span class="sd"> traversal fails and property err_traverse is not defined.</span>
|
||||
|
||||
<span class="sd"> at_msg_receive(self, msg, from_obj=None, **kwargs) - called when a message</span>
|
||||
<span class="sd"> (via self.msg()) is sent to this obj.</span>
|
||||
<span class="sd"> If returns false, aborts send.</span>
|
||||
<span class="sd"> at_msg_send(self, msg, to_obj=None, **kwargs) - called when this objects</span>
|
||||
<span class="sd"> sends a message to someone via self.msg().</span>
|
||||
|
||||
<span class="sd"> return_appearance(looker) - describes this object. Used by "look"</span>
|
||||
<span class="sd"> command by default</span>
|
||||
<span class="sd"> at_desc(looker=None) - called by 'look' whenever the</span>
|
||||
<span class="sd"> appearance is requested.</span>
|
||||
<span class="sd"> at_get(getter) - called after object has been picked up.</span>
|
||||
<span class="sd"> Does not stop pickup.</span>
|
||||
<span class="sd"> at_drop(dropper) - called when this object has been dropped.</span>
|
||||
<span class="sd"> at_say(speaker, message) - by default, called if an object inside this</span>
|
||||
<span class="sd"> object speaks</span>
|
||||
|
||||
<span class="sd"> """</span>
|
||||
|
||||
<span class="k">pass</span>
|
||||
</pre></div>
|
||||
|
||||
<div class="clearer"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<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>
|
||||
<h3>Versions</h3>
|
||||
<ul>
|
||||
<li><a href="../../../1.0-dev/index.html">1.0-dev (develop branch)</a></li>
|
||||
<li><a href="objects.html">0.9.5 (v0.9.5 branch)</a></li>
|
||||
</ul>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearer"></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="nav-item nav-item-0"><a href="../../index.html">Evennia 0.9.5</a> »</li>
|
||||
<li class="nav-item nav-item-1"><a href="../index.html" >Module code</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">typeclasses.objects</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="footer" role="contentinfo">
|
||||
© Copyright 2020, The Evennia developer community.
|
||||
Created using <a href="https://www.sphinx-doc.org/">Sphinx</a> 3.2.1.
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -1,5 +1,5 @@
|
|||
# Toc
|
||||
|
||||
- [API root](api/evennia-api.rst)
|
||||
- [./A voice operated elevator using events](./A-voice-operated-elevator-using-events)
|
||||
- [./API refactoring](./API-refactoring)
|
||||
- [./Accounts](./Accounts)
|
||||
|
|
|
|||
|
|
@ -238,7 +238,7 @@ to accounts respectively.</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.commands.default.admin.CmdEmit.aliases">
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['remit', 'pemit']</em><a class="headerlink" href="#evennia.commands.default.admin.CmdEmit.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['pemit', 'remit']</em><a class="headerlink" href="#evennia.commands.default.admin.CmdEmit.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
|
|||
|
|
@ -74,7 +74,7 @@ skipping, reloading etc.</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.commands.default.batchprocess.CmdBatchCommands.aliases">
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['batchcmd', 'batchcommand']</em><a class="headerlink" href="#evennia.commands.default.batchprocess.CmdBatchCommands.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['batchcommand', 'batchcmd']</em><a class="headerlink" href="#evennia.commands.default.batchprocess.CmdBatchCommands.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
|
|||
|
|
@ -493,7 +493,7 @@ You can specify the /force switch to bypass this confirmation.</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.commands.default.building.CmdDestroy.aliases">
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['del', 'delete']</em><a class="headerlink" href="#evennia.commands.default.building.CmdDestroy.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['delete', 'del']</em><a class="headerlink" href="#evennia.commands.default.building.CmdDestroy.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
@ -1182,7 +1182,7 @@ server settings.</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.commands.default.building.CmdTypeclass.aliases">
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['type', 'swap', 'update', 'parent']</em><a class="headerlink" href="#evennia.commands.default.building.CmdTypeclass.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['type', 'update', 'parent', 'swap']</em><a class="headerlink" href="#evennia.commands.default.building.CmdTypeclass.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
@ -1351,7 +1351,7 @@ If object is not specified, the current location is examined.</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.commands.default.building.CmdExamine.aliases">
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['exam', 'ex']</em><a class="headerlink" href="#evennia.commands.default.building.CmdExamine.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['ex', 'exam']</em><a class="headerlink" href="#evennia.commands.default.building.CmdExamine.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
@ -1477,7 +1477,7 @@ one is given.</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.commands.default.building.CmdFind.aliases">
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['locate', 'search']</em><a class="headerlink" href="#evennia.commands.default.building.CmdFind.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['search', 'locate']</em><a class="headerlink" href="#evennia.commands.default.building.CmdFind.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
|
|||
|
|
@ -115,7 +115,7 @@ for that channel.</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.commands.default.comms.CmdDelCom.aliases">
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['delchanalias', 'delaliaschan']</em><a class="headerlink" href="#evennia.commands.default.comms.CmdDelCom.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['delaliaschan', 'delchanalias']</em><a class="headerlink" href="#evennia.commands.default.comms.CmdDelCom.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
@ -218,7 +218,7 @@ Use addcom/delcom to join and leave channels</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.commands.default.comms.CmdChannels.aliases">
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['channellist', 'chanlist', 'comlist', 'clist', 'all channels']</em><a class="headerlink" href="#evennia.commands.default.comms.CmdChannels.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['all channels', 'clist', 'chanlist', 'comlist', 'channellist']</em><a class="headerlink" href="#evennia.commands.default.comms.CmdChannels.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
|
|||
|
|
@ -194,7 +194,7 @@ for everyone to use, you need build privileges and the alias command.</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.commands.default.general.CmdNick.aliases">
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['nickname', 'nicks']</em><a class="headerlink" href="#evennia.commands.default.general.CmdNick.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['nicks', 'nickname']</em><a class="headerlink" href="#evennia.commands.default.general.CmdNick.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
@ -244,7 +244,7 @@ inv</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.commands.default.general.CmdInventory.aliases">
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['inv', 'i']</em><a class="headerlink" href="#evennia.commands.default.general.CmdInventory.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['i', 'inv']</em><a class="headerlink" href="#evennia.commands.default.general.CmdInventory.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
|
|||
|
|
@ -348,7 +348,7 @@ given, <nr> defaults to 10.</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.commands.default.system.CmdObjects.aliases">
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['stats', 'db', 'listobjs', 'listobjects']</em><a class="headerlink" href="#evennia.commands.default.system.CmdObjects.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['listobjs', 'stats', 'listobjects', 'db']</em><a class="headerlink" href="#evennia.commands.default.system.CmdObjects.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
|
|||
|
|
@ -112,7 +112,7 @@ create “account name” “pass word”</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.commands.default.unloggedin.CmdUnconnectedCreate.aliases">
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['cr', 'cre']</em><a class="headerlink" href="#evennia.commands.default.unloggedin.CmdUnconnectedCreate.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['cre', 'cr']</em><a class="headerlink" href="#evennia.commands.default.unloggedin.CmdUnconnectedCreate.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
@ -162,7 +162,7 @@ version is a bit more complicated.</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.commands.default.unloggedin.CmdUnconnectedQuit.aliases">
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['qu', 'q']</em><a class="headerlink" href="#evennia.commands.default.unloggedin.CmdUnconnectedQuit.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['q', 'qu']</em><a class="headerlink" href="#evennia.commands.default.unloggedin.CmdUnconnectedQuit.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
@ -251,7 +251,7 @@ for simplicity. It shows a pane of info.</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.commands.default.unloggedin.CmdUnconnectedHelp.aliases">
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['?', 'h']</em><a class="headerlink" href="#evennia.commands.default.unloggedin.CmdUnconnectedHelp.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['h', '?']</em><a class="headerlink" href="#evennia.commands.default.unloggedin.CmdUnconnectedHelp.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
|
|||
|
|
@ -597,7 +597,7 @@ inv</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.clothing.CmdInventory.aliases">
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['inv', 'i']</em><a class="headerlink" href="#evennia.contrib.clothing.CmdInventory.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['i', 'inv']</em><a class="headerlink" href="#evennia.contrib.clothing.CmdInventory.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
|
|||
|
|
@ -148,7 +148,7 @@ everyone but the person rolling.</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.dice.CmdDice.aliases">
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['@dice', 'roll']</em><a class="headerlink" href="#evennia.contrib.dice.CmdDice.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['roll', '@dice']</em><a class="headerlink" href="#evennia.contrib.dice.CmdDice.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
|
|||
|
|
@ -120,7 +120,7 @@ there is no object yet before the account has logged in)</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.email_login.CmdUnconnectedCreate.aliases">
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['cr', 'cre']</em><a class="headerlink" href="#evennia.contrib.email_login.CmdUnconnectedCreate.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['cre', 'cr']</em><a class="headerlink" href="#evennia.contrib.email_login.CmdUnconnectedCreate.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
@ -170,7 +170,7 @@ version is a bit more complicated.</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.email_login.CmdUnconnectedQuit.aliases">
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['qu', 'q']</em><a class="headerlink" href="#evennia.contrib.email_login.CmdUnconnectedQuit.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['q', 'qu']</em><a class="headerlink" href="#evennia.contrib.email_login.CmdUnconnectedQuit.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
@ -249,7 +249,7 @@ for simplicity. It shows a pane of info.</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.email_login.CmdUnconnectedHelp.aliases">
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['?', 'h']</em><a class="headerlink" href="#evennia.contrib.email_login.CmdUnconnectedHelp.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['h', '?']</em><a class="headerlink" href="#evennia.contrib.email_login.CmdUnconnectedHelp.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
|
|||
|
|
@ -51,7 +51,7 @@
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.ingame_python.commands.CmdCallback.aliases">
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['@callbacks', '@callback', '@calls']</em><a class="headerlink" href="#evennia.contrib.ingame_python.commands.CmdCallback.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['@callback', '@callbacks', '@calls']</em><a class="headerlink" href="#evennia.contrib.ingame_python.commands.CmdCallback.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
|
|||
|
|
@ -36,401 +36,8 @@
|
|||
<div class="bodywrapper">
|
||||
<div class="body" role="main">
|
||||
|
||||
<div class="section" id="module-evennia.contrib.ingame_python.typeclasses">
|
||||
<span id="evennia-contrib-ingame-python-typeclasses"></span><h1>evennia.contrib.ingame_python.typeclasses<a class="headerlink" href="#module-evennia.contrib.ingame_python.typeclasses" title="Permalink to this headline">¶</a></h1>
|
||||
<p>Typeclasses for the in-game Python system.</p>
|
||||
<p>To use them, change your base typeclasses to inherit from the classes in this
|
||||
module (EventObject, EventRoom, EventCharacter and EventExit) instead of the
|
||||
default ones in evennia core.</p>
|
||||
<dl class="py class">
|
||||
<dt id="evennia.contrib.ingame_python.typeclasses.EventCharacter">
|
||||
<em class="property">class </em><code class="sig-prename descclassname">evennia.contrib.ingame_python.typeclasses.</code><code class="sig-name descname">EventCharacter</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/contrib/ingame_python/typeclasses.html#EventCharacter"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.contrib.ingame_python.typeclasses.EventCharacter" title="Permalink to this definition">¶</a></dt>
|
||||
<dd><p>Bases: <a class="reference internal" href="evennia.objects.objects.html#evennia.objects.objects.DefaultCharacter" title="evennia.objects.objects.DefaultCharacter"><code class="xref py py-class docutils literal notranslate"><span class="pre">evennia.objects.objects.DefaultCharacter</span></code></a></p>
|
||||
<p>Typeclass to represent a character and call event types.</p>
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.ingame_python.typeclasses.EventCharacter.callbacks">
|
||||
<code class="sig-name descname">callbacks</code><a class="reference internal" href="../_modules/evennia/contrib/ingame_python/typeclasses.html#EventCharacter.callbacks"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.contrib.ingame_python.typeclasses.EventCharacter.callbacks" title="Permalink to this definition">¶</a></dt>
|
||||
<dd><p>Return the CallbackHandler.</p>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py method">
|
||||
<dt id="evennia.contrib.ingame_python.typeclasses.EventCharacter.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><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/contrib/ingame_python/typeclasses.html#EventCharacter.announce_move_from"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.contrib.ingame_python.typeclasses.EventCharacter.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> (<em>Object</em>) – 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>
|
||||
</ul>
|
||||
</dd>
|
||||
</dl>
|
||||
<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>
|
||||
<blockquote>
|
||||
<div><p>object: the object which is moving.
|
||||
exit: the exit from which the object is moving (if found).
|
||||
origin: the location of the object before the move.
|
||||
destination: the location of the object after moving.</p>
|
||||
</div></blockquote>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py method">
|
||||
<dt id="evennia.contrib.ingame_python.typeclasses.EventCharacter.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><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/contrib/ingame_python/typeclasses.html#EventCharacter.announce_move_to"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.contrib.ingame_python.typeclasses.EventCharacter.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> (<em>Object</em>) – 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>
|
||||
</ul>
|
||||
</dd>
|
||||
</dl>
|
||||
<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>
|
||||
<blockquote>
|
||||
<div><p>object: the object which is moving.
|
||||
exit: the exit from which the object is moving (if found).
|
||||
origin: the location of the object before the move.
|
||||
destination: the location of the object after moving.</p>
|
||||
</div></blockquote>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py method">
|
||||
<dt id="evennia.contrib.ingame_python.typeclasses.EventCharacter.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><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/contrib/ingame_python/typeclasses.html#EventCharacter.at_before_move"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.contrib.ingame_python.typeclasses.EventCharacter.at_before_move" title="Permalink to this definition">¶</a></dt>
|
||||
<dd><p>Called just before starting to move this object to
|
||||
destination.</p>
|
||||
<dl class="field-list simple">
|
||||
<dt class="field-odd">Parameters</dt>
|
||||
<dd class="field-odd"><p><strong>destination</strong> (<em>Object</em>) – The object we are moving to</p>
|
||||
</dd>
|
||||
<dt class="field-even">Returns</dt>
|
||||
<dd class="field-even"><p><em>shouldmove (bool)</em> – If we should move or not.</p>
|
||||
</dd>
|
||||
</dl>
|
||||
<p class="rubric">Notes</p>
|
||||
<p>If this method returns False/None, the move is cancelled
|
||||
before it is even started.</p>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py method">
|
||||
<dt id="evennia.contrib.ingame_python.typeclasses.EventCharacter.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><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/contrib/ingame_python/typeclasses.html#EventCharacter.at_after_move"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.contrib.ingame_python.typeclasses.EventCharacter.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"><p><strong>source_location</strong> (<em>Object</em>) – Wwhere we came from. This may be <strong>None</strong>.</p>
|
||||
</dd>
|
||||
</dl>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py method">
|
||||
<dt id="evennia.contrib.ingame_python.typeclasses.EventCharacter.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/contrib/ingame_python/typeclasses.html#EventCharacter.at_object_delete"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.contrib.ingame_python.typeclasses.EventCharacter.at_object_delete" title="Permalink to this definition">¶</a></dt>
|
||||
<dd><p>Called just before the database object is permanently
|
||||
delete()d from the database. If this method returns False,
|
||||
deletion is aborted.</p>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py method">
|
||||
<dt id="evennia.contrib.ingame_python.typeclasses.EventCharacter.at_post_puppet">
|
||||
<code class="sig-name descname">at_post_puppet</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/contrib/ingame_python/typeclasses.html#EventCharacter.at_post_puppet"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.contrib.ingame_python.typeclasses.EventCharacter.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>
|
||||
<div class="admonition note">
|
||||
<p class="admonition-title">Note</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>
|
||||
</div>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py method">
|
||||
<dt id="evennia.contrib.ingame_python.typeclasses.EventCharacter.at_pre_unpuppet">
|
||||
<code class="sig-name descname">at_pre_unpuppet</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/contrib/ingame_python/typeclasses.html#EventCharacter.at_pre_unpuppet"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.contrib.ingame_python.typeclasses.EventCharacter.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>
|
||||
<div class="admonition note">
|
||||
<p class="admonition-title">Note</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>
|
||||
</div>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py method">
|
||||
<dt id="evennia.contrib.ingame_python.typeclasses.EventCharacter.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="reference internal" href="../_modules/evennia/contrib/ingame_python/typeclasses.html#EventCharacter.at_before_say"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.contrib.ingame_python.typeclasses.EventCharacter.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>receiver</strong> (<em>Object</em>) – If set, this is a target for the say/whisper.</p></li>
|
||||
</ul>
|
||||
</dd>
|
||||
<dt class="field-odd">Returns</dt>
|
||||
<dd class="field-odd"><p><em>message (str)</em> – The (possibly modified) text to be spoken.</p>
|
||||
</dd>
|
||||
</dl>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py method">
|
||||
<dt id="evennia.contrib.ingame_python.typeclasses.EventCharacter.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="o">**</span><span class="n">kwargs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/contrib/ingame_python/typeclasses.html#EventCharacter.at_say"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.contrib.ingame_python.typeclasses.EventCharacter.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 text to be conveyed by self.</p></li>
|
||||
<li><p><strong>msg_self</strong> (<em>str</em><em>, </em><em>optional</em>) – The message to 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>receiver</strong> (<em>Object</em><em>, </em><em>optional</em>) – An eventual receiver of the message
|
||||
(by default only used by whispers).</p></li>
|
||||
<li><p><strong>msg_receiver</strong> (<em>str</em><em>, </em><em>optional</em>) – Specific message for receiver only.</p></li>
|
||||
<li><p><strong>mapping</strong> (<em>dict</em><em>, </em><em>optional</em>) – Additional mapping in messages.</p></li>
|
||||
</ul>
|
||||
</dd>
|
||||
<dt class="field-even">Keyword Arguments</dt>
|
||||
<dd class="field-even"><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>
|
||||
</dd>
|
||||
</dl>
|
||||
<p class="rubric">Notes</p>
|
||||
<p>Messages can contain {} markers, which must
|
||||
If used, <strong>msg_self</strong>, <strong>msg_receiver</strong> and <strong>msg_location</strong> should contain
|
||||
references to other objects between braces, the way <strong>location.msg_contents</strong>
|
||||
would allow. For instance:</p>
|
||||
<blockquote>
|
||||
<div><p>msg_self = ‘You say: “{speech}”’
|
||||
msg_location = ‘{object} says: “{speech}”’
|
||||
msg_receiver = ‘{object} whispers: “{speech}”’</p>
|
||||
</div></blockquote>
|
||||
<dl class="simple">
|
||||
<dt>The following mappings can be used in both messages:</dt><dd><p>object: the object speaking.
|
||||
location: the location where object is.
|
||||
speech: the text spoken by self.</p>
|
||||
</dd>
|
||||
</dl>
|
||||
<p>You can use additional mappings if you want to add other
|
||||
information in your messages.</p>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py exception">
|
||||
<dt id="evennia.contrib.ingame_python.typeclasses.EventCharacter.DoesNotExist">
|
||||
<em class="property">exception </em><code class="sig-name descname">DoesNotExist</code><a class="headerlink" href="#evennia.contrib.ingame_python.typeclasses.EventCharacter.DoesNotExist" title="Permalink to this definition">¶</a></dt>
|
||||
<dd><p>Bases: <a class="reference internal" href="evennia.objects.objects.html#evennia.objects.objects.DefaultCharacter.DoesNotExist" title="evennia.objects.objects.DefaultCharacter.DoesNotExist"><code class="xref py py-class docutils literal notranslate"><span class="pre">evennia.objects.objects.DefaultCharacter.DoesNotExist</span></code></a></p>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py exception">
|
||||
<dt id="evennia.contrib.ingame_python.typeclasses.EventCharacter.MultipleObjectsReturned">
|
||||
<em class="property">exception </em><code class="sig-name descname">MultipleObjectsReturned</code><a class="headerlink" href="#evennia.contrib.ingame_python.typeclasses.EventCharacter.MultipleObjectsReturned" title="Permalink to this definition">¶</a></dt>
|
||||
<dd><p>Bases: <a class="reference internal" href="evennia.objects.objects.html#evennia.objects.objects.DefaultCharacter.MultipleObjectsReturned" title="evennia.objects.objects.DefaultCharacter.MultipleObjectsReturned"><code class="xref py py-class docutils literal notranslate"><span class="pre">evennia.objects.objects.DefaultCharacter.MultipleObjectsReturned</span></code></a></p>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.ingame_python.typeclasses.EventCharacter.path">
|
||||
<code class="sig-name descname">path</code><em class="property"> = 'evennia.contrib.ingame_python.typeclasses.EventCharacter'</em><a class="headerlink" href="#evennia.contrib.ingame_python.typeclasses.EventCharacter.path" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.ingame_python.typeclasses.EventCharacter.typename">
|
||||
<code class="sig-name descname">typename</code><em class="property"> = 'EventCharacter'</em><a class="headerlink" href="#evennia.contrib.ingame_python.typeclasses.EventCharacter.typename" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py class">
|
||||
<dt id="evennia.contrib.ingame_python.typeclasses.EventExit">
|
||||
<em class="property">class </em><code class="sig-prename descclassname">evennia.contrib.ingame_python.typeclasses.</code><code class="sig-name descname">EventExit</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/contrib/ingame_python/typeclasses.html#EventExit"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.contrib.ingame_python.typeclasses.EventExit" title="Permalink to this definition">¶</a></dt>
|
||||
<dd><p>Bases: <a class="reference internal" href="evennia.objects.objects.html#evennia.objects.objects.DefaultExit" title="evennia.objects.objects.DefaultExit"><code class="xref py py-class docutils literal notranslate"><span class="pre">evennia.objects.objects.DefaultExit</span></code></a></p>
|
||||
<p>Modified exit including management of events.</p>
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.ingame_python.typeclasses.EventExit.callbacks">
|
||||
<code class="sig-name descname">callbacks</code><a class="reference internal" href="../_modules/evennia/contrib/ingame_python/typeclasses.html#EventExit.callbacks"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.contrib.ingame_python.typeclasses.EventExit.callbacks" title="Permalink to this definition">¶</a></dt>
|
||||
<dd><p>Return the CallbackHandler.</p>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py method">
|
||||
<dt id="evennia.contrib.ingame_python.typeclasses.EventExit.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><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/contrib/ingame_python/typeclasses.html#EventExit.at_traverse"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.contrib.ingame_python.typeclasses.EventExit.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_after_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> (<em>Object</em>) – Object traversing us.</p></li>
|
||||
<li><p><strong>target_location</strong> (<em>Object</em>) – Where target is going.</p></li>
|
||||
</ul>
|
||||
</dd>
|
||||
</dl>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py exception">
|
||||
<dt id="evennia.contrib.ingame_python.typeclasses.EventExit.DoesNotExist">
|
||||
<em class="property">exception </em><code class="sig-name descname">DoesNotExist</code><a class="headerlink" href="#evennia.contrib.ingame_python.typeclasses.EventExit.DoesNotExist" title="Permalink to this definition">¶</a></dt>
|
||||
<dd><p>Bases: <a class="reference internal" href="evennia.objects.objects.html#evennia.objects.objects.DefaultExit.DoesNotExist" title="evennia.objects.objects.DefaultExit.DoesNotExist"><code class="xref py py-class docutils literal notranslate"><span class="pre">evennia.objects.objects.DefaultExit.DoesNotExist</span></code></a></p>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py exception">
|
||||
<dt id="evennia.contrib.ingame_python.typeclasses.EventExit.MultipleObjectsReturned">
|
||||
<em class="property">exception </em><code class="sig-name descname">MultipleObjectsReturned</code><a class="headerlink" href="#evennia.contrib.ingame_python.typeclasses.EventExit.MultipleObjectsReturned" title="Permalink to this definition">¶</a></dt>
|
||||
<dd><p>Bases: <a class="reference internal" href="evennia.objects.objects.html#evennia.objects.objects.DefaultExit.MultipleObjectsReturned" title="evennia.objects.objects.DefaultExit.MultipleObjectsReturned"><code class="xref py py-class docutils literal notranslate"><span class="pre">evennia.objects.objects.DefaultExit.MultipleObjectsReturned</span></code></a></p>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.ingame_python.typeclasses.EventExit.path">
|
||||
<code class="sig-name descname">path</code><em class="property"> = 'evennia.contrib.ingame_python.typeclasses.EventExit'</em><a class="headerlink" href="#evennia.contrib.ingame_python.typeclasses.EventExit.path" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.ingame_python.typeclasses.EventExit.typename">
|
||||
<code class="sig-name descname">typename</code><em class="property"> = 'EventExit'</em><a class="headerlink" href="#evennia.contrib.ingame_python.typeclasses.EventExit.typename" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py class">
|
||||
<dt id="evennia.contrib.ingame_python.typeclasses.EventObject">
|
||||
<em class="property">class </em><code class="sig-prename descclassname">evennia.contrib.ingame_python.typeclasses.</code><code class="sig-name descname">EventObject</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/contrib/ingame_python/typeclasses.html#EventObject"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.contrib.ingame_python.typeclasses.EventObject" title="Permalink to this definition">¶</a></dt>
|
||||
<dd><p>Bases: <a class="reference internal" href="evennia.objects.objects.html#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>Default object with management of events.</p>
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.ingame_python.typeclasses.EventObject.callbacks">
|
||||
<code class="sig-name descname">callbacks</code><a class="reference internal" href="../_modules/evennia/contrib/ingame_python/typeclasses.html#EventObject.callbacks"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.contrib.ingame_python.typeclasses.EventObject.callbacks" title="Permalink to this definition">¶</a></dt>
|
||||
<dd><p>Return the CallbackHandler.</p>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py method">
|
||||
<dt id="evennia.contrib.ingame_python.typeclasses.EventObject.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><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/contrib/ingame_python/typeclasses.html#EventObject.at_get"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.contrib.ingame_python.typeclasses.EventObject.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"><p><strong>getter</strong> (<em>Object</em>) – The object getting this object.</p>
|
||||
</dd>
|
||||
</dl>
|
||||
<p class="rubric">Notes</p>
|
||||
<p>This hook cannot stop the pickup from happening. Use
|
||||
permissions for that.</p>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py method">
|
||||
<dt id="evennia.contrib.ingame_python.typeclasses.EventObject.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><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/contrib/ingame_python/typeclasses.html#EventObject.at_drop"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.contrib.ingame_python.typeclasses.EventObject.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"><p><strong>dropper</strong> (<em>Object</em>) – The object which just dropped this object.</p>
|
||||
</dd>
|
||||
</dl>
|
||||
<p class="rubric">Notes</p>
|
||||
<p>This hook cannot stop the drop from happening. Use
|
||||
permissions from that.</p>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py exception">
|
||||
<dt id="evennia.contrib.ingame_python.typeclasses.EventObject.DoesNotExist">
|
||||
<em class="property">exception </em><code class="sig-name descname">DoesNotExist</code><a class="headerlink" href="#evennia.contrib.ingame_python.typeclasses.EventObject.DoesNotExist" title="Permalink to this definition">¶</a></dt>
|
||||
<dd><p>Bases: <a class="reference internal" href="evennia.objects.objects.html#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.contrib.ingame_python.typeclasses.EventObject.MultipleObjectsReturned">
|
||||
<em class="property">exception </em><code class="sig-name descname">MultipleObjectsReturned</code><a class="headerlink" href="#evennia.contrib.ingame_python.typeclasses.EventObject.MultipleObjectsReturned" title="Permalink to this definition">¶</a></dt>
|
||||
<dd><p>Bases: <a class="reference internal" href="evennia.objects.objects.html#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.contrib.ingame_python.typeclasses.EventObject.path">
|
||||
<code class="sig-name descname">path</code><em class="property"> = 'evennia.contrib.ingame_python.typeclasses.EventObject'</em><a class="headerlink" href="#evennia.contrib.ingame_python.typeclasses.EventObject.path" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.ingame_python.typeclasses.EventObject.typename">
|
||||
<code class="sig-name descname">typename</code><em class="property"> = 'EventObject'</em><a class="headerlink" href="#evennia.contrib.ingame_python.typeclasses.EventObject.typename" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py class">
|
||||
<dt id="evennia.contrib.ingame_python.typeclasses.EventRoom">
|
||||
<em class="property">class </em><code class="sig-prename descclassname">evennia.contrib.ingame_python.typeclasses.</code><code class="sig-name descname">EventRoom</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/contrib/ingame_python/typeclasses.html#EventRoom"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.contrib.ingame_python.typeclasses.EventRoom" title="Permalink to this definition">¶</a></dt>
|
||||
<dd><p>Bases: <a class="reference internal" href="evennia.objects.objects.html#evennia.objects.objects.DefaultRoom" title="evennia.objects.objects.DefaultRoom"><code class="xref py py-class docutils literal notranslate"><span class="pre">evennia.objects.objects.DefaultRoom</span></code></a></p>
|
||||
<p>Default room with management of events.</p>
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.ingame_python.typeclasses.EventRoom.callbacks">
|
||||
<code class="sig-name descname">callbacks</code><a class="reference internal" href="../_modules/evennia/contrib/ingame_python/typeclasses.html#EventRoom.callbacks"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.contrib.ingame_python.typeclasses.EventRoom.callbacks" title="Permalink to this definition">¶</a></dt>
|
||||
<dd><p>Return the CallbackHandler.</p>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py method">
|
||||
<dt id="evennia.contrib.ingame_python.typeclasses.EventRoom.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/contrib/ingame_python/typeclasses.html#EventRoom.at_object_delete"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.contrib.ingame_python.typeclasses.EventRoom.at_object_delete" title="Permalink to this definition">¶</a></dt>
|
||||
<dd><p>Called just before the database object is permanently
|
||||
delete()d from the database. If this method returns False,
|
||||
deletion is aborted.</p>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py exception">
|
||||
<dt id="evennia.contrib.ingame_python.typeclasses.EventRoom.DoesNotExist">
|
||||
<em class="property">exception </em><code class="sig-name descname">DoesNotExist</code><a class="headerlink" href="#evennia.contrib.ingame_python.typeclasses.EventRoom.DoesNotExist" title="Permalink to this definition">¶</a></dt>
|
||||
<dd><p>Bases: <a class="reference internal" href="evennia.objects.objects.html#evennia.objects.objects.DefaultRoom.DoesNotExist" title="evennia.objects.objects.DefaultRoom.DoesNotExist"><code class="xref py py-class docutils literal notranslate"><span class="pre">evennia.objects.objects.DefaultRoom.DoesNotExist</span></code></a></p>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py exception">
|
||||
<dt id="evennia.contrib.ingame_python.typeclasses.EventRoom.MultipleObjectsReturned">
|
||||
<em class="property">exception </em><code class="sig-name descname">MultipleObjectsReturned</code><a class="headerlink" href="#evennia.contrib.ingame_python.typeclasses.EventRoom.MultipleObjectsReturned" title="Permalink to this definition">¶</a></dt>
|
||||
<dd><p>Bases: <a class="reference internal" href="evennia.objects.objects.html#evennia.objects.objects.DefaultRoom.MultipleObjectsReturned" title="evennia.objects.objects.DefaultRoom.MultipleObjectsReturned"><code class="xref py py-class docutils literal notranslate"><span class="pre">evennia.objects.objects.DefaultRoom.MultipleObjectsReturned</span></code></a></p>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.ingame_python.typeclasses.EventRoom.path">
|
||||
<code class="sig-name descname">path</code><em class="property"> = 'evennia.contrib.ingame_python.typeclasses.EventRoom'</em><a class="headerlink" href="#evennia.contrib.ingame_python.typeclasses.EventRoom.path" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.ingame_python.typeclasses.EventRoom.typename">
|
||||
<code class="sig-name descname">typename</code><em class="property"> = 'EventRoom'</em><a class="headerlink" href="#evennia.contrib.ingame_python.typeclasses.EventRoom.typename" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
</dd></dl>
|
||||
|
||||
<div class="section" id="evennia-contrib-ingame-python-typeclasses">
|
||||
<h1>evennia.contrib.ingame_python.typeclasses<a class="headerlink" href="#evennia-contrib-ingame-python-typeclasses" title="Permalink to this headline">¶</a></h1>
|
||||
</div>
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -36,204 +36,8 @@
|
|||
<div class="bodywrapper">
|
||||
<div class="body" role="main">
|
||||
|
||||
<div class="section" id="module-evennia.contrib.mapbuilder">
|
||||
<span id="evennia-contrib-mapbuilder"></span><h1>evennia.contrib.mapbuilder<a class="headerlink" href="#module-evennia.contrib.mapbuilder" title="Permalink to this headline">¶</a></h1>
|
||||
<p>Evennia World Builder</p>
|
||||
<p>Contribution - Cloud_Keeper 2016</p>
|
||||
<p>Build a map from a 2D ASCII map.</p>
|
||||
<p>This is a command which takes two inputs:</p>
|
||||
<p>≈≈≈≈≈
|
||||
≈♣n♣≈ MAP_LEGEND = {(“♣”, “♠”): build_forest,
|
||||
≈∩▲∩≈ (“∩”, “n”): build_mountains,
|
||||
≈♠n♠≈ (“▲”): build_temple}
|
||||
≈≈≈≈≈</p>
|
||||
<p>A string of ASCII characters representing a map and a dictionary of functions
|
||||
containing build instructions. The characters of the map are iterated over and
|
||||
compared to a list of trigger characters. When a match is found the
|
||||
corresponding function is executed generating the rooms, exits and objects as
|
||||
defined by the users build instructions. If a character is not a match to
|
||||
a provided trigger character (including spaces) it is simply skipped and the
|
||||
process continues.</p>
|
||||
<p>For instance, the above map represents a temple (▲) amongst mountains (n,∩)
|
||||
in a forest (♣,♠) on an island surrounded by water (≈). Each character on the
|
||||
first line is iterated over but as there is no match with our MAP_LEGEND it
|
||||
is skipped. On the second line it finds “♣” which is a match and so the
|
||||
<strong>build_forest</strong> function is called. Next the <strong>build_mountains</strong> function is
|
||||
called and so on until the map is completed. Building instructions are passed
|
||||
the following arguments:</p>
|
||||
<blockquote>
|
||||
<div><p>x - The rooms position on the maps x axis
|
||||
y - The rooms position on the maps y axis
|
||||
caller - The account calling the command
|
||||
iteration - The current iterations number (0, 1 or 2)
|
||||
room_dict - A dictionary containing room references returned by build</p>
|
||||
<blockquote>
|
||||
<div><p>functions where tuple coordinates are the keys (x, y).
|
||||
ie room_dict[(2, 2)] will return the temple room above.</p>
|
||||
</div></blockquote>
|
||||
</div></blockquote>
|
||||
<p>Building functions should return the room they create. By default these rooms
|
||||
are used to create exits between valid adjacent rooms to the north, south,
|
||||
east and west directions. This behaviour can turned off with the use of switch
|
||||
arguments. In addition to turning off automatic exit generation the switches
|
||||
allow the map to be iterated over a number of times. This is important for
|
||||
something like custom exit building. Exits require a reference to both the
|
||||
exits location and the exits destination. During the first iteration it is
|
||||
possible that an exit is created pointing towards a destination that
|
||||
has not yet been created resulting in error. By iterating over the map twice
|
||||
the rooms can be created on the first iteration and room reliant code can be
|
||||
be used on the second iteration. The iteration number and a dictionary of
|
||||
references to rooms previously created is passed to the build commands.</p>
|
||||
<p>Use by importing and including the command in your default_cmdsets module.
|
||||
For example:</p>
|
||||
<blockquote>
|
||||
<div><p># mygame/commands/default_cmdsets.py</p>
|
||||
<p>from evennia.contrib import mapbuilder</p>
|
||||
<p>…</p>
|
||||
<p>self.add(mapbuilder.CmdMapBuilder())</p>
|
||||
</div></blockquote>
|
||||
<p>You then call the command in-game using the path to the MAP and MAP_LEGEND vars
|
||||
The path you provide is relative to the evennia or mygame folder.</p>
|
||||
<dl class="simple">
|
||||
<dt>Usage:</dt><dd><p>@mapbuilder[/switch] <path.to.file.MAPNAME> <path.to.file.MAP_LEGEND></p>
|
||||
</dd>
|
||||
<dt>Switches:</dt><dd><p>one - execute build instructions once without automatic exit creation.
|
||||
two - execute build instructions twice without automatic exit creation.</p>
|
||||
</dd>
|
||||
</dl>
|
||||
<p class="rubric">Example</p>
|
||||
<p>@mapbuilder world.gamemap.MAP world.maplegend.MAP_LEGEND
|
||||
@mapbuilder evennia.contrib.mapbuilder.EXAMPLE1_MAP EXAMPLE1_LEGEND
|
||||
@mapbuilder/two evennia.contrib.mapbuilder.EXAMPLE2_MAP EXAMPLE2_LEGEND</p>
|
||||
<blockquote>
|
||||
<div><p>(Legend path defaults to map path)</p>
|
||||
</div></blockquote>
|
||||
<p>Below are two examples showcasing the use of automatic exit generation and
|
||||
custom exit generation. Whilst located, and can be used, from this module for
|
||||
convenience The below example code should be in mymap.py in mygame/world.</p>
|
||||
<dl class="py function">
|
||||
<dt id="evennia.contrib.mapbuilder.example1_build_forest">
|
||||
<code class="sig-prename descclassname">evennia.contrib.mapbuilder.</code><code class="sig-name descname">example1_build_forest</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">x</span></em>, <em class="sig-param"><span class="n">y</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/contrib/mapbuilder.html#example1_build_forest"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.contrib.mapbuilder.example1_build_forest" title="Permalink to this definition">¶</a></dt>
|
||||
<dd><p>A basic example of build instructions. Make sure to include <a href="#id1"><span class="problematic" id="id2">**</span></a>kwargs
|
||||
in the arguments and return an instance of the room for exit generation.</p>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py function">
|
||||
<dt id="evennia.contrib.mapbuilder.example1_build_mountains">
|
||||
<code class="sig-prename descclassname">evennia.contrib.mapbuilder.</code><code class="sig-name descname">example1_build_mountains</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">x</span></em>, <em class="sig-param"><span class="n">y</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/contrib/mapbuilder.html#example1_build_mountains"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.contrib.mapbuilder.example1_build_mountains" title="Permalink to this definition">¶</a></dt>
|
||||
<dd><p>A room that is a little more advanced</p>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py function">
|
||||
<dt id="evennia.contrib.mapbuilder.example1_build_temple">
|
||||
<code class="sig-prename descclassname">evennia.contrib.mapbuilder.</code><code class="sig-name descname">example1_build_temple</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">x</span></em>, <em class="sig-param"><span class="n">y</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/contrib/mapbuilder.html#example1_build_temple"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.contrib.mapbuilder.example1_build_temple" title="Permalink to this definition">¶</a></dt>
|
||||
<dd><p>A unique room that does not need to be as general</p>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py function">
|
||||
<dt id="evennia.contrib.mapbuilder.example2_build_forest">
|
||||
<code class="sig-prename descclassname">evennia.contrib.mapbuilder.</code><code class="sig-name descname">example2_build_forest</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">x</span></em>, <em class="sig-param"><span class="n">y</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/contrib/mapbuilder.html#example2_build_forest"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.contrib.mapbuilder.example2_build_forest" title="Permalink to this definition">¶</a></dt>
|
||||
<dd><p>A basic room</p>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py function">
|
||||
<dt id="evennia.contrib.mapbuilder.example2_build_verticle_exit">
|
||||
<code class="sig-prename descclassname">evennia.contrib.mapbuilder.</code><code class="sig-name descname">example2_build_verticle_exit</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">x</span></em>, <em class="sig-param"><span class="n">y</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/contrib/mapbuilder.html#example2_build_verticle_exit"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.contrib.mapbuilder.example2_build_verticle_exit" title="Permalink to this definition">¶</a></dt>
|
||||
<dd><p>Creates two exits to and from the two rooms north and south.</p>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py function">
|
||||
<dt id="evennia.contrib.mapbuilder.example2_build_horizontal_exit">
|
||||
<code class="sig-prename descclassname">evennia.contrib.mapbuilder.</code><code class="sig-name descname">example2_build_horizontal_exit</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">x</span></em>, <em class="sig-param"><span class="n">y</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/contrib/mapbuilder.html#example2_build_horizontal_exit"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.contrib.mapbuilder.example2_build_horizontal_exit" title="Permalink to this definition">¶</a></dt>
|
||||
<dd><p>Creates two exits to and from the two rooms east and west.</p>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py function">
|
||||
<dt id="evennia.contrib.mapbuilder.build_map">
|
||||
<code class="sig-prename descclassname">evennia.contrib.mapbuilder.</code><code class="sig-name descname">build_map</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">caller</span></em>, <em class="sig-param"><span class="n">game_map</span></em>, <em class="sig-param"><span class="n">legend</span></em>, <em class="sig-param"><span class="n">iterations</span><span class="o">=</span><span class="default_value">1</span></em>, <em class="sig-param"><span class="n">build_exits</span><span class="o">=</span><span class="default_value">True</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/contrib/mapbuilder.html#build_map"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.contrib.mapbuilder.build_map" title="Permalink to this definition">¶</a></dt>
|
||||
<dd><p>Receives the fetched map and legend vars provided by the player.</p>
|
||||
<dl class="field-list simple">
|
||||
<dt class="field-odd">Parameters</dt>
|
||||
<dd class="field-odd"><ul class="simple">
|
||||
<li><p><strong>caller</strong> (<em>Object</em>) – The creator of the map.</p></li>
|
||||
<li><p><strong>game_map</strong> (<em>str</em>) – An ASCII map string.</p></li>
|
||||
<li><p><strong>legend</strong> (<em>dict</em>) – Mapping of map symbols to object types.</p></li>
|
||||
<li><p><strong>iterations</strong> (<em>int</em>) – The number of iteration passes.</p></li>
|
||||
<li><p><strong>build_exits</strong> (<em>bool</em>) – Create exits between new rooms.</p></li>
|
||||
</ul>
|
||||
</dd>
|
||||
</dl>
|
||||
<p class="rubric">Notes</p>
|
||||
<p>The map
|
||||
is iterated over character by character, comparing it to the trigger
|
||||
characters in the legend var and executing the build instructions on
|
||||
finding a match. The map is iterated over according to the <strong>iterations</strong>
|
||||
value and exits are optionally generated between adjacent rooms according
|
||||
to the <strong>build_exits</strong> value.</p>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py class">
|
||||
<dt id="evennia.contrib.mapbuilder.CmdMapBuilder">
|
||||
<em class="property">class </em><code class="sig-prename descclassname">evennia.contrib.mapbuilder.</code><code class="sig-name descname">CmdMapBuilder</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/contrib/mapbuilder.html#CmdMapBuilder"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.contrib.mapbuilder.CmdMapBuilder" 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>Build a map from a 2D ASCII map.</p>
|
||||
<dl class="simple">
|
||||
<dt>Usage:</dt><dd><p>@mapbuilder[/switch] <path.to.file.MAPNAME> <path.to.file.MAP_LEGEND></p>
|
||||
</dd>
|
||||
<dt>Switches:</dt><dd><p>one - execute build instructions once without automatic exit creation
|
||||
two - execute build instructions twice without automatic exit creation</p>
|
||||
</dd>
|
||||
</dl>
|
||||
<p class="rubric">Example</p>
|
||||
<p>@mapbuilder world.gamemap.MAP world.maplegend.MAP_LEGEND
|
||||
@mapbuilder evennia.contrib.mapbuilder.EXAMPLE1_MAP EXAMPLE1_LEGEND
|
||||
@mapbuilder/two evennia.contrib.mapbuilder.EXAMPLE2_MAP EXAMPLE2_LEGEND</p>
|
||||
<blockquote>
|
||||
<div><p>(Legend path defaults to map path)</p>
|
||||
</div></blockquote>
|
||||
<p>This is a command which takes two inputs:
|
||||
A string of ASCII characters representing a map and a dictionary of
|
||||
functions containing build instructions. The characters of the map are
|
||||
iterated over and compared to a list of trigger characters. When a match
|
||||
is found the corresponding function is executed generating the rooms,
|
||||
exits and objects as defined by the users build instructions. If a
|
||||
character is not a match to a provided trigger character (including spaces)
|
||||
it is simply skipped and the process continues. By default exits are
|
||||
automatically generated but is turned off by switches which also determines
|
||||
how many times the map is iterated over.</p>
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.mapbuilder.CmdMapBuilder.key">
|
||||
<code class="sig-name descname">key</code><em class="property"> = '@mapbuilder'</em><a class="headerlink" href="#evennia.contrib.mapbuilder.CmdMapBuilder.key" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.mapbuilder.CmdMapBuilder.aliases">
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['@buildmap']</em><a class="headerlink" href="#evennia.contrib.mapbuilder.CmdMapBuilder.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.mapbuilder.CmdMapBuilder.locks">
|
||||
<code class="sig-name descname">locks</code><em class="property"> = 'cmd:superuser()'</em><a class="headerlink" href="#evennia.contrib.mapbuilder.CmdMapBuilder.locks" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.mapbuilder.CmdMapBuilder.help_category">
|
||||
<code class="sig-name descname">help_category</code><em class="property"> = 'building'</em><a class="headerlink" href="#evennia.contrib.mapbuilder.CmdMapBuilder.help_category" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py method">
|
||||
<dt id="evennia.contrib.mapbuilder.CmdMapBuilder.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/contrib/mapbuilder.html#CmdMapBuilder.func"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.contrib.mapbuilder.CmdMapBuilder.func" title="Permalink to this definition">¶</a></dt>
|
||||
<dd><p>Starts the processor.</p>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.mapbuilder.CmdMapBuilder.lock_storage">
|
||||
<code class="sig-name descname">lock_storage</code><em class="property"> = 'cmd:superuser()'</em><a class="headerlink" href="#evennia.contrib.mapbuilder.CmdMapBuilder.lock_storage" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
</dd></dl>
|
||||
|
||||
<div class="section" id="evennia-contrib-mapbuilder">
|
||||
<h1>evennia.contrib.mapbuilder<a class="headerlink" href="#evennia-contrib-mapbuilder" title="Permalink to this headline">¶</a></h1>
|
||||
</div>
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -36,113 +36,8 @@
|
|||
<div class="bodywrapper">
|
||||
<div class="body" role="main">
|
||||
|
||||
<div class="section" id="module-evennia.contrib.menu_login">
|
||||
<span id="evennia-contrib-menu-login"></span><h1>evennia.contrib.menu_login<a class="headerlink" href="#module-evennia.contrib.menu_login" title="Permalink to this headline">¶</a></h1>
|
||||
<p>A login menu using EvMenu.</p>
|
||||
<p>Contribution - Vincent-lg 2016, Griatch 2019 (rework for modern EvMenu)</p>
|
||||
<p>This changes the Evennia login to ask for the account name and password in
|
||||
sequence instead of requiring you to enter both at once.</p>
|
||||
<p>To install, add this line to the settings file (<strong>mygame/server/conf/settings.py</strong>):</p>
|
||||
<blockquote>
|
||||
<div><p>CMDSET_UNLOGGEDIN = “evennia.contrib.menu_login.UnloggedinCmdSet”</p>
|
||||
</div></blockquote>
|
||||
<p>Reload the server and the new connection method will be active. Note that you must
|
||||
independently change the connection screen to match this login style, by editing
|
||||
<strong>mygame/server/conf/connection_screens.py</strong>.</p>
|
||||
<p>This uses Evennia’s menu system EvMenu and is triggered by a command that is
|
||||
called automatically when a new user connects.</p>
|
||||
<dl class="py function">
|
||||
<dt id="evennia.contrib.menu_login.node_enter_username">
|
||||
<code class="sig-prename descclassname">evennia.contrib.menu_login.</code><code class="sig-name descname">node_enter_username</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">caller</span></em>, <em class="sig-param"><span class="n">raw_text</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/contrib/menu_login.html#node_enter_username"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.contrib.menu_login.node_enter_username" title="Permalink to this definition">¶</a></dt>
|
||||
<dd><p>Start node of menu
|
||||
Start login by displaying the connection screen and ask for a user name.</p>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py function">
|
||||
<dt id="evennia.contrib.menu_login.node_enter_password">
|
||||
<code class="sig-prename descclassname">evennia.contrib.menu_login.</code><code class="sig-name descname">node_enter_password</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">caller</span></em>, <em class="sig-param"><span class="n">raw_string</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/contrib/menu_login.html#node_enter_password"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.contrib.menu_login.node_enter_password" title="Permalink to this definition">¶</a></dt>
|
||||
<dd><p>Handle password input.</p>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py function">
|
||||
<dt id="evennia.contrib.menu_login.node_quit_or_login">
|
||||
<code class="sig-prename descclassname">evennia.contrib.menu_login.</code><code class="sig-name descname">node_quit_or_login</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">caller</span></em>, <em class="sig-param"><span class="n">raw_text</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/contrib/menu_login.html#node_quit_or_login"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.contrib.menu_login.node_quit_or_login" title="Permalink to this definition">¶</a></dt>
|
||||
<dd><p>Exit menu, either by disconnecting or logging in.</p>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py class">
|
||||
<dt id="evennia.contrib.menu_login.UnloggedinCmdSet">
|
||||
<em class="property">class </em><code class="sig-prename descclassname">evennia.contrib.menu_login.</code><code class="sig-name descname">UnloggedinCmdSet</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">cmdsetobj</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">key</span><span class="o">=</span><span class="default_value">None</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/contrib/menu_login.html#UnloggedinCmdSet"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.contrib.menu_login.UnloggedinCmdSet" title="Permalink to this definition">¶</a></dt>
|
||||
<dd><p>Bases: <a class="reference internal" href="evennia.commands.cmdset.html#evennia.commands.cmdset.CmdSet" title="evennia.commands.cmdset.CmdSet"><code class="xref py py-class docutils literal notranslate"><span class="pre">evennia.commands.cmdset.CmdSet</span></code></a></p>
|
||||
<p>Cmdset for the unloggedin state</p>
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.menu_login.UnloggedinCmdSet.key">
|
||||
<code class="sig-name descname">key</code><em class="property"> = 'DefaultUnloggedin'</em><a class="headerlink" href="#evennia.contrib.menu_login.UnloggedinCmdSet.key" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.menu_login.UnloggedinCmdSet.priority">
|
||||
<code class="sig-name descname">priority</code><em class="property"> = 0</em><a class="headerlink" href="#evennia.contrib.menu_login.UnloggedinCmdSet.priority" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py method">
|
||||
<dt id="evennia.contrib.menu_login.UnloggedinCmdSet.at_cmdset_creation">
|
||||
<code class="sig-name descname">at_cmdset_creation</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/contrib/menu_login.html#UnloggedinCmdSet.at_cmdset_creation"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.contrib.menu_login.UnloggedinCmdSet.at_cmdset_creation" title="Permalink to this definition">¶</a></dt>
|
||||
<dd><p>Called when cmdset is first created.</p>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.menu_login.UnloggedinCmdSet.path">
|
||||
<code class="sig-name descname">path</code><em class="property"> = 'evennia.contrib.menu_login.UnloggedinCmdSet'</em><a class="headerlink" href="#evennia.contrib.menu_login.UnloggedinCmdSet.path" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py class">
|
||||
<dt id="evennia.contrib.menu_login.CmdUnloggedinLook">
|
||||
<em class="property">class </em><code class="sig-prename descclassname">evennia.contrib.menu_login.</code><code class="sig-name descname">CmdUnloggedinLook</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/contrib/menu_login.html#CmdUnloggedinLook"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.contrib.menu_login.CmdUnloggedinLook" title="Permalink to this definition">¶</a></dt>
|
||||
<dd><p>Bases: <a class="reference internal" href="evennia.commands.command.html#evennia.commands.command.Command" title="evennia.commands.command.Command"><code class="xref py py-class docutils literal notranslate"><span class="pre">evennia.commands.command.Command</span></code></a></p>
|
||||
<p>An unloggedin version of the look command. This is called by the server
|
||||
when the account first connects. It sets up the menu before handing off
|
||||
to the menu’s own look command.</p>
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.menu_login.CmdUnloggedinLook.key">
|
||||
<code class="sig-name descname">key</code><em class="property"> = '__unloggedin_look_command'</em><a class="headerlink" href="#evennia.contrib.menu_login.CmdUnloggedinLook.key" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.menu_login.CmdUnloggedinLook.locks">
|
||||
<code class="sig-name descname">locks</code><em class="property"> = 'cmd:all()'</em><a class="headerlink" href="#evennia.contrib.menu_login.CmdUnloggedinLook.locks" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.menu_login.CmdUnloggedinLook.arg_regex">
|
||||
<code class="sig-name descname">arg_regex</code><em class="property"> = re.compile('^$', re.IGNORECASE)</em><a class="headerlink" href="#evennia.contrib.menu_login.CmdUnloggedinLook.arg_regex" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py method">
|
||||
<dt id="evennia.contrib.menu_login.CmdUnloggedinLook.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/contrib/menu_login.html#CmdUnloggedinLook.func"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.contrib.menu_login.CmdUnloggedinLook.func" title="Permalink to this definition">¶</a></dt>
|
||||
<dd><p>Run the menu using the nodes in this module.</p>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.menu_login.CmdUnloggedinLook.aliases">
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = []</em><a class="headerlink" href="#evennia.contrib.menu_login.CmdUnloggedinLook.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.menu_login.CmdUnloggedinLook.help_category">
|
||||
<code class="sig-name descname">help_category</code><em class="property"> = 'general'</em><a class="headerlink" href="#evennia.contrib.menu_login.CmdUnloggedinLook.help_category" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.menu_login.CmdUnloggedinLook.lock_storage">
|
||||
<code class="sig-name descname">lock_storage</code><em class="property"> = 'cmd:all()'</em><a class="headerlink" href="#evennia.contrib.menu_login.CmdUnloggedinLook.lock_storage" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
</dd></dl>
|
||||
|
||||
<div class="section" id="evennia-contrib-menu-login">
|
||||
<h1>evennia.contrib.menu_login<a class="headerlink" href="#evennia-contrib-menu-login" title="Permalink to this headline">¶</a></h1>
|
||||
</div>
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -559,7 +559,7 @@ if there are still any actions you can take.</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.turnbattle.tb_basic.CmdPass.aliases">
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['wait', 'hold']</em><a class="headerlink" href="#evennia.contrib.turnbattle.tb_basic.CmdPass.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['hold', 'wait']</em><a class="headerlink" href="#evennia.contrib.turnbattle.tb_basic.CmdPass.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
|
|||
|
|
@ -676,7 +676,7 @@ if there are still any actions you can take.</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.turnbattle.tb_equip.CmdPass.aliases">
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['wait', 'hold']</em><a class="headerlink" href="#evennia.contrib.turnbattle.tb_equip.CmdPass.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['hold', 'wait']</em><a class="headerlink" href="#evennia.contrib.turnbattle.tb_equip.CmdPass.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
|
|||
|
|
@ -710,7 +710,7 @@ if there are still any actions you can take.</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.turnbattle.tb_items.CmdPass.aliases">
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['wait', 'hold']</em><a class="headerlink" href="#evennia.contrib.turnbattle.tb_items.CmdPass.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['hold', 'wait']</em><a class="headerlink" href="#evennia.contrib.turnbattle.tb_items.CmdPass.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
|
|||
|
|
@ -582,7 +582,7 @@ if there are still any actions you can take.</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.turnbattle.tb_magic.CmdPass.aliases">
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['wait', 'hold']</em><a class="headerlink" href="#evennia.contrib.turnbattle.tb_magic.CmdPass.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['hold', 'wait']</em><a class="headerlink" href="#evennia.contrib.turnbattle.tb_magic.CmdPass.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
|
|||
|
|
@ -994,7 +994,7 @@ if there are still any actions you can take.</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.turnbattle.tb_range.CmdPass.aliases">
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['wait', 'hold']</em><a class="headerlink" href="#evennia.contrib.turnbattle.tb_range.CmdPass.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['hold', 'wait']</em><a class="headerlink" href="#evennia.contrib.turnbattle.tb_range.CmdPass.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
|
|||
|
|
@ -104,7 +104,7 @@ push the lid of the button away.</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.tutorial_examples.cmdset_red_button.CmdPush.aliases">
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['push', 'press button', 'press']</em><a class="headerlink" href="#evennia.contrib.tutorial_examples.cmdset_red_button.CmdPush.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['press', 'press button', 'push']</em><a class="headerlink" href="#evennia.contrib.tutorial_examples.cmdset_red_button.CmdPush.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
@ -152,7 +152,7 @@ lid-state respectively.</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.tutorial_examples.cmdset_red_button.CmdSmashGlass.aliases">
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['break lid', 'smash', 'smash lid']</em><a class="headerlink" href="#evennia.contrib.tutorial_examples.cmdset_red_button.CmdSmashGlass.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['smash', 'break lid', 'smash lid']</em><a class="headerlink" href="#evennia.contrib.tutorial_examples.cmdset_red_button.CmdSmashGlass.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
@ -281,7 +281,7 @@ of causing the lamp to break.</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.tutorial_examples.cmdset_red_button.CmdBlindLook.aliases">
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['examine', 'l', 'get', 'ex', 'listen', 'feel']</em><a class="headerlink" href="#evennia.contrib.tutorial_examples.cmdset_red_button.CmdBlindLook.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['examine', 'listen', 'ex', 'get', 'feel', 'l']</em><a class="headerlink" href="#evennia.contrib.tutorial_examples.cmdset_red_button.CmdBlindLook.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
|
|||
|
|
@ -476,7 +476,7 @@ shift green root up/down</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.tutorial_world.objects.CmdShiftRoot.aliases">
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['shiftroot', 'push', 'pull', 'move']</em><a class="headerlink" href="#evennia.contrib.tutorial_world.objects.CmdShiftRoot.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['pull', 'move', 'push', 'shiftroot']</em><a class="headerlink" href="#evennia.contrib.tutorial_world.objects.CmdShiftRoot.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
@ -524,7 +524,7 @@ yellow/green - horizontal roots</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.tutorial_world.objects.CmdPressButton.aliases">
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['push button', 'press button', 'button']</em><a class="headerlink" href="#evennia.contrib.tutorial_world.objects.CmdPressButton.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['press button', 'push button', 'button']</em><a class="headerlink" href="#evennia.contrib.tutorial_world.objects.CmdPressButton.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
@ -689,7 +689,7 @@ parry - forgoes your attack but will make you harder to hit on next</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.tutorial_world.objects.CmdAttack.aliases">
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['slash', 'pierce', 'kill', 'bash', 'thrust', 'chop', 'hit', 'stab', 'parry', 'defend', 'fight']</em><a class="headerlink" href="#evennia.contrib.tutorial_world.objects.CmdAttack.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['thrust', 'pierce', 'bash', 'hit', 'fight', 'defend', 'stab', 'slash', 'parry', 'chop', 'kill']</em><a class="headerlink" href="#evennia.contrib.tutorial_world.objects.CmdAttack.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
|
|||
|
|
@ -672,7 +672,7 @@ if they fall off the bridge.</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.tutorial_world.rooms.CmdBridgeHelp.aliases">
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['?', 'h']</em><a class="headerlink" href="#evennia.contrib.tutorial_world.rooms.CmdBridgeHelp.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['h', '?']</em><a class="headerlink" href="#evennia.contrib.tutorial_world.rooms.CmdBridgeHelp.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
@ -819,7 +819,7 @@ to find something.</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.tutorial_world.rooms.CmdLookDark.aliases">
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['fiddle', 'l', 'search', 'feel around', 'feel']</em><a class="headerlink" href="#evennia.contrib.tutorial_world.rooms.CmdLookDark.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['search', 'feel', 'fiddle', 'l', 'feel around']</em><a class="headerlink" href="#evennia.contrib.tutorial_world.rooms.CmdLookDark.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
|
|||
|
|
@ -39,24 +39,21 @@
|
|||
<div class="section" id="module-evennia.utils.ansi">
|
||||
<span id="evennia-utils-ansi"></span><h1>evennia.utils.ansi<a class="headerlink" href="#module-evennia.utils.ansi" title="Permalink to this headline">¶</a></h1>
|
||||
<p>ANSI - Gives colour to text.</p>
|
||||
<p>Use the codes defined in ANSIPARSER in your text
|
||||
to apply colour to text according to the ANSI standard.</p>
|
||||
<p>Use the codes defined in ANSIPARSER in your text to apply colour to text
|
||||
according to the ANSI standard.</p>
|
||||
<p>Examples:</p>
|
||||
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="s2">"This is |rRed text|n and this is normal again."</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
<p>Mostly you should not need to call <strong>parse_ansi()</strong> explicitly;
|
||||
it is run by Evennia just before returning data to/from the
|
||||
user. Depreciated example forms are available by extending
|
||||
the ansi mapping.</p>
|
||||
<p>Mostly you should not need to call <strong>parse_ansi()</strong> explicitly; it is run by
|
||||
Evennia just before returning data to/from the user. Depreciated example forms
|
||||
are available by extending the ansi mapping.</p>
|
||||
<dl class="py class">
|
||||
<dt id="evennia.utils.ansi.ANSIParser">
|
||||
<em class="property">class </em><code class="sig-prename descclassname">evennia.utils.ansi.</code><code class="sig-name descname">ANSIParser</code><a class="reference internal" href="../_modules/evennia/utils/ansi.html#ANSIParser"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.utils.ansi.ANSIParser" 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>A class that parses ANSI markup
|
||||
to ANSI command sequences</p>
|
||||
<p>We also allow to escape colour codes
|
||||
by prepending with an extra <a href="#id1"><span class="problematic" id="id2">|</span></a>.</p>
|
||||
<p>A class that parses ANSI markup to ANSI command sequences.</p>
|
||||
<p>We also allow to escape colour codes by prepending with an extra <strong>|</strong>.</p>
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.utils.ansi.ANSIParser.ansi_map">
|
||||
<code class="sig-name descname">ansi_map</code><em class="property"> = [('|n', '\x1b[0m'), ('|/', '\r\n'), ('|-', '\t'), ('|>', ' '), ('|_', ' '), ('|*', '\x1b[7m'), ('|^', '\x1b[5m'), ('|u', '\x1b[4m'), ('|r', '\x1b[1m\x1b[31m'), ('|g', '\x1b[1m\x1b[32m'), ('|y', '\x1b[1m\x1b[33m'), ('|b', '\x1b[1m\x1b[34m'), ('|m', '\x1b[1m\x1b[35m'), ('|c', '\x1b[1m\x1b[36m'), ('|w', '\x1b[1m\x1b[37m'), ('|x', '\x1b[1m\x1b[30m'), ('|R', '\x1b[22m\x1b[31m'), ('|G', '\x1b[22m\x1b[32m'), ('|Y', '\x1b[22m\x1b[33m'), ('|B', '\x1b[22m\x1b[34m'), ('|M', '\x1b[22m\x1b[35m'), ('|C', '\x1b[22m\x1b[36m'), ('|W', '\x1b[22m\x1b[37m'), ('|X', '\x1b[22m\x1b[30m'), ('|h', '\x1b[1m'), ('|H', '\x1b[22m'), ('|!R', '\x1b[31m'), ('|!G', '\x1b[32m'), ('|!Y', '\x1b[33m'), ('|!B', '\x1b[34m'), ('|!M', '\x1b[35m'), ('|!C', '\x1b[36m'), ('|!W', '\x1b[37m'), ('|!X', '\x1b[30m'), ('|[R', '\x1b[41m'), ('|[G', '\x1b[42m'), ('|[Y', '\x1b[43m'), ('|[B', '\x1b[44m'), ('|[M', '\x1b[45m'), ('|[C', '\x1b[46m'), ('|[W', '\x1b[47m'), ('|[X', '\x1b[40m')]</em><a class="headerlink" href="#evennia.utils.ansi.ANSIParser.ansi_map" title="Permalink to this definition">¶</a></dt>
|
||||
|
|
|
|||
|
|
@ -79,12 +79,9 @@ target.</p></li>
|
|||
<li><p><strong>nohome</strong> (<em>bool</em>) – This allows the creation of objects without a
|
||||
default home location; only used when creating the default
|
||||
location itself or during unittests.</p></li>
|
||||
<li><p><strong>attributes</strong> (<a class="reference internal" href="evennia.contrib.barter.html#evennia.contrib.barter.TradeHandler.list" title="evennia.contrib.barter.TradeHandler.list"><em>list</em></a>) – <p>Tuples on the form (key, value) or (key, value, category),
|
||||
(key, value, lockstring) or (key, value, lockstring, default_access).</p>
|
||||
<blockquote>
|
||||
<div><p>to set as Attributes on the new object.</p>
|
||||
</div></blockquote>
|
||||
</p></li>
|
||||
<li><p><strong>attributes</strong> (<a class="reference internal" href="evennia.contrib.barter.html#evennia.contrib.barter.TradeHandler.list" title="evennia.contrib.barter.TradeHandler.list"><em>list</em></a>) – Tuples on the form (key, value) or (key, value, category),
|
||||
(key, value, lockstring) or (key, value, lockstring, default_access).
|
||||
to set as Attributes on the new object.</p></li>
|
||||
<li><p><strong>nattributes</strong> (<a class="reference internal" href="evennia.contrib.barter.html#evennia.contrib.barter.TradeHandler.list" title="evennia.contrib.barter.TradeHandler.list"><em>list</em></a>) – Non-persistent tuples on the form (key, value). Note that
|
||||
adding this rarely makes sense since this data will not survive a reload.</p></li>
|
||||
</ul>
|
||||
|
|
@ -93,8 +90,10 @@ adding this rarely makes sense since this data will not survive a reload.</p></l
|
|||
<dd class="field-even"><p><em>object (Object)</em> – A newly created object of the given typeclass.</p>
|
||||
</dd>
|
||||
<dt class="field-odd">Raises</dt>
|
||||
<dd class="field-odd"><p><a class="reference internal" href="evennia.objects.models.html#evennia.objects.models.ObjectDB.DoesNotExist" title="evennia.objects.models.ObjectDB.DoesNotExist"><strong>ObjectDB.DoesNotExist</strong></a> – If trying to create an Object with
|
||||
<strong>location</strong> or <strong>home</strong> that can’t be found.</p>
|
||||
<dd class="field-odd"><ul class="simple">
|
||||
<li><p><a class="reference internal" href="evennia.objects.models.html#evennia.objects.models.ObjectDB.DoesNotExist" title="evennia.objects.models.ObjectDB.DoesNotExist"><strong>ObjectDB.DoesNotExist</strong></a> – If trying to create an Object with</p></li>
|
||||
<li><p><strong>location</strong> – </p></li>
|
||||
</ul>
|
||||
</dd>
|
||||
</dl>
|
||||
</dd></dl>
|
||||
|
|
|
|||
|
|
@ -264,7 +264,7 @@ indentation.</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.utils.eveditor.CmdEditorGroup.aliases">
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = [':UU', ':fi', ':p', ':!', ':=', ':u', ':fd', ':>', ':h', ':w', ':uu', ':s', ':y', ':dd', ':x', ':q', ':S', ':A', ':f', ':echo', ':r', ':::', ':wq', ':', '::', ':j', ':I', ':<', ':DD', ':q!', ':i', ':dw']</em><a class="headerlink" href="#evennia.utils.eveditor.CmdEditorGroup.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = [':I', ':=', ':fd', '::', ':fi', ':echo', ':>', ':', ':u', ':s', ':dd', ':uu', ':p', ':A', ':f', ':UU', ':<', ':wq', ':q', ':!', ':i', ':::', ':S', ':h', ':q!', ':dw', ':y', ':w', ':DD', ':r', ':x', ':j']</em><a class="headerlink" href="#evennia.utils.eveditor.CmdEditorGroup.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
|
|||
|
|
@ -74,7 +74,7 @@ the <strong>caller.msg()</strong> construct every time the page is updated.</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.utils.evmore.CmdMore.aliases">
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['next', 't', 'end', 'q', 'top', 'a', 'e', 'b', 'abort', 'n', 'back', 'quit']</em><a class="headerlink" href="#evennia.utils.evmore.CmdMore.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['a', 'n', 'e', 'next', 'abort', 'quit', 'q', 't', 'end', 'top', 'b', 'back']</em><a class="headerlink" href="#evennia.utils.evmore.CmdMore.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
|
|||
|
|
@ -308,7 +308,7 @@ lines of the previous log to the start of the new log, in order
|
|||
to preserve a continuous chat history for channel log files.</p>
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.utils.logger.EvenniaLogFile.settings">
|
||||
<code class="sig-name descname">settings</code><em class="property"> = <LazySettings "server.conf.settings"></em><a class="headerlink" href="#evennia.utils.logger.EvenniaLogFile.settings" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">settings</code><em class="property"> = <LazySettings "evennia.settings_default"></em><a class="headerlink" href="#evennia.utils.logger.EvenniaLogFile.settings" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
|
|||
|
|
@ -937,7 +937,7 @@ importing directly from <strong>path</strong> doesn’t work.</p></li>
|
|||
|
||||
<dl class="py function">
|
||||
<dt id="evennia.utils.utils.class_from_module">
|
||||
<code class="sig-prename descclassname">evennia.utils.utils.</code><code class="sig-name descname">class_from_module</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">path</span></em>, <em class="sig-param"><span class="n">defaultpaths</span><span class="o">=</span><span class="default_value">None</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/utils/utils.html#class_from_module"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.utils.utils.class_from_module" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-prename descclassname">evennia.utils.utils.</code><code class="sig-name descname">class_from_module</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">path</span></em>, <em class="sig-param"><span class="n">defaultpaths</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">fallback</span><span class="o">=</span><span class="default_value">None</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/utils/utils.html#class_from_module"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.utils.utils.class_from_module" title="Permalink to this definition">¶</a></dt>
|
||||
<dd><p>Return a class from a module, given the module’s path. This is
|
||||
primarily used to convert db_typeclass_path:s to classes.</p>
|
||||
<dl class="field-list simple">
|
||||
|
|
@ -946,6 +946,10 @@ primarily used to convert db_typeclass_path:s to classes.</p>
|
|||
<li><p><strong>path</strong> (<em>str</em>) – Full Python dot-path to module.</p></li>
|
||||
<li><p><strong>defaultpaths</strong> (<em>iterable</em><em>, </em><em>optional</em>) – If a direct import from <strong>path</strong> fails,
|
||||
try subsequent imports by prepending those paths to <strong>path</strong>.</p></li>
|
||||
<li><p><strong>fallback</strong> (<em>str</em>) – If all other attempts fail, use this path as a fallback.
|
||||
This is intended as a last-resport. In the example of Evennia
|
||||
loading, this would be a path to a default parent class in the
|
||||
evennia repo itself.</p></li>
|
||||
</ul>
|
||||
</dd>
|
||||
<dt class="field-even">Returns</dt>
|
||||
|
|
@ -959,7 +963,7 @@ try subsequent imports by prepending those paths to <strong>path</strong>.</p></
|
|||
|
||||
<dl class="py function">
|
||||
<dt id="evennia.utils.utils.object_from_module">
|
||||
<code class="sig-prename descclassname">evennia.utils.utils.</code><code class="sig-name descname">object_from_module</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">path</span></em>, <em class="sig-param"><span class="n">defaultpaths</span><span class="o">=</span><span class="default_value">None</span></em><span class="sig-paren">)</span><a class="headerlink" href="#evennia.utils.utils.object_from_module" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-prename descclassname">evennia.utils.utils.</code><code class="sig-name descname">object_from_module</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">path</span></em>, <em class="sig-param"><span class="n">defaultpaths</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">fallback</span><span class="o">=</span><span class="default_value">None</span></em><span class="sig-paren">)</span><a class="headerlink" href="#evennia.utils.utils.object_from_module" title="Permalink to this definition">¶</a></dt>
|
||||
<dd><p>Return a class from a module, given the module’s path. This is
|
||||
primarily used to convert db_typeclass_path:s to classes.</p>
|
||||
<dl class="field-list simple">
|
||||
|
|
@ -968,6 +972,10 @@ primarily used to convert db_typeclass_path:s to classes.</p>
|
|||
<li><p><strong>path</strong> (<em>str</em>) – Full Python dot-path to module.</p></li>
|
||||
<li><p><strong>defaultpaths</strong> (<em>iterable</em><em>, </em><em>optional</em>) – If a direct import from <strong>path</strong> fails,
|
||||
try subsequent imports by prepending those paths to <strong>path</strong>.</p></li>
|
||||
<li><p><strong>fallback</strong> (<em>str</em>) – If all other attempts fail, use this path as a fallback.
|
||||
This is intended as a last-resport. In the example of Evennia
|
||||
loading, this would be a path to a default parent class in the
|
||||
evennia repo itself.</p></li>
|
||||
</ul>
|
||||
</dd>
|
||||
<dt class="field-even">Returns</dt>
|
||||
|
|
|
|||
|
|
@ -93,7 +93,7 @@ the form.</p>
|
|||
<dl class="py attribute">
|
||||
<dt id="evennia.web.website.forms.AccountForm.Meta.model">
|
||||
<code class="sig-name descname">model</code><a class="headerlink" href="#evennia.web.website.forms.AccountForm.Meta.model" title="Permalink to this definition">¶</a></dt>
|
||||
<dd><p>alias of <code class="xref py py-class docutils literal notranslate"><span class="pre">typeclasses.accounts.Account</span></code></p>
|
||||
<dd><p>alias of <a class="reference internal" href="evennia.accounts.accounts.html#evennia.accounts.accounts.DefaultAccount" title="evennia.accounts.accounts.DefaultAccount"><code class="xref py py-class docutils literal notranslate"><span class="pre">evennia.accounts.accounts.DefaultAccount</span></code></a></p>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
@ -145,7 +145,7 @@ the form.</p>
|
|||
<dl class="py attribute">
|
||||
<dt id="evennia.web.website.forms.ObjectForm.Meta.model">
|
||||
<code class="sig-name descname">model</code><a class="headerlink" href="#evennia.web.website.forms.ObjectForm.Meta.model" title="Permalink to this definition">¶</a></dt>
|
||||
<dd><p>alias of <code class="xref py py-class docutils literal notranslate"><span class="pre">typeclasses.objects.Object</span></code></p>
|
||||
<dd><p>alias of <a class="reference internal" href="evennia.objects.objects.html#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>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
@ -216,7 +216,7 @@ the form.</p>
|
|||
<dl class="py attribute">
|
||||
<dt id="evennia.web.website.forms.CharacterForm.Meta.model">
|
||||
<code class="sig-name descname">model</code><a class="headerlink" href="#evennia.web.website.forms.CharacterForm.Meta.model" title="Permalink to this definition">¶</a></dt>
|
||||
<dd><p>alias of <code class="xref py py-class docutils literal notranslate"><span class="pre">typeclasses.characters.Character</span></code></p>
|
||||
<dd><p>alias of <a class="reference internal" href="evennia.objects.objects.html#evennia.objects.objects.DefaultCharacter" title="evennia.objects.objects.DefaultCharacter"><code class="xref py py-class docutils literal notranslate"><span class="pre">evennia.objects.objects.DefaultCharacter</span></code></a></p>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
|
|||
|
|
@ -193,7 +193,7 @@ permissions to actually <em>do</em> things to it.</p>
|
|||
<dl class="py attribute">
|
||||
<dt id="evennia.web.website.views.ObjectDetailView.model">
|
||||
<code class="sig-name descname">model</code><a class="headerlink" href="#evennia.web.website.views.ObjectDetailView.model" title="Permalink to this definition">¶</a></dt>
|
||||
<dd><p>alias of <code class="xref py py-class docutils literal notranslate"><span class="pre">typeclasses.objects.Object</span></code></p>
|
||||
<dd><p>alias of <a class="reference internal" href="evennia.objects.objects.html#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>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
@ -250,7 +250,7 @@ default title for the page.</p>
|
|||
<dl class="py attribute">
|
||||
<dt id="evennia.web.website.views.ObjectCreateView.model">
|
||||
<code class="sig-name descname">model</code><a class="headerlink" href="#evennia.web.website.views.ObjectCreateView.model" title="Permalink to this definition">¶</a></dt>
|
||||
<dd><p>alias of <code class="xref py py-class docutils literal notranslate"><span class="pre">typeclasses.objects.Object</span></code></p>
|
||||
<dd><p>alias of <a class="reference internal" href="evennia.objects.objects.html#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>
|
||||
</dd></dl>
|
||||
|
||||
</dd></dl>
|
||||
|
|
@ -267,7 +267,7 @@ permissions to delete the requested object.</p>
|
|||
<dl class="py attribute">
|
||||
<dt id="evennia.web.website.views.ObjectDeleteView.model">
|
||||
<code class="sig-name descname">model</code><a class="headerlink" href="#evennia.web.website.views.ObjectDeleteView.model" title="Permalink to this definition">¶</a></dt>
|
||||
<dd><p>alias of <code class="xref py py-class docutils literal notranslate"><span class="pre">typeclasses.objects.Object</span></code></p>
|
||||
<dd><p>alias of <a class="reference internal" href="evennia.objects.objects.html#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>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
@ -304,7 +304,7 @@ it does not update core model fields, <em>only</em> object attributes!</p>
|
|||
<dl class="py attribute">
|
||||
<dt id="evennia.web.website.views.ObjectUpdateView.model">
|
||||
<code class="sig-name descname">model</code><a class="headerlink" href="#evennia.web.website.views.ObjectUpdateView.model" title="Permalink to this definition">¶</a></dt>
|
||||
<dd><p>alias of <code class="xref py py-class docutils literal notranslate"><span class="pre">typeclasses.objects.Object</span></code></p>
|
||||
<dd><p>alias of <a class="reference internal" href="evennia.objects.objects.html#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>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
@ -363,7 +363,7 @@ with Account objects instead of generic Objects or otherwise.</p>
|
|||
<dl class="py attribute">
|
||||
<dt id="evennia.web.website.views.AccountMixin.model">
|
||||
<code class="sig-name descname">model</code><a class="headerlink" href="#evennia.web.website.views.AccountMixin.model" title="Permalink to this definition">¶</a></dt>
|
||||
<dd><p>alias of <code class="xref py py-class docutils literal notranslate"><span class="pre">typeclasses.accounts.Account</span></code></p>
|
||||
<dd><p>alias of <a class="reference internal" href="evennia.accounts.accounts.html#evennia.accounts.accounts.DefaultAccount" title="evennia.accounts.accounts.DefaultAccount"><code class="xref py py-class docutils literal notranslate"><span class="pre">evennia.accounts.accounts.DefaultAccount</span></code></a></p>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
@ -386,7 +386,7 @@ with Account objects instead of generic Objects or otherwise.</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.web.website.views.AccountCreateView.success_url">
|
||||
<code class="sig-name descname">success_url</code><em class="property"> = '/auth/login/'</em><a class="headerlink" href="#evennia.web.website.views.AccountCreateView.success_url" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">success_url</code><a class="headerlink" href="#evennia.web.website.views.AccountCreateView.success_url" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py method">
|
||||
|
|
@ -410,7 +410,7 @@ with Character objects instead of generic Objects or otherwise.</p>
|
|||
<dl class="py attribute">
|
||||
<dt id="evennia.web.website.views.CharacterMixin.model">
|
||||
<code class="sig-name descname">model</code><a class="headerlink" href="#evennia.web.website.views.CharacterMixin.model" title="Permalink to this definition">¶</a></dt>
|
||||
<dd><p>alias of <code class="xref py py-class docutils literal notranslate"><span class="pre">typeclasses.characters.Character</span></code></p>
|
||||
<dd><p>alias of <a class="reference internal" href="evennia.objects.objects.html#evennia.objects.objects.DefaultCharacter" title="evennia.objects.objects.DefaultCharacter"><code class="xref py py-class docutils literal notranslate"><span class="pre">evennia.objects.objects.DefaultCharacter</span></code></a></p>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
@ -421,7 +421,7 @@ with Character objects instead of generic Objects or otherwise.</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.web.website.views.CharacterMixin.success_url">
|
||||
<code class="sig-name descname">success_url</code><em class="property"> = '/characters/manage/'</em><a class="headerlink" href="#evennia.web.website.views.CharacterMixin.success_url" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">success_url</code><a class="headerlink" href="#evennia.web.website.views.CharacterMixin.success_url" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py method">
|
||||
|
|
@ -622,7 +622,7 @@ with HelpEntry objects instead of generic Objects or otherwise.</p>
|
|||
<dl class="py attribute">
|
||||
<dt id="evennia.web.website.views.ChannelMixin.model">
|
||||
<code class="sig-name descname">model</code><a class="headerlink" href="#evennia.web.website.views.ChannelMixin.model" title="Permalink to this definition">¶</a></dt>
|
||||
<dd><p>alias of <code class="xref py py-class docutils literal notranslate"><span class="pre">typeclasses.channels.Channel</span></code></p>
|
||||
<dd><p>alias of <a class="reference internal" href="evennia.comms.comms.html#evennia.comms.comms.DefaultChannel" title="evennia.comms.comms.DefaultChannel"><code class="xref py py-class docutils literal notranslate"><span class="pre">evennia.comms.comms.DefaultChannel</span></code></a></p>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
|
|||
|
|
@ -844,10 +844,6 @@
|
|||
<li><a href="api/evennia.contrib.mail.html#evennia.contrib.mail.CmdMail.aliases">(evennia.contrib.mail.CmdMail attribute)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.mail.html#evennia.contrib.mail.CmdMailCharacter.aliases">(evennia.contrib.mail.CmdMailCharacter attribute)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.mapbuilder.html#evennia.contrib.mapbuilder.CmdMapBuilder.aliases">(evennia.contrib.mapbuilder.CmdMapBuilder attribute)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.menu_login.html#evennia.contrib.menu_login.CmdUnloggedinLook.aliases">(evennia.contrib.menu_login.CmdUnloggedinLook attribute)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.multidescer.html#evennia.contrib.multidescer.CmdMultiDesc.aliases">(evennia.contrib.multidescer.CmdMultiDesc attribute)</a>
|
||||
</li>
|
||||
|
|
@ -1146,18 +1142,10 @@
|
|||
<li><a href="api/evennia.server.sessionhandler.html#evennia.server.sessionhandler.ServerSessionHandler.announce_all">(evennia.server.sessionhandler.ServerSessionHandler method)</a>
|
||||
</li>
|
||||
</ul></li>
|
||||
<li><a href="api/evennia.contrib.ingame_python.typeclasses.html#evennia.contrib.ingame_python.typeclasses.EventCharacter.announce_move_from">announce_move_from() (evennia.contrib.ingame_python.typeclasses.EventCharacter method)</a>
|
||||
|
||||
<ul>
|
||||
<li><a href="api/evennia.objects.objects.html#evennia.objects.objects.DefaultObject.announce_move_from">(evennia.objects.objects.DefaultObject method)</a>
|
||||
<li><a href="api/evennia.objects.objects.html#evennia.objects.objects.DefaultObject.announce_move_from">announce_move_from() (evennia.objects.objects.DefaultObject method)</a>
|
||||
</li>
|
||||
</ul></li>
|
||||
<li><a href="api/evennia.contrib.ingame_python.typeclasses.html#evennia.contrib.ingame_python.typeclasses.EventCharacter.announce_move_to">announce_move_to() (evennia.contrib.ingame_python.typeclasses.EventCharacter method)</a>
|
||||
|
||||
<ul>
|
||||
<li><a href="api/evennia.objects.objects.html#evennia.objects.objects.DefaultObject.announce_move_to">(evennia.objects.objects.DefaultObject method)</a>
|
||||
<li><a href="api/evennia.objects.objects.html#evennia.objects.objects.DefaultObject.announce_move_to">announce_move_to() (evennia.objects.objects.DefaultObject method)</a>
|
||||
</li>
|
||||
</ul></li>
|
||||
<li><a href="api/evennia.utils.ansi.html#evennia.utils.ansi.ANSIParser.ansi_escapes">ansi_escapes (evennia.utils.ansi.ANSIParser attribute)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.utils.ansi.html#evennia.utils.ansi.ANSIParser.ansi_map">ansi_map (evennia.utils.ansi.ANSIParser attribute)</a>
|
||||
|
|
@ -1244,8 +1232,6 @@
|
|||
<li><a href="api/evennia.contrib.clothing.html#evennia.contrib.clothing.CmdGive.arg_regex">(evennia.contrib.clothing.CmdGive attribute)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.clothing.html#evennia.contrib.clothing.CmdInventory.arg_regex">(evennia.contrib.clothing.CmdInventory attribute)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.menu_login.html#evennia.contrib.menu_login.CmdUnloggedinLook.arg_regex">(evennia.contrib.menu_login.CmdUnloggedinLook attribute)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.utils.eveditor.html#evennia.utils.eveditor.CmdEditorGroup.arg_regex">(evennia.utils.eveditor.CmdEditorGroup attribute)</a>
|
||||
</li>
|
||||
|
|
@ -1300,11 +1286,9 @@
|
|||
</ul></li>
|
||||
<li><a href="api/evennia.accounts.accounts.html#evennia.accounts.accounts.DefaultAccount.at_account_creation">at_account_creation() (evennia.accounts.accounts.DefaultAccount method)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.ingame_python.typeclasses.html#evennia.contrib.ingame_python.typeclasses.EventCharacter.at_after_move">at_after_move() (evennia.contrib.ingame_python.typeclasses.EventCharacter method)</a>
|
||||
<li><a href="api/evennia.objects.objects.html#evennia.objects.objects.DefaultCharacter.at_after_move">at_after_move() (evennia.objects.objects.DefaultCharacter method)</a>
|
||||
|
||||
<ul>
|
||||
<li><a href="api/evennia.objects.objects.html#evennia.objects.objects.DefaultCharacter.at_after_move">(evennia.objects.objects.DefaultCharacter method)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.objects.objects.html#evennia.objects.objects.DefaultObject.at_after_move">(evennia.objects.objects.DefaultObject method)</a>
|
||||
</li>
|
||||
</ul></li>
|
||||
|
|
@ -1338,11 +1322,9 @@
|
|||
<li><a href="api/evennia.objects.objects.html#evennia.objects.objects.DefaultObject.at_before_give">(evennia.objects.objects.DefaultObject method)</a>
|
||||
</li>
|
||||
</ul></li>
|
||||
<li><a href="api/evennia.contrib.ingame_python.typeclasses.html#evennia.contrib.ingame_python.typeclasses.EventCharacter.at_before_move">at_before_move() (evennia.contrib.ingame_python.typeclasses.EventCharacter method)</a>
|
||||
<li><a href="api/evennia.contrib.turnbattle.tb_basic.html#evennia.contrib.turnbattle.tb_basic.TBBasicCharacter.at_before_move">at_before_move() (evennia.contrib.turnbattle.tb_basic.TBBasicCharacter method)</a>
|
||||
|
||||
<ul>
|
||||
<li><a href="api/evennia.contrib.turnbattle.tb_basic.html#evennia.contrib.turnbattle.tb_basic.TBBasicCharacter.at_before_move">(evennia.contrib.turnbattle.tb_basic.TBBasicCharacter method)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.turnbattle.tb_equip.html#evennia.contrib.turnbattle.tb_equip.TBEquipCharacter.at_before_move">(evennia.contrib.turnbattle.tb_equip.TBEquipCharacter method)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.turnbattle.tb_items.html#evennia.contrib.turnbattle.tb_items.TBItemsCharacter.at_before_move">(evennia.contrib.turnbattle.tb_items.TBItemsCharacter method)</a>
|
||||
|
|
@ -1354,11 +1336,9 @@
|
|||
<li><a href="api/evennia.objects.objects.html#evennia.objects.objects.DefaultObject.at_before_move">(evennia.objects.objects.DefaultObject method)</a>
|
||||
</li>
|
||||
</ul></li>
|
||||
<li><a href="api/evennia.contrib.ingame_python.typeclasses.html#evennia.contrib.ingame_python.typeclasses.EventCharacter.at_before_say">at_before_say() (evennia.contrib.ingame_python.typeclasses.EventCharacter method)</a>
|
||||
<li><a href="api/evennia.contrib.rpsystem.html#evennia.contrib.rpsystem.ContribRPCharacter.at_before_say">at_before_say() (evennia.contrib.rpsystem.ContribRPCharacter method)</a>
|
||||
|
||||
<ul>
|
||||
<li><a href="api/evennia.contrib.rpsystem.html#evennia.contrib.rpsystem.ContribRPCharacter.at_before_say">(evennia.contrib.rpsystem.ContribRPCharacter method)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.objects.objects.html#evennia.objects.objects.DefaultObject.at_before_say">(evennia.objects.objects.DefaultObject method)</a>
|
||||
</li>
|
||||
</ul></li>
|
||||
|
|
@ -1386,8 +1366,6 @@
|
|||
<li><a href="api/evennia.contrib.dice.html#evennia.contrib.dice.DiceCmdSet.at_cmdset_creation">(evennia.contrib.dice.DiceCmdSet method)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.extended_room.html#evennia.contrib.extended_room.ExtendedRoomCmdSet.at_cmdset_creation">(evennia.contrib.extended_room.ExtendedRoomCmdSet method)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.menu_login.html#evennia.contrib.menu_login.UnloggedinCmdSet.at_cmdset_creation">(evennia.contrib.menu_login.UnloggedinCmdSet method)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.puzzles.html#evennia.contrib.puzzles.PuzzleSystemCmdSet.at_cmdset_creation">(evennia.contrib.puzzles.PuzzleSystemCmdSet method)</a>
|
||||
</li>
|
||||
|
|
@ -1484,11 +1462,9 @@
|
|||
<li><a href="api/evennia.server.serversession.html#evennia.server.serversession.ServerSession.at_disconnect">(evennia.server.serversession.ServerSession method)</a>
|
||||
</li>
|
||||
</ul></li>
|
||||
<li><a href="api/evennia.contrib.ingame_python.typeclasses.html#evennia.contrib.ingame_python.typeclasses.EventObject.at_drop">at_drop() (evennia.contrib.ingame_python.typeclasses.EventObject method)</a>
|
||||
<li><a href="api/evennia.contrib.turnbattle.tb_equip.html#evennia.contrib.turnbattle.tb_equip.TBEArmor.at_drop">at_drop() (evennia.contrib.turnbattle.tb_equip.TBEArmor method)</a>
|
||||
|
||||
<ul>
|
||||
<li><a href="api/evennia.contrib.turnbattle.tb_equip.html#evennia.contrib.turnbattle.tb_equip.TBEArmor.at_drop">(evennia.contrib.turnbattle.tb_equip.TBEArmor method)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.turnbattle.tb_equip.html#evennia.contrib.turnbattle.tb_equip.TBEWeapon.at_drop">(evennia.contrib.turnbattle.tb_equip.TBEWeapon method)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.turnbattle.tb_range.html#evennia.contrib.turnbattle.tb_range.TBRangeObject.at_drop">(evennia.contrib.turnbattle.tb_range.TBRangeObject method)</a>
|
||||
|
|
@ -1521,8 +1497,6 @@
|
|||
<li><a href="api/evennia.contrib.clothing.html#evennia.contrib.clothing.Clothing.at_get">at_get() (evennia.contrib.clothing.Clothing method)</a>
|
||||
|
||||
<ul>
|
||||
<li><a href="api/evennia.contrib.ingame_python.typeclasses.html#evennia.contrib.ingame_python.typeclasses.EventObject.at_get">(evennia.contrib.ingame_python.typeclasses.EventObject method)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.turnbattle.tb_range.html#evennia.contrib.turnbattle.tb_range.TBRangeObject.at_get">(evennia.contrib.turnbattle.tb_range.TBRangeObject method)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.objects.objects.html#evennia.objects.objects.DefaultObject.at_get">(evennia.objects.objects.DefaultObject method)</a>
|
||||
|
|
@ -1676,14 +1650,8 @@
|
|||
<li><a href="api/evennia.objects.objects.html#evennia.objects.objects.DefaultObject.at_object_creation">(evennia.objects.objects.DefaultObject method)</a>
|
||||
</li>
|
||||
</ul></li>
|
||||
<li><a href="api/evennia.contrib.ingame_python.typeclasses.html#evennia.contrib.ingame_python.typeclasses.EventCharacter.at_object_delete">at_object_delete() (evennia.contrib.ingame_python.typeclasses.EventCharacter method)</a>
|
||||
|
||||
<ul>
|
||||
<li><a href="api/evennia.contrib.ingame_python.typeclasses.html#evennia.contrib.ingame_python.typeclasses.EventRoom.at_object_delete">(evennia.contrib.ingame_python.typeclasses.EventRoom method)</a>
|
||||
<li><a href="api/evennia.objects.objects.html#evennia.objects.objects.DefaultObject.at_object_delete">at_object_delete() (evennia.objects.objects.DefaultObject method)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.objects.objects.html#evennia.objects.objects.DefaultObject.at_object_delete">(evennia.objects.objects.DefaultObject method)</a>
|
||||
</li>
|
||||
</ul></li>
|
||||
<li><a href="api/evennia.contrib.tutorial_world.rooms.html#evennia.contrib.tutorial_world.rooms.BridgeRoom.at_object_leave">at_object_leave() (evennia.contrib.tutorial_world.rooms.BridgeRoom method)</a>
|
||||
|
||||
<ul>
|
||||
|
|
@ -1730,11 +1698,9 @@
|
|||
</li>
|
||||
<li><a href="api/evennia.server.server.html#evennia.server.server.Evennia.at_post_portal_sync">at_post_portal_sync() (evennia.server.server.Evennia method)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.ingame_python.typeclasses.html#evennia.contrib.ingame_python.typeclasses.EventCharacter.at_post_puppet">at_post_puppet() (evennia.contrib.ingame_python.typeclasses.EventCharacter method)</a>
|
||||
<li><a href="api/evennia.objects.objects.html#evennia.objects.objects.DefaultCharacter.at_post_puppet">at_post_puppet() (evennia.objects.objects.DefaultCharacter method)</a>
|
||||
|
||||
<ul>
|
||||
<li><a href="api/evennia.objects.objects.html#evennia.objects.objects.DefaultCharacter.at_post_puppet">(evennia.objects.objects.DefaultCharacter method)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.objects.objects.html#evennia.objects.objects.DefaultObject.at_post_puppet">(evennia.objects.objects.DefaultObject method)</a>
|
||||
</li>
|
||||
</ul></li>
|
||||
|
|
@ -1758,12 +1724,8 @@
|
|||
<li><a href="api/evennia.objects.objects.html#evennia.objects.objects.DefaultObject.at_pre_puppet">(evennia.objects.objects.DefaultObject method)</a>
|
||||
</li>
|
||||
</ul></li>
|
||||
<li><a href="api/evennia.contrib.ingame_python.typeclasses.html#evennia.contrib.ingame_python.typeclasses.EventCharacter.at_pre_unpuppet">at_pre_unpuppet() (evennia.contrib.ingame_python.typeclasses.EventCharacter method)</a>
|
||||
|
||||
<ul>
|
||||
<li><a href="api/evennia.objects.objects.html#evennia.objects.objects.DefaultObject.at_pre_unpuppet">(evennia.objects.objects.DefaultObject method)</a>
|
||||
<li><a href="api/evennia.objects.objects.html#evennia.objects.objects.DefaultObject.at_pre_unpuppet">at_pre_unpuppet() (evennia.objects.objects.DefaultObject method)</a>
|
||||
</li>
|
||||
</ul></li>
|
||||
<li><a href="api/evennia.contrib.wilderness.html#evennia.contrib.wilderness.WildernessMapProvider.at_prepare_room">at_prepare_room() (evennia.contrib.wilderness.WildernessMapProvider method)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.typeclasses.models.html#evennia.typeclasses.models.TypedObject.at_rename">at_rename() (evennia.typeclasses.models.TypedObject method)</a>
|
||||
|
|
@ -1802,12 +1764,8 @@
|
|||
<li><a href="api/evennia.utils.gametime.html#evennia.utils.gametime.TimeScript.at_repeat">(evennia.utils.gametime.TimeScript method)</a>
|
||||
</li>
|
||||
</ul></li>
|
||||
<li><a href="api/evennia.contrib.ingame_python.typeclasses.html#evennia.contrib.ingame_python.typeclasses.EventCharacter.at_say">at_say() (evennia.contrib.ingame_python.typeclasses.EventCharacter method)</a>
|
||||
|
||||
<ul>
|
||||
<li><a href="api/evennia.objects.objects.html#evennia.objects.objects.DefaultObject.at_say">(evennia.objects.objects.DefaultObject method)</a>
|
||||
<li><a href="api/evennia.objects.objects.html#evennia.objects.objects.DefaultObject.at_say">at_say() (evennia.objects.objects.DefaultObject method)</a>
|
||||
</li>
|
||||
</ul></li>
|
||||
<li><a href="api/evennia.accounts.bots.html#evennia.accounts.bots.BotStarter.at_script_creation">at_script_creation() (evennia.accounts.bots.BotStarter method)</a>
|
||||
|
||||
<ul>
|
||||
|
|
@ -1944,11 +1902,9 @@
|
|||
<li><a href="api/evennia.server.session.html#evennia.server.session.Session.at_sync">(evennia.server.session.Session method)</a>
|
||||
</li>
|
||||
</ul></li>
|
||||
<li><a href="api/evennia.contrib.ingame_python.typeclasses.html#evennia.contrib.ingame_python.typeclasses.EventExit.at_traverse">at_traverse() (evennia.contrib.ingame_python.typeclasses.EventExit method)</a>
|
||||
<li><a href="api/evennia.contrib.slow_exit.html#evennia.contrib.slow_exit.SlowExit.at_traverse">at_traverse() (evennia.contrib.slow_exit.SlowExit method)</a>
|
||||
|
||||
<ul>
|
||||
<li><a href="api/evennia.contrib.slow_exit.html#evennia.contrib.slow_exit.SlowExit.at_traverse">(evennia.contrib.slow_exit.SlowExit method)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.wilderness.html#evennia.contrib.wilderness.WildernessExit.at_traverse">(evennia.contrib.wilderness.WildernessExit method)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.objects.objects.html#evennia.objects.objects.DefaultExit.at_traverse">(evennia.objects.objects.DefaultExit method)</a>
|
||||
|
|
@ -2189,8 +2145,6 @@
|
|||
<li><a href="api/evennia.utils.ansi.html#evennia.utils.ansi.ANSIParser.brightbg_sub">brightbg_sub (evennia.utils.ansi.ANSIParser attribute)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.server.portal.amp.html#evennia.server.portal.amp.AMPMultiConnectionProtocol.broadcast">broadcast() (evennia.server.portal.amp.AMPMultiConnectionProtocol method)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.mapbuilder.html#evennia.contrib.mapbuilder.build_map">build_map() (in module evennia.contrib.mapbuilder)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.commands.cmdparser.html#evennia.commands.cmdparser.build_matches">build_matches() (in module evennia.commands.cmdparser)</a>
|
||||
</li>
|
||||
|
|
@ -2266,16 +2220,6 @@
|
|||
</li>
|
||||
<li><a href="api/evennia.contrib.ingame_python.callbackhandler.html#evennia.contrib.ingame_python.callbackhandler.CallbackHandler">CallbackHandler (class in evennia.contrib.ingame_python.callbackhandler)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.ingame_python.typeclasses.html#evennia.contrib.ingame_python.typeclasses.EventCharacter.callbacks">callbacks (evennia.contrib.ingame_python.typeclasses.EventCharacter attribute)</a>
|
||||
|
||||
<ul>
|
||||
<li><a href="api/evennia.contrib.ingame_python.typeclasses.html#evennia.contrib.ingame_python.typeclasses.EventExit.callbacks">(evennia.contrib.ingame_python.typeclasses.EventExit attribute)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.ingame_python.typeclasses.html#evennia.contrib.ingame_python.typeclasses.EventObject.callbacks">(evennia.contrib.ingame_python.typeclasses.EventObject attribute)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.ingame_python.typeclasses.html#evennia.contrib.ingame_python.typeclasses.EventRoom.callbacks">(evennia.contrib.ingame_python.typeclasses.EventRoom attribute)</a>
|
||||
</li>
|
||||
</ul></li>
|
||||
<li><a href="api/evennia.utils.utils.html#evennia.utils.utils.calledby">calledby() (in module evennia.utils.utils)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.server.webserver.html#evennia.server.webserver.LockableThreadPool.callInThread">callInThread() (evennia.server.webserver.LockableThreadPool method)</a>
|
||||
|
|
@ -2790,14 +2734,14 @@
|
|||
</li>
|
||||
<li><a href="api/evennia.commands.default.tests.html#evennia.commands.default.tests.CmdInterrupt">CmdInterrupt (class in evennia.commands.default.tests)</a>
|
||||
</li>
|
||||
</ul></td>
|
||||
<td style="width: 33%; vertical-align: top;"><ul>
|
||||
<li><a href="api/evennia.commands.default.general.html#evennia.commands.default.general.CmdInventory">CmdInventory (class in evennia.commands.default.general)</a>
|
||||
|
||||
<ul>
|
||||
<li><a href="api/evennia.contrib.clothing.html#evennia.contrib.clothing.CmdInventory">(class in evennia.contrib.clothing)</a>
|
||||
</li>
|
||||
</ul></li>
|
||||
</ul></td>
|
||||
<td style="width: 33%; vertical-align: top;"><ul>
|
||||
<li><a href="api/evennia.commands.default.comms.html#evennia.commands.default.comms.CmdIRC2Chan">CmdIRC2Chan (class in evennia.commands.default.comms)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.commands.default.comms.html#evennia.commands.default.comms.CmdIRCStatus">CmdIRCStatus (class in evennia.commands.default.comms)</a>
|
||||
|
|
@ -2827,8 +2771,6 @@
|
|||
<li><a href="api/evennia.contrib.mail.html#evennia.contrib.mail.CmdMail">CmdMail (class in evennia.contrib.mail)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.mail.html#evennia.contrib.mail.CmdMailCharacter">CmdMailCharacter (class in evennia.contrib.mail)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.mapbuilder.html#evennia.contrib.mapbuilder.CmdMapBuilder">CmdMapBuilder (class in evennia.contrib.mapbuilder)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.rpsystem.html#evennia.contrib.rpsystem.CmdMask">CmdMask (class in evennia.contrib.rpsystem)</a>
|
||||
</li>
|
||||
|
|
@ -3095,8 +3037,6 @@
|
|||
<li><a href="api/evennia.contrib.clothing.html#evennia.contrib.clothing.CmdUncover">CmdUncover (class in evennia.contrib.clothing)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.commands.default.building.html#evennia.commands.default.building.CmdUnLink">CmdUnLink (class in evennia.commands.default.building)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.menu_login.html#evennia.contrib.menu_login.CmdUnloggedinLook">CmdUnloggedinLook (class in evennia.contrib.menu_login)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.turnbattle.tb_equip.html#evennia.contrib.turnbattle.tb_equip.CmdUnwield">CmdUnwield (class in evennia.contrib.turnbattle.tb_equip)</a>
|
||||
</li>
|
||||
|
|
@ -4478,13 +4418,6 @@
|
|||
|
||||
<ul>
|
||||
<li><a href="api/evennia.contrib.ingame_python.tests.html#module-evennia.contrib.ingame_python.tests">module</a>
|
||||
</li>
|
||||
</ul></li>
|
||||
<li>
|
||||
evennia.contrib.ingame_python.typeclasses
|
||||
|
||||
<ul>
|
||||
<li><a href="api/evennia.contrib.ingame_python.typeclasses.html#module-evennia.contrib.ingame_python.typeclasses">module</a>
|
||||
</li>
|
||||
</ul></li>
|
||||
<li>
|
||||
|
|
@ -4499,20 +4432,6 @@
|
|||
|
||||
<ul>
|
||||
<li><a href="api/evennia.contrib.mail.html#module-evennia.contrib.mail">module</a>
|
||||
</li>
|
||||
</ul></li>
|
||||
<li>
|
||||
evennia.contrib.mapbuilder
|
||||
|
||||
<ul>
|
||||
<li><a href="api/evennia.contrib.mapbuilder.html#module-evennia.contrib.mapbuilder">module</a>
|
||||
</li>
|
||||
</ul></li>
|
||||
<li>
|
||||
evennia.contrib.menu_login
|
||||
|
||||
<ul>
|
||||
<li><a href="api/evennia.contrib.menu_login.html#module-evennia.contrib.menu_login">module</a>
|
||||
</li>
|
||||
</ul></li>
|
||||
<li>
|
||||
|
|
@ -4900,6 +4819,8 @@
|
|||
<li><a href="api/evennia.scripts.monitorhandler.html#module-evennia.scripts.monitorhandler">module</a>
|
||||
</li>
|
||||
</ul></li>
|
||||
</ul></td>
|
||||
<td style="width: 33%; vertical-align: top;"><ul>
|
||||
<li>
|
||||
evennia.scripts.scripthandler
|
||||
|
||||
|
|
@ -4921,8 +4842,6 @@
|
|||
<li><a href="api/evennia.scripts.taskhandler.html#module-evennia.scripts.taskhandler">module</a>
|
||||
</li>
|
||||
</ul></li>
|
||||
</ul></td>
|
||||
<td style="width: 33%; vertical-align: top;"><ul>
|
||||
<li>
|
||||
evennia.scripts.tickerhandler
|
||||
|
||||
|
|
@ -5668,36 +5587,12 @@
|
|||
<li><a href="api/evennia.server.validators.html#evennia.server.validators.EvenniaUsernameAvailabilityValidator">EvenniaUsernameAvailabilityValidator (class in evennia.server.validators)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.web.website.tests.html#evennia.web.website.tests.EvenniaWebTest">EvenniaWebTest (class in evennia.web.website.tests)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.ingame_python.typeclasses.html#evennia.contrib.ingame_python.typeclasses.EventCharacter">EventCharacter (class in evennia.contrib.ingame_python.typeclasses)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.ingame_python.typeclasses.html#evennia.contrib.ingame_python.typeclasses.EventCharacter.DoesNotExist">EventCharacter.DoesNotExist</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.ingame_python.typeclasses.html#evennia.contrib.ingame_python.typeclasses.EventCharacter.MultipleObjectsReturned">EventCharacter.MultipleObjectsReturned</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.ingame_python.typeclasses.html#evennia.contrib.ingame_python.typeclasses.EventExit">EventExit (class in evennia.contrib.ingame_python.typeclasses)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.ingame_python.typeclasses.html#evennia.contrib.ingame_python.typeclasses.EventExit.DoesNotExist">EventExit.DoesNotExist</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.ingame_python.typeclasses.html#evennia.contrib.ingame_python.typeclasses.EventExit.MultipleObjectsReturned">EventExit.MultipleObjectsReturned</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.ingame_python.scripts.html#evennia.contrib.ingame_python.scripts.EventHandler">EventHandler (class in evennia.contrib.ingame_python.scripts)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.ingame_python.scripts.html#evennia.contrib.ingame_python.scripts.EventHandler.DoesNotExist">EventHandler.DoesNotExist</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.ingame_python.scripts.html#evennia.contrib.ingame_python.scripts.EventHandler.MultipleObjectsReturned">EventHandler.MultipleObjectsReturned</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.ingame_python.typeclasses.html#evennia.contrib.ingame_python.typeclasses.EventObject">EventObject (class in evennia.contrib.ingame_python.typeclasses)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.ingame_python.typeclasses.html#evennia.contrib.ingame_python.typeclasses.EventObject.DoesNotExist">EventObject.DoesNotExist</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.ingame_python.typeclasses.html#evennia.contrib.ingame_python.typeclasses.EventObject.MultipleObjectsReturned">EventObject.MultipleObjectsReturned</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.ingame_python.typeclasses.html#evennia.contrib.ingame_python.typeclasses.EventRoom">EventRoom (class in evennia.contrib.ingame_python.typeclasses)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.ingame_python.typeclasses.html#evennia.contrib.ingame_python.typeclasses.EventRoom.DoesNotExist">EventRoom.DoesNotExist</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.ingame_python.typeclasses.html#evennia.contrib.ingame_python.typeclasses.EventRoom.MultipleObjectsReturned">EventRoom.MultipleObjectsReturned</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.utils.evform.html#evennia.utils.evform.EvForm">EvForm (class in evennia.utils.evform)</a>
|
||||
</li>
|
||||
|
|
@ -5712,18 +5607,6 @@
|
|||
<li><a href="api/evennia.utils.evmore.html#evennia.utils.evmore.EvMore">EvMore (class in evennia.utils.evmore)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.utils.evtable.html#evennia.utils.evtable.EvTable">EvTable (class in evennia.utils.evtable)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.mapbuilder.html#evennia.contrib.mapbuilder.example1_build_forest">example1_build_forest() (in module evennia.contrib.mapbuilder)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.mapbuilder.html#evennia.contrib.mapbuilder.example1_build_mountains">example1_build_mountains() (in module evennia.contrib.mapbuilder)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.mapbuilder.html#evennia.contrib.mapbuilder.example1_build_temple">example1_build_temple() (in module evennia.contrib.mapbuilder)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.mapbuilder.html#evennia.contrib.mapbuilder.example2_build_forest">example2_build_forest() (in module evennia.contrib.mapbuilder)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.mapbuilder.html#evennia.contrib.mapbuilder.example2_build_horizontal_exit">example2_build_horizontal_exit() (in module evennia.contrib.mapbuilder)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.mapbuilder.html#evennia.contrib.mapbuilder.example2_build_verticle_exit">example2_build_verticle_exit() (in module evennia.contrib.mapbuilder)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.commands.default.system.html#evennia.commands.default.system.CmdScripts.excluded_typeclass_paths">excluded_typeclass_paths (evennia.commands.default.system.CmdScripts attribute)</a>
|
||||
</li>
|
||||
|
|
@ -6249,10 +6132,6 @@
|
|||
<li><a href="api/evennia.contrib.ingame_python.commands.html#evennia.contrib.ingame_python.commands.CmdCallback.func">(evennia.contrib.ingame_python.commands.CmdCallback method)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.mail.html#evennia.contrib.mail.CmdMail.func">(evennia.contrib.mail.CmdMail method)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.mapbuilder.html#evennia.contrib.mapbuilder.CmdMapBuilder.func">(evennia.contrib.mapbuilder.CmdMapBuilder method)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.menu_login.html#evennia.contrib.menu_login.CmdUnloggedinLook.func">(evennia.contrib.menu_login.CmdUnloggedinLook method)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.multidescer.html#evennia.contrib.multidescer.CmdMultiDesc.func">(evennia.contrib.multidescer.CmdMultiDesc method)</a>
|
||||
</li>
|
||||
|
|
@ -7295,10 +7174,6 @@
|
|||
<li><a href="api/evennia.contrib.mail.html#evennia.contrib.mail.CmdMail.help_category">(evennia.contrib.mail.CmdMail attribute)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.mail.html#evennia.contrib.mail.CmdMailCharacter.help_category">(evennia.contrib.mail.CmdMailCharacter attribute)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.mapbuilder.html#evennia.contrib.mapbuilder.CmdMapBuilder.help_category">(evennia.contrib.mapbuilder.CmdMapBuilder attribute)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.menu_login.html#evennia.contrib.menu_login.CmdUnloggedinLook.help_category">(evennia.contrib.menu_login.CmdUnloggedinLook attribute)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.multidescer.html#evennia.contrib.multidescer.CmdMultiDesc.help_category">(evennia.contrib.multidescer.CmdMultiDesc attribute)</a>
|
||||
</li>
|
||||
|
|
@ -8193,12 +8068,6 @@
|
|||
<li><a href="api/evennia.contrib.mail.html#evennia.contrib.mail.CmdMail.key">(evennia.contrib.mail.CmdMail attribute)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.mail.html#evennia.contrib.mail.CmdMailCharacter.key">(evennia.contrib.mail.CmdMailCharacter attribute)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.mapbuilder.html#evennia.contrib.mapbuilder.CmdMapBuilder.key">(evennia.contrib.mapbuilder.CmdMapBuilder attribute)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.menu_login.html#evennia.contrib.menu_login.CmdUnloggedinLook.key">(evennia.contrib.menu_login.CmdUnloggedinLook attribute)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.menu_login.html#evennia.contrib.menu_login.UnloggedinCmdSet.key">(evennia.contrib.menu_login.UnloggedinCmdSet attribute)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.multidescer.html#evennia.contrib.multidescer.CmdMultiDesc.key">(evennia.contrib.multidescer.CmdMultiDesc attribute)</a>
|
||||
</li>
|
||||
|
|
@ -8939,10 +8808,6 @@
|
|||
<li><a href="api/evennia.contrib.mail.html#evennia.contrib.mail.CmdMail.lock_storage">(evennia.contrib.mail.CmdMail attribute)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.mail.html#evennia.contrib.mail.CmdMailCharacter.lock_storage">(evennia.contrib.mail.CmdMailCharacter attribute)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.mapbuilder.html#evennia.contrib.mapbuilder.CmdMapBuilder.lock_storage">(evennia.contrib.mapbuilder.CmdMapBuilder attribute)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.menu_login.html#evennia.contrib.menu_login.CmdUnloggedinLook.lock_storage">(evennia.contrib.menu_login.CmdUnloggedinLook attribute)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.multidescer.html#evennia.contrib.multidescer.CmdMultiDesc.lock_storage">(evennia.contrib.multidescer.CmdMultiDesc attribute)</a>
|
||||
</li>
|
||||
|
|
@ -9411,10 +9276,6 @@
|
|||
<li><a href="api/evennia.contrib.gendersub.html#evennia.contrib.gendersub.SetGender.locks">(evennia.contrib.gendersub.SetGender attribute)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.ingame_python.commands.html#evennia.contrib.ingame_python.commands.CmdCallback.locks">(evennia.contrib.ingame_python.commands.CmdCallback attribute)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.mapbuilder.html#evennia.contrib.mapbuilder.CmdMapBuilder.locks">(evennia.contrib.mapbuilder.CmdMapBuilder attribute)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.menu_login.html#evennia.contrib.menu_login.CmdUnloggedinLook.locks">(evennia.contrib.menu_login.CmdUnloggedinLook attribute)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.multidescer.html#evennia.contrib.multidescer.CmdMultiDesc.locks">(evennia.contrib.multidescer.CmdMultiDesc attribute)</a>
|
||||
</li>
|
||||
|
|
@ -9946,16 +9807,10 @@
|
|||
<li><a href="api/evennia.contrib.ingame_python.scripts.html#module-evennia.contrib.ingame_python.scripts">evennia.contrib.ingame_python.scripts</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.ingame_python.tests.html#module-evennia.contrib.ingame_python.tests">evennia.contrib.ingame_python.tests</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.ingame_python.typeclasses.html#module-evennia.contrib.ingame_python.typeclasses">evennia.contrib.ingame_python.typeclasses</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.ingame_python.utils.html#module-evennia.contrib.ingame_python.utils">evennia.contrib.ingame_python.utils</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.mail.html#module-evennia.contrib.mail">evennia.contrib.mail</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.mapbuilder.html#module-evennia.contrib.mapbuilder">evennia.contrib.mapbuilder</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.menu_login.html#module-evennia.contrib.menu_login">evennia.contrib.menu_login</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.multidescer.html#module-evennia.contrib.multidescer">evennia.contrib.multidescer</a>
|
||||
</li>
|
||||
|
|
@ -10504,6 +10359,8 @@
|
|||
</li>
|
||||
<li><a href="api/evennia.server.portal.mxp.html#evennia.server.portal.mxp.Mxp.no_mxp">no_mxp() (evennia.server.portal.mxp.Mxp method)</a>
|
||||
</li>
|
||||
</ul></td>
|
||||
<td style="width: 33%; vertical-align: top;"><ul>
|
||||
<li><a href="api/evennia.server.portal.naws.html#evennia.server.portal.naws.Naws.no_naws">no_naws() (evennia.server.portal.naws.Naws method)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.commands.cmdset.html#evennia.commands.cmdset.CmdSet.no_objs">no_objs (evennia.commands.cmdset.CmdSet attribute)</a>
|
||||
|
|
@ -10520,17 +10377,11 @@
|
|||
<li><a href="api/evennia.utils.evmenu.html#evennia.utils.evmenu.InputCmdSet.no_objs">(evennia.utils.evmenu.InputCmdSet attribute)</a>
|
||||
</li>
|
||||
</ul></li>
|
||||
</ul></td>
|
||||
<td style="width: 33%; vertical-align: top;"><ul>
|
||||
<li><a href="api/evennia.prototypes.menus.html#evennia.prototypes.menus.node_apply_diff">node_apply_diff() (in module evennia.prototypes.menus)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.utils.evmenu.html#evennia.utils.evmenu.EvMenu.node_border_char">node_border_char (evennia.utils.evmenu.EvMenu attribute)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.prototypes.menus.html#evennia.prototypes.menus.node_destination">node_destination() (in module evennia.prototypes.menus)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.menu_login.html#evennia.contrib.menu_login.node_enter_password">node_enter_password() (in module evennia.contrib.menu_login)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.menu_login.html#evennia.contrib.menu_login.node_enter_username">node_enter_username() (in module evennia.contrib.menu_login)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.prototypes.menus.html#evennia.prototypes.menus.node_examine_entity">node_examine_entity() (in module evennia.prototypes.menus)</a>
|
||||
</li>
|
||||
|
|
@ -10561,8 +10412,6 @@
|
|||
<li><a href="api/evennia.prototypes.menus.html#evennia.prototypes.menus.node_prototype_save">node_prototype_save() (in module evennia.prototypes.menus)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.prototypes.menus.html#evennia.prototypes.menus.node_prototype_spawn">node_prototype_spawn() (in module evennia.prototypes.menus)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.menu_login.html#evennia.contrib.menu_login.node_quit_or_login">node_quit_or_login() (in module evennia.contrib.menu_login)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.server.connection_wizard.html#evennia.server.connection_wizard.node_start">node_start() (in module evennia.server.connection_wizard)</a>
|
||||
</li>
|
||||
|
|
@ -11058,16 +10907,6 @@
|
|||
<li><a href="api/evennia.contrib.ingame_python.scripts.html#evennia.contrib.ingame_python.scripts.EventHandler.path">(evennia.contrib.ingame_python.scripts.EventHandler attribute)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.ingame_python.scripts.html#evennia.contrib.ingame_python.scripts.TimeEventScript.path">(evennia.contrib.ingame_python.scripts.TimeEventScript attribute)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.ingame_python.typeclasses.html#evennia.contrib.ingame_python.typeclasses.EventCharacter.path">(evennia.contrib.ingame_python.typeclasses.EventCharacter attribute)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.ingame_python.typeclasses.html#evennia.contrib.ingame_python.typeclasses.EventExit.path">(evennia.contrib.ingame_python.typeclasses.EventExit attribute)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.ingame_python.typeclasses.html#evennia.contrib.ingame_python.typeclasses.EventObject.path">(evennia.contrib.ingame_python.typeclasses.EventObject attribute)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.ingame_python.typeclasses.html#evennia.contrib.ingame_python.typeclasses.EventRoom.path">(evennia.contrib.ingame_python.typeclasses.EventRoom attribute)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.menu_login.html#evennia.contrib.menu_login.UnloggedinCmdSet.path">(evennia.contrib.menu_login.UnloggedinCmdSet attribute)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.puzzles.html#evennia.contrib.puzzles.PuzzleRecipe.path">(evennia.contrib.puzzles.PuzzleRecipe attribute)</a>
|
||||
</li>
|
||||
|
|
@ -11396,8 +11235,6 @@
|
|||
<li><a href="api/evennia.commands.default.cmdset_unloggedin.html#evennia.commands.default.cmdset_unloggedin.UnloggedinCmdSet.priority">(evennia.commands.default.cmdset_unloggedin.UnloggedinCmdSet attribute)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.building_menu.html#evennia.contrib.building_menu.BuildingMenuCmdSet.priority">(evennia.contrib.building_menu.BuildingMenuCmdSet attribute)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.menu_login.html#evennia.contrib.menu_login.UnloggedinCmdSet.priority">(evennia.contrib.menu_login.UnloggedinCmdSet attribute)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.tutorial_world.intro_menu.html#evennia.contrib.tutorial_world.intro_menu.DemoCommandSetComms.priority">(evennia.contrib.tutorial_world.intro_menu.DemoCommandSetComms attribute)</a>
|
||||
</li>
|
||||
|
|
@ -13264,12 +13101,12 @@
|
|||
</li>
|
||||
<li><a href="api/evennia.contrib.tutorial_examples.tests.html#evennia.contrib.tutorial_examples.tests.TestBodyFunctions.test_send_random_message">test_send_random_message() (evennia.contrib.tutorial_examples.tests.TestBodyFunctions method)</a>
|
||||
</li>
|
||||
</ul></td>
|
||||
<td style="width: 33%; vertical-align: top;"><ul>
|
||||
<li><a href="api/evennia.commands.default.tests.html#evennia.commands.default.tests.TestSystem.test_server_load">test_server_load() (evennia.commands.default.tests.TestSystem method)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.commands.default.tests.html#evennia.commands.default.tests.TestAccount.test_sessions">test_sessions() (evennia.commands.default.tests.TestAccount method)</a>
|
||||
</li>
|
||||
</ul></td>
|
||||
<td style="width: 33%; vertical-align: top;"><ul>
|
||||
<li><a href="api/evennia.web.utils.tests.html#evennia.web.utils.tests.TestGeneralContext.test_set_game_name_and_slogan">test_set_game_name_and_slogan() (evennia.web.utils.tests.TestGeneralContext method)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.commands.default.tests.html#evennia.commands.default.tests.TestHelp.test_set_help">test_set_help() (evennia.commands.default.tests.TestHelp method)</a>
|
||||
|
|
@ -13556,14 +13393,6 @@
|
|||
<li><a href="api/evennia.contrib.ingame_python.scripts.html#evennia.contrib.ingame_python.scripts.EventHandler.typename">(evennia.contrib.ingame_python.scripts.EventHandler attribute)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.ingame_python.scripts.html#evennia.contrib.ingame_python.scripts.TimeEventScript.typename">(evennia.contrib.ingame_python.scripts.TimeEventScript attribute)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.ingame_python.typeclasses.html#evennia.contrib.ingame_python.typeclasses.EventCharacter.typename">(evennia.contrib.ingame_python.typeclasses.EventCharacter attribute)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.ingame_python.typeclasses.html#evennia.contrib.ingame_python.typeclasses.EventExit.typename">(evennia.contrib.ingame_python.typeclasses.EventExit attribute)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.ingame_python.typeclasses.html#evennia.contrib.ingame_python.typeclasses.EventObject.typename">(evennia.contrib.ingame_python.typeclasses.EventObject attribute)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.ingame_python.typeclasses.html#evennia.contrib.ingame_python.typeclasses.EventRoom.typename">(evennia.contrib.ingame_python.typeclasses.EventRoom attribute)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.puzzles.html#evennia.contrib.puzzles.PuzzleRecipe.typename">(evennia.contrib.puzzles.PuzzleRecipe attribute)</a>
|
||||
</li>
|
||||
|
|
@ -13747,11 +13576,7 @@
|
|||
<li><a href="api/evennia.utils.test_resources.html#evennia.utils.test_resources.unload_module">unload_module() (in module evennia.utils.test_resources)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.commands.default.cmdset_unloggedin.html#evennia.commands.default.cmdset_unloggedin.UnloggedinCmdSet">UnloggedinCmdSet (class in evennia.commands.default.cmdset_unloggedin)</a>
|
||||
|
||||
<ul>
|
||||
<li><a href="api/evennia.contrib.menu_login.html#evennia.contrib.menu_login.UnloggedinCmdSet">(class in evennia.contrib.menu_login)</a>
|
||||
</li>
|
||||
</ul></li>
|
||||
<li><a href="api/evennia.server.inputfuncs.html#evennia.server.inputfuncs.unmonitor">unmonitor() (in module evennia.server.inputfuncs)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.comms.comms.html#evennia.comms.comms.DefaultChannel.unmute">unmute() (evennia.comms.comms.DefaultChannel method)</a>
|
||||
|
|
@ -13782,10 +13607,10 @@
|
|||
<li><a href="api/evennia.utils.utils.html#evennia.utils.utils.LimitedSizeOrderedDict.update">(evennia.utils.utils.LimitedSizeOrderedDict method)</a>
|
||||
</li>
|
||||
</ul></li>
|
||||
</ul></td>
|
||||
<td style="width: 33%; vertical-align: top;"><ul>
|
||||
<li><a href="api/evennia.utils.eveditor.html#evennia.utils.eveditor.EvEditor.update_buffer">update_buffer() (evennia.utils.eveditor.EvEditor method)</a>
|
||||
</li>
|
||||
</ul></td>
|
||||
<td style="width: 33%; vertical-align: top;"><ul>
|
||||
<li><a href="api/evennia.utils.idmapper.models.html#evennia.utils.idmapper.models.update_cached_instance">update_cached_instance() (in module evennia.utils.idmapper.models)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.extended_room.html#evennia.contrib.extended_room.ExtendedRoom.update_current_description">update_current_description() (evennia.contrib.extended_room.ExtendedRoom method)</a>
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -321,11 +321,6 @@
|
|||
<td>   
|
||||
<a href="api/evennia.contrib.ingame_python.tests.html#module-evennia.contrib.ingame_python.tests"><code class="xref">evennia.contrib.ingame_python.tests</code></a></td><td>
|
||||
<em></em></td></tr>
|
||||
<tr class="cg-1">
|
||||
<td></td>
|
||||
<td>   
|
||||
<a href="api/evennia.contrib.ingame_python.typeclasses.html#module-evennia.contrib.ingame_python.typeclasses"><code class="xref">evennia.contrib.ingame_python.typeclasses</code></a></td><td>
|
||||
<em></em></td></tr>
|
||||
<tr class="cg-1">
|
||||
<td></td>
|
||||
<td>   
|
||||
|
|
@ -336,16 +331,6 @@
|
|||
<td>   
|
||||
<a href="api/evennia.contrib.mail.html#module-evennia.contrib.mail"><code class="xref">evennia.contrib.mail</code></a></td><td>
|
||||
<em></em></td></tr>
|
||||
<tr class="cg-1">
|
||||
<td></td>
|
||||
<td>   
|
||||
<a href="api/evennia.contrib.mapbuilder.html#module-evennia.contrib.mapbuilder"><code class="xref">evennia.contrib.mapbuilder</code></a></td><td>
|
||||
<em></em></td></tr>
|
||||
<tr class="cg-1">
|
||||
<td></td>
|
||||
<td>   
|
||||
<a href="api/evennia.contrib.menu_login.html#module-evennia.contrib.menu_login"><code class="xref">evennia.contrib.menu_login</code></a></td><td>
|
||||
<em></em></td></tr>
|
||||
<tr class="cg-1">
|
||||
<td></td>
|
||||
<td>   
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
|
|
@ -40,6 +40,7 @@
|
|||
<h1>Toc<a class="headerlink" href="#toc" title="Permalink to this headline">¶</a></h1>
|
||||
<div class="toctree-wrapper compound">
|
||||
<ul>
|
||||
<li class="toctree-l1"><a class="reference internal" href="api/evennia-api.html">API root</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="A-voice-operated-elevator-using-events.html">./A voice operated elevator using events</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="API-refactoring.html">./API refactoring</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="Accounts.html">./Accounts</a></li>
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
# Sphinx build info version 1
|
||||
# This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done.
|
||||
config: d44b09e1b0e25f0a3dfdb072c1a7756a
|
||||
config: 627e7fafcf163fe3b617dfb0e5e8024e
|
||||
tags: 645f666f9bcd5a90fca523b33c5a78b7
|
||||
|
|
|
|||
|
|
@ -29,6 +29,7 @@
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Coding Introduction</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
|
||||
<div class="document">
|
||||
|
|
@ -225,7 +226,6 @@ chat</a> are also there for you.</p>
|
|||
<li><a href="../../0.9.5/index.html">0.9.5 (v0.9.5 branch)</a></li>
|
||||
</ul>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearer"></div>
|
||||
|
|
@ -242,6 +242,7 @@ chat</a> are also there for you.</p>
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Coding Introduction</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
<div class="footer" role="contentinfo">
|
||||
© Copyright 2020, The Evennia developer community.
|
||||
|
|
|
|||
|
|
@ -37,6 +37,7 @@
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Coding and development help</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
|
||||
<div class="document">
|
||||
|
|
@ -136,7 +137,6 @@ to you, but some things may still be useful.</p>
|
|||
<li><a href="../../0.9.5/index.html">0.9.5 (v0.9.5 branch)</a></li>
|
||||
</ul>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearer"></div>
|
||||
|
|
@ -159,6 +159,7 @@ to you, but some things may still be useful.</p>
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Coding and development help</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
<div class="footer" role="contentinfo">
|
||||
© Copyright 2020, The Evennia developer community.
|
||||
|
|
|
|||
|
|
@ -29,6 +29,7 @@
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Continuous Integration</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
|
||||
<div class="document">
|
||||
|
|
@ -403,7 +404,6 @@ build steps could be added or removed at this point, adding some features like U
|
|||
<li><a href="../../0.9.5/index.html">0.9.5 (v0.9.5 branch)</a></li>
|
||||
</ul>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearer"></div>
|
||||
|
|
@ -420,6 +420,7 @@ build steps could be added or removed at this point, adding some features like U
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Continuous Integration</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
<div class="footer" role="contentinfo">
|
||||
© Copyright 2020, The Evennia developer community.
|
||||
|
|
|
|||
|
|
@ -29,6 +29,7 @@
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Debugging</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
|
||||
<div class="document">
|
||||
|
|
@ -359,7 +360,6 @@ topic here</a>.</p>
|
|||
<li><a href="../../0.9.5/index.html">0.9.5 (v0.9.5 branch)</a></li>
|
||||
</ul>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearer"></div>
|
||||
|
|
@ -376,6 +376,7 @@ topic here</a>.</p>
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Debugging</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
<div class="footer" role="contentinfo">
|
||||
© Copyright 2020, The Evennia developer community.
|
||||
|
|
|
|||
|
|
@ -29,6 +29,7 @@
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Things to remember about the flat API</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
|
||||
<div class="document">
|
||||
|
|
@ -112,7 +113,6 @@ package imports from.</p>
|
|||
<li><a href="../../0.9.5/index.html">0.9.5 (v0.9.5 branch)</a></li>
|
||||
</ul>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearer"></div>
|
||||
|
|
@ -129,6 +129,7 @@ package imports from.</p>
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Things to remember about the flat API</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
<div class="footer" role="contentinfo">
|
||||
© Copyright 2020, The Evennia developer community.
|
||||
|
|
|
|||
|
|
@ -29,6 +29,7 @@
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Profiling</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
|
||||
<div class="document">
|
||||
|
|
@ -202,7 +203,6 @@ course hard to actually mimic human user behavior. For this, actual real-game te
|
|||
<li><a href="../../0.9.5/index.html">0.9.5 (v0.9.5 branch)</a></li>
|
||||
</ul>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearer"></div>
|
||||
|
|
@ -219,6 +219,7 @@ course hard to actually mimic human user behavior. For this, actual real-game te
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Profiling</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
<div class="footer" role="contentinfo">
|
||||
© Copyright 2020, The Evennia developer community.
|
||||
|
|
|
|||
|
|
@ -29,6 +29,7 @@
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Quirks</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
|
||||
<div class="document">
|
||||
|
|
@ -197,7 +198,6 @@ instructions, use the following command to fix it:</p>
|
|||
<li><a href="../../0.9.5/index.html">0.9.5 (v0.9.5 branch)</a></li>
|
||||
</ul>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearer"></div>
|
||||
|
|
@ -214,6 +214,7 @@ instructions, use the following command to fix it:</p>
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Quirks</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
<div class="footer" role="contentinfo">
|
||||
© Copyright 2020, The Evennia developer community.
|
||||
|
|
|
|||
|
|
@ -29,6 +29,7 @@
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Setting up PyCharm</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
|
||||
<div class="document">
|
||||
|
|
@ -201,7 +202,6 @@ still running in interactive mode.</p>
|
|||
<li><a href="../../0.9.5/index.html">0.9.5 (v0.9.5 branch)</a></li>
|
||||
</ul>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearer"></div>
|
||||
|
|
@ -218,6 +218,7 @@ still running in interactive mode.</p>
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Setting up PyCharm</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
<div class="footer" role="contentinfo">
|
||||
© Copyright 2020, The Evennia developer community.
|
||||
|
|
|
|||
|
|
@ -29,6 +29,7 @@
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Unit Testing</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
|
||||
<div class="document">
|
||||
|
|
@ -575,7 +576,6 @@ will get much more information to help you fix the bug.</p>
|
|||
<li><a href="../../0.9.5/index.html">0.9.5 (v0.9.5 branch)</a></li>
|
||||
</ul>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearer"></div>
|
||||
|
|
@ -592,6 +592,7 @@ will get much more information to help you fix the bug.</p>
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Unit Testing</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
<div class="footer" role="contentinfo">
|
||||
© Copyright 2020, The Evennia developer community.
|
||||
|
|
|
|||
|
|
@ -29,6 +29,7 @@
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Updating Your Game</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
|
||||
<div class="document">
|
||||
|
|
@ -211,7 +212,6 @@ you then just run <code class="docutils literal notranslate"><span class="pre">e
|
|||
<li><a href="../../0.9.5/index.html">0.9.5 (v0.9.5 branch)</a></li>
|
||||
</ul>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearer"></div>
|
||||
|
|
@ -228,6 +228,7 @@ you then just run <code class="docutils literal notranslate"><span class="pre">e
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Updating Your Game</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
<div class="footer" role="contentinfo">
|
||||
© Copyright 2020, The Evennia developer community.
|
||||
|
|
|
|||
|
|
@ -29,6 +29,7 @@
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Using Travis</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
|
||||
<div class="document">
|
||||
|
|
@ -115,7 +116,6 @@ fitting your game.</p>
|
|||
<li><a href="../../0.9.5/index.html">0.9.5 (v0.9.5 branch)</a></li>
|
||||
</ul>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearer"></div>
|
||||
|
|
@ -132,6 +132,7 @@ fitting your game.</p>
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Using Travis</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
<div class="footer" role="contentinfo">
|
||||
© Copyright 2020, The Evennia developer community.
|
||||
|
|
|
|||
|
|
@ -29,6 +29,7 @@
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Version Control</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
|
||||
<div class="document">
|
||||
|
|
@ -532,7 +533,6 @@ understand the underlying ideas behind GIT
|
|||
<li><a href="../../0.9.5/index.html">0.9.5 (v0.9.5 branch)</a></li>
|
||||
</ul>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearer"></div>
|
||||
|
|
@ -549,6 +549,7 @@ understand the underlying ideas behind GIT
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Version Control</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
<div class="footer" role="contentinfo">
|
||||
© Copyright 2020, The Evennia developer community.
|
||||
|
|
|
|||
|
|
@ -29,6 +29,7 @@
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Accounts</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
|
||||
<div class="document">
|
||||
|
|
@ -187,7 +188,6 @@ any.</p></li>
|
|||
<li><a href="../../0.9.5/index.html">0.9.5 (v0.9.5 branch)</a></li>
|
||||
</ul>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearer"></div>
|
||||
|
|
@ -204,6 +204,7 @@ any.</p></li>
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Accounts</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
<div class="footer" role="contentinfo">
|
||||
© Copyright 2020, The Evennia developer community.
|
||||
|
|
|
|||
|
|
@ -29,6 +29,7 @@
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Attributes</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
|
||||
<div class="document">
|
||||
|
|
@ -516,7 +517,6 @@ those will check for the <code class="docutils literal notranslate"><span class=
|
|||
<li><a href="../../0.9.5/index.html">0.9.5 (v0.9.5 branch)</a></li>
|
||||
</ul>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearer"></div>
|
||||
|
|
@ -533,6 +533,7 @@ those will check for the <code class="docutils literal notranslate"><span class=
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Attributes</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
<div class="footer" role="contentinfo">
|
||||
© Copyright 2020, The Evennia developer community.
|
||||
|
|
|
|||
|
|
@ -29,6 +29,7 @@
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Batch Code Processor</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
|
||||
<div class="document">
|
||||
|
|
@ -373,7 +374,6 @@ executed. When the code runs it has no knowledge of what file those strings wher
|
|||
<li><a href="../../0.9.5/index.html">0.9.5 (v0.9.5 branch)</a></li>
|
||||
</ul>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearer"></div>
|
||||
|
|
@ -390,6 +390,7 @@ executed. When the code runs it has no knowledge of what file those strings wher
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Batch Code Processor</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
<div class="footer" role="contentinfo">
|
||||
© Copyright 2020, The Evennia developer community.
|
||||
|
|
|
|||
|
|
@ -29,6 +29,7 @@
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Batch Command Processor</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
|
||||
<div class="document">
|
||||
|
|
@ -297,7 +298,6 @@ mode instead, see its readme for install instructions.</p></li>
|
|||
<li><a href="../../0.9.5/index.html">0.9.5 (v0.9.5 branch)</a></li>
|
||||
</ul>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearer"></div>
|
||||
|
|
@ -314,6 +314,7 @@ mode instead, see its readme for install instructions.</p></li>
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Batch Command Processor</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
<div class="footer" role="contentinfo">
|
||||
© Copyright 2020, The Evennia developer community.
|
||||
|
|
|
|||
|
|
@ -29,6 +29,7 @@
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Batch Processors</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
|
||||
<div class="document">
|
||||
|
|
@ -151,7 +152,6 @@ allowed.</p>
|
|||
<li><a href="../../0.9.5/index.html">0.9.5 (v0.9.5 branch)</a></li>
|
||||
</ul>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearer"></div>
|
||||
|
|
@ -168,6 +168,7 @@ allowed.</p>
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Batch Processors</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
<div class="footer" role="contentinfo">
|
||||
© Copyright 2020, The Evennia developer community.
|
||||
|
|
|
|||
|
|
@ -29,6 +29,7 @@
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Bootstrap Components and Utilities</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
|
||||
<div class="document">
|
||||
|
|
@ -185,7 +186,6 @@ over <a class="reference internal" href="../Howto/Web-Character-Generation.html"
|
|||
<li><a href="../../0.9.5/index.html">0.9.5 (v0.9.5 branch)</a></li>
|
||||
</ul>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearer"></div>
|
||||
|
|
@ -202,6 +202,7 @@ over <a class="reference internal" href="../Howto/Web-Character-Generation.html"
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Bootstrap Components and Utilities</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
<div class="footer" role="contentinfo">
|
||||
© Copyright 2020, The Evennia developer community.
|
||||
|
|
|
|||
|
|
@ -29,6 +29,7 @@
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Channels</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
|
||||
<div class="document">
|
||||
|
|
@ -74,7 +75,6 @@
|
|||
<li><a href="../../0.9.5/index.html">0.9.5 (v0.9.5 branch)</a></li>
|
||||
</ul>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearer"></div>
|
||||
|
|
@ -91,6 +91,7 @@
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Channels</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
<div class="footer" role="contentinfo">
|
||||
© Copyright 2020, The Evennia developer community.
|
||||
|
|
|
|||
|
|
@ -29,6 +29,7 @@
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Coding Utils</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
|
||||
<div class="document">
|
||||
|
|
@ -442,7 +443,6 @@ instructions.</p>
|
|||
<li><a href="../../0.9.5/index.html">0.9.5 (v0.9.5 branch)</a></li>
|
||||
</ul>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearer"></div>
|
||||
|
|
@ -459,6 +459,7 @@ instructions.</p>
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Coding Utils</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
<div class="footer" role="contentinfo">
|
||||
© Copyright 2020, The Evennia developer community.
|
||||
|
|
|
|||
|
|
@ -29,6 +29,7 @@
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Command Sets</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
|
||||
<div class="document">
|
||||
|
|
@ -487,7 +488,6 @@ commands having any combination of the keys and/or aliases “kick”, “punch
|
|||
<li><a href="../../0.9.5/index.html">0.9.5 (v0.9.5 branch)</a></li>
|
||||
</ul>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearer"></div>
|
||||
|
|
@ -504,6 +504,7 @@ commands having any combination of the keys and/or aliases “kick”, “punch
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Command Sets</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
<div class="footer" role="contentinfo">
|
||||
© Copyright 2020, The Evennia developer community.
|
||||
|
|
|
|||
|
|
@ -29,6 +29,7 @@
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Command System</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
|
||||
<div class="document">
|
||||
|
|
@ -83,7 +84,6 @@
|
|||
<li><a href="../../0.9.5/index.html">0.9.5 (v0.9.5 branch)</a></li>
|
||||
</ul>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearer"></div>
|
||||
|
|
@ -100,6 +100,7 @@
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Command System</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
<div class="footer" role="contentinfo">
|
||||
© Copyright 2020, The Evennia developer community.
|
||||
|
|
|
|||
|
|
@ -29,6 +29,7 @@
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Commands</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
|
||||
<div class="document">
|
||||
|
|
@ -860,7 +861,6 @@ on.</p>
|
|||
<li><a href="../../0.9.5/index.html">0.9.5 (v0.9.5 branch)</a></li>
|
||||
</ul>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearer"></div>
|
||||
|
|
@ -877,6 +877,7 @@ on.</p>
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Commands</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
<div class="footer" role="contentinfo">
|
||||
© Copyright 2020, The Evennia developer community.
|
||||
|
|
|
|||
|
|
@ -29,6 +29,7 @@
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Communications</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
|
||||
<div class="document">
|
||||
|
|
@ -198,7 +199,6 @@ for channel communication (since the default ChannelCommand instead logs to a fi
|
|||
<li><a href="../../0.9.5/index.html">0.9.5 (v0.9.5 branch)</a></li>
|
||||
</ul>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearer"></div>
|
||||
|
|
@ -215,6 +215,7 @@ for channel communication (since the default ChannelCommand instead logs to a fi
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Communications</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
<div class="footer" role="contentinfo">
|
||||
© Copyright 2020, The Evennia developer community.
|
||||
|
|
|
|||
|
|
@ -37,6 +37,7 @@
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Core Components</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
|
||||
<div class="document">
|
||||
|
|
@ -178,7 +179,6 @@ than, the doc-strings of each component in the <a class="reference internal" hre
|
|||
<li><a href="../../0.9.5/index.html">0.9.5 (v0.9.5 branch)</a></li>
|
||||
</ul>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearer"></div>
|
||||
|
|
@ -201,6 +201,7 @@ than, the doc-strings of each component in the <a class="reference internal" hre
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Core Components</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
<div class="footer" role="contentinfo">
|
||||
© Copyright 2020, The Evennia developer community.
|
||||
|
|
|
|||
|
|
@ -29,6 +29,7 @@
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Connection Screen</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
|
||||
<div class="document">
|
||||
|
|
@ -113,7 +114,6 @@ tutorial section on how to add new commands to a default command set.</p>
|
|||
<li><a href="../../0.9.5/index.html">0.9.5 (v0.9.5 branch)</a></li>
|
||||
</ul>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearer"></div>
|
||||
|
|
@ -130,6 +130,7 @@ tutorial section on how to add new commands to a default command set.</p>
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Connection Screen</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
<div class="footer" role="contentinfo">
|
||||
© Copyright 2020, The Evennia developer community.
|
||||
|
|
|
|||
|
|
@ -29,6 +29,7 @@
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">EvEditor</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
|
||||
<div class="document">
|
||||
|
|
@ -321,7 +322,6 @@ editor can be useful if you want to test the code you have typed but add new lin
|
|||
<li><a href="../../0.9.5/index.html">0.9.5 (v0.9.5 branch)</a></li>
|
||||
</ul>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearer"></div>
|
||||
|
|
@ -338,6 +338,7 @@ editor can be useful if you want to test the code you have typed but add new lin
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">EvEditor</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
<div class="footer" role="contentinfo">
|
||||
© Copyright 2020, The Evennia developer community.
|
||||
|
|
|
|||
|
|
@ -29,6 +29,7 @@
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">EvMenu</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
|
||||
<div class="document">
|
||||
|
|
@ -1351,7 +1352,6 @@ until the exit node.</p>
|
|||
<li><a href="../../0.9.5/index.html">0.9.5 (v0.9.5 branch)</a></li>
|
||||
</ul>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearer"></div>
|
||||
|
|
@ -1368,6 +1368,7 @@ until the exit node.</p>
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">EvMenu</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
<div class="footer" role="contentinfo">
|
||||
© Copyright 2020, The Evennia developer community.
|
||||
|
|
|
|||
|
|
@ -29,6 +29,7 @@
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">EvMore</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
|
||||
<div class="document">
|
||||
|
|
@ -114,7 +115,6 @@ paging.</p>
|
|||
<li><a href="../../0.9.5/index.html">0.9.5 (v0.9.5 branch)</a></li>
|
||||
</ul>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearer"></div>
|
||||
|
|
@ -131,6 +131,7 @@ paging.</p>
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">EvMore</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
<div class="footer" role="contentinfo">
|
||||
© Copyright 2020, The Evennia developer community.
|
||||
|
|
|
|||
|
|
@ -29,6 +29,7 @@
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Help System</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
|
||||
<div class="document">
|
||||
|
|
@ -213,7 +214,6 @@ definition</span></a>:</p>
|
|||
<li><a href="../../0.9.5/index.html">0.9.5 (v0.9.5 branch)</a></li>
|
||||
</ul>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearer"></div>
|
||||
|
|
@ -230,6 +230,7 @@ definition</span></a>:</p>
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Help System</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
<div class="footer" role="contentinfo">
|
||||
© Copyright 2020, The Evennia developer community.
|
||||
|
|
|
|||
|
|
@ -29,6 +29,7 @@
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Inputfuncs</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
|
||||
<div class="document">
|
||||
|
|
@ -274,7 +275,6 @@ add more. By default the following fields/attributes can be monitored:</p>
|
|||
<li><a href="../../0.9.5/index.html">0.9.5 (v0.9.5 branch)</a></li>
|
||||
</ul>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearer"></div>
|
||||
|
|
@ -291,6 +291,7 @@ add more. By default the following fields/attributes can be monitored:</p>
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Inputfuncs</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
<div class="footer" role="contentinfo">
|
||||
© Copyright 2020, The Evennia developer community.
|
||||
|
|
|
|||
|
|
@ -29,6 +29,7 @@
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Locks</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
|
||||
<div class="document">
|
||||
|
|
@ -624,7 +625,6 @@ interface. It’s stand-alone from the permissions described above.</p>
|
|||
<li><a href="../../0.9.5/index.html">0.9.5 (v0.9.5 branch)</a></li>
|
||||
</ul>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearer"></div>
|
||||
|
|
@ -641,6 +641,7 @@ interface. It’s stand-alone from the permissions described above.</p>
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Locks</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
<div class="footer" role="contentinfo">
|
||||
© Copyright 2020, The Evennia developer community.
|
||||
|
|
|
|||
|
|
@ -29,6 +29,7 @@
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">MonitorHandler</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
|
||||
<div class="document">
|
||||
|
|
@ -171,7 +172,6 @@ the monitor to remove:</p>
|
|||
<li><a href="../../0.9.5/index.html">0.9.5 (v0.9.5 branch)</a></li>
|
||||
</ul>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearer"></div>
|
||||
|
|
@ -188,6 +188,7 @@ the monitor to remove:</p>
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">MonitorHandler</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
<div class="footer" role="contentinfo">
|
||||
© Copyright 2020, The Evennia developer community.
|
||||
|
|
|
|||
|
|
@ -29,6 +29,7 @@
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Nicks</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
|
||||
<div class="document">
|
||||
|
|
@ -210,7 +211,6 @@ basically the unchanged strings you enter to the <code class="docutils literal n
|
|||
<li><a href="../../0.9.5/index.html">0.9.5 (v0.9.5 branch)</a></li>
|
||||
</ul>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearer"></div>
|
||||
|
|
@ -227,6 +227,7 @@ basically the unchanged strings you enter to the <code class="docutils literal n
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Nicks</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
<div class="footer" role="contentinfo">
|
||||
© Copyright 2020, The Evennia developer community.
|
||||
|
|
|
|||
|
|
@ -29,6 +29,7 @@
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Objects</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
|
||||
<div class="document">
|
||||
|
|
@ -279,7 +280,6 @@ and display this as an error message. If this is not found, the Exit will instea
|
|||
<li><a href="../../0.9.5/index.html">0.9.5 (v0.9.5 branch)</a></li>
|
||||
</ul>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearer"></div>
|
||||
|
|
@ -296,6 +296,7 @@ and display this as an error message. If this is not found, the Exit will instea
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Objects</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
<div class="footer" role="contentinfo">
|
||||
© Copyright 2020, The Evennia developer community.
|
||||
|
|
|
|||
|
|
@ -29,6 +29,7 @@
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Outputfuncs</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
|
||||
<div class="document">
|
||||
|
|
@ -74,7 +75,6 @@
|
|||
<li><a href="../../0.9.5/index.html">0.9.5 (v0.9.5 branch)</a></li>
|
||||
</ul>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearer"></div>
|
||||
|
|
@ -91,6 +91,7 @@
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Outputfuncs</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
<div class="footer" role="contentinfo">
|
||||
© Copyright 2020, The Evennia developer community.
|
||||
|
|
|
|||
|
|
@ -29,6 +29,7 @@
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Portal And Server</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
|
||||
<div class="document">
|
||||
|
|
@ -82,7 +83,6 @@ This allows the two programs to communicate seamlessly.</p>
|
|||
<li><a href="../../0.9.5/index.html">0.9.5 (v0.9.5 branch)</a></li>
|
||||
</ul>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearer"></div>
|
||||
|
|
@ -99,6 +99,7 @@ This allows the two programs to communicate seamlessly.</p>
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Portal And Server</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
<div class="footer" role="contentinfo">
|
||||
© Copyright 2020, The Evennia developer community.
|
||||
|
|
|
|||
|
|
@ -29,6 +29,7 @@
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Spawner and Prototypes</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
|
||||
<div class="document">
|
||||
|
|
@ -411,7 +412,6 @@ the api docs</a>.</p>
|
|||
<li><a href="../../0.9.5/index.html">0.9.5 (v0.9.5 branch)</a></li>
|
||||
</ul>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearer"></div>
|
||||
|
|
@ -428,6 +428,7 @@ the api docs</a>.</p>
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Spawner and Prototypes</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
<div class="footer" role="contentinfo">
|
||||
© Copyright 2020, The Evennia developer community.
|
||||
|
|
|
|||
|
|
@ -29,6 +29,7 @@
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Scripts</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
|
||||
<div class="document">
|
||||
|
|
@ -512,7 +513,6 @@ tutorial</a>.</p>
|
|||
<li><a href="../../0.9.5/index.html">0.9.5 (v0.9.5 branch)</a></li>
|
||||
</ul>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearer"></div>
|
||||
|
|
@ -529,6 +529,7 @@ tutorial</a>.</p>
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Scripts</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
<div class="footer" role="contentinfo">
|
||||
© Copyright 2020, The Evennia developer community.
|
||||
|
|
|
|||
|
|
@ -29,6 +29,7 @@
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Server Conf</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
|
||||
<div class="document">
|
||||
|
|
@ -184,7 +185,6 @@ know about if you are an Evennia developer.</p>
|
|||
<li><a href="../../0.9.5/index.html">0.9.5 (v0.9.5 branch)</a></li>
|
||||
</ul>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearer"></div>
|
||||
|
|
@ -201,6 +201,7 @@ know about if you are an Evennia developer.</p>
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Server Conf</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
<div class="footer" role="contentinfo">
|
||||
© Copyright 2020, The Evennia developer community.
|
||||
|
|
|
|||
|
|
@ -29,6 +29,7 @@
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Server component</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
|
||||
<div class="document">
|
||||
|
|
@ -74,7 +75,6 @@
|
|||
<li><a href="../../0.9.5/index.html">0.9.5 (v0.9.5 branch)</a></li>
|
||||
</ul>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearer"></div>
|
||||
|
|
@ -91,6 +91,7 @@
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Server component</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
<div class="footer" role="contentinfo">
|
||||
© Copyright 2020, The Evennia developer community.
|
||||
|
|
|
|||
|
|
@ -29,6 +29,7 @@
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Sessions</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
|
||||
<div class="document">
|
||||
|
|
@ -264,7 +265,6 @@ module for details on the capabilities of the <code class="docutils literal notr
|
|||
<li><a href="../../0.9.5/index.html">0.9.5 (v0.9.5 branch)</a></li>
|
||||
</ul>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearer"></div>
|
||||
|
|
@ -281,6 +281,7 @@ module for details on the capabilities of the <code class="docutils literal notr
|
|||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 1.0-dev</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">Sessions</a></li>
|
||||
</ul>
|
||||
<div class="develop">develop branch</div>
|
||||
</div>
|
||||
<div class="footer" role="contentinfo">
|
||||
© Copyright 2020, The Evennia developer community.
|
||||
|
|
|
|||
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Add a link
Reference in a new issue