The response has been limited to 50k tokens of the smallest files in the repo. You can remove this limitation by removing the max tokens filter.
├── .github
    ├── FUNDING.yml
    └── workflows
    │   └── ci.yml
├── .gitignore
├── Assets
    ├── NaughtyAttributes.meta
    └── NaughtyAttributes
    │   ├── Documentation~
    │       ├── AnimatorParam_Inspector.png
    │       ├── BoxGroup_Inspector.png
    │       ├── Button_Inspector.png
    │       ├── CurveRange_Inspector.png
    │       ├── Dropdown_Inspector.gif
    │       ├── EnableIf_Inspector.gif
    │       ├── EnumFlags_Inspector.png
    │       ├── Expandable_Inspector.png
    │       ├── Foldout_Inspector.gif
    │       ├── HorizontalLine_Inspector.png
    │       ├── InfoBox_Inspector.png
    │       ├── InputAxis_Inspector.png
    │       ├── Label_Inspector.png
    │       ├── Layer_Inspector.png
    │       ├── MinMaxSlider_Inspector.png
    │       ├── MinValueMaxValue_Inspector.gif
    │       ├── ProgressBar_Inspector.gif
    │       ├── ProgressBar_Inspector.png
    │       ├── ReadOnly_Inspector.png
    │       ├── ReorderableList_Inspector.gif
    │       ├── Required_Inspector.png
    │       ├── ResizableTextArea_Inspector.gif
    │       ├── Scene_Inspector.png
    │       ├── ShowAssetPreview_Inspector.png
    │       ├── ShowIf_Inspector.gif
    │       ├── ShowNativeProperty_Inspector.png
    │       ├── ShowNonSerializedField_Inspector.png
    │       ├── SortingLayer_Inspector.png
    │       ├── Tag_Inspector.png
    │       └── ValidateInput_Inspector.png
    │   ├── README.html
    │   ├── README.html.meta
    │   ├── Samples.meta
    │   ├── Samples
    │       ├── DemoScene.meta
    │       └── DemoScene
    │       │   ├── DemoScene.unity
    │       │   ├── DemoScene.unity.meta
    │       │   ├── DemoSceneSettings.lighting
    │       │   ├── DemoSceneSettings.lighting.meta
    │       │   ├── TestAssets.meta
    │       │   └── TestAssets
    │       │       ├── Cube.prefab
    │       │       ├── Cube.prefab.meta
    │       │       ├── DummyAnimation.anim
    │       │       ├── DummyAnimation.anim.meta
    │       │       ├── DummyAnimatorController.controller
    │       │       ├── DummyAnimatorController.controller.meta
    │       │       ├── NaughtyScriptableObject.asset
    │       │       ├── NaughtyScriptableObject.asset.meta
    │       │       ├── TestScriptableObjectA.asset
    │       │       ├── TestScriptableObjectA.asset.meta
    │       │       ├── TestScriptableObjectB.asset
    │       │       ├── TestScriptableObjectB.asset.meta
    │       │       ├── icon-github.png
    │       │       └── icon-github.png.meta
    │   ├── Scripts.meta
    │   ├── Scripts
    │       ├── Core.meta
    │       ├── Core
    │       │   ├── DrawerAttributes.meta
    │       │   ├── DrawerAttributes
    │       │   │   ├── AllowNestingAttribute.cs
    │       │   │   ├── AllowNestingAttribute.cs.meta
    │       │   │   ├── AnimatorParamAttribute.cs
    │       │   │   ├── AnimatorParamAttribute.cs.meta
    │       │   │   ├── CurveRangeAttribute.cs
    │       │   │   ├── CurveRangeAttribute.cs.meta
    │       │   │   ├── DrawerAttribute.cs
    │       │   │   ├── DrawerAttribute.cs.meta
    │       │   │   ├── DropdownAttribute.cs
    │       │   │   ├── DropdownAttribute.cs.meta
    │       │   │   ├── EnumFlagsAttribute.cs
    │       │   │   ├── EnumFlagsAttribute.cs.meta
    │       │   │   ├── Expandable.cs
    │       │   │   ├── Expandable.cs.meta
    │       │   │   ├── HorizontalLineAttribute.cs
    │       │   │   ├── HorizontalLineAttribute.cs.meta
    │       │   │   ├── InfoBoxAttribute.cs
    │       │   │   ├── InfoBoxAttribute.cs.meta
    │       │   │   ├── InputAxisAttribute.cs
    │       │   │   ├── InputAxisAttribute.cs.meta
    │       │   │   ├── LayerAttribute.cs
    │       │   │   ├── LayerAttribute.cs.meta
    │       │   │   ├── MinMaxSliderAttribute.cs
    │       │   │   ├── MinMaxSliderAttribute.cs.meta
    │       │   │   ├── ProgressBarAttribute.cs
    │       │   │   ├── ProgressBarAttribute.cs.meta
    │       │   │   ├── ResizableTextAreaAttribute.cs
    │       │   │   ├── ResizableTextAreaAttribute.cs.meta
    │       │   │   ├── SceneAttribute.cs
    │       │   │   ├── SceneAttribute.cs.meta
    │       │   │   ├── ShowAssetPreviewAttribute.cs
    │       │   │   ├── ShowAssetPreviewAttribute.cs.meta
    │       │   │   ├── SortingLayerAttribute.cs
    │       │   │   ├── SortingLayerAttribute.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
    │       │   │   ├── FoldoutAttribute.cs
    │       │   │   ├── FoldoutAttribute.cs.meta
    │       │   │   ├── HideIfAttribute.cs
    │       │   │   ├── HideIfAttribute.cs.meta
    │       │   │   ├── IGroupAttribute.cs
    │       │   │   ├── IGroupAttribute.cs.meta
    │       │   │   ├── LabelAttribute.cs
    │       │   │   ├── LabelAttribute.cs.meta
    │       │   │   ├── MetaAttribute.cs
    │       │   │   ├── MetaAttribute.cs.meta
    │       │   │   ├── OnValueChangedAttribute.cs
    │       │   │   ├── OnValueChangedAttribute.cs.meta
    │       │   │   ├── ReadOnlyAttribute.cs
    │       │   │   ├── ReadOnlyAttribute.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
    │       │   │   ├── AnimatorParamPropertyDrawer.cs
    │       │   │   ├── AnimatorParamPropertyDrawer.cs.meta
    │       │   │   ├── CurveRangePropertyDrawer.cs
    │       │   │   ├── CurveRangePropertyDrawer.cs.meta
    │       │   │   ├── DropdownPropertyDrawer.cs
    │       │   │   ├── DropdownPropertyDrawer.cs.meta
    │       │   │   ├── EnumFlagsPropertyDrawer.cs
    │       │   │   ├── EnumFlagsPropertyDrawer.cs.meta
    │       │   │   ├── ExpandablePropertyDrawer.cs
    │       │   │   ├── ExpandablePropertyDrawer.cs.meta
    │       │   │   ├── InputAxisPropertyDrawer.cs
    │       │   │   ├── InputAxisPropertyDrawer.cs.meta
    │       │   │   ├── LayerPropertyDrawer.cs
    │       │   │   ├── LayerPropertyDrawer.cs.meta
    │       │   │   ├── MinMaxSliderPropertyDrawer.cs
    │       │   │   ├── MinMaxSliderPropertyDrawer.cs.meta
    │       │   │   ├── ProgressBarPropertyDrawer.cs
    │       │   │   ├── ProgressBarPropertyDrawer.cs.meta
    │       │   │   ├── PropertyDrawerBase.cs
    │       │   │   ├── PropertyDrawerBase.cs.meta
    │       │   │   ├── ResizableTextAreaPropertyDrawer.cs
    │       │   │   ├── ResizableTextAreaPropertyDrawer.cs.meta
    │       │   │   ├── ScenePropertyDrawer.cs
    │       │   │   ├── ScenePropertyDrawer.cs.meta
    │       │   │   ├── ShowAssetPreviewPropertyDrawer.cs
    │       │   │   ├── ShowAssetPreviewPropertyDrawer.cs.meta
    │       │   │   ├── SortingLayerPropertyDrawer.cs
    │       │   │   ├── SortingLayerPropertyDrawer.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
    │       │   │   ├── ButtonUtility.cs
    │       │   │   ├── ButtonUtility.cs.meta
    │       │   │   ├── NaughtyEditorGUI.cs
    │       │   │   ├── NaughtyEditorGUI.cs.meta
    │       │   │   ├── PropertyUtility.cs
    │       │   │   ├── PropertyUtility.cs.meta
    │       │   │   ├── ReflectionUtility.cs
    │       │   │   ├── ReflectionUtility.cs.meta
    │       │   │   ├── SavedBool.cs
    │       │   │   └── SavedBool.cs.meta
    │       ├── Test.meta
    │       └── Test
    │       │   ├── AnimatorParamTest.cs
    │       │   ├── AnimatorParamTest.cs.meta
    │       │   ├── BoxGroupTest.cs
    │       │   ├── BoxGroupTest.cs.meta
    │       │   ├── ButtonTest.cs
    │       │   ├── ButtonTest.cs.meta
    │       │   ├── CurveRangeTest.cs
    │       │   ├── CurveRangeTest.cs.meta
    │       │   ├── DisableIfTest.cs
    │       │   ├── DisableIfTest.cs.meta
    │       │   ├── DropdownTest.cs
    │       │   ├── DropdownTest.cs.meta
    │       │   ├── EnableIfTest.cs
    │       │   ├── EnableIfTest.cs.meta
    │       │   ├── EnumFlagsTest.cs
    │       │   ├── EnumFlagsTest.cs.meta
    │       │   ├── ExpandableTest.cs
    │       │   ├── ExpandableTest.cs.meta
    │       │   ├── FoldoutTest.cs
    │       │   ├── FoldoutTest.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
    │       │   ├── LayerTest.cs
    │       │   ├── LayerTest.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
    │       │   ├── SortingLayerTest.cs
    │       │   ├── SortingLayerTest.cs.meta
    │       │   ├── TagTest.cs
    │       │   ├── TagTest.cs.meta
    │       │   ├── ValidateInputTest.cs
    │       │   ├── ValidateInputTest.cs.meta
    │       │   ├── _NaughtyComponent.cs
    │       │   ├── _NaughtyComponent.cs.meta
    │       │   ├── _NaughtyScriptableObject.cs
    │       │   ├── _NaughtyScriptableObject.cs.meta
    │       │   ├── _TestScriptableObjectA.cs
    │       │   ├── _TestScriptableObjectA.cs.meta
    │       │   ├── _TestScriptableObjectB.cs
    │       │   └── _TestScriptableObjectB.cs.meta
    │   ├── package.json
    │   └── package.json.meta
├── LICENSE
├── Packages
    ├── manifest.json
    └── packages-lock.json
├── ProjectSettings
    ├── AudioManager.asset
    ├── ClusterInputManager.asset
    ├── DynamicsManager.asset
    ├── EditorBuildSettings.asset
    ├── EditorSettings.asset
    ├── GraphicsSettings.asset
    ├── InputManager.asset
    ├── NavMeshAreas.asset
    ├── NetworkManager.asset
    ├── PackageManagerSettings.asset
    ├── Physics2DSettings.asset
    ├── PresetManager.asset
    ├── ProjectSettings.asset
    ├── ProjectVersion.txt
    ├── QualitySettings.asset
    ├── TagManager.asset
    ├── TimeManager.asset
    ├── UnityConnectSettings.asset
    ├── VFXManager.asset
    ├── VersionControlSettings.asset
    └── XRSettings.asset
└── README.md


/.github/FUNDING.yml:
--------------------------------------------------------------------------------
 1 | # These are supported funding model platforms
 2 | 
 3 | github: # Replace with up to 4 GitHub Sponsors-enabled usernames e.g., [user1, user2]
 4 | patreon: # Replace with a single Patreon username
 5 | open_collective: # Replace with a single Open Collective username
 6 | ko_fi: # Replace with a single Ko-fi username
 7 | tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel
 8 | community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry
 9 | liberapay: # Replace with a single Liberapay username
10 | issuehunt: # Replace with a single IssueHunt username
11 | otechie: # Replace with a single Otechie username
12 | custom: ["https://www.paypal.com/paypalme/dbrizov", "https://www.buymeacoffee.com/dbrizov"]
13 | 


--------------------------------------------------------------------------------
/.github/workflows/ci.yml:
--------------------------------------------------------------------------------
 1 | name: CI
 2 | 
 3 | on:
 4 |   push:
 5 |     branches:
 6 |     - master
 7 | 
 8 | jobs:
 9 |   split-upm:
10 |     name: update upm branch
11 |     runs-on: ubuntu-latest
12 |     steps:
13 |     - uses: actions/checkout@v2
14 |       with:
15 |         fetch-depth: 0
16 |     - name: update upm branch
17 |       run: |
18 |         echo '### head info'
19 |         git log -1
20 | 
21 |         echo '### split upm branch'
22 |         git subtree split -P "$PKG_ROOT" -b upm
23 | 
24 |         echo '### update remote upm branch'
25 |         git push origin upm
26 |       env:
27 |         PKG_ROOT: Assets/NaughtyAttributes
28 | 


--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
 1 | ====================
 2 | Temp/
 3 | Library/
 4 | Logs/
 5 | UserSettings/
 6 | Assets/AssetStoreTools/
 7 | Assets/AssetStoreTools.meta
 8 | Assets/Plugins/Editor/JetBrains
 9 | Assets/Plugins/Editor/JetBrains.meta
10 | Assets/Plugins.meta
11 | Assets/Plugins/Editor.meta
12 | 
13 | ====================
14 | ExportedObj/
15 | obj/
16 | .vs/
17 | .vscode/
18 | .vsconfig
19 | .idea/
20 | *.svd
21 | *.userprefs
22 | *.csproj
23 | *.pidb
24 | *.suo
25 | *.sln
26 | *.user
27 | *.unityproj
28 | *.booproj
29 | 
30 | ====================
31 | .DS_Store
32 | .DS_Store?
33 | ._*
34 | .Spotlight-V100
35 | .Trashes
36 | ehthumbs.db
37 | Thumbs.db
38 | 
39 | ====================
40 | Builds/
41 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes.meta:
--------------------------------------------------------------------------------
 1 | fileFormatVersion: 2
 2 | guid: 23ad0e668d9d1e441946a2133bc31bce
 3 | folderAsset: yes
 4 | timeCreated: 1507998703
 5 | licenseType: Free
 6 | DefaultImporter:
 7 |   externalObjects: {}
 8 |   userData: 
 9 |   assetBundleName: 
