Jungle Playback
The JunglePlayback
class is responsible for managing the playback of a JungleTree
.
It handles the execution of nodes within the tree and provides various methods and properties to interact with the playback process.
Overview​
The JunglePlayback
class facilitates the following functionalities:
- Managing the runtime instances of nodes.
- Handling the start, stop, and update cycles of the nodes.
- Providing event hooks for node lifecycle events.
- Allowing the addition and removal of revert actions.
Properties​
Uid
​
public readonly string Uid
The unique identifier of this playback.
Tree
​
public readonly JungleTree Tree
The tree this playback is playing.
Nodes
​
public IReadOnlyCollection<JungleNode> Nodes { get; }
List of runtime node instances.
Time
​
public float Time { get; }
The amount of time in seconds that this playback has been running, using unscaled time.
Methods​
TryGetEquivalentNode
​
public bool TryGetEquivalentNode(JungleNode originalNode, out JungleNode equivalentNode)
Tries to get an equivalent node from the internal dictionary based on the unique identifier of the original node.
Returns:
true
if an equivalent node is found; otherwise,false
.
TryGetNodeByUid
​
public bool TryGetNodeByUid(string nodeUid, out JungleNode node)
Tries to get a node from the internal dictionary based on the unique identifier of the node.
Returns:
true
if the node is found; otherwise,false
.
IsNodeRunning
​
public bool IsNodeRunning(JungleNode node)
Checks if the specified node is currently running.
Returns:
true
if the node is running; otherwise,false
.
IsNodeRunning
​
public bool IsNodeRunning(string nodeUid)
Checks if a node with the specified unique identifier (UID) is currently running.
Returns:
true
if the node is running; otherwise,false
.
AddRevertAction
​
public string AddRevertAction(Action action)
Adds a revert action to the internal dictionary and returns a unique identifier for the action.
Returns:
- A unique identifier for the added revert action.
RemoveRevertAction
​
public void RemoveRevertAction(string revertActionUid)
Removes a revert action from the internal dictionary using the provided unique identifier.
Events​
OnNodeStart
​
public event Action<string> OnNodeStart
Invoked when the playback starts a node.
Values:
string
: The UID of the node that is starting.
OnNodeStop
​
public event Action<string> OnNodeStop
Invoked when the playback stops a node.
Values:
string
: The UID of the node that is stopping.
OnNodeError
​
public event Action<string, string> OnNodeError
Invoked when a node encounters an error.
Values:
string
: The UID of the node that encountered the error.string
: The error message.