Added VariableGetter functionality and some Variable setting components. Also added them to test scene.

This commit is contained in:
2025-10-28 13:09:36 +01:00
parent 8c1157c26e
commit 3fe79f2fd8
11 changed files with 125 additions and 1 deletions
@@ -0,0 +1,30 @@
using Godot;
namespace Babushka.scripts.CSharp.Low_Code.Variables;
/// <summary>
/// An active getter component for calling the payload value of a <see cref="VariableResource"/>.
/// </summary>
public partial class VariableGetter : Node
{
/// <summary>
/// The event resource to listen to.
/// </summary>
[Export] private VariableResource _variableResource;
/// <summary>
/// A signal that is triggered when the payload of one of the <see cref="VariableResource"/> is called.
/// </summary>
[Signal] public delegate void GetPayloadEventHandler(Variant payload);
/// <summary>
/// Gets the Variant payload of a VariableResource on demand.
/// </summary>
/// <returns></returns>
public Variant Get()
{
Variant payload = _variableResource.Payload;
EmitSignal(SignalName.GetPayload, payload);
return payload;
}
}