10 |   assetBundleVariant: 
11 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Documentation~/AnimatorParam_Inspector.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dbrizov/NaughtyAttributes/a97aa9b3b416e4c9122ea1be1a1b93b1169b0cd3/Assets/NaughtyAttributes/Documentation~/AnimatorParam_Inspector.png


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Documentation~/BoxGroup_Inspector.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dbrizov/NaughtyAttributes/a97aa9b3b416e4c9122ea1be1a1b93b1169b0cd3/Assets/NaughtyAttributes/Documentation~/BoxGroup_Inspector.png


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Documentation~/Button_Inspector.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dbrizov/NaughtyAttributes/a97aa9b3b416e4c9122ea1be1a1b93b1169b0cd3/Assets/NaughtyAttributes/Documentation~/Button_Inspector.png


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Documentation~/CurveRange_Inspector.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dbrizov/NaughtyAttributes/a97aa9b3b416e4c9122ea1be1a1b93b1169b0cd3/Assets/NaughtyAttributes/Documentation~/CurveRange_Inspector.png


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Documentation~/Dropdown_Inspector.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dbrizov/NaughtyAttributes/a97aa9b3b416e4c9122ea1be1a1b93b1169b0cd3/Assets/NaughtyAttributes/Documentation~/Dropdown_Inspector.gif


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Documentation~/EnableIf_Inspector.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dbrizov/NaughtyAttributes/a97aa9b3b416e4c9122ea1be1a1b93b1169b0cd3/Assets/NaughtyAttributes/Documentation~/EnableIf_Inspector.gif


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Documentation~/EnumFlags_Inspector.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dbrizov/NaughtyAttributes/a97aa9b3b416e4c9122ea1be1a1b93b1169b0cd3/Assets/NaughtyAttributes/Documentation~/EnumFlags_Inspector.png


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Documentation~/Expandable_Inspector.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dbrizov/NaughtyAttributes/a97aa9b3b416e4c9122ea1be1a1b93b1169b0cd3/Assets/NaughtyAttributes/Documentation~/Expandable_Inspector.png


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Documentation~/Foldout_Inspector.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dbrizov/NaughtyAttributes/a97aa9b3b416e4c9122ea1be1a1b93b1169b0cd3/Assets/NaughtyAttributes/Documentation~/Foldout_Inspector.gif


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Documentation~/HorizontalLine_Inspector.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dbrizov/NaughtyAttributes/a97aa9b3b416e4c9122ea1be1a1b93b1169b0cd3/Assets/NaughtyAttributes/Documentation~/HorizontalLine_Inspector.png


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Documentation~/InfoBox_Inspector.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dbrizov/NaughtyAttributes/a97aa9b3b416e4c9122ea1be1a1b93b1169b0cd3/Assets/NaughtyAttributes/Documentation~/InfoBox_Inspector.png


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Documentation~/InputAxis_Inspector.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dbrizov/NaughtyAttributes/a97aa9b3b416e4c9122ea1be1a1b93b1169b0cd3/Assets/NaughtyAttributes/Documentation~/InputAxis_Inspector.png


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Documentation~/Label_Inspector.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dbrizov/NaughtyAttributes/a97aa9b3b416e4c9122ea1be1a1b93b1169b0cd3/Assets/NaughtyAttributes/Documentation~/Label_Inspector.png


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Documentation~/Layer_Inspector.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dbrizov/NaughtyAttributes/a97aa9b3b416e4c9122ea1be1a1b93b1169b0cd3/Assets/NaughtyAttributes/Documentation~/Layer_Inspector.png


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Documentation~/MinMaxSlider_Inspector.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dbrizov/NaughtyAttributes/a97aa9b3b416e4c9122ea1be1a1b93b1169b0cd3/Assets/NaughtyAttributes/Documentation~/MinMaxSlider_Inspector.png


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Documentation~/MinValueMaxValue_Inspector.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dbrizov/NaughtyAttributes/a97aa9b3b416e4c9122ea1be1a1b93b1169b0cd3/Assets/NaughtyAttributes/Documentation~/MinValueMaxValue_Inspector.gif


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Documentation~/ProgressBar_Inspector.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dbrizov/NaughtyAttributes/a97aa9b3b416e4c9122ea1be1a1b93b1169b0cd3/Assets/NaughtyAttributes/Documentation~/ProgressBar_Inspector.gif


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Documentation~/ProgressBar_Inspector.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dbrizov/NaughtyAttributes/a97aa9b3b416e4c9122ea1be1a1b93b1169b0cd3/Assets/NaughtyAttributes/Documentation~/ProgressBar_Inspector.png


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Documentation~/ReadOnly_Inspector.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dbrizov/NaughtyAttributes/a97aa9b3b416e4c9122ea1be1a1b93b1169b0cd3/Assets/NaughtyAttributes/Documentation~/ReadOnly_Inspector.png


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Documentation~/ReorderableList_Inspector.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dbrizov/NaughtyAttributes/a97aa9b3b416e4c9122ea1be1a1b93b1169b0cd3/Assets/NaughtyAttributes/Documentation~/ReorderableList_Inspector.gif


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Documentation~/Required_Inspector.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dbrizov/NaughtyAttributes/a97aa9b3b416e4c9122ea1be1a1b93b1169b0cd3/Assets/NaughtyAttributes/Documentation~/Required_Inspector.png


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Documentation~/ResizableTextArea_Inspector.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dbrizov/NaughtyAttributes/a97aa9b3b416e4c9122ea1be1a1b93b1169b0cd3/Assets/NaughtyAttributes/Documentation~/ResizableTextArea_Inspector.gif


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Documentation~/Scene_Inspector.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dbrizov/NaughtyAttributes/a97aa9b3b416e4c9122ea1be1a1b93b1169b0cd3/Assets/NaughtyAttributes/Documentation~/Scene_Inspector.png


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Documentation~/ShowAssetPreview_Inspector.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dbrizov/NaughtyAttributes/a97aa9b3b416e4c9122ea1be1a1b93b1169b0cd3/Assets/NaughtyAttributes/Documentation~/ShowAssetPreview_Inspector.png


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Documentation~/ShowIf_Inspector.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dbrizov/NaughtyAttributes/a97aa9b3b416e4c9122ea1be1a1b93b1169b0cd3/Assets/NaughtyAttributes/Documentation~/ShowIf_Inspector.gif


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Documentation~/ShowNativeProperty_Inspector.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dbrizov/NaughtyAttributes/a97aa9b3b416e4c9122ea1be1a1b93b1169b0cd3/Assets/NaughtyAttributes/Documentation~/ShowNativeProperty_Inspector.png


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Documentation~/ShowNonSerializedField_Inspector.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dbrizov/NaughtyAttributes/a97aa9b3b416e4c9122ea1be1a1b93b1169b0cd3/Assets/NaughtyAttributes/Documentation~/ShowNonSerializedField_Inspector.png


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Documentation~/SortingLayer_Inspector.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dbrizov/NaughtyAttributes/a97aa9b3b416e4c9122ea1be1a1b93b1169b0cd3/Assets/NaughtyAttributes/Documentation~/SortingLayer_Inspector.png


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Documentation~/Tag_Inspector.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dbrizov/NaughtyAttributes/a97aa9b3b416e4c9122ea1be1a1b93b1169b0cd3/Assets/NaughtyAttributes/Documentation~/Tag_Inspector.png


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Documentation~/ValidateInput_Inspector.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dbrizov/NaughtyAttributes/a97aa9b3b416e4c9122ea1be1a1b93b1169b0cd3/Assets/NaughtyAttributes/Documentation~/ValidateInput_Inspector.png


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/README.html.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: f1c5c604e6d27cc4d86e81f45c704e11
3 | TextScriptImporter:
4 |   externalObjects: {}
5 |   userData: 
6 |   assetBundleName: 
7 |   assetBundleVariant: 
8 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Samples.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: b1e9ff0668650a54da2c458e80a90032
3 | folderAsset: yes
4 | DefaultImporter:
5 |   externalObjects: {}
6 |   userData: 
7 |   assetBundleName: 
8 |   assetBundleVariant: 
9 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Samples/DemoScene.meta:
--------------------------------------------------------------------------------
 1 | fileFormatVersion: 2
 2 | guid: afb4c815411c28b449e61fbaa1a8bfa3
 3 | folderAsset: yes
 4 | timeCreated: 1507995550
 5 | licenseType: Free
 6 | DefaultImporter:
 7 |   externalObjects: {}
 8 |   userData: 
 9 |   assetBundleName: 
10 |   assetBundleVariant: 
11 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Samples/DemoScene/DemoScene.unity.meta:
--------------------------------------------------------------------------------
 1 | fileFormatVersion: 2
 2 | guid: 07845a5477be2b149a6f1cb32b5a3a5b
 3 | timeCreated: 1507998788
 4 | licenseType: Free
 5 | DefaultImporter:
 6 |   externalObjects: {}
 7 |   userData: 
 8 |   assetBundleName: 
 9 |   assetBundleVariant: 
10 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Samples/DemoScene/DemoSceneSettings.lighting:
--------------------------------------------------------------------------------
 1 | %YAML 1.1
 2 | %TAG !u! tag:unity3d.com,2011:
 3 | --- !u!850595691 &4890085278179872738
 4 | LightingSettings:
 5 |   m_ObjectHideFlags: 0
 6 |   m_CorrespondingSourceObject: {fileID: 0}
 7 |   m_PrefabInstance: {fileID: 0}
 8 |   m_PrefabAsset: {fileID: 0}
 9 |   m_Name: DemoSceneSettings
10 |   serializedVersion: 2
11 |   m_GIWorkflowMode: 0
12 |   m_EnableBakedLightmaps: 1
13 |   m_EnableRealtimeLightmaps: 1
14 |   m_RealtimeEnvironmentLighting: 1
15 |   m_BounceScale: 1
16 |   m_AlbedoBoost: 1
17 |   m_IndirectOutputScale: 1
18 |   m_UsingShadowmask: 1
19 |   m_BakeBackend: 0
20 |   m_LightmapMaxSize: 1024
21 |   m_BakeResolution: 40
22 |   m_Padding: 2
23 |   m_TextureCompression: 1
24 |   m_AO: 0
25 |   m_AOMaxDistance: 1
26 |   m_CompAOExponent: 1
27 |   m_CompAOExponentDirect: 0
28 |   m_ExtractAO: 0
29 |   m_MixedBakeMode: 2
30 |   m_LightmapsBakeMode: 1
31 |   m_FilterMode: 1
32 |   m_LightmapParameters: {fileID: 0}
33 |   m_ExportTrainingData: 0
34 |   m_TrainingDataDestination: TrainingData
35 |   m_RealtimeResolution: 2
36 |   m_ForceWhiteAlbedo: 0
37 |   m_ForceUpdates: 0
38 |   m_FinalGather: 0
39 |   m_FinalGatherRayCount: 256
40 |   m_FinalGatherFiltering: 1
41 |   m_PVRCulling: 1
42 |   m_PVRSampling: 1
43 |   m_PVRDirectSampleCount: 32
44 |   m_PVRSampleCount: 500
45 |   m_PVREnvironmentSampleCount: 500
46 |   m_PVREnvironmentReferencePointCount: 2048
47 |   m_LightProbeSampleCountMultiplier: 4
48 |   m_PVRBounces: 2
49 |   m_PVRRussianRouletteStartBounce: 2
50 |   m_PVREnvironmentMIS: 0
51 |   m_PVRFilteringMode: 2
52 |   m_PVRDenoiserTypeDirect: 0
53 |   m_PVRDenoiserTypeIndirect: 0
54 |   m_PVRDenoiserTypeAO: 0
55 |   m_PVRFilterTypeDirect: 0
56 |   m_PVRFilterTypeIndirect: 0
57 |   m_PVRFilterTypeAO: 0
58 |   m_PVRFilteringGaussRadiusDirect: 1
59 |   m_PVRFilteringGaussRadiusIndirect: 5
60 |   m_PVRFilteringGaussRadiusAO: 2
61 |   m_PVRFilteringAtrousPositionSigmaDirect: 0.5
62 |   m_PVRFilteringAtrousPositionSigmaIndirect: 2
63 |   m_PVRFilteringAtrousPositionSigmaAO: 1
64 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Samples/DemoScene/DemoSceneSettings.lighting.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 98ee975b74776234986f4d35f14c4ccc
3 | NativeFormatImporter:
4 |   externalObjects: {}
5 |   mainObjectFileID: 0
6 |   userData: 
7 |   assetBundleName: 
8 |   assetBundleVariant: 
9 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Samples/DemoScene/TestAssets.meta:
--------------------------------------------------------------------------------
 1 | fileFormatVersion: 2
 2 | guid: 53a462744f22ca549927c5e6ea797362
 3 | folderAsset: yes
 4 | timeCreated: 1509089305
 5 | licenseType: Free
 6 | DefaultImporter:
 7 |   externalObjects: {}
 8 |   userData: 
 9 |   assetBundleName: 
10 |   assetBundleVariant: 
11 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Samples/DemoScene/TestAssets/Cube.prefab:
--------------------------------------------------------------------------------
 1 | %YAML 1.1
 2 | %TAG !u! tag:unity3d.com,2011:
 3 | --- !u!1 &1981131855061102
 4 | GameObject:
 5 |   m_ObjectHideFlags: 0
 6 |   m_CorrespondingSourceObject: {fileID: 0}
 7 |   m_PrefabInstance: {fileID: 0}
 8 |   m_PrefabAsset: {fileID: 0}
 9 |   serializedVersion: 6
10 |   m_Component:
11 |   - component: {fileID: 4344736110947706}
12 |   - component: {fileID: 33062901823624450}
13 |   - component: {fileID: 65233182844289960}
14 |   - component: {fileID: 23099360439063292}
15 |   m_Layer: 0
16 |   m_Name: Cube
17 |   m_TagString: Untagged
18 |   m_Icon: {fileID: 0}
19 |   m_NavMeshLayer: 0
20 |   m_StaticEditorFlags: 0
21 |   m_IsActive: 1
22 | --- !u!4 &4344736110947706
23 | Transform:
24 |   m_ObjectHideFlags: 0
25 |   m_CorrespondingSourceObject: {fileID: 0}
26 |   m_PrefabInstance: {fileID: 0}
27 |   m_PrefabAsset: {fileID: 0}
28 |   m_GameObject: {fileID: 1981131855061102}
29 |   m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
30 |   m_LocalPosition: {x: 0, y: 0, z: 0}
31 |   m_LocalScale: {x: 1, y: 1, z: 1}
32 |   m_Children: []
33 |   m_Father: {fileID: 0}
34 |   m_RootOrder: 0
35 |   m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
36 | --- !u!33 &33062901823624450
37 | MeshFilter:
38 |   m_ObjectHideFlags: 0
39 |   m_CorrespondingSourceObject: {fileID: 0}
40 |   m_PrefabInstance: {fileID: 0}
41 |   m_PrefabAsset: {fileID: 0}
42 |   m_GameObject: {fileID: 1981131855061102}
43 |   m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0}
44 | --- !u!65 &65233182844289960
45 | BoxCollider:
46 |   m_ObjectHideFlags: 0
47 |   m_CorrespondingSourceObject: {fileID: 0}
48 |   m_PrefabInstance: {fileID: 0}
49 |   m_PrefabAsset: {fileID: 0}
50 |   m_GameObject: {fileID: 1981131855061102}
51 |   m_Material: {fileID: 0}
52 |   m_IsTrigger: 0
53 |   m_Enabled: 1
54 |   serializedVersion: 2
55 |   m_Size: {x: 1, y: 1, z: 1}
56 |   m_Center: {x: 0, y: 0, z: 0}
57 | --- !u!23 &23099360439063292
58 | MeshRenderer:
59 |   m_ObjectHideFlags: 0
60 |   m_CorrespondingSourceObject: {fileID: 0}
61 |   m_PrefabInstance: {fileID: 0}
62 |   m_PrefabAsset: {fileID: 0}
63 |   m_GameObject: {fileID: 1981131855061102}
64 |   m_Enabled: 1
65 |   m_CastShadows: 1
66 |   m_ReceiveShadows: 1
67 |   m_DynamicOccludee: 1
68 |   m_MotionVectors: 1
69 |   m_LightProbeUsage: 1
70 |   m_ReflectionProbeUsage: 1
71 |   m_RenderingLayerMask: 1
72 |   m_RendererPriority: 0
73 |   m_Materials:
74 |   - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0}
75 |   m_StaticBatchInfo:
76 |     firstSubMesh: 0
77 |     subMeshCount: 0
78 |   m_StaticBatchRoot: {fileID: 0}
79 |   m_ProbeAnchor: {fileID: 0}
80 |   m_LightProbeVolumeOverride: {fileID: 0}
81 |   m_ScaleInLightmap: 1
82 |   m_PreserveUVs: 1
83 |   m_IgnoreNormalsForChartDetection: 0
84 |   m_ImportantGI: 0
85 |   m_StitchLightmapSeams: 0
86 |   m_SelectedEditorRenderState: 3
87 |   m_MinimumChartSize: 4
88 |   m_AutoUVMaxDistance: 0.5
89 |   m_AutoUVMaxAngle: 89
90 |   m_LightmapParameters: {fileID: 0}
91 |   m_SortingLayerID: 0
92 |   m_SortingLayer: 0
93 |   m_SortingOrder: 0
94 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Samples/DemoScene/TestAssets/Cube.prefab.meta:
--------------------------------------------------------------------------------
 1 | fileFormatVersion: 2
 2 | guid: 7ec354ef3daae7641b7a3fa5e1fe0c81
 3 | timeCreated: 1509089337
 4 | licenseType: Free
 5 | NativeFormatImporter:
 6 |   externalObjects: {}
 7 |   mainObjectFileID: 100100000
 8 |   userData: 
 9 |   assetBundleName: 
10 |   assetBundleVariant: 
11 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Samples/DemoScene/TestAssets/DummyAnimation.anim.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 31fbd6c92d19aaa48910857627a54a25
3 | NativeFormatImporter:
4 |   externalObjects: {}
5 |   mainObjectFileID: 0
6 |   userData: 
7 |   assetBundleName: 
8 |   assetBundleVariant: 
9 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Samples/DemoScene/TestAssets/DummyAnimatorController.controller:
--------------------------------------------------------------------------------
  1 | %YAML 1.1
  2 | %TAG !u! tag:unity3d.com,2011:
  3 | --- !u!1102 &-1567792821050049497
  4 | AnimatorState:
  5 |   serializedVersion: 5
  6 |   m_ObjectHideFlags: 1
  7 |   m_CorrespondingSourceObject: {fileID: 0}
  8 |   m_PrefabInstance: {fileID: 0}
  9 |   m_PrefabAsset: {fileID: 0}
 10 |   m_Name: DummyAnimation
 11 |   m_Speed: 1
 12 |   m_CycleOffset: 0
 13 |   m_Transitions: []
 14 |   m_StateMachineBehaviours: []
 15 |   m_Position: {x: 50, y: 50, z: 0}
 16 |   m_IKOnFeet: 0
 17 |   m_WriteDefaultValues: 1
 18 |   m_Mirror: 0
 19 |   m_SpeedParameterActive: 0
 20 |   m_MirrorParameterActive: 0
 21 |   m_CycleOffsetParameterActive: 0
 22 |   m_TimeParameterActive: 0
 23 |   m_Motion: {fileID: 7400000, guid: 31fbd6c92d19aaa48910857627a54a25, type: 2}
 24 |   m_Tag: 
 25 |   m_SpeedParameter: 
 26 |   m_MirrorParameter: 
 27 |   m_CycleOffsetParameter: 
 28 |   m_TimeParameter: 
 29 | --- !u!91 &9100000
 30 | AnimatorController:
 31 |   m_ObjectHideFlags: 0
 32 |   m_CorrespondingSourceObject: {fileID: 0}
 33 |   m_PrefabInstance: {fileID: 0}
 34 |   m_PrefabAsset: {fileID: 0}
 35 |   m_Name: DummyAnimatorController
 36 |   serializedVersion: 5
 37 |   m_AnimatorParameters:
 38 |   - m_Name: Float0
 39 |     m_Type: 1
 40 |     m_DefaultFloat: 0
 41 |     m_DefaultInt: 0
 42 |     m_DefaultBool: 0
 43 |     m_Controller: {fileID: 9100000}
 44 |   - m_Name: Float1
 45 |     m_Type: 1
 46 |     m_DefaultFloat: 0
 47 |     m_DefaultInt: 0
 48 |     m_DefaultBool: 0
 49 |     m_Controller: {fileID: 9100000}
 50 |   - m_Name: Int0
 51 |     m_Type: 3
 52 |     m_DefaultFloat: 0
 53 |     m_DefaultInt: 0
 54 |     m_DefaultBool: 0
 55 |     m_Controller: {fileID: 9100000}
 56 |   - m_Name: Int1
 57 |     m_Type: 3
 58 |     m_DefaultFloat: 0
 59 |     m_DefaultInt: 0
 60 |     m_DefaultBool: 0
 61 |     m_Controller: {fileID: 9100000}
 62 |   - m_Name: Bool0
 63 |     m_Type: 4
 64 |     m_DefaultFloat: 0
 65 |     m_DefaultInt: 0
 66 |     m_DefaultBool: 0
 67 |     m_Controller: {fileID: 9100000}
 68 |   - m_Name: Bool1
 69 |     m_Type: 4
 70 |     m_DefaultFloat: 0
 71 |     m_DefaultInt: 0
 72 |     m_DefaultBool: 0
 73 |     m_Controller: {fileID: 9100000}
 74 |   - m_Name: Trigger0
 75 |     m_Type: 9
 76 |     m_DefaultFloat: 0
 77 |     m_DefaultInt: 0
 78 |     m_DefaultBool: 0
 79 |     m_Controller: {fileID: 9100000}
 80 |   - m_Name: Trigger1
 81 |     m_Type: 9
 82 |     m_DefaultFloat: 0
 83 |     m_DefaultInt: 0
 84 |     m_DefaultBool: 0
 85 |     m_Controller: {fileID: 9100000}
 86 |   m_AnimatorLayers:
 87 |   - serializedVersion: 5
 88 |     m_Name: Base Layer
 89 |     m_StateMachine: {fileID: 945276690032550857}
 90 |     m_Mask: {fileID: 0}
 91 |     m_Motions: []
 92 |     m_Behaviours: []
 93 |     m_BlendingMode: 0
 94 |     m_SyncedLayerIndex: -1
 95 |     m_DefaultWeight: 0
 96 |     m_IKPass: 0
 97 |     m_SyncedLayerAffectsTiming: 0
 98 |     m_Controller: {fileID: 9100000}
 99 | --- !u!1107 &945276690032550857
