From 97da432c35b8c7aaf9dd2c39e2aa4b1f55f36065 Mon Sep 17 00:00:00 2001 From: chai Date: Wed, 27 Jan 2021 16:15:06 +0800 Subject: +behaviour designer --- .../SharedGameObjectsToGameObjectList.cs | 41 ++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 Client/Assets/Behavior Designer/Runtime/Basic Tasks/SharedVariables/SharedGameObjectsToGameObjectList.cs (limited to 'Client/Assets/Behavior Designer/Runtime/Basic Tasks/SharedVariables/SharedGameObjectsToGameObjectList.cs') diff --git a/Client/Assets/Behavior Designer/Runtime/Basic Tasks/SharedVariables/SharedGameObjectsToGameObjectList.cs b/Client/Assets/Behavior Designer/Runtime/Basic Tasks/SharedVariables/SharedGameObjectsToGameObjectList.cs new file mode 100644 index 00000000..5849ac45 --- /dev/null +++ b/Client/Assets/Behavior Designer/Runtime/Basic Tasks/SharedVariables/SharedGameObjectsToGameObjectList.cs @@ -0,0 +1,41 @@ +using UnityEngine; +using System.Collections.Generic; + +namespace BehaviorDesigner.Runtime.Tasks.Basic.SharedVariables +{ + [TaskCategory("Basic/SharedVariable")] + [TaskDescription("Sets the SharedGameObjectList values from the GameObjects. Returns Success.")] + public class SharedGameObjectsToGameObjectList : Action + { + [Tooltip("The GameObjects value")] + public SharedGameObject[] gameObjects; + [RequiredField] + [Tooltip("The SharedTransformList to set")] + public SharedGameObjectList storedGameObjectList; + + public override void OnAwake() + { + storedGameObjectList.Value = new List(); + } + + public override TaskStatus OnUpdate() + { + if (gameObjects == null || gameObjects.Length == 0) { + return TaskStatus.Failure; + } + + storedGameObjectList.Value.Clear(); + for (int i = 0; i < gameObjects.Length; ++i) { + storedGameObjectList.Value.Add(gameObjects[i].Value); + } + + return TaskStatus.Success; + } + + public override void OnReset() + { + gameObjects = null; + storedGameObjectList = null; + } + } +} \ No newline at end of file -- cgit v1.1-26-g67d0