rokojori_action_library/Runtime/Actions/OnReady.cs

40 lines
996 B
C#
Raw Normal View History

2024-05-05 07:52:06 +00:00
using Godot;
2026-05-22 12:25:02 +00:00
using Rokojori.Extensions;
namespace Rokojori;
[RokojoriActionCoreExport]
[Tool][GlobalClass, Icon("res://addons/rokojori_action_library/Icons/OnEvent.svg") ]
public partial class OnReady : Node
{
/** <summary for="field actions">Actions to execute</summary>*/
[Export]
public Action[] actions = new Action[ 0 ];
/** <summary for="field triggerDirectChildren">Whether to execute Action child nodes</summary>*/
[Export]
public bool triggerDirectChildren = true;
[Export]
public bool triggerInsideEditor = false;
public Action.ActionTriggerMode additionalMode = Action.ActionTriggerMode.Always;
public Trillean someTrillean = Trillean.False;
public override void _Ready()
{
additionalMode = Action.ActionTriggerMode.Only_When_Processing_In_Hierarchy;
var nas = Trillean.Any;
if ( Engine.IsEditorHint() && ! triggerInsideEditor )
{
return;
2024-05-05 07:52:06 +00:00
}
2026-05-22 12:25:02 +00:00
Action.TriggerAllActions( actions, this, triggerDirectChildren );
2024-05-05 07:52:06 +00:00
}
2026-05-22 12:25:02 +00:00
}