100 | AnimatorStateMachine:
101 |   serializedVersion: 5
102 |   m_ObjectHideFlags: 1
103 |   m_CorrespondingSourceObject: {fileID: 0}
104 |   m_PrefabInstance: {fileID: 0}
105 |   m_PrefabAsset: {fileID: 0}
106 |   m_Name: Base Layer
107 |   m_ChildStates:
108 |   - serializedVersion: 1
109 |     m_State: {fileID: -1567792821050049497}
110 |     m_Position: {x: 390, y: 80, z: 0}
111 |   m_ChildStateMachines: []
112 |   m_AnyStateTransitions: []
113 |   m_EntryTransitions: []
114 |   m_StateMachineTransitions: {}
115 |   m_StateMachineBehaviours: []
116 |   m_AnyStatePosition: {x: 50, y: 20, z: 0}
117 |   m_EntryPosition: {x: 50, y: 120, z: 0}
118 |   m_ExitPosition: {x: 800, y: 120, z: 0}
119 |   m_ParentStateMachinePosition: {x: 800, y: 20, z: 0}
120 |   m_DefaultState: {fileID: -1567792821050049497}
121 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Samples/DemoScene/TestAssets/DummyAnimatorController.controller.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 63ee86efd213bf34285c95f33e79dc6c
3 | NativeFormatImporter:
4 |   externalObjects: {}
5 |   mainObjectFileID: 0
6 |   userData: 
7 |   assetBundleName: 
8 |   assetBundleVariant: 
9 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Samples/DemoScene/TestAssets/NaughtyScriptableObject.asset:
--------------------------------------------------------------------------------
 1 | %YAML 1.1
 2 | %TAG !u! tag:unity3d.com,2011:
 3 | --- !u!114 &11400000
 4 | MonoBehaviour:
 5 |   m_ObjectHideFlags: 0
 6 |   m_CorrespondingSourceObject: {fileID: 0}
 7 |   m_PrefabInstance: {fileID: 0}
 8 |   m_PrefabAsset: {fileID: 0}
 9 |   m_GameObject: {fileID: 0}
10 |   m_Enabled: 1
11 |   m_EditorHideFlags: 0
12 |   m_Script: {fileID: 11500000, guid: 753bdb918c6038142acddbd7aae6958f, type: 3}
13 |   m_Name: NaughtyScriptableObject
14 |   m_EditorClassIdentifier: 
15 |   listA:
16 |   - {fileID: 11400000, guid: 149474eb879a6a641b560ca17d48712f, type: 2}
17 |   - {fileID: 11400000, guid: 149474eb879a6a641b560ca17d48712f, type: 2}
18 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Samples/DemoScene/TestAssets/NaughtyScriptableObject.asset.meta:
--------------------------------------------------------------------------------
 1 | fileFormatVersion: 2
 2 | guid: 9cf80899b80517945a2d2390fb48877f
 3 | timeCreated: 1518639643
 4 | licenseType: Free
 5 | NativeFormatImporter:
 6 |   externalObjects: {}
 7 |   mainObjectFileID: 11400000
 8 |   userData: 
 9 |   assetBundleName: 
10 |   assetBundleVariant: 
11 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Samples/DemoScene/TestAssets/TestScriptableObjectA.asset:
--------------------------------------------------------------------------------
 1 | %YAML 1.1
 2 | %TAG !u! tag:unity3d.com,2011:
 3 | --- !u!114 &11400000
 4 | MonoBehaviour:
 5 |   m_ObjectHideFlags: 0
 6 |   m_CorrespondingSourceObject: {fileID: 0}
 7 |   m_PrefabInstance: {fileID: 0}
 8 |   m_PrefabAsset: {fileID: 0}
 9 |   m_GameObject: {fileID: 0}
10 |   m_Enabled: 1
11 |   m_EditorHideFlags: 0
12 |   m_Script: {fileID: 11500000, guid: 19472ac11eae27a4b804f354ca7d9c00, type: 3}
13 |   m_Name: TestScriptableObjectA
14 |   m_EditorClassIdentifier: 
15 |   listB:
16 |   - {fileID: 11400000, guid: 05371aa7630d3ef44ac0106af06cd73c, type: 2}
17 |   - {fileID: 11400000, guid: 05371aa7630d3ef44ac0106af06cd73c, type: 2}
18 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Samples/DemoScene/TestAssets/TestScriptableObjectA.asset.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 149474eb879a6a641b560ca17d48712f
3 | NativeFormatImporter:
4 |   externalObjects: {}
5 |   mainObjectFileID: 11400000
6 |   userData: 
7 |   assetBundleName: 
8 |   assetBundleVariant: 
9 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Samples/DemoScene/TestAssets/TestScriptableObjectB.asset:
--------------------------------------------------------------------------------
 1 | %YAML 1.1
 2 | %TAG !u! tag:unity3d.com,2011:
 3 | --- !u!114 &11400000
 4 | MonoBehaviour:
 5 |   m_ObjectHideFlags: 0
 6 |   m_CorrespondingSourceObject: {fileID: 0}
 7 |   m_PrefabInstance: {fileID: 0}
 8 |   m_PrefabAsset: {fileID: 0}
 9 |   m_GameObject: {fileID: 0}
10 |   m_Enabled: 1
11 |   m_EditorHideFlags: 0
12 |   m_Script: {fileID: 11500000, guid: c2b396aeebc9d984da298eee313896bc, type: 3}
13 |   m_Name: TestScriptableObjectB
14 |   m_EditorClassIdentifier: 
15 |   slider: {x: 3, y: 7}
16 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Samples/DemoScene/TestAssets/TestScriptableObjectB.asset.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 05371aa7630d3ef44ac0106af06cd73c
3 | NativeFormatImporter:
4 |   externalObjects: {}
5 |   mainObjectFileID: 11400000
6 |   userData: 
7 |   assetBundleName: 
8 |   assetBundleVariant: 
9 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Samples/DemoScene/TestAssets/icon-github.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dbrizov/NaughtyAttributes/a97aa9b3b416e4c9122ea1be1a1b93b1169b0cd3/Assets/NaughtyAttributes/Samples/DemoScene/TestAssets/icon-github.png


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Samples/DemoScene/TestAssets/icon-github.png.meta:
--------------------------------------------------------------------------------
  1 | fileFormatVersion: 2
  2 | guid: 005888ede18a58e4db8d069cfa3007cb
  3 | TextureImporter:
  4 |   internalIDToNameTable: []
  5 |   externalObjects: {}
  6 |   serializedVersion: 10
  7 |   mipmaps:
  8 |     mipMapMode: 0
  9 |     enableMipMap: 0
 10 |     sRGBTexture: 1
 11 |     linearTexture: 0
 12 |     fadeOut: 0
 13 |     borderMipMap: 0
 14 |     mipMapsPreserveCoverage: 0
 15 |     alphaTestReferenceValue: 0.5
 16 |     mipMapFadeDistanceStart: 1
 17 |     mipMapFadeDistanceEnd: 3
 18 |   bumpmap:
 19 |     convertToNormalMap: 0
 20 |     externalNormalMap: 0
 21 |     heightScale: 0.25
 22 |     normalMapFilter: 0
 23 |   isReadable: 0
 24 |   streamingMipmaps: 0
 25 |   streamingMipmapsPriority: 0
 26 |   grayScaleToAlpha: 0
 27 |   generateCubemap: 6
 28 |   cubemapConvolution: 0
 29 |   seamlessCubemap: 0
 30 |   textureFormat: 1
 31 |   maxTextureSize: 2048
 32 |   textureSettings:
 33 |     serializedVersion: 2
 34 |     filterMode: -1
 35 |     aniso: -1
 36 |     mipBias: -100
 37 |     wrapU: 1
 38 |     wrapV: 1
 39 |     wrapW: -1
 40 |   nPOTScale: 0
 41 |   lightmap: 0
 42 |   compressionQuality: 50
 43 |   spriteMode: 1
 44 |   spriteExtrude: 1
 45 |   spriteMeshType: 1
 46 |   alignment: 0
 47 |   spritePivot: {x: 0.5, y: 0.5}
 48 |   spritePixelsToUnits: 100
 49 |   spriteBorder: {x: 0, y: 0, z: 0, w: 0}
 50 |   spriteGenerateFallbackPhysicsShape: 1
 51 |   alphaUsage: 1
 52 |   alphaIsTransparency: 1
 53 |   spriteTessellationDetail: -1
 54 |   textureType: 8
 55 |   textureShape: 1
 56 |   singleChannelComponent: 0
 57 |   maxTextureSizeSet: 0
 58 |   compressionQualitySet: 0
 59 |   textureFormatSet: 0
 60 |   platformSettings:
 61 |   - serializedVersion: 3
 62 |     buildTarget: DefaultTexturePlatform
 63 |     maxTextureSize: 2048
 64 |     resizeAlgorithm: 0
 65 |     textureFormat: -1
 66 |     textureCompression: 1
 67 |     compressionQuality: 50
 68 |     crunchedCompression: 0
 69 |     allowsAlphaSplitting: 0
 70 |     overridden: 0
 71 |     androidETC2FallbackOverride: 0
 72 |     forceMaximumCompressionQuality_BC6H_BC7: 1
 73 |   - serializedVersion: 3
 74 |     buildTarget: Standalone
 75 |     maxTextureSize: 2048
 76 |     resizeAlgorithm: 0
 77 |     textureFormat: -1
 78 |     textureCompression: 1
 79 |     compressionQuality: 50
 80 |     crunchedCompression: 0
 81 |     allowsAlphaSplitting: 0
 82 |     overridden: 0
 83 |     androidETC2FallbackOverride: 0
 84 |     forceMaximumCompressionQuality_BC6H_BC7: 1
 85 |   - serializedVersion: 3
 86 |     buildTarget: Android
 87 |     maxTextureSize: 2048
 88 |     resizeAlgorithm: 0
 89 |     textureFormat: -1
 90 |     textureCompression: 1
 91 |     compressionQuality: 50
 92 |     crunchedCompression: 0
 93 |     allowsAlphaSplitting: 0
 94 |     overridden: 0
 95 |     androidETC2FallbackOverride: 0
 96 |     forceMaximumCompressionQuality_BC6H_BC7: 1
 97 |   - serializedVersion: 3
 98 |     buildTarget: WebGL
 99 |     maxTextureSize: 2048
100 |     resizeAlgorithm: 0
101 |     textureFormat: -1
102 |     textureCompression: 1
103 |     compressionQuality: 50
104 |     crunchedCompression: 0
105 |     allowsAlphaSplitting: 0
106 |     overridden: 0
107 |     androidETC2FallbackOverride: 0
108 |     forceMaximumCompressionQuality_BC6H_BC7: 1
109 |   spriteSheet:
110 |     serializedVersion: 2
111 |     sprites: []
112 |     outline: []
113 |     physicsShape: []
114 |     bones: []
115 |     spriteID: 5e97eb03825dee720800000000000000
116 |     internalID: 0
117 |     vertices: []
118 |     indices: 
119 |     edges: []
120 |     weights: []
121 |     secondaryTextures: []
122 |   spritePackingTag: 
123 |   pSDRemoveMatte: 0
124 |   pSDShowRemoveMatteOption: 0
125 |   userData: 
126 |   assetBundleName: 
127 |   assetBundleVariant: 
128 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Scripts.meta:
--------------------------------------------------------------------------------
 1 | fileFormatVersion: 2
 2 | guid: 66686847ee1fa044bb15dfe473666178
 3 | folderAsset: yes
 4 | timeCreated: 1507995546
 5 | licenseType: Free
 6 | DefaultImporter:
 7 |   externalObjects: {}
 8 |   userData: 
 9 |   assetBundleName: 
10 |   assetBundleVariant: 
11 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Scripts/Core/DrawerAttributes/AnimatorParamAttribute.cs:
--------------------------------------------------------------------------------
 1 | using System;
 2 | using UnityEngine;
 3 | 
 4 | namespace NaughtyAttributes
 5 | {
 6 |     [AttributeUsage(AttributeTargets.Field, AllowMultiple = false, Inherited = true)]
 7 |     public class AnimatorParamAttribute : DrawerAttribute
 8 |     {
 9 |         public string AnimatorName { get; private set; }
10 |         public AnimatorControllerParameterType? AnimatorParamType { get; private set; }
11 | 
12 |         public AnimatorParamAttribute(string animatorName)
13 |         {
14 |             AnimatorName = animatorName;
15 |             AnimatorParamType = null;
16 |         }
17 | 
18 |         public AnimatorParamAttribute(string animatorName, AnimatorControllerParameterType animatorParamType)
19 |         {
20 |             AnimatorName = animatorName;
21 |             AnimatorParamType = animatorParamType;
22 |         }
23 |     }
24 | }
25 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Scripts/Core/DrawerAttributes/AnimatorParamAttribute.cs.meta:
--------------------------------------------------------------------------------
 1 | fileFormatVersion: 2
 2 | guid: 7373332cb77b42744a415d6b4add445d
 3 | MonoImporter:
 4 |   externalObjects: {}
 5 |   serializedVersion: 2
 6 |   defaultReferences: []
 7 |   executionOrder: 0
 8 |   icon: {instanceID: 0}
 9 |   userData: 
10 |   assetBundleName: 
11 |   assetBundleVariant: 
12 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Scripts/Core/DrawerAttributes/CurveRangeAttribute.cs:
--------------------------------------------------------------------------------
 1 | using System;
 2 | using UnityEngine;
 3 | 
 4 | namespace NaughtyAttributes
 5 | {
 6 |     [AttributeUsage(AttributeTargets.Field, AllowMultiple = false, Inherited = true)]
 7 |     public class CurveRangeAttribute : DrawerAttribute
 8 |     {
 9 |         public Vector2 Min { get; private set; }
10 |         public Vector2 Max { get; private set; }
11 |         public EColor Color { get; private set; }
12 | 
13 |         public CurveRangeAttribute(Vector2 min, Vector2 max, EColor color = EColor.Clear)
14 |         {
15 |             Min = min;
16 |             Max = max;
17 |             Color = color;
18 |         }
19 | 
20 |         public CurveRangeAttribute(EColor color)
21 |             : this(Vector2.zero, Vector2.one, color)
22 |         {
23 |         }
24 | 
25 |         public CurveRangeAttribute(float minX, float minY, float maxX, float maxY, EColor color = EColor.Clear)
26 |             : this(new Vector2(minX, minY), new Vector2(maxX, maxY), color)
27 |         {
28 |         }
29 |     }
30 | }
31 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Scripts/Core/DrawerAttributes/CurveRangeAttribute.cs.meta:
--------------------------------------------------------------------------------
 1 | fileFormatVersion: 2
 2 | guid: bbdf3fb8882c7514c9a01108122cda7e
 3 | MonoImporter:
 4 |   externalObjects: {}
 5 |   serializedVersion: 2
 6 |   defaultReferences: []
 7 |   executionOrder: 0
 8 |   icon: {instanceID: 0}
 9 |   userData: 
