From 22891bf59032ba88262824255a706d652031384b Mon Sep 17 00:00:00 2001 From: chai Date: Thu, 10 Mar 2022 14:07:40 +0800 Subject: * move folder --- .../Runtime/Actions/Reflection/InvokeMethod.cs | 86 ---------------------- 1 file changed, 86 deletions(-) delete mode 100644 Assets/ThirdParty/Behavior Designer/Runtime/Actions/Reflection/InvokeMethod.cs (limited to 'Assets/ThirdParty/Behavior Designer/Runtime/Actions/Reflection/InvokeMethod.cs') diff --git a/Assets/ThirdParty/Behavior Designer/Runtime/Actions/Reflection/InvokeMethod.cs b/Assets/ThirdParty/Behavior Designer/Runtime/Actions/Reflection/InvokeMethod.cs deleted file mode 100644 index 7c239dbd..00000000 --- a/Assets/ThirdParty/Behavior Designer/Runtime/Actions/Reflection/InvokeMethod.cs +++ /dev/null @@ -1,86 +0,0 @@ -using UnityEngine; -using System; -using System.Collections.Generic; -using System.Reflection; - -namespace BehaviorDesigner.Runtime.Tasks -{ - [TaskDescription("Invokes the specified method with the specified parameters. Can optionally store the return value. Returns success if the method was invoked.")] - [HelpURL("http://www.opsive.com/assets/BehaviorDesigner/documentation.php?id=145")] - [TaskCategory("Reflection")] - [TaskIcon("{SkinColor}ReflectionIcon.png")] - public class InvokeMethod : Action - { - [Tooltip("The GameObject to invoke the method on")] - public SharedGameObject targetGameObject; - [Tooltip("The component to invoke the method on")] - public SharedString componentName; - [Tooltip("The name of the method")] - public SharedString methodName; - [Tooltip("The first parameter of the method")] - public SharedVariable parameter1; - [Tooltip("The second parameter of the method")] - public SharedVariable parameter2; - [Tooltip("The third parameter of the method")] - public SharedVariable parameter3; - [Tooltip("The fourth parameter of the method")] - public SharedVariable parameter4; - [Tooltip("Store the result of the invoke call")] - public SharedVariable storeResult; - - public override TaskStatus OnUpdate() - { - var type = TaskUtility.GetTypeWithinAssembly(componentName.Value); - if (type == null) { - Debug.LogWarning("Unable to invoke - type is null"); - return TaskStatus.Failure; - } - - var component = GetDefaultGameObject(targetGameObject.Value).GetComponent(type); - if (component == null) { - Debug.LogWarning("Unable to invoke method with component " + componentName.Value); - return TaskStatus.Failure; - } - - var parameterList = new List(); - var parameterTypeList = new List(); - SharedVariable sharedVariable = null; - for (int i = 0; i < 4; ++i) { - var parameterField = GetType().GetField("parameter" + (i + 1)); - if ((sharedVariable = parameterField.GetValue(this) as SharedVariable) != null) { - parameterList.Add(sharedVariable.GetValue()); - parameterTypeList.Add(sharedVariable.GetType().GetProperty("Value").PropertyType); - } else { - break; - } - } - // If you are receiving a compiler error on the Windows Store platform see this topic: - // http://www.opsive.com/assets/BehaviorDesigner/documentation.php?id=46 - var methodInfo = component.GetType().GetMethod(methodName.Value, parameterTypeList.ToArray()); - - if (methodInfo == null) { - Debug.LogWarning("Unable to invoke method " + methodName.Value + " on component " + componentName.Value); - return TaskStatus.Failure; - } - - var result = methodInfo.Invoke(component, parameterList.ToArray()); - if (storeResult != null) { - storeResult.SetValue(result); - } - - return TaskStatus.Success; - } - - public override void OnReset() - { - targetGameObject = null; - componentName = null; - methodName = null; - parameter1 = null; - parameter2 = null; - parameter3 = null; - parameter4 = null; - storeResult = null; - } - } -} \ No newline at end of file -- cgit v1.1-26-g67d0