diff options
| author | Simon O'Shea <osheas1@wit.edu> | 2023-07-31 18:45:01 -0400 |
|---|---|---|
| committer | Simon O'Shea <osheas1@wit.edu> | 2023-07-31 18:45:01 -0400 |
| commit | 5f9e8f979deb94e9219113ed09b49142c040cb57 (patch) | |
| tree | a67bd606205f7fb28e48d351028b3478bc49145b /Pathfinding Visualizer/Assets/CodeMonkey/MonoBehaviours/ComponentActions.cs | |
| parent | 4699ce72871eaa6ee27c01971383b9d1fced1946 (diff) | |
import successful, grid has visuals
cell values and grid lines are displayed. no interaction available yet.
Diffstat (limited to 'Pathfinding Visualizer/Assets/CodeMonkey/MonoBehaviours/ComponentActions.cs')
| -rw-r--r-- | Pathfinding Visualizer/Assets/CodeMonkey/MonoBehaviours/ComponentActions.cs | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/Pathfinding Visualizer/Assets/CodeMonkey/MonoBehaviours/ComponentActions.cs b/Pathfinding Visualizer/Assets/CodeMonkey/MonoBehaviours/ComponentActions.cs new file mode 100644 index 0000000..e0eedc8 --- /dev/null +++ b/Pathfinding Visualizer/Assets/CodeMonkey/MonoBehaviours/ComponentActions.cs @@ -0,0 +1,60 @@ +/* + ------------------- Code Monkey ------------------- + + Thank you for downloading the Code Monkey Utilities + I hope you find them useful in your projects + If you have any questions use the contact form + Cheers! + + unitycodemonkey.com + -------------------------------------------------- + */ + +using System; +using UnityEngine; + +namespace CodeMonkey.MonoBehaviours { + + /* + * Trigger Actions on MonoBehaviour Component events + * */ + public class ComponentActions : MonoBehaviour { + + public Action OnDestroyFunc; + public Action OnEnableFunc; + public Action OnDisableFunc; + public Action OnUpdate; + + private void OnDestroy() { + if (OnDestroyFunc != null) OnDestroyFunc(); + } + + private void OnEnable() { + if (OnEnableFunc != null) OnEnableFunc(); + } + + private void OnDisable() { + if (OnDisableFunc != null) OnDisableFunc(); + } + + private void Update() { + if (OnUpdate != null) OnUpdate(); + } + + + public static void CreateComponent(Action OnDestroyFunc = null, Action OnEnableFunc = null, Action OnDisableFunc = null, Action OnUpdate = null) { + GameObject gameObject = new GameObject("ComponentActions"); + AddComponent(gameObject, OnDestroyFunc, OnEnableFunc, OnDisableFunc, OnUpdate); + } + + public static void AddComponent(GameObject gameObject, Action OnDestroyFunc = null, Action OnEnableFunc = null, Action OnDisableFunc = null, Action OnUpdate = null) { + ComponentActions componentFuncs = gameObject.AddComponent<ComponentActions>(); + componentFuncs.OnDestroyFunc = OnDestroyFunc; + componentFuncs.OnEnableFunc = OnEnableFunc; + componentFuncs.OnDisableFunc = OnDisableFunc; + componentFuncs.OnUpdate = OnUpdate; + } + + } + +}
\ No newline at end of file |
