From 97da432c35b8c7aaf9dd2c39e2aa4b1f55f36065 Mon Sep 17 00:00:00 2001 From: chai Date: Wed, 27 Jan 2021 16:15:06 +0800 Subject: +behaviour designer --- .../Runtime/Basic Tasks/String/GetSubstring.cs | 37 ++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 Client/Assets/Behavior Designer/Runtime/Basic Tasks/String/GetSubstring.cs (limited to 'Client/Assets/Behavior Designer/Runtime/Basic Tasks/String/GetSubstring.cs') diff --git a/Client/Assets/Behavior Designer/Runtime/Basic Tasks/String/GetSubstring.cs b/Client/Assets/Behavior Designer/Runtime/Basic Tasks/String/GetSubstring.cs new file mode 100644 index 00000000..be5de33e --- /dev/null +++ b/Client/Assets/Behavior Designer/Runtime/Basic Tasks/String/GetSubstring.cs @@ -0,0 +1,37 @@ +using UnityEngine; + +namespace BehaviorDesigner.Runtime.Tasks.Basic.UnityString +{ + [TaskCategory("Basic/String")] + [TaskDescription("Stores a substring of the target string")] + public class GetSubstring : Action + { + [Tooltip("The target string")] + public SharedString targetString; + [Tooltip("The start substring index")] + public SharedInt startIndex = 0; + [Tooltip("The length of the substring. Don't use if -1")] + public SharedInt length = -1; + [Tooltip("The stored result")] + [RequiredField] + public SharedString storeResult; + + public override TaskStatus OnUpdate() + { + if (length.Value != -1) { + storeResult.Value = targetString.Value.Substring(startIndex.Value, length.Value); + } else { + storeResult.Value = targetString.Value.Substring(startIndex.Value); + } + return TaskStatus.Success; + } + + public override void OnReset() + { + targetString = ""; + startIndex = 0; + length = -1; + storeResult = ""; + } + } +} \ No newline at end of file -- cgit v1.1-26-g67d0