#include <EnergyNode.hpp>
|
| | EnergyNode (float x, float y, float z, float energy) |
| |
| | EnergyNode (NodeType type, float x, float y, float z, float energy) |
| |
| virtual bool | isEnergyNode () |
| |
| float | getEnergy () const |
| |
| virtual float | transferEnergy (SpellNode *from, float count) |
| |
| | SpellNode (NodeType type, float x, float y, float z) |
| |
| | ~SpellNode () |
| |
| void | connectNode (SpellNode *otherNode) |
| |
| void | tick (IEventListener &listener, SpellNode *callable) |
| |
| bool | inTick () const |
| |
| float | getDistance (const SpellNode *otherNode) const |
| |
| NodeType | getType () const |
| |
| void | iterrator (std::function< void(SpellNode *)> next) |
| |
| std::set< SpellNode * > & | getConnectedNodes () |
| |
| float | getX () const |
| |
| float | getY () const |
| |
| float | getZ () const |
| |
| EnergyNode::EnergyNode |
( |
float |
x, |
|
|
float |
y, |
|
|
float |
z, |
|
|
float |
energy |
|
) |
| |
|
inline |
| EnergyNode::EnergyNode |
( |
NodeType |
type, |
|
|
float |
x, |
|
|
float |
y, |
|
|
float |
z, |
|
|
float |
energy |
|
) |
| |
|
inline |
| float EnergyNode::getEnergy |
( |
| ) |
const |
|
inline |
| virtual bool EnergyNode::isEnergyNode |
( |
| ) |
|
|
inlinevirtual |
Каждый тик мы рапределяем почти равномерно энергию между всеми дочерними нодами. Энергия переливается только в том случае, если её где-то меньше чем в текущей ноде. По умолчанию размер пакета = (Энергия текущего пакета - Энергия дочернего пакета) * 0.1 (10% от транзакции) Каждая передача энергии сопровождается потерей. В контексте проекта это называется налог на энергию (energy tax). Это приводит к тому, что энергия не вечна и рано или поздно пропадет из плетения.
- Parameters
-
| listener | Вся передача событий из заклинания наружу происходит с помощью Event'ов |
| callable | Вызывающая нода. Пока не пригождается, но мало ли. Может быть NULL |
Reimplemented from SpellNode.
| float EnergyNode::transferEnergy |
( |
SpellNode * |
from, |
|
|
float |
count |
|
) |
| |
|
virtual |
| float EnergyNode::energy = 0 |
|
protected |
The documentation for this class was generated from the following files:
- /home/travis/build/glitchless/Recast/src/headers/spells/nodes/EnergyNode.hpp
- /home/travis/build/glitchless/Recast/src/spell/nodes/EnergyNode.cpp