Add project files.

This commit is contained in:
Ankitkumar Satapara
2026-04-17 22:31:58 +05:30
commit 21aaef6776
473 changed files with 50152 additions and 0 deletions

View File

@@ -0,0 +1,25 @@
using System.Threading.Tasks;
namespace Nodify.StateMachine
{
[BlackboardItem("Copy Key")]
public class CopyKeyAction : IBlackboardAction
{
[BlackboardProperty("Source", BlackboardKeyType.Object)]
public BlackboardProperty Source { get; set; }
[BlackboardProperty("Target", BlackboardKeyType.Object)]
public BlackboardProperty Target { get; set; }
public Task Execute(Blackboard blackboard)
{
if (Source != Target && Source.IsKey && Target.IsKey)
{
var value = blackboard[Source];
blackboard[Target] = value;
}
return Task.CompletedTask;
}
}
}

View File

@@ -0,0 +1,22 @@
using System.Threading.Tasks;
namespace Nodify.StateMachine
{
[BlackboardItem("Set Value")]
public class SetKeyValueAction : IBlackboardAction
{
[BlackboardProperty(BlackboardKeyType.Object)]
public BlackboardProperty Key { get; set; }
[BlackboardProperty(BlackboardKeyType.Object, CanChangeType = true)]
public BlackboardProperty Value { get; set; }
public Task Execute(Blackboard blackboard)
{
var value = blackboard.GetValue<int>(Value);
blackboard[Key] = value;
return Task.CompletedTask;
}
}
}

View File

@@ -0,0 +1,28 @@
using System.Threading.Tasks;
namespace Nodify.StateMachine
{
[BlackboardItem("Set State Delay")]
public class SetStateDelayAction : IBlackboardAction
{
[BlackboardProperty("Delay", BlackboardKeyType.Integer)]
public BlackboardProperty Delay { get; set; }
[BlackboardProperty("Success", BlackboardKeyType.Boolean, Usage = BlackboardKeyUsage.Output)]
public BlackboardProperty Success { get; set; }
public Task Execute(Blackboard blackboard)
{
var delay = blackboard.GetValue<int>(Delay);
if (delay.HasValue)
{
blackboard[DebugBlackboardDecorator.StateDelayKey] = delay;
}
blackboard[Success] = delay.HasValue;
return Task.CompletedTask;
}
}
}