├── .gitignore ├── BigHopsTools ├── Assets │ ├── Plugins.meta │ ├── Plugins │ │ ├── Luckshot.meta │ │ ├── Luckshot │ │ │ ├── Materials.meta │ │ │ ├── Materials │ │ │ │ ├── Decals.meta │ │ │ │ └── Decals │ │ │ │ │ ├── Decal_Scratches.mat │ │ │ │ │ ├── Decal_Scratches.mat.meta │ │ │ │ │ ├── Decals_Scratches.psd │ │ │ │ │ └── Decals_Scratches.psd.meta │ │ │ ├── Scripts.meta │ │ │ └── Scripts │ │ │ │ ├── Audio.meta │ │ │ │ ├── Audio │ │ │ │ ├── AudioManager.cs │ │ │ │ └── AudioManager.cs.meta │ │ │ │ ├── AutoCache.meta │ │ │ │ ├── AutoCache │ │ │ │ ├── AutoCacheAttribute.cs │ │ │ │ ├── AutoCacheAttribute.cs.meta │ │ │ │ ├── Editor.meta │ │ │ │ └── Editor │ │ │ │ │ ├── AutoCacheAttributeDrawer.cs │ │ │ │ │ └── AutoCacheAttributeDrawer.cs.meta │ │ │ │ ├── Decal.meta │ │ │ │ ├── Decal │ │ │ │ ├── Decal.cs │ │ │ │ ├── Decal.cs.meta │ │ │ │ ├── DecalManager.cs │ │ │ │ ├── DecalManager.cs.meta │ │ │ │ ├── Editor.meta │ │ │ │ └── Editor │ │ │ │ │ ├── DecalEditor.cs │ │ │ │ │ └── DecalEditor.cs.meta │ │ │ │ ├── LensManager.meta │ │ │ │ ├── LensManager │ │ │ │ ├── Editor.meta │ │ │ │ ├── Editor │ │ │ │ │ ├── LensManagerBaseDrawer.cs │ │ │ │ │ └── LensManagerBaseDrawer.cs.meta │ │ │ │ ├── LensManager.cs │ │ │ │ ├── LensManager.cs.meta │ │ │ │ ├── LensUtils.cs │ │ │ │ └── LensUtils.cs.meta │ │ │ │ ├── ObjectPool.meta │ │ │ │ ├── ObjectPool │ │ │ │ ├── ComponentPool.cs │ │ │ │ ├── ComponentPool.cs.meta │ │ │ │ ├── ObjectPool.cs │ │ │ │ └── ObjectPool.cs.meta │ │ │ │ ├── Paths.meta │ │ │ │ ├── Paths │ │ │ │ ├── AdvSpline.cs │ │ │ │ ├── AdvSpline.cs.meta │ │ │ │ ├── BezierControlPointMode.cs │ │ │ │ ├── BezierControlPointMode.cs.meta │ │ │ │ ├── BezierUtils.cs │ │ │ │ ├── BezierUtils.cs.meta │ │ │ │ ├── CirclePath.cs │ │ │ │ ├── CirclePath.cs.meta │ │ │ │ ├── Editor.meta │ │ │ │ ├── Editor │ │ │ │ │ ├── CirclePathEditor.cs │ │ │ │ │ ├── CirclePathEditor.cs.meta │ │ │ │ │ ├── LinePathEditor.cs │ │ │ │ │ ├── LinePathEditor.cs.meta │ │ │ │ │ ├── SplinePathEditor.cs │ │ │ │ │ └── SplinePathEditor.cs.meta │ │ │ │ ├── Example.meta │ │ │ │ ├── Example │ │ │ │ │ ├── ExampleAdvSpline.cs │ │ │ │ │ ├── ExampleAdvSpline.cs.meta │ │ │ │ │ ├── ExampleSplineNodeData.cs │ │ │ │ │ ├── ExampleSplineNodeData.cs.meta │ │ │ │ │ ├── Examples.unity │ │ │ │ │ └── Examples.unity.meta │ │ │ │ ├── ICustomMesh.cs │ │ │ │ ├── ICustomMesh.cs.meta │ │ │ │ ├── LinePath.cs │ │ │ │ ├── LinePath.cs.meta │ │ │ │ ├── PathBase.cs │ │ │ │ ├── PathBase.cs.meta │ │ │ │ ├── PathDebug.cs │ │ │ │ ├── PathDebug.cs.meta │ │ │ │ ├── PointsMesh.cs │ │ │ │ ├── PointsMesh.cs.meta │ │ │ │ ├── SplineNodeData.cs │ │ │ │ ├── SplineNodeData.cs.meta │ │ │ │ ├── SplinePath.cs │ │ │ │ ├── SplinePath.cs.meta │ │ │ │ ├── Tools.meta │ │ │ │ └── Tools │ │ │ │ │ ├── FlatPathMesh.cs │ │ │ │ │ ├── FlatPathMesh.cs.meta │ │ │ │ │ ├── OrientSpline.cs │ │ │ │ │ ├── OrientSpline.cs.meta │ │ │ │ │ ├── OrientSplineData.cs │ │ │ │ │ ├── OrientSplineData.cs.meta │ │ │ │ │ ├── PathAligner.cs │ │ │ │ │ ├── PathAligner.cs.meta │ │ │ │ │ ├── PathCollision.cs │ │ │ │ │ ├── PathCollision.cs.meta │ │ │ │ │ ├── PathLineRenderer.cs │ │ │ │ │ ├── PathLineRenderer.cs.meta │ │ │ │ │ ├── PathMesh.cs │ │ │ │ │ ├── PathMesh.cs.meta │ │ │ │ │ ├── PathMover.cs │ │ │ │ │ ├── PathMover.cs.meta │ │ │ │ │ ├── PlaceAlongSpline.cs │ │ │ │ │ ├── PlaceAlongSpline.cs.meta │ │ │ │ │ ├── SlideMesh.cs │ │ │ │ │ ├── SlideMesh.cs.meta │ │ │ │ │ ├── SplineUtils.cs │ │ │ │ │ ├── SplineUtils.cs.meta │ │ │ │ │ ├── TubePathMesh.cs │ │ │ │ │ └── TubePathMesh.cs.meta │ │ │ │ ├── ScriptableObjects.meta │ │ │ │ ├── ScriptableObjects │ │ │ │ ├── ScriptableObjectSingleton.cs │ │ │ │ ├── ScriptableObjectSingleton.cs.meta │ │ │ │ ├── ScriptableObjectUtils.cs │ │ │ │ └── ScriptableObjectUtils.cs.meta │ │ │ │ ├── SingleLayer.meta │ │ │ │ ├── SingleLayer │ │ │ │ ├── Editor.meta │ │ │ │ ├── Editor │ │ │ │ │ ├── SingleLayerDrawer.cs │ │ │ │ │ └── SingleLayerDrawer.cs.meta │ │ │ │ ├── SingleLayer.cs │ │ │ │ └── SingleLayer.cs.meta │ │ │ │ ├── StateMachine.meta │ │ │ │ ├── StateMachine │ │ │ │ ├── StateMachine.cs │ │ │ │ ├── StateMachine.cs.meta │ │ │ │ ├── StateMachineState.cs │ │ │ │ └── StateMachineState.cs.meta │ │ │ │ ├── Time.meta │ │ │ │ ├── Time │ │ │ │ ├── InvokeManager.cs │ │ │ │ ├── InvokeManager.cs.meta │ │ │ │ ├── SlowMoExample.cs │ │ │ │ ├── SlowMoExample.cs.meta │ │ │ │ ├── TimeScaleManager.cs │ │ │ │ └── TimeScaleManager.cs.meta │ │ │ │ ├── Utils.meta │ │ │ │ └── Utils │ │ │ │ ├── AnimationUtils.cs │ │ │ │ ├── AnimationUtils.cs.meta │ │ │ │ ├── ColorUtils.cs │ │ │ │ ├── ColorUtils.cs.meta │ │ │ │ ├── CompareUtils.cs │ │ │ │ ├── CompareUtils.cs.meta │ │ │ │ ├── Enumel.cs │ │ │ │ ├── Enumel.cs.meta │ │ │ │ ├── LuckshotMath.cs │ │ │ │ ├── LuckshotMath.cs.meta │ │ │ │ ├── MeshCopy.cs │ │ │ │ ├── MeshCopy.cs.meta │ │ │ │ ├── PhysicsUtils.cs │ │ │ │ ├── PhysicsUtils.cs.meta │ │ │ │ ├── ProjectileUtils.cs │ │ │ │ ├── ProjectileUtils.cs.meta │ │ │ │ ├── Rotate.cs │ │ │ │ ├── Rotate.cs.meta │ │ │ │ ├── Singleton.cs │ │ │ │ ├── Singleton.cs.meta │ │ │ │ ├── StringUtils.cs │ │ │ │ ├── StringUtils.cs.meta │ │ │ │ ├── VisibilityListener.cs │ │ │ │ └── VisibilityListener.cs.meta │ │ ├── NaughtyAttributes.meta │ │ └── NaughtyAttributes │ │ │ ├── README.html │ │ │ ├── README.html.meta │ │ │ ├── Scripts.meta │ │ │ └── Scripts │ │ │ ├── Core.meta │ │ │ ├── Core │ │ │ ├── DrawerAttributes.meta │ │ │ ├── DrawerAttributes │ │ │ │ ├── AllowNestingAttribute.cs │ │ │ │ ├── AllowNestingAttribute.cs.meta │ │ │ │ ├── DrawerAttribute.cs │ │ │ │ ├── DrawerAttribute.cs.meta │ │ │ │ ├── DropdownAttribute.cs │ │ │ │ ├── DropdownAttribute.cs.meta │ │ │ │ ├── EnumFlagsAttribute.cs │ │ │ │ ├── EnumFlagsAttribute.cs.meta │ │ │ │ ├── HorizontalLineAttribute.cs │ │ │ │ ├── HorizontalLineAttribute.cs.meta │ │ │ │ ├── InfoBoxAttribute.cs │ │ │ │ ├── InfoBoxAttribute.cs.meta │ │ │ │ ├── InputAxisAttribute.cs │ │ │ │ ├── InputAxisAttribute.cs.meta │ │ │ │ ├── MinMaxSliderAttribute.cs │ │ │ │ ├── MinMaxSliderAttribute.cs.meta │ │ │ │ ├── ProgressBarAttribute.cs │ │ │ │ ├── ProgressBarAttribute.cs.meta │ │ │ │ ├── ReadOnlyAttribute.cs │ │ │ │ ├── ReadOnlyAttribute.cs.meta │ │ │ │ ├── ResizableTextAreaAttribute.cs │ │ │ │ ├── ResizableTextAreaAttribute.cs.meta │ │ │ │ ├── SceneAttribute.cs │ │ │ │ ├── SceneAttribute.cs.meta │ │ │ │ ├── ShowAssetPreviewAttribute.cs │ │ │ │ ├── ShowAssetPreviewAttribute.cs.meta │ │ │ │ ├── TagAttribute.cs │ │ │ │ └── TagAttribute.cs.meta │ │ │ ├── DrawerAttributes_SpecialCase.meta │ │ │ ├── DrawerAttributes_SpecialCase │ │ │ │ ├── ButtonAttribute.cs │ │ │ │ ├── ButtonAttribute.cs.meta │ │ │ │ ├── ReorderableListAttribute.cs │ │ │ │ ├── ReorderableListAttribute.cs.meta │ │ │ │ ├── ShowNativePropertyAttribute.cs │ │ │ │ ├── ShowNativePropertyAttribute.cs.meta │ │ │ │ ├── ShowNonSerializedFieldAttribute.cs │ │ │ │ ├── ShowNonSerializedFieldAttribute.cs.meta │ │ │ │ ├── SpecialCaseDrawerAttribute.cs │ │ │ │ └── SpecialCaseDrawerAttribute.cs.meta │ │ │ ├── INaughtyAttribute.cs │ │ │ ├── INaughtyAttribute.cs.meta │ │ │ ├── MetaAttributes.meta │ │ │ ├── MetaAttributes │ │ │ │ ├── BoxGroupAttribute.cs │ │ │ │ ├── BoxGroupAttribute.cs.meta │ │ │ │ ├── DisableIfAttribute.cs │ │ │ │ ├── DisableIfAttribute.cs.meta │ │ │ │ ├── EnableIfAttribute.cs │ │ │ │ ├── EnableIfAttribute.cs.meta │ │ │ │ ├── EnableIfAttributeBase.cs │ │ │ │ ├── EnableIfAttributeBase.cs.meta │ │ │ │ ├── HideIfAttribute.cs │ │ │ │ ├── HideIfAttribute.cs.meta │ │ │ │ ├── LabelAttribute.cs │ │ │ │ ├── LabelAttribute.cs.meta │ │ │ │ ├── MetaAttribute.cs │ │ │ │ ├── MetaAttribute.cs.meta │ │ │ │ ├── OnValueChangedAttribute.cs │ │ │ │ ├── OnValueChangedAttribute.cs.meta │ │ │ │ ├── ShowIfAttribute.cs │ │ │ │ ├── ShowIfAttribute.cs.meta │ │ │ │ ├── ShowIfAttributeBase.cs │ │ │ │ └── ShowIfAttributeBase.cs.meta │ │ │ ├── NaughtyAttributes.Core.asmdef │ │ │ ├── NaughtyAttributes.Core.asmdef.meta │ │ │ ├── Utility.meta │ │ │ ├── Utility │ │ │ │ ├── EColor.cs │ │ │ │ ├── EColor.cs.meta │ │ │ │ ├── EConditionOperator.cs │ │ │ │ └── EConditionOperator.cs.meta │ │ │ ├── ValidatorAttributes.meta │ │ │ └── ValidatorAttributes │ │ │ │ ├── MaxValueAttribute.cs │ │ │ │ ├── MaxValueAttribute.cs.meta │ │ │ │ ├── MinValueAttribute.cs │ │ │ │ ├── MinValueAttribute.cs.meta │ │ │ │ ├── RequiredAttribute.cs │ │ │ │ ├── RequiredAttribute.cs.meta │ │ │ │ ├── ValidateInputAttribute.cs │ │ │ │ ├── ValidateInputAttribute.cs.meta │ │ │ │ ├── ValidatorAttribute.cs │ │ │ │ └── ValidatorAttribute.cs.meta │ │ │ ├── Editor.meta │ │ │ ├── Editor │ │ │ ├── DecoratorDrawers.meta │ │ │ ├── DecoratorDrawers │ │ │ │ ├── HorizontalLineDecoratorDrawer.cs │ │ │ │ ├── HorizontalLineDecoratorDrawer.cs.meta │ │ │ │ ├── InfoBoxDecoratorDrawer.cs │ │ │ │ └── InfoBoxDecoratorDrawer.cs.meta │ │ │ ├── NaughtyAttributes.Editor.asmdef │ │ │ ├── NaughtyAttributes.Editor.asmdef.meta │ │ │ ├── NaughtyInspector.cs │ │ │ ├── NaughtyInspector.cs.meta │ │ │ ├── PropertyDrawers.meta │ │ │ ├── PropertyDrawers │ │ │ │ ├── AllowNestingPropertyDrawer.cs │ │ │ │ ├── AllowNestingPropertyDrawer.cs.meta │ │ │ │ ├── DropdownPropertyDrawer.cs │ │ │ │ ├── DropdownPropertyDrawer.cs.meta │ │ │ │ ├── EnumFlagsPropertyDrawer.cs │ │ │ │ ├── EnumFlagsPropertyDrawer.cs.meta │ │ │ │ ├── InputAxisPropertyDrawer.cs │ │ │ │ ├── InputAxisPropertyDrawer.cs.meta │ │ │ │ ├── MinMaxSliderPropertyDrawer.cs │ │ │ │ ├── MinMaxSliderPropertyDrawer.cs.meta │ │ │ │ ├── ProgressBarPropertyDrawer.cs │ │ │ │ ├── ProgressBarPropertyDrawer.cs.meta │ │ │ │ ├── PropertyDrawerBase.cs │ │ │ │ ├── PropertyDrawerBase.cs.meta │ │ │ │ ├── ReadOnlyPropertyDrawer.cs │ │ │ │ ├── ReadOnlyPropertyDrawer.cs.meta │ │ │ │ ├── ResizableTextAreaPropertyDrawer.cs │ │ │ │ ├── ResizableTextAreaPropertyDrawer.cs.meta │ │ │ │ ├── ScenePropertyDrawer.cs │ │ │ │ ├── ScenePropertyDrawer.cs.meta │ │ │ │ ├── ShowAssetPreviewPropertyDrawer.cs │ │ │ │ ├── ShowAssetPreviewPropertyDrawer.cs.meta │ │ │ │ ├── TagPropertyDrawer.cs │ │ │ │ └── TagPropertyDrawer.cs.meta │ │ │ ├── PropertyDrawers_SpecialCase.meta │ │ │ ├── PropertyDrawers_SpecialCase │ │ │ │ ├── ReorderableListPropertyDrawer.cs │ │ │ │ ├── ReorderableListPropertyDrawer.cs.meta │ │ │ │ ├── SpecialCasePropertyDrawerBase.cs │ │ │ │ └── SpecialCasePropertyDrawerBase.cs.meta │ │ │ ├── PropertyValidators.meta │ │ │ ├── PropertyValidators │ │ │ │ ├── MaxValuePropertyValidator.cs │ │ │ │ ├── MaxValuePropertyValidator.cs.meta │ │ │ │ ├── MinValuePropertyValidator.cs │ │ │ │ ├── MinValuePropertyValidator.cs.meta │ │ │ │ ├── PropertyValidatorBase.cs │ │ │ │ ├── PropertyValidatorBase.cs.meta │ │ │ │ ├── RequiredPropertyValidator.cs │ │ │ │ ├── RequiredPropertyValidator.cs.meta │ │ │ │ ├── ValidateInputPropertyValidator.cs │ │ │ │ └── ValidateInputPropertyValidator.cs.meta │ │ │ ├── Utility.meta │ │ │ └── Utility │ │ │ │ ├── NaughtyEditorGUI.cs │ │ │ │ ├── NaughtyEditorGUI.cs.meta │ │ │ │ ├── PropertyUtility.cs │ │ │ │ ├── PropertyUtility.cs.meta │ │ │ │ ├── ReflectionUtility.cs │ │ │ │ └── ReflectionUtility.cs.meta │ │ │ ├── Test.meta │ │ │ └── Test │ │ │ ├── BoxGroupTest.cs │ │ │ ├── BoxGroupTest.cs.meta │ │ │ ├── ButtonTest.cs │ │ │ ├── ButtonTest.cs.meta │ │ │ ├── DisableIfTest.cs │ │ │ ├── DisableIfTest.cs.meta │ │ │ ├── DropdownTest.cs │ │ │ ├── DropdownTest.cs.meta │ │ │ ├── EnableIfTest.cs │ │ │ ├── EnableIfTest.cs.meta │ │ │ ├── EnumFlagsTest.cs │ │ │ ├── EnumFlagsTest.cs.meta │ │ │ ├── HideIfTest.cs │ │ │ ├── HideIfTest.cs.meta │ │ │ ├── HorizontalLineTest.cs │ │ │ ├── HorizontalLineTest.cs.meta │ │ │ ├── InfoBoxTest.cs │ │ │ ├── InfoBoxTest.cs.meta │ │ │ ├── InputAxisTest.cs │ │ │ ├── InputAxisTest.cs.meta │ │ │ ├── LabelTest.cs │ │ │ ├── LabelTest.cs.meta │ │ │ ├── MinMaxSliderTest.cs │ │ │ ├── MinMaxSliderTest.cs.meta │ │ │ ├── MinMaxValueTest.cs │ │ │ ├── MinMaxValueTest.cs.meta │ │ │ ├── NaughtyAttributes.Test.asmdef │ │ │ ├── NaughtyAttributes.Test.asmdef.meta │ │ │ ├── OnValueChangedTest.cs │ │ │ ├── OnValueChangedTest.cs.meta │ │ │ ├── ProgressBarTest.cs │ │ │ ├── ProgressBarTest.cs.meta │ │ │ ├── ReadOnlyTest.cs │ │ │ ├── ReadOnlyTest.cs.meta │ │ │ ├── ReorderableListTest.cs │ │ │ ├── ReorderableListTest.cs.meta │ │ │ ├── RequiredTest.cs │ │ │ ├── RequiredTest.cs.meta │ │ │ ├── ResizableTextAreaTest.cs │ │ │ ├── ResizableTextAreaTest.cs.meta │ │ │ ├── SceneTest.cs │ │ │ ├── SceneTest.cs.meta │ │ │ ├── ShowAssetPreviewTest.cs │ │ │ ├── ShowAssetPreviewTest.cs.meta │ │ │ ├── ShowIfTest.cs │ │ │ ├── ShowIfTest.cs.meta │ │ │ ├── ShowNativePropertyTest.cs │ │ │ ├── ShowNativePropertyTest.cs.meta │ │ │ ├── ShowNonSerializedFieldTest.cs │ │ │ ├── ShowNonSerializedFieldTest.cs.meta │ │ │ ├── TagTest.cs │ │ │ ├── TagTest.cs.meta │ │ │ ├── ValidateInputTest.cs │ │ │ ├── ValidateInputTest.cs.meta │ │ │ ├── _NaughtyComponent.cs │ │ │ ├── _NaughtyComponent.cs.meta │ │ │ ├── _NaughtyScriptableObject.cs │ │ │ └── _NaughtyScriptableObject.cs.meta │ ├── Scenes.meta │ └── Scenes │ │ ├── DecalExample.unity │ │ ├── DecalExample.unity.meta │ │ ├── SampleScene.unity │ │ ├── SampleScene.unity.meta │ │ ├── SlowMoExample.unity │ │ └── SlowMoExample.unity.meta ├── Logs │ └── Packages-Update.log ├── Packages │ └── manifest.json └── ProjectSettings │ ├── AudioManager.asset │ ├── ClusterInputManager.asset │ ├── DynamicsManager.asset │ ├── EditorBuildSettings.asset │ ├── EditorSettings.asset │ ├── GraphicsSettings.asset │ ├── InputManager.asset │ ├── NavMeshAreas.asset │ ├── Physics2DSettings.asset │ ├── PresetManager.asset │ ├── ProjectSettings.asset │ ├── ProjectVersion.txt │ ├── QualitySettings.asset │ ├── TagManager.asset │ ├── TimeManager.asset │ ├── UnityConnectSettings.asset │ ├── VFXManager.asset │ └── XRSettings.asset ├── LICENSE └── README.md /.gitignore: -------------------------------------------------------------------------------- 1 | [Ll]ibrary/ 2 | [Tt]emp/ 3 | [Oo]bj/ 4 | [Bb]uild/ 5 | 6 | # Autogenerated VS/MD solution and project files 7 | /*.csproj 8 | /*.unityproj 9 | /*.sln 10 | /*.suo 11 | /*.user 12 | /*.userprefs 13 | /*.pidb 14 | /*.booproj 15 | 16 | *.sln 17 | *.csproj 18 | *.userprefs 19 | *.suo 20 | 21 | #Unity3D Generated File On Crash Reports 22 | sysinfo.txt 23 | sh.exe.stackdump 24 | *.swatch 25 | *.swatches 26 | 27 | *.nsp 28 | BigHops/.vs/ 29 | BigHops/Assets/save.hop 30 | BigHops/Assets/save.hop.meta 31 | BigHops/Assets/Resources/BigHopsPrefs.asset 32 | BuildTools/SteamBuilder/content/Windows/ 33 | BuildTools/SteamBuilder/content/OSX/ 34 | BuildTools/SteamBuilder/content/output/ 35 | BuildTools/SteamBuilder/builder/ 36 | BuildTools/SteamBuilder/output/ 37 | BigHopsTools/.vs/BigHopsTools/v16/Server/sqlite3/storage.ide-wal 38 | BigHopsTools/.vs/BigHopsTools/v16/Server/sqlite3/storage.ide-shm 39 | BigHopsTools/.vs/BigHopsTools/v16/Server/sqlite3/storage.ide 40 | BigHopsTools/.vs/BigHopsTools/v16/Server/sqlite3/db.lock 41 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4e1f03f835daecd48b50f25590e78bf7 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5c11b2f89b64ed94ead2aaa24815a145 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Materials.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 39ee078f5cd6bce43916539184225dcb 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Materials/Decals.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f2b2c662c2e0f454ba9551d2a709e81e 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Materials/Decals/Decal_Scratches.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2535690a127468e44a43564b1afe1aa2 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 2100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Materials/Decals/Decals_Scratches.psd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cjacobwade/BigHopsTools/3e7943be8c0ac212ac6f0d6d190e5cd6f909ccf4/BigHopsTools/Assets/Plugins/Luckshot/Materials/Decals/Decals_Scratches.psd -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f10bfc8e949814d41ada702b5ffafe31 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Audio.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 25b659ba31dec2d4c9cb778c71a24353 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Audio/AudioManager.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ebca70de62f635d43ba1fe8fa2c4f84b 3 | timeCreated: 1540160871 4 | licenseType: Pro 5 | MonoImporter: 6 | externalObjects: {} 7 | serializedVersion: 2 8 | defaultReferences: [] 9 | executionOrder: 0 10 | icon: {instanceID: 0} 11 | userData: 12 | assetBundleName: 13 | assetBundleVariant: 14 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/AutoCache.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3effcc9fcba460f47949abf48e71b3e0 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/AutoCache/AutoCacheAttribute.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | using System; 5 | 6 | [AttributeUsage(AttributeTargets.Field, AllowMultiple = false, Inherited = true)] 7 | public class AutoCacheAttribute : PropertyAttribute 8 | { 9 | public bool searchChildren = false; 10 | public bool searchAncestors = false; 11 | 12 | public AutoCacheAttribute(bool inSearchChildren = false, bool inSearchAncestors = false) 13 | { 14 | searchChildren = inSearchChildren; 15 | searchAncestors = inSearchAncestors; 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/AutoCache/AutoCacheAttribute.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2483b476e1637a341b91263b3f8099bb 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/AutoCache/Editor.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ad605878c02422844834c6ecf833a44c 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/AutoCache/Editor/AutoCacheAttributeDrawer.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | using UnityEditor; 5 | using System.Reflection; 6 | using System; 7 | 8 | [CustomPropertyDrawer(typeof(AutoCacheAttribute))] 9 | public class AutoCacheAttributeDrawer : PropertyDrawer 10 | { 11 | public override void OnGUI(Rect position, SerializedProperty property, GUIContent label) 12 | { 13 | if (property.hasMultipleDifferentValues) 14 | { 15 | EditorGUI.PropertyField(position, property, label); 16 | return; 17 | } 18 | 19 | AutoCacheAttribute autoCache = attribute as AutoCacheAttribute; 20 | 21 | if (property.objectReferenceValue == null) 22 | { 23 | Component component = property.serializedObject.targetObject as Component; 24 | if (component != null) 25 | { 26 | Type fieldType = GetFieldType(property); 27 | if (fieldType != null) 28 | { 29 | // TODO: Must be some way to get this to work with arrays 30 | Component targetComponent = component.gameObject.GetComponent(fieldType); 31 | 32 | if (targetComponent == null && autoCache.searchChildren) 33 | targetComponent = component.gameObject.GetComponentInChildren(fieldType); 34 | 35 | if (targetComponent == null && autoCache.searchAncestors) 36 | targetComponent = component.gameObject.GetComponentInParent(fieldType); 37 | 38 | if (targetComponent != null) 39 | { 40 | property.objectReferenceValue = targetComponent; 41 | } 42 | } 43 | } 44 | } 45 | 46 | EditorGUI.PropertyField(position, property, label); 47 | } 48 | 49 | public static Type GetFieldType(SerializedProperty property) 50 | { 51 | Type parentType = property.serializedObject.targetObject.GetType(); 52 | 53 | FieldInfo fi = parentType.GetField(property.propertyPath, BindingFlags.Instance | BindingFlags.NonPublic | BindingFlags.Public); 54 | if (fi != null) 55 | return fi.FieldType; 56 | 57 | return null; 58 | } 59 | } 60 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/AutoCache/Editor/AutoCacheAttributeDrawer.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 51684b258a4793f4aaf964cb77ffba29 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Decal.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 912ecc224bd7dff408ceb876e73c611c 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Decal/Decal.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9341306dea50b86438649d351dc7f40b 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Decal/DecalManager.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | using NaughtyAttributes; 5 | 6 | public class DecalManager : Singleton 7 | { 8 | private List queuedDecals = new List(); 9 | 10 | private void Update() 11 | { 12 | if(queuedDecals.Count > 0) 13 | { 14 | queuedDecals[0].BuildDecal(); 15 | queuedDecals.RemoveAt(0); 16 | } 17 | 18 | if (queuedDecals.Count == 0) 19 | enabled = false; 20 | } 21 | 22 | public Decal SpawnAndQueue(Decal decalPrefab) 23 | { return SpawnAndQueue(decalPrefab, decalPrefab.transform.position, decalPrefab.transform.rotation); } 24 | 25 | public Decal SpawnAndQueue(Decal decalPrefab, Vector3 position, Quaternion rotation, Transform parent = null) 26 | { 27 | Decal decal = Instantiate(decalPrefab, position, rotation, parent); 28 | Queue(decal); 29 | 30 | return decal; 31 | } 32 | 33 | public void Queue(Decal decal) 34 | { 35 | queuedDecals.Add(decal); 36 | 37 | if (queuedDecals.Count == 1) 38 | enabled = true; 39 | } 40 | 41 | [Button("RebuildAll")] 42 | public void RebuildAll() 43 | { 44 | Decal[] decals = FindObjectsOfType(); 45 | for (int i = 0; i < decals.Length; i++) 46 | Queue(decals[i]); 47 | } 48 | } 49 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Decal/DecalManager.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 85a2ee751e8277742ad20c20a9f911f9 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Decal/Editor.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b013b308a27152e418b6ca895e77daf8 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Decal/Editor/DecalEditor.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2a6d6acb1f4bffa4eb29024834f5d02e 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/LensManager.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 047b35bd5b56bfb4c8af63c209b130e0 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/LensManager/Editor.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f5ecd29bf42c31c4aa67849ab6b335e0 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/LensManager/Editor/LensManagerBaseDrawer.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: bc3325cfba0044d49a9e4f98a80ec4f0 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/LensManager/LensManager.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e142e29ee68bce44d9bee60e4f9d15c6 3 | timeCreated: 1539506921 4 | licenseType: Pro 5 | MonoImporter: 6 | externalObjects: {} 7 | serializedVersion: 2 8 | defaultReferences: [] 9 | executionOrder: 0 10 | icon: {instanceID: 0} 11 | userData: 12 | assetBundleName: 13 | assetBundleVariant: 14 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/LensManager/LensUtils.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f683d9986a982d142b05b55b3462c6f5 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/ObjectPool.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 89cece696fe19ed4a86cdab5caf12eee 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/ObjectPool/ComponentPool.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | 5 | public class ComponentPool where T : Component 6 | { 7 | private T prefab = null; 8 | private List pool = new List(); 9 | 10 | private int size = 0; 11 | private Transform parent = null; 12 | 13 | public ComponentPool(T inPrefab, int inSize, Transform inParent) 14 | { 15 | prefab = inPrefab; 16 | size = inSize; 17 | 18 | parent = inParent; 19 | 20 | pool.Capacity = size; 21 | for(int i =0; i < size; i++) 22 | { 23 | T instance = MonoBehaviour.Instantiate(prefab, parent); 24 | instance.gameObject.SetActive(false); 25 | pool.Add(instance); 26 | } 27 | } 28 | 29 | public T Fetch() 30 | { 31 | T instance = null; 32 | 33 | if (pool.Count > 0) 34 | { 35 | instance = pool[0]; 36 | instance.transform.SetParent(null, true); 37 | instance.gameObject.SetActive(true); 38 | 39 | pool.RemoveAt(0); 40 | 41 | return instance; 42 | } 43 | else 44 | { 45 | instance = MonoBehaviour.Instantiate(prefab, null); 46 | } 47 | 48 | return instance; 49 | } 50 | 51 | public void Return(T instance) 52 | { 53 | pool.Add(instance); 54 | instance.transform.SetParent(parent, true); 55 | instance.gameObject.SetActive(false); 56 | } 57 | } 58 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/ObjectPool/ComponentPool.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9411e16399a163548835ce545b426518 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/ObjectPool/ObjectPool.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | 5 | public class ObjectPool where T : class, new() 6 | { 7 | private List pool = new List(); 8 | private int size = 0; 9 | 10 | public ObjectPool(int inSize) 11 | { 12 | size = inSize; 13 | 14 | pool.Capacity = size; 15 | for(int i =0; i < size; i++) 16 | pool.Add(new T()); 17 | } 18 | 19 | public T Fetch() 20 | { 21 | T instance = null; 22 | 23 | if (pool.Count > 0) 24 | { 25 | instance = pool[0]; 26 | pool.RemoveAt(0); 27 | 28 | return instance; 29 | } 30 | else 31 | { 32 | instance = new T(); 33 | } 34 | 35 | return instance; 36 | } 37 | 38 | public void Return(T instance) 39 | { pool.Add(instance); } 40 | } 41 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/ObjectPool/ObjectPool.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 304e15030f8fef04f8b871be1f164604 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Paths.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c912a1b7735e9d546832e63ef3cbe6fd 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Paths/AdvSpline.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using System; 3 | 4 | namespace Luckshot.Paths 5 | { 6 | public abstract class AdvSpline : SplinePath where T : SplineNodeData, new() 7 | { 8 | // Array of node data 9 | // Access node data of specific main control point 10 | // Get interp'd node data at whatever alpha 11 | 12 | [SerializeField] 13 | T[] nodeData = null; 14 | protected T[] NodeData 15 | { 16 | get 17 | { 18 | if (nodeData == null || nodeData.Length == 0) 19 | Reset(); 20 | 21 | return nodeData; 22 | } 23 | } 24 | 25 | public T GetNodeData(int i) 26 | { 27 | return NodeData[i]; 28 | } 29 | 30 | public void InterpNodeData(T inNodeData, float a) 31 | { 32 | a = Mathf.Clamp01(a); 33 | 34 | a *= (NodeData.Length - 1); 35 | int prev = Mathf.FloorToInt(a); 36 | int next = Mathf.CeilToInt(a); 37 | 38 | if (prev < NodeData.Length - 1) 39 | a -= (float)prev; 40 | 41 | inNodeData.Lerp(NodeData[prev], NodeData[next], Mathf.Clamp01(a)); 42 | } 43 | 44 | public void SetNodeData(int i, T inNodeData) 45 | { 46 | NodeData[i] = inNodeData; 47 | } 48 | 49 | public override void AddCurve() 50 | { 51 | base.AddCurve(); 52 | 53 | Array.Resize(ref nodeData, NodeData.Length + 1); 54 | NodeData[NodeData.Length - 1] = new T(); 55 | 56 | if (loop) 57 | NodeData[NodeData.Length - 1] = NodeData[0]; 58 | } 59 | 60 | public override void RemoveCurve() 61 | { 62 | base.RemoveCurve(); 63 | 64 | Array.Resize(ref nodeData, NodeData.Length - 1); 65 | 66 | if (loop) 67 | NodeData[NodeData.Length - 1] = NodeData[0]; 68 | } 69 | 70 | public override void Reset() 71 | { 72 | base.Reset(); 73 | 74 | nodeData = new T[] 75 | { 76 | new T(), 77 | new T() 78 | }; 79 | } 80 | } 81 | } -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Paths/AdvSpline.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a3a8ac817e5044145ad002aade509955 3 | MonoImporter: 4 | serializedVersion: 2 5 | defaultReferences: [] 6 | executionOrder: 0 7 | icon: {instanceID: 0} 8 | userData: 9 | assetBundleName: 10 | assetBundleVariant: 11 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Paths/BezierControlPointMode.cs: -------------------------------------------------------------------------------- 1 | namespace Luckshot.Paths 2 | { 3 | public enum BezierControlPointMode 4 | { 5 | Free = 0, 6 | Aligned, 7 | Mirrored 8 | } 9 | } -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Paths/BezierControlPointMode.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1c78ec24cea4e478bb35a5ce401fa7a6 3 | MonoImporter: 4 | serializedVersion: 2 5 | defaultReferences: [] 6 | executionOrder: 0 7 | icon: {instanceID: 0} 8 | userData: 9 | assetBundleName: 10 | assetBundleVariant: 11 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Paths/BezierUtils.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace Luckshot.Paths 4 | { 5 | public static class BezierUtils 6 | { 7 | public static Vector3 GetPoint(Vector3 p0, Vector3 p1, Vector3 p2, float t) 8 | { 9 | t = Mathf.Clamp01(t); 10 | float oneMinusT = 1f - t; 11 | return 12 | oneMinusT * oneMinusT * p0 + 13 | 2f * oneMinusT * t * p1 + 14 | t * t * p2; 15 | } 16 | 17 | public static Vector3 GetFirstDerivative(Vector3 p0, Vector3 p1, Vector3 p2, float t) 18 | { 19 | return 20 | 2f * (1f - t) * (p1 - p0) + 21 | 2f * t * (p2 - p1); 22 | } 23 | 24 | public static Vector3 GetPoint(Vector3 p0, Vector3 p1, Vector3 p2, Vector3 p3, float t) 25 | { 26 | t = Mathf.Clamp01(t); 27 | float OneMinusT = 1f - t; 28 | return 29 | OneMinusT * OneMinusT * OneMinusT * p0 + 30 | 3f * OneMinusT * OneMinusT * t * p1 + 31 | 3f * OneMinusT * t * t * p2 + 32 | t * t * t * p3; 33 | } 34 | 35 | public static Vector3 GetFirstDerivative(Vector3 p0, Vector3 p1, Vector3 p2, Vector3 p3, float t) 36 | { 37 | t = Mathf.Clamp01(t); 38 | float oneMinusT = 1f - t; 39 | return 40 | 3f * oneMinusT * oneMinusT * (p1 - p0) + 41 | 6f * oneMinusT * t * (p2 - p1) + 42 | 3f * t * t * (p3 - p2); 43 | } 44 | } 45 | } -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Paths/BezierUtils.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2b14b8c3e9cc04a13898e1e50c9f1024 3 | MonoImporter: 4 | serializedVersion: 2 5 | defaultReferences: [] 6 | executionOrder: 0 7 | icon: {instanceID: 0} 8 | userData: 9 | assetBundleName: 10 | assetBundleVariant: 11 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Paths/CirclePath.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 282205f11b559f049838b897f79759b0 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Paths/Editor.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4c2ec56845591cb45825fba528af351d 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Paths/Editor/CirclePathEditor.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 42acb3c6ba76bda4495be2fddf186363 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Paths/Editor/LinePathEditor.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 12181f5e3fa0f124f884037244f6f8d2 3 | MonoImporter: 4 | serializedVersion: 2 5 | defaultReferences: [] 6 | executionOrder: 0 7 | icon: {instanceID: 0} 8 | userData: 9 | assetBundleName: 10 | assetBundleVariant: 11 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Paths/Editor/SplinePathEditor.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 127eddf8173c549d9976751e82f3face 3 | MonoImporter: 4 | serializedVersion: 2 5 | defaultReferences: [] 6 | executionOrder: 0 7 | icon: {instanceID: 0} 8 | userData: 9 | assetBundleName: 10 | assetBundleVariant: 11 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Paths/Example.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8eec3099fdece1f48ac2efb1c5eabfb7 3 | folderAsset: yes 4 | timeCreated: 1538906537 5 | licenseType: Pro 6 | DefaultImporter: 7 | externalObjects: {} 8 | userData: 9 | assetBundleName: 10 | assetBundleVariant: 11 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Paths/Example/ExampleAdvSpline.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | 5 | namespace Luckshot.Paths 6 | { 7 | public class ExampleAdvSpline : AdvSpline 8 | { 9 | [SerializeField] 10 | float _testAlpha = 0f; 11 | 12 | ExampleSplineNodeData _interpData = new ExampleSplineNodeData(); 13 | 14 | protected virtual void OnDrawGizmosSelected() 15 | { 16 | float repeatAlpha = Mathf.Repeat(_testAlpha, 1f); 17 | 18 | InterpNodeData(_interpData, repeatAlpha); 19 | 20 | Vector3 point = GetPoint(repeatAlpha); 21 | 22 | Gizmos.DrawSphere(point, _interpData.size); 23 | Gizmos.DrawLine(point, point + _interpData.lookDirection); 24 | } 25 | } 26 | } -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Paths/Example/ExampleAdvSpline.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5a9ab1afc5a7e094580dc17046df5851 3 | timeCreated: 1486761096 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Paths/Example/ExampleSplineNodeData.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | 5 | namespace Luckshot.Paths 6 | { 7 | [System.Serializable] 8 | public class ExampleSplineNodeData : SplineNodeData 9 | { 10 | public float size = 1f; 11 | public Vector3 lookDirection = Vector3.zero; 12 | 13 | public override void Lerp(SplineNodeData a, SplineNodeData b, float alpha) 14 | { 15 | base.Lerp(a, b, alpha); 16 | 17 | ExampleSplineNodeData ea = (ExampleSplineNodeData)a; 18 | ExampleSplineNodeData eb = (ExampleSplineNodeData)b; 19 | 20 | size = Mathf.Lerp(ea.size, eb.size, alpha); 21 | lookDirection = Vector3.Lerp(ea.lookDirection.normalized, eb.lookDirection.normalized, alpha); 22 | } 23 | } 24 | } -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Paths/Example/ExampleSplineNodeData.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ccec4be9bde59b44fbce1344410af620 3 | timeCreated: 1538906528 4 | licenseType: Pro 5 | MonoImporter: 6 | externalObjects: {} 7 | serializedVersion: 2 8 | defaultReferences: [] 9 | executionOrder: 0 10 | icon: {instanceID: 0} 11 | userData: 12 | assetBundleName: 13 | assetBundleVariant: 14 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Paths/Example/Examples.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 96ce2ffd633345449b75f51fe5c5aad0 3 | timeCreated: 1538906579 4 | licenseType: Pro 5 | DefaultImporter: 6 | externalObjects: {} 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Paths/ICustomMesh.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | 5 | public interface ICustomMesh 6 | { 7 | event System.Action OnMeshChanged; 8 | } 9 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Paths/ICustomMesh.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7a94b0e14a8e08e48afa842581348e2f 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Paths/LinePath.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c0451964e54782549a8c72e2387f0720 3 | MonoImporter: 4 | serializedVersion: 2 5 | defaultReferences: [] 6 | executionOrder: 0 7 | icon: {instanceID: 0} 8 | userData: 9 | assetBundleName: 10 | assetBundleVariant: 11 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Paths/PathBase.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | using NaughtyAttributes; 5 | 6 | namespace Luckshot.Paths 7 | { 8 | public enum NormalType 9 | { 10 | LocalUp, 11 | Perpendicular 12 | } 13 | 14 | public abstract class PathBase : MonoBehaviour 15 | { 16 | public abstract Vector3 GetPoint(float alpha); 17 | public abstract float GetNearestAlpha(Vector3 position, int iterations = 10); 18 | public abstract Vector3 GetDirection(float alpha); 19 | 20 | public abstract float GetLength(); 21 | 22 | public abstract Vector3 GetVelocity(float alpha); 23 | public abstract Vector3 GetNormal(float t); 24 | 25 | [SerializeField, OnValueChanged("ChangePath")] 26 | protected bool loop = false; 27 | public virtual bool Loop 28 | { get { return loop; } } 29 | 30 | public void SetLoop(bool inLoop) 31 | { loop = inLoop; } 32 | 33 | [SerializeField, OnValueChanged("ChangePath")] 34 | private float radius = 0.1f; 35 | public float Radius 36 | { get { return radius * transform.lossyScale.x; } } 37 | 38 | public void SetRadius(float inRadius) 39 | { radius = inRadius; } 40 | 41 | [SerializeField] 42 | private NormalType normalType = NormalType.LocalUp; 43 | public NormalType NormalType 44 | { get { return normalType; } } 45 | 46 | private void ChangePath() 47 | { OnPathChanged(this); } 48 | 49 | public System.Action OnPathChanged = delegate {}; 50 | } 51 | } 52 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Paths/PathBase.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7105395df77150d48a0dac65cafd5a47 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Paths/PathDebug.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | 5 | namespace Luckshot.Paths 6 | { 7 | 8 | public class PathDebug : MonoBehaviour 9 | { 10 | [SerializeField, AutoCache] 11 | private PathBase path = null; 12 | 13 | [SerializeField] 14 | private float alpha = 0f; 15 | 16 | private void OnDrawGizmosSelected() 17 | { 18 | if (path == null) 19 | return; 20 | 21 | if (path.Loop) 22 | alpha = Mathf.Repeat(alpha, 1f); 23 | else 24 | alpha = Mathf.Clamp01(alpha); 25 | 26 | Vector3 pos = path.GetPoint(alpha); 27 | Vector3 normal = path.GetNormal(alpha); 28 | 29 | Gizmos.DrawSphere(pos, 0.1f); 30 | 31 | Debug.DrawLine(pos, pos + normal, Color.red); 32 | } 33 | } 34 | } -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Paths/PathDebug.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 00097002f938b4743afef724c711398a 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Paths/PointsMesh.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9469f246b74c51c41bda93fbb3cb97d6 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Paths/SplineNodeData.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | 5 | namespace Luckshot.Paths 6 | { 7 | [System.Serializable] 8 | public class SplineNodeData 9 | { 10 | public virtual void Lerp(SplineNodeData a, SplineNodeData b, float alpha) 11 | { 12 | } 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Paths/SplineNodeData.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 302441b4dedf4f74c9bbb761a3f3de04 3 | timeCreated: 1485333318 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Paths/SplinePath.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b154883273c2845f39445c8015d81639 3 | MonoImporter: 4 | serializedVersion: 2 5 | defaultReferences: [] 6 | executionOrder: 0 7 | icon: {instanceID: 0} 8 | userData: 9 | assetBundleName: 10 | assetBundleVariant: 11 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Paths/Tools.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8715b8f488ca68c448e52935e0abf0e0 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Paths/Tools/FlatPathMesh.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ecc16e8b37681b8459ff89c345c6973e 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Paths/Tools/OrientSpline.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | using Luckshot.Paths; 5 | 6 | public class OrientSpline : AdvSpline 7 | { 8 | OrientSplineData interpData = new OrientSplineData(); 9 | 10 | protected virtual void OnDrawGizmosSelected() 11 | { 12 | for(float iter = 0f; iter <= 1f; iter += 0.05f) 13 | { 14 | Vector3 point = GetPoint(iter); 15 | InterpNodeData(interpData, iter); 16 | 17 | Vector3 direction = GetVelocity(iter).normalized; 18 | Vector3 right = Vector3.Cross(Vector3.up, direction).normalized; 19 | Vector3 normal = Vector3.Cross(direction, right).normalized; 20 | Vector3 up = Quaternion.Euler(direction * interpData.angle) * normal; 21 | 22 | Gizmos.DrawLine(point, point + up); 23 | } 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Paths/Tools/OrientSpline.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: bb693a039a5e2e449b2aa6aee4eeb316 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Paths/Tools/OrientSplineData.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | using Luckshot.Paths; 5 | 6 | [System.Serializable] 7 | public class OrientSplineData : SplineNodeData 8 | { 9 | public float angle = 0f; 10 | 11 | public override void Lerp(SplineNodeData a, SplineNodeData b, float alpha) 12 | { 13 | base.Lerp(a, b, alpha); 14 | 15 | OrientSplineData oa = (OrientSplineData)a; 16 | OrientSplineData ob = (OrientSplineData)b; 17 | 18 | angle = Mathf.Lerp(oa.angle, ob.angle, alpha); 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Paths/Tools/OrientSplineData.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d501130b94c9b814cb53709a2448f450 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Paths/Tools/PathAligner.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | using Luckshot.Paths; 5 | 6 | public class PathAligner : MonoBehaviour 7 | { 8 | public enum AlignDirection 9 | { 10 | YForward, 11 | ZForward 12 | } 13 | 14 | [System.Serializable] 15 | public struct PathAlignObject 16 | { 17 | public Transform transform; 18 | [Range(0f, 1f)] 19 | public float alpha; 20 | [Range(0f, 360f)] 21 | public float rotAngle; 22 | public float offset; 23 | [Range(0f, 360f)] 24 | public float offsetAngle; 25 | public AlignDirection alignDirection; 26 | } 27 | 28 | [SerializeField] 29 | private PathAlignObject[] pathAlignObjects = null; 30 | 31 | [SerializeField, AutoCache] 32 | private PathBase path = null; 33 | 34 | private void OnValidate() 35 | { 36 | if (path == null) 37 | return; 38 | 39 | for(int i =0; i < pathAlignObjects.Length; i++) 40 | { 41 | PathAlignObject pao = pathAlignObjects[i]; 42 | if(pao.transform != null) 43 | { 44 | Vector3 position = path.GetPoint(pao.alpha); 45 | Vector3 direction = path.GetDirection(pao.alpha); 46 | Vector3 normal = path.GetNormal(pao.alpha); 47 | 48 | pao.transform.position = position + Quaternion.AngleAxis(pao.offsetAngle, direction) * (normal * pao.offset); 49 | 50 | Quaternion lookRot = Quaternion.identity; 51 | if (pao.alignDirection == AlignDirection.ZForward) 52 | { 53 | Quaternion directionLook = Quaternion.identity; 54 | if (direction != Vector3.zero) 55 | directionLook = Quaternion.LookRotation(direction, normal); 56 | 57 | lookRot = Quaternion.AngleAxis(pao.rotAngle, direction) * directionLook; 58 | } 59 | else 60 | { 61 | Quaternion normalLook = Quaternion.identity; 62 | if (normal != Vector3.zero) 63 | normalLook = Quaternion.LookRotation(normal, direction); 64 | 65 | lookRot = Quaternion.AngleAxis(pao.rotAngle, direction) * normalLook; 66 | } 67 | 68 | pao.transform.rotation = lookRot; 69 | } 70 | } 71 | } 72 | } 73 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Paths/Tools/PathAligner.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c96db8aa993cd824c83128aeed71e395 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Paths/Tools/PathCollision.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5d560e80a8583e644aede3df8cc45cf3 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Paths/Tools/PathLineRenderer.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | using Luckshot.Paths; 5 | using NaughtyAttributes; 6 | 7 | [RequireComponent(typeof(LineRenderer))] 8 | public class PathLineRenderer : MonoBehaviour 9 | { 10 | [SerializeField, AutoCache] 11 | private PathBase path = null; 12 | 13 | [SerializeField, AutoCache] 14 | private LineRenderer line = null; 15 | 16 | [SerializeField, OnValueChanged("UpdateLine")] 17 | private float pointsPerUnit = 5f; 18 | 19 | private void Awake() 20 | { 21 | if (path == null) 22 | { 23 | Debug.LogError("No PathBase found. Trying to find one now.", this); 24 | path = GetComponent(); 25 | } 26 | 27 | path.OnPathChanged -= Path_OnPathChanged; 28 | } 29 | 30 | private void Path_OnPathChanged(PathBase inPath) 31 | { 32 | if (path == inPath) 33 | UpdateLine(); 34 | else 35 | inPath.OnPathChanged -= Path_OnPathChanged; 36 | } 37 | 38 | private void UpdateLine() 39 | { 40 | if (path != null && line != null) 41 | { 42 | int numPoints = Mathf.CeilToInt(path.GetLength() * pointsPerUnit); 43 | 44 | Vector3[] points = new Vector3[numPoints]; 45 | for (int i = 0; i < numPoints; i++) 46 | points[i] = path.GetPoint(i/(float)(numPoints - 1)); 47 | 48 | line.positionCount = numPoints; 49 | line.SetPositions(points); 50 | } 51 | } 52 | 53 | private void OnDrawGizmosSelected() 54 | { 55 | if (path != null) 56 | { 57 | path.OnPathChanged -= Path_OnPathChanged; 58 | path.OnPathChanged += Path_OnPathChanged; 59 | } 60 | } 61 | } 62 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Paths/Tools/PathLineRenderer.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f98e1f381a6084546b810e4c72e32117 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Paths/Tools/PathMesh.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8b74b5c6a3e574840b6980c472e92a49 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Paths/Tools/PathMover.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | using Luckshot.Paths; 5 | using NaughtyAttributes; 6 | 7 | public class PathMover : MonoBehaviour 8 | { 9 | [SerializeField] 10 | private PathBase path = null; 11 | 12 | [SerializeField] 13 | private new Rigidbody rigidbody = null; 14 | 15 | [SerializeField] 16 | private float speed = 1f; 17 | 18 | private float lineAlpha = 0f; 19 | private bool reversed = false; 20 | 21 | [SerializeField] 22 | private bool pauseAtEnds = false; 23 | 24 | [SerializeField, ShowIf("pauseAtEnds")] 25 | private float pauseAtEndsTime = 1f; 26 | private float lastEndTime = 0f; 27 | 28 | private void Awake() 29 | { 30 | lineAlpha = path.GetNearestAlpha(rigidbody.position); 31 | rigidbody.position = path.GetPoint(lineAlpha); 32 | } 33 | 34 | private void FixedUpdate() 35 | { 36 | if (rigidbody == null || path == null) 37 | return; 38 | 39 | if (!pauseAtEnds || Time.time > lastEndTime + pauseAtEndsTime) 40 | { 41 | bool wasReversed = reversed; 42 | lineAlpha = path.MoveAtFixedSpeed(lineAlpha, speed * Time.deltaTime, ref reversed); 43 | 44 | if (wasReversed != reversed) 45 | lastEndTime = Time.time; 46 | 47 | rigidbody.position = path.GetPoint(lineAlpha); 48 | } 49 | } 50 | } 51 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Paths/Tools/PathMover.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 76ac8bc24ed3f354bb422a725c1d7ce5 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Paths/Tools/PlaceAlongSpline.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 59f169bbbddba0a4cbe68658aa296186 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Paths/Tools/SlideMesh.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: fc374f08cf2a3fc42b4d00583e9ca7de 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Paths/Tools/SplineUtils.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | using Luckshot.Paths; 5 | 6 | public static class SplineUtils 7 | { 8 | public const float DefaultTraverseAlphaSpeed = 0.01f; 9 | 10 | private static void Move(PathBase path, float alpha, float prevAlpha, ref Vector3 prevPos, ref float moveAmount) 11 | { 12 | Vector3 pos = path.GetPoint(alpha); 13 | Vector3 toPos = pos - prevPos; 14 | 15 | if (toPos.magnitude < moveAmount) 16 | { 17 | prevPos = pos; 18 | moveAmount -= toPos.magnitude; 19 | } 20 | else 21 | { 22 | float toPosAlpha = moveAmount / toPos.magnitude; 23 | alpha = Mathf.Lerp(prevAlpha, alpha, toPosAlpha); 24 | moveAmount = 0; 25 | } 26 | } 27 | 28 | public static float MoveAtFixedSpeed(this PathBase path, float alpha, float speed, ref bool reversed, float traverseAlphaSpeed = DefaultTraverseAlphaSpeed) 29 | { 30 | Vector3 startPos = path.GetPoint(alpha); 31 | Vector3 prevPos = startPos; 32 | 33 | float alphaSpeed = traverseAlphaSpeed; 34 | if (reversed) 35 | alphaSpeed *= -1f; 36 | 37 | float moveAmount = speed; 38 | while (moveAmount > 0f) 39 | { 40 | float prevAlpha = alpha; 41 | alpha += alphaSpeed * Time.deltaTime; 42 | 43 | if (path.Loop) 44 | { 45 | if (alpha > 1f && prevAlpha > 0.5f) 46 | prevAlpha -= 1f; 47 | else if (alpha < 0f && prevAlpha < 0.5f) 48 | prevAlpha += 1f; 49 | 50 | alpha = Mathf.Repeat(alpha, 1f); 51 | } 52 | else 53 | { 54 | if (alpha > 1f || alpha < 0f) 55 | { 56 | reversed = !reversed; 57 | alphaSpeed *= -1f; 58 | 59 | if (alpha > 1f) 60 | { 61 | Move(path, 1f, prevAlpha, ref prevPos, ref moveAmount); 62 | prevAlpha = 1f; 63 | 64 | alpha = 1f - (alpha - 1f); 65 | } 66 | else 67 | { 68 | Move(path, 0f, prevAlpha, ref prevPos, ref moveAmount); 69 | prevAlpha = 0f; 70 | 71 | alpha = -alpha; 72 | } 73 | } 74 | } 75 | 76 | Move(path, alpha, prevAlpha, ref prevPos, ref moveAmount); 77 | } 78 | 79 | return alpha; 80 | } 81 | } 82 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Paths/Tools/SplineUtils.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3e9046d4214fa764d91117d96d78b261 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Paths/Tools/TubePathMesh.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f467640cca2560f4ca9957613eedfbd1 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/ScriptableObjects.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 423a4de574df2d442823c5faef7bd944 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/ScriptableObjects/ScriptableObjectSingleton.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | public class ScriptableObjectSingleton : ScriptableObject where T : ScriptableObjectSingleton 4 | { 5 | static bool _hasInstance = false; 6 | static T _instance = null; 7 | 8 | public static T Instance 9 | { 10 | get 11 | { 12 | if(!_hasInstance) 13 | { 14 | 15 | _instance = Resources.Load(typeof(T).ToString()) as T; 16 | 17 | if(!_instance) 18 | _instance = ScriptableObjectUtils.CreateAsset(); 19 | 20 | _hasInstance = _instance; 21 | } 22 | 23 | return _hasInstance ? _instance : null; 24 | } 25 | } 26 | } -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/ScriptableObjects/ScriptableObjectSingleton.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ccc958163b6aa8e4b918bf2a8931893a 3 | timeCreated: 1527733039 4 | licenseType: Pro 5 | MonoImporter: 6 | externalObjects: {} 7 | serializedVersion: 2 8 | defaultReferences: [] 9 | executionOrder: 0 10 | icon: {instanceID: 0} 11 | userData: 12 | assetBundleName: 13 | assetBundleVariant: 14 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/ScriptableObjects/ScriptableObjectUtils.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using System.IO; 3 | 4 | #if UNITY_EDITOR 5 | using UnityEditor; 6 | #endif 7 | 8 | public static class ScriptableObjectUtils 9 | { 10 | public static T CreateAsset(string pathOverride = "", string nameOverride = "") where T : ScriptableObject 11 | { 12 | T asset = ScriptableObject.CreateInstance (); 13 | #if UNITY_EDITOR 14 | string path = string.IsNullOrEmpty(pathOverride) ? "Assets/Resources" : pathOverride; 15 | string name = string.IsNullOrEmpty(nameOverride) ? typeof(T).ToString() : nameOverride; 16 | 17 | string assetPathAndName = AssetDatabase.GenerateUniqueAssetPath(path + "/" + name + ".asset"); 18 | 19 | AssetDatabase.CreateAsset (asset, assetPathAndName); 20 | 21 | AssetDatabase.SaveAssets (); 22 | AssetDatabase.Refresh(); 23 | EditorUtility.FocusProjectWindow (); 24 | Selection.activeObject = asset; 25 | #endif 26 | 27 | return asset; 28 | } 29 | } -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/ScriptableObjects/ScriptableObjectUtils.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5ed2bd05581a828428b35cb86e53e5d7 3 | timeCreated: 1527733018 4 | licenseType: Pro 5 | MonoImporter: 6 | externalObjects: {} 7 | serializedVersion: 2 8 | defaultReferences: [] 9 | executionOrder: 0 10 | icon: {instanceID: 0} 11 | userData: 12 | assetBundleName: 13 | assetBundleVariant: 14 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/SingleLayer.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ac721eefdaaac11478814f39be16ea87 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/SingleLayer/Editor.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4af318a30e893fd4cb661069288729a2 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/SingleLayer/Editor/SingleLayerDrawer.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | using UnityEditor; 5 | 6 | [CustomPropertyDrawer(typeof(SingleLayer))] 7 | public class SingleLayerDrawer : PropertyDrawer 8 | { 9 | public override void OnGUI(Rect position, SerializedProperty property, GUIContent label) 10 | { 11 | EditorGUI.BeginProperty(position, label, property); 12 | 13 | List layerNames = new List(); 14 | List layerNums = new List(); 15 | for(int i =0; i < 32; i++) 16 | { 17 | string layerName = LayerMask.LayerToName(i); 18 | if (!string.IsNullOrEmpty(layerName)) 19 | { 20 | layerNames.Add(layerName); 21 | layerNums.Add(i); 22 | } 23 | } 24 | 25 | SerializedProperty layerProp = property.FindPropertyRelative("layer"); 26 | 27 | int selectionIndex = layerNums.IndexOf(layerProp.intValue); 28 | if (selectionIndex == -1) 29 | selectionIndex = 0; 30 | 31 | int nameIndex = EditorGUI.Popup(position, label.text, selectionIndex, layerNames.ToArray()); 32 | layerProp.intValue = layerNums[nameIndex]; 33 | 34 | EditorGUI.EndProperty(); 35 | } 36 | 37 | public override float GetPropertyHeight(SerializedProperty property, GUIContent label) 38 | { return EditorGUIUtility.singleLineHeight; } 39 | } 40 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/SingleLayer/Editor/SingleLayerDrawer.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 76f6e2a42f9d68f4abecaf50787e8dd9 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/SingleLayer/SingleLayer.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | 5 | [System.Serializable] 6 | public sealed class SingleLayer 7 | { 8 | public int layer = 0; 9 | } 10 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/SingleLayer/SingleLayer.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 84e1e1c99c16f584fafbab11fdb733ba 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/StateMachine.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 97d008518bf53374f81d8a1f9291acba 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/StateMachine/StateMachine.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7df8e57d64468dd47b99cf76b48b90f7 3 | timeCreated: 1539506921 4 | licenseType: Pro 5 | MonoImporter: 6 | externalObjects: {} 7 | serializedVersion: 2 8 | defaultReferences: [] 9 | executionOrder: 0 10 | icon: {instanceID: 0} 11 | userData: 12 | assetBundleName: 13 | assetBundleVariant: 14 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/StateMachine/StateMachineState.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | 5 | namespace Luckshot.FSM 6 | { 7 | [DefaultExecutionOrder(300)] 8 | public class StateMachineState : MonoBehaviour 9 | { 10 | protected StateMachine stateMachine = null; 11 | protected StateMachine StateMachine 12 | { get { return stateMachine; } } 13 | 14 | public K GetState() where K : StateMachineState 15 | { return stateMachine.GetState(); } 16 | 17 | public void ChangeState(StateParams stateParams = null) where K : StateMachineState 18 | { stateMachine.ChangeState(stateParams); } 19 | 20 | public void SetStateMachine(StateMachine inStateMachine) 21 | { stateMachine = inStateMachine; } 22 | 23 | private float enterStateTime = 0f; 24 | public float EnterStateTime 25 | { get { return enterStateTime; } } 26 | 27 | protected float lastTimeInState = 0f; 28 | public float LastTimeInState 29 | { get { return lastTimeInState; } } 30 | 31 | protected bool hasAwoken = false; 32 | public bool HasAwoken 33 | { get { return hasAwoken; } } 34 | 35 | public void Awake() 36 | { 37 | if (hasAwoken) 38 | return; 39 | 40 | AwakeIfNeeded(); 41 | hasAwoken = true; 42 | } 43 | 44 | public virtual void AwakeIfNeeded() { } 45 | public virtual void Enter(StateParams stateParams) 46 | { 47 | enterStateTime = Time.time; 48 | lastTimeInState = Time.time; 49 | } 50 | 51 | public virtual void Exit() 52 | { 53 | lastTimeInState = Time.time; 54 | } 55 | 56 | public virtual void Tick() 57 | { 58 | lastTimeInState = Time.time; 59 | } 60 | public virtual void FixedTick() { } 61 | 62 | public virtual void CollisionEnter(Collision collision) { } 63 | public virtual void CollisionExit(Collision collision) { } 64 | public virtual void TriggerEnter(Collider collider) { } 65 | public virtual void TriggerExit(Collider collider) { } 66 | } 67 | 68 | public abstract class StateMachineState : StateMachineState where T : MonoBehaviour 69 | { 70 | public T Owner 71 | { get { return stateMachine.Owner as T; } } 72 | } 73 | 74 | public class StateParams 75 | { 76 | } 77 | } -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/StateMachine/StateMachineState.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e425ba6493cac164095e4e7a6950e6f0 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Time.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4af32096b3f000349acef0b3b1ae0b8c 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Time/InvokeManager.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a303a79cf8a38d744b970d48faf78d00 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Time/SlowMoExample.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f0452d1af91b93f44a4af4b7e2906ffe 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Time/TimeScaleManager.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | 5 | public class TimeScaleManager : Singleton 6 | { 7 | private const float defaultFixedDeltaTime = 1f / 60f; 8 | 9 | public LensManager TimeScaleLens = new LensManager(requests => LensUtils.Min(requests)); 10 | 11 | protected override void Awake() 12 | { 13 | base.Awake(); 14 | 15 | Application.targetFrameRate = 60; 16 | 17 | Time.timeScale = 1f; 18 | Time.fixedDeltaTime = defaultFixedDeltaTime; 19 | 20 | TimeScaleLens.OnValueChanged += TimeScaleLens_OnValueChanged; 21 | } 22 | 23 | protected override void OnDestroy() 24 | { 25 | base.OnDestroy(); 26 | TimeScaleLens.OnValueChanged -= TimeScaleLens_OnValueChanged; 27 | } 28 | 29 | private void TimeScaleLens_OnValueChanged(float timeScale) 30 | { 31 | Time.timeScale = timeScale; 32 | Time.fixedDeltaTime = timeScale * defaultFixedDeltaTime; 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Time/TimeScaleManager.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d4afa15a9e56c5c448c67293d4ce980e 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Utils.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0e580a3cc5631314ead5b8f929c1c2fb 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Utils/AnimationUtils.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | 5 | public static class AnimationUtils 6 | { 7 | public static void PlayForwards(this Animation animation, float normalizedTime = 0f, float speed = 1f) 8 | { 9 | animation[animation.clip.name].normalizedTime = normalizedTime; 10 | animation[animation.clip.name].speed = speed; 11 | animation.Play(); 12 | } 13 | 14 | public static void PlayBackwards(this Animation animation) 15 | { 16 | animation[animation.clip.name].normalizedTime = 1f; 17 | animation[animation.clip.name].speed = -1f; 18 | animation.Play(); 19 | } 20 | 21 | public static void SetNormalizedTime(this Animation animation, float normalizedTime) 22 | { 23 | animation[animation.clip.name].normalizedTime = normalizedTime; 24 | animation.Sample(); 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Utils/AnimationUtils.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e43509c9e035aea48b36d501a590d22b 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Utils/ColorUtils.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9d872666b2a3d3a4bbb6e21f085db672 3 | timeCreated: 1539572018 4 | licenseType: Pro 5 | MonoImporter: 6 | externalObjects: {} 7 | serializedVersion: 2 8 | defaultReferences: [] 9 | executionOrder: 0 10 | icon: {instanceID: 0} 11 | userData: 12 | assetBundleName: 13 | assetBundleVariant: 14 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Utils/CompareUtils.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using System.Collections; 3 | 4 | public enum CompareType 5 | { 6 | Greater, 7 | GEqual, 8 | Less, 9 | LEqual, 10 | Equal, 11 | NotEqual 12 | } 13 | 14 | public static class CompareUtils 15 | { 16 | public static bool CompareTo(this int value, CompareType compareType, int compareTo) 17 | { 18 | switch (compareType) 19 | { 20 | case CompareType.Greater: 21 | return value > compareTo; 22 | case CompareType.GEqual: 23 | return value >= compareTo; 24 | case CompareType.Less: 25 | return value < compareTo; 26 | case CompareType.LEqual: 27 | return value <= compareTo; 28 | case CompareType.Equal: 29 | return value == compareTo; 30 | case CompareType.NotEqual: 31 | return value != compareTo; 32 | default: 33 | return false; 34 | } 35 | } 36 | 37 | public static bool CompareTo(this float value, CompareType compareType, float compareTo) 38 | { 39 | switch (compareType) 40 | { 41 | case CompareType.Greater: 42 | return value > compareTo; 43 | case CompareType.GEqual: 44 | return value >= compareTo; 45 | case CompareType.Less: 46 | return value < compareTo; 47 | case CompareType.LEqual: 48 | return value <= compareTo; 49 | case CompareType.Equal: 50 | return compareTo.Equals(value); 51 | case CompareType.NotEqual: 52 | return !compareTo.Equals(value); 53 | default: 54 | return false; 55 | } 56 | } 57 | } 58 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Utils/CompareUtils.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 96f231eec0c3e504e8668111d39a587d 3 | timeCreated: 1539482360 4 | licenseType: Pro 5 | MonoImporter: 6 | externalObjects: {} 7 | serializedVersion: 2 8 | defaultReferences: [] 9 | executionOrder: 0 10 | icon: {instanceID: 0} 11 | userData: 12 | assetBundleName: 13 | assetBundleVariant: 14 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Utils/Enumel.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e43b4b8823f8b6646a2369b868fc95d1 3 | timeCreated: 1539482360 4 | licenseType: Pro 5 | MonoImporter: 6 | externalObjects: {} 7 | serializedVersion: 2 8 | defaultReferences: [] 9 | executionOrder: 0 10 | icon: {instanceID: 0} 11 | userData: 12 | assetBundleName: 13 | assetBundleVariant: 14 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Utils/LuckshotMath.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a79fe95bb3e9fd646a5c31c8c9ddd835 3 | timeCreated: 1539572562 4 | licenseType: Pro 5 | MonoImporter: 6 | externalObjects: {} 7 | serializedVersion: 2 8 | defaultReferences: [] 9 | executionOrder: 0 10 | icon: {instanceID: 0} 11 | userData: 12 | assetBundleName: 13 | assetBundleVariant: 14 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Utils/MeshCopy.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4c61ba7d97251dc4fa281aaf06ade579 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Utils/PhysicsUtils.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9591240dc817f894e902d223e02b7e01 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Utils/ProjectileUtils.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | 5 | public static class ProjectileUtils 6 | { 7 | // https://gamedev.stackexchange.com/questions/114522/how-can-i-launch-a-gameobject-at-a-target-if-i-am-given-everything-except-for-it 8 | // more in depth formula explanation here https://gamedev.stackexchange.com/questions/71392/how-do-i-determine-a-good-path-for-2d-artillery-projectiles/71440#71440 9 | public static Vector3 GetLaunchVector3(Vector3 start, Vector3 end, float speed) 10 | { 11 | Vector3 toEnd = end - start; 12 | 13 | // Set up the terms we need to solve the quadratic equations. 14 | float gravitySqr = Physics.gravity.sqrMagnitude; 15 | float b = speed * speed + Vector3.Dot(toEnd, Physics.gravity); 16 | float discriminant = b * b - gravitySqr * toEnd.sqrMagnitude; 17 | 18 | // Check whether the target is reachable at max speed or less. 19 | if (discriminant < 0) 20 | { 21 | // Target is too far to hit with our speed, so we'll throw as far as possible 22 | discriminant = 0f; // Zero gives us the optimal arc 23 | } 24 | 25 | float discRoot = Mathf.Sqrt(discriminant); 26 | 27 | // Highest shot with the given max speed: 28 | float tHigh = Mathf.Sqrt((b + discRoot) * 2f / gravitySqr); 29 | 30 | // Most direct shot with the given max speed: 31 | float tDirect = Mathf.Sqrt((b - discRoot) * 2f / gravitySqr); 32 | 33 | // Lowest-speed arc available: 34 | float tIgnoreSpeed = Mathf.Sqrt(Mathf.Sqrt(toEnd.sqrMagnitude * 4f / gravitySqr)); 35 | 36 | // Convert from time-to-hit to a launch velocity: 37 | Vector3 velocity = toEnd / tDirect - Physics.gravity * tDirect / 2f; 38 | return velocity; 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Utils/ProjectileUtils.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: fffcbcf4a6d36b74da47e6271fb88599 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Utils/Rotate.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | 5 | public class Rotate : MonoBehaviour 6 | { 7 | [SerializeField] 8 | private Vector3 speed = Vector3.zero; 9 | 10 | [SerializeField] 11 | private Space space = Space.World; 12 | 13 | [SerializeField] 14 | private bool randomizeOnEnable = false; 15 | 16 | private new Rigidbody rigidbody = null; 17 | 18 | private void Awake() 19 | { 20 | rigidbody = GetComponent(); 21 | } 22 | 23 | private void OnEnable() 24 | { 25 | if (randomizeOnEnable) 26 | { 27 | Vector3 appliedSpeed = space == Space.World ? speed : transform.TransformVector(speed); 28 | Vector3 axis = appliedSpeed.normalized; 29 | 30 | RotateByAngle(Random.value * 360f, axis); 31 | } 32 | } 33 | 34 | private void FixedUpdate() 35 | { 36 | Vector3 appliedSpeed = space == Space.World ? speed : transform.TransformVector(speed); 37 | Vector3 axis = appliedSpeed.normalized; 38 | float angle = appliedSpeed.magnitude * Time.deltaTime; 39 | 40 | RotateByAngle(angle, axis); 41 | } 42 | 43 | private void RotateByAngle(float angle, Vector3 axis) 44 | { 45 | bool hasRigidbody = rigidbody != null; 46 | 47 | Quaternion newRotation = hasRigidbody ? rigidbody.rotation : transform.rotation; 48 | newRotation = Quaternion.AngleAxis(angle, axis) * newRotation; 49 | 50 | if (hasRigidbody) 51 | rigidbody.MoveRotation(newRotation); 52 | else 53 | transform.rotation = newRotation; 54 | } 55 | } 56 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Utils/Rotate.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0460f55062363b74f82fe1bf077e6e60 3 | timeCreated: 1539509528 4 | licenseType: Pro 5 | MonoImporter: 6 | externalObjects: {} 7 | serializedVersion: 2 8 | defaultReferences: [] 9 | executionOrder: 0 10 | icon: {instanceID: 0} 11 | userData: 12 | assetBundleName: 13 | assetBundleVariant: 14 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Utils/Singleton.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | public class Singleton : MonoBehaviour 4 | { 5 | protected static bool isQuitting = false; 6 | 7 | [RuntimeInitializeOnLoadMethod] 8 | static void RunOnStart() 9 | { 10 | Application.quitting += Application_OnQuit; 11 | } 12 | 13 | static void Application_OnQuit() 14 | { 15 | isQuitting = true; 16 | Application.quitting -= Application_OnQuit; 17 | } 18 | } 19 | 20 | public class Singleton : Singleton where T : MonoBehaviour 21 | { 22 | private static T instance = null; 23 | public static T Instance 24 | { 25 | get 26 | { 27 | if(instance == null) 28 | instance = FindObjectOfType(); 29 | 30 | return instance; 31 | } 32 | } 33 | 34 | protected virtual void Awake() 35 | { 36 | if(instance == null) 37 | { 38 | instance = this as T; 39 | } 40 | else if (instance != this) 41 | { 42 | Debug.LogWarning(string.Format("Multiple instances of {0}. Destroying new instance.", typeof(T))); 43 | Destroy(gameObject); 44 | } 45 | } 46 | 47 | protected virtual void OnDestroy() 48 | { 49 | instance = null; 50 | } 51 | } 52 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Utils/Singleton.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1f246f4f2eee92a4ba92720617e2039c 3 | timeCreated: 1539482359 4 | licenseType: Pro 5 | MonoImporter: 6 | externalObjects: {} 7 | serializedVersion: 2 8 | defaultReferences: [] 9 | executionOrder: 0 10 | icon: {instanceID: 0} 11 | userData: 12 | assetBundleName: 13 | assetBundleVariant: 14 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Utils/StringUtils.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | using System.Text; 5 | using System; 6 | 7 | public static class StringUtils 8 | { 9 | public static string[] SplitByCase(this string inString) 10 | { 11 | StringBuilder builder = new StringBuilder(); 12 | for (int i = 0; i < inString.Length; i++) 13 | { 14 | if (i > 0 && !Char.IsUpper(inString[i - 1]) && Char.IsUpper(inString[i])) 15 | builder.Append(','); 16 | 17 | builder.Append(inString[i]); 18 | } 19 | return builder.ToString().Split(','); 20 | } 21 | 22 | public static string SplitIntoWordsByCase(this string inString) 23 | { 24 | StringBuilder builder = new StringBuilder(); 25 | for (int i = 0; i < inString.Length; i++) 26 | { 27 | if (i > 0 && !Char.IsUpper(inString[i - 1]) && Char.IsUpper(inString[i])) 28 | builder.Append(' '); 29 | 30 | builder.Append(inString[i]); 31 | } 32 | return builder.ToString(); 33 | } 34 | 35 | public static string UppercaseFirst(this string s) 36 | { 37 | if (string.IsNullOrEmpty(s)) 38 | return string.Empty; 39 | 40 | return char.ToUpper(s[0]) + s.Substring(1); 41 | } 42 | } 43 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Utils/StringUtils.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d05724c54f30555459f35d7f0b1c1cba 3 | timeCreated: 1539573428 4 | licenseType: Pro 5 | MonoImporter: 6 | externalObjects: {} 7 | serializedVersion: 2 8 | defaultReferences: [] 9 | executionOrder: 0 10 | icon: {instanceID: 0} 11 | userData: 12 | assetBundleName: 13 | assetBundleVariant: 14 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Utils/VisibilityListener.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | 5 | public class VisibilityListener : MonoBehaviour 6 | { 7 | private bool isVisible = false; 8 | public bool IsVisible 9 | { get { return isVisible; } } 10 | 11 | public event System.Action OnVisibilityChanged = delegate { }; 12 | 13 | void OnBecameVisible() 14 | { 15 | isVisible = true; 16 | OnVisibilityChanged(true); 17 | } 18 | 19 | void OnBecameInvisible() 20 | { 21 | isVisible = false; 22 | OnVisibilityChanged(false); 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/Luckshot/Scripts/Utils/VisibilityListener.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 59975787eea43f04ba43198e34f95a05 3 | timeCreated: 1539506921 4 | licenseType: Pro 5 | MonoImporter: 6 | externalObjects: {} 7 | serializedVersion: 2 8 | defaultReferences: [] 9 | executionOrder: 0 10 | icon: {instanceID: 0} 11 | userData: 12 | assetBundleName: 13 | assetBundleVariant: 14 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: bbee984b1ed455a469154a54c3ed3b56 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/README.html.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f1c5c604e6d27cc4d86e81f45c704e11 3 | TextScriptImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 66686847ee1fa044bb15dfe473666178 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1f67e408a6d0adf4ab29d095ccd8b116 3 | folderAsset: yes 4 | timeCreated: 1507998942 5 | licenseType: Free 6 | DefaultImporter: 7 | externalObjects: {} 8 | userData: 9 | assetBundleName: 10 | assetBundleVariant: 11 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/DrawerAttributes.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c76425e719cd4424d868674bcfb233f2 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/DrawerAttributes/AllowNestingAttribute.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace NaughtyAttributes 4 | { 5 | [AttributeUsage(AttributeTargets.Field, AllowMultiple = false, Inherited = true)] 6 | public class AllowNestingAttribute : DrawerAttribute 7 | { 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/DrawerAttributes/AllowNestingAttribute.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 95b49d3abe880c044adbe7faf6b7b4ec 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/DrawerAttributes/DrawerAttribute.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace NaughtyAttributes 4 | { 5 | /// 6 | /// Base class for all drawer attributes 7 | /// 8 | public class DrawerAttribute : PropertyAttribute, INaughtyAttribute 9 | { 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/DrawerAttributes/DrawerAttribute.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9df37fdebccf65c4da5b0a14f6dad5f5 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/DrawerAttributes/DropdownAttribute.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System; 3 | using System.Collections.Generic; 4 | 5 | namespace NaughtyAttributes 6 | { 7 | [AttributeUsage(AttributeTargets.Field, AllowMultiple = false, Inherited = true)] 8 | public class DropdownAttribute : DrawerAttribute 9 | { 10 | public string ValuesName { get; private set; } 11 | 12 | public DropdownAttribute(string valuesName) 13 | { 14 | ValuesName = valuesName; 15 | } 16 | } 17 | 18 | public interface IDropdownList : IEnumerable> 19 | { 20 | } 21 | 22 | public class DropdownList : IDropdownList 23 | { 24 | private List> _values; 25 | 26 | public DropdownList() 27 | { 28 | _values = new List>(); 29 | } 30 | 31 | public void Add(string displayName, T value) 32 | { 33 | _values.Add(new KeyValuePair(displayName, value)); 34 | } 35 | 36 | public IEnumerator> GetEnumerator() 37 | { 38 | return _values.GetEnumerator(); 39 | } 40 | 41 | IEnumerator IEnumerable.GetEnumerator() 42 | { 43 | return GetEnumerator(); 44 | } 45 | 46 | public static explicit operator DropdownList(DropdownList target) 47 | { 48 | DropdownList result = new DropdownList(); 49 | foreach (var kvp in target) 50 | { 51 | result.Add(kvp.Key, kvp.Value); 52 | } 53 | 54 | return result; 55 | } 56 | } 57 | } 58 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/DrawerAttributes/DropdownAttribute.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2cb864a1092cec04f8a4dbb556e8ed31 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/DrawerAttributes/EnumFlagsAttribute.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace NaughtyAttributes 4 | { 5 | [AttributeUsage(AttributeTargets.Field, AllowMultiple = false, Inherited = true)] 6 | public class EnumFlagsAttribute : DrawerAttribute 7 | { 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/DrawerAttributes/EnumFlagsAttribute.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e8b31eb6d7299e54d89dcabc4cad0e6a 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/DrawerAttributes/HorizontalLineAttribute.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace NaughtyAttributes 4 | { 5 | [AttributeUsage(AttributeTargets.Field, AllowMultiple = true, Inherited = true)] 6 | public class HorizontalLineAttribute : DrawerAttribute 7 | { 8 | public const float DefaultHeight = 2.0f; 9 | public const EColor DefaultColor = EColor.Gray; 10 | 11 | public float Height { get; private set; } 12 | public EColor Color { get; private set; } 13 | 14 | public HorizontalLineAttribute(float height = DefaultHeight, EColor color = DefaultColor) 15 | { 16 | Height = height; 17 | Color = color; 18 | } 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/DrawerAttributes/HorizontalLineAttribute.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2fdd6f99acca2fd42a4f3162d585ce95 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/DrawerAttributes/InfoBoxAttribute.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace NaughtyAttributes 4 | { 5 | public enum EInfoBoxType 6 | { 7 | Normal, 8 | Warning, 9 | Error 10 | } 11 | 12 | [AttributeUsage(AttributeTargets.Field, AllowMultiple = true, Inherited = true)] 13 | public class InfoBoxAttribute : DrawerAttribute 14 | { 15 | public string Text { get; private set; } 16 | public EInfoBoxType Type { get; private set; } 17 | 18 | public InfoBoxAttribute(string text, EInfoBoxType type = EInfoBoxType.Normal) 19 | { 20 | Text = text; 21 | Type = type; 22 | } 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/DrawerAttributes/InfoBoxAttribute.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: afd1d6323740c734893fa8397c53113b 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/DrawerAttributes/InputAxisAttribute.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace NaughtyAttributes 4 | { 5 | [AttributeUsage(AttributeTargets.Field, AllowMultiple = false, Inherited = true)] 6 | public class InputAxisAttribute : DrawerAttribute 7 | { 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/DrawerAttributes/InputAxisAttribute.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 85033978c18810f46af271bbe94cf4aa 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/DrawerAttributes/MinMaxSliderAttribute.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace NaughtyAttributes 4 | { 5 | [AttributeUsage(AttributeTargets.Field, AllowMultiple = false, Inherited = true)] 6 | public class MinMaxSliderAttribute : DrawerAttribute 7 | { 8 | public float MinValue { get; private set; } 9 | public float MaxValue { get; private set; } 10 | 11 | public MinMaxSliderAttribute(float minValue, float maxValue) 12 | { 13 | MinValue = minValue; 14 | MaxValue = maxValue; 15 | } 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/DrawerAttributes/MinMaxSliderAttribute.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4aaa73f574deaa54187cb54aae571b24 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/DrawerAttributes/ProgressBarAttribute.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace NaughtyAttributes 4 | { 5 | [AttributeUsage(AttributeTargets.Field, AllowMultiple = false, Inherited = true)] 6 | public class ProgressBarAttribute : DrawerAttribute 7 | { 8 | public string Name { get; private set; } 9 | public float MaxValue { get; private set; } 10 | public EColor Color { get; private set; } 11 | 12 | public ProgressBarAttribute(string name = "", float maxValue = 100, EColor color = EColor.Blue) 13 | { 14 | Name = name; 15 | MaxValue = maxValue; 16 | Color = color; 17 | } 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/DrawerAttributes/ProgressBarAttribute.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e19e4db6f4d08f849aa8ea8155cd2760 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/DrawerAttributes/ReadOnlyAttribute.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace NaughtyAttributes 4 | { 5 | [AttributeUsage(AttributeTargets.Field, AllowMultiple = false, Inherited = true)] 6 | public class ReadOnlyAttribute : DrawerAttribute 7 | { 8 | 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/DrawerAttributes/ReadOnlyAttribute.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e57264747ba93b94fbff12733de29499 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/DrawerAttributes/ResizableTextAreaAttribute.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace NaughtyAttributes 4 | { 5 | [AttributeUsage(AttributeTargets.Field, AllowMultiple = false, Inherited = true)] 6 | public class ResizableTextAreaAttribute : DrawerAttribute 7 | { 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/DrawerAttributes/ResizableTextAreaAttribute.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 56d9a4b795ef4a94d86b94e55fb81240 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/DrawerAttributes/SceneAttribute.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace NaughtyAttributes 4 | { 5 | [AttributeUsage(AttributeTargets.Field, AllowMultiple = false, Inherited = true)] 6 | public class SceneAttribute : DrawerAttribute 7 | { 8 | } 9 | } -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/DrawerAttributes/SceneAttribute.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e054de18423364f4688b72a0f2a472b6 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/DrawerAttributes/ShowAssetPreviewAttribute.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace NaughtyAttributes 4 | { 5 | [AttributeUsage(AttributeTargets.Field, AllowMultiple = false, Inherited = true)] 6 | public class ShowAssetPreviewAttribute : DrawerAttribute 7 | { 8 | public int Width { get; private set; } 9 | public int Height { get; private set; } 10 | 11 | public ShowAssetPreviewAttribute(int width = 64, int height = 64) 12 | { 13 | Width = width; 14 | Height = height; 15 | } 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/DrawerAttributes/ShowAssetPreviewAttribute.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4b7dd9b44abc0054cb5cd68d74be2c1a 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/DrawerAttributes/TagAttribute.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace NaughtyAttributes 4 | { 5 | [AttributeUsage(AttributeTargets.Field, AllowMultiple = false, Inherited = true)] 6 | public class TagAttribute : DrawerAttribute 7 | { 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/DrawerAttributes/TagAttribute.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8903399bbd7c9d745a7b9188ab6c8320 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/DrawerAttributes_SpecialCase.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5cf879ed72221e740a7aa02ef9c366a7 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/DrawerAttributes_SpecialCase/ButtonAttribute.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace NaughtyAttributes 4 | { 5 | [AttributeUsage(AttributeTargets.Method, AllowMultiple = false, Inherited = true)] 6 | public class ButtonAttribute : SpecialCaseDrawerAttribute 7 | { 8 | public string Text { get; private set; } 9 | 10 | public ButtonAttribute(string text = null) 11 | { 12 | Text = text; 13 | } 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/DrawerAttributes_SpecialCase/ButtonAttribute.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e8fe363a25ec5e24a9dd510bb0b4a0d4 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/DrawerAttributes_SpecialCase/ReorderableListAttribute.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace NaughtyAttributes 4 | { 5 | [AttributeUsage(AttributeTargets.Field, AllowMultiple = false, Inherited = true)] 6 | public class ReorderableListAttribute : SpecialCaseDrawerAttribute 7 | { 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/DrawerAttributes_SpecialCase/ReorderableListAttribute.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6189b48f4055e6c47aa132632d898fa6 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/DrawerAttributes_SpecialCase/ShowNativePropertyAttribute.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace NaughtyAttributes 4 | { 5 | [AttributeUsage(AttributeTargets.Property, AllowMultiple = false, Inherited = true)] 6 | public class ShowNativePropertyAttribute : SpecialCaseDrawerAttribute 7 | { 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/DrawerAttributes_SpecialCase/ShowNativePropertyAttribute.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a8e9b7b71c94a1f459336a24cfe04b1b 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/DrawerAttributes_SpecialCase/ShowNonSerializedFieldAttribute.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace NaughtyAttributes 4 | { 5 | [AttributeUsage(AttributeTargets.Field, AllowMultiple = false, Inherited = true)] 6 | public class ShowNonSerializedFieldAttribute : SpecialCaseDrawerAttribute 7 | { 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/DrawerAttributes_SpecialCase/ShowNonSerializedFieldAttribute.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8ea09f60df536734184a8920ff8bda6f 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/DrawerAttributes_SpecialCase/SpecialCaseDrawerAttribute.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace NaughtyAttributes 4 | { 5 | public class SpecialCaseDrawerAttribute : Attribute, INaughtyAttribute 6 | { 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/DrawerAttributes_SpecialCase/SpecialCaseDrawerAttribute.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 95a59093f8ed1af48a8be75fa3050a3c 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/INaughtyAttribute.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace NaughtyAttributes 4 | { 5 | public interface INaughtyAttribute 6 | { 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/INaughtyAttribute.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: edda855906d15e541b46efd812fd70f3 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/MetaAttributes.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 64c95d02a2004854585e8d923d6680d0 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/MetaAttributes/BoxGroupAttribute.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace NaughtyAttributes 4 | { 5 | [AttributeUsage(AttributeTargets.Field, AllowMultiple = false, Inherited = true)] 6 | public class BoxGroupAttribute : MetaAttribute 7 | { 8 | public string Name { get; private set; } 9 | 10 | public BoxGroupAttribute(string name = "") 11 | { 12 | Name = name; 13 | } 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/MetaAttributes/BoxGroupAttribute.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 07da8af1e3be52c4789678bf4138ae11 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/MetaAttributes/DisableIfAttribute.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace NaughtyAttributes 4 | { 5 | [AttributeUsage(AttributeTargets.Field, AllowMultiple = false, Inherited = true)] 6 | public class DisableIfAttribute : EnableIfAttributeBase 7 | { 8 | public DisableIfAttribute(string condition) 9 | : base(condition) 10 | { 11 | Inverted = true; 12 | } 13 | 14 | public DisableIfAttribute(EConditionOperator conditionOperator, params string[] conditions) 15 | : base(conditionOperator, conditions) 16 | { 17 | Inverted = true; 18 | } 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/MetaAttributes/DisableIfAttribute.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 52a0d5c249ac8fd42a4fb4d61bc2f797 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/MetaAttributes/EnableIfAttribute.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace NaughtyAttributes 4 | { 5 | [AttributeUsage(AttributeTargets.Field, AllowMultiple = false, Inherited = true)] 6 | public class EnableIfAttribute : EnableIfAttributeBase 7 | { 8 | public EnableIfAttribute(string condition) 9 | : base(condition) 10 | { 11 | Inverted = false; 12 | } 13 | 14 | public EnableIfAttribute(EConditionOperator conditionOperator, params string[] conditions) 15 | : base(conditionOperator, conditions) 16 | { 17 | Inverted = false; 18 | } 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/MetaAttributes/EnableIfAttribute.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a616ae826c8ebae45a89d6a8cb68a843 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/MetaAttributes/EnableIfAttributeBase.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace NaughtyAttributes 4 | { 5 | public abstract class EnableIfAttributeBase : MetaAttribute 6 | { 7 | public string[] Conditions { get; private set; } 8 | public EConditionOperator ConditionOperator { get; private set; } 9 | public bool Inverted { get; protected set; } 10 | 11 | public EnableIfAttributeBase(string condition) 12 | { 13 | ConditionOperator = EConditionOperator.And; 14 | Conditions = new string[1] { condition }; 15 | } 16 | 17 | public EnableIfAttributeBase(EConditionOperator conditionOperator, params string[] conditions) 18 | { 19 | ConditionOperator = conditionOperator; 20 | Conditions = conditions; 21 | } 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/MetaAttributes/EnableIfAttributeBase.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8ba6385cd022e164b89ead1937173ddc 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/MetaAttributes/HideIfAttribute.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace NaughtyAttributes 4 | { 5 | [AttributeUsage(AttributeTargets.Field, AllowMultiple = false, Inherited = true)] 6 | public class HideIfAttribute : ShowIfAttributeBase 7 | { 8 | public HideIfAttribute(string condition) 9 | : base(condition) 10 | { 11 | Inverted = true; 12 | } 13 | 14 | public HideIfAttribute(EConditionOperator conditionOperator, params string[] conditions) 15 | : base(conditionOperator, conditions) 16 | { 17 | Inverted = true; 18 | } 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/MetaAttributes/HideIfAttribute.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9ab2d0fcfb13a214ea6ef7629c96a761 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/MetaAttributes/LabelAttribute.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace NaughtyAttributes 4 | { 5 | [AttributeUsage(AttributeTargets.Field, AllowMultiple = false, Inherited = true)] 6 | public class LabelAttribute : MetaAttribute 7 | { 8 | public string Label { get; private set; } 9 | 10 | public LabelAttribute(string label) 11 | { 12 | Label = label; 13 | } 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/MetaAttributes/LabelAttribute.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 79e0e0c0a7c25ea4fbe8eecaa4d559a0 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/MetaAttributes/MetaAttribute.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace NaughtyAttributes 4 | { 5 | public class MetaAttribute : Attribute, INaughtyAttribute 6 | { 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/MetaAttributes/MetaAttribute.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a482b4e0fbf0f4547a5d522182a68d24 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/MetaAttributes/OnValueChangedAttribute.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace NaughtyAttributes 4 | { 5 | [AttributeUsage(AttributeTargets.Field, AllowMultiple = true, Inherited = true)] 6 | public class OnValueChangedAttribute : MetaAttribute 7 | { 8 | public string CallbackName { get; private set; } 9 | 10 | public OnValueChangedAttribute(string callbackName) 11 | { 12 | CallbackName = callbackName; 13 | } 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/MetaAttributes/OnValueChangedAttribute.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e16a27c5576022b4bbe997c7db9051f0 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/MetaAttributes/ShowIfAttribute.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace NaughtyAttributes 4 | { 5 | [AttributeUsage(AttributeTargets.Field, AllowMultiple = false, Inherited = true)] 6 | public class ShowIfAttribute : ShowIfAttributeBase 7 | { 8 | public ShowIfAttribute(string condition) 9 | : base(condition) 10 | { 11 | Inverted = false; 12 | } 13 | 14 | public ShowIfAttribute(EConditionOperator conditionOperator, params string[] conditions) 15 | : base(conditionOperator, conditions) 16 | { 17 | Inverted = false; 18 | } 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/MetaAttributes/ShowIfAttribute.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1ada427cfd2c9b04989d6d18dea27985 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/MetaAttributes/ShowIfAttributeBase.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace NaughtyAttributes 4 | { 5 | public class ShowIfAttributeBase : MetaAttribute 6 | { 7 | public string[] Conditions { get; private set; } 8 | public EConditionOperator ConditionOperator { get; private set; } 9 | public bool Inverted { get; protected set; } 10 | 11 | public ShowIfAttributeBase(string condition) 12 | { 13 | ConditionOperator = EConditionOperator.And; 14 | Conditions = new string[1] { condition }; 15 | } 16 | 17 | public ShowIfAttributeBase(EConditionOperator conditionOperator, params string[] conditions) 18 | { 19 | ConditionOperator = conditionOperator; 20 | Conditions = conditions; 21 | } 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/MetaAttributes/ShowIfAttributeBase.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0532b1c4d8a9ccf4b9f98f0bbe4a6747 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/NaughtyAttributes.Core.asmdef: -------------------------------------------------------------------------------- 1 | { 2 | "name": "NaughtyAttributes.Core", 3 | "references": [], 4 | "includePlatforms": [], 5 | "excludePlatforms": [], 6 | "allowUnsafeCode": false, 7 | "overrideReferences": false, 8 | "precompiledReferences": [], 9 | "autoReferenced": true, 10 | "defineConstraints": [], 11 | "versionDefines": [] 12 | } -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/NaughtyAttributes.Core.asmdef.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 776d03a35f1b52c4a9aed9f56d7b4229 3 | AssemblyDefinitionImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/Utility.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6d61a3a977073c740ae13a3683ed22a1 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/Utility/EColor.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace NaughtyAttributes 4 | { 5 | public enum EColor 6 | { 7 | White, 8 | Black, 9 | Gray, 10 | Red, 11 | Pink, 12 | Orange, 13 | Yellow, 14 | Green, 15 | Blue, 16 | Indigo, 17 | Violet 18 | } 19 | 20 | public static class EColorExtensions 21 | { 22 | public static Color GetColor(this EColor color) 23 | { 24 | switch (color) 25 | { 26 | case EColor.White: 27 | return new Color32(255, 255, 255, 255); 28 | case EColor.Black: 29 | return new Color32(0, 0, 0, 255); 30 | case EColor.Gray: 31 | return new Color32(128, 128, 128, 255); 32 | case EColor.Red: 33 | return new Color32(255, 0, 63, 255); 34 | case EColor.Pink: 35 | return new Color32(255, 152, 203, 255); 36 | case EColor.Orange: 37 | return new Color32(255, 128, 0, 255); 38 | case EColor.Yellow: 39 | return new Color32(255, 211, 0, 255); 40 | case EColor.Green: 41 | return new Color32(98, 200, 79, 255); 42 | case EColor.Blue: 43 | return new Color32(0, 135, 189, 255); 44 | case EColor.Indigo: 45 | return new Color32(75, 0, 130, 255); 46 | case EColor.Violet: 47 | return new Color32(128, 0, 255, 255); 48 | default: 49 | return new Color32(0, 0, 0, 255); 50 | } 51 | } 52 | } 53 | } 54 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/Utility/EColor.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 059f8674a8065924ea9c678298b5cd63 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/Utility/EConditionOperator.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace NaughtyAttributes 4 | { 5 | public enum EConditionOperator 6 | { 7 | And, 8 | Or 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/Utility/EConditionOperator.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3c227b6c19fc67b46ad294d95818f85a 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/ValidatorAttributes.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: bf91d63e37bed3e4cbf75d576fc03a21 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/ValidatorAttributes/MaxValueAttribute.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace NaughtyAttributes 4 | { 5 | [AttributeUsage(AttributeTargets.Field, AllowMultiple = false, Inherited = true)] 6 | public class MaxValueAttribute : ValidatorAttribute 7 | { 8 | public float MaxValue { get; private set; } 9 | 10 | public MaxValueAttribute(float maxValue) 11 | { 12 | MaxValue = maxValue; 13 | } 14 | 15 | public MaxValueAttribute(int maxValue) 16 | { 17 | MaxValue = maxValue; 18 | } 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/ValidatorAttributes/MaxValueAttribute.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a748250af5ccfd7499cfb444aafb8a03 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/ValidatorAttributes/MinValueAttribute.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace NaughtyAttributes 4 | { 5 | [AttributeUsage(AttributeTargets.Field, AllowMultiple = false, Inherited = true)] 6 | public class MinValueAttribute : ValidatorAttribute 7 | { 8 | public float MinValue { get; private set; } 9 | 10 | public MinValueAttribute(float minValue) 11 | { 12 | MinValue = minValue; 13 | } 14 | 15 | public MinValueAttribute(int minValue) 16 | { 17 | MinValue = minValue; 18 | } 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/ValidatorAttributes/MinValueAttribute.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 40133bac7c8d42b4d837138430a503e0 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/ValidatorAttributes/RequiredAttribute.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace NaughtyAttributes 4 | { 5 | [AttributeUsage(AttributeTargets.Field, AllowMultiple = false, Inherited = true)] 6 | public class RequiredAttribute : ValidatorAttribute 7 | { 8 | public string Message { get; private set; } 9 | 10 | public RequiredAttribute(string message = null) 11 | { 12 | Message = message; 13 | } 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/ValidatorAttributes/RequiredAttribute.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b0cdf49d1687849458b1a8d4786553d4 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/ValidatorAttributes/ValidateInputAttribute.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace NaughtyAttributes 4 | { 5 | [AttributeUsage(AttributeTargets.Field, AllowMultiple = false, Inherited = true)] 6 | public class ValidateInputAttribute : ValidatorAttribute 7 | { 8 | public string CallbackName { get; private set; } 9 | public string Message { get; private set; } 10 | 11 | public ValidateInputAttribute(string callbackName, string message = null) 12 | { 13 | CallbackName = callbackName; 14 | Message = message; 15 | } 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/ValidatorAttributes/ValidateInputAttribute.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6c4171d68fb5bc0448d3ac298973e82c 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/ValidatorAttributes/ValidatorAttribute.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace NaughtyAttributes 4 | { 5 | public class ValidatorAttribute : Attribute, INaughtyAttribute 6 | { 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Core/ValidatorAttributes/ValidatorAttribute.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0f3c43bed2dbc5249b6c6ec7859c2020 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Editor.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b76068e69df25a94ab378b0b6829c4f0 3 | folderAsset: yes 4 | timeCreated: 1507995613 5 | licenseType: Free 6 | DefaultImporter: 7 | externalObjects: {} 8 | userData: 9 | assetBundleName: 10 | assetBundleVariant: 11 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Editor/DecoratorDrawers.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d3041a2296f3b1749b3ef18e695adee4 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Editor/DecoratorDrawers/HorizontalLineDecoratorDrawer.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using UnityEditor; 3 | 4 | namespace NaughtyAttributes.Editor 5 | { 6 | [CustomPropertyDrawer(typeof(HorizontalLineAttribute))] 7 | public class HorizontalLineDecoratorDrawer : DecoratorDrawer 8 | { 9 | public override float GetHeight() 10 | { 11 | HorizontalLineAttribute lineAttr = (HorizontalLineAttribute)attribute; 12 | return EditorGUIUtility.singleLineHeight + lineAttr.Height; 13 | } 14 | 15 | public override void OnGUI(Rect position) 16 | { 17 | Rect rect = EditorGUI.IndentedRect(position); 18 | rect.y += EditorGUIUtility.singleLineHeight / 3.0f; 19 | HorizontalLineAttribute lineAttr = (HorizontalLineAttribute)attribute; 20 | NaughtyEditorGUI.HorizontalLine(rect, lineAttr.Height, lineAttr.Color.GetColor()); 21 | } 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Editor/DecoratorDrawers/HorizontalLineDecoratorDrawer.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3ec99f3a124f20e40b8f5edfeb1ecced 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Editor/DecoratorDrawers/InfoBoxDecoratorDrawer.cs: -------------------------------------------------------------------------------- 1 | using UnityEditor; 2 | using UnityEngine; 3 | 4 | namespace NaughtyAttributes.Editor 5 | { 6 | [CustomPropertyDrawer(typeof(InfoBoxAttribute))] 7 | public class InfoBoxDecoratorDrawer : DecoratorDrawer 8 | { 9 | public override float GetHeight() 10 | { 11 | return GetHelpBoxHeight(); 12 | } 13 | 14 | public override void OnGUI(Rect rect) 15 | { 16 | InfoBoxAttribute infoBoxAttribute = (InfoBoxAttribute)attribute; 17 | 18 | float indentLength = NaughtyEditorGUI.GetIndentLength(rect); 19 | Rect infoBoxRect = new Rect( 20 | rect.x + indentLength, 21 | rect.y, 22 | rect.width - indentLength, 23 | GetHelpBoxHeight() - 2.0f); 24 | 25 | DrawInfoBox(infoBoxRect, infoBoxAttribute.Text, infoBoxAttribute.Type); 26 | } 27 | 28 | private float GetHelpBoxHeight() 29 | { 30 | return EditorGUIUtility.singleLineHeight * 3.0f; 31 | } 32 | 33 | private void DrawInfoBox(Rect rect, string infoText, EInfoBoxType infoBoxType) 34 | { 35 | MessageType messageType = MessageType.None; 36 | switch (infoBoxType) 37 | { 38 | case EInfoBoxType.Normal: 39 | messageType = MessageType.Info; 40 | break; 41 | 42 | case EInfoBoxType.Warning: 43 | messageType = MessageType.Warning; 44 | break; 45 | 46 | case EInfoBoxType.Error: 47 | messageType = MessageType.Error; 48 | break; 49 | } 50 | 51 | NaughtyEditorGUI.HelpBox(rect, infoText, messageType); 52 | } 53 | } 54 | } 55 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Editor/DecoratorDrawers/InfoBoxDecoratorDrawer.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e9c18b0e698717442b7631c5066d667f 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Editor/NaughtyAttributes.Editor.asmdef: -------------------------------------------------------------------------------- 1 | { 2 | "name": "NaughtyAttributes.Editor", 3 | "references": [ 4 | "NaughtyAttributes.Core" 5 | ], 6 | "optionalUnityReferences": [], 7 | "includePlatforms": [ 8 | "Editor" 9 | ], 10 | "excludePlatforms": [], 11 | "allowUnsafeCode": false, 12 | "overrideReferences": false, 13 | "precompiledReferences": [], 14 | "autoReferenced": true, 15 | "defineConstraints": [] 16 | } -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Editor/NaughtyAttributes.Editor.asmdef.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f88fb04354076c646a4107a491394033 3 | AssemblyDefinitionImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Editor/NaughtyInspector.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1b9b53879f7c93b42835c3ad9e0d0a66 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Editor/PropertyDrawers.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4327d74fca5deaa4c83c483fe468d274 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Editor/PropertyDrawers/AllowNestingPropertyDrawer.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using UnityEditor; 3 | 4 | namespace NaughtyAttributes.Editor 5 | { 6 | [CustomPropertyDrawer(typeof(AllowNestingAttribute))] 7 | public class AllowNestingPropertyDrawer : PropertyDrawerBase 8 | { 9 | protected override void OnGUI_Internal(Rect rect, SerializedProperty property, GUIContent label) 10 | { 11 | EditorGUI.BeginProperty(rect, label, property); 12 | EditorGUI.PropertyField(rect, property, label, true); 13 | EditorGUI.EndProperty(); 14 | } 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Editor/PropertyDrawers/AllowNestingPropertyDrawer.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a3175e7041b8f4348bd652485a78e7b1 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Editor/PropertyDrawers/DropdownPropertyDrawer.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: dd080b36769bcd94d909fc0431cf25e0 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Editor/PropertyDrawers/EnumFlagsPropertyDrawer.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using UnityEditor; 3 | using System; 4 | 5 | namespace NaughtyAttributes.Editor 6 | { 7 | [CustomPropertyDrawer(typeof(EnumFlagsAttribute))] 8 | public class EnumFlagsPropertyDrawer : PropertyDrawerBase 9 | { 10 | protected override float GetPropertyHeight_Internal(SerializedProperty property, GUIContent label) 11 | { 12 | Enum targetEnum = PropertyUtility.GetTargetObjectOfProperty(property) as Enum; 13 | 14 | return (targetEnum != null) 15 | ? GetPropertyHeight(property) 16 | : GetPropertyHeight(property) + GetHelpBoxHeight(); 17 | } 18 | 19 | protected override void OnGUI_Internal(Rect rect, SerializedProperty property, GUIContent label) 20 | { 21 | EditorGUI.BeginProperty(rect, label, property); 22 | 23 | Enum targetEnum = PropertyUtility.GetTargetObjectOfProperty(property) as Enum; 24 | if (targetEnum != null) 25 | { 26 | Enum enumNew = EditorGUI.EnumFlagsField(rect, label.text, targetEnum); 27 | property.intValue = (int)Convert.ChangeType(enumNew, targetEnum.GetType()); 28 | } 29 | else 30 | { 31 | string message = attribute.GetType().Name + " can be used only on enums"; 32 | DrawDefaultPropertyAndHelpBox(rect, property, message, MessageType.Warning); 33 | } 34 | 35 | EditorGUI.EndProperty(); 36 | } 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Editor/PropertyDrawers/EnumFlagsPropertyDrawer.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b750e1461c1126d4399459b90b31e75e 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Editor/PropertyDrawers/InputAxisPropertyDrawer.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0de9d3dfe2d466a458be838edf361645 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Editor/PropertyDrawers/MinMaxSliderPropertyDrawer.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 27011af81554b5b4489b155f09275475 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Editor/PropertyDrawers/ProgressBarPropertyDrawer.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0bcbc424b10864b4eb6e3bcfb276cdf9 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Editor/PropertyDrawers/PropertyDrawerBase.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 574f5fa6033f26342816a8a5f39749e5 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Editor/PropertyDrawers/ReadOnlyPropertyDrawer.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using UnityEditor; 3 | 4 | namespace NaughtyAttributes.Editor 5 | { 6 | [CustomPropertyDrawer(typeof(ReadOnlyAttribute))] 7 | public class ReadOnlyPropertyDrawer : PropertyDrawerBase 8 | { 9 | protected override float GetPropertyHeight_Internal(SerializedProperty property, GUIContent label) 10 | { 11 | return GetPropertyHeight(property); 12 | } 13 | 14 | protected override void OnGUI_Internal(Rect rect, SerializedProperty property, GUIContent label) 15 | { 16 | EditorGUI.BeginProperty(rect, label, property); 17 | 18 | GUI.enabled = false; 19 | EditorGUI.PropertyField(rect, property, label, true); 20 | GUI.enabled = true; 21 | 22 | EditorGUI.EndProperty(); 23 | } 24 | } 25 | } -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Editor/PropertyDrawers/ReadOnlyPropertyDrawer.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1839b194211d84f4cae22740dbba390f 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Editor/PropertyDrawers/ResizableTextAreaPropertyDrawer.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6e27ffd9a96b58c46bb74cc93de3e06f 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Editor/PropertyDrawers/ScenePropertyDrawer.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7f5ed440d4f429e42a5da7bc5df48fd8 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Editor/PropertyDrawers/ShowAssetPreviewPropertyDrawer.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 24dee3fc91cfe94438de1e3c158f187f 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Editor/PropertyDrawers/TagPropertyDrawer.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using UnityEditor; 3 | using UnityEngine; 4 | 5 | namespace NaughtyAttributes.Editor 6 | { 7 | [CustomPropertyDrawer(typeof(TagAttribute))] 8 | public class TagPropertyDrawer : PropertyDrawerBase 9 | { 10 | protected override float GetPropertyHeight_Internal(SerializedProperty property, GUIContent label) 11 | { 12 | return (property.propertyType == SerializedPropertyType.String) 13 | ? GetPropertyHeight(property) 14 | : GetPropertyHeight(property) + GetHelpBoxHeight(); 15 | } 16 | 17 | protected override void OnGUI_Internal(Rect rect, SerializedProperty property, GUIContent label) 18 | { 19 | if (property.propertyType == SerializedPropertyType.String) 20 | { 21 | // generate the taglist + custom tags 22 | List tagList = new List(); 23 | tagList.Add("(None)"); 24 | tagList.Add("Untagged"); 25 | tagList.AddRange(UnityEditorInternal.InternalEditorUtility.tags); 26 | 27 | string propertyString = property.stringValue; 28 | int index = 0; 29 | // check if there is an entry that matches the entry and get the index 30 | // we skip index 0 as that is a special custom case 31 | for (int i = 1; i < tagList.Count; i++) 32 | { 33 | if (tagList[i] == propertyString) 34 | { 35 | index = i; 36 | break; 37 | } 38 | } 39 | 40 | // Draw the popup box with the current selected index 41 | index = EditorGUI.Popup(rect, label.text, index, tagList.ToArray()); 42 | 43 | // Adjust the actual string value of the property based on the selection 44 | if (index > 0) 45 | { 46 | property.stringValue = tagList[index]; 47 | } 48 | else 49 | { 50 | property.stringValue = string.Empty; 51 | } 52 | } 53 | else 54 | { 55 | string message = string.Format("{0} supports only string fields", typeof(TagAttribute).Name); 56 | DrawDefaultPropertyAndHelpBox(rect, property, message, MessageType.Warning); 57 | } 58 | } 59 | } 60 | } 61 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Editor/PropertyDrawers/TagPropertyDrawer.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3df4c068c970ab6498df7a60efbde311 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Editor/PropertyDrawers_SpecialCase.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 750a102004a7e4f46a2046a3d74cae19 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Editor/PropertyDrawers_SpecialCase/ReorderableListPropertyDrawer.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: bf36691a6d456564db2fcbfa8726b3f3 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Editor/PropertyDrawers_SpecialCase/SpecialCasePropertyDrawerBase.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using UnityEditor; 4 | using UnityEngine; 5 | 6 | namespace NaughtyAttributes.Editor 7 | { 8 | public abstract class SpecialCasePropertyDrawerBase 9 | { 10 | public void OnGUI(SerializedProperty property) 11 | { 12 | // Check if visible 13 | bool visible = PropertyUtility.IsVisible(property); 14 | if (!visible) 15 | { 16 | return; 17 | } 18 | 19 | // Validate 20 | ValidatorAttribute[] validatorAttributes = PropertyUtility.GetAttributes(property); 21 | foreach (var validatorAttribute in validatorAttributes) 22 | { 23 | validatorAttribute.GetValidator().ValidateProperty(property); 24 | } 25 | 26 | // Check if enabled and draw 27 | EditorGUI.BeginChangeCheck(); 28 | bool enabled = PropertyUtility.IsEnabled(property); 29 | GUI.enabled = enabled; 30 | OnGUI_Internal(property, new GUIContent(PropertyUtility.GetLabel(property))); 31 | GUI.enabled = true; 32 | 33 | // Call OnValueChanged callbacks 34 | if (EditorGUI.EndChangeCheck()) 35 | { 36 | PropertyUtility.CallOnValueChangedCallbacks(property); 37 | } 38 | } 39 | 40 | protected abstract void OnGUI_Internal(SerializedProperty property, GUIContent label); 41 | } 42 | 43 | public static class SpecialCaseDrawerAttributeExtensions 44 | { 45 | private static Dictionary _drawersByAttributeType; 46 | 47 | static SpecialCaseDrawerAttributeExtensions() 48 | { 49 | _drawersByAttributeType = new Dictionary(); 50 | _drawersByAttributeType[typeof(ReorderableListAttribute)] = ReorderableListPropertyDrawer.Instance; 51 | } 52 | 53 | public static SpecialCasePropertyDrawerBase GetDrawer(this SpecialCaseDrawerAttribute attr) 54 | { 55 | SpecialCasePropertyDrawerBase drawer; 56 | if (_drawersByAttributeType.TryGetValue(attr.GetType(), out drawer)) 57 | { 58 | return drawer; 59 | } 60 | else 61 | { 62 | return null; 63 | } 64 | } 65 | } 66 | } 67 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Editor/PropertyDrawers_SpecialCase/SpecialCasePropertyDrawerBase.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 771776453ad34b045a41dea54856fa12 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Editor/PropertyValidators.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 41caedece93df91439d624dc9d124424 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Editor/PropertyValidators/MaxValuePropertyValidator.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using UnityEditor; 3 | 4 | namespace NaughtyAttributes.Editor 5 | { 6 | public class MaxValuePropertyValidator : PropertyValidatorBase 7 | { 8 | public override void ValidateProperty(SerializedProperty property) 9 | { 10 | MaxValueAttribute maxValueAttribute = PropertyUtility.GetAttribute(property); 11 | 12 | if (property.propertyType == SerializedPropertyType.Integer) 13 | { 14 | if (property.intValue > maxValueAttribute.MaxValue) 15 | { 16 | property.intValue = (int)maxValueAttribute.MaxValue; 17 | } 18 | } 19 | else if (property.propertyType == SerializedPropertyType.Float) 20 | { 21 | if (property.floatValue > maxValueAttribute.MaxValue) 22 | { 23 | property.floatValue = maxValueAttribute.MaxValue; 24 | } 25 | } 26 | else 27 | { 28 | string warning = maxValueAttribute.GetType().Name + " can be used only on int or float fields"; 29 | Debug.LogWarning(warning, property.serializedObject.targetObject); 30 | } 31 | } 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Editor/PropertyValidators/MaxValuePropertyValidator.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 627b8e9e7bda6fa408c6f47fb8285665 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Editor/PropertyValidators/MinValuePropertyValidator.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using UnityEditor; 3 | 4 | namespace NaughtyAttributes.Editor 5 | { 6 | public class MinValuePropertyValidator : PropertyValidatorBase 7 | { 8 | public override void ValidateProperty(SerializedProperty property) 9 | { 10 | MinValueAttribute minValueAttribute = PropertyUtility.GetAttribute(property); 11 | 12 | if (property.propertyType == SerializedPropertyType.Integer) 13 | { 14 | if (property.intValue < minValueAttribute.MinValue) 15 | { 16 | property.intValue = (int)minValueAttribute.MinValue; 17 | } 18 | } 19 | else if (property.propertyType == SerializedPropertyType.Float) 20 | { 21 | if (property.floatValue < minValueAttribute.MinValue) 22 | { 23 | property.floatValue = minValueAttribute.MinValue; 24 | } 25 | } 26 | else 27 | { 28 | string warning = minValueAttribute.GetType().Name + " can be used only on int or float fields"; 29 | Debug.LogWarning(warning, property.serializedObject.targetObject); 30 | } 31 | } 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Editor/PropertyValidators/MinValuePropertyValidator.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 03dd23f6c0598074fb1b721dcd8fe023 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Editor/PropertyValidators/PropertyValidatorBase.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using UnityEditor; 4 | 5 | namespace NaughtyAttributes.Editor 6 | { 7 | public abstract class PropertyValidatorBase 8 | { 9 | public abstract void ValidateProperty(SerializedProperty property); 10 | } 11 | 12 | public static class ValidatorAttributeExtensions 13 | { 14 | private static Dictionary _validatorsByAttributeType; 15 | 16 | static ValidatorAttributeExtensions() 17 | { 18 | _validatorsByAttributeType = new Dictionary(); 19 | _validatorsByAttributeType[typeof(MinValueAttribute)] = new MinValuePropertyValidator(); 20 | _validatorsByAttributeType[typeof(MaxValueAttribute)] = new MaxValuePropertyValidator(); 21 | _validatorsByAttributeType[typeof(RequiredAttribute)] = new RequiredPropertyValidator(); 22 | _validatorsByAttributeType[typeof(ValidateInputAttribute)] = new ValidateInputPropertyValidator(); 23 | } 24 | 25 | public static PropertyValidatorBase GetValidator(this ValidatorAttribute attr) 26 | { 27 | PropertyValidatorBase validator; 28 | if (_validatorsByAttributeType.TryGetValue(attr.GetType(), out validator)) 29 | { 30 | return validator; 31 | } 32 | else 33 | { 34 | return null; 35 | } 36 | } 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Editor/PropertyValidators/PropertyValidatorBase.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f332c8e1c3627d742aa9158af7b02ccc 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Editor/PropertyValidators/RequiredPropertyValidator.cs: -------------------------------------------------------------------------------- 1 | using UnityEditor; 2 | 3 | namespace NaughtyAttributes.Editor 4 | { 5 | public class RequiredPropertyValidator : PropertyValidatorBase 6 | { 7 | public override void ValidateProperty(SerializedProperty property) 8 | { 9 | RequiredAttribute requiredAttribute = PropertyUtility.GetAttribute(property); 10 | 11 | if (property.propertyType == SerializedPropertyType.ObjectReference) 12 | { 13 | if (property.objectReferenceValue == null) 14 | { 15 | string errorMessage = property.name + " is required"; 16 | if (!string.IsNullOrEmpty(requiredAttribute.Message)) 17 | { 18 | errorMessage = requiredAttribute.Message; 19 | } 20 | 21 | NaughtyEditorGUI.HelpBox_Layout(errorMessage, MessageType.Error, context: property.serializedObject.targetObject); 22 | } 23 | } 24 | else 25 | { 26 | string warning = requiredAttribute.GetType().Name + " works only on reference types"; 27 | NaughtyEditorGUI.HelpBox_Layout(warning, MessageType.Warning, context: property.serializedObject.targetObject); 28 | } 29 | } 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Editor/PropertyValidators/RequiredPropertyValidator.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3a7e657ea45f6414682b5f41be9541b4 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Editor/PropertyValidators/ValidateInputPropertyValidator.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5f6adf84ed53a7840a456e8b4dce38d9 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Editor/Utility.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: acb4475c71a3fe947a81ced84ab89c6d 3 | folderAsset: yes 4 | timeCreated: 1508062761 5 | licenseType: Free 6 | DefaultImporter: 7 | externalObjects: {} 8 | userData: 9 | assetBundleName: 10 | assetBundleVariant: 11 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Editor/Utility/NaughtyEditorGUI.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6ff27ff7705d6064e935bb2159a1b453 3 | timeCreated: 1510926159 4 | licenseType: Free 5 | MonoImporter: 6 | externalObjects: {} 7 | serializedVersion: 2 8 | defaultReferences: [] 9 | executionOrder: 0 10 | icon: {instanceID: 0} 11 | userData: 12 | assetBundleName: 13 | assetBundleVariant: 14 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Editor/Utility/PropertyUtility.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 312eedcb79c7a5542b87c0b848e3e2fa 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Editor/Utility/ReflectionUtility.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1d86c581f02a55f458e36bf7e81e3084 3 | timeCreated: 1520258793 4 | licenseType: Free 5 | MonoImporter: 6 | externalObjects: {} 7 | serializedVersion: 2 8 | defaultReferences: [] 9 | executionOrder: 0 10 | icon: {instanceID: 0} 11 | userData: 12 | assetBundleName: 13 | assetBundleVariant: 14 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Test.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ce2bd76b5676a434bb8a84254f67f1dc 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Test/BoxGroupTest.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace NaughtyAttributes.Test 4 | { 5 | public class BoxGroupTest : MonoBehaviour 6 | { 7 | [BoxGroup("Integers")] 8 | public int int0; 9 | [BoxGroup("Integers")] 10 | public int int1; 11 | 12 | [BoxGroup("Floats")] 13 | public float float0; 14 | [BoxGroup("Floats")] 15 | public float float1; 16 | 17 | [BoxGroup("Sliders")] 18 | [MinMaxSlider(0, 1)] 19 | public Vector2 slider0; 20 | [BoxGroup("Sliders")] 21 | [MinMaxSlider(0, 1)] 22 | public Vector2 slider1; 23 | 24 | public string str0; 25 | public string str1; 26 | 27 | [BoxGroup] 28 | public Transform trans0; 29 | [BoxGroup] 30 | public Transform trans1; 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Test/BoxGroupTest.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3920f5ea384951b4990e4d9e8032d12e 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Test/ButtonTest.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace NaughtyAttributes.Test 4 | { 5 | public class ButtonTest : MonoBehaviour 6 | { 7 | public int myInt; 8 | 9 | [Button] 10 | private void IncrementMyInt() 11 | { 12 | myInt++; 13 | } 14 | 15 | [Button("Decrement My Int")] 16 | private void DecrementMyInt() 17 | { 18 | myInt--; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Test/ButtonTest.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b592f12a9f69ac3408f6f870762232c7 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Test/DisableIfTest.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace NaughtyAttributes.Test 4 | { 5 | public class DisableIfTest : MonoBehaviour 6 | { 7 | public bool disable1; 8 | public bool disable2; 9 | 10 | [DisableIf(EConditionOperator.And, "disable1", "disable2")] 11 | [ReorderableList] 12 | public int[] disableIfAll; 13 | 14 | [DisableIf(EConditionOperator.Or, "disable1", "disable2")] 15 | [ReorderableList] 16 | public int[] disableIfAny; 17 | 18 | public DisableIfNest1 nest1; 19 | } 20 | 21 | [System.Serializable] 22 | public class DisableIfNest1 23 | { 24 | public bool disable1; 25 | public bool disable2; 26 | public bool Disable1 { get { return disable1; } } 27 | public bool Disable2 { get { return disable2; } } 28 | 29 | [DisableIf(EConditionOperator.And, "Disable1", "Disable2")] 30 | [AllowNesting] // Because it's nested we need to explicitly allow nesting 31 | public int disableIfAll = 1; 32 | 33 | [DisableIf(EConditionOperator.Or, "Disable1", "Disable2")] 34 | [AllowNesting] // Because it's nested we need to explicitly allow nesting 35 | public int disableIfAny = 2; 36 | 37 | public DisableIfNest2 nest2; 38 | } 39 | 40 | [System.Serializable] 41 | public class DisableIfNest2 42 | { 43 | public bool disable1; 44 | public bool disable2; 45 | public bool GetDisable1() { return disable1; } 46 | public bool GetDisable2() { return disable2; } 47 | 48 | [DisableIf(EConditionOperator.And, "GetDisable1", "GetDisable2")] 49 | [MinMaxSlider(0.0f, 1.0f)] // AllowNesting attribute is not needed, because the field is already marked with a custom naughty property drawer 50 | public Vector2 enableIfAll = new Vector2(0.25f, 0.75f); 51 | 52 | [DisableIf(EConditionOperator.Or, "GetDisable1", "GetDisable2")] 53 | [MinMaxSlider(0.0f, 1.0f)] // AllowNesting attribute is not needed, because the field is already marked with a custom naughty property drawer 54 | public Vector2 enableIfAny = new Vector2(0.25f, 0.75f); 55 | } 56 | } 57 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Test/DisableIfTest.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0e48a088cb96287448c3be58932bfcb7 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Test/DropdownTest.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using System.Collections.Generic; 3 | 4 | namespace NaughtyAttributes.Test 5 | { 6 | public class DropdownTest : MonoBehaviour 7 | { 8 | [Dropdown("intValues")] 9 | public int intValue; 10 | 11 | #pragma warning disable 414 12 | private int[] intValues = new int[] { 1, 2, 3 }; 13 | #pragma warning restore 414 14 | 15 | public DropdownNest1 nest1; 16 | } 17 | 18 | [System.Serializable] 19 | public class DropdownNest1 20 | { 21 | [Dropdown("StringValues")] 22 | public string stringValue; 23 | 24 | private List StringValues { get { return new List() { "A", "B", "C" }; } } 25 | 26 | public DropdownNest2 nest2; 27 | } 28 | 29 | [System.Serializable] 30 | public class DropdownNest2 31 | { 32 | [Dropdown("GetVectorValues")] 33 | public Vector3 vectorValue; 34 | 35 | private DropdownList GetVectorValues() 36 | { 37 | return new DropdownList() 38 | { 39 | { "Right", Vector3.right }, 40 | { "Up", Vector3.up }, 41 | { "Forward", Vector3.forward } 42 | }; 43 | } 44 | } 45 | } 46 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Test/DropdownTest.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3855e37cd6b01194e8166573c7c4b37d 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Test/EnableIfTest.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace NaughtyAttributes.Test 4 | { 5 | public class EnableIfTest : MonoBehaviour 6 | { 7 | public bool enable1; 8 | public bool enable2; 9 | 10 | [EnableIf(EConditionOperator.And, "enable1", "enable2")] 11 | [ReorderableList] 12 | public int[] enableIfAll; 13 | 14 | [EnableIf(EConditionOperator.Or, "enable1", "enable2")] 15 | [ReorderableList] 16 | public int[] enableIfAny; 17 | 18 | public EnableIfNest1 nest1; 19 | } 20 | 21 | [System.Serializable] 22 | public class EnableIfNest1 23 | { 24 | public bool enable1; 25 | public bool enable2; 26 | public bool Enable1 { get { return enable1; } } 27 | public bool Enable2 { get { return enable2; } } 28 | 29 | [EnableIf(EConditionOperator.And, "Enable1", "Enable2")] 30 | [AllowNesting] // Because it's nested we need to explicitly allow nesting 31 | public int enableIfAll = 1; 32 | 33 | [EnableIf(EConditionOperator.Or, "Enable1", "Enable2")] 34 | [AllowNesting] // Because it's nested we need to explicitly allow nesting 35 | public int enableIfAny = 2; 36 | 37 | public EnableIfNest2 nest2; 38 | } 39 | 40 | [System.Serializable] 41 | public class EnableIfNest2 42 | { 43 | public bool enable1; 44 | public bool enable2; 45 | public bool GetEnable1() { return enable1; } 46 | public bool GetEnable2() { return enable2; } 47 | 48 | [EnableIf(EConditionOperator.And, "GetEnable1", "GetEnable2")] 49 | [MinMaxSlider(0.0f, 1.0f)] // AllowNesting attribute is not needed, because the field is already marked with a custom naughty property drawer 50 | public Vector2 enableIfAll = new Vector2(0.25f, 0.75f); 51 | 52 | [EnableIf(EConditionOperator.Or, "GetEnable1", "GetEnable2")] 53 | [MinMaxSlider(0.0f, 1.0f)] // AllowNesting attribute is not needed, because the field is already marked with a custom naughty property drawer 54 | public Vector2 enableIfAny = new Vector2(0.25f, 0.75f); 55 | } 56 | } 57 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Test/EnableIfTest.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: bed506d8be3a10f45bec4bf2237bec87 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Test/EnumFlagsTest.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace NaughtyAttributes.Test 4 | { 5 | public enum TestEnum 6 | { 7 | None = 0, 8 | B = 1 << 0, 9 | C = 1 << 1, 10 | D = 1 << 2, 11 | E = 1 << 3, 12 | F = 1 << 4, 13 | All = ~0 14 | } 15 | 16 | public class EnumFlagsTest : MonoBehaviour 17 | { 18 | [EnumFlags] 19 | public TestEnum flags0; 20 | 21 | public EnumFlagsNest1 nest1; 22 | } 23 | 24 | [System.Serializable] 25 | public class EnumFlagsNest1 26 | { 27 | [EnumFlags] 28 | public TestEnum flags1; 29 | 30 | public EnumFlagsNest2 nest2; 31 | } 32 | 33 | [System.Serializable] 34 | public class EnumFlagsNest2 35 | { 36 | [EnumFlags] 37 | public TestEnum flags2; 38 | } 39 | } 40 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Test/EnumFlagsTest.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7b7f6b84ce0d7674d8a386fde729279c 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Test/HideIfTest.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace NaughtyAttributes.Test 4 | { 5 | public class HideIfTest : MonoBehaviour 6 | { 7 | public bool hide1; 8 | public bool hide2; 9 | 10 | [HideIf(EConditionOperator.And, "hide1", "hide2")] 11 | [ReorderableList] 12 | public int[] hideIfAll; 13 | 14 | [HideIf(EConditionOperator.Or, "hide1", "hide2")] 15 | [ReorderableList] 16 | public int[] hideIfAny; 17 | 18 | public HideIfNest1 nest1; 19 | } 20 | 21 | [System.Serializable] 22 | public class HideIfNest1 23 | { 24 | public bool hide1; 25 | public bool hide2; 26 | public bool Hide1 { get { return hide1; } } 27 | public bool Hide2 { get { return hide2; } } 28 | 29 | [HideIf(EConditionOperator.And, "Hide1", "Hide2")] 30 | [AllowNesting] // Because it's nested we need to explicitly allow nesting 31 | public int hideIfAll; 32 | 33 | [HideIf(EConditionOperator.Or, "Hide1", "Hide2")] 34 | [AllowNesting] // Because it's nested we need to explicitly allow nesting 35 | public int hideIfAny; 36 | 37 | public HideIfNest2 nest2; 38 | } 39 | 40 | [System.Serializable] 41 | public class HideIfNest2 42 | { 43 | public bool hide1; 44 | public bool hide2; 45 | public bool GetHide1() { return hide1; } 46 | public bool GetHide2() { return hide2; } 47 | 48 | [HideIf(EConditionOperator.And, "GetHide1", "GetHide2")] 49 | [MinMaxSlider(0.0f, 1.0f)] // AllowNesting attribute is not needed, because the field is already marked with a custom naughty property drawer 50 | public Vector2 hideIfAll = new Vector2(0.25f, 0.75f); 51 | 52 | [HideIf(EConditionOperator.Or, "GetHide1", "GetHide2")] 53 | [MinMaxSlider(0.0f, 1.0f)] // AllowNesting attribute is not needed, because the field is already marked with a custom naughty property drawer 54 | public Vector2 hideIfAny = new Vector2(0.25f, 0.75f); 55 | } 56 | } 57 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Test/HideIfTest.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3cf166cb519e666419bb79b0c50c5ee1 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Test/HorizontalLineTest.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace NaughtyAttributes.Test 4 | { 5 | public class HorizontalLineTest : MonoBehaviour 6 | { 7 | [HorizontalLine(color: EColor.Black)] 8 | [Header("Black")] 9 | [HorizontalLine(color: EColor.Blue)] 10 | [Header("Blue")] 11 | [HorizontalLine(color: EColor.Gray)] 12 | [Header("Gray")] 13 | [HorizontalLine(color: EColor.Green)] 14 | [Header("Green")] 15 | [HorizontalLine(color: EColor.Indigo)] 16 | [Header("Indigo")] 17 | [HorizontalLine(color: EColor.Orange)] 18 | [Header("Orange")] 19 | [HorizontalLine(color: EColor.Pink)] 20 | [Header("Pink")] 21 | [HorizontalLine(color: EColor.Red)] 22 | [Header("Red")] 23 | [HorizontalLine(color: EColor.Violet)] 24 | [Header("Violet")] 25 | [HorizontalLine(color: EColor.White)] 26 | [Header("White")] 27 | [HorizontalLine(color: EColor.Yellow)] 28 | [Header("Yellow")] 29 | [HorizontalLine(10.0f)] 30 | [Header("Thick")] 31 | public int line0; 32 | 33 | public HorizontalLineNest1 nest1; 34 | } 35 | 36 | [System.Serializable] 37 | public class HorizontalLineNest1 38 | { 39 | [HorizontalLine] 40 | public int line1; 41 | 42 | public HorizontalLineNest2 nest2; 43 | } 44 | 45 | [System.Serializable] 46 | public class HorizontalLineNest2 47 | { 48 | [HorizontalLine] 49 | public int line2; 50 | } 51 | } 52 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Test/HorizontalLineTest.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5cc6d3f8d4a53374887b3d620a6972e3 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Test/InfoBoxTest.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace NaughtyAttributes.Test 4 | { 5 | public class InfoBoxTest : MonoBehaviour 6 | { 7 | [InfoBox("Normal", EInfoBoxType.Normal)] 8 | public int normal; 9 | 10 | public InfoBoxNest1 nest1; 11 | } 12 | 13 | [System.Serializable] 14 | public class InfoBoxNest1 15 | { 16 | [InfoBox("Warning", EInfoBoxType.Warning)] 17 | public int warning; 18 | 19 | public InfoBoxNest2 nest2; 20 | } 21 | 22 | [System.Serializable] 23 | public class InfoBoxNest2 24 | { 25 | [InfoBox("Error", EInfoBoxType.Error)] 26 | public int error; 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Test/InfoBoxTest.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0dcb08e489c17644e9eacaa1ec5fe781 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Test/InputAxisTest.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace NaughtyAttributes.Test 4 | { 5 | public class InputAxisTest : MonoBehaviour 6 | { 7 | [InputAxis] 8 | public string inputAxis0; 9 | 10 | public InputAxisNest1 nest1; 11 | 12 | [Button] 13 | private void LogInputAxis0() 14 | { 15 | Debug.Log(inputAxis0); 16 | } 17 | } 18 | 19 | [System.Serializable] 20 | public class InputAxisNest1 21 | { 22 | [InputAxis] 23 | public string inputAxis1; 24 | 25 | public InputAxisNest2 nest2; 26 | } 27 | 28 | [System.Serializable] 29 | public struct InputAxisNest2 30 | { 31 | [InputAxis] 32 | public string inputAxis2; 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Test/InputAxisTest.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e0cc8a31c22090847b75538c0ed2d2fc 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Test/LabelTest.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace NaughtyAttributes.Test 4 | { 5 | public class LabelTest : MonoBehaviour 6 | { 7 | [Label("Label 0")] 8 | public int int0; 9 | 10 | public LabelNest1 nest1; 11 | } 12 | 13 | [System.Serializable] 14 | public class LabelNest1 15 | { 16 | [Label("Label 1")] 17 | [AllowNesting] // Because it's nested we need to explicitly allow nesting 18 | public int int1; 19 | 20 | public LabelNest2 nest2; 21 | } 22 | 23 | [System.Serializable] 24 | public class LabelNest2 25 | { 26 | [Label("Label 2")] 27 | [MinMaxSlider(0.0f, 1.0f)] // AllowNesting attribute is not needed, because the field is already marked with a custom naughty property drawer 28 | public Vector2 vector2; 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Test/LabelTest.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7488af014527ebf42af5c4fc4d5f4f5b 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Test/MinMaxSliderTest.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace NaughtyAttributes.Test 4 | { 5 | public class MinMaxSliderTest : MonoBehaviour 6 | { 7 | [MinMaxSlider(0.0f, 1.0f)] 8 | public Vector2 minMaxSlider0 = new Vector2(0.25f, 0.75f); 9 | 10 | public MinMaxSliderNest1 nest1; 11 | } 12 | 13 | [System.Serializable] 14 | public class MinMaxSliderNest1 15 | { 16 | [MinMaxSlider(0.0f, 1.0f)] 17 | public Vector2 minMaxSlider1 = new Vector2(0.25f, 0.75f); 18 | 19 | public MinMaxSliderNest2 nest2; 20 | } 21 | 22 | [System.Serializable] 23 | public class MinMaxSliderNest2 24 | { 25 | [MinMaxSlider(0.0f, 1.0f)] 26 | public Vector2 minMaxSlider2 = new Vector2(0.25f, 0.75f); 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Test/MinMaxSliderTest.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: fd67fbde6acdd6a44944f12e507067c5 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Test/MinMaxValueTest.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace NaughtyAttributes.Test 4 | { 5 | public class MinMaxValueTest : MonoBehaviour 6 | { 7 | [MinValue(0)] 8 | public int min0; 9 | 10 | [MaxValue(0)] 11 | public int max0; 12 | 13 | [MinValue(0), MaxValue(1)] 14 | public float range01; 15 | 16 | public MinMaxValueNest1 nest1; 17 | } 18 | 19 | [System.Serializable] 20 | public class MinMaxValueNest1 21 | { 22 | [MinValue(0)] 23 | [AllowNesting] // Because it's nested we need to explicitly allow nesting 24 | public int min0; 25 | 26 | [MaxValue(0)] 27 | [AllowNesting] // Because it's nested we need to explicitly allow nesting 28 | public int max0; 29 | 30 | [MinValue(0), MaxValue(1)] 31 | [AllowNesting] // Because it's nested we need to explicitly allow nesting 32 | public float range01; 33 | 34 | public MinMaxValueNest2 nest2; 35 | } 36 | 37 | [System.Serializable] 38 | public class MinMaxValueNest2 39 | { 40 | [MinValue(0)] 41 | [AllowNesting] // Because it's nested we need to explicitly allow nesting 42 | public int min0; 43 | 44 | [MaxValue(0)] 45 | [AllowNesting] // Because it's nested we need to explicitly allow nesting 46 | public int max0; 47 | 48 | [MinValue(0), MaxValue(1)] 49 | [AllowNesting] // Because it's nested we need to explicitly allow nesting 50 | public float range01; 51 | } 52 | } 53 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Test/MinMaxValueTest.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 450a05787c54e6b4fa88ffe223bcee87 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Test/NaughtyAttributes.Test.asmdef: -------------------------------------------------------------------------------- 1 | { 2 | "name": "NaughtyAttributes.Test", 3 | "references": [ 4 | "NaughtyAttributes.Core" 5 | ], 6 | "optionalUnityReferences": [], 7 | "includePlatforms": [], 8 | "excludePlatforms": [], 9 | "allowUnsafeCode": false, 10 | "overrideReferences": false, 11 | "precompiledReferences": [], 12 | "autoReferenced": true, 13 | "defineConstraints": [] 14 | } -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Test/NaughtyAttributes.Test.asmdef.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: df1dea26b8503004d92d621e88aa9421 3 | AssemblyDefinitionImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Test/OnValueChangedTest.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace NaughtyAttributes.Test 4 | { 5 | public class OnValueChangedTest : MonoBehaviour 6 | { 7 | [OnValueChanged("OnValueChangedMethod1")] 8 | [OnValueChanged("OnValueChangedMethod2")] 9 | public int int0; 10 | 11 | private void OnValueChangedMethod1(int oldValue, int newValue) 12 | { 13 | Debug.LogFormat("First - old: {0}, new: {1}, int0: {2}", oldValue, newValue, int0); 14 | } 15 | 16 | private void OnValueChangedMethod2(int oldValue, int newValue) 17 | { 18 | Debug.LogFormat("Second - old: {0}, new: {1}, int0: {2}", oldValue, newValue, int0); 19 | } 20 | 21 | public OnValueChangedNest1 nest1; 22 | } 23 | 24 | [System.Serializable] 25 | public class OnValueChangedNest1 26 | { 27 | [OnValueChanged("OnValueChangedMethod")] 28 | [AllowNesting] 29 | public int int1; 30 | 31 | private void OnValueChangedMethod(int oldValue, int newValue) 32 | { 33 | Debug.LogFormat("old: {0}, new: {1}, int1: {2}", oldValue, newValue, int1); 34 | } 35 | 36 | public OnValueChangedNest2 nest2; 37 | } 38 | 39 | [System.Serializable] 40 | public class OnValueChangedNest2 41 | { 42 | [OnValueChanged("OnValueChangedMethod")] 43 | [AllowNesting] 44 | public int int2; 45 | 46 | private void OnValueChangedMethod(int oldValue, int newValue) 47 | { 48 | Debug.LogFormat("old: {0}, new: {1}, int2: {2}", oldValue, newValue, int2); 49 | } 50 | } 51 | } 52 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Test/OnValueChangedTest.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ff1df679e5b32f64bb106752c63933fa 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Test/ProgressBarTest.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace NaughtyAttributes.Test 4 | { 5 | public class ProgressBarTest : MonoBehaviour 6 | { 7 | [ProgressBar("Health", 100, EColor.Red)] 8 | public float health = 50.0f; 9 | 10 | public ProgressBarNest1 nest1; 11 | } 12 | 13 | [System.Serializable] 14 | public class ProgressBarNest1 15 | { 16 | [ProgressBar("Mana", 100, EColor.Blue)] 17 | public float mana = 25.0f; 18 | 19 | public ProgressBarNest2 nest2; 20 | } 21 | 22 | [System.Serializable] 23 | public class ProgressBarNest2 24 | { 25 | [ProgressBar("Stamina", 100, EColor.Green)] 26 | public float mana = 75.0f; 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Test/ProgressBarTest.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 96ca4c27fc649764b9d1625f1740cb9e 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Test/ReadOnlyTest.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace NaughtyAttributes.Test 4 | { 5 | public class ReadOnlyTest : MonoBehaviour 6 | { 7 | [ReadOnly] 8 | public int readOnlyInt = 5; 9 | 10 | public ReadOnlyNest1 nest1; 11 | } 12 | 13 | [System.Serializable] 14 | public class ReadOnlyNest1 15 | { 16 | [ReadOnly] 17 | public float readOnlyFloat = 3.14f; 18 | 19 | public ReadOnlyNest2 nest2; 20 | } 21 | 22 | [System.Serializable] 23 | public struct ReadOnlyNest2 24 | { 25 | [ReadOnly] 26 | public string readOnlyString; 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Test/ReadOnlyTest.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5443d37a05e188846bda9b05b067184e 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Test/ReorderableListTest.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using UnityEngine; 3 | 4 | namespace NaughtyAttributes.Test 5 | { 6 | public class ReorderableListTest : MonoBehaviour 7 | { 8 | [ReorderableList] 9 | public int[] intArray; 10 | 11 | [ReorderableList] 12 | public List vectorList; 13 | 14 | [ReorderableList] 15 | public List structList; 16 | } 17 | 18 | [System.Serializable] 19 | public struct SomeStruct 20 | { 21 | public int Int; 22 | public float Float; 23 | public Vector3 Vector; 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Test/ReorderableListTest.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c93fde7cd79390148ac576c3a159a77b 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Test/RequiredTest.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace NaughtyAttributes.Test 4 | { 5 | public class RequiredTest : MonoBehaviour 6 | { 7 | [Required] 8 | public Transform trans0; 9 | 10 | public RequiredNest1 nest1; 11 | } 12 | 13 | [System.Serializable] 14 | public class RequiredNest1 15 | { 16 | [Required] 17 | [AllowNesting] // Because it's nested we need to explicitly allow nesting 18 | public Transform trans1; 19 | 20 | public RequiredNest2 nest2; 21 | } 22 | 23 | [System.Serializable] 24 | public class RequiredNest2 25 | { 26 | [Required("trans2 is invalid custom message - hohoho")] 27 | [AllowNesting] // Because it's nested we need to explicitly allow nesting 28 | public Transform trans2; 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Test/RequiredTest.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9c8c10b2234650d42b2a8efad6b413db 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Test/ResizableTextAreaTest.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace NaughtyAttributes.Test 4 | { 5 | public class ResizableTextAreaTest : MonoBehaviour 6 | { 7 | [ResizableTextArea] 8 | public string text0; 9 | 10 | public ResizableTextAreaNest1 nest1; 11 | } 12 | 13 | [System.Serializable] 14 | public class ResizableTextAreaNest1 15 | { 16 | [ResizableTextArea] 17 | public string text1; 18 | 19 | public ResizableTextAreaNest2 nest2; 20 | } 21 | 22 | [System.Serializable] 23 | public class ResizableTextAreaNest2 24 | { 25 | [ResizableTextArea] 26 | public string text2; 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Test/ResizableTextAreaTest.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: fb4f4bb2e3e063340a24f4bb24528bb5 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Test/SceneTest.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace NaughtyAttributes.Test 4 | { 5 | public class SceneTest : MonoBehaviour 6 | { 7 | [Scene] 8 | public string scene0; 9 | 10 | public SceneNest1 nest1; 11 | } 12 | 13 | [System.Serializable] 14 | public class SceneNest1 15 | { 16 | [Scene] 17 | public string scene1; 18 | 19 | public SceneNest2 nest2; 20 | } 21 | 22 | [System.Serializable] 23 | public struct SceneNest2 24 | { 25 | [Scene] 26 | public string scene2; 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Test/SceneTest.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 281a85803caf74a459439020a0840fa4 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Test/ShowAssetPreviewTest.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace NaughtyAttributes.Test 4 | { 5 | public class ShowAssetPreviewTest : MonoBehaviour 6 | { 7 | [ShowAssetPreview] 8 | public Sprite sprite0; 9 | 10 | [ShowAssetPreview(96, 96)] 11 | public GameObject prefab0; 12 | 13 | public ShowAssetPreviewNest1 nest1; 14 | } 15 | 16 | [System.Serializable] 17 | public class ShowAssetPreviewNest1 18 | { 19 | [ShowAssetPreview] 20 | public Sprite sprite1; 21 | 22 | [ShowAssetPreview(96, 96)] 23 | public GameObject prefab1; 24 | 25 | public ShowAssetPreviewNest2 nest2; 26 | } 27 | 28 | [System.Serializable] 29 | public class ShowAssetPreviewNest2 30 | { 31 | [ShowAssetPreview] 32 | public Sprite sprite2; 33 | 34 | [ShowAssetPreview(96, 96)] 35 | public GameObject prefab2; 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Test/ShowAssetPreviewTest.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 705c14aa9ecaa274289972381f471367 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Test/ShowIfTest.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace NaughtyAttributes.Test 4 | { 5 | public class ShowIfTest : MonoBehaviour 6 | { 7 | public bool show1; 8 | public bool show2; 9 | 10 | [ShowIf(EConditionOperator.And, "show1", "show2")] 11 | [ReorderableList] 12 | public int[] showIfAll; 13 | 14 | [ShowIf(EConditionOperator.Or, "show1", "show2")] 15 | [ReorderableList] 16 | public int[] showIfAny; 17 | 18 | public ShowIfNest1 nest1; 19 | } 20 | 21 | [System.Serializable] 22 | public class ShowIfNest1 23 | { 24 | public bool show1; 25 | public bool show2; 26 | public bool Show1 { get { return show1; } } 27 | public bool Show2 { get { return show2; } } 28 | 29 | [ShowIf(EConditionOperator.And, "Show1", "Show2")] 30 | [AllowNesting] // Because it's nested we need to explicitly allow nesting 31 | public int showIfAll; 32 | 33 | [ShowIf(EConditionOperator.Or, "Show1", "Show2")] 34 | [AllowNesting] // Because it's nested we need to explicitly allow nesting 35 | public int showIfAny; 36 | 37 | public ShowIfNest2 nest2; 38 | } 39 | 40 | [System.Serializable] 41 | public class ShowIfNest2 42 | { 43 | public bool show1; 44 | public bool show2; 45 | public bool GetShow1() { return show1; } 46 | public bool GetShow2() { return show2; } 47 | 48 | [ShowIf(EConditionOperator.And, "GetShow1", "GetShow2")] 49 | [MinMaxSlider(0.0f, 1.0f)] // AllowNesting attribute is not needed, because the field is already marked with a custom naughty property drawer 50 | public Vector2 showIfAll = new Vector2(0.25f, 0.75f); 51 | 52 | [ShowIf(EConditionOperator.Or, "GetShow1", "GetShow2")] 53 | [MinMaxSlider(0.0f, 1.0f)] // AllowNesting attribute is not needed, because the field is already marked with a custom naughty property drawer 54 | public Vector2 showIfAny = new Vector2(0.25f, 0.75f); 55 | } 56 | } 57 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Test/ShowIfTest.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4fdbfcfbf5b056a4bac491fe21569572 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Test/ShowNativePropertyTest.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace NaughtyAttributes.Test 4 | { 5 | public class ShowNativePropertyTest : MonoBehaviour 6 | { 7 | [ShowNativeProperty] 8 | private Transform Transform 9 | { 10 | get 11 | { 12 | return transform; 13 | } 14 | } 15 | 16 | [ShowNativeProperty] 17 | private Transform ParentTransform 18 | { 19 | get 20 | { 21 | return transform.parent; 22 | } 23 | } 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Test/ShowNativePropertyTest.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b5a73795d25dd334e90a5a347c6079d9 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Test/ShowNonSerializedFieldTest.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace NaughtyAttributes.Test 4 | { 5 | public class ShowNonSerializedFieldTest : MonoBehaviour 6 | { 7 | #pragma warning disable 414 8 | [ShowNonSerializedField] 9 | private int myInt = 10; 10 | 11 | [ShowNonSerializedField] 12 | private const float PI = 3.14159f; 13 | 14 | [ShowNonSerializedField] 15 | private static readonly Vector3 CONST_VECTOR = Vector3.one; 16 | #pragma warning restore 414 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Test/ShowNonSerializedFieldTest.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 913d67a695253f744bdc776625b9b948 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Test/TagTest.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace NaughtyAttributes.Test 4 | { 5 | public class TagTest : MonoBehaviour 6 | { 7 | [Tag] 8 | public string tag0; 9 | 10 | public TagNest1 nest1; 11 | 12 | [Button] 13 | private void LogTag0() 14 | { 15 | Debug.Log(tag0); 16 | } 17 | } 18 | 19 | [System.Serializable] 20 | public class TagNest1 21 | { 22 | [Tag] 23 | public string tag1; 24 | 25 | public TagNest2 nest2; 26 | } 27 | 28 | [System.Serializable] 29 | public struct TagNest2 30 | { 31 | [Tag] 32 | public string tag2; 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Test/TagTest.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8bcc0d5613b48fb43bd36c9d37e99900 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Test/ValidateInputTest.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace NaughtyAttributes.Test 4 | { 5 | public class ValidateInputTest : MonoBehaviour 6 | { 7 | [ValidateInput("NotZero0", "int0 must not be zero")] 8 | public int int0; 9 | 10 | private bool NotZero0(int value) 11 | { 12 | return value != 0; 13 | } 14 | 15 | public ValidateInputNest1 nest1; 16 | } 17 | 18 | [System.Serializable] 19 | public class ValidateInputNest1 20 | { 21 | [ValidateInput("NotZero1")] 22 | [AllowNesting] // Because it's nested we need to explicitly allow nesting 23 | public int int1; 24 | 25 | private bool NotZero1(int value) 26 | { 27 | return value != 0; 28 | } 29 | 30 | public ValidateInputNest2 nest2; 31 | } 32 | 33 | [System.Serializable] 34 | public class ValidateInputNest2 35 | { 36 | [ValidateInput("NotZero2")] 37 | [AllowNesting] // Because it's nested we need to explicitly allow nesting 38 | public int int2; 39 | 40 | private bool NotZero2(int value) 41 | { 42 | return value != 0; 43 | } 44 | } 45 | } 46 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Test/ValidateInputTest.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 94adafcfe59aa344c9b5596b2cc6ecd0 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Test/_NaughtyComponent.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using UnityEngine; 3 | 4 | namespace NaughtyAttributes.Test 5 | { 6 | public class _NaughtyComponent : MonoBehaviour 7 | { 8 | public bool flag0 = true; 9 | public bool flag1 = true; 10 | 11 | [BoxGroup("Sliders")] 12 | [MinMaxSlider(0, 1)] 13 | [ShowIf("flag0")] 14 | public Vector2 slider0; 15 | 16 | [BoxGroup("Sliders")] 17 | [MinMaxSlider(0, 1)] 18 | [ShowIf("flag1")] 19 | public Vector2 slider1; 20 | } 21 | 22 | //[System.Serializable] 23 | //public class MyClass 24 | //{ 25 | // public string level1; 26 | 27 | // public MyStruct myStruct; 28 | //} 29 | 30 | //[System.Serializable] 31 | //public struct MyStruct 32 | //{ 33 | // [ResizableTextArea] 34 | // public string level2; 35 | //} 36 | } 37 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Test/_NaughtyComponent.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9c928ea15ae74a44089beb2e534c1a35 3 | timeCreated: 1507996629 4 | licenseType: Free 5 | MonoImporter: 6 | externalObjects: {} 7 | serializedVersion: 2 8 | defaultReferences: [] 9 | executionOrder: 0 10 | icon: {instanceID: 0} 11 | userData: 12 | assetBundleName: 13 | assetBundleVariant: 14 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Test/_NaughtyScriptableObject.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace NaughtyAttributes.Test 4 | { 5 | //[CreateAssetMenu(fileName = "NaughtyScriptableObject", menuName = "NaughtyAttributes/_NaughtyScriptableObject")] 6 | public class _NaughtyScriptableObject : ScriptableObject 7 | { 8 | public int myInt; 9 | 10 | [Button] 11 | private void IncrementMyInt() 12 | { 13 | myInt++; 14 | } 15 | 16 | [Button("Decrement My Int")] 17 | private void DecrementMyInt() 18 | { 19 | myInt--; 20 | } 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Plugins/NaughtyAttributes/Scripts/Test/_NaughtyScriptableObject.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 753bdb918c6038142acddbd7aae6958f 3 | timeCreated: 1518639587 4 | licenseType: Free 5 | MonoImporter: 6 | externalObjects: {} 7 | serializedVersion: 2 8 | defaultReferences: [] 9 | executionOrder: 0 10 | icon: {instanceID: 0} 11 | userData: 12 | assetBundleName: 13 | assetBundleVariant: 14 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Scenes.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8ea43f1d182d77749a78c15e208a1d5d 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Scenes/DecalExample.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 20f5997aa110ba347a29b2d1050732a7 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Scenes/SampleScene.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9fc0d4010bbf28b4594072e72b8655ab 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /BigHopsTools/Assets/Scenes/SlowMoExample.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9e126181a797951418c74f0b6f67118f 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /BigHopsTools/Logs/Packages-Update.log: -------------------------------------------------------------------------------- 1 | 2 | === Sat Apr 11 22:16:44 2020 3 | 4 | Packages were changed. 5 | Update Mode: mergeDefaultDependencies 6 | 7 | The following packages were added: 8 | com.unity.textmeshpro@2.0.1 9 | com.unity.collab-proxy@1.2.16 10 | com.unity.test-framework@1.1.3 11 | com.unity.timeline@1.2.6 12 | com.unity.ide.vscode@1.1.3 13 | com.unity.ide.rider@1.1.4 14 | com.unity.ugui@1.0.0 15 | com.unity.modules.ai@1.0.0 16 | com.unity.modules.animation@1.0.0 17 | com.unity.modules.androidjni@1.0.0 18 | com.unity.modules.assetbundle@1.0.0 19 | com.unity.modules.audio@1.0.0 20 | com.unity.modules.cloth@1.0.0 21 | com.unity.modules.director@1.0.0 22 | com.unity.modules.imageconversion@1.0.0 23 | com.unity.modules.imgui@1.0.0 24 | com.unity.modules.jsonserialize@1.0.0 25 | com.unity.modules.particlesystem@1.0.0 26 | com.unity.modules.physics@1.0.0 27 | com.unity.modules.physics2d@1.0.0 28 | com.unity.modules.screencapture@1.0.0 29 | com.unity.modules.terrain@1.0.0 30 | com.unity.modules.terrainphysics@1.0.0 31 | com.unity.modules.tilemap@1.0.0 32 | com.unity.modules.ui@1.0.0 33 | com.unity.modules.uielements@1.0.0 34 | com.unity.modules.umbra@1.0.0 35 | com.unity.modules.unityanalytics@1.0.0 36 | com.unity.modules.unitywebrequest@1.0.0 37 | com.unity.modules.unitywebrequestassetbundle@1.0.0 38 | com.unity.modules.unitywebrequestaudio@1.0.0 39 | com.unity.modules.unitywebrequesttexture@1.0.0 40 | com.unity.modules.unitywebrequestwww@1.0.0 41 | com.unity.modules.vehicles@1.0.0 42 | com.unity.modules.video@1.0.0 43 | com.unity.modules.vr@1.0.0 44 | com.unity.modules.wind@1.0.0 45 | com.unity.modules.xr@1.0.0 46 | -------------------------------------------------------------------------------- /BigHopsTools/Packages/manifest.json: -------------------------------------------------------------------------------- 1 | { 2 | "dependencies": { 3 | "com.unity.collab-proxy": "1.2.16", 4 | "com.unity.ide.rider": "1.1.4", 5 | "com.unity.ide.vscode": "1.1.3", 6 | "com.unity.test-framework": "1.1.3", 7 | "com.unity.textmeshpro": "2.0.1", 8 | "com.unity.timeline": "1.2.6", 9 | "com.unity.ugui": "1.0.0", 10 | "com.unity.modules.ai": "1.0.0", 11 | "com.unity.modules.androidjni": "1.0.0", 12 | "com.unity.modules.animation": "1.0.0", 13 | "com.unity.modules.assetbundle": "1.0.0", 14 | "com.unity.modules.audio": "1.0.0", 15 | "com.unity.modules.cloth": "1.0.0", 16 | "com.unity.modules.director": "1.0.0", 17 | "com.unity.modules.imageconversion": "1.0.0", 18 | "com.unity.modules.imgui": "1.0.0", 19 | "com.unity.modules.jsonserialize": "1.0.0", 20 | "com.unity.modules.particlesystem": "1.0.0", 21 | "com.unity.modules.physics": "1.0.0", 22 | "com.unity.modules.physics2d": "1.0.0", 23 | "com.unity.modules.screencapture": "1.0.0", 24 | "com.unity.modules.terrain": "1.0.0", 25 | "com.unity.modules.terrainphysics": "1.0.0", 26 | "com.unity.modules.tilemap": "1.0.0", 27 | "com.unity.modules.ui": "1.0.0", 28 | "com.unity.modules.uielements": "1.0.0", 29 | "com.unity.modules.umbra": "1.0.0", 30 | "com.unity.modules.unityanalytics": "1.0.0", 31 | "com.unity.modules.unitywebrequest": "1.0.0", 32 | "com.unity.modules.unitywebrequestassetbundle": "1.0.0", 33 | "com.unity.modules.unitywebrequestaudio": "1.0.0", 34 | "com.unity.modules.unitywebrequesttexture": "1.0.0", 35 | "com.unity.modules.unitywebrequestwww": "1.0.0", 36 | "com.unity.modules.vehicles": "1.0.0", 37 | "com.unity.modules.video": "1.0.0", 38 | "com.unity.modules.vr": "1.0.0", 39 | "com.unity.modules.wind": "1.0.0", 40 | "com.unity.modules.xr": "1.0.0" 41 | } 42 | } 43 | -------------------------------------------------------------------------------- /BigHopsTools/ProjectSettings/AudioManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!11 &1 4 | AudioManager: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 2 7 | m_Volume: 1 8 | Rolloff Scale: 1 9 | Doppler Factor: 1 10 | Default Speaker Mode: 2 11 | m_SampleRate: 0 12 | m_DSPBufferSize: 1024 13 | m_VirtualVoiceCount: 512 14 | m_RealVoiceCount: 32 15 | m_SpatializerPlugin: 16 | m_AmbisonicDecoderPlugin: 17 | m_DisableAudio: 0 18 | m_VirtualizeEffects: 1 19 | m_RequestedDSPBufferSize: 1024 20 | -------------------------------------------------------------------------------- /BigHopsTools/ProjectSettings/ClusterInputManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!236 &1 4 | ClusterInputManager: 5 | m_ObjectHideFlags: 0 6 | m_Inputs: [] 7 | -------------------------------------------------------------------------------- /BigHopsTools/ProjectSettings/DynamicsManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!55 &1 4 | PhysicsManager: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 11 7 | m_Gravity: {x: 0, y: -9.81, z: 0} 8 | m_DefaultMaterial: {fileID: 0} 9 | m_BounceThreshold: 2 10 | m_SleepThreshold: 0.005 11 | m_DefaultContactOffset: 0.01 12 | m_DefaultSolverIterations: 6 13 | m_DefaultSolverVelocityIterations: 1 14 | m_QueriesHitBackfaces: 0 15 | m_QueriesHitTriggers: 1 16 | m_EnableAdaptiveForce: 0 17 | m_ClothInterCollisionDistance: 0 18 | m_ClothInterCollisionStiffness: 0 19 | m_ContactsGeneration: 1 20 | m_LayerCollisionMatrix: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 21 | m_AutoSimulation: 1 22 | m_AutoSyncTransforms: 0 23 | m_ReuseCollisionCallbacks: 1 24 | m_ClothInterCollisionSettingsToggle: 0 25 | m_ContactPairsMode: 0 26 | m_BroadphaseType: 0 27 | m_WorldBounds: 28 | m_Center: {x: 0, y: 0, z: 0} 29 | m_Extent: {x: 250, y: 250, z: 250} 30 | m_WorldSubdivisions: 8 31 | m_FrictionType: 0 32 | m_EnableEnhancedDeterminism: 0 33 | m_EnableUnifiedHeightmaps: 1 34 | m_DefaultMaxAngluarSpeed: 7 35 | -------------------------------------------------------------------------------- /BigHopsTools/ProjectSettings/EditorBuildSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!1045 &1 4 | EditorBuildSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 2 7 | m_Scenes: 8 | - enabled: 1 9 | path: Assets/Scenes/SampleScene.unity 10 | guid: 9fc0d4010bbf28b4594072e72b8655ab 11 | m_configObjects: {} 12 | -------------------------------------------------------------------------------- /BigHopsTools/ProjectSettings/EditorSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!159 &1 4 | EditorSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 9 7 | m_ExternalVersionControlSupport: Visible Meta Files 8 | m_SerializationMode: 2 9 | m_LineEndingsForNewScripts: 2 10 | m_DefaultBehaviorMode: 0 11 | m_PrefabRegularEnvironment: {fileID: 0} 12 | m_PrefabUIEnvironment: {fileID: 0} 13 | m_SpritePackerMode: 0 14 | m_SpritePackerPaddingPower: 1 15 | m_EtcTextureCompressorBehavior: 1 16 | m_EtcTextureFastCompressor: 1 17 | m_EtcTextureNormalCompressor: 2 18 | m_EtcTextureBestCompressor: 4 19 | m_ProjectGenerationIncludedExtensions: txt;xml;fnt;cd;asmdef;rsp;asmref 20 | m_ProjectGenerationRootNamespace: 21 | m_CollabEditorSettings: 22 | inProgressEnabled: 1 23 | m_EnableTextureStreamingInEditMode: 1 24 | m_EnableTextureStreamingInPlayMode: 1 25 | m_AsyncShaderCompilation: 1 26 | m_EnterPlayModeOptionsEnabled: 0 27 | m_EnterPlayModeOptions: 3 28 | m_ShowLightmapResolutionOverlay: 1 29 | m_UseLegacyProbeSampleCount: 1 30 | m_AssetPipelineMode: 1 31 | m_CacheServerMode: 0 32 | m_CacheServerEndpoint: 33 | m_CacheServerNamespacePrefix: default 34 | m_CacheServerEnableDownload: 1 35 | m_CacheServerEnableUpload: 1 36 | -------------------------------------------------------------------------------- /BigHopsTools/ProjectSettings/NavMeshAreas.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!126 &1 4 | NavMeshProjectSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 2 7 | areas: 8 | - name: Walkable 9 | cost: 1 10 | - name: Not Walkable 11 | cost: 1 12 | - name: Jump 13 | cost: 2 14 | - name: 15 | cost: 1 16 | - name: 17 | cost: 1 18 | - name: 19 | cost: 1 20 | - name: 21 | cost: 1 22 | - name: 23 | cost: 1 24 | - name: 25 | cost: 1 26 | - name: 27 | cost: 1 28 | - name: 29 | cost: 1 30 | - name: 31 | cost: 1 32 | - name: 33 | cost: 1 34 | - name: 35 | cost: 1 36 | - name: 37 | cost: 1 38 | - name: 39 | cost: 1 40 | - name: 41 | cost: 1 42 | - name: 43 | cost: 1 44 | - name: 45 | cost: 1 46 | - name: 47 | cost: 1 48 | - name: 49 | cost: 1 50 | - name: 51 | cost: 1 52 | - name: 53 | cost: 1 54 | - name: 55 | cost: 1 56 | - name: 57 | cost: 1 58 | - name: 59 | cost: 1 60 | - name: 61 | cost: 1 62 | - name: 63 | cost: 1 64 | - name: 65 | cost: 1 66 | - name: 67 | cost: 1 68 | - name: 69 | cost: 1 70 | - name: 71 | cost: 1 72 | m_LastAgentTypeID: -887442657 73 | m_Settings: 74 | - serializedVersion: 2 75 | agentTypeID: 0 76 | agentRadius: 0.5 77 | agentHeight: 2 78 | agentSlope: 45 79 | agentClimb: 0.75 80 | ledgeDropHeight: 0 81 | maxJumpAcrossDistance: 0 82 | minRegionArea: 2 83 | manualCellSize: 0 84 | cellSize: 0.16666667 85 | manualTileSize: 0 86 | tileSize: 256 87 | accuratePlacement: 0 88 | debug: 89 | m_Flags: 0 90 | m_SettingNames: 91 | - Humanoid 92 | -------------------------------------------------------------------------------- /BigHopsTools/ProjectSettings/PresetManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!1386491679 &1 4 | PresetManager: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 2 7 | m_DefaultPresets: {} 8 | -------------------------------------------------------------------------------- /BigHopsTools/ProjectSettings/ProjectVersion.txt: -------------------------------------------------------------------------------- 1 | m_EditorVersion: 2019.3.0f3 2 | m_EditorVersionWithRevision: 2019.3.0f3 (6c9e2bfd6f81) 3 | -------------------------------------------------------------------------------- /BigHopsTools/ProjectSettings/TagManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!78 &1 4 | TagManager: 5 | serializedVersion: 2 6 | tags: [] 7 | layers: 8 | - Default 9 | - TransparentFX 10 | - Ignore Raycast 11 | - 12 | - Water 13 | - UI 14 | - 15 | - 16 | - 17 | - 18 | - 19 | - 20 | - 21 | - 22 | - 23 | - 24 | - 25 | - 26 | - 27 | - 28 | - 29 | - 30 | - 31 | - 32 | - 33 | - 34 | - 35 | - 36 | - 37 | - 38 | - 39 | - 40 | m_SortingLayers: 41 | - name: Default 42 | uniqueID: 0 43 | locked: 0 44 | -------------------------------------------------------------------------------- /BigHopsTools/ProjectSettings/TimeManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!5 &1 4 | TimeManager: 5 | m_ObjectHideFlags: 0 6 | Fixed Timestep: 0.02 7 | Maximum Allowed Timestep: 0.33333334 8 | m_TimeScale: 1 9 | Maximum Particle Timestep: 0.03 10 | -------------------------------------------------------------------------------- /BigHopsTools/ProjectSettings/UnityConnectSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!310 &1 4 | UnityConnectSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 1 7 | m_Enabled: 0 8 | m_TestMode: 0 9 | m_EventOldUrl: https://api.uca.cloud.unity3d.com/v1/events 10 | m_EventUrl: https://cdp.cloud.unity3d.com/v1/events 11 | m_ConfigUrl: https://config.uca.cloud.unity3d.com 12 | m_TestInitMode: 0 13 | CrashReportingSettings: 14 | m_EventUrl: https://perf-events.cloud.unity3d.com 15 | m_Enabled: 0 16 | m_LogBufferSize: 10 17 | m_CaptureEditorExceptions: 1 18 | UnityPurchasingSettings: 19 | m_Enabled: 0 20 | m_TestMode: 0 21 | UnityAnalyticsSettings: 22 | m_Enabled: 0 23 | m_TestMode: 0 24 | m_InitializeOnStartup: 1 25 | UnityAdsSettings: 26 | m_Enabled: 0 27 | m_InitializeOnStartup: 1 28 | m_TestMode: 0 29 | m_IosGameId: 30 | m_AndroidGameId: 31 | m_GameIds: {} 32 | m_GameId: 33 | PerformanceReportingSettings: 34 | m_Enabled: 0 35 | -------------------------------------------------------------------------------- /BigHopsTools/ProjectSettings/VFXManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!937362698 &1 4 | VFXManager: 5 | m_ObjectHideFlags: 0 6 | m_IndirectShader: {fileID: 0} 7 | m_CopyBufferShader: {fileID: 0} 8 | m_SortShader: {fileID: 0} 9 | m_StripUpdateShader: {fileID: 0} 10 | m_RenderPipeSettingsPath: 11 | m_FixedTimeStep: 0.016666668 12 | m_MaxDeltaTime: 0.05 13 | -------------------------------------------------------------------------------- /BigHopsTools/ProjectSettings/XRSettings.asset: -------------------------------------------------------------------------------- 1 | { 2 | "m_SettingKeys": [ 3 | "VR Device Disabled", 4 | "VR Device User Alert" 5 | ], 6 | "m_SettingValues": [ 7 | "False", 8 | "False" 9 | ] 10 | } -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2020 Chris Wade 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # BigHopsTools 2 | Slightly cleaned up, standalone tools I'm using for project Big Hops 3 | 4 | IMPORTANT: 5 | - All files under Assets/Plugins/Luckshot fall under the included LICENSE file: 6 | - Each folder can be taken alone, but likely has dependencies on stuff in the Utils folder 7 | - Many scripts have dependencies on NaughtyAttributes which also falls under MIT license (https://github.com/dbrizov/NaughtyAttributes/blob/master/LICENSE) 8 | - Some scripts (like Decal and PathBase were inspired by existing tools, those references should be noted in the related scripts) --------------------------------------------------------------------------------