10 |   assetBundleName: 
11 |   assetBundleVariant: 
12 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Scripts/Core/DrawerAttributes/DrawerAttribute.cs:
--------------------------------------------------------------------------------
 1 | using UnityEngine;
 2 | 
 3 | namespace NaughtyAttributes
 4 | {
 5 |     /// <summary>
 6 |     /// Base class for all drawer attributes
 7 |     /// </summary>
 8 |     public class DrawerAttribute : PropertyAttribute, INaughtyAttribute
 9 |     {
10 |     }
11 | }
12 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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<KeyValuePair<string, object>>
19 |     {
20 |     }
21 | 
22 |     public class DropdownList<T> : IDropdownList
23 |     {
24 |         private List<KeyValuePair<string, object>> _values;
25 | 
26 |         public DropdownList()
27 |         {
28 |             _values = new List<KeyValuePair<string, object>>();
29 |         }
30 | 
31 |         public void Add(string displayName, T value)
32 |         {
33 |             _values.Add(new KeyValuePair<string, object>(displayName, value));
34 |         }
35 | 
36 |         public IEnumerator<KeyValuePair<string, object>> GetEnumerator()
37 |         {
38 |             return _values.GetEnumerator();
39 |         }
40 | 
41 |         IEnumerator IEnumerable.GetEnumerator()
42 |         {
43 |             return GetEnumerator();
44 |         }
45 | 
46 |         public static explicit operator DropdownList<object>(DropdownList<T> target)
47 |         {
48 |             DropdownList<object> result = new DropdownList<object>();
49 |             foreach (var kvp in target)
50 |             {
51 |                 result.Add(kvp.Key, kvp.Value);
52 |             }
53 | 
54 |             return result;
55 |         }
56 |     }
57 | }
58 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Scripts/Core/DrawerAttributes/Expandable.cs:
--------------------------------------------------------------------------------
 1 | using System;
 2 | 
 3 | namespace NaughtyAttributes
 4 | {
 5 |     [AttributeUsage(AttributeTargets.Field, AllowMultiple = false, Inherited = true)]
 6 |     public class ExpandableAttribute : DrawerAttribute
 7 |     {
 8 |     }
 9 | }
10 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Scripts/Core/DrawerAttributes/Expandable.cs.meta:
--------------------------------------------------------------------------------
 1 | fileFormatVersion: 2
 2 | guid: 60926d6ca7f9ced469e9248ff1192da6
 3 | MonoImporter:
 4 |   externalObjects: {}
 5 |   serializedVersion: 2
 6 |   defaultReferences: []
 7 |   executionOrder: 0
 8 |   icon: {instanceID: 0}
 9 |   userData: 
10 |   assetBundleName: 
11 |   assetBundleVariant: 
12 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Scripts/Core/DrawerAttributes/LayerAttribute.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | 
3 | namespace NaughtyAttributes
4 | {
5 |     [AttributeUsage(AttributeTargets.Field, AllowMultiple = false, Inherited = true)]
6 |     public class LayerAttribute : DrawerAttribute
7 |     {
8 |     }
9 | }


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Scripts/Core/DrawerAttributes/LayerAttribute.cs.meta:
--------------------------------------------------------------------------------
 1 | fileFormatVersion: 2
 2 | guid: 668d19ebe071176448d1af816a9a0ce0
 3 | MonoImporter:
 4 |   externalObjects: {}
 5 |   serializedVersion: 2
 6 |   defaultReferences: []
 7 |   executionOrder: 0
 8 |   icon: {instanceID: 0}
 9 |   userData: 
10 |   assetBundleName: 
11 |   assetBundleVariant: 
12 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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; set; }
10 |         public string MaxValueName { get; private set; }
11 |         public EColor Color { get; private set; }
12 | 
13 |         public ProgressBarAttribute(string name, float maxValue, EColor color = EColor.Blue)
14 |         {
15 |             Name = name;
16 |             MaxValue = maxValue;
17 |             Color = color;
18 |         }
19 | 
20 |         public ProgressBarAttribute(string name, string maxValueName, EColor color = EColor.Blue)
21 |         {
22 |             Name = name;
23 |             MaxValueName = maxValueName;
24 |             Color = color;
25 |         }
26 | 
27 |         public ProgressBarAttribute(float maxValue, EColor color = EColor.Blue)
28 |             : this("", maxValue, color)
29 |         {
30 |         }
31 | 
32 |         public ProgressBarAttribute(string maxValueName, EColor color = EColor.Blue)
33 |             : this("", maxValueName, color)
34 |         {
35 |         }
36 |     }
37 | }
38 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | }


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 const int DefaultWidth = 64;
 9 |         public const int DefaultHeight = 64;
10 | 
11 |         public int Width { get; private set; }
12 |         public int Height { get; private set; }
13 | 
14 |         public ShowAssetPreviewAttribute(int width = DefaultWidth, int height = DefaultHeight)
15 |         {
16 |             Width = width;
17 |             Height = height;
18 |         }
19 |     }
20 | }
21 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Scripts/Core/DrawerAttributes/SortingLayerAttribute.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | 
3 | namespace NaughtyAttributes
4 | {
5 |     [AttributeUsage(AttributeTargets.Field, AllowMultiple = false, Inherited = true)]
6 |     public class SortingLayerAttribute : DrawerAttribute
7 |     {
8 |     }
9 | }


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Scripts/Core/DrawerAttributes/SortingLayerAttribute.cs.meta:
--------------------------------------------------------------------------------
 1 | fileFormatVersion: 2
 2 | guid: b7564ee02deb3974a85d8617eea098fb
 3 | MonoImporter:
 4 |   externalObjects: {}
 5 |   serializedVersion: 2
 6 |   defaultReferences: []
 7 |   executionOrder: 0
 8 |   icon: {instanceID: 0}
 9 |   userData: 
10 |   assetBundleName: 
11 |   assetBundleVariant: 
12 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Scripts/Core/DrawerAttributes_SpecialCase/ButtonAttribute.cs:
--------------------------------------------------------------------------------
 1 | using System;
 2 | 
 3 | namespace NaughtyAttributes
 4 | {
 5 |     public enum EButtonEnableMode
 6 |     {
 7 |         /// <summary>
 8 |         /// Button should be active always
 9 |         /// </summary>
10 |         Always,
11 |         /// <summary>
12 |         /// Button should be active only in editor
13 |         /// </summary>
14 |         Editor,
15 |         /// <summary>
16 |         /// Button should be active only in playmode
17 |         /// </summary>
18 |         Playmode
19 |     }
20 | 
21 |     [AttributeUsage(AttributeTargets.Method, AllowMultiple = false, Inherited = true)]
22 |     public class ButtonAttribute : SpecialCaseDrawerAttribute
23 |     {
24 |         public string Text { get; private set; }
25 |         public EButtonEnableMode SelectedEnableMode { get; private set; }
26 | 
27 |         public ButtonAttribute(string text = null, EButtonEnableMode enabledMode = EButtonEnableMode.Always)
28 |         {
29 |             this.Text = text;
30 |             this.SelectedEnableMode = enabledMode;
31 |         }
32 |     }
33 | }
34 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Scripts/Core/INaughtyAttribute.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | 
3 | namespace NaughtyAttributes
4 | {
5 |     public interface INaughtyAttribute
6 |     {
7 |     }
8 | }
9 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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, IGroupAttribute
 7 |     {
 8 |         public string Name { get; private set; }
 9 | 
10 |         public BoxGroupAttribute(string name = "")
11 |         {
12 |             Name = name;
13 |         }
14 |     }
15 | }
16 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Scripts/Core/MetaAttributes/DisableIfAttribute.cs:
--------------------------------------------------------------------------------
 1 | using System;
 2 | 
 3 | namespace NaughtyAttributes
 4 | {
 5 |     [AttributeUsage(AttributeTargets.Field | AttributeTargets.Method, 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 |         public DisableIfAttribute(string enumName, object enumValue)
21 |             : base(enumName, enumValue as Enum)
22 |         {
23 |             Inverted = true;
24 |         }
25 |     }
26 | }
27 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Scripts/Core/MetaAttributes/EnableIfAttribute.cs:
--------------------------------------------------------------------------------
 1 | using System;
 2 | 
 3 | namespace NaughtyAttributes
 4 | {
 5 |     [AttributeUsage(AttributeTargets.Field | AttributeTargets.Method, 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 |         public EnableIfAttribute(string enumName, object enumValue)
21 |             : base(enumName, enumValue as Enum)
22 |         {
23 |             Inverted = false;
24 |         }
25 |     }
26 | }
27 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 |         /// <summary>
12 |         ///		If this not null, <see cref="Conditions"/>[0] is name of an enum variable.
13 |         /// </summary>
14 |         public Enum EnumValue { get; private set; }
15 | 
16 |         public EnableIfAttributeBase(string condition)
17 |         {
18 |             ConditionOperator = EConditionOperator.And;
19 |             Conditions = new string[1] { condition };
20 |         }
21 | 
22 |         public EnableIfAttributeBase(EConditionOperator conditionOperator, params string[] conditions)
23 |         {
24 |             ConditionOperator = conditionOperator;
25 |             Conditions = conditions;
26 |         }
27 | 
28 |         public EnableIfAttributeBase(string enumName, Enum enumValue)
29 |             : this(enumName)
30 |         {
31 |             if (enumValue == null)
32 |             {
33 |                 throw new ArgumentNullException(nameof(enumValue), "This parameter must be an enum value.");
34 |             }
35 | 
36 |             EnumValue = enumValue;
37 |         }
38 |     }
39 | }
40 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Scripts/Core/MetaAttributes/FoldoutAttribute.cs:
--------------------------------------------------------------------------------
 1 | using System;
 2 | 
 3 | namespace NaughtyAttributes
 4 | {
 5 |     [AttributeUsage(AttributeTargets.Field, AllowMultiple = false, Inherited = true)]
 6 |     public class FoldoutAttribute : MetaAttribute, IGroupAttribute
 7 |     {
 8 |         public string Name { get; private set; }
 9 | 
10 |         public FoldoutAttribute(string name)
11 |         {
12 |             Name = name;
13 |         }
14 |     }
15 | }
16 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Scripts/Core/MetaAttributes/FoldoutAttribute.cs.meta:
--------------------------------------------------------------------------------
 1 | fileFormatVersion: 2
 2 | guid: 95f184555d5079243b2d25b35a641a74
 3 | MonoImporter:
 4 |   externalObjects: {}
 5 |   serializedVersion: 2
 6 |   defaultReferences: []
 7 |   executionOrder: 0
 8 |   icon: {instanceID: 0}
 9 |   userData: 
10 |   assetBundleName: 
11 |   assetBundleVariant: 
12 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Scripts/Core/MetaAttributes/HideIfAttribute.cs:
--------------------------------------------------------------------------------
 1 | using System;
 2 | 
 3 | namespace NaughtyAttributes
 4 | {
 5 |     [AttributeUsage(AttributeTargets.Field | AttributeTargets.Method, 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 |         public HideIfAttribute(string enumName, object enumValue)
21 |             : base(enumName, enumValue as Enum)
22 |         {
23 |             Inverted = true;
24 |         }
25 |     }
26 | }
27 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Scripts/Core/MetaAttributes/IGroupAttribute.cs:
--------------------------------------------------------------------------------
1 | using UnityEngine;
2 | 
3 | namespace NaughtyAttributes
4 | {
5 |     public interface IGroupAttribute
6 |     {
7 |     }
8 | }
9 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Scripts/Core/MetaAttributes/IGroupAttribute.cs.meta:
--------------------------------------------------------------------------------
 1 | fileFormatVersion: 2
 2 | guid: 7c437b9ac50575347a7b12520f37f9a2
 3 | MonoImporter:
 4 |   externalObjects: {}
 5 |   serializedVersion: 2
 6 |   defaultReferences: []
 7 |   executionOrder: 0
 8 |   icon: {instanceID: 0}
 9 |   userData: 
10 |   assetBundleName: 
11 |   assetBundleVariant: 
12 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Scripts/Core/MetaAttributes/MetaAttribute.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | 
3 | namespace NaughtyAttributes
4 | {
5 |     public class MetaAttribute : Attribute, INaughtyAttribute
6 |     {
7 |     }
8 | }
9 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Scripts/Core/MetaAttributes/ReadOnlyAttribute.cs:
--------------------------------------------------------------------------------
 1 | using System;
 2 | 
 3 | namespace NaughtyAttributes
 4 | {
 5 |     [AttributeUsage(AttributeTargets.Field, AllowMultiple = false, Inherited = true)]
 6 |     public class ReadOnlyAttribute : MetaAttribute
 7 |     {
 8 | 
 9 |     }
10 | }
11 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Scripts/Core/MetaAttributes/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 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Scripts/Core/MetaAttributes/ShowIfAttribute.cs:
--------------------------------------------------------------------------------
 1 | using System;
 2 | 
 3 | namespace NaughtyAttributes
 4 | {
 5 |     [AttributeUsage(AttributeTargets.Field | AttributeTargets.Method, 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 |         public ShowIfAttribute(string enumName, object enumValue)
21 |             : base(enumName, enumValue as Enum)
22 |         {
23 |             Inverted = false;
24 |         }
25 |     }
26 | }
27 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 |         /// <summary>
12 |         ///		If this not null, <see cref="Conditions"/>[0] is name of an enum variable.
13 |         /// </summary>
14 |         public Enum EnumValue { get; private set; }
15 | 
16 |         public ShowIfAttributeBase(string condition)
17 |         {
18 |             ConditionOperator = EConditionOperator.And;
19 |             Conditions = new string[1] { condition };
20 |         }
21 | 
22 |         public ShowIfAttributeBase(EConditionOperator conditionOperator, params string[] conditions)
23 |         {
24 |             ConditionOperator = conditionOperator;
25 |             Conditions = conditions;
26 |         }
27 | 
28 |         public ShowIfAttributeBase(string enumName, Enum enumValue)
29 |             : this(enumName)
30 |         {
31 |             if (enumValue == null)
32 |             {
33 |                 throw new ArgumentNullException(nameof(enumValue), "This parameter must be an enum value.");
34 |             }
35 | 
36 |             EnumValue = enumValue;
37 |         }
38 |     }
39 | }
40 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | }


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Scripts/Core/NaughtyAttributes.Core.asmdef.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 776d03a35f1b52c4a9aed9f56d7b4229
3 | AssemblyDefinitionImporter:
4 |   externalObjects: {}
5 |   userData: 
6 |   assetBundleName: 
7 |   assetBundleVariant: 
8 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Scripts/Core/Utility/EColor.cs:
--------------------------------------------------------------------------------
 1 | using UnityEngine;
 2 | 
 3 | namespace NaughtyAttributes
 4 | {
 5 |     public enum EColor
 6 |     {
 7 |         Clear,
 8 |         White,
 9 |         Black,
10 |         Gray,
11 |         Red,
12 |         Pink,
13 |         Orange,
14 |         Yellow,
15 |         Green,
16 |         Blue,
17 |         Indigo,
18 |         Violet
19 |     }
20 | 
21 |     public static class EColorExtensions
22 |     {
23 |         public static Color GetColor(this EColor color)
24 |         {
25 |             switch (color)
26 |             {
27 |                 case EColor.Clear:
28 |                     return new Color32(0, 0, 0, 0);
29 |                 case EColor.White:
30 |                     return new Color32(255, 255, 255, 255);
31 |                 case EColor.Black:
32 |                     return new Color32(0, 0, 0, 255);
33 |                 case EColor.Gray:
34 |                     return new Color32(128, 128, 128, 255);
35 |                 case EColor.Red:
36 |                     return new Color32(255, 0, 63, 255);
37 |                 case EColor.Pink:
38 |                     return new Color32(255, 152, 203, 255);
39 |                 case EColor.Orange:
40 |                     return new Color32(255, 128, 0, 255);
41 |                 case EColor.Yellow:
42 |                     return new Color32(255, 211, 0, 255);
43 |                 case EColor.Green:
44 |                     return new Color32(98, 200, 79, 255);
45 |                 case EColor.Blue:
46 |                     return new Color32(0, 135, 189, 255);
47 |                 case EColor.Indigo:
48 |                     return new Color32(75, 0, 130, 255);
49 |                 case EColor.Violet:
50 |                     return new Color32(128, 0, 255, 255);
51 |                 default:
52 |                     return new Color32(0, 0, 0, 255);
53 |             }
54 |         }
55 |     }
56 | }
57 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Scripts/Core/ValidatorAttributes/ValidatorAttribute.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | 
3 | namespace NaughtyAttributes
4 | {
5 |     public class ValidatorAttribute : Attribute, INaughtyAttribute
6 |     {
7 |     }
8 | }
9 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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());
24 | 
25 |             DrawInfoBox(infoBoxRect, infoBoxAttribute.Text, infoBoxAttribute.Type);
26 |         }
27 | 
28 |         private float GetHelpBoxHeight()
29 |         {
30 |             InfoBoxAttribute infoBoxAttribute = (InfoBoxAttribute)attribute;
31 |             float minHeight = EditorGUIUtility.singleLineHeight * 2.0f;
32 |             float desiredHeight = GUI.skin.box.CalcHeight(new GUIContent(infoBoxAttribute.Text), EditorGUIUtility.currentViewWidth);
33 |             float height = Mathf.Max(minHeight, desiredHeight);
34 | 
35 |             return height;
36 |         }
37 | 
38 |         private void DrawInfoBox(Rect rect, string infoText, EInfoBoxType infoBoxType)
39 |         {
40 |             MessageType messageType = MessageType.None;
41 |             switch (infoBoxType)
42 |             {
43 |                 case EInfoBoxType.Normal:
44 |                     messageType = MessageType.Info;
45 |                     break;
46 | 
47 |                 case EInfoBoxType.Warning:
48 |                     messageType = MessageType.Warning;
49 |                     break;
50 | 
51 |                 case EInfoBoxType.Error:
52 |                     messageType = MessageType.Error;
53 |                     break;
54 |             }
55 | 
56 |             NaughtyEditorGUI.HelpBox(rect, infoText, messageType);
57 |         }
58 |     }
59 | }
60 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | }


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Scripts/Editor/NaughtyAttributes.Editor.asmdef.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: f88fb04354076c646a4107a491394033
3 | AssemblyDefinitionImporter:
4 |   externalObjects: {}
5 |   userData: 
6 |   assetBundleName: 
7 |   assetBundleVariant: 
8 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Scripts/Editor/PropertyDrawers/AnimatorParamPropertyDrawer.cs.meta:
--------------------------------------------------------------------------------
 1 | fileFormatVersion: 2
 2 | guid: 98ff8cb1bcefae740a68d9a5c5ee3563
 3 | MonoImporter:
 4 |   externalObjects: {}
 5 |   serializedVersion: 2
 6 |   defaultReferences: []
 7 |   executionOrder: 0
 8 |   icon: {instanceID: 0}
 9 |   userData: 
