package RTDB

AIActionSmartComposite : AIRecord
{
	fk< AINode >[] nodes = [];
	bool failOnNodeActivationConditionFailure = false;
	fk< AISmartCompositeType > type = "AISmartCompositeType.Selector";
	int repeat = -1;
	fk< AIActionCondition >[] gracefulInterruptionCondition = [];
	float gracefulInterruptionConditionCheckInterval = 0.f;
	float conditionSuccessDuration = 0.f;
	bool disableActionsLimit = false;
}

AIActionSelector : AINode
{
	bool failOnNodeActivationConditionFailure = false;
	fk< AIAction >[] actions = [];
	fk< AIAction > defaultAction = "";
	bool disableActionsLimit = false;
}

AIActionSequence : AINode
{
	bool failOnNodeActivationConditionFailure = false;
	fk< AIAction >[] actions = [];
	bool hasMemory = false;
	bool disableActionsLimit = false;
}

