From efdd2742db8c17ab6dc59a455569102cb5278694 Mon Sep 17 00:00:00 2001 From: Martin Johnson Date: Fri, 27 May 2022 14:12:56 -0400 Subject: [PATCH] added many classes and update old one with new features from new project --- AudioEvent/{Runtime => }/AudioEvent.cs | 0 AudioEvent/{Runtime => }/SimpleAudioEvent.cs | 0 Canvases/Components/ButtonUIComponent.cs | 62 + Canvases/Components/ImageUIComponent.cs | 37 + Canvases/Components/SliderUIComponent.cs | 151 + Canvases/Components/TextUIComponent.cs | 43 + Canvases/Components/ToggleUIComponent.cs | 42 + Canvases/Components/UIComponentBase.cs | 17 + .../Components/UISelectableComponentBase.cs | 52 + Canvases/Menu/Rebind/RebindActionUI.cs | 204 + Canvases/Menu/Rebind/RebindReferences.cs | 15 + Canvases/Menu/Rebind/RebindUI.cs | 112 + Common/Settings.cs | 45 + Common/Singleton.cs | 125 + Common/Timer.cs | 61 + Common/TimerWrapper.cs | 44 + Core/Singleton.cs | 77 - Core/Timer.cs | 49 - .../CustomInspectors/AudioEventInspector.cs | 0 .../CustomInspectors/SaveManagerInspector.cs | 0 .../PropertyDrawers/RangedFloatDrawer.cs | 0 Editor/SceneAutoLoader.cs | 133 + Extensions/GameObjectExtensions.cs | 19 - ObjectPool/ObjectPool.cs | 45 - .../NoEditor/Sirenix.Serialization.dll | Bin 0 -> 324608 bytes .../Assemblies/NoEditor/Sirenix.Utilities.dll | Bin 0 -> 144896 bytes .../Sirenix.Serialization.dll | Bin 0 -> 314880 bytes .../NoEmitAndNoEditor/Sirenix.Utilities.dll | Bin 0 -> 142336 bytes .../Sirenix.OdinInspector.Attributes.dll | Bin 0 -> 38400 bytes .../Sirenix.OdinInspector.Attributes.xml | 5731 ++++++++ .../Sirenix.OdinInspector.Editor.dll | Bin 0 -> 1508352 bytes .../Sirenix.OdinInspector.Editor.xml | 10940 ++++++++++++++++ .../Sirenix.Serialization.Config.dll | Bin 0 -> 17408 bytes .../Sirenix.Serialization.Config.xml | 202 + .../Assemblies/Sirenix.Serialization.dll | Bin 0 -> 369152 bytes .../Assemblies/Sirenix.Serialization.xml | 9565 ++++++++++++++ .../Assemblies/Sirenix.Utilities.Editor.dll | Bin 0 -> 542720 bytes .../Assemblies/Sirenix.Utilities.Editor.xml | 7788 +++++++++++ .../Sirenix/Assemblies/Sirenix.Utilities.dll | Bin 0 -> 154112 bytes .../Sirenix/Assemblies/Sirenix.Utilities.xml | 3658 ++++++ Plugins/Sirenix/Assemblies/link.xml | 6 + .../Assets/Editor/ConfigData.bytes | Bin 0 -> 1616 bytes .../Assets/Editor/Odin Inspector Logo.png | Bin 0 -> 23267 bytes .../Assets/Editor/OdinPathLookup.asset | 13 + .../Config/Editor/AOTGenerationConfig.asset | 20 + .../Config/Editor/ColorPaletteManager.asset | 136 + .../Config/Editor/GeneralDrawerConfig.asset | 14 + .../Config/Editor/ImportSettingsConfig.asset | 15 + .../Config/Editor/InspectorConfig.asset | 19 + .../Config/Editor/OdinModuleConfig.asset | 19 + .../Sirenix/GlobalSerializationConfig.asset | 22 + .../Modules/Unity.Entities.data | Bin 0 -> 41801 bytes .../Modules/Unity.Localization.data | Bin 0 -> 8567 bytes .../Modules/Unity.Mathematics.data | Bin 0 -> 46862 bytes .../Unity.Mathematics/MathematicsDrawers.cs | 883 ++ ...nInspector.Modules.UnityMathematics.asmdef | 11 + .../Modules/Unity.Mathematics/manifest.txt | 8 + .../AssemblyImportSettingsAutomation.cs | 134 + .../Scripts/Editor/BuildAOTAutomation.cs | 79 + .../Editor/EnsureOdinInspectorDefine.cs | 121 + .../FixBrokenUnityObjectWrapperDrawer.cs | 208 + ...Inspector.CompatibilityLayer.Editor.asmdef | 15 + .../Scripts/Editor/SyncListDrawer.cs | 88 + .../Scripts/Editor/SyncVarAttributeDrawer.cs | 42 + .../Editor/Vector2IntMinMaxAttributeDrawer.cs | 73 + .../Scripts/Editor/VectorIntDrawers.cs | 141 + .../Editor/VectorIntPropertyResolvers.cs | 54 + .../Scripts/SerializedNetworkBehaviour.cs | 67 + ...ix.OdinInspector.CompatibilityLayer.asmdef | 11 + .../Scripts/VectorIntFormatters.cs | 80 + Plugins/Sirenix/Readme.txt | 35 + README.md | 75 +- .../{Runtime => }/MinMaxRangeAttribute.cs | 0 RangedFloat/{Runtime => }/RangedFloat.cs | 0 UI/Components/ButtonUIComponent.cs | 21 - UI/Components/SliderUIComponent.cs | 25 - UI/Components/TextUIComponent.cs | 22 - UI/Components/UIComponentBase.cs | 28 - Utilities/BindingsIconsUtil.cs | 98 + Utilities/DontDestroyOnLoadUtils.cs | 31 + Utilities/Extensions/CollectionExtensions.cs | 26 + Utilities/Extensions/GameObjectExtensions.cs | 125 + Utilities/Extensions/InputActionExtensions.cs | 12 + Utilities/Extensions/StringExtensions.cs | 15 + Utilities/Extensions/TransformExtensions.cs | 15 + Utilities/Extensions/VectorExtensions.cs | 58 + Utilities/Helpers.cs | 18 + {Util => Utilities}/SerializableDictionary.cs | 0 88 files changed, 41798 insertions(+), 302 deletions(-) rename AudioEvent/{Runtime => }/AudioEvent.cs (100%) rename AudioEvent/{Runtime => }/SimpleAudioEvent.cs (100%) create mode 100644 Canvases/Components/ButtonUIComponent.cs create mode 100644 Canvases/Components/ImageUIComponent.cs create mode 100644 Canvases/Components/SliderUIComponent.cs create mode 100644 Canvases/Components/TextUIComponent.cs create mode 100644 Canvases/Components/ToggleUIComponent.cs create mode 100644 Canvases/Components/UIComponentBase.cs create mode 100644 Canvases/Components/UISelectableComponentBase.cs create mode 100644 Canvases/Menu/Rebind/RebindActionUI.cs create mode 100644 Canvases/Menu/Rebind/RebindReferences.cs create mode 100644 Canvases/Menu/Rebind/RebindUI.cs create mode 100644 Common/Settings.cs create mode 100644 Common/Singleton.cs create mode 100644 Common/Timer.cs create mode 100644 Common/TimerWrapper.cs delete mode 100644 Core/Singleton.cs delete mode 100644 Core/Timer.cs rename {AudioEvent/Editor => Editor}/CustomInspectors/AudioEventInspector.cs (100%) rename {SaveSystem/Editor => Editor}/CustomInspectors/SaveManagerInspector.cs (100%) rename {RangedFloat/Editor => Editor}/PropertyDrawers/RangedFloatDrawer.cs (100%) create mode 100644 Editor/SceneAutoLoader.cs delete mode 100644 Extensions/GameObjectExtensions.cs delete mode 100644 ObjectPool/ObjectPool.cs create mode 100644 Plugins/Sirenix/Assemblies/NoEditor/Sirenix.Serialization.dll create mode 100644 Plugins/Sirenix/Assemblies/NoEditor/Sirenix.Utilities.dll create mode 100644 Plugins/Sirenix/Assemblies/NoEmitAndNoEditor/Sirenix.Serialization.dll create mode 100644 Plugins/Sirenix/Assemblies/NoEmitAndNoEditor/Sirenix.Utilities.dll create mode 100644 Plugins/Sirenix/Assemblies/Sirenix.OdinInspector.Attributes.dll create mode 100644 Plugins/Sirenix/Assemblies/Sirenix.OdinInspector.Attributes.xml create mode 100644 Plugins/Sirenix/Assemblies/Sirenix.OdinInspector.Editor.dll create mode 100644 Plugins/Sirenix/Assemblies/Sirenix.OdinInspector.Editor.xml create mode 100644 Plugins/Sirenix/Assemblies/Sirenix.Serialization.Config.dll create mode 100644 Plugins/Sirenix/Assemblies/Sirenix.Serialization.Config.xml create mode 100644 Plugins/Sirenix/Assemblies/Sirenix.Serialization.dll create mode 100644 Plugins/Sirenix/Assemblies/Sirenix.Serialization.xml create mode 100644 Plugins/Sirenix/Assemblies/Sirenix.Utilities.Editor.dll create mode 100644 Plugins/Sirenix/Assemblies/Sirenix.Utilities.Editor.xml create mode 100644 Plugins/Sirenix/Assemblies/Sirenix.Utilities.dll create mode 100644 Plugins/Sirenix/Assemblies/Sirenix.Utilities.xml create mode 100644 Plugins/Sirenix/Assemblies/link.xml create mode 100644 Plugins/Sirenix/Odin Inspector/Assets/Editor/ConfigData.bytes create mode 100644 Plugins/Sirenix/Odin Inspector/Assets/Editor/Odin Inspector Logo.png create mode 100644 Plugins/Sirenix/Odin Inspector/Assets/Editor/OdinPathLookup.asset create mode 100644 Plugins/Sirenix/Odin Inspector/Config/Editor/AOTGenerationConfig.asset create mode 100644 Plugins/Sirenix/Odin Inspector/Config/Editor/ColorPaletteManager.asset create mode 100644 Plugins/Sirenix/Odin Inspector/Config/Editor/GeneralDrawerConfig.asset create mode 100644 Plugins/Sirenix/Odin Inspector/Config/Editor/ImportSettingsConfig.asset create mode 100644 Plugins/Sirenix/Odin Inspector/Config/Editor/InspectorConfig.asset create mode 100644 Plugins/Sirenix/Odin Inspector/Config/Editor/OdinModuleConfig.asset create mode 100644 Plugins/Sirenix/Odin Inspector/Config/Resources/Sirenix/GlobalSerializationConfig.asset create mode 100644 Plugins/Sirenix/Odin Inspector/Modules/Unity.Entities.data create mode 100644 Plugins/Sirenix/Odin Inspector/Modules/Unity.Localization.data create mode 100644 Plugins/Sirenix/Odin Inspector/Modules/Unity.Mathematics.data create mode 100644 Plugins/Sirenix/Odin Inspector/Modules/Unity.Mathematics/MathematicsDrawers.cs create mode 100644 Plugins/Sirenix/Odin Inspector/Modules/Unity.Mathematics/Sirenix.OdinInspector.Modules.UnityMathematics.asmdef create mode 100644 Plugins/Sirenix/Odin Inspector/Modules/Unity.Mathematics/manifest.txt create mode 100644 Plugins/Sirenix/Odin Inspector/Scripts/Editor/AssemblyImportSettingsAutomation.cs create mode 100644 Plugins/Sirenix/Odin Inspector/Scripts/Editor/BuildAOTAutomation.cs create mode 100644 Plugins/Sirenix/Odin Inspector/Scripts/Editor/EnsureOdinInspectorDefine.cs create mode 100644 Plugins/Sirenix/Odin Inspector/Scripts/Editor/FixBrokenUnityObjectWrapperDrawer.cs create mode 100644 Plugins/Sirenix/Odin Inspector/Scripts/Editor/Sirenix.OdinInspector.CompatibilityLayer.Editor.asmdef create mode 100644 Plugins/Sirenix/Odin Inspector/Scripts/Editor/SyncListDrawer.cs create mode 100644 Plugins/Sirenix/Odin Inspector/Scripts/Editor/SyncVarAttributeDrawer.cs create mode 100644 Plugins/Sirenix/Odin Inspector/Scripts/Editor/Vector2IntMinMaxAttributeDrawer.cs create mode 100644 Plugins/Sirenix/Odin Inspector/Scripts/Editor/VectorIntDrawers.cs create mode 100644 Plugins/Sirenix/Odin Inspector/Scripts/Editor/VectorIntPropertyResolvers.cs create mode 100644 Plugins/Sirenix/Odin Inspector/Scripts/SerializedNetworkBehaviour.cs create mode 100644 Plugins/Sirenix/Odin Inspector/Scripts/Sirenix.OdinInspector.CompatibilityLayer.asmdef create mode 100644 Plugins/Sirenix/Odin Inspector/Scripts/VectorIntFormatters.cs create mode 100644 Plugins/Sirenix/Readme.txt rename RangedFloat/{Runtime => }/MinMaxRangeAttribute.cs (100%) rename RangedFloat/{Runtime => }/RangedFloat.cs (100%) delete mode 100644 UI/Components/ButtonUIComponent.cs delete mode 100644 UI/Components/SliderUIComponent.cs delete mode 100644 UI/Components/TextUIComponent.cs delete mode 100644 UI/Components/UIComponentBase.cs create mode 100644 Utilities/BindingsIconsUtil.cs create mode 100644 Utilities/DontDestroyOnLoadUtils.cs create mode 100644 Utilities/Extensions/CollectionExtensions.cs create mode 100644 Utilities/Extensions/GameObjectExtensions.cs create mode 100644 Utilities/Extensions/InputActionExtensions.cs create mode 100644 Utilities/Extensions/StringExtensions.cs create mode 100644 Utilities/Extensions/TransformExtensions.cs create mode 100644 Utilities/Extensions/VectorExtensions.cs create mode 100644 Utilities/Helpers.cs rename {Util => Utilities}/SerializableDictionary.cs (100%) diff --git a/AudioEvent/Runtime/AudioEvent.cs b/AudioEvent/AudioEvent.cs similarity index 100% rename from AudioEvent/Runtime/AudioEvent.cs rename to AudioEvent/AudioEvent.cs diff --git a/AudioEvent/Runtime/SimpleAudioEvent.cs b/AudioEvent/SimpleAudioEvent.cs similarity index 100% rename from AudioEvent/Runtime/SimpleAudioEvent.cs rename to AudioEvent/SimpleAudioEvent.cs diff --git a/Canvases/Components/ButtonUIComponent.cs b/Canvases/Components/ButtonUIComponent.cs new file mode 100644 index 0000000..d9afcdb --- /dev/null +++ b/Canvases/Components/ButtonUIComponent.cs @@ -0,0 +1,62 @@ +using System; +using Sirenix.OdinInspector; +using UnityEngine; +using UnityEngine.UI; + +namespace Canvases.Components +{ + public class ButtonUIComponent : UISelectableComponentBase + { + public event Action OnClick; + + [Header("Association"), SerializeField, Required] + private Button button; + + [Header("Configuration"), SerializeField] + private ButtonNavigationType buttonNavigationType; + + private enum ButtonNavigationType + { + Forward, + Backward + } + + public Color Color + { + set => button.image.color = value; + } + + public bool Enabled + { + set => button.interactable = value; + } + + public void Select() => button.Select(); + + protected override void SetSelectableGameObject() => Selectable = button; + + private void Start() + { + Debug.Assert(button, $"A {nameof(button)} must be assigned to a {nameof(ButtonUIComponent)}"); + button.onClick.AddListener(OnButtonClicked); + } + + protected override void OnDestroy() + { + button.onClick.RemoveListener(OnButtonClicked); + base.OnDestroy(); + } + + private void OnButtonClicked() + { + // PlayClickedSound(); + OnClick?.Invoke(); + } + + private void OnValidate() + { + if (!button) + button = GetComponent