10 |   assetBundleName: 
11 |   assetBundleVariant: 
12 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Scripts/Editor/PropertyDrawers/CurveRangePropertyDrawer.cs:
--------------------------------------------------------------------------------
 1 | using UnityEngine;
 2 | using UnityEditor;
 3 | 
 4 | namespace NaughtyAttributes.Editor
 5 | {
 6 |     [CustomPropertyDrawer(typeof(CurveRangeAttribute))]
 7 |     public class CurveRangePropertyDrawer : PropertyDrawerBase
 8 |     {
 9 |         protected override float GetPropertyHeight_Internal(SerializedProperty property, GUIContent label)
10 |         {
11 |             float propertyHeight = property.propertyType == SerializedPropertyType.AnimationCurve
12 |                 ? GetPropertyHeight(property)
13 |                 : GetPropertyHeight(property) + GetHelpBoxHeight();
14 | 
15 |             return propertyHeight;
16 |         }
17 | 
18 |         protected override void OnGUI_Internal(Rect rect, SerializedProperty property, GUIContent label)
19 |         {
20 |             EditorGUI.BeginProperty(rect, label, property);
21 | 
22 |             // Check user error
23 |             if (property.propertyType != SerializedPropertyType.AnimationCurve)
24 |             {
25 |                 string message = string.Format("Field {0} is not an AnimationCurve", property.name);
26 |                 DrawDefaultPropertyAndHelpBox(rect, property, message, MessageType.Warning);
27 |                 return;
28 |             }
29 | 
30 |             var curveRangeAttribute = (CurveRangeAttribute)attribute;
31 |             var curveRanges = new Rect(
32 |                 curveRangeAttribute.Min.x,
33 |                 curveRangeAttribute.Min.y,
34 |                 curveRangeAttribute.Max.x - curveRangeAttribute.Min.x,
35 |                 curveRangeAttribute.Max.y - curveRangeAttribute.Min.y);
36 | 
37 |             EditorGUI.CurveField(
38 |                 rect,
39 |                 property,
40 |                 curveRangeAttribute.Color == EColor.Clear ? Color.green : curveRangeAttribute.Color.GetColor(),
41 |                 curveRanges,
42 |                 label);
43 | 
44 |             EditorGUI.EndProperty();
45 |         }
46 |     }
47 | }
48 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Scripts/Editor/PropertyDrawers/CurveRangePropertyDrawer.cs.meta:
--------------------------------------------------------------------------------
 1 | fileFormatVersion: 2
 2 | guid: 798b8c99fbc072a4b83ee387e472a2bd
 3 | MonoImporter:
 4 |   externalObjects: {}
 5 |   serializedVersion: 2
 6 |   defaultReferences: []
 7 |   executionOrder: 0
 8 |   icon: {instanceID: 0}
 9 |   userData: 
10 |   assetBundleName: 
11 |   assetBundleVariant: 
12 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Scripts/Editor/PropertyDrawers/ExpandablePropertyDrawer.cs.meta:
--------------------------------------------------------------------------------
 1 | fileFormatVersion: 2
 2 | guid: d1ddb7194615bdc4e8b2088c8d165d8b
 3 | MonoImporter:
 4 |   externalObjects: {}
 5 |   serializedVersion: 2
 6 |   defaultReferences: []
 7 |   executionOrder: 0
 8 |   icon: {instanceID: 0}
 9 |   userData: 
10 |   assetBundleName: 
11 |   assetBundleVariant: 
12 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Scripts/Editor/PropertyDrawers/InputAxisPropertyDrawer.cs:
--------------------------------------------------------------------------------
 1 | using System.Collections.Generic;
 2 | using System.IO;
 3 | using System.Linq;
 4 | using UnityEditor;
 5 | using UnityEngine;
 6 | 
 7 | namespace NaughtyAttributes.Editor
 8 | {
 9 |     [CustomPropertyDrawer(typeof(InputAxisAttribute))]
10 |     public class InputAxisPropertyDrawer : PropertyDrawerBase
11 |     {
12 |         private static readonly string AssetPath = Path.Combine("ProjectSettings", "InputManager.asset");
13 |         private const string AxesPropertyPath = "m_Axes";
14 |         private const string NamePropertyPath = "m_Name";
15 | 
16 |         protected override float GetPropertyHeight_Internal(SerializedProperty property, GUIContent label)
17 |         {
18 |             return (property.propertyType == SerializedPropertyType.String)
19 |                 ? GetPropertyHeight(property)
20 |                 : GetPropertyHeight(property) + GetHelpBoxHeight();
21 |         }
22 | 
23 |         protected override void OnGUI_Internal(Rect rect, SerializedProperty property, GUIContent label)
24 |         {
25 |             EditorGUI.BeginProperty(rect, label, property);
26 | 
27 |             if (property.propertyType == SerializedPropertyType.String)
28 |             {
29 |                 var inputManagerAsset = AssetDatabase.LoadAssetAtPath(AssetPath, typeof(object));
30 |                 var inputManager = new SerializedObject(inputManagerAsset);
31 | 
32 |                 var axesProperty = inputManager.FindProperty(AxesPropertyPath);
33 |                 var axesSet = new HashSet<string>();
34 |                 axesSet.Add("(None)");
35 | 
36 |                 for (var i = 0; i < axesProperty.arraySize; i++)
37 |                 {
38 |                     var axis = axesProperty.GetArrayElementAtIndex(i).FindPropertyRelative(NamePropertyPath).stringValue;
39 |                     axesSet.Add(axis);
40 |                 }
41 | 
42 |                 var axes = axesSet.ToArray();
43 | 
44 |                 string propertyString = property.stringValue;
45 |                 int index = 0;
46 |                 // check if there is an entry that matches the entry and get the index
47 |                 // we skip index 0 as that is a special custom case
48 |                 for (int i = 1; i < axes.Length; i++)
49 |                 {
50 |                     if (axes[i].Equals(propertyString, System.StringComparison.Ordinal))
51 |                     {
52 |                         index = i;
53 |                         break;
54 |                     }
55 |                 }
56 | 
57 |                 // Draw the popup box with the current selected index
58 |                 int newIndex = EditorGUI.Popup(rect, label.text, index, axes);
59 | 
60 |                 // Adjust the actual string value of the property based on the selection
61 |                 string newValue = newIndex > 0 ? axes[newIndex] : string.Empty;
62 | 
63 |                 if (!property.stringValue.Equals(newValue, System.StringComparison.Ordinal))
64 |                 {
65 |                     property.stringValue = newValue;
66 |                 }
67 |             }
68 |             else
69 |             {
70 |                 string message = string.Format("{0} supports only string fields", typeof(InputAxisAttribute).Name);
71 |                 DrawDefaultPropertyAndHelpBox(rect, property, message, MessageType.Warning);
72 |             }
73 | 
74 |             EditorGUI.EndProperty();
75 |         }
76 |     }
77 | }
78 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Scripts/Editor/PropertyDrawers/LayerPropertyDrawer.cs:
--------------------------------------------------------------------------------
 1 | using UnityEngine;
 2 | using UnityEditor;
 3 | using System;
 4 | 
 5 | namespace NaughtyAttributes.Editor
 6 | {
 7 |     [CustomPropertyDrawer(typeof(LayerAttribute))]
 8 |     public class LayerPropertyDrawer : PropertyDrawerBase
 9 |     {
10 |         private const string TypeWarningMessage = "{0} must be an int or a string";
11 | 
12 |         protected override float GetPropertyHeight_Internal(SerializedProperty property, GUIContent label)
13 |         {
14 |             bool validPropertyType = property.propertyType == SerializedPropertyType.String || property.propertyType == SerializedPropertyType.Integer;
15 | 
16 |             return validPropertyType
17 |                 ? GetPropertyHeight(property)
18 |                 : GetPropertyHeight(property) + GetHelpBoxHeight();
19 |         }
20 | 
21 |         protected override void OnGUI_Internal(Rect rect, SerializedProperty property, GUIContent label)
22 |         {
23 |             EditorGUI.BeginProperty(rect, label, property);
24 | 
25 |             switch (property.propertyType)
26 |             {
27 |                 case SerializedPropertyType.String:
28 |                     DrawPropertyForString(rect, property, label, GetLayers());
29 |                     break;
30 |                 case SerializedPropertyType.Integer:
31 |                     DrawPropertyForInt(rect, property, label, GetLayers());
32 |                     break;
33 |                 default:
34 |                     string message = string.Format(TypeWarningMessage, property.name);
35 |                     DrawDefaultPropertyAndHelpBox(rect, property, message, MessageType.Warning);
36 |                     break;
37 |             }
38 | 
39 |             EditorGUI.EndProperty();
40 |         }
41 | 
42 |         private string[] GetLayers()
43 |         {
44 |             return UnityEditorInternal.InternalEditorUtility.layers;
45 |         }
46 | 
47 |         private static void DrawPropertyForString(Rect rect, SerializedProperty property, GUIContent label, string[] layers)
48 |         {
49 |             int index = IndexOf(layers, property.stringValue);
50 |             int newIndex = EditorGUI.Popup(rect, label.text, index, layers);
51 |             string newLayer = layers[newIndex];
52 | 
53 |             if (!property.stringValue.Equals(newLayer, StringComparison.Ordinal))
54 |             {
55 |                 property.stringValue = layers[newIndex];
56 |             }
57 |         }
58 | 
59 |         private static void DrawPropertyForInt(Rect rect, SerializedProperty property, GUIContent label, string[] layers)
60 |         {
61 |             int index = 0;
62 |             string layerName = LayerMask.LayerToName(property.intValue);
63 |             for (int i = 0; i < layers.Length; i++)
64 |             {
65 |                 if (layerName.Equals(layers[i], StringComparison.Ordinal))
66 |                 {
67 |                     index = i;
68 |                     break;
69 |                 }
70 |             }
71 | 
72 |             int newIndex = EditorGUI.Popup(rect, label.text, index, layers);
73 |             string newLayerName = layers[newIndex];
74 |             int newLayerNumber = LayerMask.NameToLayer(newLayerName);
75 | 
76 |             if (property.intValue != newLayerNumber)
77 |             {
78 |                 property.intValue = newLayerNumber;
79 |             }
80 |         }
81 | 
82 |         private static int IndexOf(string[] layers, string layer)
83 |         {
84 |             var index = Array.IndexOf(layers, layer);
85 |             return Mathf.Clamp(index, 0, layers.Length - 1);
86 |         }
87 |     }
88 | }
89 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Scripts/Editor/PropertyDrawers/LayerPropertyDrawer.cs.meta:
--------------------------------------------------------------------------------
 1 | fileFormatVersion: 2
 2 | guid: 7278ba0893ab7d940b5f944e5b1cf1a7
 3 | MonoImporter:
 4 |   externalObjects: {}
 5 |   serializedVersion: 2
 6 |   defaultReferences: []
 7 |   executionOrder: 0
 8 |   icon: {instanceID: 0}
 9 |   userData: 
10 |   assetBundleName: 
11 |   assetBundleVariant: 
12 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Scripts/Editor/PropertyDrawers/PropertyDrawerBase.cs:
--------------------------------------------------------------------------------
 1 | using UnityEditor;
 2 | using UnityEngine;
 3 | 
 4 | namespace NaughtyAttributes.Editor
 5 | {
 6 |     public abstract class PropertyDrawerBase : PropertyDrawer
 7 |     {
 8 |         public sealed override void OnGUI(Rect rect, SerializedProperty property, GUIContent label)
 9 |         {
10 |             // Check if visible
11 |             bool visible = PropertyUtility.IsVisible(property);
12 |             if (!visible)
13 |             {
14 |                 return;
15 |             }
16 | 
17 |             // Validate
18 |             ValidatorAttribute[] validatorAttributes = PropertyUtility.GetAttributes<ValidatorAttribute>(property);
19 |             foreach (var validatorAttribute in validatorAttributes)
20 |             {
21 |                 validatorAttribute.GetValidator().ValidateProperty(property);
22 |             }
23 | 
24 |             // Check if enabled and draw
25 |             EditorGUI.BeginChangeCheck();
26 |             bool enabled = PropertyUtility.IsEnabled(property);
27 | 
28 |             using (new EditorGUI.DisabledScope(disabled: !enabled))
29 |             {
30 |                 OnGUI_Internal(rect, property, PropertyUtility.GetLabel(property));
31 |             }
32 | 
33 |             // Call OnValueChanged callbacks
34 |             if (EditorGUI.EndChangeCheck())
35 |             {
36 |                 PropertyUtility.CallOnValueChangedCallbacks(property);
37 |             }
38 |         }
39 | 
40 |         protected abstract void OnGUI_Internal(Rect rect, SerializedProperty property, GUIContent label);
41 | 
42 |         sealed override public float GetPropertyHeight(SerializedProperty property, GUIContent label)
43 |         {
44 |             bool visible = PropertyUtility.IsVisible(property);
45 |             if (!visible)
46 |             {
47 |                 return 0.0f;
48 |             }
49 | 
50 |             return GetPropertyHeight_Internal(property, label);
51 |         }
52 | 
53 |         protected virtual float GetPropertyHeight_Internal(SerializedProperty property, GUIContent label)
54 |         {
55 |             return EditorGUI.GetPropertyHeight(property, includeChildren: true);
56 |         }
57 | 
58 |         protected float GetPropertyHeight(SerializedProperty property)
59 |         {
60 |             SpecialCaseDrawerAttribute specialCaseAttribute = PropertyUtility.GetAttribute<SpecialCaseDrawerAttribute>(property);
61 |             if (specialCaseAttribute != null)
62 |             {
63 |                 return specialCaseAttribute.GetDrawer().GetPropertyHeight(property);
64 |             }
65 | 
66 |             return EditorGUI.GetPropertyHeight(property, includeChildren: true);
67 |         }
68 | 
69 |         public virtual float GetHelpBoxHeight()
70 |         {
71 |             return EditorGUIUtility.singleLineHeight * 2.0f;
72 |         }
73 | 
74 |         public void DrawDefaultPropertyAndHelpBox(Rect rect, SerializedProperty property, string message, MessageType messageType)
75 |         {
76 |             float indentLength = NaughtyEditorGUI.GetIndentLength(rect);
77 |             Rect helpBoxRect = new Rect(
78 |                 rect.x + indentLength,
79 |                 rect.y,
80 |                 rect.width - indentLength,
81 |                 GetHelpBoxHeight());
82 | 
83 |             NaughtyEditorGUI.HelpBox(helpBoxRect, message, MessageType.Warning, context: property.serializedObject.targetObject);
84 | 
85 |             Rect propertyRect = new Rect(
86 |                 rect.x,
87 |                 rect.y + GetHelpBoxHeight(),
88 |                 rect.width,
89 |                 GetPropertyHeight(property));
90 | 
91 |             EditorGUI.PropertyField(propertyRect, property, true);
92 |         }
93 |     }
94 | }
95 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Scripts/Editor/PropertyDrawers/ResizableTextAreaPropertyDrawer.cs:
--------------------------------------------------------------------------------
 1 | using UnityEngine;
 2 | using UnityEditor;
 3 | using System.Text.RegularExpressions;
 4 | using System;
 5 | 
 6 | namespace NaughtyAttributes.Editor
 7 | {
 8 |     [CustomPropertyDrawer(typeof(ResizableTextAreaAttribute))]
 9 |     public class ResizableTextAreaPropertyDrawer : PropertyDrawerBase
10 |     {
11 |         protected override float GetPropertyHeight_Internal(SerializedProperty property, GUIContent label)
12 |         {
13 |             if (property.propertyType == SerializedPropertyType.String)
14 |             {
15 |                 float labelHeight = EditorGUIUtility.singleLineHeight;
16 |                 float textAreaHeight = GetTextAreaHeight(property.stringValue);
17 |                 return labelHeight + textAreaHeight;
18 |             }
19 |             else
20 |             {
21 |                 return GetPropertyHeight(property) + GetHelpBoxHeight();
22 |             }
23 |         }
24 | 
25 |         protected override void OnGUI_Internal(Rect rect, SerializedProperty property, GUIContent label)
26 |         {
27 |             EditorGUI.BeginProperty(rect, label, property);
28 | 
29 |             if (property.propertyType == SerializedPropertyType.String)
30 |             {
31 |                 Rect labelRect = new Rect()
32 |                 {
33 |                     x = rect.x,
34 |                     y = rect.y,
35 |                     width = rect.width,
36 |                     height = EditorGUIUtility.singleLineHeight
37 |                 };
38 | 
39 |                 EditorGUI.LabelField(labelRect, label.text);
40 | 
41 |                 EditorGUI.BeginChangeCheck();
42 | 
43 |                 Rect textAreaRect = new Rect()
44 |                 {
45 |                     x = labelRect.x,
46 |                     y = labelRect.y + EditorGUIUtility.singleLineHeight,
47 |                     width = labelRect.width,
48 |                     height = GetTextAreaHeight(property.stringValue)
49 |                 };
50 | 
51 |                 string textAreaValue = EditorGUI.TextArea(textAreaRect, property.stringValue);
52 | 
53 |                 if (EditorGUI.EndChangeCheck())
54 |                 {
55 |                     property.stringValue = textAreaValue;
56 |                 }
57 |             }
58 |             else
59 |             {
60 |                 string message = typeof(ResizableTextAreaAttribute).Name + " can only be used on string fields";
61 |                 DrawDefaultPropertyAndHelpBox(rect, property, message, MessageType.Warning);
62 |             }
63 | 
64 |             EditorGUI.EndProperty();
65 |         }
66 | 
67 |         private int GetNumberOfLines(string text)
68 |         {
69 |             string content = Regex.Replace(text, @"\r\n|\n\r|\r|\n", Environment.NewLine);
70 |             string[] lines = content.Split(new string[] { Environment.NewLine }, StringSplitOptions.None);
71 |             return lines.Length;
72 |         }
73 | 
74 |         private float GetTextAreaHeight(string text)
75 |         {
76 |             float height = (EditorGUIUtility.singleLineHeight - 3.0f) * GetNumberOfLines(text) + 3.0f;
77 |             return height;
78 |         }
79 |     }
80 | }
81 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Scripts/Editor/PropertyDrawers/SortingLayerPropertyDrawer.cs.meta:
--------------------------------------------------------------------------------
 1 | fileFormatVersion: 2
 2 | guid: b0ed20ed34d732246a98cde96351fccb
 3 | MonoImporter:
 4 |   externalObjects: {}
 5 |   serializedVersion: 2
 6 |   defaultReferences: []
 7 |   executionOrder: 0
 8 |   icon: {instanceID: 0}
 9 |   userData: 
10 |   assetBundleName: 
11 |   assetBundleVariant: 
12 | 


--------------------------------------------------------------------------------
/Assets/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 |             EditorGUI.BeginProperty(rect, label, property);
20 | 
21 |             if (property.propertyType == SerializedPropertyType.String)
22 |             {
23 |                 // generate the taglist + custom tags
24 |                 List<string> tagList = new List<string>();
25 |                 tagList.Add("(None)");
26 |                 tagList.Add("Untagged");
27 |                 tagList.AddRange(UnityEditorInternal.InternalEditorUtility.tags);
28 | 
29 |                 string propertyString = property.stringValue;
30 |                 int index = 0;
31 |                 // check if there is an entry that matches the entry and get the index
32 |                 // we skip index 0 as that is a special custom case
33 |                 for (int i = 1; i < tagList.Count; i++)
34 |                 {
35 |                     if (tagList[i].Equals(propertyString, System.StringComparison.Ordinal))
36 |                     {
37 |                         index = i;
38 |                         break;
39 |                     }
40 |                 }
41 | 
42 |                 // Draw the popup box with the current selected index
43 |                 int newIndex = EditorGUI.Popup(rect, label.text, index, tagList.ToArray());
44 | 
45 |                 // Adjust the actual string value of the property based on the selection
46 |                 string newValue = newIndex > 0 ? tagList[newIndex] : string.Empty;
47 | 
48 |                 if (!property.stringValue.Equals(newValue, System.StringComparison.Ordinal))
49 |                 {
50 |                     property.stringValue = newValue;
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 |             EditorGUI.EndProperty();
60 |         }
61 |     }
62 | }
63 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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(Rect rect, 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<ValidatorAttribute>(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 | 
30 |             using (new EditorGUI.DisabledScope(disabled: !enabled))
31 |             {
32 |                 OnGUI_Internal(rect, property, PropertyUtility.GetLabel(property));
33 |             }
34 | 
35 |             // Call OnValueChanged callbacks
36 |             if (EditorGUI.EndChangeCheck())
37 |             {
38 |                 PropertyUtility.CallOnValueChangedCallbacks(property);
39 |             }
40 |         }
41 | 
42 |         public float GetPropertyHeight(SerializedProperty property)
43 |         {
44 |             return GetPropertyHeight_Internal(property);
45 |         }
46 | 
47 |         protected abstract void OnGUI_Internal(Rect rect, SerializedProperty property, GUIContent label);
48 |         protected abstract float GetPropertyHeight_Internal(SerializedProperty property);
49 |     }
50 | 
51 |     public static class SpecialCaseDrawerAttributeExtensions
52 |     {
53 |         private static Dictionary<Type, SpecialCasePropertyDrawerBase> _drawersByAttributeType;
54 | 
55 |         static SpecialCaseDrawerAttributeExtensions()
56 |         {
57 |             _drawersByAttributeType = new Dictionary<Type, SpecialCasePropertyDrawerBase>();
58 |             _drawersByAttributeType[typeof(ReorderableListAttribute)] = ReorderableListPropertyDrawer.Instance;
59 |         }
60 | 
61 |         public static SpecialCasePropertyDrawerBase GetDrawer(this SpecialCaseDrawerAttribute attr)
62 |         {
63 |             SpecialCasePropertyDrawerBase drawer;
64 |             if (_drawersByAttributeType.TryGetValue(attr.GetType(), out drawer))
65 |             {
66 |                 return drawer;
67 |             }
68 |             else
69 |             {
70 |                 return null;
71 |             }
72 |         }
73 |     }
74 | }
75 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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<MaxValueAttribute>(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 if (property.propertyType == SerializedPropertyType.Vector2)
27 |             {
28 |                 property.vector2Value = Vector2.Min(property.vector2Value, new Vector2(maxValueAttribute.MaxValue, maxValueAttribute.MaxValue));
29 |             }
30 |             else if (property.propertyType == SerializedPropertyType.Vector3)
31 |             {
32 |                 property.vector3Value = Vector3.Min(property.vector3Value, new Vector3(maxValueAttribute.MaxValue, maxValueAttribute.MaxValue, maxValueAttribute.MaxValue));
33 |             }
34 |             else if (property.propertyType == SerializedPropertyType.Vector4)
35 |             {
36 |                 property.vector4Value = Vector4.Min(property.vector4Value, new Vector4(maxValueAttribute.MaxValue, maxValueAttribute.MaxValue, maxValueAttribute.MaxValue, maxValueAttribute.MaxValue));
37 |             }
38 |             else if (property.propertyType == SerializedPropertyType.Vector2Int)
39 |             {
40 |                 property.vector2IntValue = Vector2Int.Min(property.vector2IntValue, new Vector2Int((int)maxValueAttribute.MaxValue, (int)maxValueAttribute.MaxValue));
41 |             }
42 |             else if (property.propertyType == SerializedPropertyType.Vector3Int)
43 |             {
44 |                 property.vector3IntValue = Vector3Int.Min(property.vector3IntValue, new Vector3Int((int)maxValueAttribute.MaxValue, (int)maxValueAttribute.MaxValue, (int)maxValueAttribute.MaxValue));
45 |             }
46 |             else
47 |             {
48 |                 string warning = maxValueAttribute.GetType().Name + " can be used only on int, float, Vector or VectorInt fields";
49 |                 Debug.LogWarning(warning, property.serializedObject.targetObject);
50 |             }
51 |         }
52 |     }
53 | }
54 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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<MinValueAttribute>(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 if (property.propertyType == SerializedPropertyType.Vector2)
27 |             {
28 |                 property.vector2Value = Vector2.Max(property.vector2Value, new Vector2(minValueAttribute.MinValue, minValueAttribute.MinValue));
29 |             }
30 |             else if (property.propertyType == SerializedPropertyType.Vector3)
31 |             {
32 |                 property.vector3Value = Vector3.Max(property.vector3Value, new Vector3(minValueAttribute.MinValue, minValueAttribute.MinValue, minValueAttribute.MinValue));
33 |             }
34 |             else if (property.propertyType == SerializedPropertyType.Vector4)
35 |             {
36 |                 property.vector4Value = Vector4.Max(property.vector4Value, new Vector4(minValueAttribute.MinValue, minValueAttribute.MinValue, minValueAttribute.MinValue, minValueAttribute.MinValue));
37 |             }
38 |             else if (property.propertyType == SerializedPropertyType.Vector2Int)
39 |             {
40 |                 property.vector2IntValue = Vector2Int.Max(property.vector2IntValue, new Vector2Int((int)minValueAttribute.MinValue, (int)minValueAttribute.MinValue));
41 |             }
42 |             else if (property.propertyType == SerializedPropertyType.Vector3Int)
43 |             {
44 |                 property.vector3IntValue = Vector3Int.Max(property.vector3IntValue, new Vector3Int((int)minValueAttribute.MinValue, (int)minValueAttribute.MinValue, (int)minValueAttribute.MinValue));
45 |             }
46 |             else
47 |             {
48 |                 string warning = minValueAttribute.GetType().Name + " can be used only on int, float, Vector or VectorInt fields";
49 |                 Debug.LogWarning(warning, property.serializedObject.targetObject);
50 |             }
51 |         }
52 |     }
53 | }
54 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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<Type, PropertyValidatorBase> _validatorsByAttributeType;
15 | 
16 |         static ValidatorAttributeExtensions()
17 |         {
18 |             _validatorsByAttributeType = new Dictionary<Type, PropertyValidatorBase>();
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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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<RequiredAttribute>(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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Scripts/Editor/Utility/ButtonUtility.cs:
--------------------------------------------------------------------------------
 1 | using UnityEngine;
 2 | using System.Reflection;
 3 | using System.Collections.Generic;
 4 | 
 5 | namespace NaughtyAttributes.Editor
 6 | {
 7 |     public static class ButtonUtility
 8 |     {
 9 |         public static bool IsEnabled(Object target, MethodInfo method)
10 |         {
11 |             EnableIfAttributeBase enableIfAttribute = method.GetCustomAttribute<EnableIfAttributeBase>();
12 |             if (enableIfAttribute == null)
13 |             {
14 |                 return true;
15 |             }
16 | 
17 |             List<bool> conditionValues = PropertyUtility.GetConditionValues(target, enableIfAttribute.Conditions);
18 |             if (conditionValues.Count > 0)
19 |             {
20 |                 bool enabled = PropertyUtility.GetConditionsFlag(conditionValues, enableIfAttribute.ConditionOperator, enableIfAttribute.Inverted);
21 |                 return enabled;
22 |             }
23 |             else
24 |             {
25 |                 string message = enableIfAttribute.GetType().Name + " needs a valid boolean condition field, property or method name to work";
26 |                 Debug.LogWarning(message, target);
27 | 
28 |                 return false;
29 |             }
30 |         }
31 | 
32 |         public static bool IsVisible(Object target, MethodInfo method)
33 |         {
34 |             ShowIfAttributeBase showIfAttribute = method.GetCustomAttribute<ShowIfAttributeBase>();
35 |             if (showIfAttribute == null)
36 |             {
37 |                 return true;
38 |             }
39 | 
40 |             List<bool> conditionValues = PropertyUtility.GetConditionValues(target, showIfAttribute.Conditions);
41 |             if (conditionValues.Count > 0)
42 |             {
43 |                 bool enabled = PropertyUtility.GetConditionsFlag(conditionValues, showIfAttribute.ConditionOperator, showIfAttribute.Inverted);
44 |                 return enabled;
45 |             }
46 |             else
47 |             {
48 |                 string message = showIfAttribute.GetType().Name + " needs a valid boolean condition field, property or method name to work";
49 |                 Debug.LogWarning(message, target);
50 | 
51 |                 return false;
52 |             }
53 |         }
54 |     }
55 | }
56 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Scripts/Editor/Utility/ButtonUtility.cs.meta:
--------------------------------------------------------------------------------
 1 | fileFormatVersion: 2
 2 | guid: a273f81125ec52d4cb5dec2228afda0e
 3 | MonoImporter:
 4 |   externalObjects: {}
 5 |   serializedVersion: 2
 6 |   defaultReferences: []
 7 |   executionOrder: 0
 8 |   icon: {instanceID: 0}
 9 |   userData: 
10 |   assetBundleName: 
11 |   assetBundleVariant: 
12 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Scripts/Editor/Utility/SavedBool.cs:
--------------------------------------------------------------------------------
 1 | using UnityEditor;
 2 | 
 3 | namespace NaughtyAttributes.Editor
 4 | {
 5 |     internal class SavedBool
 6 |     {
 7 |         private bool _value;
 8 |         private string _name;
 9 | 
10 |         public bool Value
11 |         {
12 |             get
13 |             {
14 |                 return _value;
15 |             }
16 |             set
17 |             {
18 |                 if (_value == value)
19 |                 {
20 |                     return;
21 |                 }
22 | 
23 |                 _value = value;
24 |                 EditorPrefs.SetBool(_name, value);
25 |             }
26 |         }
27 | 
28 |         public SavedBool(string name, bool value)
29 |         {
30 |             _name = name;
31 |             _value = EditorPrefs.GetBool(name, value);
32 |         }
33 |     }
34 | }


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Scripts/Editor/Utility/SavedBool.cs.meta:
--------------------------------------------------------------------------------
 1 | fileFormatVersion: 2
 2 | guid: 18613afe66b0c0344a2be5f430bf965a
 3 | MonoImporter:
 4 |   externalObjects: {}
 5 |   serializedVersion: 2
 6 |   defaultReferences: []
 7 |   executionOrder: 0
 8 |   icon: {instanceID: 0}
 9 |   userData: 
10 |   assetBundleName: 
11 |   assetBundleVariant: 
12 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Scripts/Test.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: ce2bd76b5676a434bb8a84254f67f1dc
3 | folderAsset: yes
4 | DefaultImporter:
5 |   externalObjects: {}
6 |   userData: 
7 |   assetBundleName: 
8 |   assetBundleVariant: 
9 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Scripts/Test/AnimatorParamTest.cs:
--------------------------------------------------------------------------------
 1 | using UnityEngine;
 2 | 
 3 | namespace NaughtyAttributes.Test
 4 | {
 5 |     public class AnimatorParamTest : MonoBehaviour
 6 |     {
 7 |         public Animator animator0;
 8 | 
 9 |         [AnimatorParam("animator0")]
10 |         public int hash0;
11 | 
12 |         [AnimatorParam("animator0")]
13 |         public string name0;
14 | 
15 |         public AnimatorParamNest1 nest1;
16 | 
17 |         [Button("Log 'hash0' and 'name0'")]
18 |         private void TestLog()
19 |         {
20 |             Debug.Log(
quot;hash0 = {hash0}");
21 |             Debug.Log(
quot;name0 = {name0}");
22 |             Debug.Log(
quot;Animator.StringToHash(name0) = {Animator.StringToHash(name0)}");
23 |         }
24 |     }
25 | 
26 |     [System.Serializable]
27 |     public class AnimatorParamNest1
28 |     {
29 |         public Animator animator1;
30 |         private Animator Animator1 => animator1;
31 | 
32 |         [AnimatorParam("Animator1", AnimatorControllerParameterType.Bool)]
33 |         public int hash1;
34 | 
35 |         [AnimatorParam("Animator1", AnimatorControllerParameterType.Float)]
36 |         public string name1;
37 | 
38 |         public AnimatorParamNest2 nest2;
39 |     }
40 | 
41 |     [System.Serializable]
42 |     public class AnimatorParamNest2
43 |     {
44 |         public Animator animator2;
45 |         private Animator GetAnimator2() => animator2;
46 | 
47 |         [AnimatorParam("GetAnimator2", AnimatorControllerParameterType.Int)]
48 |         public int hash1;
49 | 
50 |         [AnimatorParam("GetAnimator2", AnimatorControllerParameterType.Trigger)]
51 |         public string name1;
52 |     }
53 | }
54 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Scripts/Test/AnimatorParamTest.cs.meta:
--------------------------------------------------------------------------------
 1 | fileFormatVersion: 2
 2 | guid: 9bff20ccdde00fc49a62bad6a4ef9982
 3 | MonoImporter:
 4 |   externalObjects: {}
 5 |   serializedVersion: 2
 6 |   defaultReferences: []
 7 |   executionOrder: 0
 8 |   icon: {instanceID: 0}
 9 |   userData: 
10 |   assetBundleName: 
11 |   assetBundleVariant: 
12 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Scripts/Test/ButtonTest.cs:
--------------------------------------------------------------------------------
 1 | using System.Collections;
 2 | using UnityEngine;
 3 | 
 4 | namespace NaughtyAttributes.Test
 5 | {
 6 |     public class ButtonTest : MonoBehaviour
 7 |     {
 8 |         public int myInt;
 9 | 
10 |         [Button(enabledMode: EButtonEnableMode.Always)]
11 |         private void IncrementMyInt()
12 |         {
13 |             myInt++;
14 |         }
15 | 
16 |         [Button("Decrement My Int", EButtonEnableMode.Editor)]
17 |         private void DecrementMyInt()
18 |         {
19 |             myInt--;
20 |         }
21 | 
22 |         [Button(enabledMode: EButtonEnableMode.Playmode)]
23 |         private void LogMyInt(string prefix = "MyInt = ")
24 |         {
25 |             Debug.Log(prefix + myInt);
26 |         }
27 | 
28 |         [Button("StartCoroutine")]
29 |         private IEnumerator IncrementMyIntCoroutine()
30 |         {
31 |             int seconds = 5;
32 |             for (int i = 0; i < seconds; i++)
33 |             {
34 |                 myInt++;
35 |                 yield return new WaitForSeconds(1.0f);
36 |             }
37 |         }
38 |     }
39 | }
40 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Scripts/Test/CurveRangeTest.cs:
--------------------------------------------------------------------------------
 1 | using UnityEngine;
 2 | 
 3 | namespace NaughtyAttributes.Test
 4 | {
 5 |     public class CurveRangeTest : MonoBehaviour
 6 |     {
 7 |         [CurveRange(0f, 0f, 1f, 1f, EColor.Yellow)]
 8 |         public AnimationCurve[] curves;
 9 | 
10 |         [CurveRange(-1, -1, 1, 1, EColor.Red)]
11 |         public AnimationCurve curve;
12 | 
13 |         [CurveRange(EColor.Orange)]
14 |         public AnimationCurve curve1;
15 | 
16 |         [CurveRange(0, 0, 10, 10)]
17 |         public AnimationCurve curve2;
18 | 
19 |         public CurveRangeNest1 nest1;
20 | 
21 |         [System.Serializable]
22 |         public class CurveRangeNest1
23 |         {
24 |             [CurveRange(0, 0, 1, 1, EColor.Green)]
25 |             public AnimationCurve curve;
26 | 
27 |             public CurveRangeNest2 nest2;
28 |         }
29 | 
30 |         [System.Serializable]
31 |         public class CurveRangeNest2
32 |         {
33 |             [CurveRange(0, 0, 5, 5, EColor.Blue)]
34 |             public AnimationCurve curve;
35 |         }
36 |     }
37 | }
38 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Scripts/Test/CurveRangeTest.cs.meta:
--------------------------------------------------------------------------------
 1 | fileFormatVersion: 2
 2 | guid: 6587b100d001e7e46b9aaae7f1180b40
 3 | MonoImporter:
 4 |   externalObjects: {}
 5 |   serializedVersion: 2
 6 |   defaultReferences: []
 7 |   executionOrder: 0
 8 |   icon: {instanceID: 0}
 9 |   userData: 
10 |   assetBundleName: 
11 |   assetBundleVariant: 
12 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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<string> StringValues { get { return new List<string>() { "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<Vector3> GetVectorValues()
36 |         {
37 |             return new DropdownList<Vector3>()
38 |             {
39 |                 { "Right", Vector3.right },
40 |                 { "Up", Vector3.up },
41 |                 { "Forward", Vector3.forward }
42 |             };
43 |         }
44 |     }
45 | }
46 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Scripts/Test/ExpandableTest.cs:
--------------------------------------------------------------------------------
 1 | using UnityEngine;
 2 | 
 3 | namespace NaughtyAttributes.Test
 4 | {
 5 |     public class ExpandableTest : MonoBehaviour
 6 |     {
 7 |         // See #294
 8 |         public int precedingField = 5;
 9 | 
10 |         [Expandable]
11 |         public ScriptableObject obj0;
12 | 
13 |         public ExpandableScriptableObjectNest1 nest1;
14 |     }
15 | 
16 |     [System.Serializable]
17 |     public class ExpandableScriptableObjectNest1
18 |     {
19 |         [Expandable]
20 |         public ScriptableObject obj1;
21 | 
22 |         public ExpandableScriptableObjectNest2 nest2;
23 |     }
24 | 
25 |     [System.Serializable]
26 |     public class ExpandableScriptableObjectNest2
27 |     {
28 |         [Expandable]
29 |         public ScriptableObject obj2;
30 |     }
31 | }
32 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Scripts/Test/ExpandableTest.cs.meta:
--------------------------------------------------------------------------------
 1 | fileFormatVersion: 2
 2 | guid: 64c4c9aee2b494d44be9bb0b7f12ed7c
 3 | MonoImporter:
 4 |   externalObjects: {}
 5 |   serializedVersion: 2
 6 |   defaultReferences: []
 7 |   executionOrder: 0
 8 |   icon: {instanceID: 0}
 9 |   userData: 
10 |   assetBundleName: 
11 |   assetBundleVariant: 
12 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Scripts/Test/FoldoutTest.cs:
--------------------------------------------------------------------------------
 1 | using UnityEngine;
 2 | 
 3 | namespace NaughtyAttributes.Test
 4 | {
 5 |     public class FoldoutTest : MonoBehaviour
 6 |     {
 7 |         [Foldout("Integers")]
 8 |         public int int0;
 9 |         [Foldout("Integers")]
10 |         public int int1;
11 | 
12 |         [Foldout("Floats")]
13 |         public float float0;
14 |         [Foldout("Floats")]
15 |         public float float1;
16 | 
17 |         [Foldout("Sliders")]
18 |         [MinMaxSlider(0, 1)]
19 |         public Vector2 slider0;
20 |         [Foldout("Sliders")]
21 |         [MinMaxSlider(0, 1)]
22 |         public Vector2 slider1;
23 | 
24 |         public string str0;
25 |         public string str1;
26 | 
27 |         [Foldout("Transforms")]
28 |         public Transform trans0;
29 |         [Foldout("Transforms")]
30 |         public Transform trans1;
31 |     }
32 | }
33 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Scripts/Test/FoldoutTest.cs.meta:
--------------------------------------------------------------------------------
 1 | fileFormatVersion: 2
 2 | guid: 3b437215d92efa74ea85ff726ca0dd09
 3 | MonoImporter:
 4 |   externalObjects: {}
 5 |   serializedVersion: 2
 6 |   defaultReferences: []
 7 |   executionOrder: 0
 8 |   icon: {instanceID: 0}
 9 |   userData: 
10 |   assetBundleName: 
11 |   assetBundleVariant: 
12 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Scripts/Test/LayerTest.cs:
--------------------------------------------------------------------------------
 1 | using UnityEngine;
 2 | 
 3 | namespace NaughtyAttributes.Test
 4 | {
 5 |     public class LayerTest : MonoBehaviour
 6 |     {
 7 |         [Layer]
 8 |         public int layerNumber0;
 9 | 
10 |         [Layer]
11 |         public string layerName0;
12 | 
13 |         public LayerNest1 nest1;
14 | 
15 |         [Button]
16 |         public void DebugLog()
17 |         {
18 |             Debug.LogFormat("{0} = {1}", nameof(layerNumber0), layerNumber0);
19 |             Debug.LogFormat("{0} = {1}", nameof(layerName0), layerName0);
20 |             Debug.LogFormat("LayerToName({0}) = {1}", layerNumber0, LayerMask.LayerToName(layerNumber0));
21 |             Debug.LogFormat("NameToLayer({0}) = {1}", layerName0, LayerMask.NameToLayer(layerName0));
22 |         }
23 |     }
24 | 
25 |     [System.Serializable]
26 |     public class LayerNest1
27 |     {
28 |         [Layer]
29 |         public int layerNumber1;
30 | 
31 |         [Layer]
32 |         public string layerName1;
33 | 
34 |         public LayerNest2 nest2;
35 |     }
36 | 
37 |     [System.Serializable]
38 |     public struct LayerNest2
39 |     {
40 |         [Layer]
41 |         public int layerNumber2;
42 | 
43 |         [Layer]
44 |         public string layerName2;
45 |     }
46 | }
47 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Scripts/Test/LayerTest.cs.meta:
--------------------------------------------------------------------------------
 1 | fileFormatVersion: 2
 2 | guid: 460459d6ac76acd4d872f94cf444e6fa
 3 | MonoImporter:
 4 |   externalObjects: {}
 5 |   serializedVersion: 2
 6 |   defaultReferences: []
 7 |   executionOrder: 0
 8 |   icon: {instanceID: 0}
 9 |   userData: 
10 |   assetBundleName: 
11 |   assetBundleVariant: 
12 | 


--------------------------------------------------------------------------------
/Assets/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(1, 11)]
26 |         public Vector2Int minMaxSlider2 = new Vector2Int(6, 11);
27 |     }
28 | }
29 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | }


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Scripts/Test/NaughtyAttributes.Test.asmdef.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: df1dea26b8503004d92d621e88aa9421
3 | AssemblyDefinitionImporter:
4 |   externalObjects: {}
5 |   userData: 
6 |   assetBundleName: 
7 |   assetBundleVariant: 
8 | 


--------------------------------------------------------------------------------
/Assets/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()
12 |         {
13 |             Debug.LogFormat("int0: {0}", int0);
14 |         }
15 | 
16 |         private void OnValueChangedMethod2()
17 |         {
18 |             Debug.LogFormat("int0: {0}", 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()
32 |         {
33 |             Debug.LogFormat("int1: {0}", 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()
47 |         {
48 |             Debug.LogFormat("int2: {0}", int2);
49 |         }
50 |     }
51 | }
52 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Scripts/Test/ProgressBarTest.cs:
--------------------------------------------------------------------------------
 1 | using UnityEngine;
 2 | 
 3 | namespace NaughtyAttributes.Test
 4 | {
 5 |     public class ProgressBarTest : MonoBehaviour
 6 |     {
 7 |         [Header("Constant ProgressBar")]
 8 |         [ProgressBar("Health", 100, EColor.Red)]
 9 |         public float health = 50.0f;
10 | 
11 |         [Header("Nested ProgressBar")]
12 |         public ProgressBarNest1 nest1;
13 | 
14 |         [Header("Dynamic ProgressBar")]
15 |         [ProgressBar("Elixir", "maxElixir", color: EColor.Violet)]
16 |         public int elixir = 50;
17 |         public int maxElixir = 100;
18 |     }
19 | 
20 |     [System.Serializable]
21 |     public class ProgressBarNest1
22 |     {
23 |         [ProgressBar("Mana", 100, EColor.Blue)]
24 |         public float mana = 25.0f;
25 | 
26 |         public ProgressBarNest2 nest2;
27 |     }
28 | 
29 |     [System.Serializable]
30 |     public class ProgressBarNest2
31 |     {
32 |         [ProgressBar("Stamina", 100, EColor.Green)]
33 |         public float stamina = 75.0f;
34 |     }
35 | }
36 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 |         [AllowNesting]
18 |         public float readOnlyFloat = 3.14f;
19 | 
20 |         public ReadOnlyNest2 nest2;
21 |     }
22 | 
23 |     [System.Serializable]
24 |     public struct ReadOnlyNest2
25 |     {
26 |         [ReadOnly]
27 |         [AllowNesting]
28 |         public string readOnlyString;
29 |     }
30 | }
31 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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<Vector3> vectorList;
13 | 
14 |         [ReorderableList]
15 |         public List<SomeStruct> structList;
16 | 
17 |         [ReorderableList]
18 |         public GameObject[] gameObjectsList;
19 | 
20 |         [ReorderableList]
21 |         public List<Transform> transformsList;
22 | 
23 |         [ReorderableList]
24 |         public List<MonoBehaviour> monoBehavioursList;
25 |     }
26 | 
27 |     [System.Serializable]
28 |     public struct SomeStruct
29 |     {
30 |         public int Int;
31 |         public float Float;
32 |         public Vector3 Vector;
33 |     }
34 | }
35 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 int scene2;
27 |     }
28 | }
29 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 |         [ShowNativeProperty]
26 |         private ushort MyUShort
27 |         {
28 |             get
29 |             {
30 |                 return ushort.MaxValue;
31 |             }
32 |         }
33 | 
34 |         [ShowNativeProperty]
35 |         private short MyShort
36 |         {
37 |             get
38 |             {
39 |                 return short.MaxValue;
40 |             }
41 |         }
42 | 
43 |         [ShowNativeProperty]
44 |         private ulong MyULong
45 |         {
46 |             get
47 |             {
48 |                 return ulong.MaxValue;
49 |             }
50 |         }
51 | 
52 |         [ShowNativeProperty]
53 |         private long MyLong
54 |         {
55 |             get
56 |             {
57 |                 return long.MaxValue;
58 |             }
59 |         }
60 | 
61 |         [ShowNativeProperty]
62 |         private uint MyUInt
63 |         {
64 |             get
65 |             {
66 |                 return uint.MaxValue;
67 |             }
68 |         }
69 | 
70 |         [ShowNativeProperty]
71 |         private int MyInt
72 |         {
73 |             get
74 |             {
75 |                 return int.MaxValue;
76 |             }
77 |         }
78 |     }
79 | }
80 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 ushort myUShort = ushort.MaxValue;
10 | 
11 |         [ShowNonSerializedField]
12 |         private short myShort = short.MaxValue;
13 | 
14 |         [ShowNonSerializedField]
15 |         private uint myUInt = uint.MaxValue;
16 | 
17 |         [ShowNonSerializedField]
18 |         private int myInt = 10;
19 | 
20 |         [ShowNonSerializedField]
21 |         private ulong myULong = ulong.MaxValue;
22 | 
23 |         [ShowNonSerializedField]
24 |         private long myLong = long.MaxValue;
25 | 
26 |         [ShowNonSerializedField]
27 |         private const float PI = 3.14159f;
28 | 
29 |         [ShowNonSerializedField]
30 |         private static readonly Vector3 CONST_VECTOR = Vector3.one;
31 | #pragma warning restore 414
32 |     }
33 | }
34 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Scripts/Test/SortingLayerTest.cs:
--------------------------------------------------------------------------------
 1 | using UnityEngine;
 2 | 
 3 | namespace NaughtyAttributes.Test
 4 | {
 5 |     public class SortingLayerTest : MonoBehaviour
 6 |     {
 7 |         [SortingLayer]
 8 |         public int layerNumber0;
 9 | 
10 |         [SortingLayer]
11 |         public string layerName0;
12 | 
13 |         public SortingLayerNest1 nest1;
14 | 
15 |         [Button]
16 |         public void DebugLog()
17 |         {
18 |             Debug.LogFormat("{0} = {1}", nameof(layerNumber0), layerNumber0);
19 |             Debug.LogFormat("{0} = {1}", nameof(layerName0), layerName0);
20 |             Debug.LogFormat("LayerToName({0}) = {1}", layerNumber0, SortingLayer.IDToName(layerNumber0));
21 |             Debug.LogFormat("NameToLayer({0}) = {1}", layerName0, SortingLayer.NameToID(layerName0));
22 |         }
23 |     }
24 | 
25 |     [System.Serializable]
26 |     public class SortingLayerNest1
27 |     {
28 |         [SortingLayer]
29 |         public int layerNumber1;
30 | 
31 |         [SortingLayer]
32 |         public string layerName1;
33 | 
34 |         public SortingLayerNest2 nest2;
35 |     }
36 | 
37 |     [System.Serializable]
38 |     public struct SortingLayerNest2
39 |     {
40 |         [SortingLayer]
41 |         public int layerNumber2;
42 | 
43 |         [SortingLayer]
44 |         public string layerName2;
45 |     }
46 | }
47 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Scripts/Test/SortingLayerTest.cs.meta:
--------------------------------------------------------------------------------
 1 | fileFormatVersion: 2
 2 | guid: 8ed73e666d447964d93c4840f05423dc
 3 | MonoImporter:
 4 |   externalObjects: {}
 5 |   serializedVersion: 2
 6 |   defaultReferences: []
 7 |   executionOrder: 0
 8 |   icon: {instanceID: 0}
 9 |   userData: 
10 |   assetBundleName: 
11 |   assetBundleVariant: 
12 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 |         public ValidateInputInheritedNest inheritedNest;
18 |     }
19 | 
20 |     [System.Serializable]
21 |     public class ValidateInputNest1
22 |     {
23 |         [ValidateInput("NotZero1")]
24 |         [AllowNesting] // Because it's nested we need to explicitly allow nesting
25 |         public int int1;
26 | 
27 |         private bool NotZero1(int value)
28 |         {
29 |             return value != 0;
30 |         }
31 | 
32 |         public ValidateInputNest2 nest2;
33 |     }
34 | 
35 |     [System.Serializable]
36 |     public class ValidateInputNest2
37 |     {
38 |         [ValidateInput("NotZero2")]
39 |         [AllowNesting] // Because it's nested we need to explicitly allow nesting
40 |         public int int2;
41 | 
42 |         private bool NotZero2(int value)
43 |         {
44 |             return value != 0;
45 |         }
46 |     }
47 | 
48 |     [System.Serializable]
49 |     public class ValidateInputInheritedNest : ValidateInputNest1
50 |     {
51 |     }
52 | }
53 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/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 |     }
 9 | 
10 |     [System.Serializable]
11 |     public class MyClass
12 |     {
13 |     }
14 | 
15 |     [System.Serializable]
16 |     public struct MyStruct
17 |     {
18 |     }
19 | }
20 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Scripts/Test/_NaughtyScriptableObject.cs:
--------------------------------------------------------------------------------
 1 | using System.Collections.Generic;
 2 | using UnityEngine;
 3 | 
 4 | namespace NaughtyAttributes.Test
 5 | {
 6 |     //[CreateAssetMenu(fileName = "NaughtyScriptableObject", menuName = "NaughtyAttributes/_NaughtyScriptableObject")]
 7 |     public class _NaughtyScriptableObject : ScriptableObject
 8 |     {
 9 |         [Expandable]
10 |         public List<_TestScriptableObjectA> listA;
11 |     }
12 | }
13 | 


--------------------------------------------------------------------------------
/Assets/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 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Scripts/Test/_TestScriptableObjectA.cs:
--------------------------------------------------------------------------------
 1 | using UnityEngine;
 2 | using System.Collections.Generic;
 3 | 
 4 | namespace NaughtyAttributes.Test
 5 | {
 6 |     //[CreateAssetMenu(fileName = "TestScriptableObjectA", menuName = "NaughtyAttributes/TestScriptableObjectA")]
 7 |     public class _TestScriptableObjectA : ScriptableObject
 8 |     {
 9 |         [Expandable]
10 |         public List<_TestScriptableObjectB> listB;
11 |     }
12 | }


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Scripts/Test/_TestScriptableObjectA.cs.meta:
--------------------------------------------------------------------------------
 1 | fileFormatVersion: 2
 2 | guid: 19472ac11eae27a4b804f354ca7d9c00
 3 | MonoImporter:
 4 |   externalObjects: {}
 5 |   serializedVersion: 2
 6 |   defaultReferences: []
 7 |   executionOrder: 0
 8 |   icon: {instanceID: 0}
 9 |   userData: 
10 |   assetBundleName: 
11 |   assetBundleVariant: 
12 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Scripts/Test/_TestScriptableObjectB.cs:
--------------------------------------------------------------------------------
 1 | using UnityEngine;
 2 | using System.Collections.Generic;
 3 | 
 4 | namespace NaughtyAttributes.Test
 5 | {
 6 |     //[CreateAssetMenu(fileName = "TestScriptableObjectB", menuName = "NaughtyAttributes/TestScriptableObjectB")]
 7 |     public class _TestScriptableObjectB : ScriptableObject
 8 |     {
 9 |         [MinMaxSlider(0, 10)]
10 |         public Vector2Int slider;
11 |     }
12 | }


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/Scripts/Test/_TestScriptableObjectB.cs.meta:
--------------------------------------------------------------------------------
 1 | fileFormatVersion: 2
 2 | guid: c2b396aeebc9d984da298eee313896bc
 3 | MonoImporter:
 4 |   externalObjects: {}
 5 |   serializedVersion: 2
 6 |   defaultReferences: []
 7 |   executionOrder: 0
 8 |   icon: {instanceID: 0}
 9 |   userData: 
10 |   assetBundleName: 
11 |   assetBundleVariant: 
12 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/package.json:
--------------------------------------------------------------------------------
 1 | {
 2 |   "name": "com.dbrizov.naughtyattributes",
 3 |   "displayName": "NaughtyAttributes",
 4 |   "version": "2.1.4",
 5 |   "unity": "2018.4",
 6 |   "description": "NaughtyAttributes is an extension for the Unity Inspector.",
 7 |   "keywords": [ "attribute", "inspector", "editor" ],
 8 |   "category": "editor extensions",
 9 |   "dependencies": {},
10 |   "samples": [
11 |     {
12 |       "displayName": "Demo Scene",
13 |       "description": "Demo Scene",
14 |       "path": "Samples/DemoScene"
15 |     }
16 |   ],
17 |   "author": {
18 |     "name": "Denis Rizov",
19 |     "url": "https://github.com/dbrizov"
20 |   }
21 | }
22 | 


--------------------------------------------------------------------------------
/Assets/NaughtyAttributes/package.json.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: db9a5ca20403b0344ae64015de8f8c86
3 | TextScriptImporter:
4 |   externalObjects: {}
5 |   userData: 
6 |   assetBundleName: 
7 |   assetBundleVariant: 
8 | 


--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
 1 | MIT License
 2 | 
 3 | Copyright (c) 2017 Denis Rizov
 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 | 


--------------------------------------------------------------------------------
/Packages/manifest.json:
--------------------------------------------------------------------------------
 1 | {
 2 |   "dependencies": {
 3 |     "com.unity.2d.sprite": "1.0.0",
 4 |     "com.unity.2d.tilemap": "1.0.0",
 5 |     "com.unity.ide.visualstudio": "2.0.14",
 6 |     "com.unity.textmeshpro": "3.0.6",
 7 |     "com.unity.ugui": "1.0.0",
 8 |     "com.unity.modules.ai": "1.0.0",
 9 |     "com.unity.modules.androidjni": "1.0.0",
10 |     "com.unity.modules.animation": "1.0.0",
11 |     "com.unity.modules.assetbundle": "1.0.0",
12 |     "com.unity.modules.audio": "1.0.0",
13 |     "com.unity.modules.cloth": "1.0.0",
14 |     "com.unity.modules.director": "1.0.0",
15 |     "com.unity.modules.imageconversion": "1.0.0",
16 |     "com.unity.modules.imgui": "1.0.0",
17 |     "com.unity.modules.jsonserialize": "1.0.0",
18 |     "com.unity.modules.particlesystem": "1.0.0",
19 |     "com.unity.modules.physics": "1.0.0",
20 |     "com.unity.modules.physics2d": "1.0.0",
21 |     "com.unity.modules.screencapture": "1.0.0",
22 |     "com.unity.modules.terrain": "1.0.0",
23 |     "com.unity.modules.terrainphysics": "1.0.0",
24 |     "com.unity.modules.tilemap": "1.0.0",
25 |     "com.unity.modules.ui": "1.0.0",
26 |     "com.unity.modules.uielements": "1.0.0",
27 |     "com.unity.modules.umbra": "1.0.0",
28 |     "com.unity.modules.unityanalytics": "1.0.0",
29 |     "com.unity.modules.unitywebrequest": "1.0.0",
30 |     "com.unity.modules.unitywebrequestassetbundle": "1.0.0",
31 |     "com.unity.modules.unitywebrequestaudio": "1.0.0",
32 |     "com.unity.modules.unitywebrequesttexture": "1.0.0",
33 |     "com.unity.modules.unitywebrequestwww": "1.0.0",
34 |     "com.unity.modules.vehicles": "1.0.0",
35 |     "com.unity.modules.video": "1.0.0",
36 |     "com.unity.modules.vr": "1.0.0",
37 |     "com.unity.modules.wind": "1.0.0",
38 |     "com.unity.modules.xr": "1.0.0"
39 |   }
40 | }
41 | 


--------------------------------------------------------------------------------
/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 |   m_Volume: 1
 7 |   Rolloff Scale: 1
 8 |   Doppler Factor: 1
 9 |   Default Speaker Mode: 2
10 |   m_SampleRate: 0
11 |   m_DSPBufferSize: 0
12 |   m_VirtualVoiceCount: 512
13 |   m_RealVoiceCount: 32
14 |   m_SpatializerPlugin: 
15 |   m_AmbisonicDecoderPlugin: 
16 |   m_DisableAudio: 0
17 |   m_VirtualizeEffects: 1
18 | 


--------------------------------------------------------------------------------
/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 | 


--------------------------------------------------------------------------------
/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: 3
 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_EnablePCM: 1
18 |   m_LayerCollisionMatrix: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
19 |   m_AutoSimulation: 1
20 |   m_AutoSyncTransforms: 1
21 | 


--------------------------------------------------------------------------------
/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/NaughtyAttributes/Samples/DemoScene/DemoScene.unity
10 |     guid: 07845a5477be2b149a6f1cb32b5a3a5b
11 |   m_configObjects: {}
12 | 


--------------------------------------------------------------------------------
/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: 1
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;asmref;asmdef
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 | 


--------------------------------------------------------------------------------
/ProjectSettings/GraphicsSettings.asset:
--------------------------------------------------------------------------------
 1 | %YAML 1.1
 2 | %TAG !u! tag:unity3d.com,2011:
 3 | --- !u!30 &1
 4 | GraphicsSettings:
 5 |   m_ObjectHideFlags: 0
 6 |   serializedVersion: 12
 7 |   m_Deferred:
 8 |     m_Mode: 1
 9 |     m_Shader: {fileID: 69, guid: 0000000000000000f000000000000000, type: 0}
10 |   m_DeferredReflections:
11 |     m_Mode: 1
12 |     m_Shader: {fileID: 74, guid: 0000000000000000f000000000000000, type: 0}
13 |   m_ScreenSpaceShadows:
14 |     m_Mode: 1
15 |     m_Shader: {fileID: 64, guid: 0000000000000000f000000000000000, type: 0}
16 |   m_LegacyDeferred:
17 |     m_Mode: 1
18 |     m_Shader: {fileID: 63, guid: 0000000000000000f000000000000000, type: 0}
19 |   m_DepthNormals:
20 |     m_Mode: 1
21 |     m_Shader: {fileID: 62, guid: 0000000000000000f000000000000000, type: 0}
22 |   m_MotionVectors:
23 |     m_Mode: 1
24 |     m_Shader: {fileID: 75, guid: 0000000000000000f000000000000000, type: 0}
25 |   m_LightHalo:
26 |     m_Mode: 1
27 |     m_Shader: {fileID: 105, guid: 0000000000000000f000000000000000, type: 0}
28 |   m_LensFlare:
29 |     m_Mode: 1
30 |     m_Shader: {fileID: 102, guid: 0000000000000000f000000000000000, type: 0}
31 |   m_AlwaysIncludedShaders:
32 |   - {fileID: 7, guid: 0000000000000000f000000000000000, type: 0}
33 |   - {fileID: 15104, guid: 0000000000000000f000000000000000, type: 0}
34 |   - {fileID: 15105, guid: 0000000000000000f000000000000000, type: 0}
35 |   - {fileID: 15106, guid: 0000000000000000f000000000000000, type: 0}
36 |   - {fileID: 10753, guid: 0000000000000000f000000000000000, type: 0}
37 |   - {fileID: 10770, guid: 0000000000000000f000000000000000, type: 0}
38 |   m_PreloadedShaders: []
39 |   m_SpritesDefaultMaterial: {fileID: 10754, guid: 0000000000000000f000000000000000,
40 |     type: 0}
41 |   m_CustomRenderPipeline: {fileID: 0}
42 |   m_TransparencySortMode: 0
43 |   m_TransparencySortAxis: {x: 0, y: 0, z: 1}
44 |   m_DefaultRenderingPath: 1
45 |   m_DefaultMobileRenderingPath: 1
46 |   m_TierSettings: []
47 |   m_LightmapStripping: 0
48 |   m_FogStripping: 0
49 |   m_InstancingStripping: 0
50 |   m_LightmapKeepPlain: 1
51 |   m_LightmapKeepDirCombined: 1
52 |   m_LightmapKeepDynamicPlain: 1
53 |   m_LightmapKeepDynamicDirCombined: 1
54 |   m_LightmapKeepShadowMask: 1
55 |   m_LightmapKeepSubtractive: 1
56 |   m_FogKeepLinear: 1
57 |   m_FogKeepExp: 1
58 |   m_FogKeepExp2: 1
59 |   m_AlbedoSwatchInfos: []
60 |   m_LightsUseLinearIntensity: 0
61 |   m_LightsUseColorTemperature: 0
62 | 


--------------------------------------------------------------------------------
/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 | 


--------------------------------------------------------------------------------
/ProjectSettings/NetworkManager.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!149 &1
4 | NetworkManager:
5 |   m_ObjectHideFlags: 0
6 |   m_DebugLevel: 0
7 |   m_Sendrate: 15
8 |   m_AssetToPrefab: {}
9 | 


--------------------------------------------------------------------------------
/ProjectSettings/PackageManagerSettings.asset:
--------------------------------------------------------------------------------
 1 | %YAML 1.1
 2 | %TAG !u! tag:unity3d.com,2011:
 3 | --- !u!114 &1
 4 | MonoBehaviour:
 5 |   m_ObjectHideFlags: 61
 6 |   m_CorrespondingSourceObject: {fileID: 0}
 7 |   m_PrefabInstance: {fileID: 0}
 8 |   m_PrefabAsset: {fileID: 0}
 9 |   m_GameObject: {fileID: 0}
10 |   m_Enabled: 1
11 |   m_EditorHideFlags: 0
12 |   m_Script: {fileID: 13964, guid: 0000000000000000e000000000000000, type: 0}
13 |   m_Name: 
14 |   m_EditorClassIdentifier: 
15 |   m_EnablePreviewPackages: 0
16 |   m_EnablePackageDependencies: 0
17 |   m_AdvancedSettingsExpanded: 1
18 |   m_ScopedRegistriesSettingsExpanded: 1
19 |   oneTimeWarningShown: 0
20 |   m_Registries:
21 |   - m_Id: main
22 |     m_Name: 
23 |     m_Url: https://packages.unity.com
24 |     m_Scopes: []
25 |     m_IsDefault: 1
26 |     m_Capabilities: 7
27 |   m_UserSelectedRegistryName: 
28 |   m_UserAddingNewScopedRegistry: 0
29 |   m_RegistryInfoDraft:
30 |     m_ErrorMessage: 
31 |     m_Original:
32 |       m_Id: 
33 |       m_Name: 
34 |       m_Url: 
35 |       m_Scopes: []
36 |       m_IsDefault: 0
37 |       m_Capabilities: 0
38 |     m_Modified: 0
39 |     m_Name: 
40 |     m_Url: 
41 |     m_Scopes:
42 |     - 
43 |     m_SelectedScopeIndex: 0
44 | 


--------------------------------------------------------------------------------
/ProjectSettings/Physics2DSettings.asset:
--------------------------------------------------------------------------------
 1 | %YAML 1.1
 2 | %TAG !u! tag:unity3d.com,2011:
 3 | --- !u!19 &1
 4 | Physics2DSettings:
 5 |   m_ObjectHideFlags: 0
 6 |   serializedVersion: 3
 7 |   m_Gravity: {x: 0, y: -9.81}
 8 |   m_DefaultMaterial: {fileID: 0}
 9 |   m_VelocityIterations: 8
10 |   m_PositionIterations: 3
11 |   m_VelocityThreshold: 1
12 |   m_MaxLinearCorrection: 0.2
13 |   m_MaxAngularCorrection: 8
14 |   m_MaxTranslationSpeed: 100
15 |   m_MaxRotationSpeed: 360
16 |   m_BaumgarteScale: 0.2
17 |   m_BaumgarteTimeOfImpactScale: 0.75
18 |   m_TimeToSleep: 0.5
19 |   m_LinearSleepTolerance: 0.01
20 |   m_AngularSleepTolerance: 2
21 |   m_DefaultContactOffset: 0.01
22 |   m_AutoSimulation: 1
23 |   m_QueriesHitTriggers: 1
24 |   m_QueriesStartInColliders: 1
25 |   m_ChangeStopsCallbacks: 0
26 |   m_CallbacksOnDisable: 1
27 |   m_AutoSyncTransforms: 1
28 |   m_AlwaysShowColliders: 0
29 |   m_ShowColliderSleep: 1
30 |   m_ShowColliderContacts: 0
31 |   m_ShowColliderAABB: 0
32 |   m_ContactArrowScale: 0.2
33 |   m_ColliderAwakeColor: {r: 0.5686275, g: 0.95686275, b: 0.54509807, a: 0.7529412}
34 |   m_ColliderAsleepColor: {r: 0.5686275, g: 0.95686275, b: 0.54509807, a: 0.36078432}
35 |   m_ColliderContactColor: {r: 1, g: 0, b: 1, a: 0.6862745}
36 |   m_ColliderAABBColor: {r: 1, g: 1, b: 0, a: 0.2509804}
37 |   m_LayerCollisionMatrix: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
38 | 


--------------------------------------------------------------------------------
/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 |   m_DefaultList: []
7 | 


--------------------------------------------------------------------------------
/ProjectSettings/ProjectVersion.txt:
--------------------------------------------------------------------------------
1 | m_EditorVersion: 2020.3.26f1
2 | m_EditorVersionWithRevision: 2020.3.26f1 (7298b473bc1a)
3 | 


--------------------------------------------------------------------------------
/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 |   - name: SortingLayer0
45 |     uniqueID: 146379811
46 |     locked: 0
47 |   - name: SortingLayer1
48 |     uniqueID: 2158083597
49 |     locked: 0
50 |   - name: SortingLayer2
51 |     uniqueID: 1583436447
52 |     locked: 0
53 | 


--------------------------------------------------------------------------------
/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 | 


--------------------------------------------------------------------------------
/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 |   m_Enabled: 0
 7 |   m_TestMode: 0
 8 |   m_TestEventUrl: 
 9 |   m_TestConfigUrl: 
10 |   m_TestInitMode: 0
11 |   CrashReportingSettings:
12 |     m_EventUrl: https://perf-events.cloud.unity3d.com/api/events/crashes
13 |     m_NativeEventUrl: https://perf-events.cloud.unity3d.com/symbolicate
14 |     m_Enabled: 0
15 |     m_CaptureEditorExceptions: 1
16 |   UnityPurchasingSettings:
17 |     m_Enabled: 0
18 |     m_TestMode: 0
19 |   UnityAnalyticsSettings:
20 |     m_Enabled: 0
21 |     m_InitializeOnStartup: 1
22 |     m_TestMode: 0
23 |     m_TestEventUrl: 
24 |     m_TestConfigUrl: 
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 | 


--------------------------------------------------------------------------------
/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_RenderPipeSettingsPath: 
10 |   m_FixedTimeStep: 0.016666668
11 |   m_MaxDeltaTime: 0.05
12 | 


--------------------------------------------------------------------------------
/ProjectSettings/VersionControlSettings.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!890905787 &1
4 | VersionControlSettings:
5 |   m_ObjectHideFlags: 0
6 |   m_Mode: Visible Meta Files
7 |   m_CollabEditorSettings:
8 |     inProgressEnabled: 1
9 | 


--------------------------------------------------------------------------------
/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 | }


--------------------------------------------------------------------------------