<spanid="evennia-contrib-tutorials-evadventure-combat-turnbased"></span><h1>evennia.contrib.tutorials.evadventure.combat_turnbased<aclass="headerlink"href="#module-evennia.contrib.tutorials.evadventure.combat_turnbased"title="Permalink to this headline">¶</a></h1>
<p>EvAdventure Turn-based combat</p>
<p>This implements a turn-based (Final Fantasy, etc) style of MUD combat.</p>
<p>In this variation, all combatants are sharing the same combat handler, sitting on the current room.
The user will receive a menu of combat options and each combatat has a certain time time (e.g. 30s)
to select their next action or do nothing. To speed up play, as soon as everyone in combat selected
their next action, the next turn runs immediately, regardless of the timeout.</p>
<p>With this example, all chosen combat actions are considered to happen at the same time (so you are
able to kill and be killed in the same turn).</p>
<p>Unlike in twitch-like combat, there is no movement while in turn-based combat. Fleeing is a select
action that takes several vulnerable turns to complete.</p>
<emclass="property">class </em><codeclass="sig-prename descclassname">evennia.contrib.tutorials.evadventure.combat_turnbased.</code><codeclass="sig-name descname">CombatActionFlee</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n">combathandler</span></em>, <emclass="sig-param"><spanclass="n">combatant</span></em>, <emclass="sig-param"><spanclass="n">action_dict</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorials/evadventure/combat_turnbased.html#CombatActionFlee"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorials.evadventure.combat_turnbased.CombatActionFlee"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">execute</code><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorials/evadventure/combat_turnbased.html#CombatActionFlee.execute"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorials.evadventure.combat_turnbased.CombatActionFlee.execute"title="Permalink to this definition">¶</a></dt>
<dd><p>Perform the action as the combatant. Should normally make use of the properties
<emclass="property">class </em><codeclass="sig-prename descclassname">evennia.contrib.tutorials.evadventure.combat_turnbased.</code><codeclass="sig-name descname">EvAdventureTurnbasedCombatHandler</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="o">*</span><spanclass="n">args</span></em>, <emclass="sig-param"><spanclass="o">**</span><spanclass="n">kwargs</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorials/evadventure/combat_turnbased.html#EvAdventureTurnbasedCombatHandler"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorials.evadventure.combat_turnbased.EvAdventureTurnbasedCombatHandler"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">flee_timeout</code><aclass="headerlink"href="#evennia.contrib.tutorials.evadventure.combat_turnbased.EvAdventureTurnbasedCombatHandler.flee_timeout"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">fallback_action_dict</code><aclass="headerlink"href="#evennia.contrib.tutorials.evadventure.combat_turnbased.EvAdventureTurnbasedCombatHandler.fallback_action_dict"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">turn</code><aclass="headerlink"href="#evennia.contrib.tutorials.evadventure.combat_turnbased.EvAdventureTurnbasedCombatHandler.turn"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">combatants</code><aclass="headerlink"href="#evennia.contrib.tutorials.evadventure.combat_turnbased.EvAdventureTurnbasedCombatHandler.combatants"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">advantage_matrix</code><aclass="headerlink"href="#evennia.contrib.tutorials.evadventure.combat_turnbased.EvAdventureTurnbasedCombatHandler.advantage_matrix"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">disadvantage_matrix</code><aclass="headerlink"href="#evennia.contrib.tutorials.evadventure.combat_turnbased.EvAdventureTurnbasedCombatHandler.disadvantage_matrix"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">fleeing_combatants</code><aclass="headerlink"href="#evennia.contrib.tutorials.evadventure.combat_turnbased.EvAdventureTurnbasedCombatHandler.fleeing_combatants"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">defeated_combatants</code><aclass="headerlink"href="#evennia.contrib.tutorials.evadventure.combat_turnbased.EvAdventureTurnbasedCombatHandler.defeated_combatants"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">give_advantage</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n">combatant</span></em>, <emclass="sig-param"><spanclass="n">target</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorials/evadventure/combat_turnbased.html#EvAdventureTurnbasedCombatHandler.give_advantage"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorials.evadventure.combat_turnbased.EvAdventureTurnbasedCombatHandler.give_advantage"title="Permalink to this definition">¶</a></dt>
<dd><p>Let a benefiter gain advantage against the target.</p>
<dlclass="field-list simple">
<dtclass="field-odd">Parameters</dt>
<ddclass="field-odd"><ulclass="simple">
<li><p><strong>combatant</strong> (<em>Character</em><em> or </em><em>NPC</em>) – The one to gain the advantage. This may or may not
be the same entity that creates the advantage in the first place.</p></li>
<li><p><strong>target</strong> (<em>Character</em><em> or </em><em>NPC</em>) – The one against which the target gains advantage. This
could (in principle) be the same as the benefiter (e.g. gaining advantage on
<codeclass="sig-name descname">give_disadvantage</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n">combatant</span></em>, <emclass="sig-param"><spanclass="n">target</span></em>, <emclass="sig-param"><spanclass="o">**</span><spanclass="n">kwargs</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorials/evadventure/combat_turnbased.html#EvAdventureTurnbasedCombatHandler.give_disadvantage"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorials.evadventure.combat_turnbased.EvAdventureTurnbasedCombatHandler.give_disadvantage"title="Permalink to this definition">¶</a></dt>
<dd><p>Let an affected party gain disadvantage against a target.</p>
<dlclass="field-list simple">
<dtclass="field-odd">Parameters</dt>
<ddclass="field-odd"><ulclass="simple">
<li><p><strong>recipient</strong> (<em>Character</em><em> or </em><em>NPC</em>) – The one to get the disadvantage.</p></li>
<li><p><strong>target</strong> (<em>Character</em><em> or </em><em>NPC</em>) – The one against which the target gains disadvantage, usually
<codeclass="sig-name descname">has_advantage</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n">combatant</span></em>, <emclass="sig-param"><spanclass="n">target</span></em>, <emclass="sig-param"><spanclass="o">**</span><spanclass="n">kwargs</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorials/evadventure/combat_turnbased.html#EvAdventureTurnbasedCombatHandler.has_advantage"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorials.evadventure.combat_turnbased.EvAdventureTurnbasedCombatHandler.has_advantage"title="Permalink to this definition">¶</a></dt>
<dd><p>Check if a given combatant has advantage against a target.</p>
<dlclass="field-list simple">
<dtclass="field-odd">Parameters</dt>
<ddclass="field-odd"><ulclass="simple">
<li><p><strong>combatant</strong> (<em>Character</em><em> or </em><em>NPC</em>) – The one to check if they have advantage</p></li>
<li><p><strong>target</strong> (<em>Character</em><em> or </em><em>NPC</em>) – The target to check advantage against.</p></li>
<codeclass="sig-name descname">has_disadvantage</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n">combatant</span></em>, <emclass="sig-param"><spanclass="n">target</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorials/evadventure/combat_turnbased.html#EvAdventureTurnbasedCombatHandler.has_disadvantage"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorials.evadventure.combat_turnbased.EvAdventureTurnbasedCombatHandler.has_disadvantage"title="Permalink to this definition">¶</a></dt>
<dd><p>Check if a given combatant has disadvantage against a target.</p>
<dlclass="field-list simple">
<dtclass="field-odd">Parameters</dt>
<ddclass="field-odd"><ulclass="simple">
<li><p><strong>combatant</strong> (<em>Character</em><em> or </em><em>NPC</em>) – The one to check if they have disadvantage</p></li>
<li><p><strong>target</strong> (<em>Character</em><em> or </em><em>NPC</em>) – The target to check disadvantage against.</p></li>
<codeclass="sig-name descname">add_combatant</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n">combatant</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorials/evadventure/combat_turnbased.html#EvAdventureTurnbasedCombatHandler.add_combatant"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorials.evadventure.combat_turnbased.EvAdventureTurnbasedCombatHandler.add_combatant"title="Permalink to this definition">¶</a></dt>
<dd><p>Add a new combatant to the battle. Can be called multiple times safely.</p>
<dlclass="field-list simple">
<dtclass="field-odd">Parameters</dt>
<ddclass="field-odd"><p><strong>combatant</strong> (<aclass="reference internal"href="evennia.contrib.tutorials.evadventure.characters.html#evennia.contrib.tutorials.evadventure.characters.EvAdventureCharacter"title="evennia.contrib.tutorials.evadventure.characters.EvAdventureCharacter"><em>EvAdventureCharacter</em></a><em>, </em><aclass="reference internal"href="evennia.contrib.tutorials.evadventure.npcs.html#evennia.contrib.tutorials.evadventure.npcs.EvAdventureNPC"title="evennia.contrib.tutorials.evadventure.npcs.EvAdventureNPC"><em>EvAdventureNPC</em></a>) – Any number of combatants to add to
the combat.</p>
</dd>
<dtclass="field-even">Returns</dt>
<ddclass="field-even"><p><em>bool</em>– If this combatant was newly added or not (it was already in combat).</p>
<codeclass="sig-name descname">remove_combatant</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n">combatant</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorials/evadventure/combat_turnbased.html#EvAdventureTurnbasedCombatHandler.remove_combatant"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorials.evadventure.combat_turnbased.EvAdventureTurnbasedCombatHandler.remove_combatant"title="Permalink to this definition">¶</a></dt>
<dd><p>Remove a combatant from the battle. This removes their queue.</p>
<dlclass="field-list simple">
<dtclass="field-odd">Parameters</dt>
<ddclass="field-odd"><p><strong>combatant</strong> (<aclass="reference internal"href="evennia.contrib.tutorials.evadventure.characters.html#evennia.contrib.tutorials.evadventure.characters.EvAdventureCharacter"title="evennia.contrib.tutorials.evadventure.characters.EvAdventureCharacter"><em>EvAdventureCharacter</em></a><em>, </em><aclass="reference internal"href="evennia.contrib.tutorials.evadventure.npcs.html#evennia.contrib.tutorials.evadventure.npcs.EvAdventureNPC"title="evennia.contrib.tutorials.evadventure.npcs.EvAdventureNPC"><em>EvAdventureNPC</em></a>) – A combatant to add to
<codeclass="sig-name descname">start_combat</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="o">**</span><spanclass="n">kwargs</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorials/evadventure/combat_turnbased.html#EvAdventureTurnbasedCombatHandler.start_combat"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorials.evadventure.combat_turnbased.EvAdventureTurnbasedCombatHandler.start_combat"title="Permalink to this definition">¶</a></dt>
<dd><p>This actually starts the combat. It’s safe to run this multiple times
since it will only start combat if it isn’t already running.</p>
<codeclass="sig-name descname">stop_combat</code><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorials/evadventure/combat_turnbased.html#EvAdventureTurnbasedCombatHandler.stop_combat"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorials.evadventure.combat_turnbased.EvAdventureTurnbasedCombatHandler.stop_combat"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">get_combat_summary</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n">combatant</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorials/evadventure/combat_turnbased.html#EvAdventureTurnbasedCombatHandler.get_combat_summary"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorials.evadventure.combat_turnbased.EvAdventureTurnbasedCombatHandler.get_combat_summary"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">get_sides</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n">combatant</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorials/evadventure/combat_turnbased.html#EvAdventureTurnbasedCombatHandler.get_sides"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorials.evadventure.combat_turnbased.EvAdventureTurnbasedCombatHandler.get_sides"title="Permalink to this definition">¶</a></dt>
<dd><p>Get a listing of the two ‘sides’ of this combat, from the perspective of the provided
combatant. The sides don’t need to be balanced.</p>
<dlclass="field-list simple">
<dtclass="field-odd">Parameters</dt>
<ddclass="field-odd"><p><strong>combatant</strong> (<em>Character</em><em> or </em><em>NPC</em>) – The one whose sides are to determined.</p>
</dd>
<dtclass="field-even">Returns</dt>
<ddclass="field-even"><p><em>tuple</em>– A tuple of lists <strong>(allies, enemies)</strong>, from the perspective of <strong>combatant</strong>.</p>
</dd>
</dl>
<divclass="admonition note">
<pclass="admonition-title">Note</p>
<p>The sides are found by checking PCs vs NPCs. PCs can normally not attack other PCs, so
are naturally allies. If the current room has the <strong>allow_pvp</strong> Attribute set, then _all_
other combatants (PCs and NPCs alike) are considered valid enemies (one could expand
<codeclass="sig-name descname">queue_action</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n">combatant</span></em>, <emclass="sig-param"><spanclass="n">action_dict</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorials/evadventure/combat_turnbased.html#EvAdventureTurnbasedCombatHandler.queue_action"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorials.evadventure.combat_turnbased.EvAdventureTurnbasedCombatHandler.queue_action"title="Permalink to this definition">¶</a></dt>
<dd><p>Queue an action by adding the new actiondict.</p>
<dlclass="field-list simple">
<dtclass="field-odd">Parameters</dt>
<ddclass="field-odd"><ulclass="simple">
<li><p><strong>combatant</strong> (<aclass="reference internal"href="evennia.contrib.tutorials.evadventure.characters.html#evennia.contrib.tutorials.evadventure.characters.EvAdventureCharacter"title="evennia.contrib.tutorials.evadventure.characters.EvAdventureCharacter"><em>EvAdventureCharacter</em></a><em>, </em><aclass="reference internal"href="evennia.contrib.tutorials.evadventure.npcs.html#evennia.contrib.tutorials.evadventure.npcs.EvAdventureNPC"title="evennia.contrib.tutorials.evadventure.npcs.EvAdventureNPC"><em>EvAdventureNPC</em></a>) – A combatant queueing the action.</p></li>
<li><p><strong>action_dict</strong> (<em>dict</em>) – A dict describing the action class by name along with properties.</p></li>
<codeclass="sig-name descname">get_next_action_dict</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n">combatant</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorials/evadventure/combat_turnbased.html#EvAdventureTurnbasedCombatHandler.get_next_action_dict"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorials.evadventure.combat_turnbased.EvAdventureTurnbasedCombatHandler.get_next_action_dict"title="Permalink to this definition">¶</a></dt>
<dd><p>Give the action_dict for the next action that will be executed.</p>
<dlclass="field-list simple">
<dtclass="field-odd">Parameters</dt>
<ddclass="field-odd"><p><strong>combatant</strong> (<aclass="reference internal"href="evennia.contrib.tutorials.evadventure.characters.html#evennia.contrib.tutorials.evadventure.characters.EvAdventureCharacter"title="evennia.contrib.tutorials.evadventure.characters.EvAdventureCharacter"><em>EvAdventureCharacter</em></a><em>, </em><aclass="reference internal"href="evennia.contrib.tutorials.evadventure.npcs.html#evennia.contrib.tutorials.evadventure.npcs.EvAdventureNPC"title="evennia.contrib.tutorials.evadventure.npcs.EvAdventureNPC"><em>EvAdventureNPC</em></a>) – The combatant to get the action for.</p>
</dd>
<dtclass="field-even">Returns</dt>
<ddclass="field-even"><p><em>dict</em>– The next action-dict in the queue.</p>
<codeclass="sig-name descname">execute_next_action</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n">combatant</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorials/evadventure/combat_turnbased.html#EvAdventureTurnbasedCombatHandler.execute_next_action"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorials.evadventure.combat_turnbased.EvAdventureTurnbasedCombatHandler.execute_next_action"title="Permalink to this definition">¶</a></dt>
<dd><p>Perform a combatant’s next queued action. Note that there is _always_ an action queued,
even if this action is ‘hold’, which means the combatant will do nothing.</p>
<dlclass="field-list simple">
<dtclass="field-odd">Parameters</dt>
<ddclass="field-odd"><p><strong>combatant</strong> (<aclass="reference internal"href="evennia.contrib.tutorials.evadventure.characters.html#evennia.contrib.tutorials.evadventure.characters.EvAdventureCharacter"title="evennia.contrib.tutorials.evadventure.characters.EvAdventureCharacter"><em>EvAdventureCharacter</em></a><em>, </em><aclass="reference internal"href="evennia.contrib.tutorials.evadventure.npcs.html#evennia.contrib.tutorials.evadventure.npcs.EvAdventureNPC"title="evennia.contrib.tutorials.evadventure.npcs.EvAdventureNPC"><em>EvAdventureNPC</em></a>) – The combatant performing and action.</p>
<codeclass="sig-name descname">check_stop_combat</code><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorials/evadventure/combat_turnbased.html#EvAdventureTurnbasedCombatHandler.check_stop_combat"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorials.evadventure.combat_turnbased.EvAdventureTurnbasedCombatHandler.check_stop_combat"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">at_repeat</code><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorials/evadventure/combat_turnbased.html#EvAdventureTurnbasedCombatHandler.at_repeat"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorials.evadventure.combat_turnbased.EvAdventureTurnbasedCombatHandler.at_repeat"title="Permalink to this definition">¶</a></dt>
<dd><p>This method is called every time Script repeats (every <strong>interval</strong> seconds). Performs a full
turn of combat, performing everyone’s actions in random order.</p>
<emclass="property">exception </em><codeclass="sig-name descname">DoesNotExist</code><aclass="headerlink"href="#evennia.contrib.tutorials.evadventure.combat_turnbased.EvAdventureTurnbasedCombatHandler.DoesNotExist"title="Permalink to this definition">¶</a></dt>
<emclass="property">exception </em><codeclass="sig-name descname">MultipleObjectsReturned</code><aclass="headerlink"href="#evennia.contrib.tutorials.evadventure.combat_turnbased.EvAdventureTurnbasedCombatHandler.MultipleObjectsReturned"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">path</code><emclass="property"> = 'evennia.contrib.tutorials.evadventure.combat_turnbased.EvAdventureTurnbasedCombatHandler'</em><aclass="headerlink"href="#evennia.contrib.tutorials.evadventure.combat_turnbased.EvAdventureTurnbasedCombatHandler.path"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">typename</code><emclass="property"> = 'EvAdventureTurnbasedCombatHandler'</em><aclass="headerlink"href="#evennia.contrib.tutorials.evadventure.combat_turnbased.EvAdventureTurnbasedCombatHandler.typename"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-prename descclassname">evennia.contrib.tutorials.evadventure.combat_turnbased.</code><codeclass="sig-name descname">node_choose_enemy_target</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n">caller</span></em>, <emclass="sig-param"><spanclass="n">raw_string</span></em>, <emclass="sig-param"><spanclass="o">**</span><spanclass="n">kwargs</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorials/evadventure/combat_turnbased.html#node_choose_enemy_target"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorials.evadventure.combat_turnbased.node_choose_enemy_target"title="Permalink to this definition">¶</a></dt>
<dd><p>Choose an enemy as a target for an action</p>
<codeclass="sig-prename descclassname">evennia.contrib.tutorials.evadventure.combat_turnbased.</code><codeclass="sig-name descname">node_choose_enemy_recipient</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n">caller</span></em>, <emclass="sig-param"><spanclass="n">raw_string</span></em>, <emclass="sig-param"><spanclass="o">**</span><spanclass="n">kwargs</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorials/evadventure/combat_turnbased.html#node_choose_enemy_recipient"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorials.evadventure.combat_turnbased.node_choose_enemy_recipient"title="Permalink to this definition">¶</a></dt>
<dd><p>Choose an enemy as a ‘recipient’ for an action.</p>
<codeclass="sig-prename descclassname">evennia.contrib.tutorials.evadventure.combat_turnbased.</code><codeclass="sig-name descname">node_choose_allied_target</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n">caller</span></em>, <emclass="sig-param"><spanclass="n">raw_string</span></em>, <emclass="sig-param"><spanclass="o">**</span><spanclass="n">kwargs</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorials/evadventure/combat_turnbased.html#node_choose_allied_target"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorials.evadventure.combat_turnbased.node_choose_allied_target"title="Permalink to this definition">¶</a></dt>
<dd><p>Choose an enemy as a target for an action</p>
<codeclass="sig-prename descclassname">evennia.contrib.tutorials.evadventure.combat_turnbased.</code><codeclass="sig-name descname">node_choose_allied_recipient</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n">caller</span></em>, <emclass="sig-param"><spanclass="n">raw_string</span></em>, <emclass="sig-param"><spanclass="o">**</span><spanclass="n">kwargs</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorials/evadventure/combat_turnbased.html#node_choose_allied_recipient"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorials.evadventure.combat_turnbased.node_choose_allied_recipient"title="Permalink to this definition">¶</a></dt>
<dd><p>Choose an allied recipient for an action</p>
<codeclass="sig-prename descclassname">evennia.contrib.tutorials.evadventure.combat_turnbased.</code><codeclass="sig-name descname">node_choose_ability</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n">caller</span></em>, <emclass="sig-param"><spanclass="n">raw_string</span></em>, <emclass="sig-param"><spanclass="o">**</span><spanclass="n">kwargs</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorials/evadventure/combat_turnbased.html#node_choose_ability"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorials.evadventure.combat_turnbased.node_choose_ability"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-prename descclassname">evennia.contrib.tutorials.evadventure.combat_turnbased.</code><codeclass="sig-name descname">node_choose_use_item</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n">caller</span></em>, <emclass="sig-param"><spanclass="n">raw_string</span></em>, <emclass="sig-param"><spanclass="o">**</span><spanclass="n">kwargs</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorials/evadventure/combat_turnbased.html#node_choose_use_item"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorials.evadventure.combat_turnbased.node_choose_use_item"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-prename descclassname">evennia.contrib.tutorials.evadventure.combat_turnbased.</code><codeclass="sig-name descname">node_choose_wield_item</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n">caller</span></em>, <emclass="sig-param"><spanclass="n">raw_string</span></em>, <emclass="sig-param"><spanclass="o">**</span><spanclass="n">kwargs</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorials/evadventure/combat_turnbased.html#node_choose_wield_item"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorials.evadventure.combat_turnbased.node_choose_wield_item"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-prename descclassname">evennia.contrib.tutorials.evadventure.combat_turnbased.</code><codeclass="sig-name descname">node_combat</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n">caller</span></em>, <emclass="sig-param"><spanclass="n">raw_string</span></em>, <emclass="sig-param"><spanclass="o">**</span><spanclass="n">kwargs</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorials/evadventure/combat_turnbased.html#node_combat"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorials.evadventure.combat_turnbased.node_combat"title="Permalink to this definition">¶</a></dt>
<emclass="property">class </em><codeclass="sig-prename descclassname">evennia.contrib.tutorials.evadventure.combat_turnbased.</code><codeclass="sig-name descname">CmdTurnAttack</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="o">**</span><spanclass="n">kwargs</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorials/evadventure/combat_turnbased.html#CmdTurnAttack"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorials.evadventure.combat_turnbased.CmdTurnAttack"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">key</code><emclass="property"> = 'attack'</em><aclass="headerlink"href="#evennia.contrib.tutorials.evadventure.combat_turnbased.CmdTurnAttack.key"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">aliases</code><emclass="property"> = ['hit', 'turnbased combat']</em><aclass="headerlink"href="#evennia.contrib.tutorials.evadventure.combat_turnbased.CmdTurnAttack.aliases"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">turn_timeout</code><emclass="property"> = 30</em><aclass="headerlink"href="#evennia.contrib.tutorials.evadventure.combat_turnbased.CmdTurnAttack.turn_timeout"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">flee_time</code><emclass="property"> = 3</em><aclass="headerlink"href="#evennia.contrib.tutorials.evadventure.combat_turnbased.CmdTurnAttack.flee_time"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">parse</code><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorials/evadventure/combat_turnbased.html#CmdTurnAttack.parse"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorials.evadventure.combat_turnbased.CmdTurnAttack.parse"title="Permalink to this definition">¶</a></dt>
<dd><p>Once the cmdhandler has identified this as the command we
want, this function is run. If many of your commands have a
similar syntax (for example ‘cmd arg1 = arg2’) you should
simply define this once and just let other commands of the
same form inherit from this. See the docstring of this module
for which object properties are available to use (notably
<codeclass="sig-name descname">func</code><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorials/evadventure/combat_turnbased.html#CmdTurnAttack.func"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorials.evadventure.combat_turnbased.CmdTurnAttack.func"title="Permalink to this definition">¶</a></dt>
<dd><p>This is the actual executing part of the command. It is
called directly after self.parse(). See the docstring of this
module for which object properties are available (beyond those
<codeclass="sig-name descname">help_category</code><emclass="property"> = 'general'</em><aclass="headerlink"href="#evennia.contrib.tutorials.evadventure.combat_turnbased.CmdTurnAttack.help_category"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">lock_storage</code><emclass="property"> = 'cmd:all();'</em><aclass="headerlink"href="#evennia.contrib.tutorials.evadventure.combat_turnbased.CmdTurnAttack.lock_storage"title="Permalink to this definition">¶</a></dt>
<emclass="property">class </em><codeclass="sig-prename descclassname">evennia.contrib.tutorials.evadventure.combat_turnbased.</code><codeclass="sig-name descname">TurnCombatCmdSet</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n">cmdsetobj</span><spanclass="o">=</span><spanclass="default_value">None</span></em>, <emclass="sig-param"><spanclass="n">key</span><spanclass="o">=</span><spanclass="default_value">None</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorials/evadventure/combat_turnbased.html#TurnCombatCmdSet"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorials.evadventure.combat_turnbased.TurnCombatCmdSet"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">at_cmdset_creation</code><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorials/evadventure/combat_turnbased.html#TurnCombatCmdSet.at_cmdset_creation"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorials.evadventure.combat_turnbased.TurnCombatCmdSet.at_cmdset_creation"title="Permalink to this definition">¶</a></dt>
<dd><p>Hook method - this should be overloaded in the inheriting
class, and should take care of populating the cmdset by use of
<codeclass="sig-name descname">path</code><emclass="property"> = 'evennia.contrib.tutorials.evadventure.combat_turnbased.TurnCombatCmdSet'</em><aclass="headerlink"href="#evennia.contrib.tutorials.evadventure.combat_turnbased.TurnCombatCmdSet.path"title="Permalink to this definition">¶</a></dt>