From 7d409495b1600fb0372390b7aa05f17453621aba Mon Sep 17 00:00:00 2001 From: Syntriax Date: Fri, 16 Dec 2022 23:24:02 +0300 Subject: [PATCH] Unity Package Structure (0.1.0) --- Actions.meta => Runtime.meta | 2 +- ActionBase.cs => Runtime/ActionBase.cs | 9 ++++++--- .../ActionBase.cs.meta | 0 .../ActionBaseWithDeactivation.cs | 2 +- .../ActionBaseWithDeactivation.cs.meta | 0 IAction.cs => Runtime/IAction.cs | 4 ++-- IAction.cs.meta => Runtime/IAction.cs.meta | 0 .../IActionWithDeactivation.cs | 0 .../IActionWithDeactivation.cs.meta | 0 .../Syntriax.Modules.Action.asmdef | 0 .../Syntriax.Modules.Action.asmdef.meta | 0 Samples.meta | 8 ++++++++ {Actions => Samples}/PlatformerJump.cs | 4 ++-- {Actions => Samples}/PlatformerJump.cs.meta | 2 +- Samples/Syntriax.Modules.Action.Samples.asmdef | 17 +++++++++++++++++ .../Syntriax.Modules.Action.Samples.asmdef.meta | 7 +++++++ package.json | 14 ++++++++++++++ package.json.meta | 7 +++++++ 18 files changed, 66 insertions(+), 10 deletions(-) rename Actions.meta => Runtime.meta (77%) rename ActionBase.cs => Runtime/ActionBase.cs (65%) rename ActionBase.cs.meta => Runtime/ActionBase.cs.meta (100%) rename ActionBaseWithDeactivation.cs => Runtime/ActionBaseWithDeactivation.cs (87%) rename ActionBaseWithDeactivation.cs.meta => Runtime/ActionBaseWithDeactivation.cs.meta (100%) rename IAction.cs => Runtime/IAction.cs (78%) rename IAction.cs.meta => Runtime/IAction.cs.meta (100%) rename IActionWithDeactivation.cs => Runtime/IActionWithDeactivation.cs (100%) rename IActionWithDeactivation.cs.meta => Runtime/IActionWithDeactivation.cs.meta (100%) rename Syntriax.Modules.Action.asmdef => Runtime/Syntriax.Modules.Action.asmdef (100%) rename Syntriax.Modules.Action.asmdef.meta => Runtime/Syntriax.Modules.Action.asmdef.meta (100%) create mode 100644 Samples.meta rename {Actions => Samples}/PlatformerJump.cs (94%) rename {Actions => Samples}/PlatformerJump.cs.meta (83%) create mode 100644 Samples/Syntriax.Modules.Action.Samples.asmdef create mode 100644 Samples/Syntriax.Modules.Action.Samples.asmdef.meta create mode 100644 package.json create mode 100644 package.json.meta diff --git a/Actions.meta b/Runtime.meta similarity index 77% rename from Actions.meta rename to Runtime.meta index c3f4d4e..f4e2917 100644 --- a/Actions.meta +++ b/Runtime.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 341c2035d0254344cad44ff6138adf58 +guid: c9bc11e81e88c784c95a3478b5e2ed52 folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/ActionBase.cs b/Runtime/ActionBase.cs similarity index 65% rename from ActionBase.cs rename to Runtime/ActionBase.cs index c55c30e..f4ad3db 100644 --- a/ActionBase.cs +++ b/Runtime/ActionBase.cs @@ -6,12 +6,15 @@ namespace Syntriax.Modules.Action { public abstract class ActionBase : MonoBehaviour, IAction { - public IToggleState ToggleState { get; protected set; } = null; + public IToggleState MemberToggleState { get; protected set; } = null; public Action OnActivated { get; set; } = null; + protected IToggleState toggleState = null; + protected virtual void Awake() { - ToggleState = new ToggleStateMember(true); + toggleState = GetComponent(); + MemberToggleState = new ToggleStateMember(true); OnActivated += (_) => OnActionActivated(); } @@ -21,7 +24,7 @@ namespace Syntriax.Modules.Action protected abstract void OnActionActivated(); public virtual void Activate() { - if (!ToggleState.IsToggledNullChecked()) + if (!MemberToggleState.IsToggledNullChecked() || !toggleState.IsToggledNullChecked()) return; OnActivated?.Invoke(this); diff --git a/ActionBase.cs.meta b/Runtime/ActionBase.cs.meta similarity index 100% rename from ActionBase.cs.meta rename to Runtime/ActionBase.cs.meta diff --git a/ActionBaseWithDeactivation.cs b/Runtime/ActionBaseWithDeactivation.cs similarity index 87% rename from ActionBaseWithDeactivation.cs rename to Runtime/ActionBaseWithDeactivation.cs index bb4a0cf..5a0599d 100644 --- a/ActionBaseWithDeactivation.cs +++ b/Runtime/ActionBaseWithDeactivation.cs @@ -19,7 +19,7 @@ namespace Syntriax.Modules.Action protected abstract void OnActionDeactivated(); public virtual void Deactivate() { - if (!ToggleState.IsToggledNullChecked()) + if (!MemberToggleState.IsToggledNullChecked() || !toggleState.IsToggledNullChecked()) return; OnDeactivated?.Invoke(this); diff --git a/ActionBaseWithDeactivation.cs.meta b/Runtime/ActionBaseWithDeactivation.cs.meta similarity index 100% rename from ActionBaseWithDeactivation.cs.meta rename to Runtime/ActionBaseWithDeactivation.cs.meta diff --git a/IAction.cs b/Runtime/IAction.cs similarity index 78% rename from IAction.cs rename to Runtime/IAction.cs index ef42565..6ca81e1 100644 --- a/IAction.cs +++ b/Runtime/IAction.cs @@ -6,9 +6,9 @@ namespace Syntriax.Modules.Action public interface IAction { /// - /// The the Action uses to check if it's active or not + /// The member the Action uses to check if it's active or not /// - IToggleState ToggleState { get; } + IToggleState MemberToggleState { get; } /// /// Called when the is Activated diff --git a/IAction.cs.meta b/Runtime/IAction.cs.meta similarity index 100% rename from IAction.cs.meta rename to Runtime/IAction.cs.meta diff --git a/IActionWithDeactivation.cs b/Runtime/IActionWithDeactivation.cs similarity index 100% rename from IActionWithDeactivation.cs rename to Runtime/IActionWithDeactivation.cs diff --git a/IActionWithDeactivation.cs.meta b/Runtime/IActionWithDeactivation.cs.meta similarity index 100% rename from IActionWithDeactivation.cs.meta rename to Runtime/IActionWithDeactivation.cs.meta diff --git a/Syntriax.Modules.Action.asmdef b/Runtime/Syntriax.Modules.Action.asmdef similarity index 100% rename from Syntriax.Modules.Action.asmdef rename to Runtime/Syntriax.Modules.Action.asmdef diff --git a/Syntriax.Modules.Action.asmdef.meta b/Runtime/Syntriax.Modules.Action.asmdef.meta similarity index 100% rename from Syntriax.Modules.Action.asmdef.meta rename to Runtime/Syntriax.Modules.Action.asmdef.meta diff --git a/Samples.meta b/Samples.meta new file mode 100644 index 0000000..3bc8dc2 --- /dev/null +++ b/Samples.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: fae7e0c9773c5434e81df0b2792ec57e +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Actions/PlatformerJump.cs b/Samples/PlatformerJump.cs similarity index 94% rename from Actions/PlatformerJump.cs rename to Samples/PlatformerJump.cs index 8a754a7..1c663a7 100644 --- a/Actions/PlatformerJump.cs +++ b/Samples/PlatformerJump.cs @@ -1,7 +1,7 @@ using Syntriax.Modules.ToggleState; using UnityEngine; -namespace Syntriax.Modules.Action +namespace Syntriax.Modules.Action.Samples { [RequireComponent(typeof(Rigidbody2D))] public class PlatformerJump : ActionBaseWithDeactivation @@ -40,7 +40,7 @@ namespace Syntriax.Modules.Action protected virtual void FixedUpdate() { - if (!ToggleState.IsToggledNullChecked() || !gameObjectToggleState.IsToggledNullChecked()) + if (!MemberToggleState.IsToggledNullChecked() || !gameObjectToggleState.IsToggledNullChecked()) return; if (rigid.velocity.y < FallThreshold) diff --git a/Actions/PlatformerJump.cs.meta b/Samples/PlatformerJump.cs.meta similarity index 83% rename from Actions/PlatformerJump.cs.meta rename to Samples/PlatformerJump.cs.meta index 21b147d..0880cec 100644 --- a/Actions/PlatformerJump.cs.meta +++ b/Samples/PlatformerJump.cs.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: e45c80df261a5714e9a22fd73a2cd39a +guid: c55e74ac98f03704bb026843c9b84a1e MonoImporter: externalObjects: {} serializedVersion: 2 diff --git a/Samples/Syntriax.Modules.Action.Samples.asmdef b/Samples/Syntriax.Modules.Action.Samples.asmdef new file mode 100644 index 0000000..33f15d5 --- /dev/null +++ b/Samples/Syntriax.Modules.Action.Samples.asmdef @@ -0,0 +1,17 @@ +{ + "name": "Syntriax.Modules.Action.Samples", + "rootNamespace": "", + "references": [ + "GUID:efa9a9bc94c60c74684aafb7428fbf61", + "GUID:7cd17689338eae84183e6b576fc9ae7c" + ], + "includePlatforms": [], + "excludePlatforms": [], + "allowUnsafeCode": false, + "overrideReferences": false, + "precompiledReferences": [], + "autoReferenced": true, + "defineConstraints": [], + "versionDefines": [], + "noEngineReferences": false +} \ No newline at end of file diff --git a/Samples/Syntriax.Modules.Action.Samples.asmdef.meta b/Samples/Syntriax.Modules.Action.Samples.asmdef.meta new file mode 100644 index 0000000..ca2ab9b --- /dev/null +++ b/Samples/Syntriax.Modules.Action.Samples.asmdef.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: ce4428cb56d508648a73c9d80a821fd8 +AssemblyDefinitionImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/package.json b/package.json new file mode 100644 index 0000000..b2687bb --- /dev/null +++ b/package.json @@ -0,0 +1,14 @@ +{ + "name": "com.syntriax.action", + "version": "0.1.0", + "displayName": "Action Module", + "unity": "2019.1", + "documentationUrl": "https://git.syntriax.com/Syntriax/Action.git", + "dependencies": {}, + "keywords": ["Action"], + "author": { + "name": "Syntriax", + "email": "Syntriax@gmail.com", + "url": "https://syntriax.com" + } +} diff --git a/package.json.meta b/package.json.meta new file mode 100644 index 0000000..d42a352 --- /dev/null +++ b/package.json.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 93b283f7bc30906478f36ce9e596fa9f +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: