From 59d26a915df6fcb9919ad1f51855bf6dcd8ea352 Mon Sep 17 00:00:00 2001 From: Blake Farrugia Date: Tue, 2 Jun 2026 18:57:47 -0400 Subject: [PATCH] Initial commit --- .gitattributes | 18 + .gitconfig | 6 + .gitignore | 7 + Assets/NuGet.config | 18 + Assets/NuGet.config.meta | 28 + Assets/Plugins.meta | 8 + Assets/Plugins/NuGet.meta | 8 + Assets/Plugins/NuGet/Castle.Core.5.1.1.meta | 8 + .../NuGet/Castle.Core.5.1.1/.signature.p7s | Bin 0 -> 11527 bytes ...L - Apache Software Foundation License.txt | 57 + ...pache Software Foundation License.txt.meta | 7 + .../NuGet/Castle.Core.5.1.1/CHANGELOG.md | 441 + .../NuGet/Castle.Core.5.1.1/CHANGELOG.md.meta | 7 + .../Castle.Core.5.1.1/Castle.Core.nuspec | 33 + .../Castle.Core.5.1.1/Castle.Core.nuspec.meta | 7 + .../Plugins/NuGet/Castle.Core.5.1.1/LICENSE | 13 + .../NuGet/Castle.Core.5.1.1/LICENSE.meta | 7 + .../NuGet/Castle.Core.5.1.1/castle-logo.png | 3 + .../Castle.Core.5.1.1/castle-logo.png.meta | 117 + .../Plugins/NuGet/Castle.Core.5.1.1/lib.meta | 8 + .../Castle.Core.5.1.1/lib/netstandard2.1.meta | 8 + .../lib/netstandard2.1/Castle.Core.dll | Bin 0 -> 382976 bytes .../lib/netstandard2.1/Castle.Core.dll.meta | 29 + .../lib/netstandard2.1/Castle.Core.xml | 5898 ++++++ .../lib/netstandard2.1/Castle.Core.xml.meta | 7 + .../NuGet/Castle.Core.5.1.1/readme.txt | 10 + .../NuGet/Castle.Core.5.1.1/readme.txt.meta | 7 + Assets/Plugins/NuGet/Moq.4.20.72.meta | 8 + .../Plugins/NuGet/Moq.4.20.72/.signature.p7s | Bin 0 -> 12943 bytes Assets/Plugins/NuGet/Moq.4.20.72/Moq.nuspec | 36 + .../Plugins/NuGet/Moq.4.20.72/Moq.nuspec.meta | 7 + Assets/Plugins/NuGet/Moq.4.20.72/icon.png | 3 + .../Plugins/NuGet/Moq.4.20.72/icon.png.meta | 117 + Assets/Plugins/NuGet/Moq.4.20.72/lib.meta | 8 + .../NuGet/Moq.4.20.72/lib/netstandard2.1.meta | 8 + .../Moq.4.20.72/lib/netstandard2.1/Moq.dll | Bin 0 -> 310784 bytes .../lib/netstandard2.1/Moq.dll.meta | 29 + Assets/Plugins/NuGet/Moq.4.20.72/readme.md | 102 + .../Plugins/NuGet/Moq.4.20.72/readme.md.meta | 7 + .../System.Diagnostics.EventLog.4.7.0.meta | 8 + .../.signature.p7s | Bin 0 -> 18704 bytes .../LICENSE.TXT | 23 + .../LICENSE.TXT.meta | 7 + .../System.Diagnostics.EventLog.nuspec | 49 + .../System.Diagnostics.EventLog.nuspec.meta | 7 + .../THIRD-PARTY-NOTICES.TXT | 375 + .../THIRD-PARTY-NOTICES.TXT.meta | 7 + .../lib.meta | 8 + .../lib/netstandard2.0.meta | 8 + .../System.Diagnostics.EventLog.dll | Bin 0 -> 49256 bytes .../System.Diagnostics.EventLog.dll.meta | 29 + .../System.Diagnostics.EventLog.xml | 2024 ++ .../System.Diagnostics.EventLog.xml.meta | 7 + .../useSharedDesignerContext.txt | 0 .../useSharedDesignerContext.txt.meta | 7 + .../version.txt | 1 + .../version.txt.meta | 7 + ...stem.Security.Principal.Windows.4.7.0.meta | 8 + .../.signature.p7s | Bin 0 -> 18702 bytes .../LICENSE.TXT | 23 + .../LICENSE.TXT.meta | 7 + .../System.Security.Principal.Windows.nuspec | 66 + ...tem.Security.Principal.Windows.nuspec.meta | 7 + .../THIRD-PARTY-NOTICES.TXT | 375 + .../THIRD-PARTY-NOTICES.TXT.meta | 7 + .../lib.meta | 8 + .../lib/netstandard2.0.meta | 8 + .../System.Security.Principal.Windows.dll | Bin 0 -> 33656 bytes ...System.Security.Principal.Windows.dll.meta | 29 + .../System.Security.Principal.Windows.xml | 1029 + ...System.Security.Principal.Windows.xml.meta | 7 + .../useSharedDesignerContext.txt | 0 .../useSharedDesignerContext.txt.meta | 7 + .../version.txt | 1 + .../version.txt.meta | 7 + Assets/Plugins/NuGet/packagefolder.txt | 1 + Assets/Plugins/NuGet/packagefolder.txt.meta | 7 + Assets/Scenes.meta | 8 + Assets/Scenes/SampleScene.unity | 254 + Assets/Scenes/SampleScene.unity.meta | 7 + Assets/Scenes/Tests.meta | 8 + Assets/Scenes/Tests/Test_Empty.unity | 254 + Assets/Scenes/Tests/Test_Empty.unity.meta | 7 + Assets/Scenes/Tests/Test_UnitMovement.unity | 15506 ++++++++++++++++ .../Scenes/Tests/Test_UnitMovement.unity.meta | 7 + Assets/Scripts.meta | 8 + Assets/Scripts/BracerLib.asmdef | 16 + Assets/Scripts/BracerLib.asmdef.meta | 7 + Assets/Scripts/Coroutines.meta | 8 + .../Coroutines/CancellableWaitForSeconds.cs | 31 + .../CancellableWaitForSeconds.cs.meta | 2 + Assets/Scripts/DI.meta | 8 + Assets/Scripts/DI/Dependency.cs | 18 + Assets/Scripts/DI/Dependency.cs.meta | 2 + Assets/Scripts/DI/DependencyCollection.cs | 16 + .../Scripts/DI/DependencyCollection.cs.meta | 2 + Assets/Scripts/DI/DependencyContext.cs | 28 + Assets/Scripts/DI/DependencyContext.cs.meta | 2 + Assets/Scripts/DI/DependencyFactory.cs | 59 + Assets/Scripts/DI/DependencyFactory.cs.meta | 2 + Assets/Scripts/DI/DependencyLifetime.cs | 8 + Assets/Scripts/DI/DependencyLifetime.cs.meta | 2 + Assets/Scripts/DI/DependencyProvider.cs | 59 + Assets/Scripts/DI/DependencyProvider.cs.meta | 2 + Assets/Scripts/DI/InjectFieldAttribute.cs | 6 + .../Scripts/DI/InjectFieldAttribute.cs.meta | 2 + Assets/Scripts/Data.meta | 8 + Assets/Scripts/Data/Layer.cs | 40 + Assets/Scripts/Data/Layer.cs.meta | 2 + Assets/Scripts/Editor.meta | 8 + Assets/Scripts/Editor/BracerLib.Editor.asmdef | 18 + .../Editor/BracerLib.Editor.asmdef.meta | 7 + Assets/Scripts/Editor/Data.meta | 8 + .../Editor/Data/LayerPropertyDrawer.cs | 26 + .../Editor/Data/LayerPropertyDrawer.cs.meta | 3 + Assets/Scripts/Editor/UI.meta | 8 + .../Editor/UI/NonDrawingGraphicEditor.cs | 28 + .../Editor/UI/NonDrawingGraphicEditor.cs.meta | 3 + Assets/Scripts/Editor/Utility.meta | 8 + .../Editor/Utility/EditorSearchField.cs | 92 + .../Editor/Utility/EditorSearchField.cs.meta | 3 + .../Editor/Utility/SearchableScrollView.cs | 287 + .../Utility/SearchableScrollView.cs.meta | 3 + .../Scripts/Editor/Utility/TextureUtility.cs | 21 + .../Editor/Utility/TextureUtility.cs.meta | 3 + Assets/Scripts/Events.meta | 8 + Assets/Scripts/Events/GameEventArgs.cs | 23 + Assets/Scripts/Events/GameEventArgs.cs.meta | 2 + Assets/Scripts/Events/Interfaces.meta | 8 + .../Scripts/Events/Interfaces/IGameEvent.cs | 11 + .../Events/Interfaces/IGameEvent.cs.meta | 3 + .../Scripts/Events/UnityInteractionEvent.cs | 9 + .../Events/UnityInteractionEvent.cs.meta | 2 + Assets/Scripts/StateManagement.meta | 8 + Assets/Scripts/StateManagement/GameState.cs | 13 + .../Scripts/StateManagement/GameState.cs.meta | 2 + .../StateManagement/GameStateController.cs | 349 + .../GameStateController.cs.meta | 2 + .../GameStateInvocationStatus.cs | 9 + .../GameStateInvocationStatus.cs.meta | 2 + .../StateManagement/GameStatePriority.cs | 11 + .../StateManagement/GameStatePriority.cs.meta | 2 + .../Scripts/StateManagement/Interfaces.meta | 8 + .../Interfaces/IGameStateIdentifier.cs | 7 + .../Interfaces/IGameStateIdentifier.cs.meta | 3 + .../Interfaces/IGameStateTrigger.cs | 4 + .../Interfaces/IGameStateTrigger.cs.meta | 3 + .../Interfaces/IGameStateTriggerInvoker.cs | 9 + .../IGameStateTriggerInvoker.cs.meta | 3 + .../Interfaces/IGameStateTriggerStatus.cs | 8 + .../IGameStateTriggerStatus.cs.meta | 3 + Assets/Scripts/StateManagement/StateMap.cs | 27 + .../Scripts/StateManagement/StateMap.cs.meta | 2 + Assets/Scripts/Tests.meta | 8 + Assets/Scripts/Tests/BracerLib.Tests.asmdef | 22 + .../Scripts/Tests/BracerLib.Tests.asmdef.meta | 7 + Assets/Scripts/Tests/MonoBehaviourTester.cs | 12 + .../Scripts/Tests/MonoBehaviourTester.cs.meta | 2 + Assets/Scripts/Tests/Objects.meta | 3 + .../Tests/Objects/ObjectLifetimeTests.cs | 130 + .../Tests/Objects/ObjectLifetimeTests.cs.meta | 3 + .../Scripts/Tests/Objects/ObjectMockTests.cs | 55 + .../Tests/Objects/ObjectMockTests.cs.meta | 3 + Assets/Scripts/Tests/Properties.meta | 3 + .../Scripts/Tests/Properties/PropertyTests.cs | 130 + .../Tests/Properties/PropertyTests.cs.meta | 3 + Assets/Scripts/Tests/Scenes.meta | 3 + Assets/Scripts/Tests/Scenes/SceneTests.cs | 45 + .../Scripts/Tests/Scenes/SceneTests.cs.meta | 3 + Assets/Scripts/Tests/TestBase.cs | 413 + Assets/Scripts/Tests/TestBase.cs.meta | 2 + Assets/Scripts/Tests/Utility.meta | 3 + .../Scripts/Tests/Utility/MathUtilityTests.cs | 63 + .../Tests/Utility/MathUtilityTests.cs.meta | 3 + .../Scripts/Tests/Utility/TriangulatorTest.cs | 129 + .../Tests/Utility/TriangulatorTest.cs.meta | 3 + Assets/Scripts/UI.meta | 8 + Assets/Scripts/UI/NonDrawingGraphic.cs | 21 + Assets/Scripts/UI/NonDrawingGraphic.cs.meta | 2 + Assets/Scripts/UI/SceneLoadingManager.cs | 88 + Assets/Scripts/UI/SceneLoadingManager.cs.meta | 2 + Assets/Scripts/Utility.meta | 8 + Assets/Scripts/Utility/ArrayExtensions.cs | 44 + .../Scripts/Utility/ArrayExtensions.cs.meta | 2 + Assets/Scripts/Utility/CameraUtility.cs | 31 + Assets/Scripts/Utility/CameraUtility.cs.meta | 2 + Assets/Scripts/Utility/CoroutineUtility.cs | 11 + .../Scripts/Utility/CoroutineUtility.cs.meta | 2 + Assets/Scripts/Utility/DirectoryUtility.cs | 18 + .../Scripts/Utility/DirectoryUtility.cs.meta | 2 + Assets/Scripts/Utility/EditorOnlyObject.cs | 15 + .../Scripts/Utility/EditorOnlyObject.cs.meta | 2 + Assets/Scripts/Utility/EnumUtility.cs | 15 + Assets/Scripts/Utility/EnumUtility.cs.meta | 2 + Assets/Scripts/Utility/Enumeration.cs | 44 + Assets/Scripts/Utility/Enumeration.cs.meta | 2 + Assets/Scripts/Utility/ListExtensions.cs | 32 + Assets/Scripts/Utility/ListExtensions.cs.meta | 2 + Assets/Scripts/Utility/MathUtility.cs | 93 + Assets/Scripts/Utility/MathUtility.cs.meta | 2 + Assets/Scripts/Utility/RandomUtility.cs | 113 + Assets/Scripts/Utility/RandomUtility.cs.meta | 2 + Assets/Scripts/Utility/RegexExtensions.cs | 34 + .../Scripts/Utility/RegexExtensions.cs.meta | 2 + Assets/Scripts/Utility/Triangulator.cs | 128 + Assets/Scripts/Utility/Triangulator.cs.meta | 2 + Assets/Scripts/Utility/UIUtility.cs | 48 + Assets/Scripts/Utility/UIUtility.cs.meta | 2 + Assets/Scripts/Utility/UnityLogger.cs | 59 + Assets/Scripts/Utility/UnityLogger.cs.meta | 2 + Assets/Scripts/Utility/Vector3Extensions.cs | 47 + .../Scripts/Utility/Vector3Extensions.cs.meta | 2 + Assets/Scripts/Utility/Vector4Int.cs | 292 + Assets/Scripts/Utility/Vector4Int.cs.meta | 2 + Assets/Settings.meta | 8 + Assets/Settings/Build Profiles.meta | 8 + .../Settings/Build Profiles/WindowsTest.asset | 1001 + .../Build Profiles/WindowsTest.asset.meta | 8 + Assets/Settings/DefaultVolumeProfile.asset | 982 + .../Settings/DefaultVolumeProfile.asset.meta | 8 + Assets/Settings/Mobile_RPAsset.asset | 143 + Assets/Settings/Mobile_RPAsset.asset.meta | 8 + Assets/Settings/Mobile_Renderer.asset | 52 + Assets/Settings/Mobile_Renderer.asset.meta | 8 + Assets/Settings/PC_RPAsset.asset | 143 + Assets/Settings/PC_RPAsset.asset.meta | 8 + Assets/Settings/PC_Renderer.asset | 95 + Assets/Settings/PC_Renderer.asset.meta | 8 + Assets/Settings/SampleSceneProfile.asset | 159 + Assets/Settings/SampleSceneProfile.asset.meta | 8 + ...niversalRenderPipelineGlobalSettings.asset | 433 + ...salRenderPipelineGlobalSettings.asset.meta | 8 + Assets/packages.config | 7 + Assets/packages.config.meta | 28 + BracerLib.Editor.csproj.DotSettings | 2 + BracerLib.sln | 541 + Packages/manifest.json | 51 + Packages/packages-lock.json | 496 + ProjectSettings/AudioManager.asset | 19 + ProjectSettings/ClusterInputManager.asset | 6 + ProjectSettings/DynamicsManager.asset | 36 + ProjectSettings/EditorBuildSettings.asset | 16 + ProjectSettings/EditorSettings.asset | 50 + ProjectSettings/GraphicsSettings.asset | 69 + ProjectSettings/InputManager.asset | 487 + ProjectSettings/MemorySettings.asset | 35 + ProjectSettings/MultiplayerManager.asset | 7 + ProjectSettings/NavMeshAreas.asset | 91 + ProjectSettings/PackageManagerSettings.asset | 43 + .../Settings.json | 46 + ProjectSettings/Physics2DSettings.asset | 56 + ProjectSettings/PresetManager.asset | 7 + ProjectSettings/ProjectSettings.asset | 943 + ProjectSettings/ProjectVersion.txt | 2 + ProjectSettings/QualitySettings.asset | 134 + ProjectSettings/SceneTemplateSettings.json | 121 + ProjectSettings/ShaderGraphSettings.asset | 19 + ProjectSettings/TagManager.asset | 76 + ProjectSettings/TimeManager.asset | 9 + ProjectSettings/URPProjectSettings.asset | 16 + ProjectSettings/UnityConnectSettings.asset | 40 + ProjectSettings/VFXManager.asset | 12 + ProjectSettings/VersionControlSettings.asset | 8 + ProjectSettings/XRSettings.asset | 10 + UserSettings/EditorUserSettings.asset | 36 + UserSettings/Layouts/default-6000.dwlt | 3648 ++++ UserSettings/Search.index | 13 + UserSettings/Search.settings | 34 + 268 files changed, 41240 insertions(+) create mode 100644 .gitattributes create mode 100644 .gitconfig create mode 100644 .gitignore create mode 100644 Assets/NuGet.config create mode 100644 Assets/NuGet.config.meta create mode 100644 Assets/Plugins.meta create mode 100644 Assets/Plugins/NuGet.meta create mode 100644 Assets/Plugins/NuGet/Castle.Core.5.1.1.meta create mode 100644 Assets/Plugins/NuGet/Castle.Core.5.1.1/.signature.p7s create mode 100644 Assets/Plugins/NuGet/Castle.Core.5.1.1/ASL - Apache Software Foundation License.txt create mode 100644 Assets/Plugins/NuGet/Castle.Core.5.1.1/ASL - Apache Software Foundation License.txt.meta create mode 100644 Assets/Plugins/NuGet/Castle.Core.5.1.1/CHANGELOG.md create mode 100644 Assets/Plugins/NuGet/Castle.Core.5.1.1/CHANGELOG.md.meta create mode 100644 Assets/Plugins/NuGet/Castle.Core.5.1.1/Castle.Core.nuspec create mode 100644 Assets/Plugins/NuGet/Castle.Core.5.1.1/Castle.Core.nuspec.meta create mode 100644 Assets/Plugins/NuGet/Castle.Core.5.1.1/LICENSE create mode 100644 Assets/Plugins/NuGet/Castle.Core.5.1.1/LICENSE.meta create mode 100644 Assets/Plugins/NuGet/Castle.Core.5.1.1/castle-logo.png create mode 100644 Assets/Plugins/NuGet/Castle.Core.5.1.1/castle-logo.png.meta create mode 100644 Assets/Plugins/NuGet/Castle.Core.5.1.1/lib.meta create mode 100644 Assets/Plugins/NuGet/Castle.Core.5.1.1/lib/netstandard2.1.meta create mode 100644 Assets/Plugins/NuGet/Castle.Core.5.1.1/lib/netstandard2.1/Castle.Core.dll create mode 100644 Assets/Plugins/NuGet/Castle.Core.5.1.1/lib/netstandard2.1/Castle.Core.dll.meta create mode 100644 Assets/Plugins/NuGet/Castle.Core.5.1.1/lib/netstandard2.1/Castle.Core.xml create mode 100644 Assets/Plugins/NuGet/Castle.Core.5.1.1/lib/netstandard2.1/Castle.Core.xml.meta create mode 100644 Assets/Plugins/NuGet/Castle.Core.5.1.1/readme.txt create mode 100644 Assets/Plugins/NuGet/Castle.Core.5.1.1/readme.txt.meta create mode 100644 Assets/Plugins/NuGet/Moq.4.20.72.meta create mode 100644 Assets/Plugins/NuGet/Moq.4.20.72/.signature.p7s create mode 100644 Assets/Plugins/NuGet/Moq.4.20.72/Moq.nuspec create mode 100644 Assets/Plugins/NuGet/Moq.4.20.72/Moq.nuspec.meta create mode 100644 Assets/Plugins/NuGet/Moq.4.20.72/icon.png create mode 100644 Assets/Plugins/NuGet/Moq.4.20.72/icon.png.meta create mode 100644 Assets/Plugins/NuGet/Moq.4.20.72/lib.meta create mode 100644 Assets/Plugins/NuGet/Moq.4.20.72/lib/netstandard2.1.meta create mode 100644 Assets/Plugins/NuGet/Moq.4.20.72/lib/netstandard2.1/Moq.dll create mode 100644 Assets/Plugins/NuGet/Moq.4.20.72/lib/netstandard2.1/Moq.dll.meta create mode 100644 Assets/Plugins/NuGet/Moq.4.20.72/readme.md create mode 100644 Assets/Plugins/NuGet/Moq.4.20.72/readme.md.meta create mode 100644 Assets/Plugins/NuGet/System.Diagnostics.EventLog.4.7.0.meta create mode 100644 Assets/Plugins/NuGet/System.Diagnostics.EventLog.4.7.0/.signature.p7s create mode 100644 Assets/Plugins/NuGet/System.Diagnostics.EventLog.4.7.0/LICENSE.TXT create mode 100644 Assets/Plugins/NuGet/System.Diagnostics.EventLog.4.7.0/LICENSE.TXT.meta create mode 100644 Assets/Plugins/NuGet/System.Diagnostics.EventLog.4.7.0/System.Diagnostics.EventLog.nuspec create mode 100644 Assets/Plugins/NuGet/System.Diagnostics.EventLog.4.7.0/System.Diagnostics.EventLog.nuspec.meta create mode 100644 Assets/Plugins/NuGet/System.Diagnostics.EventLog.4.7.0/THIRD-PARTY-NOTICES.TXT create mode 100644 Assets/Plugins/NuGet/System.Diagnostics.EventLog.4.7.0/THIRD-PARTY-NOTICES.TXT.meta create mode 100644 Assets/Plugins/NuGet/System.Diagnostics.EventLog.4.7.0/lib.meta create mode 100644 Assets/Plugins/NuGet/System.Diagnostics.EventLog.4.7.0/lib/netstandard2.0.meta create mode 100644 Assets/Plugins/NuGet/System.Diagnostics.EventLog.4.7.0/lib/netstandard2.0/System.Diagnostics.EventLog.dll create mode 100644 Assets/Plugins/NuGet/System.Diagnostics.EventLog.4.7.0/lib/netstandard2.0/System.Diagnostics.EventLog.dll.meta create mode 100644 Assets/Plugins/NuGet/System.Diagnostics.EventLog.4.7.0/lib/netstandard2.0/System.Diagnostics.EventLog.xml create mode 100644 Assets/Plugins/NuGet/System.Diagnostics.EventLog.4.7.0/lib/netstandard2.0/System.Diagnostics.EventLog.xml.meta create mode 100644 Assets/Plugins/NuGet/System.Diagnostics.EventLog.4.7.0/useSharedDesignerContext.txt create mode 100644 Assets/Plugins/NuGet/System.Diagnostics.EventLog.4.7.0/useSharedDesignerContext.txt.meta create mode 100644 Assets/Plugins/NuGet/System.Diagnostics.EventLog.4.7.0/version.txt create mode 100644 Assets/Plugins/NuGet/System.Diagnostics.EventLog.4.7.0/version.txt.meta create mode 100644 Assets/Plugins/NuGet/System.Security.Principal.Windows.4.7.0.meta create mode 100644 Assets/Plugins/NuGet/System.Security.Principal.Windows.4.7.0/.signature.p7s create mode 100644 Assets/Plugins/NuGet/System.Security.Principal.Windows.4.7.0/LICENSE.TXT create mode 100644 Assets/Plugins/NuGet/System.Security.Principal.Windows.4.7.0/LICENSE.TXT.meta create mode 100644 Assets/Plugins/NuGet/System.Security.Principal.Windows.4.7.0/System.Security.Principal.Windows.nuspec create mode 100644 Assets/Plugins/NuGet/System.Security.Principal.Windows.4.7.0/System.Security.Principal.Windows.nuspec.meta create mode 100644 Assets/Plugins/NuGet/System.Security.Principal.Windows.4.7.0/THIRD-PARTY-NOTICES.TXT create mode 100644 Assets/Plugins/NuGet/System.Security.Principal.Windows.4.7.0/THIRD-PARTY-NOTICES.TXT.meta create mode 100644 Assets/Plugins/NuGet/System.Security.Principal.Windows.4.7.0/lib.meta create mode 100644 Assets/Plugins/NuGet/System.Security.Principal.Windows.4.7.0/lib/netstandard2.0.meta create mode 100644 Assets/Plugins/NuGet/System.Security.Principal.Windows.4.7.0/lib/netstandard2.0/System.Security.Principal.Windows.dll create mode 100644 Assets/Plugins/NuGet/System.Security.Principal.Windows.4.7.0/lib/netstandard2.0/System.Security.Principal.Windows.dll.meta create mode 100644 Assets/Plugins/NuGet/System.Security.Principal.Windows.4.7.0/lib/netstandard2.0/System.Security.Principal.Windows.xml create mode 100644 Assets/Plugins/NuGet/System.Security.Principal.Windows.4.7.0/lib/netstandard2.0/System.Security.Principal.Windows.xml.meta create mode 100644 Assets/Plugins/NuGet/System.Security.Principal.Windows.4.7.0/useSharedDesignerContext.txt create mode 100644 Assets/Plugins/NuGet/System.Security.Principal.Windows.4.7.0/useSharedDesignerContext.txt.meta create mode 100644 Assets/Plugins/NuGet/System.Security.Principal.Windows.4.7.0/version.txt create mode 100644 Assets/Plugins/NuGet/System.Security.Principal.Windows.4.7.0/version.txt.meta create mode 100644 Assets/Plugins/NuGet/packagefolder.txt create mode 100644 Assets/Plugins/NuGet/packagefolder.txt.meta create mode 100644 Assets/Scenes.meta create mode 100644 Assets/Scenes/SampleScene.unity create mode 100644 Assets/Scenes/SampleScene.unity.meta create mode 100644 Assets/Scenes/Tests.meta create mode 100644 Assets/Scenes/Tests/Test_Empty.unity create mode 100644 Assets/Scenes/Tests/Test_Empty.unity.meta create mode 100644 Assets/Scenes/Tests/Test_UnitMovement.unity create mode 100644 Assets/Scenes/Tests/Test_UnitMovement.unity.meta create mode 100644 Assets/Scripts.meta create mode 100644 Assets/Scripts/BracerLib.asmdef create mode 100644 Assets/Scripts/BracerLib.asmdef.meta create mode 100644 Assets/Scripts/Coroutines.meta create mode 100644 Assets/Scripts/Coroutines/CancellableWaitForSeconds.cs create mode 100644 Assets/Scripts/Coroutines/CancellableWaitForSeconds.cs.meta create mode 100644 Assets/Scripts/DI.meta create mode 100644 Assets/Scripts/DI/Dependency.cs create mode 100644 Assets/Scripts/DI/Dependency.cs.meta create mode 100644 Assets/Scripts/DI/DependencyCollection.cs create mode 100644 Assets/Scripts/DI/DependencyCollection.cs.meta create mode 100644 Assets/Scripts/DI/DependencyContext.cs create mode 100644 Assets/Scripts/DI/DependencyContext.cs.meta create mode 100644 Assets/Scripts/DI/DependencyFactory.cs create mode 100644 Assets/Scripts/DI/DependencyFactory.cs.meta create mode 100644 Assets/Scripts/DI/DependencyLifetime.cs create mode 100644 Assets/Scripts/DI/DependencyLifetime.cs.meta create mode 100644 Assets/Scripts/DI/DependencyProvider.cs create mode 100644 Assets/Scripts/DI/DependencyProvider.cs.meta create mode 100644 Assets/Scripts/DI/InjectFieldAttribute.cs create mode 100644 Assets/Scripts/DI/InjectFieldAttribute.cs.meta create mode 100644 Assets/Scripts/Data.meta create mode 100644 Assets/Scripts/Data/Layer.cs create mode 100644 Assets/Scripts/Data/Layer.cs.meta create mode 100644 Assets/Scripts/Editor.meta create mode 100644 Assets/Scripts/Editor/BracerLib.Editor.asmdef create mode 100644 Assets/Scripts/Editor/BracerLib.Editor.asmdef.meta create mode 100644 Assets/Scripts/Editor/Data.meta create mode 100644 Assets/Scripts/Editor/Data/LayerPropertyDrawer.cs create mode 100644 Assets/Scripts/Editor/Data/LayerPropertyDrawer.cs.meta create mode 100644 Assets/Scripts/Editor/UI.meta create mode 100644 Assets/Scripts/Editor/UI/NonDrawingGraphicEditor.cs create mode 100644 Assets/Scripts/Editor/UI/NonDrawingGraphicEditor.cs.meta create mode 100644 Assets/Scripts/Editor/Utility.meta create mode 100644 Assets/Scripts/Editor/Utility/EditorSearchField.cs create mode 100644 Assets/Scripts/Editor/Utility/EditorSearchField.cs.meta create mode 100644 Assets/Scripts/Editor/Utility/SearchableScrollView.cs create mode 100644 Assets/Scripts/Editor/Utility/SearchableScrollView.cs.meta create mode 100644 Assets/Scripts/Editor/Utility/TextureUtility.cs create mode 100644 Assets/Scripts/Editor/Utility/TextureUtility.cs.meta create mode 100644 Assets/Scripts/Events.meta create mode 100644 Assets/Scripts/Events/GameEventArgs.cs create mode 100644 Assets/Scripts/Events/GameEventArgs.cs.meta create mode 100644 Assets/Scripts/Events/Interfaces.meta create mode 100644 Assets/Scripts/Events/Interfaces/IGameEvent.cs create mode 100644 Assets/Scripts/Events/Interfaces/IGameEvent.cs.meta create mode 100644 Assets/Scripts/Events/UnityInteractionEvent.cs create mode 100644 Assets/Scripts/Events/UnityInteractionEvent.cs.meta create mode 100644 Assets/Scripts/StateManagement.meta create mode 100644 Assets/Scripts/StateManagement/GameState.cs create mode 100644 Assets/Scripts/StateManagement/GameState.cs.meta create mode 100644 Assets/Scripts/StateManagement/GameStateController.cs create mode 100644 Assets/Scripts/StateManagement/GameStateController.cs.meta create mode 100644 Assets/Scripts/StateManagement/GameStateInvocationStatus.cs create mode 100644 Assets/Scripts/StateManagement/GameStateInvocationStatus.cs.meta create mode 100644 Assets/Scripts/StateManagement/GameStatePriority.cs create mode 100644 Assets/Scripts/StateManagement/GameStatePriority.cs.meta create mode 100644 Assets/Scripts/StateManagement/Interfaces.meta create mode 100644 Assets/Scripts/StateManagement/Interfaces/IGameStateIdentifier.cs create mode 100644 Assets/Scripts/StateManagement/Interfaces/IGameStateIdentifier.cs.meta create mode 100644 Assets/Scripts/StateManagement/Interfaces/IGameStateTrigger.cs create mode 100644 Assets/Scripts/StateManagement/Interfaces/IGameStateTrigger.cs.meta create mode 100644 Assets/Scripts/StateManagement/Interfaces/IGameStateTriggerInvoker.cs create mode 100644 Assets/Scripts/StateManagement/Interfaces/IGameStateTriggerInvoker.cs.meta create mode 100644 Assets/Scripts/StateManagement/Interfaces/IGameStateTriggerStatus.cs create mode 100644 Assets/Scripts/StateManagement/Interfaces/IGameStateTriggerStatus.cs.meta create mode 100644 Assets/Scripts/StateManagement/StateMap.cs create mode 100644 Assets/Scripts/StateManagement/StateMap.cs.meta create mode 100644 Assets/Scripts/Tests.meta create mode 100644 Assets/Scripts/Tests/BracerLib.Tests.asmdef create mode 100644 Assets/Scripts/Tests/BracerLib.Tests.asmdef.meta create mode 100644 Assets/Scripts/Tests/MonoBehaviourTester.cs create mode 100644 Assets/Scripts/Tests/MonoBehaviourTester.cs.meta create mode 100644 Assets/Scripts/Tests/Objects.meta create mode 100644 Assets/Scripts/Tests/Objects/ObjectLifetimeTests.cs create mode 100644 Assets/Scripts/Tests/Objects/ObjectLifetimeTests.cs.meta create mode 100644 Assets/Scripts/Tests/Objects/ObjectMockTests.cs create mode 100644 Assets/Scripts/Tests/Objects/ObjectMockTests.cs.meta create mode 100644 Assets/Scripts/Tests/Properties.meta create mode 100644 Assets/Scripts/Tests/Properties/PropertyTests.cs create mode 100644 Assets/Scripts/Tests/Properties/PropertyTests.cs.meta create mode 100644 Assets/Scripts/Tests/Scenes.meta create mode 100644 Assets/Scripts/Tests/Scenes/SceneTests.cs create mode 100644 Assets/Scripts/Tests/Scenes/SceneTests.cs.meta create mode 100644 Assets/Scripts/Tests/TestBase.cs create mode 100644 Assets/Scripts/Tests/TestBase.cs.meta create mode 100644 Assets/Scripts/Tests/Utility.meta create mode 100644 Assets/Scripts/Tests/Utility/MathUtilityTests.cs create mode 100644 Assets/Scripts/Tests/Utility/MathUtilityTests.cs.meta create mode 100644 Assets/Scripts/Tests/Utility/TriangulatorTest.cs create mode 100644 Assets/Scripts/Tests/Utility/TriangulatorTest.cs.meta create mode 100644 Assets/Scripts/UI.meta create mode 100644 Assets/Scripts/UI/NonDrawingGraphic.cs create mode 100644 Assets/Scripts/UI/NonDrawingGraphic.cs.meta create mode 100644 Assets/Scripts/UI/SceneLoadingManager.cs create mode 100644 Assets/Scripts/UI/SceneLoadingManager.cs.meta create mode 100644 Assets/Scripts/Utility.meta create mode 100644 Assets/Scripts/Utility/ArrayExtensions.cs create mode 100644 Assets/Scripts/Utility/ArrayExtensions.cs.meta create mode 100644 Assets/Scripts/Utility/CameraUtility.cs create mode 100644 Assets/Scripts/Utility/CameraUtility.cs.meta create mode 100644 Assets/Scripts/Utility/CoroutineUtility.cs create mode 100644 Assets/Scripts/Utility/CoroutineUtility.cs.meta create mode 100644 Assets/Scripts/Utility/DirectoryUtility.cs create mode 100644 Assets/Scripts/Utility/DirectoryUtility.cs.meta create mode 100644 Assets/Scripts/Utility/EditorOnlyObject.cs create mode 100644 Assets/Scripts/Utility/EditorOnlyObject.cs.meta create mode 100644 Assets/Scripts/Utility/EnumUtility.cs create mode 100644 Assets/Scripts/Utility/EnumUtility.cs.meta create mode 100644 Assets/Scripts/Utility/Enumeration.cs create mode 100644 Assets/Scripts/Utility/Enumeration.cs.meta create mode 100644 Assets/Scripts/Utility/ListExtensions.cs create mode 100644 Assets/Scripts/Utility/ListExtensions.cs.meta create mode 100644 Assets/Scripts/Utility/MathUtility.cs create mode 100644 Assets/Scripts/Utility/MathUtility.cs.meta create mode 100644 Assets/Scripts/Utility/RandomUtility.cs create mode 100644 Assets/Scripts/Utility/RandomUtility.cs.meta create mode 100644 Assets/Scripts/Utility/RegexExtensions.cs create mode 100644 Assets/Scripts/Utility/RegexExtensions.cs.meta create mode 100644 Assets/Scripts/Utility/Triangulator.cs create mode 100644 Assets/Scripts/Utility/Triangulator.cs.meta create mode 100644 Assets/Scripts/Utility/UIUtility.cs create mode 100644 Assets/Scripts/Utility/UIUtility.cs.meta create mode 100644 Assets/Scripts/Utility/UnityLogger.cs create mode 100644 Assets/Scripts/Utility/UnityLogger.cs.meta create mode 100644 Assets/Scripts/Utility/Vector3Extensions.cs create mode 100644 Assets/Scripts/Utility/Vector3Extensions.cs.meta create mode 100644 Assets/Scripts/Utility/Vector4Int.cs create mode 100644 Assets/Scripts/Utility/Vector4Int.cs.meta create mode 100644 Assets/Settings.meta create mode 100644 Assets/Settings/Build Profiles.meta create mode 100644 Assets/Settings/Build Profiles/WindowsTest.asset create mode 100644 Assets/Settings/Build Profiles/WindowsTest.asset.meta create mode 100644 Assets/Settings/DefaultVolumeProfile.asset create mode 100644 Assets/Settings/DefaultVolumeProfile.asset.meta create mode 100644 Assets/Settings/Mobile_RPAsset.asset create mode 100644 Assets/Settings/Mobile_RPAsset.asset.meta create mode 100644 Assets/Settings/Mobile_Renderer.asset create mode 100644 Assets/Settings/Mobile_Renderer.asset.meta create mode 100644 Assets/Settings/PC_RPAsset.asset create mode 100644 Assets/Settings/PC_RPAsset.asset.meta create mode 100644 Assets/Settings/PC_Renderer.asset create mode 100644 Assets/Settings/PC_Renderer.asset.meta create mode 100644 Assets/Settings/SampleSceneProfile.asset create mode 100644 Assets/Settings/SampleSceneProfile.asset.meta create mode 100644 Assets/Settings/UniversalRenderPipelineGlobalSettings.asset create mode 100644 Assets/Settings/UniversalRenderPipelineGlobalSettings.asset.meta create mode 100644 Assets/packages.config create mode 100644 Assets/packages.config.meta create mode 100644 BracerLib.Editor.csproj.DotSettings create mode 100644 BracerLib.sln create mode 100644 Packages/manifest.json create mode 100644 Packages/packages-lock.json create mode 100644 ProjectSettings/AudioManager.asset create mode 100644 ProjectSettings/ClusterInputManager.asset create mode 100644 ProjectSettings/DynamicsManager.asset create mode 100644 ProjectSettings/EditorBuildSettings.asset create mode 100644 ProjectSettings/EditorSettings.asset create mode 100644 ProjectSettings/GraphicsSettings.asset create mode 100644 ProjectSettings/InputManager.asset create mode 100644 ProjectSettings/MemorySettings.asset create mode 100644 ProjectSettings/MultiplayerManager.asset create mode 100644 ProjectSettings/NavMeshAreas.asset create mode 100644 ProjectSettings/PackageManagerSettings.asset create mode 100644 ProjectSettings/Packages/com.unity.testtools.codecoverage/Settings.json create mode 100644 ProjectSettings/Physics2DSettings.asset create mode 100644 ProjectSettings/PresetManager.asset create mode 100644 ProjectSettings/ProjectSettings.asset create mode 100644 ProjectSettings/ProjectVersion.txt create mode 100644 ProjectSettings/QualitySettings.asset create mode 100644 ProjectSettings/SceneTemplateSettings.json create mode 100644 ProjectSettings/ShaderGraphSettings.asset create mode 100644 ProjectSettings/TagManager.asset create mode 100644 ProjectSettings/TimeManager.asset create mode 100644 ProjectSettings/URPProjectSettings.asset create mode 100644 ProjectSettings/UnityConnectSettings.asset create mode 100644 ProjectSettings/VFXManager.asset create mode 100644 ProjectSettings/VersionControlSettings.asset create mode 100644 ProjectSettings/XRSettings.asset create mode 100644 UserSettings/EditorUserSettings.asset create mode 100644 UserSettings/Layouts/default-6000.dwlt create mode 100644 UserSettings/Search.index create mode 100644 UserSettings/Search.settings diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..93339b3 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,18 @@ +# General files +*.psd filter=lfs diff=lfs merge=lfs -text +*.jpg filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.mp3 filter=lfs diff=lfs merge=lfs -text +*.wav filter=lfs diff=lfs merge=lfs -text +*.fbx filter=lfs diff=lfs merge=lfs -text +*.xcf filter=lfs diff=lfs merge=lfs -text +*.blend filter=lfs diff=lfs merge=lfs -text +*.obj filter=lfs diff=lfs merge=lfs -text +*.3ds filter=lfs diff=lfs merge=lfs -text +*.dae filter=lfs diff=lfs merge=lfs -text +*.unity merge=unityyamlmerge +*.prefab merge=unityyamlmerge +*.asset merge=unityyamlmerge +*.controller merge=unityyamlmerge +*.anim merge=unityyamlmerge +*.mat merge=unityyamlmerge diff --git a/.gitconfig b/.gitconfig new file mode 100644 index 0000000..44d2e98 --- /dev/null +++ b/.gitconfig @@ -0,0 +1,6 @@ +[merge] +tool = unityyamlmerge + +[mergetool "unityyamlmerge"] +trustExitCode = false +cmd = 'C:\Program Files\Unity\Hub\Editor\6000.3.15f1\Editor\Data\Tools\UnityYAMLMerge.exe' merge -p "$BASE" "$REMOTE" "$LOCAL" "$MERGED" diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..e4300d9 --- /dev/null +++ b/.gitignore @@ -0,0 +1,7 @@ +.idea/ +CodeCoverage/ +Library/ +Logs/ +obj/ +Temp/ +*.csproj diff --git a/Assets/NuGet.config b/Assets/NuGet.config new file mode 100644 index 0000000..02995f7 --- /dev/null +++ b/Assets/NuGet.config @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Assets/NuGet.config.meta b/Assets/NuGet.config.meta new file mode 100644 index 0000000..1d1457c --- /dev/null +++ b/Assets/NuGet.config.meta @@ -0,0 +1,28 @@ +fileFormatVersion: 2 +guid: f22902142398501469821aa3fc24e22b +labels: +- NuGetForUnity +PluginImporter: + externalObjects: {} + serializedVersion: 3 + iconMap: {} + executionOrder: {} + defineConstraints: [] + isPreloaded: 0 + isOverridable: 0 + isExplicitlyReferenced: 0 + validateReferences: 1 + platformData: + Any: + enabled: 0 + settings: {} + Editor: + enabled: 0 + settings: + DefaultValueInitialized: true + WindowsStoreApps: + enabled: 0 + settings: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Plugins.meta b/Assets/Plugins.meta new file mode 100644 index 0000000..c8aa6a4 --- /dev/null +++ b/Assets/Plugins.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: dd466efe427ab0b4fb4ab3a521e30ba1 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Plugins/NuGet.meta b/Assets/Plugins/NuGet.meta new file mode 100644 index 0000000..54711df --- /dev/null +++ b/Assets/Plugins/NuGet.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: bf8e2d585830e044baa7baf93b4d387b +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Plugins/NuGet/Castle.Core.5.1.1.meta b/Assets/Plugins/NuGet/Castle.Core.5.1.1.meta new file mode 100644 index 0000000..bbf4359 --- /dev/null +++ b/Assets/Plugins/NuGet/Castle.Core.5.1.1.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 63a91f5e398325f4b924feff90fade39 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Plugins/NuGet/Castle.Core.5.1.1/.signature.p7s b/Assets/Plugins/NuGet/Castle.Core.5.1.1/.signature.p7s new file mode 100644 index 0000000000000000000000000000000000000000..e32d4930c855b1bd705096d2ff8ff8d32edbdac0 GIT binary patch literal 11527 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 A&j0`b literal 0 HcmV?d00001 diff --git a/Assets/Plugins/NuGet/Castle.Core.5.1.1/ASL - Apache Software Foundation License.txt b/Assets/Plugins/NuGet/Castle.Core.5.1.1/ASL - Apache Software Foundation License.txt new file mode 100644 index 0000000..e259b58 --- /dev/null +++ b/Assets/Plugins/NuGet/Castle.Core.5.1.1/ASL - Apache Software Foundation License.txt @@ -0,0 +1,57 @@ +Apache License, Version 2.0 + +Apache License +Version 2.0, January 2004 +http://www.apache.org/licenses/ + +TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + +1. Definitions. + +"License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. + +"Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. + +"Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. + +"You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. + +"Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. + +"Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. + +"Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). + +"Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. + +"Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." + +"Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. + +2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. + +3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. + +4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: + + 1. You must give any other recipients of the Work or Derivative Works a copy of this License; and + + 2. You must cause any modified files to carry prominent notices stating that You changed the files; and + + 3. You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and + + 4. If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. + +You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. + +5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. + +6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. + +7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. + +8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. + +9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. + +END OF TERMS AND CONDITIONS diff --git a/Assets/Plugins/NuGet/Castle.Core.5.1.1/ASL - Apache Software Foundation License.txt.meta b/Assets/Plugins/NuGet/Castle.Core.5.1.1/ASL - Apache Software Foundation License.txt.meta new file mode 100644 index 0000000..4b3e4b4 --- /dev/null +++ b/Assets/Plugins/NuGet/Castle.Core.5.1.1/ASL - Apache Software Foundation License.txt.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: f9bd9562abf560749bfac59546cb6198 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Plugins/NuGet/Castle.Core.5.1.1/CHANGELOG.md b/Assets/Plugins/NuGet/Castle.Core.5.1.1/CHANGELOG.md new file mode 100644 index 0000000..19edd61 --- /dev/null +++ b/Assets/Plugins/NuGet/Castle.Core.5.1.1/CHANGELOG.md @@ -0,0 +1,441 @@ +# Castle Core Changelog + +## 5.1.1 (2022-12-30) + +Bugfixes: +- Proxies using records derived from a base generic record broken using .NET 6 compiler (@CesarD, #632) +- Failure proxying type that has a non-inheritable custom attribute type applied where `null` argument is given for array parameter (@stakx, #637) +- Nested custom attribute types do not get replicated (@stakx, #638) + +## 5.1.0 (2022-08-02) + +Enhancements: +- Support for covariant method returns (@stakx, #619) +- Performance improvement with proxy type generation for class proxies (without target). Abstract class methods now reuse a predefined invocation type (like methods of interface proxies without target; see explanation below at version 5.0.0 enhancements) (@stakx, #626) + +Bugfixes: +- DynamicProxy emits invalid metadata for redeclared event (@stakx, #590) +- Proxies using records with a base class broken using .NET 6 compiler (@ajcvickers, #601) +- `MissingMethodException` when proxying interfaces containing sealed methods (@stakx, #621) + +## 5.0.0 (2022-05-11) + +Enhancements: +- .NET 6.0 support (@Jevonius, #616) +- .NET Standard 2.0 and 2.1 support (@lg2de, #485) +- Non-intercepted methods on a class proxy with target are now forwarded to the target (@stakx, #571) +- Significant performance improvements with proxy type generation for interface proxies without target. Up until now, DynamicProxy generated a separate `IInvocation` implementation type for every single proxied method – it is now able to reuse a single predefined type in many cases, thereby reducing the total amount of dynamic type generation. (@stakx, #573) + +Bugfixes: +- Generic method with differently named generic arguments to parent throws `KeyNotFoundException` (@stakx, #106) +- Proxying certain `[Serializable]` classes produces proxy types that fail PEVerify test (@stakx, #367) +- `private protected` methods are not intercepted (@CrispyDrone, #535) +- `System.UIntPtr` unsupported (@stakx, #546) +- DynamicProxy generates two modules when proceeding from a class proxy's protected method to the target, causing an `InvalidOperationException` when saving the generated assembly to disk (@stakx, #569) +- Upgrade log4net to v2.0.13 (@jonorossi, @stakx, @dschwartzni, #574, #605) + +Deprecations: +- Removed support for the .NET Framework < 4.6.2 and .NET Standard 1.x. (@stakx, #495, #496; @Jevonius, #614) +- Removed support for Code Access Security (CAS). (@stakx, #502) +- Removed support for Remoting. This library no longer defines any types deriving from `MarshalByRefObject`, and `ProxyUtil.IsProxy` (which used to recognize remoting/"transparent" proxies) now tests only for DynamicProxy proxies. (@stakx, #507) +- The following public members have been removed: + - `Castle.Core.Internal.CollectionExtensions` (class) + - `Castle.Core.Internal.Lock` (class) along with all related types and methods + - `Castle.Core.Internal.PermissionUtil.IsGranted` (method) + - `Castle.Core.Pair<,>` (type). Use `System.ValueTuple<,>` or `System.Tuple<,>` instead. + - all type members in `Castle.DynamicProxy.ModuleScope` that gave direct access to DynamicProxy's type cache and `ModuleBuilder`s. Only `SaveAssembly`, `LoadAssemblyIntoCache`, and members supporting these two facilities are left public. + - almost all types and type members in the `Castle.DynamicProxy.*` sub-namespaces, as most of them are intended for internal use only. + - DynamicProxy's custom exception types have been replaced by standard BCL exceptions (where appropriate), and by a single `DynamicProxyException` type for internal DynamicProxy errors. + +## 4.4.1 (2020-05-06) + +Bugfixes: +- Prevent method name collisions when a proxy type implements more than two identically named interfaces having one or more identically named methods each. Name collisions are avoided by including the declaring types' namespaces in the proxy type's method names. (@stakx, #469) +- Reduce lock contention while generating new proxy types which previously blocked new proxy instances (@tangdf, #484) +- Fix mixins where proxy constructor fields were ordered differently to interfaces because of different case comparisons (@zapov, #475) +- Fix proxy generation for types having only a `private protected` constructor (@mriehm, #491) + +## 4.4.0 (2019-04-05) + +Enhancements: +- Added trace logging level below Debug; maps to Trace in log4net/NLog, and Verbose in Serilog (@pi3k14, #404) +- Recognize read-only parameters by the `In` modreq (@zvirja, #406) +- DictionaryAdapter: Exposed GetAdapter overloads with NameValueCollection parameter in .NET Standard (@rzontar, #423) +- Ability to add delegate mixins to proxies using `ProxyGenerationOptions.AddDelegate[Type]Mixin`. You can bind to the mixed-in `Invoke` methods on the proxy using `ProxyUtil.CreateDelegateToMixin`. (@stakx, #436) +- New `IInvocation.CaptureProceedInfo()` method to enable better implementations of asynchronous interceptors (@stakx, #439) + +Deprecations: +- The API surrounding `Lock` has been deprecated. This consists of the members listed below. Consider using the Base Class Library's `System.Threading.ReaderWriterLockSlim` instead. (@stakx, #391) + - `Castle.Core.Internal.Lock` (class) + - `Castle.Core.Internal.ILockHolder` (interface) + - `Castle.Core.Internal.IUpgradeableLockHolder` (interface) +- You should no longer manually emit types into DynamicProxy's dynamic assembly. For this reason, the following member has been deprecated. (@stakx, #445) + - `Castle.DynamicProxy.ModuleScope.DefineType` (method) +- The proxy type cache in `ModuleScope` should no longer be accessed directly. For this reason, the members listed below have been deprecated. (@stakx, #391) + - `Castle.DynamicProxy.ModuleScope.Lock` (property) + - `Castle.DynamicProxy.ModuleScope.GetFromCache` (method) + - `Castle.DynamicProxy.ModuleScope.RegisterInCache` (method) + - `Castle.DynamicProxy.Generators.BaseProxyGenerator.AddToCache` (method) + - `Castle.DynamicProxy.Generators.BaseProxyGenerator.GetFromCache` (method) + - `Castle.DynamicProxy.Generators.CacheKey` (class) + - `Castle.DynamicProxy.Serialization.CacheMappingsAttribute.ApplyTo` (method) + - `Castle.DynamicProxy.Serialization.CacheMappingsAttribute.GetDeserializedMappings` (method) + +## 4.3.1 (2018-06-21) + +Enhancements: + - Use shared read locking to reduce lock contention in InvocationHelper and ProxyUtil (@TimLovellSmith, #377) + +Bugfixes: +- Prevent interceptors from being able to modify `in` parameters (@stakx, #370) +- Make default value replication of optional parameters more tolerant of default values that are represented in metadata with a mismatched type (@stakx, #371) +- Fix a concurrency issue (writing without taking a write lock first) in `BaseProxyGenerator.ObtainProxyType` (@stakx, #383) + +Deprecations: +- `Castle.DynamicProxy.Generators.Emitters.ArgumentsUtil.IsAnyByRef` (@stakx, #370) + +## 4.3.0 (2018-06-07) + +Enhancements: +- Added .NET Standard/.NET Core support for NLog (@snakefoot, #200) +- Added .NET Standard/.NET Core support for log4net (@snakefoot, #201) +- DynamicProxy supported C# `in` parameter modifiers only on the .NET Framework up until now. Adding .NET Standard 1.5 as an additional target to the NuGet package makes them work on .NET Core, too (@stakx, #339) +- Replicate custom attributes on constructor parameters in the generated proxy type constructors to fulfill introspection of constructors. This does not change the proxying behavior. (@stakx, #341) +- Improve performance of InvocationHelper cache lookups (@tangdf, #358) +- Improve fidelity of default value replication of optional parameters to fulfill inspection of the generated proxies. This does not change the proxying behavior. (@stakx, #356) +- Improve cache performance of MethodFinder.GetAllInstanceMethods (@tangdf, #357) + +Bugfixes: +- Fix Castle.Services.Logging.Log4netIntegration assembly file name casing which breaks on Linux (@beginor, #324) +- Fix Castle.DynamicProxy.Generators.AttributesToAvoidReplicating not being thread safe (InvalidOperationException "Collection was modified; enumeration operation may not execute.") (@BrunoJuchli, #334) +- Fix TraceLoggerFactory to allow specifying the default logger level (@acjh, #342) +- Ensure that DynamicProxy doesn't create invalid dynamic assemblies when proxying types from non-strong-named assemblies (@stakx, #327) +- Fix interceptor selectors being passed `System.RuntimeType` for class proxies instead of the target type (@stakx, #359) +- Replace NullReferenceException with descriptive one thrown when interceptors swallow exceptions and cause a null value type to be returned (@jonorossi, #85) + +## 4.2.1 (2017-10-11) + +Bugfixes: +- Add missing equality checks in `MethodSignatureComparer.EqualSignatureTypes` to fix `TypeLoadException`s ("Method does not have an implementation") (@stakx, #310) +- Add missing XML documentation files to NuGet packages (@fir3pho3nixx, #312) + +## 4.2.0 (2017-09-28) + +Enhancements: +- Add IProxyTargetAccessor.DynProxySetTarget to set the target of a proxy (@yallie, #293) +- Internal dynamic proxy fields are now private instead of public (@spencercw, #260) + +Bugfixes: +- Make ProxyUtil.IsAccessible(MethodBase) take into account declaring type's accessibility so it doesn't report false negatives for e.g. public methods in inaccessible classes. (@stakx, #289) +- Fix InvalidCastException calling IChangeProxyTarget.ChangeProxyTarget proxying generic interfaces (@yallie, #293) +- Ignore minor/patch level version for AssemblyVersionAttribute as this creates binding errors for downstream libraries (@fir3pho3nixx, #288) +- Fix DictionaryAdapter firing NotifyPropertyChang(ed/ing) events after CancelEdit (@Lakritzator, #299) +- Fix ArgumentException when overriding method with nested generics (@BitWizJason, #297) +- Explicit package versioning applied within solution to avoid maligned NuGet upgrades for lock step versioned packages. (@fir3pho3nixx, #292) + +Deprecations: +- IChangeProxyTarget.ChangeProxyTarget is deprecated in favor of IProxyTargetAccessor.DynProxySetTarget (@yallie, #293) + +## 4.1.1 (2017-07-12) + +Bugfixes: +- Prevent member name collision when proxy implements same generic interface more than twice (@stakx, #88) +- Fix incorrect replication (reversed order) of custom modifiers (modopts and modreqs) on the CLR, does not work yet on Mono (@stakx, #277) +- Fix COM interface proxy error case throwing exceptions trying to release null pointer from QueryInterface (@stakx, #281) + +## 4.1.0 (2017-06-11) + +Breaking Changes: +- Remove AllowPartiallyTrustedCallersAttribute, which wasn't defined by default (@fir3pho3nixx, #241) +- Upgrade log4net to v2.0.8 (@fir3pho3nixx, #241) + +Enhancements: +- Add ProxyUtil.IsAccessible to check if a method is accessible to DynamicProxyGenAssembly2 (Blair Conrad, #235) +- Refactor build engineering to support AppVeyor and TravisCI (@fir3pho3nixx, #241) + +Bugfixes: +- Fix order of class proxy constructor arguments when using multiple mixins (@sebastienros, #230) +- Fix dependency on "System.ComponentModel.TypeConverter" NuGet package version that does not exist (#239) +- Fix ParamArrayAttribute not being replicated in proxy (@stakx, #121) +- Fix System.Net.Mail.SmtpClient is obsolete on Mono warning (#254) + +## 4.0.0 (2017-01-25) + +Breaking Changes: +- Update to NLog 4.4.1 and remove beta .NET Core support for NLog (#228) +- Update to log4net 2.0.7 (#229) + +Bugfixes: +- Fix CustomAttributeInfo.FromExpression for VB.NET (@thomaslevesque, #223) + +## 4.0.0-beta002 (2016-10-28) + +Breaking Changes: +- Rework Serilog integration to accept an ILogger rather than a LoggerConfiguration to work correctly with Serilog (#142, #211) +- Remove obsolete property `AttributesToAddToGeneratedTypes` from `ProxyGenerationOptions` (#219) +- Change type of `ProxyGenerationOptions.AdditionalAttributes` to `IList` (#219) +- Remove `IAttributeDisassembler` which is no longer necessary (#219) + +Enhancements: +- Add IProxyGenerator interface for the ProxyGenerator class (#215) +- Improve default list of attributes to avoid replicating. Code Access Security attributes and MarshalAsAttribute will no longer be replicated (#221) + +Bugfixes: +- Fix building on Mono 4.6.1 +- Different attributes in `ProxyGenerationOptions.AdditionalAttributes` now generates different proxy types (#219) + +## 4.0.0-beta001 (2016-07-17) + +Breaking Changes: +- Update to log4net 1.2.15/2.0.5 (#199) +- Update to NLog 4.4.0-beta13 (#199) +- Update to Serilog 2.0.0 (#199) + +Enhancements: +- .NET Core 1.0 and .NET Standard 1.3 support (Jonathon Rossi, Jeremy Meng) +- Restore DynamicDictionary class + +Bugfixes: +- Fix target framework moniker in NuGet package for .NET Core (#174) + +## 4.0.0-alpha001 (2016-04-07) + +Breaking Changes: +- Remove all Silverlight support (#100, #150) +- Remove DynamicProxy's RemotableInvocation and remoting support for invocations (#110, #65) + +Enhancements: +- .NET Core DNX and dotnet5.4 support via feature conditional compilation (Jonathon Rossi, Jeremy Meng) +- Build script improvements and consolidate version numbers (Blair Conrad, #75, #152, #153) + +Bugfixes: +- Fix 'System.ArgumentException: Constant does not match the defined type' with optional, nullable enum method parameters (Daniel Yankowsky, #141, #149) +- Fix proxy generation hook notification for virtual but final methods (Axel Heer, #148) +- Fix InvalidCastException with custom attribute having an enum array parameter with non-int enum (@csharper2010, #104, #105) +- Update to Mono 4.0.2 and improve Mono support (#79, #95, #102) +- Fix 'System.ArrayTypeMismatchException: Source array type cannot be assigned to destination array type' on Mono (#81) +- Fix 'System.ArgumentException: System.Decimal is not a supported constant type' with optional method parameters (@fknx, #87, #91) +- Fix ProxyGenerator cache does not take into account AdditionalAttributes (@cmerat, #77, #78) +- Fix Castle.Services.Logging.SerilogIntegration.dll missing some assembly info attributes (@imzshh, #20, #82) + +## 3.3.3 (2014-11-06) +- Fix Serilog integration modifies LoggerConfiguration.MinimumLevel (#70) +- Add SourceContext to the Serilog logger (@KevivL, #69) + +## 3.3.2 (2014-11-03) +- fixed #66 - SerilogLogger implementation bug where exceptions were passed through incorrectly + +## 3.3.1 (2014-09-10) +- implemented #61 - Added support for Serilog - contributed by Russell J Baker (@ruba1987) + +## 3.3.0 (2014-04-27) +- implemented #51 - removed abandoned projects: Binder, Pagination, Validator +- implemented #49 - build NuGet and Zip packages from TeamCity - contributed by Blair Conrad (@blairconrad) +- implemented #42 - move complicated BuildInternalsVisibleMessageForType method out of DynamicProxyBuilder - contributed by Blair Conrad (@blairconrad) +- fixed #47 - Calling DynamicProxy proxy methods with multidimensional array parameters - contributed by Ed Parcell (@edparcell) +- fixed #44 - DictionaryAdapter FetchAttribute on type has no effect +- fixed #34 and #39 - inaccessible type parameters should give better error messages - contributed by Blair Conrad (@blairconrad) + +## 3.2.2 (2013-11-30) +- fixed #35 - ParameterBuilder.SetConstant fails when using a default value of null - contributed by (@jonasro) + +## 3.2.1 (2013-10-05) +- fixed #32 - Improve configuration of SmtpClient in sync sending - contributed by Artur Dorochowicz (@ArturDorochowicz) +- fixed #31 - [DynamicProxy] Preserve DefaultValues of proxied method's parameters (in .NET 4.5) +- fixed #30 - tailoring InternalsVisibleTo message based on assembly of inaccessible type - contributed by Blair Conrad (@blairconrad) +- fixed #27 - Allow dynamic proxy of generic interfaces which have generic methods, under Mono 2.10.8 and Mono 3.0.6 - contributed by Iain Ballard (@i-e-b) +- fixed #26 - Proxy of COM class issue, reference count incremented - contributed by Jean-Claude Viau (@jcviau) +- fixed DYNPROXY-188 - CreateInterfaceProxyWithoutTarget fails with interface containing member with 'ref UIntPtr' - contributed by Pier Janssen (@Pjanssen) +- fixed DYNPROXY-186 - .Net remoting (transparent proxy) cannot be proxied - contributed by Jean-Claude Viau (@jcviau) +- fixed DYNPROXY-185 - ProxyUtil.GetUnproxiedInstance returns proxy object for ClassProxyWithTarget instead of its target - contributed by Dmitry Xlestkov (@d-s-x) + +## 3.2.0 (2013-02-16) +- fixed DYNPROXY-179 - Exception when creating a generic proxy (from cache) +- fixed DYNPROXY-175 - invalid CompositionInvocation type used when code uses interface proxies with and without InterceptorSelector + +## 3.1.0 (2012-08-05) +- fixed DYNPROXY-174 - Unable to cast object of type 'System.Collections.ObjectModel.ReadOnlyCollection\`1[System.Reflection.CustomAttributeTypedArgument]' to type 'System.Array' + +## 3.1.0 RC (2012-07-08) +- support multiple inheritance of DA attributes on interfaces. +- BREAKING CHANGE: removed propagated child notifications as it violated INotifyPropertyChanged contract +- improved DictionaryAdapter performance +- generalized IBindingList support for DictionaryAdapters +- added reference support to XmlAdapter +- BREAKING CHANGE: refactored XPathAdapter into XmlAdapter with much more flexibility to support other input like XLinq +- implemented CORE-43 - Add option to skip configuring log4net/nlog +- fixed CORE-44 - NLog logger does not preserver call site info +- fixed DYNPROXY-171 - PEVerify error on generic method definition +- fixed DYNPROXY-170 - Calls to properties inside non-intercepted methods are not forwarded to target object (regression from v2.5) +- fixed DYNPROXY-169 - Support IChangeProxyTarget on additional interfaces and mixins when using CreateInterfaceProxyWithTargetInterface + +## 3.0.0 (2011-12-13) +- no major changes since RC + +## 3.0.0 RC 1 (2011-11-20) +- Applied Jeff Sharps patch that refactored Xml DictionaryAdapter to improve maintainability and enable more complete functionality +- fixed DYNPROXY-165 - Object.GetType() and Object.MemberwiseClone() should be ignored and not reported as non-interceptable to IProxyGenerationHook +- fixed DYNPROXY-164 - Invalid Proxy type generated when there are more than one base class generic constraints +- fixed DYNPROXY-162 - ref or out parameters can not be passed back if proxied method throw an exception + +## 3.0.0 beta 1 (2011-08-14) + +Breaking Changes: +* Removed overloads of logging methods that were taking format string from ILogger and ILogger and IExtendedLogger and didn't have word Format in their name. + * For example: + * void Error(string format, params object[] args); // was removed + * void ErrorFormat(string format, params object[] args); //use this one instead + * impact - low + * fixability - medium + * description - To minimize confusion and duplication those methods were removed. + * fix - Use methods that have explicit "Format" word in their name and same signature. +* Removed WebLogger and WebLoggerFactory + * impact - low + * fixability - medium + * description - To minimize management overhead the classes were removed so that only single Client Profile version of Castle.Core can be distributed. + * fix - You can use NLog or Log4Net web logger integration, or reuse implementation of existing web logger and use it as a custom logger. +* Removed obsolete overload of ProxyGenerator.CreateClassProxy + * impact - low + * fixability - trivial + * description - Deprecated overload of ProxyGenerator.CreateClassProxy was removed to keep the method consistent with other methods and to remove confusion + * fix - whenever removed overload was used, use one of the other overloads. +* IProxyGenerationHook.NonVirtualMemberNotification method was renamed + * impact - high + * fixability - easy + * description - to accommodate class proxies with target method NonVirtualMemberNotification on IProxyGenerationHook type was renamed to more accurate + NonProxyableMemberNotification since for class proxies with target not just methods but also fields and other member that break the abstraction will + be passed to this method. + * fix - whenever NonVirtualMemberNotification is used/implemented change the method name to + NonProxyableMemberNotification. Implementors should also accommodate possibility that not + only MethodInfos will be passed as method's second parameter. +* DynamicProxy will now allow to intercept members of System.Object + * impact - very low + * fixability - easy + * description - to allow scenarios like mocking of System.Object members, DynamicProxy will not + disallow proxying of these methods anymore. AllMethodsHook (default IProxyGenerationHook) + will still filter them out though. + * fix - whenever custom IProxyGenerationHook is used, user should account for System.Object's + members being now passed to ShouldInterceptMethod and NonVirtualMemberNotification methods + and if necessary update the code to handle them appropriately. + +Bugfixes: +- fixed CORE-37 - TAB characters in the XML Configuration of a component parameter is read as String.Empty +- fixed DYNPROXY-161 - Strong Named DynamicProxy Assembly Not Available in Silverlight +- fixed DYNPROXY-159 - Sorting MemberInfo array for serialization has side effects +- fixed DYNPROXY-158 - Can't create class proxy with target and without target in same ProxyGenerator +- fixed DYNPROXY-153 - When proxying a generic interface which has an interface as GenericType . No proxy can be created +- fixed DYNPROXY-151 - Cast error when using attributes +- implemented CORE-33 - Add lazy logging +- implemented DYNPROXY-156 - Provide mechanism for interceptors to implement retry logic +- removed obsolete members from ILogger and its implementations + +## 2.5.2 (2010-11-15) +- fixed DYNPROXY-150 - Finalizer should not be proxied +- implemented DYNPROXY-149 - Make AllMethodsHook members virtual so it can be used as a base class +- fixed DYNPROXY-147 - Can't create class proxies with two non-public methods having same argument types but different return type +- fixed DYNPROXY-145 Unable to proxy System.Threading.SynchronizationContext (.NET 4.0) +- fixed DYNPROXY-144 - params argument not supported in constructor +- fixed DYNPROXY-143 - Permit call to reach "non-proxied" methods of inherited interfaces +- implemented DYNPROXY-139 - Better error message +- fixed DYNPROXY-133 - Debug assertion in ClassProxyInstanceContributor fails when proxying ISerializable with an explicit implementation of GetObjectData +- fixed CORE-32 - Determining if permission is granted via PermissionUtil does not work in .NET 4 +- applied patch by Alwin Meijs - ExtendedLog4netFactory can be configured with a stream from for example an embedded log4net xml config +- Upgraded NLog to 2.0 Beta 1 +- Added DefaultXmlSerializer to bridge XPathAdapter with standard Xml Serialization. +- XPathAdapter for DictionaryAdapter added IXPathSerializer to provide hooks for custom serialization. + +## 2.5.1 (2010-09-21) +- Interface proxy with target Interface now accepts null as a valid target value (which can be replaced at a later stage). +- DictionaryAdapter behavior overrides are now ordered with all other behaviors +- BREAKING CHANGE: removed web logger so that by default Castle.Core works in .NET 4 client profile +- added parameter to ModuleScope disabling usage of signed modules. This is to workaround issue DYNPROXY-134. Also a descriptive exception message is being thrown now when the issue is detected. +- Added IDictionaryBehaviorBuilder to allow grouping behaviors +- Added GenericDictionaryAdapter to simplify generic value sources +- fixed issue DYNPROXY-138 - Error message missing space +- fixed false positive where DynamicProxy would not let you proxy interface with target interface when target object was a COM object. +- fixed ReflectionBasedDictionaryAdapter when using indexed properties + +## 2.5.0 (2010-08-21) +- DynamicProxy will now not replicate non-public attribute types +- Applied patch from Kenneth Siewers Møller which adds parameterless constructor to DefaultSmtpSender implementation, to be able to configure the inner SmtpClient from the application configuration file (system.net.smtp). +- added support for .NET 4 and Silverlight 4, updated solution to VisualStudio 2010 +- Removed obsolete overload of CreateClassProxy +- Added class proxy with target +- Added ability to intercept explicitly implemented generic interface methods on class proxy. +- DynamicProxy does not disallow intercepting members of System.Object anymore. AllMethodsHook will still filter them out though. +- Added ability to intercept explicitly implemented interface members on class proxy. Does not support generic members. +- Merged DynamicProxy into Core binary +- fixed DYNPROXY-ISSUE-132 - "MetaProperty equals implementation incorrect" +- Fixed bug in DiagnosticsLoggerTestCase, where when running as non-admin, the teardown will throw SecurityException (contributed by maxild) +- Split IoC specific classes into Castle.Windsor project +- Merged logging services solution +- Merged DynamicProxy project + +## 1.2.0 (2010-01-11) +- Added IEmailSender interface and its default implementation + +## 1.2.0 beta (2009-12-04) +- BREAKING CHANGE - added ChangeProxyTarget method to IChangeProxyTarget interface +- added docs to IChangeProxyTarget methods +- Fixed DYNPROXY-ISSUE-108 - Obtaining replicated custom attributes on proxy may fail when property setter throws exception on default value +- Moved custom attribute replication from CustomAttributeUtil to new interface - IAttributeDisassembler +- Exposed IAttributeDisassembler via ProxyGenerationOptions, so that users can plug their implementation for some convoluted scenarios. (for Silverlight) +- Moved IInterceptorSelector from Dynamic Proxy to Core (IOC-ISSUE-156) + +## 1.1.0 (2009-05-04) +- Applied Eric Hauser's patch fixing CORE-ISSUE-22 + "Support for environment variables in resource URI" +- Applied Gauthier Segay's patch fixing CORE-ISSUE-20 + "Castle.Core.Tests won't build via nant because it use TraceContext without referencing System.Web.dll" +- Added simple interface to ComponentModel to make optional properties required. +- Applied Mark's -- -- patch that changes + the Core to support being compiled for Silverlight 2 +- Applied Louis DeJardin's patch adding TraceLogger as a new logger implementation +- Applied Chris Bilson's patch fixing CORE-15 + "WebLogger Throws When Logging Outside of an HttpContext" + +## Release Candidate 3 +- Added IServiceProviderEx which extends IServiceProvider +- Added Pair class. +- Applied Bill Pierce's patch fixing CORE-9 + "Allow CastleComponent Attribute to Specify Lifestyle in Constructor" +- Added UseSingleInterfaceProxy to CompomentModel to control the proxying + behavior while maintaining backward compatibility. + Added the corresponding ComponentProxyBehaviorAttribute. +- Made NullLogger and IExtnededLogger +- Enabled a new format on ILogger interface, with 6 overloads for each method: + - Debug(string) + - Debug(string, Exception) + - Debug(string, params object[]) + - DebugFormat(string, params object[]) + - DebugFormat(Exception, string, params object[]) + - DebugFormat(IFormatProvider, string, params object[]) + - DebugFormat(IFormatProvider, Exception, string, params object[]) + - The "FatalError" overloads where marked as [Obsolete], replaced by "Fatal" and "FatalFormat". + +## 0.0.1.0 +- Included IProxyTargetAccessor +- Removed IMethodInterceptor and IMethodInvocation, that have been replaced by IInterceptor and IInvocation +- Added FindByPropertyInfo to PropertySetCollection +- Made the DependencyModel.IsOptional property writable +- Applied Curtis Schlak's patch fixing IOC-27 + "assembly resource format only works for resources where the assemblies name and default namespace are the same." + + Quoting: + + "I chose to preserve backwards compatibility by implementing the code in the + reverse order as suggested by the reporter. Given the following URI for a resource: + + assembly://my.cool.assembly/context/moo/file.xml + + It will initially look for an embedded resource with the manifest name of + "my.cool.assembly.context.moo.file.xml" in the loaded assembly my.cool.assembly.dll. + If it does not find it, then it looks for the embedded resource with the manifest name + of "context.moo.file.xml". +- IServiceEnabledComponent Introduced to be used across the project as + a standard way to have access to common services, for example, logger factories +- Added missing log factories +- Refactor StreamLogger and DiagnosticLogger to be more consistent behavior-wise +- Refactored WebLogger to extend LevelFilteredLogger (removed duplication) +- Refactored LoggerLevel order +- Project started diff --git a/Assets/Plugins/NuGet/Castle.Core.5.1.1/CHANGELOG.md.meta b/Assets/Plugins/NuGet/Castle.Core.5.1.1/CHANGELOG.md.meta new file mode 100644 index 0000000..2357e0f --- /dev/null +++ b/Assets/Plugins/NuGet/Castle.Core.5.1.1/CHANGELOG.md.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 0290310fc45b2ad4189328318acb5f83 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Plugins/NuGet/Castle.Core.5.1.1/Castle.Core.nuspec b/Assets/Plugins/NuGet/Castle.Core.5.1.1/Castle.Core.nuspec new file mode 100644 index 0000000..a217977 --- /dev/null +++ b/Assets/Plugins/NuGet/Castle.Core.5.1.1/Castle.Core.nuspec @@ -0,0 +1,33 @@ + + + + Castle.Core + 5.1.1 + Castle Project Contributors + Apache-2.0 + https://licenses.nuget.org/Apache-2.0 + castle-logo.png + http://www.castleproject.org/ + http://www.castleproject.org/img/castle-logo.png + Castle Core, including DynamicProxy, Logging Abstractions and DictionaryAdapter + Copyright (c) 2004-2022 Castle Project - http://www.castleproject.org/ + castle dynamicproxy dynamic proxy dynamicproxy2 dictionaryadapter emailsender + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Assets/Plugins/NuGet/Castle.Core.5.1.1/Castle.Core.nuspec.meta b/Assets/Plugins/NuGet/Castle.Core.5.1.1/Castle.Core.nuspec.meta new file mode 100644 index 0000000..84e10f6 --- /dev/null +++ b/Assets/Plugins/NuGet/Castle.Core.5.1.1/Castle.Core.nuspec.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: adc97fd1dba43824f92ed82f7f7187e6 +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Plugins/NuGet/Castle.Core.5.1.1/LICENSE b/Assets/Plugins/NuGet/Castle.Core.5.1.1/LICENSE new file mode 100644 index 0000000..c8680e4 --- /dev/null +++ b/Assets/Plugins/NuGet/Castle.Core.5.1.1/LICENSE @@ -0,0 +1,13 @@ +Copyright 2004-2021 Castle Project - http://www.castleproject.org/ + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. \ No newline at end of file diff --git a/Assets/Plugins/NuGet/Castle.Core.5.1.1/LICENSE.meta b/Assets/Plugins/NuGet/Castle.Core.5.1.1/LICENSE.meta new file mode 100644 index 0000000..3f7d2be --- /dev/null +++ b/Assets/Plugins/NuGet/Castle.Core.5.1.1/LICENSE.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 08c5a623a27fe6f4eba7273ed3537b70 +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Plugins/NuGet/Castle.Core.5.1.1/castle-logo.png b/Assets/Plugins/NuGet/Castle.Core.5.1.1/castle-logo.png new file mode 100644 index 0000000..947443e --- /dev/null +++ b/Assets/Plugins/NuGet/Castle.Core.5.1.1/castle-logo.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cffc0bbae531794e1191a140cac052613852b6d733760d2dcae3d19a37325a09 +size 3801 diff --git a/Assets/Plugins/NuGet/Castle.Core.5.1.1/castle-logo.png.meta b/Assets/Plugins/NuGet/Castle.Core.5.1.1/castle-logo.png.meta new file mode 100644 index 0000000..6a0645f --- /dev/null +++ b/Assets/Plugins/NuGet/Castle.Core.5.1.1/castle-logo.png.meta @@ -0,0 +1,117 @@ +fileFormatVersion: 2 +guid: 4b628d73174fdef42a0fa3786dc855ce +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 4 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + customData: + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spriteCustomMetadata: + entries: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Plugins/NuGet/Castle.Core.5.1.1/lib.meta b/Assets/Plugins/NuGet/Castle.Core.5.1.1/lib.meta new file mode 100644 index 0000000..7a7ada1 --- /dev/null +++ b/Assets/Plugins/NuGet/Castle.Core.5.1.1/lib.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: e0ddb71abe8fe674a82c909adcb19e0a +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Plugins/NuGet/Castle.Core.5.1.1/lib/netstandard2.1.meta b/Assets/Plugins/NuGet/Castle.Core.5.1.1/lib/netstandard2.1.meta new file mode 100644 index 0000000..cf8d4b6 --- /dev/null +++ b/Assets/Plugins/NuGet/Castle.Core.5.1.1/lib/netstandard2.1.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 650fb62a3b477254196ffc392b0a21c8 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Plugins/NuGet/Castle.Core.5.1.1/lib/netstandard2.1/Castle.Core.dll b/Assets/Plugins/NuGet/Castle.Core.5.1.1/lib/netstandard2.1/Castle.Core.dll new file mode 100644 index 0000000000000000000000000000000000000000..023dc29f8ec686a62a79df092dc31b1922c0c871 GIT binary patch literal 382976 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�p3=wM#8VoO&)?iD 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 + + + Castle.Core + + + + + Abstract adapter for the support + needed by the + + + + + Adds an element with the provided key and value to the object. + + The to use as the key of the element to add. + The to use as the value of the element to add. + An element with the same key already exists in the object. + key is null. + The is read-only.-or- The has a fixed size. + + + + Removes all elements from the object. + + The object is read-only. + + + + Determines whether the object contains an element with the specified key. + + The key to locate in the object. + + true if the contains an element with the key; otherwise, false. + + key is null. + + + + Returns an object for the object. + + + An object for the object. + + + + + Gets a value indicating whether the object has a fixed size. + + true if the object has a fixed size; otherwise, false. + + + + Gets a value indicating whether the object is read-only. + + true if the object is read-only; otherwise, false. + + + + Gets an object containing the keys of the object. + + An object containing the keys of the object. + + + + Removes the element with the specified key from the object. + + The key of the element to remove. + The object is read-only.-or- The has a fixed size. + key is null. + + + + Gets an object containing the values in the object. + + An object containing the values in the object. + + + + Gets or sets the with the specified key. + + + + + Copies the elements of the to an , starting at a particular index. + + The one-dimensional that is the destination of the elements copied from . The must have zero-based indexing. + The zero-based index in array at which copying begins. + array is null. + The type of the source cannot be cast automatically to the type of the destination array. + index is less than zero. + array is multidimensional.-or- index is equal to or greater than the length of array.-or- The number of elements in the source is greater than the available space from index to the end of the destination array. + + + + Gets the number of elements contained in the . + + The number of elements contained in the . + + + + Gets a value indicating whether access to the is synchronized (thread safe). + + true if access to the is synchronized (thread safe); otherwise, false. + + + + Gets an object that can be used to synchronize access to the . + + An object that can be used to synchronize access to the . + + + + Returns an enumerator that iterates through a collection. + + + An object that can be used to iterate through the collection. + + + + + Abstract implementation of . + + + + + Identifies a property should be represented as a nested component. + + + + + Applies no prefix. + + + + + Gets or sets the prefix. + + The prefix. + + + + Identifies the dictionary adapter types. + + + + + Assigns a specific dictionary key. + + + + + Identifies an interface or property to be pre-fetched. + + + + + Instructs fetching to occur. + + + + + Instructs fetching according to + + + + + Gets whether or not fetching should occur. + + + + + Assigns a property to a group. + + + + + Constructs a group assignment. + + The group name. + + + + Constructs a group assignment. + + The group name. + + + + Gets the group the property is assigned to. + + + + + Suppresses any on-demand behaviors. + + + + + Assigns a specific dictionary key. + + + + + Initializes a new instance of the class. + + The key. + + + + Initializes a new instance of the class. + + The compound key. + + + + Assigns a prefix to the keyed properties of an interface. + + + Key prefixes are not inherited by sub-interfaces. + + + + + Initializes a default instance of the class. + + + + + Initializes a new instance of the class. + + The prefix for the keyed properties of the interface. + + + + Gets the prefix key added to the properties of the interface. + + + + + Substitutes part of key with another string. + + + + + Initializes a new instance of the class. + + The old value. + The new value. + + + + Requests support for multi-level editing. + + + + + Generates a new GUID on demand. + + + + + Support for on-demand value resolution. + + + + + Specifies assignment by reference rather than by copying. + + + + + Removes a property if matches value. + + + + + Removes a property if null or empty string, guid or collection. + + + + + Provides simple string formatting from existing properties. + + + + + Gets the string format. + + + + + Gets the format properties. + + + + + Identifies a property should be represented as a delimited string value. + + + + + Gets the separator. + + + + + Converts all properties to strings. + + + + + Gets or sets the format. + + The format. + + + + Suppress property change notifications. + + + + + Assigns a prefix to the keyed properties using the interface name. + + + + + Indicates that underlying values are changeable and should not be cached. + + + + + Initializes a new instance of the class + that represents a child object in a larger object graph. + + + + + Manages conversion between property values. + + + + + Initializes a new instance of the class. + + The converter. + + + + + + + + + Gets the effective dictionary value. + + The dictionary adapter. + The key. + The stored value. + The property. + true if return only existing. + The effective property value. + + + + Uses Reflection.Emit to expose the properties of a dictionary + through a dynamic implementation of a typed interface. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Wraps a with a dynamic object to expose a bit better looking API. + The implementation is trivial and assumes keys are s. + + + + + Contract for manipulating the Dictionary adapter. + + + + + Defines the contract for building typed dictionary adapters. + + + + + Gets a typed adapter bound to the . + + The typed interface. + The underlying source of properties. + An implementation of the typed interface bound to the dictionary. + + The type represented by T must be an interface with properties. + + + + + Gets a typed adapter bound to the . + + The typed interface. + The underlying source of properties. + An implementation of the typed interface bound to the dictionary. + + The type represented by T must be an interface with properties. + + + + + Gets a typed adapter bound to the . + + The typed interface. + The underlying source of properties. + The property descriptor. + An implementation of the typed interface bound to the dictionary. + + The type represented by T must be an interface with properties. + + + + + Gets a typed adapter bound to the . + + The typed interface. + The underlying source of properties. + An implementation of the typed interface bound to the namedValues. + + The type represented by T must be an interface with properties. + + + + + Gets a typed adapter bound to the . + + The typed interface. + The underlying source of properties. + An implementation of the typed interface bound to the namedValues. + + The type represented by T must be an interface with properties. + + + + + Gets a typed adapter bound to the . + + The typed interface. + The underlying source of properties. + An implementation of the typed interface bound to the . + + The type represented by T must be an interface with properties. + + + + + Gets a typed adapter bound to the . + + The typed interface. + The underlying source of properties. + An implementation of the typed interface bound to the . + + The type represented by T must be an interface with properties. + + + + + Gets the associated with the type. + + The typed interface. + The adapter meta-data. + + + + Gets the associated with the type. + + The typed interface. + The property descriptor. + The adapter meta-data. + + + + Gets the associated with the type. + + The typed interface. + Another from which to copy behaviors. + The adapter meta-data. + + + + Contract for traversing a . + + + + + Defines the contract for customizing dictionary access. + + + + + Determines relative order to apply related behaviors. + + + + + Copies the dictionary behavior. + + null if should not be copied. Otherwise copy. + + + + Defines the contract for building s. + + + + + Builds the dictionary behaviors. + + + + + Contract for creating additional Dictionary adapters. + + + + + Contract for editing the Dictionary adapter. + + + + + Contract for dictionary initialization. + + + + + Performs any initialization of the + + The dictionary adapter. + The dictionary behaviors. + + + + Defines the contract for building typed dictionary keys. + + + + + Builds the specified key. + + The dictionary adapter. + The current key. + The property. + The updated key + + + + Contract for dictionary meta-data initialization. + + + + + Initializes the given object. + + The dictionary adapter factory. + The dictionary adapter meta. + + + + + Determines whether the given behavior should be included in a new + object. + + A dictionary behavior or annotation. + True if the behavior should be included; otherwise, false. + + behaviors are always included, + regardless of the result of this method. + + + + + + Contract for managing Dictionary adapter notifications. + + + + + Defines the contract for retrieving dictionary values. + + + + + Gets the effective dictionary value. + + The dictionary adapter. + The key. + The stored value. + The property. + true if return only existing. + The effective property value. + + + + Defines the contract for updating dictionary values. + + + + + Sets the stored dictionary value. + + The dictionary adapter. + The key. + The stored value. + The property. + true if the property should be stored. + + + + Contract for validating Dictionary adapter. + + + + + Contract for dictionary validation. + + + + + Determines if is valid. + + The dictionary adapter. + true if valid. + + + + Validates the . + + The dictionary adapter. + The error summary information. + + + + Validates the for a property. + + The dictionary adapter. + The property to validate. + The property summary information. + + + + Invalidates any results cached by the validator. + + The dictionary adapter. + + + + Contract for property descriptor initialization. + + + + + Performs any initialization of the + + The property descriptor. + The property behaviors. + + + + + + + + + Initializes a new instance of the class. + + The name values. + + + + Gets a value indicating whether the object is read-only. + + true if the object is read-only; otherwise, false. + + + + Determines whether the object contains an element with the specified key. + + The key to locate in the object. + + true if the contains an element with the key; otherwise, false. + + key is null. + + + + Gets or sets the with the specified key. + + + + + Adapts the specified name values. + + The name values. + + + + Describes a dictionary property. + + + + + Initializes an empty class. + + + + + Initializes a new instance of the class. + + The property. + The annotations. + + + + Initializes a new instance class. + + + + + Copies an existing instance of the class. + + + + + + + + + + Gets the property name. + + + + + Gets the property type. + + + + + Gets the property. + + The property. + + + + Returns true if the property is dynamic. + + + + + Gets additional state. + + + + + Determines if property should be fetched. + + + + + Determines if property must exist first. + + + + + Determines if notifications should occur. + + + + + Gets the property behaviors. + + + + + Gets the type converter. + + The type converter. + + + + Gets the extended properties. + + + + + Gets the setter. + + The setter. + + + + Gets the key builders. + + The key builders. + + + + Gets the setter. + + The setter. + + + + Gets the getter. + + The getter. + + + + Gets the initializers. + + The initializers. + + + + Gets the meta-data initializers. + + The meta-data initializers. + + + + Gets the key. + + The dictionary adapter. + The key. + The descriptor. + + + + Gets the property value. + + The dictionary adapter. + The key. + The stored value. + The descriptor. + true if return only existing. + + + + Sets the property value. + + The dictionary adapter. + The key. + The value. + The descriptor. + + + + Adds a single behavior. + + The behavior. + + + + Adds the behaviors. + + The behaviors. + + + + Adds the behaviors. + + The behaviors. + + + + Copies the behaviors to the other + + + + + Copies the + + + + + Provides a generic collection that supports data binding. + + + This class wraps the CLR + in order to implement the Castle-specific . + + The type of elements in the list. + + + + Initializes a new instance of the class + using default values. + + + + + Initializes a new instance of the class + with the specified list. + + + An of items + to be contained in the . + + + + + Initializes a new instance of the class + wrapping the specified instance. + + + A + to be wrapped by the . + + + + + Contract for value matching. + + + + + Contract for dynamic value resolution. + + + + + Contract for typed dynamic value resolution. + + + + + + This is an abstract implementation + that deals with methods that can be abstracted away + from underlying implementations. + + + AbstractConfiguration makes easier to implementers + to create a new version of + + + + + Gets node attributes. + + + All attributes of the node. + + + + + Gets all child nodes. + + The of child nodes. + + + + Gets the name of the . + + + The Name of the . + + + + + Gets the value of . + + + The Value of the . + + + + + Gets the value of the node and converts it + into specified . + + The + + The Default value returned if the conversion fails. + + The Value converted into the specified type. + + + + A collection of objects. + + + + + Creates a new instance of ConfigurationCollection. + + + + + Creates a new instance of ConfigurationCollection. + + + + + is a interface encapsulating a configuration node + used to retrieve configuration values. + + + + + Gets the name of the node. + + + The Name of the node. + + + + + Gets the value of the node. + + + The Value of the node. + + + + + Gets an of + elements containing all node children. + + The Collection of child nodes. + + + + Gets an of the configuration attributes. + + + + + Gets the value of the node and converts it + into specified . + + The + + The Default value returned if the conversion fails. + + The Value converted into the specified type. + + + + Initializes a new instance of the class. + + The name. + + + + Gets the value of . + + + The Value of the . + + + + + Deserializes the specified node into an abstract representation of configuration. + + The node. + + + + If a config value is an empty string we return null, this is to keep + backward compatibility with old code + + + + + Helper class for retrieving attributes. + + + + + Gets the attribute. + + The type. + The type attribute. + + + + Gets the attributes. Does not consider inherited attributes! + + The type. + The type attributes. + + + + Gets the attribute. + + The member. + The member attribute. + + + + Gets the attributes. Does not consider inherited attributes! + + The member. + The member attributes. + + + + Gets the type attribute. + + The type. + The type attribute. + + + + Gets the type attributes. + + The type. + The type attributes. + + + + Gets the type converter. + + The member. + + + + Constant to use when making assembly internals visible to Castle.Core + [assembly: InternalsVisibleTo(CoreInternalsVisible.ToCastleCore)] + + + + + Constant to use when making assembly internals visible to proxy types generated by DynamicProxy. Required when proxying internal types. + [assembly: InternalsVisibleTo(CoreInternalsVisible.ToDynamicProxyGenAssembly2)] + + + + + Find the best available name to describe a type. + + + Usually the best name will be , but + sometimes that's null (see http://msdn.microsoft.com/en-us/library/system.type.fullname%28v=vs.110%29.aspx) + in which case the method falls back to . + + the type to name + the best name + + + + Defines that the implementation wants a + in order to + access other components. The creator must be aware + that the component might (or might not) implement + the interface. + + + Used by Castle Project components to, for example, + gather logging factories + + + + + Increments IServiceProvider with a generic service resolution operation. + + + + + This interface should be implemented by classes + that are available in a bigger context, exposing + the container to different areas in the same application. + + For example, in Web application, the (global) HttpApplication + subclasses should implement this interface to expose + the configured container + + + + + + Creates a new extended logger, getting the logger name from the specified type. + + + + + Creates a new extended logger. + + + + + Creates a new extended logger, getting the logger name from the specified type. + + + + + Creates a new extended logger. + + + + + Creates a new logger, getting the logger name from the specified type. + + + + + Creates a new logger. + + + + + Creates a new logger, getting the logger name from the specified type. + + + + + Creates a new logger. + + + + + Gets the configuration file. + + i.e. log4net.config + + + + Gets the configuration file. + + i.e. log4net.config + + + + The Logger sending everything to the standard output streams. + This is mainly for the cases when you have a utility that + does not have a logger to supply. + + + + + Creates a new ConsoleLogger with the Level + set to LoggerLevel.Debug and the Name + set to string.Empty. + + + + + Creates a new ConsoleLogger with the Name + set to string.Empty. + + The logs Level. + + + + Creates a new ConsoleLogger with the Level + set to LoggerLevel.Debug. + + The logs Name. + + + + Creates a new ConsoleLogger. + + The logs Name. + The logs Level. + + + + A Common method to log. + + The level of logging + The name of the logger + The Message + The Exception + + + + Returns a new ConsoleLogger with the name + added after this loggers name, with a dot in between. + + The added hierarchical name. + A new ConsoleLogger. + + + + The Logger using standard Diagnostics namespace. + + + + + Creates a logger based on . + + + + + + Creates a logger based on . + + + + + + + Creates a logger based on . + + + + + + + + Interface for Context Properties implementations + + + + This interface defines a basic property get set accessor. + + + Based on the ContextPropertiesBase of log4net, by Nicko Cadell. + + + + + + Gets or sets the value of a property + + + The value for the property with the specified key + + + + Gets or sets the value of a property + + + + + + Provides an interface that supports and + allows the storage and retrieval of Contexts. These are supported in + both log4net and NLog. + + + + + Exposes the Global Context of the extended logger. + + + + + Exposes the Thread Context of the extended logger. + + + + + Exposes the Thread Stack of the extended logger. + + + + + Provides a factory that can produce either or + classes. + + + + + Creates a new extended logger, getting the logger name from the specified type. + + + + + Creates a new extended logger. + + + + + Creates a new extended logger, getting the logger name from the specified type. + + + + + Creates a new extended logger. + + + + + Manages logging. + + + This is a facade for the different logging subsystems. + It offers a simplified interface that follows IOC patterns + and a simplified priority/level/severity abstraction. + + + + + Determines if messages of priority "trace" will be logged. + + True if "trace" messages will be logged. + + + + Determines if messages of priority "debug" will be logged. + + True if "debug" messages will be logged. + + + + Determines if messages of priority "error" will be logged. + + True if "error" messages will be logged. + + + + Determines if messages of priority "fatal" will be logged. + + True if "fatal" messages will be logged. + + + + Determines if messages of priority "info" will be logged. + + True if "info" messages will be logged. + + + + Determines if messages of priority "warn" will be logged. + + True if "warn" messages will be logged. + + + + Create a new child logger. + The name of the child logger is [current-loggers-name].[passed-in-name] + + The Subname of this logger. + The New ILogger instance. + If the name has an empty element name. + + + + Logs a trace message. + + The message to log + + + + Logs a trace message with lazily constructed message. The message will be constructed only if the is true. + + + + + Logs a trace message. + + The exception to log + The message to log + + + + Logs a trace message. + + Format string for the message to log + Format arguments for the message to log + + + + Logs a trace message. + + The exception to log + Format string for the message to log + Format arguments for the message to log + + + + Logs a trace message. + + The format provider to use + Format string for the message to log + Format arguments for the message to log + + + + Logs a trace message. + + The exception to log + The format provider to use + Format string for the message to log + Format arguments for the message to log + + + + Logs a debug message. + + The message to log + + + + Logs a debug message with lazily constructed message. The message will be constructed only if the is true. + + + + + Logs a debug message. + + The exception to log + The message to log + + + + Logs a debug message. + + Format string for the message to log + Format arguments for the message to log + + + + Logs a debug message. + + The exception to log + Format string for the message to log + Format arguments for the message to log + + + + Logs a debug message. + + The format provider to use + Format string for the message to log + Format arguments for the message to log + + + + Logs a debug message. + + The exception to log + The format provider to use + Format string for the message to log + Format arguments for the message to log + + + + Logs an error message. + + The message to log + + + + Logs an error message with lazily constructed message. The message will be constructed only if the is true. + + + + + Logs an error message. + + The exception to log + The message to log + + + + Logs an error message. + + Format string for the message to log + Format arguments for the message to log + + + + Logs an error message. + + The exception to log + Format string for the message to log + Format arguments for the message to log + + + + Logs an error message. + + The format provider to use + Format string for the message to log + Format arguments for the message to log + + + + Logs an error message. + + The exception to log + The format provider to use + Format string for the message to log + Format arguments for the message to log + + + + Logs a fatal message. + + The message to log + + + + Logs a fatal message with lazily constructed message. The message will be constructed only if the is true. + + + + + Logs a fatal message. + + The exception to log + The message to log + + + + Logs a fatal message. + + Format string for the message to log + Format arguments for the message to log + + + + Logs a fatal message. + + The exception to log + Format string for the message to log + Format arguments for the message to log + + + + Logs a fatal message. + + The format provider to use + Format string for the message to log + Format arguments for the message to log + + + + Logs a fatal message. + + The exception to log + The format provider to use + Format string for the message to log + Format arguments for the message to log + + + + Logs an info message. + + The message to log + + + + Logs a info message with lazily constructed message. The message will be constructed only if the is true. + + + + + Logs an info message. + + The exception to log + The message to log + + + + Logs an info message. + + Format string for the message to log + Format arguments for the message to log + + + + Logs an info message. + + The exception to log + Format string for the message to log + Format arguments for the message to log + + + + Logs an info message. + + The format provider to use + Format string for the message to log + Format arguments for the message to log + + + + Logs an info message. + + The exception to log + The format provider to use + Format string for the message to log + Format arguments for the message to log + + + + Logs a warn message. + + The message to log + + + + Logs a warn message with lazily constructed message. The message will be constructed only if the is true. + + + + + Logs a warn message. + + The exception to log + The message to log + + + + Logs a warn message. + + Format string for the message to log + Format arguments for the message to log + + + + Logs a warn message. + + The exception to log + Format string for the message to log + Format arguments for the message to log + + + + Logs a warn message. + + The format provider to use + Format string for the message to log + Format arguments for the message to log + + + + Logs a warn message. + + The exception to log + The format provider to use + Format string for the message to log + Format arguments for the message to log + + + + Manages the instantiation of s. + + + + + Creates a new logger, getting the logger name from the specified type. + + + + + Creates a new logger. + + + + + Creates a new logger, getting the logger name from the specified type. + + + + + Creates a new logger. + + + + + The Level Filtered Logger class. This is a base class which + provides a LogLevel attribute and reroutes all functions into + one Log method. + + + + + Creates a new LevelFilteredLogger. + + + + + The LoggerLevel that this logger + will be using. Defaults to LoggerLevel.Off + + + + + The name that this logger will be using. + Defaults to string.Empty + + + + + Logs a trace message. + + The message to log + + + + Logs a trace message. + + A functor to create the message + + + + Logs a trace message. + + The exception to log + The message to log + + + + Logs a trace message. + + Format string for the message to log + Format arguments for the message to log + + + + Logs a trace message. + + The exception to log + Format string for the message to log + Format arguments for the message to log + + + + Logs a trace message. + + The format provider to use + Format string for the message to log + Format arguments for the message to log + + + + Logs a trace message. + + The exception to log + The format provider to use + Format string for the message to log + Format arguments for the message to log + + + + Logs a debug message. + + The message to log + + + + Logs a debug message. + + The exception to log + The message to log + + + + Logs a debug message. + + Format string for the message to log + Format arguments for the message to log + + + + Logs a debug message. + + The exception to log + Format string for the message to log + Format arguments for the message to log + + + + Logs a debug message. + + The format provider to use + Format string for the message to log + Format arguments for the message to log + + + + Logs a debug message. + + The exception to log + The format provider to use + Format string for the message to log + Format arguments for the message to log + + + + Logs an info message. + + The message to log + + + + Logs an info message. + + The exception to log + The message to log + + + + Logs an info message. + + Format string for the message to log + Format arguments for the message to log + + + + Logs an info message. + + The exception to log + Format string for the message to log + Format arguments for the message to log + + + + Logs an info message. + + The format provider to use + Format string for the message to log + Format arguments for the message to log + + + + Logs an info message. + + The exception to log + The format provider to use + Format string for the message to log + Format arguments for the message to log + + + + Logs a warn message. + + The message to log + + + + Logs a warn message. + + The exception to log + The message to log + + + + Logs a warn message. + + Format string for the message to log + Format arguments for the message to log + + + + Logs a warn message. + + The exception to log + Format string for the message to log + Format arguments for the message to log + + + + Logs a warn message. + + The format provider to use + Format string for the message to log + Format arguments for the message to log + + + + Logs a warn message. + + The exception to log + The format provider to use + Format string for the message to log + Format arguments for the message to log + + + + Logs an error message. + + The message to log + + + + Logs an error message. + + The exception to log + The message to log + + + + Logs an error message. + + Format string for the message to log + Format arguments for the message to log + + + + Logs an error message. + + The exception to log + Format string for the message to log + Format arguments for the message to log + + + + Logs an error message. + + The format provider to use + Format string for the message to log + Format arguments for the message to log + + + + Logs an error message. + + The exception to log + The format provider to use + Format string for the message to log + Format arguments for the message to log + + + + Logs a fatal message. + + The message to log + + + + Logs a fatal message. + + The exception to log + The message to log + + + + Logs a fatal message. + + Format string for the message to log + Format arguments for the message to log + + + + Logs a fatal message. + + The exception to log + Format string for the message to log + Format arguments for the message to log + + + + Logs a fatal message. + + The format provider to use + Format string for the message to log + Format arguments for the message to log + + + + Logs a fatal message. + + The exception to log + The format provider to use + Format string for the message to log + Format arguments for the message to log + + + + Determines if messages of priority "trace" will be logged. + + true if log level flags include the bit + + + + Determines if messages of priority "debug" will be logged. + + true if log level flags include the bit + + + + Determines if messages of priority "info" will be logged. + + true if log level flags include the bit + + + + Determines if messages of priority "warn" will be logged. + + true if log level flags include the bit + + + + Determines if messages of priority "error" will be logged. + + true if log level flags include the bit + + + + Determines if messages of priority "fatal" will be logged. + + true if log level flags include the bit + + + + Implementors output the log content by implementing this method only. + Note that exception can be null + + + + + Supporting Logger levels. + + + + + Logging will be off + + + + + Fatal logging level + + + + + Error logging level + + + + + Warn logging level + + + + + Info logging level + + + + + Debug logging level + + + + + Trace logging level + + + + + NullLogFactory used when logging is turned off. + + + + + Creates an instance of ILogger with the specified name. + + Name. + + + + Creates an instance of ILogger with the specified name and LoggerLevel. + + Name. + Level. + + + + The Null Logger class. This is useful for implementations where you need + to provide a logger to a utility class, but do not want any output from it. + It also helps when you have a utility that does not have a logger to supply. + + + + + Returns empty context properties. + + + + + Returns empty context properties. + + + + + Returns empty context stacks. + + + + + No-op. + + false + + + + No-op. + + false + + + + No-op. + + false + + + + No-op. + + false + + + + No-op. + + false + + + + No-op. + + false + + + + Returns this NullLogger. + + Ignored + This ILogger instance. + + + + No-op. + + Ignored + + + + No-op. + + Ignored + Ignored + + + + No-op. + + Ignored + Ignored + + + + No-op. + + Ignored + Ignored + Ignored + + + + No-op. + + Ignored + Ignored + Ignored + + + + No-op. + + Ignored + Ignored + Ignored + Ignored + + + + No-op. + + Ignored + + + + No-op. + + Ignored + Ignored + + + + No-op. + + Ignored + Ignored + + + + No-op. + + Ignored + Ignored + Ignored + + + + No-op. + + Ignored + Ignored + Ignored + + + + No-op. + + Ignored + Ignored + Ignored + Ignored + + + + No-op. + + Ignored + + + + No-op. + + Ignored + Ignored + + + + No-op. + + Ignored + Ignored + + + + No-op. + + Ignored + Ignored + Ignored + + + + No-op. + + Ignored + Ignored + Ignored + + + + No-op. + + Ignored + Ignored + Ignored + Ignored + + + + No-op. + + Ignored + + + + No-op. + + Ignored + Ignored + + + + No-op. + + Ignored + Ignored + + + + No-op. + + Ignored + Ignored + Ignored + + + + No-op. + + Ignored + Ignored + Ignored + + + + No-op. + + Ignored + Ignored + Ignored + Ignored + + + + No-op. + + Ignored + + + + No-op. + + Ignored + Ignored + + + + No-op. + + Ignored + Ignored + + + + No-op. + + Ignored + Ignored + Ignored + + + + No-op. + + Ignored + Ignored + Ignored + + + + No-op. + + Ignored + Ignored + Ignored + Ignored + + + + No-op. + + Ignored + + + + No-op. + + Ignored + Ignored + + + + No-op. + + Ignored + Ignored + + + + No-op. + + Ignored + Ignored + Ignored + + + + No-op. + + Ignored + Ignored + Ignored + + + + No-op. + + Ignored + Ignored + Ignored + Ignored + + + + The Stream Logger class. This class can stream log information + to any stream, it is suitable for storing a log file to disk, + or to a MemoryStream for testing your components. + + + This logger is not thread safe. + + + + + Creates a new StreamLogger with default encoding + and buffer size. Initial Level is set to Debug. + + + The name of the log. + + + The stream that will be used for logging, + seeking while the logger is alive + + + + + Creates a new StreamLogger with default buffer size. + Initial Level is set to Debug. + + + The name of the log. + + + The stream that will be used for logging, + seeking while the logger is alive + + + The encoding that will be used for this stream. + + + + + + Creates a new StreamLogger. + Initial Level is set to Debug. + + + The name of the log. + + + The stream that will be used for logging, + seeking while the logger is alive + + + The encoding that will be used for this stream. + + + + The buffer size that will be used for this stream. + + + + + + Creates a new StreamLogger with + Debug as default Level. + + The name of the log. + The StreamWriter the log will write to. + + + + Creates outputting + to files. The name of the file is derived from the log name + plus the 'log' extension. + + + + + The TraceLogger sends all logging to the System.Diagnostics.TraceSource + built into the .net framework. + + + Logging can be configured in the system.diagnostics configuration + section. + + If logger doesn't find a source name with a full match it will + use source names which match the namespace partially. For example you can + configure from all castle components by adding a source name with the + name "Castle". + + If no portion of the namespace matches the source named "Default" will + be used. + + + + + Build a new trace logger based on the named TraceSource + + The name used to locate the best TraceSource. In most cases comes from the using type's fullname. + + + + Build a new trace logger based on the named TraceSource + + The name used to locate the best TraceSource. In most cases comes from the using type's fullname. + The default logging level at which this source should write messages. In almost all cases this + default value will be overridden in the config file. + + + + Create a new child logger. + The name of the child logger is [current-loggers-name].[passed-in-name] + + The Subname of this logger. + The New ILogger instance. + + + + Used to create the TraceLogger implementation of ILogger interface. See . + + + + + List of utility methods related to dynamic proxy operations + + + + + Determines whether the specified type is a proxy generated by + DynamicProxy (1 or 2). + + The type. + + true if it is a proxy; otherwise, false. + + + + + Readonly implementation of which uses an anonymous object as its source. Uses names of properties as keys, and property values as... well - values. Keys are not case sensitive. + + + + + Initializes a new instance of the class. + + The target. + + + + Gets the number of elements contained in the . + + The number of elements contained in the . + + + + Gets a value indicating whether access to the is synchronized (thread safe). + + true if access to the is synchronized (thread safe); otherwise, false. + + + + Gets an object that can be used to synchronize access to the . + + An object that can be used to synchronize access to the . + + + + Gets a value indicating whether the object is read-only. + + true if the object is read-only; otherwise, false. + + + + Gets or sets the with the specified key. + + + + + Gets an object containing the keys of the object. + + An object containing the keys of the object. + + + + Gets an object containing the values in the object. + + An object containing the values in the object. + + + + Gets a value indicating whether the object has a fixed size. + + true if the object has a fixed size; otherwise, false. + + + + Adds an element with the provided key and value to the object. + + The to use as the key of the element to add. + The to use as the value of the element to add. + + is null. + An element with the same key already exists in the object. + The is read-only.-or- The has a fixed size. + + + + Removes all elements from the object. + + The object is read-only. + + + + Determines whether the object contains an element with the specified key. + + The key to locate in the object. + + true if the contains an element with the key; otherwise, false. + + + is null. + + + + Removes the element with the specified key from the object. + + The key of the element to remove. + + is null. + The object is read-only.-or- The has a fixed size. + + + + Returns an enumerator that iterates through a collection. + + + An object that can be used to iterate through the collection. + + + + + Copies the elements of the to an , starting at a particular index. + + The one-dimensional that is the destination of the elements copied from . The must have zero-based indexing. + The zero-based index in at which copying begins. + + is null. + + is less than zero. + + is multidimensional.-or- is equal to or greater than the length of .-or- The number of elements in the source is greater than the available space from to the end of the destination . + The type of the source cannot be cast automatically to the type of the destination . + + + + Returns an object for the object. + + + An object for the object. + + + + + Reads values of properties from and inserts them into using property names as keys. + + + + + + + + + + This returns a new stream instance each time it is called. + It is the responsibility of the caller to dispose of this stream + + + + + + + + + + + + + + + Represents a 'streamable' resource. Can + be a file, a resource in an assembly. + + + + + Only valid for resources that + can be obtained through relative paths + + + + + Returns a reader for the stream + + + It's up to the caller to dispose the reader. + + + + + Returns a reader for the stream + + + It's up to the caller to dispose the reader. + + + + + Returns an instance of + created according to the relativePath + using itself as the root. + + + + + Depicts the contract for resource factories. + + + + + Used to check whether the resource factory + is able to deal with the given resource + identifier. + + + Implementors should return true + only if the given identifier is supported + by the resource factory + + + + + Creates an instance + for the given resource identifier + + + + + Creates an instance + for the given resource identifier + + + + + Adapts a static string content as an + + + + + Enable access to files on network shares + + + + + Default implementation. + + + + + Initializes a new instance of the class based on the configuration provided in the application configuration file. + + + This constructor is based on the default configuration in the application configuration file. + + + + + This service implementation + requires a host name in order to work + + The smtp server name + + + + Gets or sets the port used to + access the SMTP server + + + + + Gets the hostname. + + The hostname. + + + + Gets or sets a value which is used to + configure if emails are going to be sent asynchronously or not. + + + + + Gets or sets a value that specifies + the amount of time after which a synchronous Send call times out. + + + + + Gets or sets a value indicating whether the email should be sent using + a secure communication channel. + + true if should use SSL; otherwise, false. + + + + Sends a message. + + If any of the parameters is null + From field + To field + e-mail's subject + message's body + + + + Sends a message. + + If the message is null + Message instance + + + + Gets or sets the domain. + + The domain. + + + + Gets or sets the name of the user. + + The name of the user. + + + + Gets or sets the password. + + The password. + + + + Configures the sender + with port information and eventual credential + informed + + Message instance + + + + Gets a value indicating whether credentials were informed. + + + if this instance has credentials; otherwise, . + + + + + Email sender abstraction. + + + + + Sends a mail message. + + From field + To field + E-mail's subject + message's body + + + + Sends a message. + + Message instance + + + + Sends multiple messages. + + List of messages + + + + Interface describing elements composing generated type + + + + + Performs some basic screening and invokes the + to select methods. + + + + + Performs some basic screening to filter out non-interceptable methods. + + + The will get invoked for non-interceptable method notification only; + it does not get asked whether or not to intercept the . + + + + + Reproduces the proxied type's non-inheritable custom attributes on the proxy type. + + + + + Adds an implementation for to the proxy type. + + + + + Encapsulates the information needed to build an attribute. + + + Arrays passed to this class as constructor arguments or property or field values become owned by this class. + They should not be mutated after creation. + + + + + Default implementation of interface producing in-memory proxy assemblies. + + + + + Initializes a new instance of the class with new . + + + + + Initializes a new instance of the class. + + The module scope for generated proxy types. + + + + Provides instructions that a user could follow to make a type or method in + visible to DynamicProxy. + The assembly containing the type or method. + Instructions that a user could follow to make a type or method visible to DynamicProxy. + + + + Creates a message to inform clients that a proxy couldn't be created due to reliance on an + inaccessible type (perhaps itself). + + the inaccessible type that prevents proxy creation + the type that couldn't be proxied + + + + Base class that exposes the common functionalities + to proxy generation. + + + + + It is safe to add mapping (no mapping for the interface exists) + + + + + Generates a parameters constructor that initializes the proxy + state with just to make it non-null. + + This constructor is important to allow proxies to be XML serializable + + + + + + Initializes a new instance of the class. + + Target element. This is either target type or target method for invocation types. + The type of the proxy. This is base type for invocation types. + The interfaces. + The options. + + + + Initializes a new instance of the class. + + Type of the target. + The interfaces. + The options. + + + + Provides appropriate Ldc.X opcode for the type of primitive value to be loaded. + + + + + Provides appropriate Ldind.X opcode for + the type of primitive value to be loaded indirectly. + + + + + Emits a load indirect opcode of the appropriate type for a value or object reference. + Pops a pointer off the evaluation stack, dereferences it and loads + a value of the specified type. + + + + + Emits a load opcode of the appropriate kind for the constant default value of a + type, such as 0 for value types and null for reference types. + + + + + Emits a store indirectopcode of the appropriate type for a value or object reference. + Pops a value of the specified type and a pointer off the evaluation stack, and + stores the value. + + + + + Wraps a reference that is passed + ByRef and provides indirect load/store support. + + + + + Provides appropriate Stind.X opcode + for the type of primitive value to be stored indirectly. + + + + + Represents the scope of uniqueness of names for types and their members + + + + + Gets a unique name based on + + Name suggested by the caller + Unique name based on . + + Implementers should provide name as closely resembling as possible. + Generally if no collision occurs it is suggested to return suggested name, otherwise append sequential suffix. + Implementers must return deterministic names, that is when is called twice + with the same suggested name, the same returned name should be provided each time. Non-deterministic return + values, like appending random suffices will break serialization of proxies. + + + + + Returns new, disposable naming scope. It is responsibility of the caller to make sure that no naming collision + with enclosing scope, or other subscopes is possible. + + New naming scope. + + + + Generates the constructor for the class that extends + + + + + + Initializes a new instance of the class. + + The event. + The add method. + The remove method. + The attributes. + + + + Returns the methods implemented by a type. Use this instead of Type.GetMethods() to work around a CLR issue + where duplicate MethodInfos are returned by Type.GetMethods() after a token of a generic type's method was loaded. + + + + + Exposes means to change target objects of proxies and invocations. + + + + + Changes the target object () of current . + + The new value of target of invocation. + + Although the method takes the actual instance must be of type assignable to , otherwise an will be thrown. + Also while it's technically legal to pass null reference (Nothing in Visual Basic) as , for obvious reasons Dynamic Proxy will not be able to call the intercepted method on such target. + In this case last interceptor in the pipeline mustn't call or a will be throws. + Also while it's technically legal to pass proxy itself as , this would create stack overflow. + In this case last interceptor in the pipeline mustn't call or a will be throws. + + Thrown when is not assignable to the proxied type. + + + + Permanently changes the target object of the proxy. This does not affect target of the current invocation. + + The new value of target of the proxy. + + Although the method takes the actual instance must be of type assignable to proxy's target type, otherwise an will be thrown. + Also while it's technically legal to pass null reference (Nothing in Visual Basic) as , for obvious reasons Dynamic Proxy will not be able to call the intercepted method on such target. + In this case last interceptor in the pipeline mustn't call or a will be throws. + Also while it's technically legal to pass proxy itself as , this would create stack overflow. + In this case last interceptor in the pipeline mustn't call or a will be throws. + + Thrown when is not assignable to the proxied type. + + + + Provides the main DynamicProxy extension point that allows member interception. + + + + + Provides an extension point that allows proxies to choose specific interceptors on + a per method basis. + + + + + Selects the interceptors that should intercept calls to the given . + + The type of the target object. + The method that will be intercepted. + All interceptors registered with the proxy. + An array of interceptors to invoke upon calling the . + + This method is called only once per proxy instance, upon the first call to the + . Either an empty array or null are valid return values to indicate + that no interceptor should intercept calls to the method. Although it is not advised, it is + legal to return other implementations than these provided in + . + + + + + Encapsulates an invocation of a proxied method. + + + + + Gets the arguments that the has been invoked with. + + The arguments the method was invoked with. + + + + Gets the generic arguments of the method. + + The generic arguments, or null if not a generic method. + + + + Gets the object on which the invocation is performed. This is different from proxy object + because most of the time this will be the proxy target object. + + + The invocation target. + + + + Gets the representing the method being invoked on the proxy. + + The representing the method being invoked. + + + + For interface proxies, this will point to the on the target class. + + The method invocation target. + + + + Gets the proxy object on which the intercepted method is invoked. + + Proxy object on which the intercepted method is invoked. + + + + Gets or sets the return value of the method. + + The return value of the method. + + + + Gets the type of the target object for the intercepted method. + + The type of the target object. + + + + Gets the value of the argument at the specified . + + The index. + The value of the argument at the specified . + + + + Returns the concrete instantiation of the on the proxy, with any generic + parameters bound to real types. + + + The concrete instantiation of the on the proxy, or the if + not a generic method. + + + Can be slower than calling . + + + + + Returns the concrete instantiation of , with any + generic parameters bound to real types. + For interface proxies, this will point to the on the target class. + + The concrete instantiation of , or + if not a generic method. + + In debug builds this can be slower than calling . + + + + + Proceeds the call to the next interceptor in line, and ultimately to the target method. + + + Since interface proxies without a target don't have the target implementation to proceed to, + it is important, that the last interceptor does not call this method, otherwise a + will be thrown. + + + + + Returns an object describing the operation for this + at this specific point during interception. + + + + + Overrides the value of an argument at the given with the + new provided. + + + This method accepts an , however the value provided must be compatible + with the type of the argument defined on the method, otherwise an exception will be thrown. + + The index of the argument to override. + The new value for the argument. + + + + Describes the operation for an + at a specific point during interception. + + + + + Executes the operation described by this instance. + + There is no interceptor, nor a proxy target object, to proceed to. + + + + Attributes should be replicated if they are non-inheritable, + but there are some special cases where the attributes means + something to the CLR, where they should be skipped. + + + + + Returns list of all unique interfaces implemented given types, including their base interfaces. + + + + + Checks whether the specified is a delegate type (i.e. a direct subclass of ). + + + + + Abstracts the implementation of proxy type construction. + + + + + Gets or sets the that this logs to. + + + + + Gets the associated with this builder. + + The module scope associated with this builder. + + + + Creates a proxy type for given , implementing , using provided. + + The class type to proxy. + Additional interface types to proxy. + The proxy generation options. + The generated proxy type. + + Implementers should return a proxy type for the specified class and interfaces. + Additional interfaces should be only 'mark' interfaces, that is, they should work like interface proxy without target. (See method.) + + Thrown when or any of is a generic type definition. + Thrown when or any of is not public. + Note that to avoid this exception, you can mark offending type internal, and define + pointing to Castle Dynamic Proxy assembly, in assembly containing that type, if this is appropriate. + + + + + Creates a proxy type that proxies calls to members on , implementing , using provided. + + The interface type to proxy. + Additional interface types to proxy. + Type implementing on which calls to the interface members should be intercepted. + The proxy generation options. + The generated proxy type. + + Implementers should return a proxy type for the specified interface that 'proceeds' executions to the specified target. + Additional interfaces should be only 'mark' interfaces, that is, they should work like interface proxy without target. (See method.) + + Thrown when or any of is a generic type definition. + Thrown when or any of is not public. + Note that to avoid this exception, you can mark offending type internal, and define + pointing to Castle Dynamic Proxy assembly, in assembly containing that type, if this is appropriate. + + + + + Creates a proxy type for given and that delegates all calls to the provided interceptors and allows interceptors to switch the actual target of invocation. + + The interface type to proxy. + Additional interface types to proxy. + The proxy generation options. + The generated proxy type. + + Implementers should return a proxy type for the specified interface(s) that delegate all executions to the specified interceptors + and uses an instance of the interface as their targets (i.e. ), rather than a class. All classes should then implement interface, + to allow interceptors to switch invocation target with instance of another type implementing called interface. + + Thrown when or any of is a generic type definition. + Thrown when or any of is not public. + Note that to avoid this exception, you can mark offending type internal, and define + pointing to Castle Dynamic Proxy assembly, in assembly containing that type, if this is appropriate. + + + + + Creates a proxy type for given that delegates all calls to the provided interceptors. + + The interface type to proxy. + Additional interface types to proxy. + The proxy generation options. + The generated proxy type. + + Implementers should return a proxy type for the specified interface and additional interfaces that delegate all executions to the specified interceptors. + + Thrown when or any of is a generic type definition. + Thrown when or any of is not public. + Note that to avoid this exception, you can mark offending type internal, and define + pointing to Castle Dynamic Proxy assembly, in assembly containing that type, if this is appropriate. + + + + + Used during the target type inspection process. Implementors have a chance to customize the + proxy generation process. + + + + + Invoked by the generation process to notify that the whole process has completed. + + + + + Invoked by the generation process to notify that a member was not marked as virtual. + + The type which declares the non-virtual member. + The non-virtual member. + + This method gives an opportunity to inspect any non-proxyable member of a type that has + been requested to be proxied, and if appropriate - throw an exception to notify the caller. + + + + + Invoked by the generation process to determine if the specified method should be proxied. + + The type which declares the given method. + The method to inspect. + True if the given method should be proxied; false otherwise. + + + + Provides proxy objects for classes and interfaces. + + + + + Gets or sets the that this log to. + + + + + Gets the proxy builder instance used to generate proxy types. + + The proxy builder. + + + + Creates proxy object intercepting calls to members of interface on object with given . + + Type of the interface implemented by which will be proxied. + The target object, calls to which will be intercepted. + The interceptors called during the invocation of proxied methods. + Object proxying calls to members of on object. + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given array is a null reference (Nothing in Visual Basic). + Thrown when given is not an interface type. + Thrown when no default constructor exists on actual type of object. + Thrown when default constructor of actual type of throws an exception. + + This method generates new proxy type for each type of , which affects performance. If you don't want to proxy types differently depending on the type of the target + use method. + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to members of interface on object with given . + + Type of the interface implemented by which will be proxied. + The target object, calls to which will be intercepted. + The proxy generation options used to influence generated proxy type and object. + The interceptors called during the invocation of proxied methods. + + Object proxying calls to members of on object. + + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given array is a null reference (Nothing in Visual Basic). + Thrown when given is not an interface type. + Thrown when no default constructor exists on actual type of object. + Thrown when default constructor of actual type of throws an exception. + + This method generates new proxy type for each type of , which affects performance. If you don't want to proxy types differently depending on the type of the target + use method. + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to members of interface on object with given . + + Type of the interface implemented by which will be proxied. + The target object, calls to which will be intercepted. + The interceptors called during the invocation of proxied methods. + + Object proxying calls to members of type on object. + + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given array is a null reference (Nothing in Visual Basic). + Thrown when given is a generic type definition. + Thrown when given is not an interface type. + Thrown when given does not implement interface. + Thrown when no default constructor exists on actual type of object. + Thrown when default constructor of actual type of throws an exception. + + This method generates new proxy type for each type of , which affects performance. If you don't want to proxy types differently depending on the type of the target + use method. + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to members of interface on object with given . + + Type of the interface implemented by which will be proxied. + The target object, calls to which will be intercepted. + The proxy generation options used to influence generated proxy type and object. + The interceptors called during the invocation of proxied methods. + + Object proxying calls to members of type on object. + + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given array is a null reference (Nothing in Visual Basic). + Thrown when given is a generic type definition. + Thrown when given is not an interface type. + Thrown when given does not implement interface. + Thrown when no default constructor exists on actual type of object. + Thrown when default constructor of actual type of throws an exception. + + This method generates new proxy type for each type of , which affects performance. If you don't want to proxy types differently depending on the type of the target + use method. + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to members of interface on object with given . + + Type of the interface implemented by which will be proxied. + The target object, calls to which will be intercepted. + Additional interface types. Calls to their members will be proxied as well. + The interceptors called during the invocation of proxied methods. + + Object proxying calls to members of and types on object. + + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given array is a null reference (Nothing in Visual Basic). + Thrown when given or any of is a generic type definition. + Thrown when given is not an interface type. + Thrown when given does not implement interface. + Thrown when no default constructor exists on actual type of object. + Thrown when default constructor of actual type of throws an exception. + + This method generates new proxy type for each type of , which affects performance. If you don't want to proxy types differently depending on the type of the target + use method. + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to members of interface on object with given . + + Type of the interface implemented by which will be proxied. + The target object, calls to which will be intercepted. + The proxy generation options used to influence generated proxy type and object. + Additional interface types. Calls to their members will be proxied as well. + The interceptors called during the invocation of proxied methods. + + Object proxying calls to members of and types on object. + + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given array is a null reference (Nothing in Visual Basic). + Thrown when given or any of is a generic type definition. + Thrown when given is not an interface type. + Thrown when given does not implement interface. + Thrown when no default constructor exists on actual type of object. + Thrown when default constructor of actual type of throws an exception. + + This method generates new proxy type for each type of , which affects performance. If you don't want to proxy types differently depending on the type of the target + use method. + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to members of interface on object with given . + Interceptors can use interface to provide other target for method invocation than default . + + Type of the interface implemented by which will be proxied. + The target object, calls to which will be intercepted. + The interceptors called during the invocation of proxied methods. + + Object proxying calls to members of type on object or alternative implementation swapped at runtime by an interceptor. + + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given array is a null reference (Nothing in Visual Basic). + Thrown when given is a generic type definition. + Thrown when given is not an interface type. + Thrown when given does not implement interface. + Thrown when no default constructor exists on actual type of object. + Thrown when default constructor of actual type of throws an exception. + + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to members of interface on object with given . + Interceptors can use interface to provide other target for method invocation than default . + + Type of the interface implemented by which will be proxied. + The target object, calls to which will be intercepted. + The interceptors called during the invocation of proxied methods. + + Object proxying calls to members of type on object or alternative implementation swapped at runtime by an interceptor. + + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given array is a null reference (Nothing in Visual Basic). + Thrown when given is not an interface type. + Thrown when no default constructor exists on actual type of object. + Thrown when default constructor of actual type of throws an exception. + + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to members of interface on object with given . + Interceptors can use interface to provide other target for method invocation than default . + + Type of the interface implemented by which will be proxied. + The target object, calls to which will be intercepted. + The proxy generation options used to influence generated proxy type and object. + The interceptors called during the invocation of proxied methods. + + Object proxying calls to members of type on object or alternative implementation swapped at runtime by an interceptor. + + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given array is a null reference (Nothing in Visual Basic). + Thrown when given is not an interface type. + Thrown when no default constructor exists on actual type of object. + Thrown when default constructor of actual type of throws an exception. + + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to members of interface on object with given . + Interceptors can use interface to provide other target for method invocation than default . + + Type of the interface implemented by which will be proxied. + The target object, calls to which will be intercepted. + Additional interface types. Calls to their members will be proxied as well. + The interceptors called during the invocation of proxied methods. + + Object proxying calls to members of and types on object or alternative implementation swapped at runtime by an interceptor. + + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given array is a null reference (Nothing in Visual Basic). + Thrown when given or any of is a generic type definition. + Thrown when given is not an interface type. + Thrown when given does not implement interface. + Thrown when no default constructor exists on actual type of object. + Thrown when default constructor of actual type of throws an exception. + + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to members of interface on object with given . + Interceptors can use interface to provide other target for method invocation than default . + + Type of the interface implemented by which will be proxied. + The target object, calls to which will be intercepted. + The proxy generation options used to influence generated proxy type and object. + The interceptors called during the invocation of proxied methods. + + Object proxying calls to members of type on object or alternative implementation swapped at runtime by an interceptor. + + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given array is a null reference (Nothing in Visual Basic). + Thrown when given is a generic type definition. + Thrown when given is not an interface type. + Thrown when given does not implement interface. + Thrown when no default constructor exists on actual type of object. + Thrown when default constructor of actual type of throws an exception. + + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to members of interface on object with given . + Interceptors can use interface to provide other target for method invocation than default . + + Type of the interface implemented by which will be proxied. + The target object, calls to which will be intercepted. + The proxy generation options used to influence generated proxy type and object. + Additional interface types. Calls to their members will be proxied as well. + The interceptors called during the invocation of proxied methods. + + Object proxying calls to members of and types on object or alternative implementation swapped at runtime by an interceptor. + + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given array is a null reference (Nothing in Visual Basic). + Thrown when given or any of is a generic type definition. + Thrown when given is not an interface type. + Thrown when given does not implement interface. + Thrown when no default constructor exists on actual type of object. + Thrown when default constructor of actual type of throws an exception. + + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to members of interface on target object generated at runtime with given . + + Type of the interface which will be proxied. + The interceptors called during the invocation of proxied methods. + + Object proxying calls to members of types on generated target object. + + Thrown when given array is a null reference (Nothing in Visual Basic). + Thrown when given is not an interface type. + + Since this method uses an empty-shell implementation of interfaces to proxy generated at runtime, the actual implementation of proxied methods must be provided by given implementations. + They are responsible for setting return value (and out parameters) on proxied methods. It is also illegal for an interceptor to call , since there's no actual implementation to proceed with. + As a result of that also at least one implementation must be provided. + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to members of interface on target object generated at runtime with given . + + Type of the interface which will be proxied. + The interceptors called during the invocation of proxied methods. + + Object proxying calls to members of types on generated target object. + + Thrown when given array is a null reference (Nothing in Visual Basic). + Thrown when given is not an interface type. + + Since this method uses an empty-shell implementation of interfaces to proxy generated at runtime, the actual implementation of proxied methods must be provided by given implementations. + They are responsible for setting return value (and out parameters) on proxied methods. It is also illegal for an interceptor to call , since there's no actual implementation to proceed with. + As a result of that also at least one implementation must be provided. + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to members of interface on target object generated at runtime with given . + + Type of the interface which will be proxied. + The proxy generation options used to influence generated proxy type and object. + The interceptors called during the invocation of proxied methods. + + Object proxying calls to members of types on generated target object. + + Thrown when given array is a null reference (Nothing in Visual Basic). + Thrown when given is not an interface type. + + Since this method uses an empty-shell implementation of interfaces to proxy generated at runtime, the actual implementation of proxied methods must be provided by given implementations. + They are responsible for setting return value (and out parameters) on proxied methods. It is also illegal for an interceptor to call , since there's no actual implementation to proceed with. + As a result of that also at least one implementation must be provided. + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to members of interface on target object generated at runtime with given . + + Type of the interface which will be proxied. + The interceptors called during the invocation of proxied methods. + + Object proxying calls to members of type on generated target object. + + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given array is a null reference (Nothing in Visual Basic). + Thrown when given is a generic type definition. + Thrown when given is not an interface type. + + Since this method uses an empty-shell implementation of interfaces to proxy generated at runtime, the actual implementation of proxied methods must be provided by given implementations. + They are responsible for setting return value (and out parameters) on proxied methods. It is also illegal for an interceptor to call , since there's no actual implementation to proceed with. + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to members of interface on target object generated at runtime with given . + + Type of the interface which will be proxied. + The interceptors called during the invocation of proxied methods. + + Object proxying calls to members of type on generated target object. + + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given array is a null reference (Nothing in Visual Basic). + Thrown when given is a generic type definition. + Thrown when given is not an interface type. + + Since this method uses an empty-shell implementation of interfaces to proxy generated at runtime, the actual implementation of proxied methods must be provided by given implementations. + They are responsible for setting return value (and out parameters) on proxied methods. It is also illegal for an interceptor to call , since there's no actual implementation to proceed with. + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to members of interface on target object generated at runtime with given . + + Type of the interface which will be proxied. + Additional interface types. Calls to their members will be proxied as well. + The interceptors called during the invocation of proxied methods. + + Object proxying calls to members of and types on generated target object. + + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given array is a null reference (Nothing in Visual Basic). + Thrown when given or any of is a generic type definition. + Thrown when given is not an interface type. + + Since this method uses an empty-shell implementation of interfaces to proxy generated at runtime, the actual implementation of proxied methods must be provided by given implementations. + They are responsible for setting return value (and out parameters) on proxied methods. It is also illegal for an interceptor to call , since there's no actual implementation to proceed with. + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to members of interface on target object generated at runtime with given . + + Type of the interface which will be proxied. + The proxy generation options used to influence generated proxy type and object. + The interceptors called during the invocation of proxied methods. + + Object proxying calls to members of on generated target object. + + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given array is a null reference (Nothing in Visual Basic). + Thrown when given is a generic type definition. + Thrown when given is not an interface type. + + They are responsible for setting return value (and out parameters) on proxied methods. It is also illegal for an interceptor to call , since there's no actual implementation to proceed with. + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to members of interface on target object generated at runtime with given . + + Type of the interface which will be proxied. + The proxy generation options used to influence generated proxy type and object. + Additional interface types. Calls to their members will be proxied as well. + The interceptors called during the invocation of proxied methods. + + Object proxying calls to members of and types on generated target object. + + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given array is a null reference (Nothing in Visual Basic). + Thrown when given or any of is a generic type definition. + Thrown when given is not an interface type. + + Since this method uses an empty-shell implementation of to proxy generated at runtime, the actual implementation of proxied methods must be provided by given implementations. + They are responsible for setting return value (and out parameters) on proxied methods. It is also illegal for an interceptor to call , since there's no actual implementation to proceed with. + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to virtual members of type on newly created instance of that type with given . + + Type of class which will be proxied. + The target object, calls to which will be intercepted. + The interceptors called during the invocation of proxied methods. + + New object of type proxying calls to virtual members of type. + + Thrown when given is not a class type. + Thrown when no default constructor exists on type . + Thrown when default constructor of type throws an exception. + + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to virtual members of type on newly created instance of that type with given . + + Type of class which will be proxied. + The target object, calls to which will be intercepted. + The proxy generation options used to influence generated proxy type and object. + The interceptors called during the invocation of proxied methods. + + New object of type proxying calls to virtual members of type. + + Thrown when given is not a class type. + Thrown when no default constructor exists on type . + Thrown when default constructor of type throws an exception. + + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to virtual members of type on newly created instance of that type with given . + + Type of class which will be proxied. + Additional interface types. Calls to their members will be proxied as well. + The target object, calls to which will be intercepted. + The interceptors called during the invocation of proxied methods. + + New object of type proxying calls to virtual members of and types. + + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given or any of is a generic type definition. + Thrown when given is not a class type. + Thrown when no default constructor exists on type . + Thrown when default constructor of type throws an exception. + + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to virtual members of type on newly created instance of that type with given . + + Type of class which will be proxied. + The target object, calls to which will be intercepted. + The proxy generation options used to influence generated proxy type and object. + Arguments of constructor of type which should be used to create a new instance of that type. + The interceptors called during the invocation of proxied methods. + + New object of type proxying calls to virtual members of type. + + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given is a generic type definition. + Thrown when given is not a class type. + Thrown when no constructor exists on type with parameters matching . + Thrown when constructor of type throws an exception. + + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to virtual members of type on newly created instance of that type with given . + + Type of class which will be proxied. + The target object, calls to which will be intercepted. + Arguments of constructor of type which should be used to create a new instance of that type. + The interceptors called during the invocation of proxied methods. + + New object of type proxying calls to virtual members of type. + + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given is a generic type definition. + Thrown when given is not a class type. + Thrown when no constructor exists on type with parameters matching . + Thrown when constructor of type throws an exception. + + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to virtual members of type on newly created instance of that type with given . + + Type of class which will be proxied. + The target object, calls to which will be intercepted. + The interceptors called during the invocation of proxied methods. + + New object of type proxying calls to virtual members of type. + + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given is a generic type definition. + Thrown when given is not a class type. + Thrown when no parameterless constructor exists on type . + Thrown when constructor of type throws an exception. + + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to virtual members of type on newly created instance of that type with given . + + Type of class which will be proxied. + The target object, calls to which will be intercepted. + The proxy generation options used to influence generated proxy type and object. + The interceptors called during the invocation of proxied methods. + + New object of type proxying calls to virtual members of type. + + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given is a generic type definition. + Thrown when given is not a class type. + Thrown when no default constructor exists on type . + Thrown when default constructor of type throws an exception. + + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to virtual members of type on newly created instance of that type with given . + + Type of class which will be proxied. + Additional interface types. Calls to their members will be proxied as well. + The target object, calls to which will be intercepted. + The proxy generation options used to influence generated proxy type and object. + The interceptors called during the invocation of proxied methods. + + New object of type proxying calls to virtual members of and types. + + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given or any of is a generic type definition. + Thrown when given is not a class type. + Thrown when no default constructor exists on type . + Thrown when default constructor of type throws an exception. + + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to virtual members of type on newly created instance of that type with given . + + Type of class which will be proxied. + Additional interface types. Calls to their members will be proxied as well. + The target object, calls to which will be intercepted. + The proxy generation options used to influence generated proxy type and object. + Arguments of constructor of type which should be used to create a new instance of that type. + The interceptors called during the invocation of proxied methods. + + New object of type proxying calls to virtual members of and types. + + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given or any of is a generic type definition. + Thrown when given is not a class type. + Thrown when no constructor exists on type with parameters matching . + Thrown when constructor of type throws an exception. + + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to virtual members of type on newly created instance of that type with given . + + Type of class which will be proxied. + The interceptors called during the invocation of proxied methods. + + New object of type proxying calls to virtual members of type. + + Thrown when given is not a class type. + Thrown when no default constructor exists on type . + Thrown when default constructor of type throws an exception. + + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to virtual members of type on newly created instance of that type with given . + + Type of class which will be proxied. + The proxy generation options used to influence generated proxy type and object. + The interceptors called during the invocation of proxied methods. + + New object of type proxying calls to virtual members of type. + + Thrown when given is not a class type. + Thrown when no default constructor exists on type . + Thrown when default constructor of type throws an exception. + + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to virtual members of type on newly created instance of that type with given . + + Type of class which will be proxied. + Additional interface types. Calls to their members will be proxied as well. + The interceptors called during the invocation of proxied methods. + + New object of type proxying calls to virtual members of and types. + + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given or any of is a generic type definition. + Thrown when given is not a class type. + Thrown when no default constructor exists on type . + Thrown when default constructor of type throws an exception. + + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to virtual members of type on newly created instance of that type with given . + + Type of class which will be proxied. + The proxy generation options used to influence generated proxy type and object. + Arguments of constructor of type which should be used to create a new instance of that type. + The interceptors called during the invocation of proxied methods. + + New object of type proxying calls to virtual members of type. + + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given is a generic type definition. + Thrown when given is not a class type. + Thrown when no constructor exists on type with parameters matching . + Thrown when constructor of type throws an exception. + + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to virtual members of type on newly created instance of that type with given . + + Type of class which will be proxied. + Arguments of constructor of type which should be used to create a new instance of that type. + The interceptors called during the invocation of proxied methods. + + New object of type proxying calls to virtual members of type. + + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given is a generic type definition. + Thrown when given is not a class type. + Thrown when no constructor exists on type with parameters matching . + Thrown when constructor of type throws an exception. + + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to virtual members of type on newly created instance of that type with given . + + Type of class which will be proxied. + The interceptors called during the invocation of proxied methods. + + New object of type proxying calls to virtual members of type. + + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given is a generic type definition. + Thrown when given is not a class type. + Thrown when no parameterless constructor exists on type . + Thrown when constructor of type throws an exception. + + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to virtual members of type on newly created instance of that type with given . + + Type of class which will be proxied. + The proxy generation options used to influence generated proxy type and object. + The interceptors called during the invocation of proxied methods. + + New object of type proxying calls to virtual members of type. + + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given is a generic type definition. + Thrown when given is not a class type. + Thrown when no default constructor exists on type . + Thrown when default constructor of type throws an exception. + + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to virtual members of type on newly created instance of that type with given . + + Type of class which will be proxied. + Additional interface types. Calls to their members will be proxied as well. + The proxy generation options used to influence generated proxy type and object. + The interceptors called during the invocation of proxied methods. + + New object of type proxying calls to virtual members of and types. + + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given or any of is a generic type definition. + Thrown when given is not a class type. + Thrown when no default constructor exists on type . + Thrown when default constructor of type throws an exception. + + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to virtual members of type on newly created instance of that type with given . + + Type of class which will be proxied. + Additional interface types. Calls to their members will be proxied as well. + The proxy generation options used to influence generated proxy type and object. + Arguments of constructor of type which should be used to create a new instance of that type. + The interceptors called during the invocation of proxied methods. + + New object of type proxying calls to virtual members of and types. + + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given or any of is a generic type definition. + Thrown when given is not a class type. + Thrown when no constructor exists on type with parameters matching . + Thrown when constructor of type throws an exception. + + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Exposes access to the target object and interceptors of proxy objects. + This is a DynamicProxy infrastructure interface and should not be implemented yourself. + + + + + Get the proxy target (note that null is a valid target!) + + + + + Set the proxy target. + + New proxy target. + + + + Gets the interceptors for the proxy + + + + + Because we need to cache the types based on the mixed in mixins, we do the following here: + - Get all the mixin interfaces + - Sort them by full name + - Return them by position + + The idea is to have reproducible behavior for the case that mixins are registered in different orders. + This method is here because it is required + + + + + The default file name used when the assembly is saved using . + + + + + The default assembly (simple) name used for the assemblies generated by a instance. + + + + + Initializes a new instance of the class; assemblies created by this instance will not be saved. + + + + + Initializes a new instance of the class, allowing to specify whether the assemblies generated by this instance + should be saved. + + If set to true saves the generated module. + + + + Initializes a new instance of the class, allowing to specify whether the assemblies generated by this instance + should be saved. + + If set to true saves the generated module. + If set to true disables ability to generate signed module. This should be used in cases where ran under constrained permissions. + + + + Initializes a new instance of the class, allowing to specify whether the assemblies generated by this instance + should be saved and what simple names are to be assigned to them. + + If set to true saves the generated module. + If set to true disables ability to generate signed module. This should be used in cases where ran under constrained permissions. + The simple name of the strong-named assembly generated by this . + The path and file name of the manifest module of the strong-named assembly generated by this . + The simple name of the weak-named assembly generated by this . + The path and file name of the manifest module of the weak-named assembly generated by this . + + + + Initializes a new instance of the class, allowing to specify whether the assemblies generated by this instance + should be saved and what simple names are to be assigned to them. + + If set to true saves the generated module. + If set to true disables ability to generate signed module. This should be used in cases where ran under constrained permissions. + Naming scope used to provide unique names to generated types and their members (usually via sub-scopes). + The simple name of the strong-named assembly generated by this . + The path and file name of the manifest module of the strong-named assembly generated by this . + The simple name of the weak-named assembly generated by this . + The path and file name of the manifest module of the weak-named assembly generated by this . + + + + Gets the key pair used to sign the strong-named assembly generated by this . + + + + + Gets the strong-named module generated by this scope, or if none has yet been generated. + + The strong-named module generated by this scope, or if none has yet been generated. + + + + Gets the file name of the strongly named module generated by this scope. + + The file name of the strongly named module generated by this scope. + + + + Gets the weak-named module generated by this scope, or if none has yet been generated. + + The weak-named module generated by this scope, or if none has yet been generated. + + + + Gets the file name of the weakly named module generated by this scope. + + The file name of the weakly named module generated by this scope. + + + + Gets the specified module generated by this scope, creating a new one if none has yet been generated. + + If set to true, a strong-named module is returned; otherwise, a weak-named module is returned. + A strong-named or weak-named module generated by this scope, as specified by the parameter. + + + + Gets the strong-named module generated by this scope, creating a new one if none has yet been generated. + + A strong-named module generated by this scope. + + + + Gets the weak-named module generated by this scope, creating a new one if none has yet been generated. + + A weak-named module generated by this scope. + + + + allows customization of the behavior of proxies created by + an (or proxy types generated by an ). + + You should not modify an instance of once it has been + used to create a proxy (or proxy type). + + + + + + Initializes a new instance of the class. + + The hook. + + + + Initializes a new instance of the class. + + + + + Gets or sets the that should be used during proxy type + generation. Defaults to an instance of . + + You should not modify this property once this instance + has been used to create a proxy. + + + + + + Gets or sets the that should be used by created proxies + to determine which interceptors to use for an interception. If set to + (which is the default), created proxies will not use any selector. + + You should not modify this property once this instance + has been used to create a proxy. + + + + + + Gets or sets the class type from which generated interface proxy types will be derived. + Defaults to (). + + You should not modify this property once this instance + has been used to create a proxy. + + + + + + Gets the collection of additional custom attributes that will be put on generated proxy types. + This collection is initially empty. + + You should not modify this collection once this instance + has been used to create a proxy. + + + + + + Adds a delegate type to the list of mixins that will be added to generated proxies. + That is, generated proxies will have a `Invoke` method with a signature matching that + of the specified . + + You should not call this method once this instance + has been used to create a proxy. + + + The delegate type whose `Invoke` method should be reproduced in generated proxies. + is . + is not a delegate type. + + + + Adds a delegate to be mixed into generated proxies. The + will act as the target for calls to a `Invoke` method with a signature matching that + of the delegate. + + You should not call this method once this instance + has been used to create a proxy. + + + The delegate that should act as the target for calls to `Invoke` methods with a matching signature. + is . + + + + Mixes the interfaces implemented by the specified object into + created proxies, and uses as the target for these mixed-in interfaces. + + You should not call this method once this instance + has been used to create a proxy. + + + The object that should act as the target for all of its implemented interfaces' methods. + is . + is an instance of . + + + + Provides proxy objects for classes and interfaces. + + + + + Initializes a new instance of the class. + + Proxy types builder. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + If true forces all types to be generated into an unsigned module. + + + + Gets or sets the that this log to. + + + + + Gets the proxy builder instance used to generate proxy types. + + The proxy builder. + + + + Creates proxy object intercepting calls to members of interface on object with given . + + Type of the interface implemented by which will be proxied. + The target object, calls to which will be intercepted. + The interceptors called during the invocation of proxied methods. + Object proxying calls to members of on object. + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given array is a null reference (Nothing in Visual Basic). + Thrown when given is not an interface type. + Thrown when no default constructor exists on actual type of object. + Thrown when default constructor of actual type of throws an exception. + + This method generates new proxy type for each type of , which affects performance. If you don't want to proxy types differently depending on the type of the target + use method. + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to members of interface on object with given . + + Type of the interface implemented by which will be proxied. + The target object, calls to which will be intercepted. + The proxy generation options used to influence generated proxy type and object. + The interceptors called during the invocation of proxied methods. + + Object proxying calls to members of on object. + + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given array is a null reference (Nothing in Visual Basic). + Thrown when given is not an interface type. + Thrown when no default constructor exists on actual type of object. + Thrown when default constructor of actual type of throws an exception. + + This method generates new proxy type for each type of , which affects performance. If you don't want to proxy types differently depending on the type of the target + use method. + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to members of interface on object with given . + + Type of the interface implemented by which will be proxied. + The target object, calls to which will be intercepted. + The interceptors called during the invocation of proxied methods. + + Object proxying calls to members of type on object. + + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given array is a null reference (Nothing in Visual Basic). + Thrown when given is a generic type definition. + Thrown when given is not an interface type. + Thrown when given does not implement interface. + Thrown when no default constructor exists on actual type of object. + Thrown when default constructor of actual type of throws an exception. + + This method generates new proxy type for each type of , which affects performance. If you don't want to proxy types differently depending on the type of the target + use method. + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to members of interface on object with given . + + Type of the interface implemented by which will be proxied. + The target object, calls to which will be intercepted. + The proxy generation options used to influence generated proxy type and object. + The interceptors called during the invocation of proxied methods. + + Object proxying calls to members of type on object. + + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given array is a null reference (Nothing in Visual Basic). + Thrown when given is a generic type definition. + Thrown when given is not an interface type. + Thrown when given does not implement interface. + Thrown when no default constructor exists on actual type of object. + Thrown when default constructor of actual type of throws an exception. + + This method generates new proxy type for each type of , which affects performance. If you don't want to proxy types differently depending on the type of the target + use method. + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to members of interface on object with given . + + Type of the interface implemented by which will be proxied. + The target object, calls to which will be intercepted. + Additional interface types. Calls to their members will be proxied as well. + The interceptors called during the invocation of proxied methods. + + Object proxying calls to members of and types on object. + + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given array is a null reference (Nothing in Visual Basic). + Thrown when given or any of is a generic type definition. + Thrown when given is not an interface type. + Thrown when given does not implement interface. + Thrown when no default constructor exists on actual type of object. + Thrown when default constructor of actual type of throws an exception. + + This method generates new proxy type for each type of , which affects performance. If you don't want to proxy types differently depending on the type of the target + use method. + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to members of interface on object with given . + + Type of the interface implemented by which will be proxied. + The target object, calls to which will be intercepted. + The proxy generation options used to influence generated proxy type and object. + Additional interface types. Calls to their members will be proxied as well. + The interceptors called during the invocation of proxied methods. + + Object proxying calls to members of and types on object. + + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given array is a null reference (Nothing in Visual Basic). + Thrown when given or any of is a generic type definition. + Thrown when given is not an interface type. + Thrown when given does not implement interface. + Thrown when no default constructor exists on actual type of object. + Thrown when default constructor of actual type of throws an exception. + + This method generates new proxy type for each type of , which affects performance. If you don't want to proxy types differently depending on the type of the target + use method. + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to members of interface on object with given . + Interceptors can use interface to provide other target for method invocation than default . + + Type of the interface implemented by which will be proxied. + The target object, calls to which will be intercepted. + The interceptors called during the invocation of proxied methods. + + Object proxying calls to members of type on object or alternative implementation swapped at runtime by an interceptor. + + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given array is a null reference (Nothing in Visual Basic). + Thrown when given is a generic type definition. + Thrown when given is not an interface type. + Thrown when given does not implement interface. + Thrown when no default constructor exists on actual type of object. + Thrown when default constructor of actual type of throws an exception. + + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to members of interface on object with given . + Interceptors can use interface to provide other target for method invocation than default . + + Type of the interface implemented by which will be proxied. + The target object, calls to which will be intercepted. + The interceptors called during the invocation of proxied methods. + + Object proxying calls to members of type on object or alternative implementation swapped at runtime by an interceptor. + + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given array is a null reference (Nothing in Visual Basic). + Thrown when given is not an interface type. + Thrown when no default constructor exists on actual type of object. + Thrown when default constructor of actual type of throws an exception. + + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to members of interface on object with given . + Interceptors can use interface to provide other target for method invocation than default . + + Type of the interface implemented by which will be proxied. + The target object, calls to which will be intercepted. + The proxy generation options used to influence generated proxy type and object. + The interceptors called during the invocation of proxied methods. + + Object proxying calls to members of type on object or alternative implementation swapped at runtime by an interceptor. + + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given array is a null reference (Nothing in Visual Basic). + Thrown when given is not an interface type. + Thrown when no default constructor exists on actual type of object. + Thrown when default constructor of actual type of throws an exception. + + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to members of interface on object with given . + Interceptors can use interface to provide other target for method invocation than default . + + Type of the interface implemented by which will be proxied. + The target object, calls to which will be intercepted. + Additional interface types. Calls to their members will be proxied as well. + The interceptors called during the invocation of proxied methods. + + Object proxying calls to members of and types on object or alternative implementation swapped at runtime by an interceptor. + + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given array is a null reference (Nothing in Visual Basic). + Thrown when given or any of is a generic type definition. + Thrown when given is not an interface type. + Thrown when given does not implement interface. + Thrown when no default constructor exists on actual type of object. + Thrown when default constructor of actual type of throws an exception. + + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to members of interface on object with given . + Interceptors can use interface to provide other target for method invocation than default . + + Type of the interface implemented by which will be proxied. + The target object, calls to which will be intercepted. + The proxy generation options used to influence generated proxy type and object. + The interceptors called during the invocation of proxied methods. + + Object proxying calls to members of type on object or alternative implementation swapped at runtime by an interceptor. + + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given array is a null reference (Nothing in Visual Basic). + Thrown when given is a generic type definition. + Thrown when given is not an interface type. + Thrown when given does not implement interface. + Thrown when no default constructor exists on actual type of object. + Thrown when default constructor of actual type of throws an exception. + + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to members of interface on object with given . + Interceptors can use interface to provide other target for method invocation than default . + + Type of the interface implemented by which will be proxied. + The target object, calls to which will be intercepted. + The proxy generation options used to influence generated proxy type and object. + Additional interface types. Calls to their members will be proxied as well. + The interceptors called during the invocation of proxied methods. + + Object proxying calls to members of and types on object or alternative implementation swapped at runtime by an interceptor. + + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given array is a null reference (Nothing in Visual Basic). + Thrown when given or any of is a generic type definition. + Thrown when given is not an interface type. + Thrown when given does not implement interface. + Thrown when no default constructor exists on actual type of object. + Thrown when default constructor of actual type of throws an exception. + + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to members of interface on target object generated at runtime with given . + + Type of the interface which will be proxied. + The interceptors called during the invocation of proxied methods. + + Object proxying calls to members of types on generated target object. + + Thrown when given array is a null reference (Nothing in Visual Basic). + Thrown when given is not an interface type. + + Since this method uses an empty-shell implementation of interfaces to proxy generated at runtime, the actual implementation of proxied methods must be provided by given implementations. + They are responsible for setting return value (and out parameters) on proxied methods. It is also illegal for an interceptor to call , since there's no actual implementation to proceed with. + As a result of that also at least one implementation must be provided. + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to members of interface on target object generated at runtime with given . + + Type of the interface which will be proxied. + The interceptors called during the invocation of proxied methods. + + Object proxying calls to members of types on generated target object. + + Thrown when given array is a null reference (Nothing in Visual Basic). + Thrown when given is not an interface type. + + Since this method uses an empty-shell implementation of interfaces to proxy generated at runtime, the actual implementation of proxied methods must be provided by given implementations. + They are responsible for setting return value (and out parameters) on proxied methods. It is also illegal for an interceptor to call , since there's no actual implementation to proceed with. + As a result of that also at least one implementation must be provided. + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to members of interface on target object generated at runtime with given . + + Type of the interface which will be proxied. + The proxy generation options used to influence generated proxy type and object. + The interceptors called during the invocation of proxied methods. + + Object proxying calls to members of types on generated target object. + + Thrown when given array is a null reference (Nothing in Visual Basic). + Thrown when given is not an interface type. + + Since this method uses an empty-shell implementation of interfaces to proxy generated at runtime, the actual implementation of proxied methods must be provided by given implementations. + They are responsible for setting return value (and out parameters) on proxied methods. It is also illegal for an interceptor to call , since there's no actual implementation to proceed with. + As a result of that also at least one implementation must be provided. + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to members of interface on target object generated at runtime with given . + + Type of the interface which will be proxied. + The interceptors called during the invocation of proxied methods. + + Object proxying calls to members of type on generated target object. + + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given array is a null reference (Nothing in Visual Basic). + Thrown when given is a generic type definition. + Thrown when given is not an interface type. + + Since this method uses an empty-shell implementation of interfaces to proxy generated at runtime, the actual implementation of proxied methods must be provided by given implementations. + They are responsible for setting return value (and out parameters) on proxied methods. It is also illegal for an interceptor to call , since there's no actual implementation to proceed with. + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to members of interface on target object generated at runtime with given . + + Type of the interface which will be proxied. + The interceptors called during the invocation of proxied methods. + + Object proxying calls to members of type on generated target object. + + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given array is a null reference (Nothing in Visual Basic). + Thrown when given is a generic type definition. + Thrown when given is not an interface type. + + Since this method uses an empty-shell implementation of interfaces to proxy generated at runtime, the actual implementation of proxied methods must be provided by given implementations. + They are responsible for setting return value (and out parameters) on proxied methods. It is also illegal for an interceptor to call , since there's no actual implementation to proceed with. + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to members of interface on target object generated at runtime with given . + + Type of the interface which will be proxied. + Additional interface types. Calls to their members will be proxied as well. + The interceptors called during the invocation of proxied methods. + + Object proxying calls to members of and types on generated target object. + + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given array is a null reference (Nothing in Visual Basic). + Thrown when given or any of is a generic type definition. + Thrown when given is not an interface type. + + Since this method uses an empty-shell implementation of interfaces to proxy generated at runtime, the actual implementation of proxied methods must be provided by given implementations. + They are responsible for setting return value (and out parameters) on proxied methods. It is also illegal for an interceptor to call , since there's no actual implementation to proceed with. + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to members of interface on target object generated at runtime with given . + + Type of the interface which will be proxied. + The proxy generation options used to influence generated proxy type and object. + The interceptors called during the invocation of proxied methods. + + Object proxying calls to members of on generated target object. + + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given array is a null reference (Nothing in Visual Basic). + Thrown when given is a generic type definition. + Thrown when given is not an interface type. + + They are responsible for setting return value (and out parameters) on proxied methods. It is also illegal for an interceptor to call , since there's no actual implementation to proceed with. + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to members of interface on target object generated at runtime with given . + + Type of the interface which will be proxied. + The proxy generation options used to influence generated proxy type and object. + Additional interface types. Calls to their members will be proxied as well. + The interceptors called during the invocation of proxied methods. + + Object proxying calls to members of and types on generated target object. + + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given array is a null reference (Nothing in Visual Basic). + Thrown when given or any of is a generic type definition. + Thrown when given is not an interface type. + + Since this method uses an empty-shell implementation of to proxy generated at runtime, the actual implementation of proxied methods must be provided by given implementations. + They are responsible for setting return value (and out parameters) on proxied methods. It is also illegal for an interceptor to call , since there's no actual implementation to proceed with. + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to virtual members of type on newly created instance of that type with given . + + Type of class which will be proxied. + The target object, calls to which will be intercepted. + The interceptors called during the invocation of proxied methods. + + New object of type proxying calls to virtual members of type. + + Thrown when given is not a class type. + Thrown when no default constructor exists on type . + Thrown when default constructor of type throws an exception. + + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to virtual members of type on newly created instance of that type with given . + + Type of class which will be proxied. + The target object, calls to which will be intercepted. + The proxy generation options used to influence generated proxy type and object. + The interceptors called during the invocation of proxied methods. + + New object of type proxying calls to virtual members of type. + + Thrown when given is not a class type. + Thrown when no default constructor exists on type . + Thrown when default constructor of type throws an exception. + + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to virtual members of type on newly created instance of that type with given . + + Type of class which will be proxied. + Additional interface types. Calls to their members will be proxied as well. + The target object, calls to which will be intercepted. + The interceptors called during the invocation of proxied methods. + + New object of type proxying calls to virtual members of and types. + + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given or any of is a generic type definition. + Thrown when given is not a class type. + Thrown when no default constructor exists on type . + Thrown when default constructor of type throws an exception. + + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to virtual members of type on newly created instance of that type with given . + + Type of class which will be proxied. + The target object, calls to which will be intercepted. + The proxy generation options used to influence generated proxy type and object. + Arguments of constructor of type which should be used to create a new instance of that type. + The interceptors called during the invocation of proxied methods. + + New object of type proxying calls to virtual members of type. + + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given is a generic type definition. + Thrown when given is not a class type. + Thrown when no constructor exists on type with parameters matching . + Thrown when constructor of type throws an exception. + + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to virtual members of type on newly created instance of that type with given . + + Type of class which will be proxied. + The target object, calls to which will be intercepted. + Arguments of constructor of type which should be used to create a new instance of that type. + The interceptors called during the invocation of proxied methods. + + New object of type proxying calls to virtual members of type. + + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given is a generic type definition. + Thrown when given is not a class type. + Thrown when no constructor exists on type with parameters matching . + Thrown when constructor of type throws an exception. + + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to virtual members of type on newly created instance of that type with given . + + Type of class which will be proxied. + The target object, calls to which will be intercepted. + The interceptors called during the invocation of proxied methods. + + New object of type proxying calls to virtual members of type. + + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given is a generic type definition. + Thrown when given is not a class type. + Thrown when no parameterless constructor exists on type . + Thrown when constructor of type throws an exception. + + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to virtual members of type on newly created instance of that type with given . + + Type of class which will be proxied. + The target object, calls to which will be intercepted. + The proxy generation options used to influence generated proxy type and object. + The interceptors called during the invocation of proxied methods. + + New object of type proxying calls to virtual members of type. + + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given is a generic type definition. + Thrown when given is not a class type. + Thrown when no default constructor exists on type . + Thrown when default constructor of type throws an exception. + + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to virtual members of type on newly created instance of that type with given . + + Type of class which will be proxied. + Additional interface types. Calls to their members will be proxied as well. + The target object, calls to which will be intercepted. + The proxy generation options used to influence generated proxy type and object. + The interceptors called during the invocation of proxied methods. + + New object of type proxying calls to virtual members of and types. + + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given or any of is a generic type definition. + Thrown when given is not a class type. + Thrown when no default constructor exists on type . + Thrown when default constructor of type throws an exception. + + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to virtual members of type on newly created instance of that type with given . + + Type of class which will be proxied. + Additional interface types. Calls to their members will be proxied as well. + The target object, calls to which will be intercepted. + The proxy generation options used to influence generated proxy type and object. + Arguments of constructor of type which should be used to create a new instance of that type. + The interceptors called during the invocation of proxied methods. + + New object of type proxying calls to virtual members of and types. + + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given or any of is a generic type definition. + Thrown when given is not a class type. + Thrown when no constructor exists on type with parameters matching . + Thrown when constructor of type throws an exception. + + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to virtual members of type on newly created instance of that type with given . + + Type of class which will be proxied. + The interceptors called during the invocation of proxied methods. + + New object of type proxying calls to virtual members of type. + + Thrown when given is not a class type. + Thrown when no default constructor exists on type . + Thrown when default constructor of type throws an exception. + + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to virtual members of type on newly created instance of that type with given . + + Type of class which will be proxied. + The proxy generation options used to influence generated proxy type and object. + The interceptors called during the invocation of proxied methods. + + New object of type proxying calls to virtual members of type. + + Thrown when given is not a class type. + Thrown when no default constructor exists on type . + Thrown when default constructor of type throws an exception. + + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to virtual members of type on newly created instance of that type with given . + + Type of class which will be proxied. + Additional interface types. Calls to their members will be proxied as well. + The interceptors called during the invocation of proxied methods. + + New object of type proxying calls to virtual members of and types. + + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given or any of is a generic type definition. + Thrown when given is not a class type. + Thrown when no default constructor exists on type . + Thrown when default constructor of type throws an exception. + + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to virtual members of type on newly created instance of that type with given . + + Type of class which will be proxied. + The proxy generation options used to influence generated proxy type and object. + Arguments of constructor of type which should be used to create a new instance of that type. + The interceptors called during the invocation of proxied methods. + + New object of type proxying calls to virtual members of type. + + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given is a generic type definition. + Thrown when given is not a class type. + Thrown when no constructor exists on type with parameters matching . + Thrown when constructor of type throws an exception. + + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to virtual members of type on newly created instance of that type with given . + + Type of class which will be proxied. + Arguments of constructor of type which should be used to create a new instance of that type. + The interceptors called during the invocation of proxied methods. + + New object of type proxying calls to virtual members of type. + + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given is a generic type definition. + Thrown when given is not a class type. + Thrown when no constructor exists on type with parameters matching . + Thrown when constructor of type throws an exception. + + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to virtual members of type on newly created instance of that type with given . + + Type of class which will be proxied. + The interceptors called during the invocation of proxied methods. + + New object of type proxying calls to virtual members of type. + + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given is a generic type definition. + Thrown when given is not a class type. + Thrown when no parameterless constructor exists on type . + Thrown when constructor of type throws an exception. + + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to virtual members of type on newly created instance of that type with given . + + Type of class which will be proxied. + The proxy generation options used to influence generated proxy type and object. + The interceptors called during the invocation of proxied methods. + + New object of type proxying calls to virtual members of type. + + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given is a generic type definition. + Thrown when given is not a class type. + Thrown when no default constructor exists on type . + Thrown when default constructor of type throws an exception. + + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to virtual members of type on newly created instance of that type with given . + + Type of class which will be proxied. + Additional interface types. Calls to their members will be proxied as well. + The proxy generation options used to influence generated proxy type and object. + The interceptors called during the invocation of proxied methods. + + New object of type proxying calls to virtual members of and types. + + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given or any of is a generic type definition. + Thrown when given is not a class type. + Thrown when no default constructor exists on type . + Thrown when default constructor of type throws an exception. + + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates proxy object intercepting calls to virtual members of type on newly created instance of that type with given . + + Type of class which will be proxied. + Additional interface types. Calls to their members will be proxied as well. + The proxy generation options used to influence generated proxy type and object. + Arguments of constructor of type which should be used to create a new instance of that type. + The interceptors called during the invocation of proxied methods. + + New object of type proxying calls to virtual members of and types. + + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given object is a null reference (Nothing in Visual Basic). + Thrown when given or any of is a generic type definition. + Thrown when given is not a class type. + Thrown when no constructor exists on type with parameters matching . + Thrown when constructor of type throws an exception. + + This method uses implementation to generate a proxy type. + As such caller should expect any type of exception that given implementation may throw. + + + + + Creates the proxy type for class proxy with given class, implementing given and using provided . + + The base class for proxy type. + The interfaces that proxy type should implement. + The options for proxy generation process. + of proxy. + + + + Creates the proxy type for interface proxy with target for given interface, implementing given on given and using provided . + + The interface proxy type should implement. + The additional interfaces proxy type should implement. + Actual type that the proxy type will encompass. + The options for proxy generation process. + of proxy. + + + + Creates the proxy type for interface proxy with target interface for given interface, implementing given on given and using provided . + + The interface proxy type should implement. + The additional interfaces proxy type should implement. + The options for proxy generation process. + of proxy. + + + + Creates the proxy type for interface proxy without target for given interface, implementing given and using provided . + + The interface proxy type should implement. + The additional interfaces proxy type should implement. + The options for proxy generation process. + of proxy. + + + + Creates a delegate of the specified type to a suitable `Invoke` method + on the given instance. + + The proxy instance to which the delegate should be bound. + The type of delegate that should be created. + + The does not have an `Invoke` method that is compatible with + the requested type. + + + + + Creates a delegate of the specified type to a suitable `Invoke` method + on the given instance. + + The proxy instance to which the delegate should be bound. + The type of delegate that should be created. + + The does not have an `Invoke` method that is compatible with + the requested . + + + + + Checks whether the specified method is accessible to DynamicProxy. + The method to check. + true if the method is accessible to DynamicProxy, false otherwise. + + + + Checks whether the specified method is accessible to DynamicProxy. + The method to check. + If the method is accessible to DynamicProxy, null; otherwise, an explanation of why the method is not accessible. + true if the method is accessible to DynamicProxy, false otherwise. + + + + Checks whether the specified type is accessible to DynamicProxy. + The type to check. + true if the type is accessible to DynamicProxy, false otherwise. + + + + Determines whether this assembly has internals visible to DynamicProxy. + + The assembly to inspect. + + + + Checks whether the specified method is accessible to DynamicProxy. + Unlike with , the declaring type's accessibility is ignored. + + The method to check. + true if the method is accessible to DynamicProxy, false otherwise. + + + + Determines whether the specified method is internal. + + The method. + + true if the specified method is internal; otherwise, false. + + + + + Holds objects representing methods of class. + + + + diff --git a/Assets/Plugins/NuGet/Castle.Core.5.1.1/lib/netstandard2.1/Castle.Core.xml.meta b/Assets/Plugins/NuGet/Castle.Core.5.1.1/lib/netstandard2.1/Castle.Core.xml.meta new file mode 100644 index 0000000..005eb4d --- /dev/null +++ b/Assets/Plugins/NuGet/Castle.Core.5.1.1/lib/netstandard2.1/Castle.Core.xml.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 0d9af9f47bf85d041aad72b8970628da +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Plugins/NuGet/Castle.Core.5.1.1/readme.txt b/Assets/Plugins/NuGet/Castle.Core.5.1.1/readme.txt new file mode 100644 index 0000000..59e0292 --- /dev/null +++ b/Assets/Plugins/NuGet/Castle.Core.5.1.1/readme.txt @@ -0,0 +1,10 @@ +Thanks for downloading this Castle package. +You can find full list of changes in CHANGELOG.md + +Documentation (work in progress, contributions appreciated): +DictionaryAdapter: https://github.com/castleproject/Core/blob/master/docs/dictionaryadapter.md +DynamicProxy: https://github.com/castleproject/Core/blob/master/docs/dynamicproxy.md +Discussion group: http://groups.google.com/group/castle-project-users +StackOverflow tags: castle-dynamicproxy, castle-dictionaryadapter, castle + +Issue tracker: https://github.com/castleproject/Core/issues \ No newline at end of file diff --git a/Assets/Plugins/NuGet/Castle.Core.5.1.1/readme.txt.meta b/Assets/Plugins/NuGet/Castle.Core.5.1.1/readme.txt.meta new file mode 100644 index 0000000..06723f4 --- /dev/null +++ b/Assets/Plugins/NuGet/Castle.Core.5.1.1/readme.txt.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: b7f967afcdf25b242b78b373e2ccd8f5 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Plugins/NuGet/Moq.4.20.72.meta b/Assets/Plugins/NuGet/Moq.4.20.72.meta new file mode 100644 index 0000000..581a5ab --- /dev/null +++ b/Assets/Plugins/NuGet/Moq.4.20.72.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 6ebcc55d898964c40bdb0438b5928285 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Plugins/NuGet/Moq.4.20.72/.signature.p7s b/Assets/Plugins/NuGet/Moq.4.20.72/.signature.p7s new file mode 100644 index 0000000000000000000000000000000000000000..9d160bd11380d6fd8fe603299889a0d7d5570c0f GIT binary patch literal 12943 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 NH^s|pU9RTk`9ENZ?}h*X literal 0 HcmV?d00001 diff --git a/Assets/Plugins/NuGet/Moq.4.20.72/Moq.nuspec b/Assets/Plugins/NuGet/Moq.4.20.72/Moq.nuspec new file mode 100644 index 0000000..7369526 --- /dev/null +++ b/Assets/Plugins/NuGet/Moq.4.20.72/Moq.nuspec @@ -0,0 +1,36 @@ + + + + Moq + 4.20.72 + Moq: an enjoyable mocking library + Daniel Cazzulino, kzu + false + BSD-3-Clause + https://licenses.nuget.org/BSD-3-Clause + icon.png + readme.md + https://github.com/moq/moq + Moq is the most popular and friendly mocking framework for .NET. + https://github.com/moq/moq/blob/main/changelog.md + Copyright (c) 2007, Clarius Consulting, Manas Technology Solutions, InSTEDD, and Contributors. All rights reserved. + moq;tdd;mocking;mocks;unittesting;agile;unittest + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Assets/Plugins/NuGet/Moq.4.20.72/Moq.nuspec.meta b/Assets/Plugins/NuGet/Moq.4.20.72/Moq.nuspec.meta new file mode 100644 index 0000000..4b7d8bd --- /dev/null +++ b/Assets/Plugins/NuGet/Moq.4.20.72/Moq.nuspec.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: de50d8ae70fbc5a4ca76b9e3dd305228 +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Plugins/NuGet/Moq.4.20.72/icon.png b/Assets/Plugins/NuGet/Moq.4.20.72/icon.png new file mode 100644 index 0000000..41d9116 --- /dev/null +++ b/Assets/Plugins/NuGet/Moq.4.20.72/icon.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3444b35d55cbf0f456293be69d0c40cde2516304637a2c3fba987c0dac010342 +size 6829 diff --git a/Assets/Plugins/NuGet/Moq.4.20.72/icon.png.meta b/Assets/Plugins/NuGet/Moq.4.20.72/icon.png.meta new file mode 100644 index 0000000..02efeb2 --- /dev/null +++ b/Assets/Plugins/NuGet/Moq.4.20.72/icon.png.meta @@ -0,0 +1,117 @@ +fileFormatVersion: 2 +guid: 7af3787df3f2fdd47bb1c328bb2253de +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 13 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + flipGreenChannel: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMipmapLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + swizzle: 50462976 + cookieLightType: 0 + platformSettings: + - serializedVersion: 4 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 4 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + ignorePlatformSupport: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + customData: + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spriteCustomMetadata: + entries: [] + nameFileIdTable: {} + mipmapLimitGroupName: + pSDRemoveMatte: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Plugins/NuGet/Moq.4.20.72/lib.meta b/Assets/Plugins/NuGet/Moq.4.20.72/lib.meta new file mode 100644 index 0000000..b566d98 --- /dev/null +++ b/Assets/Plugins/NuGet/Moq.4.20.72/lib.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 0a6f8c9c796d84442a4d0f69eff9ca04 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Plugins/NuGet/Moq.4.20.72/lib/netstandard2.1.meta b/Assets/Plugins/NuGet/Moq.4.20.72/lib/netstandard2.1.meta new file mode 100644 index 0000000..fa957e0 --- /dev/null +++ b/Assets/Plugins/NuGet/Moq.4.20.72/lib/netstandard2.1.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 150b998903245614e8a9c456908d737a +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Plugins/NuGet/Moq.4.20.72/lib/netstandard2.1/Moq.dll b/Assets/Plugins/NuGet/Moq.4.20.72/lib/netstandard2.1/Moq.dll new file mode 100644 index 0000000000000000000000000000000000000000..7949535d99efd0bc20ae679f96bf2feaf1a336f8 GIT binary patch literal 310784 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 + +The most popular and friendly mocking library for .NET + +```csharp + var mock = new Mock(); + + // WOW! No record/replay weirdness?! :) + mock.Setup(library => library.DownloadExists("2.0.0.0")) + .Returns(true); + + // Use the Object property on the mock to get a reference to the object + // implementing ILoveThisLibrary, and then exercise it by calling + // methods on it + ILoveThisLibrary lovable = mock.Object; + bool download = lovable.DownloadExists("2.0.0.0"); + + // Verify that the given method was indeed called with the expected value at most once + mock.Verify(library => library.DownloadExists("2.0.0.0"), Times.AtMostOnce()); +``` + +Moq also is the first and only library so far to provide Linq to Mocks, so that the +same behavior above can be achieved much more succinctly: + +```csharp + ILoveThisLibrary lovable = Mock.Of(l => + l.DownloadExists("2.0.0.0") == true); + + // Exercise the instance returned by Mock.Of by calling methods on it... + bool download = lovable.DownloadExists("2.0.0.0"); + + // Simply assert the returned state: + Assert.True(download); + + // If you want to go beyond state testing and want to + // verify the mock interaction instead... + Mock.Get(lovable).Verify(library => library.DownloadExists("2.0.0.0")); +``` + +You can think of Linq to Mocks as "from the universe of mocks, give me one whose behavior +matches this expression". + +Check out the [Quickstart](https://github.com/devlooped/moq/wiki/Quickstart) for more examples! + + + + + + +# Sponsors + + +[![Clarius Org](https://raw.githubusercontent.com/devlooped/sponsors/main/.github/avatars/clarius.png "Clarius Org")](https://github.com/clarius) +[![Kirill Osenkov](https://raw.githubusercontent.com/devlooped/sponsors/main/.github/avatars/KirillOsenkov.png "Kirill Osenkov")](https://github.com/KirillOsenkov) +[![MFB Technologies, Inc.](https://raw.githubusercontent.com/devlooped/sponsors/main/.github/avatars/MFB-Technologies-Inc.png "MFB Technologies, Inc.")](https://github.com/MFB-Technologies-Inc) +[![Stephen Shaw](https://raw.githubusercontent.com/devlooped/sponsors/main/.github/avatars/decriptor.png "Stephen Shaw")](https://github.com/decriptor) +[![Torutek](https://raw.githubusercontent.com/devlooped/sponsors/main/.github/avatars/torutek-gh.png "Torutek")](https://github.com/torutek-gh) +[![DRIVE.NET, Inc.](https://raw.githubusercontent.com/devlooped/sponsors/main/.github/avatars/drivenet.png "DRIVE.NET, Inc.")](https://github.com/drivenet) +[![Ashley Medway](https://raw.githubusercontent.com/devlooped/sponsors/main/.github/avatars/AshleyMedway.png "Ashley Medway")](https://github.com/AshleyMedway) +[![Keith Pickford](https://raw.githubusercontent.com/devlooped/sponsors/main/.github/avatars/Keflon.png "Keith Pickford")](https://github.com/Keflon) +[![Thomas Bolon](https://raw.githubusercontent.com/devlooped/sponsors/main/.github/avatars/tbolon.png "Thomas Bolon")](https://github.com/tbolon) +[![Kori Francis](https://raw.githubusercontent.com/devlooped/sponsors/main/.github/avatars/kfrancis.png "Kori Francis")](https://github.com/kfrancis) +[![Toni Wenzel](https://raw.githubusercontent.com/devlooped/sponsors/main/.github/avatars/twenzel.png "Toni Wenzel")](https://github.com/twenzel) +[![Giorgi Dalakishvili](https://raw.githubusercontent.com/devlooped/sponsors/main/.github/avatars/Giorgi.png "Giorgi Dalakishvili")](https://github.com/Giorgi) +[![Uno Platform](https://raw.githubusercontent.com/devlooped/sponsors/main/.github/avatars/unoplatform.png "Uno Platform")](https://github.com/unoplatform) +[![Dan Siegel](https://raw.githubusercontent.com/devlooped/sponsors/main/.github/avatars/dansiegel.png "Dan Siegel")](https://github.com/dansiegel) +[![Reuben Swartz](https://raw.githubusercontent.com/devlooped/sponsors/main/.github/avatars/rbnswartz.png "Reuben Swartz")](https://github.com/rbnswartz) +[![Jacob Foshee](https://raw.githubusercontent.com/devlooped/sponsors/main/.github/avatars/jfoshee.png "Jacob Foshee")](https://github.com/jfoshee) +[![](https://raw.githubusercontent.com/devlooped/sponsors/main/.github/avatars/Mrxx99.png "")](https://github.com/Mrxx99) +[![Eric Johnson](https://raw.githubusercontent.com/devlooped/sponsors/main/.github/avatars/eajhnsn1.png "Eric Johnson")](https://github.com/eajhnsn1) +[![Ix Technologies B.V.](https://raw.githubusercontent.com/devlooped/sponsors/main/.github/avatars/IxTechnologies.png "Ix Technologies B.V.")](https://github.com/IxTechnologies) +[![David JENNI](https://raw.githubusercontent.com/devlooped/sponsors/main/.github/avatars/davidjenni.png "David JENNI")](https://github.com/davidjenni) +[![Jonathan ](https://raw.githubusercontent.com/devlooped/sponsors/main/.github/avatars/Jonathan-Hickey.png "Jonathan ")](https://github.com/Jonathan-Hickey) +[![Oleg Kyrylchuk](https://raw.githubusercontent.com/devlooped/sponsors/main/.github/avatars/okyrylchuk.png "Oleg Kyrylchuk")](https://github.com/okyrylchuk) +[![Charley Wu](https://raw.githubusercontent.com/devlooped/sponsors/main/.github/avatars/akunzai.png "Charley Wu")](https://github.com/akunzai) +[![Jakob Tikjøb Andersen](https://raw.githubusercontent.com/devlooped/sponsors/main/.github/avatars/jakobt.png "Jakob Tikjøb Andersen")](https://github.com/jakobt) +[![Seann Alexander](https://raw.githubusercontent.com/devlooped/sponsors/main/.github/avatars/seanalexander.png "Seann Alexander")](https://github.com/seanalexander) +[![Tino Hager](https://raw.githubusercontent.com/devlooped/sponsors/main/.github/avatars/tinohager.png "Tino Hager")](https://github.com/tinohager) +[![Mark Seemann](https://raw.githubusercontent.com/devlooped/sponsors/main/.github/avatars/ploeh.png "Mark Seemann")](https://github.com/ploeh) +[![Ken Bonny](https://raw.githubusercontent.com/devlooped/sponsors/main/.github/avatars/KenBonny.png "Ken Bonny")](https://github.com/KenBonny) +[![Simon Cropp](https://raw.githubusercontent.com/devlooped/sponsors/main/.github/avatars/SimonCropp.png "Simon Cropp")](https://github.com/SimonCropp) +[![agileworks-eu](https://raw.githubusercontent.com/devlooped/sponsors/main/.github/avatars/agileworks-eu.png "agileworks-eu")](https://github.com/agileworks-eu) +[![sorahex](https://raw.githubusercontent.com/devlooped/sponsors/main/.github/avatars/sorahex.png "sorahex")](https://github.com/sorahex) +[![Zheyu Shen](https://raw.githubusercontent.com/devlooped/sponsors/main/.github/avatars/arsdragonfly.png "Zheyu Shen")](https://github.com/arsdragonfly) +[![Vezel](https://raw.githubusercontent.com/devlooped/sponsors/main/.github/avatars/vezel-dev.png "Vezel")](https://github.com/vezel-dev) +[![ChilliCream](https://raw.githubusercontent.com/devlooped/sponsors/main/.github/avatars/ChilliCream.png "ChilliCream")](https://github.com/ChilliCream) +[![4OTC](https://raw.githubusercontent.com/devlooped/sponsors/main/.github/avatars/4OTC.png "4OTC")](https://github.com/4OTC) +[![Vincent Limo](https://raw.githubusercontent.com/devlooped/sponsors/main/.github/avatars/v-limo.png "Vincent Limo")](https://github.com/v-limo) +[![Brooke Hamilton](https://raw.githubusercontent.com/devlooped/sponsors/main/.github/avatars/brooke-hamilton.png "Brooke Hamilton")](https://github.com/brooke-hamilton) + + + + +[![Sponsor this project](https://raw.githubusercontent.com/devlooped/sponsors/main/sponsor.png "Sponsor this project")](https://github.com/sponsors/devlooped) +  + +[Learn more about GitHub Sponsors](https://github.com/sponsors) + + + + + \ No newline at end of file diff --git a/Assets/Plugins/NuGet/Moq.4.20.72/readme.md.meta b/Assets/Plugins/NuGet/Moq.4.20.72/readme.md.meta new file mode 100644 index 0000000..2234511 --- /dev/null +++ b/Assets/Plugins/NuGet/Moq.4.20.72/readme.md.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 148f3490aa14ca949b02a7915d6bef7c +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Plugins/NuGet/System.Diagnostics.EventLog.4.7.0.meta b/Assets/Plugins/NuGet/System.Diagnostics.EventLog.4.7.0.meta new file mode 100644 index 0000000..1f3e1ba --- /dev/null +++ b/Assets/Plugins/NuGet/System.Diagnostics.EventLog.4.7.0.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 9d6dd6b825ff6b94bbbf7ceb7a624d25 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Plugins/NuGet/System.Diagnostics.EventLog.4.7.0/.signature.p7s b/Assets/Plugins/NuGet/System.Diagnostics.EventLog.4.7.0/.signature.p7s new file mode 100644 index 0000000000000000000000000000000000000000..9846dd79d1ed07f12cf5f04b058735de28428246 GIT binary patch literal 18704 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 literal 0 HcmV?d00001 diff --git a/Assets/Plugins/NuGet/System.Diagnostics.EventLog.4.7.0/LICENSE.TXT b/Assets/Plugins/NuGet/System.Diagnostics.EventLog.4.7.0/LICENSE.TXT new file mode 100644 index 0000000..984713a --- /dev/null +++ b/Assets/Plugins/NuGet/System.Diagnostics.EventLog.4.7.0/LICENSE.TXT @@ -0,0 +1,23 @@ +The MIT License (MIT) + +Copyright (c) .NET Foundation and Contributors + +All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/Assets/Plugins/NuGet/System.Diagnostics.EventLog.4.7.0/LICENSE.TXT.meta b/Assets/Plugins/NuGet/System.Diagnostics.EventLog.4.7.0/LICENSE.TXT.meta new file mode 100644 index 0000000..b27ae59 --- /dev/null +++ b/Assets/Plugins/NuGet/System.Diagnostics.EventLog.4.7.0/LICENSE.TXT.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 5c748692fd1ae2b4ebba7b81debf405b +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Plugins/NuGet/System.Diagnostics.EventLog.4.7.0/System.Diagnostics.EventLog.nuspec b/Assets/Plugins/NuGet/System.Diagnostics.EventLog.4.7.0/System.Diagnostics.EventLog.nuspec new file mode 100644 index 0000000..3c247bb --- /dev/null +++ b/Assets/Plugins/NuGet/System.Diagnostics.EventLog.4.7.0/System.Diagnostics.EventLog.nuspec @@ -0,0 +1,49 @@ + + + + System.Diagnostics.EventLog + 4.7.0 + System.Diagnostics.EventLog + Microsoft + microsoft,dotnetframework + false + MIT + https://licenses.nuget.org/MIT + https://github.com/dotnet/corefx + http://go.microsoft.com/fwlink/?LinkID=288859 + Provides the System.Diagnostics.EventLog class, which allows the applications to use the windows event log service. + +Commonly Used Types: +System.Diagnostics.EventLog + +When using NuGet 3.x this package requires at least version 3.4. + https://go.microsoft.com/fwlink/?LinkID=799421 + © Microsoft Corporation. All rights reserved. + true + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Assets/Plugins/NuGet/System.Diagnostics.EventLog.4.7.0/System.Diagnostics.EventLog.nuspec.meta b/Assets/Plugins/NuGet/System.Diagnostics.EventLog.4.7.0/System.Diagnostics.EventLog.nuspec.meta new file mode 100644 index 0000000..0a41728 --- /dev/null +++ b/Assets/Plugins/NuGet/System.Diagnostics.EventLog.4.7.0/System.Diagnostics.EventLog.nuspec.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: b4efc4656047bf94cb1dcdd2700e63fe +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Plugins/NuGet/System.Diagnostics.EventLog.4.7.0/THIRD-PARTY-NOTICES.TXT b/Assets/Plugins/NuGet/System.Diagnostics.EventLog.4.7.0/THIRD-PARTY-NOTICES.TXT new file mode 100644 index 0000000..77a243e --- /dev/null +++ b/Assets/Plugins/NuGet/System.Diagnostics.EventLog.4.7.0/THIRD-PARTY-NOTICES.TXT @@ -0,0 +1,375 @@ +.NET Core uses third-party libraries or other resources that may be +distributed under licenses different than the .NET Core software. + +In the event that we accidentally failed to list a required notice, please +bring it to our attention. Post an issue or email us: + + dotnet@microsoft.com + +The attached notices are provided for information only. + +License notice for ASP.NET +------------------------------- + +Copyright (c) .NET Foundation. All rights reserved. +Licensed under the Apache License, Version 2.0. + +Available at +https://github.com/aspnet/AspNetCore/blob/master/LICENSE.txt + +License notice for Slicing-by-8 +------------------------------- + +http://sourceforge.net/projects/slicing-by-8/ + +Copyright (c) 2004-2006 Intel Corporation - All Rights Reserved + + +This software program is licensed subject to the BSD License, available at +http://www.opensource.org/licenses/bsd-license.html. + + +License notice for Unicode data +------------------------------- + +http://www.unicode.org/copyright.html#License + +Copyright © 1991-2017 Unicode, Inc. All rights reserved. +Distributed under the Terms of Use in http://www.unicode.org/copyright.html. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF +ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE +WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. + +License notice for Zlib +----------------------- + +https://github.com/madler/zlib +http://zlib.net/zlib_license.html + +/* zlib.h -- interface of the 'zlib' general purpose compression library + version 1.2.11, January 15th, 2017 + + Copyright (C) 1995-2017 Jean-loup Gailly and Mark Adler + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. + + Jean-loup Gailly Mark Adler + jloup@gzip.org madler@alumni.caltech.edu + +*/ + +License notice for Mono +------------------------------- + +http://www.mono-project.com/docs/about-mono/ + +Copyright (c) .NET Foundation Contributors + +MIT License + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the Software), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +License notice for International Organization for Standardization +----------------------------------------------------------------- + +Portions (C) International Organization for Standardization 1986: + Permission to copy in any form is granted for use with + conforming SGML systems and applications as defined in + ISO 8879, provided this notice is included in all copies. + +License notice for Intel +------------------------ + +"Copyright (c) 2004-2006 Intel Corporation - All Rights Reserved + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this +list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, +this list of conditions and the following disclaimer in the documentation +and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for Xamarin and Novell +------------------------------------- + +Copyright (c) 2015 Xamarin, Inc (http://www.xamarin.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + +Copyright (c) 2011 Novell, Inc (http://www.novell.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + +Third party notice for W3C +-------------------------- + +"W3C SOFTWARE AND DOCUMENT NOTICE AND LICENSE +Status: This license takes effect 13 May, 2015. +This work is being provided by the copyright holders under the following license. +License +By obtaining and/or copying this work, you (the licensee) agree that you have read, understood, and will comply with the following terms and conditions. +Permission to copy, modify, and distribute this work, with or without modification, for any purpose and without fee or royalty is hereby granted, provided that you include the following on ALL copies of the work or portions thereof, including modifications: +The full text of this NOTICE in a location viewable to users of the redistributed or derivative work. +Any pre-existing intellectual property disclaimers, notices, or terms and conditions. If none exist, the W3C Software and Document Short Notice should be included. +Notice of any changes or modifications, through a copyright statement on the new code or document such as "This software or document includes material copied from or derived from [title and URI of the W3C document]. Copyright © [YEAR] W3C® (MIT, ERCIM, Keio, Beihang)." +Disclaimers +THIS WORK IS PROVIDED "AS IS," AND COPYRIGHT HOLDERS MAKE NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO, WARRANTIES OF MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF THE SOFTWARE OR DOCUMENT WILL NOT INFRINGE ANY THIRD PARTY PATENTS, COPYRIGHTS, TRADEMARKS OR OTHER RIGHTS. +COPYRIGHT HOLDERS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF ANY USE OF THE SOFTWARE OR DOCUMENT. +The name and trademarks of copyright holders may NOT be used in advertising or publicity pertaining to the work without specific, written prior permission. Title to copyright in this work will at all times remain with copyright holders." + +License notice for Bit Twiddling Hacks +-------------------------------------- + +Bit Twiddling Hacks + +By Sean Eron Anderson +seander@cs.stanford.edu + +Individually, the code snippets here are in the public domain (unless otherwise +noted) — feel free to use them however you please. The aggregate collection and +descriptions are © 1997-2005 Sean Eron Anderson. The code and descriptions are +distributed in the hope that they will be useful, but WITHOUT ANY WARRANTY and +without even the implied warranty of merchantability or fitness for a particular +purpose. + +License notice for Brotli +-------------------------------------- + +Copyright (c) 2009, 2010, 2013-2016 by the Brotli Authors. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + +compress_fragment.c: +Copyright (c) 2011, Google Inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +""AS IS"" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +decode_fuzzer.c: +Copyright (c) 2015 The Chromium Authors. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +""AS IS"" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." + +License notice for Json.NET +------------------------------- + +https://github.com/JamesNK/Newtonsoft.Json/blob/master/LICENSE.md + +The MIT License (MIT) + +Copyright (c) 2007 James Newton-King + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS +FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR +COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER +IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +License notice for vectorized base64 encoding / decoding +-------------------------------------------------------- + +Copyright (c) 2005-2007, Nick Galbreath +Copyright (c) 2013-2017, Alfred Klomp +Copyright (c) 2015-2017, Wojciech Mula +Copyright (c) 2016-2017, Matthieu Darbois +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + +- Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + +- Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS +IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A +PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED +TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR +PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF +LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/Assets/Plugins/NuGet/System.Diagnostics.EventLog.4.7.0/THIRD-PARTY-NOTICES.TXT.meta b/Assets/Plugins/NuGet/System.Diagnostics.EventLog.4.7.0/THIRD-PARTY-NOTICES.TXT.meta new file mode 100644 index 0000000..ea0babc --- /dev/null +++ b/Assets/Plugins/NuGet/System.Diagnostics.EventLog.4.7.0/THIRD-PARTY-NOTICES.TXT.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 4e8ef0a6e3db91548be01bcb3fb79e97 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Plugins/NuGet/System.Diagnostics.EventLog.4.7.0/lib.meta b/Assets/Plugins/NuGet/System.Diagnostics.EventLog.4.7.0/lib.meta new file mode 100644 index 0000000..1a0df15 --- /dev/null +++ b/Assets/Plugins/NuGet/System.Diagnostics.EventLog.4.7.0/lib.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: ffeae9f5d8fe43e4f982ee8ac61f5ee6 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Plugins/NuGet/System.Diagnostics.EventLog.4.7.0/lib/netstandard2.0.meta b/Assets/Plugins/NuGet/System.Diagnostics.EventLog.4.7.0/lib/netstandard2.0.meta new file mode 100644 index 0000000..07da0bc --- /dev/null +++ b/Assets/Plugins/NuGet/System.Diagnostics.EventLog.4.7.0/lib/netstandard2.0.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: ff1e7510db7752940b8053c95490ab26 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Plugins/NuGet/System.Diagnostics.EventLog.4.7.0/lib/netstandard2.0/System.Diagnostics.EventLog.dll b/Assets/Plugins/NuGet/System.Diagnostics.EventLog.4.7.0/lib/netstandard2.0/System.Diagnostics.EventLog.dll new file mode 100644 index 0000000000000000000000000000000000000000..cf314541d1e79e73d61ec9ba639680482cc2f4cd GIT binary patch literal 49256 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 literal 0 HcmV?d00001 diff --git a/Assets/Plugins/NuGet/System.Diagnostics.EventLog.4.7.0/lib/netstandard2.0/System.Diagnostics.EventLog.dll.meta b/Assets/Plugins/NuGet/System.Diagnostics.EventLog.4.7.0/lib/netstandard2.0/System.Diagnostics.EventLog.dll.meta new file mode 100644 index 0000000..acc53bf --- /dev/null +++ b/Assets/Plugins/NuGet/System.Diagnostics.EventLog.4.7.0/lib/netstandard2.0/System.Diagnostics.EventLog.dll.meta @@ -0,0 +1,29 @@ +fileFormatVersion: 2 +guid: 0a3295c84d486df4caa7c80a410b3d15 +labels: +- NuGetForUnity +PluginImporter: + externalObjects: {} + serializedVersion: 3 + iconMap: {} + executionOrder: {} + defineConstraints: [] + isPreloaded: 0 + isOverridable: 0 + isExplicitlyReferenced: 0 + validateReferences: 1 + platformData: + Any: + enabled: 1 + settings: {} + Editor: + enabled: 0 + settings: + DefaultValueInitialized: true + WindowsStoreApps: + enabled: 0 + settings: + CPU: AnyCPU + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Plugins/NuGet/System.Diagnostics.EventLog.4.7.0/lib/netstandard2.0/System.Diagnostics.EventLog.xml b/Assets/Plugins/NuGet/System.Diagnostics.EventLog.4.7.0/lib/netstandard2.0/System.Diagnostics.EventLog.xml new file mode 100644 index 0000000..c9a1c60 --- /dev/null +++ b/Assets/Plugins/NuGet/System.Diagnostics.EventLog.4.7.0/lib/netstandard2.0/System.Diagnostics.EventLog.xml @@ -0,0 +1,2024 @@ + + + + System.Diagnostics.EventLog + + + + Provides data for the event. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class with the specified event log entry. + An that represents the entry that was written. + + + Gets the event log entry that was written to the log. + An that represents the entry that was written to the event log. + + + Represents the method that will handle the event of an . + The source of the event. + An that contains the event data. + + + Represents a placeholder (bookmark) within an event stream. You can use the placeholder to mark a position and return to this position in a stream of events. An instance of this object can be obtained from an object, in which case it corresponds to the position of that event record. + + + Represents a keyword for an event. Keywords are defined in an event provider and are used to group the event with other similar events (based on the usage of the events). + + + Gets the localized name of the keyword. + A string that contains a localized name for this keyword. + + + Gets the non-localized name of the keyword. + A string that contains the non-localized name of this keyword. + + + Gets the numeric value associated with the keyword. + The numeric value associated with the keyword. + + + Contains an event level that is defined in an event provider. The level signifies the severity of the event. + + + Gets the localized name for the event level. The name describes what severity level of events this level is used for. + A string that contains the localized name for the event level. + + + Gets the non-localized name of the event level. + A string that contains the non-localized name of the event level. + + + Gets the numeric value of the event level. + The numeric value of the event level. + + + Contains static information and configuration settings for an event log. Many of the configurations settings were defined by the event provider that created the log. + + + Initializes a new object by specifying the local event log for which to get information and configuration settings. + The name of the local event log for which to get information and configuration settings. + + + Initializes a new object by specifying the name of the log for which to get information and configuration settings. The log can be on the local computer or a remote computer, based on the event log session specified. + The name of the event log for which to get information and configuration settings. + The event log session used to determine the event log service that the specified log belongs to. The session is either connected to the event log service on the local computer or a remote computer. + + + Releases all the resources used by this object. + + + Releases the unmanaged resources used by this object, and optionally releases the managed resources. + + to release both managed and unmanaged resources; to release only unmanaged resources. + + + Gets a value that indicates whether the event log is a classic event log. A classic event log is one that has its events defined in an .mc file instead of a manifest (.xml file) used by the event provider. + + if the event log is a classic log; otherwise, . + + + Gets or sets a value that indicates whether the event log is enabled or disabled. An enabled log is one in which events can be logged, and a disabled log is one in which events cannot be logged. + + if the log is enabled; otherwise, . + + + Gets or sets the file directory path to the location of the file where the events are stored for the log. + A string that contains the path to the event log file. + + + Gets an value that specifies whether the event log is an application, system, or custom event log. + One of the enumeration values. + + + Gets or sets an value that determines how events are handled when the event log becomes full. + One of the enumeration values. + + + Gets the name of the event log. + The name of the event log. + + + Gets an value that determines the type of the event log. + One of the enumeration values. + + + Gets or sets the maximum size, in bytes, that the event log file is allowed to be. When the file reaches this maximum size, it is considered full. + The maximum size, in bytes, that the event log file is allowed to be. + + + Gets the name of the event provider that created this event log. + The name of the event provider that created this event log. + + + Gets the size of the buffer that the event provider uses for publishing events to the log. + The size of the buffer that the event provider uses for publishing events to the log. It can be . + + + Gets the control globally unique identifier (GUID) for the event log if the log is a debug log. If this log is not a debug log, this value is . + A GUID value, or if the log is not a debug log. + + + Gets or sets the keyword mask used by the event provider. + The keyword mask used by the event provider, or if the event provider did not define any keywords. + + + Gets the maximum latency time used by the event provider when publishing events to the log. + The maximum latency time used by the event provider when publishing events to the log, or if no latency time was specified by the event provider. + + + Gets or sets the maximum event level (which defines the severity of the event) that is allowed to be logged in the event log. This value is defined by the event provider. + The maximum event level that is allowed to be logged in the event log, or if the maximum event level was not defined in the event provider. + + + Gets the maximum number of buffers used by the event provider to publish events to the event log. + The maximum number of buffers used by the event provider to publish events to the event log. This value can be . + + + Gets the minimum number of buffers used by the event provider to publish events to the event log. + The minimum number of buffers used by the event provider to publish events to the event log. This value can be . + + + Gets an enumerable collection of the names of all the event providers that can publish events to this event log. + An enumerable collection of strings that contain the event provider names. + + + Saves the configuration settings that. + + + Gets or sets the security descriptor of the event log. The security descriptor defines the users and groups of users that can read and write to the event log. + A string that contains the security descriptor for the event log. + + + Represents the base class for all the exceptions that are thrown when an error occurs while reading event log related information. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class with the error code for the exception. + The error code for the error that occurred while reading or configuring event log related information. For more information and a list of event log related error codes, see http://go.microsoft.com/fwlink/?LinkId=82629. + + + Initializes a new instance of the class with serialized data. + The object that holds the serialized object data about the exception being thrown. + The object that contains contextual information about the source or destination. + + + Initializes a new instance of the class by specifying the error message that describes the current exception. + The error message that describes the current exception. + + + Initializes a new instance of the class with an error message and inner exception. + The error message that describes the current exception. + The Exception instance that caused the current exception. + + + Sets the SerializationInfo object with information about the exception. + The object that holds the serialized object data about the exception thrown. + The object that contains contextual information about the source or destination. + + + Gets the error message that describes the current exception. + Returns a string that contains the error message that describes the current exception. + + + Allows you to access the run-time properties of active event logs and event log files. These properties include the number of events in the log, the size of the log, a value that determines whether the log is full, and the last time the log was written to or accessed. + + + Gets the file attributes of the log file associated with the log. + Returns an integer value. This value can be null. + + + Gets the time that the log file associated with the event log was created. + Returns a object. This value can be null. + + + Gets the size of the file, in bytes, associated with the event log. + Returns a long value. + + + Gets a Boolean value that determines whether the log file has reached its maximum size (the log is full). + Returns if the log is full, and returns if the log is not full. + + + Gets the last time the log file associated with the event log was accessed. + Returns a object. This value can be null. + + + Gets the last time data was written to the log file associated with the event log. + Returns a object. This value can be null. + + + Gets the number of the oldest event record in the event log. + Returns a long value that represents the number of the oldest event record in the event log. This value can be null. + + + Gets the number of event records in the event log. + Returns a long value that represents the number of event records in the event log. This value can be null. + + + Represents the exception thrown when an event provider publishes invalid data in an event. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class with serialized data. + The object that holds the serialized object data about the exception thrown. + The object that contains contextual information about the source or destination. + + + Initializes a new instance of the class by specifying the error message that describes the current exception. + The error message that describes the current exception. + + + Initializes a new instance of the class with an error message and inner exception. + The error message that describes the current exception. + The Exception instance that caused the current exception. + + + Defines the default access permissions for the event log. The Application and System values indicate that the log shares the access control list (ACL) with the appropriate Windows log (the Application or System event logs) and share the Event Tracing for Windows (ETW) session with other logs of the same isolation. All channels with Custom isolation use a private ETW session. + + + The log shares the access control list with the Application event log and shares the ETW session with other logs that have Application isolation. + + + The event log is a custom event log that uses its own private ETW session. + + + The log shares the access control list with the System event log and shares the ETW session with other logs that have System isolation. + + + Represents a link between an event provider and an event log that the provider publishes events into. This object cannot be instantiated. + + + Gets the localized name of the event log. + Returns a string that contains the localized name of the event log. + + + Gets a Boolean value that determines whether the event log is imported, rather than defined in the event provider. An imported event log is defined in a different provider. + Returns if the event log is imported by the event provider, and returns if the event log is not imported by the event provider. + + + Gets the non-localized name of the event log associated with this object. + Returns a string that contains the non-localized name of the event log associated with this object. + + + Determines the behavior for the event log service handles an event log when the log reaches its maximum allowed size (when the event log is full). + + + Archive the log when full, do not overwrite events. The log is automatically archived when necessary. No events are overwritten. + + + New events continue to be stored when the log file is full. Each new incoming event replaces the oldest event in the log. + + + Do not overwrite events. Clear the log manually rather than automatically. + + + Represents the exception that is thrown when a requested event log (usually specified by the name of the event log or the path to the event log file) does not exist. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class with serialized data. + The object that holds the serialized object data about the exception thrown. + The object that contains contextual information about the source or destination. + + + Initializes a new instance of the class by specifying the error message that describes the current exception. + The error message that describes the current exception. + + + Initializes a new instance of the class with an error message and inner exception. + The error message that describes the current exception. + The Exception instance that caused the current exception. + + + Contains an array of strings that represent XPath queries for elements in the XML representation of an event, which is based on the Event Schema. The queries in this object are used to extract values from the event. + + + Initializes a new class instance. + XPath queries used to extract values from the XML representation of the event. + + + Releases all the resources used by this object. + + + Releases the unmanaged resources used by this object, and optionally releases the managed resources. + + to release both managed and unmanaged resources; to release only unmanaged resources. + + + Represents the exception that is thrown when a specified event provider name references a disabled event provider. A disabled event provider cannot publish events. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class with serialized data. + The object that holds the serialized object data about the exception thrown. + The object that contains contextual information about the source or destination. + + + Initializes a new instance of the class by specifying the error message that describes the current exception. + The error message that describes the current exception. + + + Initializes a new instance of the class with an error message and inner exception. + The error message that describes the current exception. + The Exception instance that caused the current exception. + + + Represents a query for events in an event log and the settings that define how the query is executed and on what computer the query is executed on. + + + Initializes a new instance of the class by specifying the target of the query. The target can be an active event log or a log file. + The name of the event log to query, or the path to the event log file to query. + Specifies whether the string used in the path parameter specifies the name of an event log, or the path to an event log file. + + + Initializes a new instance of the class by specifying the target of the query and the event query. The target can be an active event log or a log file. + The name of the event log to query, or the path to the event log file to query. + Specifies whether the string used in the path parameter specifies the name of an event log, or the path to an event log file. + The event query used to retrieve events that match the query conditions. + + + Gets or sets the Boolean value that determines whether to read events from the newest event in an event log to the oldest event in the log. + Returns if events are read from the newest event in the log to the oldest event, and returns if events are read from the oldest event in the log to the newest event. + + + Gets or sets the session that access the Event Log service on the local computer or a remote computer. This object can be set to access a remote event log by creating a object or an object with this object. + Returns an object. + + + Gets or sets a Boolean value that determines whether this query will continue to retrieve events when the query has an error. + + indicates that the query will continue to retrieve events even if the query fails for some logs, and indicates that this query will not continue to retrieve events when the query fails. + + + Enables you to read events from an event log based on an event query. The events that are read by this object are returned as objects. + + + Initializes a new instance of the class by specifying an event query. + The event query used to retrieve events. + + + Initializes a new instance of the class by specifying an event query and a bookmark that is used as starting position for the query. + The event query used to retrieve events. + The bookmark (placeholder) used as a starting position in the event log or stream of events. Only events logged after the bookmark event will be returned by the query. + + + Initializes a new instance of the class by specifying an active event log to retrieve events from. + The name of the event log to retrieve events from. + + + Initializes a new instance of the class by specifying the name of an event log to retrieve events from or the path to a log file to retrieve events from. + The name of the event log to retrieve events from, or the path to the event log file to retrieve events from. + Specifies whether the string used in the path parameter specifies the name of an event log, or the path to an event log file. + + + Gets or sets the number of events retrieved from the stream of events on every read operation. + Returns an integer value. + + + Cancels the current query operation. + + + Releases all the resources used by this object. + + + Releases the unmanaged resources used by this object, and optionally releases the managed resources. + + to release both managed and unmanaged resources; to release only unmanaged resources. + + + Gets the status of each event log or log file associated with the event query in this object. + Returns a list of objects that each contain status information about an event log associated with the event query in this object. + + + Reads the next event that is returned from the event query in this object. + Returns an object. + + + Reads the next event that is returned from the event query in this object. + The maximum time to allow the read operation to run before canceling the operation. + Returns an object. + + + Changes the position in the event stream where the next event that is read will come from by specifying a bookmark event. No events logged before the bookmark event will be retrieved. + The bookmark (placeholder) used as a starting position in the event log or stream of events. Only events that have been logged after the bookmark event will be returned by the query. + + + Changes the position in the event stream where the next event that is read will come from by specifying a bookmark event and an offset number of events from the bookmark. No events logged before the bookmark plus the offset will be retrieved. + The bookmark (placeholder) used as a starting position in the event log or stream of events. Only events that have been logged after the bookmark event will be returned by the query. + The offset number of events to change the position of the bookmark. + + + Changes the position in the event stream where the next event that is read will come from by specifying a starting position and an offset from the starting position. No events logged before the starting position plus the offset will be retrieved. + A value from the enumeration defines where in the stream of events to start querying for events. + The offset number of events to add to the origin. + + + Represents an exception that is thrown when an error occurred while reading, querying, or subscribing to the events in an event log. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class with serialized data. + The object that holds the serialized object data about the exception thrown. + The object that contains contextual information about the source or destination. + + + Initializes a new instance of the class by specifying the error message that describes the current exception. + The error message that describes the current exception. + + + Initializes a new instance of the class with an error message and inner exception. + The error message that describes the current exception. + The Exception instance that caused the current exception. + + + Contains the properties of an event instance for an event that is received from an object. The event properties provide information about the event such as the name of the computer where the event was logged and the time that the event was created. + + + Gets the globally unique identifier (GUID) for the activity in process for which the event is involved. This allows consumers to group related activities. + Returns a GUID value. + + + Gets a placeholder (bookmark) that corresponds to this event. This can be used as a placeholder in a stream of events. + Returns a object. + + + Gets the name of the event log or the event log file in which the event is stored. + Returns a string that contains the name of the event log or the event log file in which the event is stored. + + + Releases the unmanaged resources used by this object, and optionally releases the managed resources. + + to release both managed and unmanaged resources; to release only unmanaged resources. + + + Gets the event message in the current locale. + Returns a string that contains the event message in the current locale. + + + Gets the event message, replacing variables in the message with the specified values. + The values used to replace variables in the event message. Variables are represented by %n, where n is a number. + Returns a string that contains the event message in the current locale. + + + Gets the enumeration of the values of the user-supplied event properties, or the results of XPath-based data if the event has XML representation. + Selects the property values to return. + Returns a list of objects. + + + Gets the identifier for this event. All events with this identifier value represent the same type of event. + Returns an integer value. This value can be null. + + + Gets the keyword mask of the event. Get the value of the property to get the name of the keywords used in this mask. + Returns a long value. This value can be null. + + + Gets the display names of the keywords used in the keyword mask for this event. + Returns an enumerable collection of strings that contain the display names of the keywords used in the keyword mask for this event. + + + Gets the level of the event. The level signifies the severity of the event. For the name of the level, get the value of the property. + Returns a byte value. This value can be null. + + + Gets the display name of the level for this event. + Returns a string that contains the display name of the level for this event. + + + Gets the name of the event log where this event is logged. + Returns a string that contains a name of the event log that contains this event. + + + Gets the name of the computer on which this event was logged. + Returns a string that contains the name of the computer on which this event was logged. + + + Gets a list of query identifiers that this event matches. This event matches a query if the query would return this event. + Returns an enumerable collection of integer values. + + + Gets the opcode of the event. The opcode defines a numeric value that identifies the activity or a point within an activity that the application was performing when it raised the event. For the name of the opcode, get the value of the property. + Returns a short value. This value can be null. + + + Gets the display name of the opcode for this event. + Returns a string that contains the display name of the opcode for this event. + + + Gets the process identifier for the event provider that logged this event. + Returns an integer value. This value can be null. + + + Gets the user-supplied properties of the event. + Returns a list of objects. + + + Gets the globally unique identifier (GUID) of the event provider that published this event. + Returns a GUID value. This value can be null. + + + Gets the name of the event provider that published this event. + Returns a string that contains the name of the event provider that published this event. + + + Gets qualifier numbers that are used for event identification. + Returns an integer value. This value can be null. + + + Gets the event record identifier of the event in the log. + Returns a long value. This value can be null. + + + Gets a globally unique identifier (GUID) for a related activity in a process for which an event is involved. + Returns a GUID value. This value can be null. + + + Gets a task identifier for a portion of an application or a component that publishes an event. A task is a 16-bit value with 16 top values reserved. This type allows any value between 0x0000 and 0xffef to be used. For the name of the task, get the value of the property. + Returns an integer value. This value can be null. + + + Gets the display name of the task for the event. + Returns a string that contains the display name of the task for the event. + + + Gets the thread identifier for the thread that the event provider is running in. + Returns an integer value. This value can be null. + + + Gets the time, in format, that the event was created. + Returns a value. The value can be null. + + + Gets the XML representation of the event. All of the event properties are represented in the event's XML. The XML conforms to the event schema. + Returns a string that contains the XML representation of the event. + + + Gets the security descriptor of the user whose context is used to publish the event. + Returns a value. + + + Gets the version number for the event. + Returns a byte value. This value can be null. + + + Used to access the Event Log service on the local computer or a remote computer so you can manage and gather information about the event logs and event providers on the computer. + + + Initializes a new object, establishes a connection with the local Event Log service. + + + Initializes a new object, and establishes a connection with the Event Log service on the specified computer. The credentials (user name and password) of the user who calls the method is used for the credentials to access the remote computer. + The name of the computer on which to connect to the Event Log service. + + + Initializes a new object, and establishes a connection with the Event Log service on the specified computer. The specified credentials (user name and password) are used for the credentials to access the remote computer. + The name of the computer on which to connect to the Event Log service. + The domain of the specified user. + The user name used to connect to the remote computer. + The password used to connect to the remote computer. + The type of connection to use for the connection to the remote computer. + + + Cancels any operations (such as reading an event log or subscribing to an event log) that are currently active for the Event Log service that this session object is connected to. + + + Clears events from the specified event log. + The name of the event log to clear all the events from. + + + Clears events from the specified event log, and saves the cleared events to the specified file. + The name of the event log to clear all the events from. + The path to the file in which the cleared events will be saved. The file should end in .evtx. + + + Releases all the resources used by this object. + + + Releases the unmanaged resources used by this object, and optionally releases the managed resources. + + to release both managed and unmanaged resources; to release only unmanaged resources. + + + Exports events into an external log file. The events are stored without the event messages. + The name of the event log to export events from, or the path to the event log file to export events from. + Specifies whether the string used in the path parameter specifies the name of an event log, or the path to an event log file. + The query used to select the events to export. Only the events returned from the query will be exported. + The path to the log file (ends in .evtx) in which the exported events will be stored after this method is executed. + + + Exports events into an external log file. A flag can be set to indicate that the method will continue exporting events even if the specified query fails for some logs. The events are stored without the event messages. + The name of the event log to export events from, or the path to the event log file to export events from. + Specifies whether the string used in the path parameter specifies the name of an event log, or the path to an event log file. + The query used to select the events to export. Only the events returned from the query will be exported. + The path to the log file (ends in .evtx) in which the exported events will be stored after this method is executed. + + indicates that the method will continue exporting events even if the specified query fails for some logs, and indicates that this method will not continue to export events when the specified query fails. + + + Exports events and their messages into an external log file. + The name of the event log to export events from, or the path to the event log file to export events from. + Specifies whether the string used in the path parameter specifies the name of an event log, or the path to an event log file. + The query used to select the events to export. Only the events returned from the query will be exported. + The path to the log file (ends in .evtx) in which the exported events will be stored after this method is executed. + + + Exports events and their messages into an external log file. A flag can be set to indicate that the method will continue exporting events even if the specified query fails for some logs. The event messages are exported in the specified language. + The name of the event log to export events from, or the path to the event log file to export events from. + Specifies whether the string used in the path parameter specifies the name of an event log, or the path to an event log file. + The query used to select the events to export. Only the events returned from the query will be exported. + The path to the log file (ends in .evtx) in which the exported events will be stored after this method is executed. + + indicates that the method will continue exporting events even if the specified query fails for some logs, and indicates that this method will not continue to export events when the specified query fails. + The culture that specifies which language that the exported event messages will be in. + + + Gets an object that contains runtime information for the specified event log. + The name of the event log to get information about, or the path to the event log file to get information about. + Specifies whether the string used in the path parameter specifies the name of an event log, or the path to an event log file. + An object that contains information about the specified log. + + + Gets an enumerable collection of all the event log names that are registered with the Event Log service. + An enumerable collection of strings that contain the event log names. + + + Gets an enumerable collection of all the event provider names that are registered with the Event Log service. An event provider is an application that publishes events to an event log. + An enumerable collection of strings that contain the event provider names. + + + Gets a static predefined session object that is connected to the Event Log service on the local computer. + A predefined session object that is connected to the Event Log service on the local computer. + + + Contains the status code or error code for a specific event log. This status can be used to determine if the event log is available for an operation. + + + Gets the name of the event log for which the status code is obtained. + The name of the event log for which the status code is obtained. + + + Gets the status code or error code for the event log. This status or error is the result of a read or subscription operation on the event log. + The status code or error code for the event log. + + + Defines the type of events that are logged in an event log. Each log can only contain one type of event. + + + These events are primarily for end users, administrators, and support. The events that are found in the Administrative type logs indicate a problem and a well-defined solution that an administrator can act on. An example of an administrative event is an event that occurs when an application fails to connect to a printer. + + + Events in an analytic event log are published in high volume. They describe program operation and indicate problems that cannot be handled by user intervention. + + + Events in a debug type event log are used solely by developers to diagnose a problem for debugging. + + + Events in an operational type event log are used for analyzing and diagnosing a problem or occurrence. They can be used to trigger tools or tasks based on the problem or occurrence. An example of an operational event is an event that occurs when a printer is added or removed from a system. + + + Allows you to subscribe to incoming events. Each time a desired event is published to an event log, the event is raised, and the method that handles this event will be executed. + + + Initializes a new instance of the class by specifying an event query. + Specifies a query for the event subscription. When an event is logged that matches the criteria expressed in the query, then the event is raised. + + + Initializes a new instance of the class by specifying an event query and a bookmark that is used as starting position for the query. + Specifies a query for the event subscription. When an event is logged that matches the criteria expressed in the query, then the event is raised. + The bookmark (placeholder) used as a starting position in the event log or stream of events. Only events that have been logged after the bookmark event will be returned by the query. + + + Initializes a new instance of the class by specifying an event query, a bookmark that is used as starting position for the query, and a Boolean value that determines whether to read the events that already exist in the event log. + Specifies a query for the event subscription. When an event is logged that matches the criteria expressed in the query, then the event is raised. + The bookmark (placeholder) used as a starting position in the event log or stream of events. Only events that have been logged after the bookmark event will be returned by the query. + A Boolean value that determines whether to read the events that already exist in the event log. If this value is , then the existing events are read and if this value is , then the existing events are not read. + + + Initializes a new instance of the class by specifying the name or path to an event log. + The path or name of the event log monitor for events. If any event is logged in this event log, then the event is raised. + + + Releases all the resources used by this object. + + + Releases the unmanaged resources used by this object, and optionally releases the managed resources. + + to release both managed and unmanaged resources; to release only unmanaged resources. + + + Gets or sets a value that indicates whether this object starts delivering events to the event delegate. + + when this object can deliver events to the event delegate; when this object has stopped delivery. + + + Allows setting a delegate (event handler method) that gets called every time an event is published that matches the criteria specified in the event query for this object. + + + Contains the metadata (properties and settings) for an event that is defined in an event provider. + + + Gets the description template associated with the event using the current thread locale for the description language. + A string that contains the description template associated with the event. + + + Gets the identifier of the event that is defined in the event provider. + The event identifier. + + + Gets the keywords associated with the event that is defined in the event provider. + An enumerable collection of the keywords associated with the event. + + + Gets the level associated with the event that is defined in the event provider. The level defines the severity of the event. + The level associated with the event. + + + Gets a link to the event log that receives this event when the provider publishes this event. + A link to the event log. + + + Gets the opcode associated with this event that is defined by an event provider. The opcode defines a numeric value that identifies the activity or a point within an activity that the application was performing when it raised the event. + The opcode associated with this event. + + + Gets the task associated with the event. A task identifies a portion of an application or a component that publishes an event. + The task associated with the event. + + + Gets the template string for the event. Templates are used to describe data that is used by a provider when an event is published. Templates optionally specify XML that provides the structure of an event. The XML allows values that the event publisher provides to be inserted during the rendering of an event. + A string that contains the template for the event. + + + Gets the version of the event that qualifies the event identifier. + A byte value that contains the version of the event. + + + Contains an event opcode that is defined in an event provider. An opcode defines a numeric value that identifies the activity or a point within an activity that the application was performing when it raised the event. + + + Gets the localized name for an event opcode. + The localized name for an event opcode. + + + Gets the non-localized name for an event opcode. + The non-localized name for an event opcode. + + + Gets the numeric value associated with the event opcode. + The numeric value associated with the event opcode. + + + Contains the value of an event property that is specified by the event provider when the event is published. + + + Gets the value of the event property that is specified by the event provider when the event is published. + The value of the event property. + + + Defines the properties of an event instance for an event that is received from an object. The event properties provide information about the event such as the name of the computer where the event was logged and the time the event was created. This class is an abstract class. The class implements this class. + + + Initializes a new instance of the class. + + + Gets the globally unique identifier (GUID) for the activity in process for which the event is involved. This allows consumers to group related activities. + Returns a GUID value. + + + Gets a placeholder (bookmark) that corresponds to this event. This can be used as a placeholder in a stream of events. + Returns a object. + + + Releases all the resources used by this object. + + + Releases the unmanaged resources used by this object, and optionally releases the managed resources. + + to release both managed and unmanaged resources; to release only unmanaged resources. + + + Gets the event message in the current locale. + Returns a string that contains the event message in the current locale. + + + Gets the event message, replacing variables in the message with the specified values. + The values used to replace variables in the event message. Variables are represented by %n, where n is a number. + Returns a string that contains the event message in the current locale. + + + Gets the identifier for this event. All events with this identifier value represent the same type of event. + Returns an integer value. This value can be null. + + + Gets the keyword mask of the event. Get the value of the property to get the name of the keywords used in this mask. + Returns a long value. This value can be null. + + + Gets the display names of the keywords used in the keyword mask for this event. + Returns an enumerable collection of strings that contain the display names of the keywords used in the keyword mask for this event. + + + Gets the level of the event. The level signifies the severity of the event. For the name of the level, get the value of the property. + Returns a byte value. This value can be null. + + + Gets the display name of the level for this event. + Returns a string that contains the display name of the level for this event. + + + Gets the name of the event log where this event is logged. + Returns a string that contains a name of the event log that contains this event. + + + Gets the name of the computer on which this event was logged. + Returns a string that contains the name of the computer on which this event was logged. + + + Gets the opcode of the event. The opcode defines a numeric value that identifies the activity or a point within an activity that the application was performing when it raised the event. For the name of the opcode, get the value of the property. + Returns a short value. This value can be null. + + + Gets the display name of the opcode for this event. + Returns a string that contains the display name of the opcode for this event. + + + Gets the process identifier for the event provider that logged this event. + Returns an integer value. This value can be null. + + + Gets the user-supplied properties of the event. + Returns a list of objects. + + + Gets the globally unique identifier (GUID) of the event provider that published this event. + Returns a GUID value. This value can be null. + + + Gets the name of the event provider that published this event. + Returns a string that contains the name of the event provider that published this event. + + + Gets qualifier numbers that are used for event identification. + Returns an integer value. This value can be null. + + + Gets the event record identifier of the event in the log. + Returns a long value. This value can be null. + + + Gets a globally unique identifier (GUID) for a related activity in a process for which an event is involved. + Returns a GUID value. This value can be null. + + + Gets a task identifier for a portion of an application or a component that publishes an event. A task is a 16-bit value with 16 top values reserved. This type allows any value between 0x0000 and 0xffef to be used. To obtain the task name, get the value of the property. + Returns an integer value. This value can be null. + + + Gets the display name of the task for the event. + Returns a string that contains the display name of the task for the event. + + + Gets the thread identifier for the thread that the event provider is running in. + Returns an integer value. This value can be null. + + + Gets the time, in format, that the event was created. + Returns a value. The value can be null. + + + Gets the XML representation of the event. All of the event properties are represented in the event XML. The XML conforms to the event schema. + Returns a string that contains the XML representation of the event. + + + Gets the security descriptor of the user whose context is used to publish the event. + Returns a value. + + + Gets the version number for the event. + Returns a byte value. This value can be null. + + + When the event is raised, an instance of this object is passed to the delegate method that handles the event. This object contains the event that was published to the event log or the exception that occurred when the event subscription failed. + + + Gets the exception that occurred when the event subscription failed. The exception has a description of why the subscription failed. + The exception that occurred when the event subscription failed. + + + Gets the event record that is published to the event log. This event matches the criteria from the query specified in the event subscription. + The event record. + + + Contains an event task that is defined in an event provider. The task identifies a portion of an application or a component that publishes an event. A task is a 16-bit value with 16 top values reserved. + + + Gets the localized name for the event task. + The localized name for the event task. + + + Gets the event globally unique identifier (GUID) associated with the task. + The event GUID associated with the task. + + + Gets the non-localized name of the event task. + The non-localized name of the event task. + + + Gets the numeric value associated with the task. + The numeric value associated with the task. + + + Specifies that a string contains a name of an event log or the file system path to an event log file. + + + A path parameter contains the file system path to an event log file. + + + A path parameter contains the name of the event log. + + + Contains static information about an event provider, such as the name and id of the provider, and the collection of events defined in the provider. + + + Initializes a new instance of the class by specifying the name of the provider that you want to retrieve information about. + The name of the event provider that you want to retrieve information about. + + + Initializes a new instance of the class by specifying the name of the provider that you want to retrieve information about, the event log service that the provider is registered with, and the language that you want to return the information in. + The name of the event provider that you want to retrieve information about. + The object that specifies whether to get the provider information from a provider on the local computer or a provider on a remote computer. + The culture that specifies the language that the information should be returned in. + + + Gets the localized name of the event provider. + Returns a string that contains the localized name of the event provider. + + + Releases all the resources used by this object. + + + Releases the unmanaged resources used by this object, and optionally releases the managed resources. + + to release both managed and unmanaged resources; to release only unmanaged resources. + + + Gets an enumerable collection of objects, each of which represents an event that is defined in the provider. + Returns an enumerable collection of objects. + + + Gets the base of the URL used to form help requests for the events in this event provider. + Returns a value. + + + Gets the globally unique identifier (GUID) for the event provider. + Returns the GUID value for the event provider. + + + Gets an enumerable collection of objects, each of which represent an event keyword that is defined in the event provider. + Returns an enumerable collection of objects. + + + Gets an enumerable collection of objects, each of which represent a level that is defined in the event provider. + Returns an enumerable collection of objects. + + + Gets an enumerable collection of objects, each of which represent a link to an event log that is used by the event provider. + Returns an enumerable collection of objects. + + + Gets the path of the file that contains the message table resource that has the strings associated with the provider metadata. + Returns a string that contains the path of the provider message file. + + + Gets the unique name of the event provider. + Returns a string that contains the unique name of the event provider. + + + Gets an enumerable collection of objects, each of which represent an opcode that is defined in the event provider. + Returns an enumerable collection of objects. + + + Gets the path of the file that contains the message table resource that has the strings used for parameter substitutions in event descriptions. + Returns a string that contains the path of the file that contains the message table resource that has the strings used for parameter substitutions in event descriptions. + + + Gets the path to the file that contains the metadata associated with the provider. + Returns a string that contains the path to the file that contains the metadata associated with the provider. + + + Gets an enumerable collection of objects, each of which represent a task that is defined in the event provider. + Returns an enumerable collection of objects. + + + Defines values for the type of authentication used during a Remote Procedure Call (RPC) login to a server. This login occurs when you create a object that specifies a connection to a remote computer. + + + Use the default authentication method during RPC login. The default authentication is equivalent to Negotiate. + + + Use Kerberos authentication during RPC login. + + + Use the Negotiate authentication method during RPC login. This allows the client application to select the most appropriate authentication method (NTLM or Kerberos) for the situation. + + + Use Windows NT LAN Manager (NTLM) authentication during RPC login. + + + Defines the standard keywords that are attached to events by the event provider. For more information about keywords, see . + + + Attached to all failed security audit events. This keyword should only be used for events in the Security log. + + + Attached to all successful security audit events. This keyword should only be used for events in the Security log. + + + Attached to transfer events where the related Activity ID (Correlation ID) is a computed value and is not guaranteed to be unique (not a real GUID). + + + Attached to transfer events where the related Activity ID (Correlation ID) is a computed value and is not guaranteed to be unique (not a real GUID). + + + Attached to events which are raised using the RaiseEvent function. + + + This value indicates that no filtering on keyword is performed when the event is published. + + + Attached to all response time events. + + + Attached to all Service Quality Mechanism (SQM) events. + + + Attached to all Windows Diagnostic Infrastructure (WDI) context events. + + + Attached to all Windows Diagnostic Infrastructure (WDI) diagnostic events. + + + Defines the standard event levels that are used in the Event Log service. The level defines the severity of the event. Custom event levels can be defined beyond these standard levels. For more information about levels, see . + + + This level corresponds to critical errors, which is a serious error that has caused a major failure. + + + This level corresponds to normal errors that signify a problem. + + + This level corresponds to informational events or messages that are not errors. These events can help trace the progress or state of an application. + + + This value indicates that not filtering on the level is done during the event publishing. + + + This level corresponds to lengthy events or messages. + + + This level corresponds to warning events. For example, an event that gets published because a disk is nearing full capacity is a warning event. + + + Defines the standard opcodes that are attached to events by the event provider. For more information about opcodes, see . + + + An event with this opcode is a trace collection start event. + + + An event with this opcode is a trace collection stop event. + + + An event with this opcode is an extension event. + + + An event with this opcode is an informational event. + + + An event with this opcode is published when one activity in an application receives data. + + + An event with this opcode is published after an activity in an application replies to an event. + + + An event with this opcode is published after an activity in an application resumes from a suspended state. The event should follow an event with the Suspend opcode. + + + An event with this opcode is published when one activity in an application transfers data or system resources to another activity. + + + An event with this opcode is published when an application starts a new transaction or activity. This can be embedded into another transaction or activity when multiple events with the Start opcode follow each other without an event with a Stop opcode. + + + An event with this opcode is published when an activity or a transaction in an application ends. The event corresponds to the last unpaired event with a Start opcode. + + + An event with this opcode is published when an activity in an application is suspended. + + + Defines the standard tasks that are attached to events by the event provider. For more information about tasks, see . + + + No task is used to identify a portion of an application that publishes an event. + + + Represents language-neutral information for an event log entry. + + + Initializes a new instance of the class using the specified resource identifiers for the localized message and category text of the event entry. + A resource identifier that corresponds to a string defined in the message resource file of the event source. + A resource identifier that corresponds to a string defined in the category resource file of the event source, or zero to specify no category for the event. + The parameter is a negative value or a value larger than . +-or- +The parameter is a negative value or a value larger than . + + + Initializes a new instance of the class using the specified resource identifiers for the localized message and category text of the event entry and the specified event log entry type. + A resource identifier that corresponds to a string defined in the message resource file of the event source. + A resource identifier that corresponds to a string defined in the category resource file of the event source, or zero to specify no category for the event. + An value that indicates the event type. + + is not a valid value. + + is a negative value or a value larger than . +-or- + is a negative value or a value larger than . + + + Gets or sets the resource identifier that specifies the application-defined category of the event entry. + A numeric category value or resource identifier that corresponds to a string defined in the category resource file of the event source. The default is zero, which signifies that no category will be displayed for the event entry. + The property is set to a negative value or to a value larger than . + + + Gets or sets the event type of the event log entry. + An value that indicates the event entry type. The default value is . + The property is not set to a valid value. + + + Gets or sets the resource identifier that designates the message text of the event entry. + A resource identifier that corresponds to a string defined in the message resource file of the event source. + The property is set to a negative value or to a value larger than . + + + Provides interaction with Windows event logs. + + + Initializes a new instance of the class. Does not associate the instance with any log. + + + Initializes a new instance of the class. Associates the instance with a log on the local computer. + The name of the log on the local computer. + The log name is . + The log name is invalid. + + + Initializes a new instance of the class. Associates the instance with a log on the specified computer. + The name of the log on the specified computer. + The computer on which the log exists. + The log name is . + The log name is invalid. +-or- +The computer name is invalid. + + + Initializes a new instance of the class. Associates the instance with a log on the specified computer and creates or assigns the specified source to the . + The name of the log on the specified computer + The computer on which the log exists. + The source of event log entries. + The log name is . + The log name is invalid. +-or- +The computer name is invalid. + + + Begins the initialization of an used on a form or used by another component. The initialization occurs at runtime. + + is already initialized. + + + Removes all entries from the event log. + The event log was not cleared successfully. +-or- +The log cannot be opened. A Windows error code is not available. + A value is not specified for the property. Make sure the log name is not an empty string. + The log does not exist. + + + Closes the event log and releases read and write handles. + The event log's read handle or write handle was not released successfully. + + + Establishes a valid event source for writing localized event messages, using the specified configuration properties for the event source and the corresponding event log. + The configuration properties for the event source and its target event log. + The computer name specified in is not valid. +-or- +The source name specified in is . +-or- +The log name specified in is not valid. Event log names must consist of printable characters and cannot include the characters '*', '?', or '\'. +-or- +The log name specified in is not valid for user log creation. The Event log names AppEvent, SysEvent, and SecEvent are reserved for system use. +-or- +The log name matches an existing event source name. +-or- +The source name specified in results in a registry key path longer than 254 characters. +-or- +The first 8 characters of the log name specified in are not unique. +-or- +The source name specified in is already registered. +-or- +The source name specified in matches an existing event log name. + The registry key for the event log could not be opened. + + is . + + + Establishes the specified source name as a valid event source for writing entries to a log on the local computer. This method can also create a new custom log on the local computer. + The source name by which the application is registered on the local computer. + The name of the log the source's entries are written to. Possible values include Application, System, or a custom event log. + + is an empty string ("") or . +-or- + is not a valid event log name. Event log names must consist of printable characters, and cannot include the characters '*', '?', or '\'. +-or- + is not valid for user log creation. The event log names AppEvent, SysEvent, and SecEvent are reserved for system use. +-or- +The log name matches an existing event source name. +-or- +The source name results in a registry key path longer than 254 characters. +-or- +The first 8 characters of match the first 8 characters of an existing event log name. +-or- +The source cannot be registered because it already exists on the local computer. +-or- +The source name matches an existing event log name. + The registry key for the event log could not be opened on the local computer. + + + Establishes the specified source name as a valid event source for writing entries to a log on the specified computer. This method can also be used to create a new custom log on the specified computer. + The source by which the application is registered on the specified computer. + The name of the log the source's entries are written to. Possible values include Application, System, or a custom event log. If you do not specify a value, defaults to Application. + The name of the computer to register this event source with, or "." for the local computer. + The is not a valid computer name. +-or- + is an empty string ("") or . +-or- + is not a valid event log name. Event log names must consist of printable characters, and cannot include the characters '*', '?', or '\'. +-or- + is not valid for user log creation. The event log names AppEvent, SysEvent, and SecEvent are reserved for system use. +-or- +The log name matches an existing event source name. +-or- +The source name results in a registry key path longer than 254 characters. +-or- +The first 8 characters of match the first 8 characters of an existing event log name on the specified computer. +-or- +The source cannot be registered because it already exists on the specified computer. +-or- +The source name matches an existing event source name. + The registry key for the event log could not be opened on the specified computer. + + + Removes an event log from the local computer. + The name of the log to delete. Possible values include: Application, Security, System, and any custom event logs on the computer. + + is an empty string ("") or . + The registry key for the event log could not be opened on the local computer. +-or- +The log does not exist on the local computer. + The event log was not cleared successfully. +-or- +The log cannot be opened. A Windows error code is not available. + + + Removes an event log from the specified computer. + The name of the log to delete. Possible values include: Application, Security, System, and any custom event logs on the specified computer. + The name of the computer to delete the log from, or "." for the local computer. + + is an empty string ("") or . +-or- + is not a valid computer name. + The registry key for the event log could not be opened on the specified computer. +-or- +The log does not exist on the specified computer. + The event log was not cleared successfully. +-or- +The log cannot be opened. A Windows error code is not available. + + + Removes the event source registration from the event log of the local computer. + The name by which the application is registered in the event log system. + The parameter does not exist in the registry of the local computer. +-or- +You do not have write access on the registry key for the event log. + + + Removes the application's event source registration from the specified computer. + The name by which the application is registered in the event log system. + The name of the computer to remove the registration from, or "." for the local computer. + The parameter is invalid. +-or- +The parameter does not exist in the registry of the specified computer. +-or- +You do not have write access on the registry key for the event log. + + cannot be deleted because in the registry, the parent registry key for does not contain a subkey with the same name. + + + Releases the unmanaged resources used by the , and optionally releases the managed resources. + + to release both managed and unmanaged resources; to release only unmanaged resources. + + + Gets or sets a value indicating whether the receives event notifications. + + if the receives notification when an entry is written to the log; otherwise, . + The event log is on a remote computer. + + + Ends the initialization of an used on a form or by another component. The initialization occurs at runtime. + + + Gets the contents of the event log. + An holding the entries in the event log. Each entry is associated with an instance of the class. + + + Occurs when an entry is written to an event log on the local computer. + + + Determines whether the log exists on the local computer. + The name of the log to search for. Possible values include: Application, Security, System, other application-specific logs (such as those associated with Active Directory), or any custom log on the computer. + + if the log exists on the local computer; otherwise, . + The logName is or the value is empty. + + + Determines whether the log exists on the specified computer. + The log for which to search. Possible values include: Application, Security, System, other application-specific logs (such as those associated with Active Directory), or any custom log on the computer. + The name of the computer on which to search for the log, or "." for the local computer. + + if the log exists on the specified computer; otherwise, . + The parameter is an invalid format. Make sure you have used proper syntax for the computer on which you are searching. +-or- +The is or the value is empty. + + + Searches for all event logs on the local computer and creates an array of objects that contain the list. + An array of type that represents the logs on the local computer. + You do not have read access to the registry. +-or- +There is no event log service on the computer. + + + Searches for all event logs on the given computer and creates an array of objects that contain the list. + The computer on which to search for event logs. + An array of type that represents the logs on the given computer. + The parameter is an invalid computer name. + You do not have read access to the registry. +-or- +There is no event log service on the computer. + + + Gets or sets the name of the log to read from or write to. + The name of the log. This can be Application, System, Security, or a custom log name. The default is an empty string (""). + + + Gets the event log's friendly name. + A name that represents the event log in the system's event viewer. + The specified does not exist in the registry for this computer. + + + Gets the name of the log to which the specified source is registered. + The name of the event source. + The name of the computer on which to look, or "." for the local computer. + The name of the log associated with the specified source in the registry. + + + Gets or sets the name of the computer on which to read or write events. + The name of the server on which the event log resides. The default is the local computer ("."). + The computer name is invalid. + + + Gets or sets the maximum event log size in kilobytes. + The maximum event log size in kilobytes. The default is 512, indicating a maximum file size of 512 kilobytes. + The specified value is less than 64, or greater than 4194240, or not an even multiple of 64. + The value is not a valid log name. +-or- +The registry key for the event log could not be opened on the target computer. + + + Gets the number of days to retain entries in the event log. + The number of days that entries in the event log are retained. The default value is 7. + + + Changes the configured behavior for writing new entries when the event log reaches its maximum file size. + The overflow behavior for writing new entries to the event log. + The minimum number of days each event log entry is retained. This parameter is used only if is set to . + + is not a valid value. + + is less than one, or larger than 365. + The value is not a valid log name. +-or- +The registry key for the event log could not be opened on the target computer. + + + Gets the configured behavior for storing new entries when the event log reaches its maximum log file size. + The value that specifies the configured behavior for storing new entries when the event log reaches its maximum log size. The default is . + + + Specifies the localized name of the event log, which is displayed in the server Event Viewer. + The fully specified path to a localized resource file. + The resource identifier that indexes a localized string within the resource file. + The value is not a valid log name. +-or- +The registry key for the event log could not be opened on the target computer. + + is . + + + Gets or sets the source name to register and use when writing to the event log. + The name registered with the event log as a source of entries. The default is an empty string (""). + The source name results in a registry key path longer than 254 characters. + + + Determines whether an event source is registered on the local computer. + The name of the event source. + + if the event source is registered on the local computer; otherwise, . + + was not found, but some or all of the event logs could not be searched. + + + Determines whether an event source is registered on a specified computer. + The name of the event source. + The name the computer on which to look, or "." for the local computer. + + if the event source is registered on the given computer; otherwise, . + + is an invalid computer name. + + was not found, but some or all of the event logs could not be searched. + + + Gets or sets the object used to marshal the event handler calls issued as a result of an entry written event. + The used to marshal event-handler calls issued as a result of an event on the event log. + + + Writes an information type entry, with the given message text, to the event log. + The string to write to the event log. + The property of the has not been set. +-or- +The method attempted to register a new event source, but the computer name in is not valid. +-or- +The source is already registered for a different event log. +-or- +The message string is longer than 31,839 bytes (32,766 bytes on Windows operating systems before Windows Vista). +-or- +The source name results in a registry key path longer than 254 characters. + The registry key for the event log could not be opened. + The operating system reported an error when writing the event entry to the event log. A Windows error code is not available. + + + Writes an error, warning, information, success audit, or failure audit entry with the given message text to the event log. + The string to write to the event log. + One of the values. + The property of the has not been set. +-or- +The method attempted to register a new event source, but the computer name in is not valid. +-or- +The source is already registered for a different event log. +-or- +The message string is longer than 31,839 bytes (32,766 bytes on Windows operating systems before Windows Vista). +-or- +The source name results in a registry key path longer than 254 characters. + + is not a valid . + The registry key for the event log could not be opened. + The operating system reported an error when writing the event entry to the event log. A Windows error code is not available. + + + Writes an entry with the given message text and application-defined event identifier to the event log. + The string to write to the event log. + One of the values. + The application-specific identifier for the event. + The property of the has not been set. +-or- +The method attempted to register a new event source, but the computer name in is not valid. +-or- +The source is already registered for a different event log. +-or- + is less than zero or greater than . +-or- +The message string is longer than 31,839 bytes (32,766 bytes on Windows operating systems before Windows Vista). +-or- +The source name results in a registry key path longer than 254 characters. + The registry key for the event log could not be opened. + + is not a valid . + The operating system reported an error when writing the event entry to the event log. A Windows error code is not available. + + + Writes an entry with the given message text, application-defined event identifier, and application-defined category to the event log. + The string to write to the event log. + One of the values. + The application-specific identifier for the event. + The application-specific subcategory associated with the message. + The property of the has not been set. +-or- +The method attempted to register a new event source, but the computer name in is not valid. +-or- +The source is already registered for a different event log. +-or- + is less than zero or greater than . +-or- +The message string is longer than 31,839 bytes (32,766 bytes on Windows operating systems before Windows Vista). +-or- +The source name results in a registry key path longer than 254 characters. + The registry key for the event log could not be opened. + + is not a valid . + The operating system reported an error when writing the event entry to the event log. A Windows error code is not available. + + + Writes an entry with the given message text, application-defined event identifier, and application-defined category to the event log, and appends binary data to the message. + The string to write to the event log. + One of the values. + The application-specific identifier for the event. + The application-specific subcategory associated with the message. + An array of bytes that holds the binary data associated with the entry. + The property of the has not been set. +-or- +The method attempted to register a new event source, but the computer name in is not valid. +-or- +The source is already registered for a different event log. +-or- + is less than zero or greater than . +-or- +The message string is longer than 31,839 bytes (32,766 bytes on Windows operating systems before Windows Vista). +-or- +The source name results in a registry key path longer than 254 characters. + The registry key for the event log could not be opened. + + is not a valid . + The operating system reported an error when writing the event entry to the event log. A Windows error code is not available. + + + Writes an information type entry with the given message text to the event log, using the specified registered event source. + The source by which the application is registered on the specified computer. + The string to write to the event log. + The value is an empty string (""). +-or- +The value is . +-or- +The message string is longer than 31,839 bytes (32,766 bytes on Windows operating systems before Windows Vista). +-or- +The source name results in a registry key path longer than 254 characters. + The registry key for the event log could not be opened. + The operating system reported an error when writing the event entry to the event log. A Windows error code is not available. + + + Writes an error, warning, information, success audit, or failure audit entry with the given message text to the event log, using the specified registered event source. + The source by which the application is registered on the specified computer. + The string to write to the event log. + One of the values. + The value is an empty string (""). +-or- +The value is . +-or- +The message string is longer than 31,839 bytes (32,766 bytes on Windows operating systems before Windows Vista). +-or- +The source name results in a registry key path longer than 254 characters. + The registry key for the event log could not be opened. + + is not a valid . + The operating system reported an error when writing the event entry to the event log. A Windows error code is not available. + + + Writes an entry with the given message text and application-defined event identifier to the event log, using the specified registered event source. + The source by which the application is registered on the specified computer. + The string to write to the event log. + One of the values. + The application-specific identifier for the event. + The value is an empty string (""). +-or- +The value is . +-or- + is less than zero or greater than . +-or- +The message string is longer than 31,839 bytes (32,766 bytes on Windows operating systems before Windows Vista). +-or- +The source name results in a registry key path longer than 254 characters. + The registry key for the event log could not be opened. + + is not a valid . + The operating system reported an error when writing the event entry to the event log. A Windows error code is not available. + + + Writes an entry with the given message text, application-defined event identifier, and application-defined category to the event log, using the specified registered event source. The can be used by the Event Viewer to filter events in the log. + The source by which the application is registered on the specified computer. + The string to write to the event log. + One of the values. + The application-specific identifier for the event. + The application-specific subcategory associated with the message. + The value is an empty string (""). +-or- +The value is . +-or- + is less than zero or greater than . +-or- +The message string is longer than 31,839 bytes (32,766 bytes on Windows operating systems before Windows Vista). +-or- +The source name results in a registry key path longer than 254 characters. + The registry key for the event log could not be opened. + + is not a valid . + The operating system reported an error when writing the event entry to the event log. A Windows error code is not available. + + + Writes an entry with the given message text, application-defined event identifier, and application-defined category to the event log (using the specified registered event source) and appends binary data to the message. + The source by which the application is registered on the specified computer. + The string to write to the event log. + One of the values. + The application-specific identifier for the event. + The application-specific subcategory associated with the message. + An array of bytes that holds the binary data associated with the entry. + The value is an empty string (""). +-or- +The value is . +-or- + is less than zero or greater than . +-or- +The message string is longer than 31,839 bytes (32,766 bytes on Windows operating systems before Windows Vista). +-or- +The source name results in a registry key path longer than 254 characters. + + is not a valid . + The registry key for the event log could not be opened. + The operating system reported an error when writing the event entry to the event log. A Windows error code is not available. + + + Writes an event log entry with the given event data, message replacement strings, and associated binary data. + An instance that represents a localized event log entry. + An array of bytes that holds the binary data associated with the entry. + An array of strings to merge into the message text of the event log entry. + The property of the has not been set. +-or- +The method attempted to register a new event source, but the computer name in is not valid. +-or- +The source is already registered for a different event log. +-or- + is less than zero or greater than . +-or- + has more than 256 elements. +-or- +One of the elements is longer than 32766 bytes. +-or- +The source name results in a registry key path longer than 254 characters. + + is . + The registry key for the event log could not be opened. + The operating system reported an error when writing the event entry to the event log. A Windows error code is not available. + + + Writes a localized entry to the event log. + An instance that represents a localized event log entry. + An array of strings to merge into the message text of the event log entry. + The property of the has not been set. +-or- +The method attempted to register a new event source, but the computer name in is not valid. +-or- +The source is already registered for a different event log. +-or- + is less than zero or greater than . +-or- + has more than 256 elements. +-or- +One of the elements is longer than 32766 bytes. +-or- +The source name results in a registry key path longer than 254 characters. + + is . + The registry key for the event log could not be opened. + The operating system reported an error when writing the event entry to the event log. A Windows error code is not available. + + + Writes an event log entry with the given event data, message replacement strings, and associated binary data, and using the specified registered event source. + The name of the event source registered for the application on the specified computer. + An instance that represents a localized event log entry. + An array of bytes that holds the binary data associated with the entry. + An array of strings to merge into the message text of the event log entry. + The value is an empty string (""). +-or- +The value is . +-or- + is less than zero or greater than . +-or- + has more than 256 elements. +-or- +One of the elements is longer than 32766 bytes. +-or- +The source name results in a registry key path longer than 254 characters. + + is . + The registry key for the event log could not be opened. + The operating system reported an error when writing the event entry to the event log. A Windows error code is not available. + + + Writes an event log entry with the given event data and message replacement strings, using the specified registered event source. + The name of the event source registered for the application on the specified computer. + An instance that represents a localized event log entry. + An array of strings to merge into the message text of the event log entry. + The value is an empty string (""). +-or- +The value is . +-or- + is less than zero or greater than . +-or- + has more than 256 elements. +-or- +One of the elements is longer than 32766 bytes. +-or- +The source name results in a registry key path longer than 254 characters. + + is . + The registry key for the event log could not be opened. + The operating system reported an error when writing the event entry to the event log. A Windows error code is not available. + + + Encapsulates a single record in the event log. This class cannot be inherited. + + + Gets the text associated with the property for this entry. + The application-specific category text. + The space could not be allocated for one of the insertion strings associated with the category. + + + Gets the category number of the event log entry. + The application-specific category number for this entry. + + + Gets the binary data associated with the entry. + An array of bytes that holds the binary data associated with the entry. + + + Gets the event type of this entry. + The event type that is associated with the entry in the event log. + + + Performs a comparison between two event log entries. + The to compare. + + if the objects are identical; otherwise, . + + + Gets the application-specific event identifier for the current event entry. + The application-specific identifier for the event message. + + + Gets the index of this entry in the event log. + The index of this entry in the event log. + + + Gets the resource identifier that designates the message text of the event entry. + A resource identifier that corresponds to a string definition in the message resource file of the event source. + + + Gets the name of the computer on which this entry was generated. + The name of the computer that contains the event log. + + + Gets the localized message associated with this event entry. + The formatted, localized text for the message. This includes associated replacement strings. + The space could not be allocated for one of the insertion strings associated with the message. + + + Gets the replacement strings associated with the event log entry. + An array that holds the replacement strings stored in the event entry. + + + Gets the name of the application that generated this event. + The name registered with the event log as the source of this event. + + + Populates a with the data needed to serialize the target object. + The to populate with data. + The destination (see ) for this serialization. + + + Gets the local time at which this event was generated. + The local time at which this event was generated. + + + Gets the local time at which this event was written to the log. + The local time at which this event was written to the log. + + + Gets the name of the user who is responsible for this event. + The security identifier (SID) that uniquely identifies a user or group. + Account information could not be obtained for the user's SID. + + + Defines size and enumerators for a collection of instances. + + + Copies the elements of the to an array of instances, starting at a particular array index. + The one-dimensional array of instances that is the destination of the elements copied from the collection. The array must have zero-based indexing. + The zero-based index in the array at which copying begins. + + + Gets the number of entries in the event log (that is, the number of elements in the collection). + The number of entries currently in the event log. + + + Supports a simple iteration over the object. + An object that can be used to iterate over the collection. + + + Gets an entry in the event log, based on an index that starts at 0 (zero). + The zero-based index that is associated with the event log entry. + The event log entry at the location that is specified by the parameter. + + + Copies the elements of the collection to an , starting at a particular index. + The one-dimensional that is the destination of the elements that are copied from the collection. The must have zero-based indexing. + The zero-based index in at which copying begins. + + + Gets a value that indicates whether access to the is synchronized (thread-safe). + + if access to the collection is not synchronized (thread-safe). + + + Gets an object that can be used to synchronize access to the object. + An object that can be used to synchronize access to the collection. + + + Specifies the event type of an event log entry. + + + An error event. This indicates a significant problem the user should know about; usually a loss of functionality or data. + + + A failure audit event. This indicates a security event that occurs when an audited access attempt fails; for example, a failed attempt to open a file. + + + An information event. This indicates a significant, successful operation. + + + A success audit event. This indicates a security event that occurs when an audited access attempt is successful; for example, logging on successfully. + + + A warning event. This indicates a problem that is not immediately significant, but that may signify conditions that could cause future problems. + + + Provides a simple listener that directs tracing or debugging output to an . + + + Initializes a new instance of the class without a trace listener. + + + Initializes a new instance of the class using the specified event log. + The event log to write to. + + + Initializes a new instance of the class using the specified source. + The name of an existing event log source. + + + Closes the event log so that it no longer receives tracing or debugging output. + + + Gets or sets the event log to write to. + The event log to write to. + + + Gets or sets the name of this . + The name of this trace listener. + + + Writes trace information, a data object, and event information to the event log. + An object that contains the current process ID, thread ID, and stack trace information. + A name used to identify the output; typically the name of the application that generated the trace event. + One of the enumeration values that specifies the type of event that has caused the trace. + A numeric identifier for the event. The combination of and uniquely identifies an event. + A data object to write to the output file or stream. + + is not specified. +-or- +The log entry string exceeds 32,766 characters. + + + Writes trace information, an array of data objects, and event information to the event log. + An object that contains the current process ID, thread ID, and stack trace information. + A name used to identify the output; typically the name of the application that generated the trace event. + One of the enumeration values that specifies the type of event that has caused the trace. + A numeric identifier for the event. The combination of and uniquely identifies an event. + An array of data objects. + + is not specified. +-or- +The log entry string exceeds 32,766 characters. + + + Writes trace information, a message, and event information to the event log. + An object that contains the current process ID, thread ID, and stack trace information. + A name used to identify the output; typically the name of the application that generated the trace event. + One of the enumeration values that specifies the type of event that has caused the trace. + A numeric identifier for the event. The combination of and uniquely identifies an event. + The trace message. + + is not specified. +-or- +The log entry string exceeds 32,766 characters. + + + Writes trace information, a formatted array of objects, and event information to the event log. + An object that contains the current process ID, thread ID, and stack trace information. + A name used to identify the output; typically the name of the application that generated the trace event. + One of the enumeration values that specifies the type of event that has caused the trace. + A numeric identifier for the event. The combination of and uniquely identifies an event. + A format string that contains zero or more format items that correspond to objects in the array. + An array containing zero or more objects to format. + + is not specified. +-or- +The log entry string exceeds 32,766 characters. + + + Writes a message to the event log for this instance. + The message to write. + + exceeds 32,766 characters. + + + Writes a message to the event log for this instance. + The message to write. + + exceeds 32,766 characters. + + + Represents the configuration settings used to create an event log source on the local computer or a remote computer. + + + Initializes a new instance of the class with a specified event source and event log name. + The name to register with the event log as a source of entries. + The name of the log to which entries from the source are written. + + + Gets or sets the number of categories in the category resource file. + The number of categories in the category resource file. The default value is zero. + The property is set to a negative value or to a value larger than . + + + Gets or sets the path of the resource file that contains category strings for the source. + The path of the category resource file. The default is an empty string (""). + + + Gets or sets the name of the event log to which the source writes entries. + The name of the event log. This can be Application, System, or a custom log name. The default value is "Application." + + + Gets or sets the name of the computer on which to register the event source. + The name of the system on which to register the event source. The default is the local computer ("."). + The computer name is invalid. + + + Gets or sets the path of the message resource file that contains message formatting strings for the source. + The path of the message resource file. The default is an empty string (""). + + + Gets or sets the path of the resource file that contains message parameter strings for the source. + The path of the parameter resource file. The default is an empty string (""). + + + Gets or sets the name to register with the event log as an event source. + The name to register with the event log as a source of entries. The default is an empty string (""). + + + Specifies how to handle entries in an event log that has reached its maximum file size. + + + Indicates that existing entries are retained when the event log is full and new entries are discarded. + + + Indicates that each new entry overwrites the oldest entry when the event log is full. + + + Indicates that new events overwrite events older than specified by the property value when the event log is full. New events are discarded if the event log is full and there are no events older than specified by the property value. + + + \ No newline at end of file diff --git a/Assets/Plugins/NuGet/System.Diagnostics.EventLog.4.7.0/lib/netstandard2.0/System.Diagnostics.EventLog.xml.meta b/Assets/Plugins/NuGet/System.Diagnostics.EventLog.4.7.0/lib/netstandard2.0/System.Diagnostics.EventLog.xml.meta new file mode 100644 index 0000000..c550846 --- /dev/null +++ b/Assets/Plugins/NuGet/System.Diagnostics.EventLog.4.7.0/lib/netstandard2.0/System.Diagnostics.EventLog.xml.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 2c8dcc31d7549b34eb7160eee03c2519 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Plugins/NuGet/System.Diagnostics.EventLog.4.7.0/useSharedDesignerContext.txt b/Assets/Plugins/NuGet/System.Diagnostics.EventLog.4.7.0/useSharedDesignerContext.txt new file mode 100644 index 0000000..e69de29 diff --git a/Assets/Plugins/NuGet/System.Diagnostics.EventLog.4.7.0/useSharedDesignerContext.txt.meta b/Assets/Plugins/NuGet/System.Diagnostics.EventLog.4.7.0/useSharedDesignerContext.txt.meta new file mode 100644 index 0000000..d9ba32c --- /dev/null +++ b/Assets/Plugins/NuGet/System.Diagnostics.EventLog.4.7.0/useSharedDesignerContext.txt.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 545770a386ad5004da872a1356c88ebe +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Plugins/NuGet/System.Diagnostics.EventLog.4.7.0/version.txt b/Assets/Plugins/NuGet/System.Diagnostics.EventLog.4.7.0/version.txt new file mode 100644 index 0000000..f5d54e7 --- /dev/null +++ b/Assets/Plugins/NuGet/System.Diagnostics.EventLog.4.7.0/version.txt @@ -0,0 +1 @@ +0f7f38c4fd323b26da10cce95f857f77f0f09b48 diff --git a/Assets/Plugins/NuGet/System.Diagnostics.EventLog.4.7.0/version.txt.meta b/Assets/Plugins/NuGet/System.Diagnostics.EventLog.4.7.0/version.txt.meta new file mode 100644 index 0000000..2a65398 --- /dev/null +++ b/Assets/Plugins/NuGet/System.Diagnostics.EventLog.4.7.0/version.txt.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 8493b2b23d51035458b0aa305981a620 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Plugins/NuGet/System.Security.Principal.Windows.4.7.0.meta b/Assets/Plugins/NuGet/System.Security.Principal.Windows.4.7.0.meta new file mode 100644 index 0000000..7dfefe8 --- /dev/null +++ b/Assets/Plugins/NuGet/System.Security.Principal.Windows.4.7.0.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 1097d71fe8e69d14593733309675fcd0 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Plugins/NuGet/System.Security.Principal.Windows.4.7.0/.signature.p7s b/Assets/Plugins/NuGet/System.Security.Principal.Windows.4.7.0/.signature.p7s new file mode 100644 index 0000000000000000000000000000000000000000..aed0689f44328c3f73caf9df6b1fa9386f899eab GIT binary patch literal 18702 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 literal 0 HcmV?d00001 diff --git a/Assets/Plugins/NuGet/System.Security.Principal.Windows.4.7.0/LICENSE.TXT b/Assets/Plugins/NuGet/System.Security.Principal.Windows.4.7.0/LICENSE.TXT new file mode 100644 index 0000000..984713a --- /dev/null +++ b/Assets/Plugins/NuGet/System.Security.Principal.Windows.4.7.0/LICENSE.TXT @@ -0,0 +1,23 @@ +The MIT License (MIT) + +Copyright (c) .NET Foundation and Contributors + +All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/Assets/Plugins/NuGet/System.Security.Principal.Windows.4.7.0/LICENSE.TXT.meta b/Assets/Plugins/NuGet/System.Security.Principal.Windows.4.7.0/LICENSE.TXT.meta new file mode 100644 index 0000000..42afd4e --- /dev/null +++ b/Assets/Plugins/NuGet/System.Security.Principal.Windows.4.7.0/LICENSE.TXT.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 2c6ec8f453118224ca7a5be2d03d8b6f +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Plugins/NuGet/System.Security.Principal.Windows.4.7.0/System.Security.Principal.Windows.nuspec b/Assets/Plugins/NuGet/System.Security.Principal.Windows.4.7.0/System.Security.Principal.Windows.nuspec new file mode 100644 index 0000000..fe9db1e --- /dev/null +++ b/Assets/Plugins/NuGet/System.Security.Principal.Windows.4.7.0/System.Security.Principal.Windows.nuspec @@ -0,0 +1,66 @@ + + + + System.Security.Principal.Windows + 4.7.0 + System.Security.Principal.Windows + Microsoft + microsoft,dotnetframework + false + MIT + https://licenses.nuget.org/MIT + https://github.com/dotnet/corefx + http://go.microsoft.com/fwlink/?LinkID=288859 + Provides classes for retrieving the current Windows user and for interacting with Windows users and groups. + +Commonly Used Types: +System.Security.Principal.WindowsIdentity +System.Security.Principal.SecurityIdentifier +System.Security.Principal.NTAccount +System.Security.Principal.WindowsPrincipal +System.Security.Principal.IdentityReference +System.Security.Principal.IdentityNotMappedException +System.Security.Principal.WindowsBuiltInRole +System.Security.Principal.WellKnownSidType + +When using NuGet 3.x this package requires at least version 3.4. + https://go.microsoft.com/fwlink/?LinkID=799421 + © Microsoft Corporation. All rights reserved. + true + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Assets/Plugins/NuGet/System.Security.Principal.Windows.4.7.0/System.Security.Principal.Windows.nuspec.meta b/Assets/Plugins/NuGet/System.Security.Principal.Windows.4.7.0/System.Security.Principal.Windows.nuspec.meta new file mode 100644 index 0000000..ba6606d --- /dev/null +++ b/Assets/Plugins/NuGet/System.Security.Principal.Windows.4.7.0/System.Security.Principal.Windows.nuspec.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: ef7f8d31c2949024cb789c745519bf92 +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Plugins/NuGet/System.Security.Principal.Windows.4.7.0/THIRD-PARTY-NOTICES.TXT b/Assets/Plugins/NuGet/System.Security.Principal.Windows.4.7.0/THIRD-PARTY-NOTICES.TXT new file mode 100644 index 0000000..77a243e --- /dev/null +++ b/Assets/Plugins/NuGet/System.Security.Principal.Windows.4.7.0/THIRD-PARTY-NOTICES.TXT @@ -0,0 +1,375 @@ +.NET Core uses third-party libraries or other resources that may be +distributed under licenses different than the .NET Core software. + +In the event that we accidentally failed to list a required notice, please +bring it to our attention. Post an issue or email us: + + dotnet@microsoft.com + +The attached notices are provided for information only. + +License notice for ASP.NET +------------------------------- + +Copyright (c) .NET Foundation. All rights reserved. +Licensed under the Apache License, Version 2.0. + +Available at +https://github.com/aspnet/AspNetCore/blob/master/LICENSE.txt + +License notice for Slicing-by-8 +------------------------------- + +http://sourceforge.net/projects/slicing-by-8/ + +Copyright (c) 2004-2006 Intel Corporation - All Rights Reserved + + +This software program is licensed subject to the BSD License, available at +http://www.opensource.org/licenses/bsd-license.html. + + +License notice for Unicode data +------------------------------- + +http://www.unicode.org/copyright.html#License + +Copyright © 1991-2017 Unicode, Inc. All rights reserved. +Distributed under the Terms of Use in http://www.unicode.org/copyright.html. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF +ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE +WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. + +License notice for Zlib +----------------------- + +https://github.com/madler/zlib +http://zlib.net/zlib_license.html + +/* zlib.h -- interface of the 'zlib' general purpose compression library + version 1.2.11, January 15th, 2017 + + Copyright (C) 1995-2017 Jean-loup Gailly and Mark Adler + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. + + Jean-loup Gailly Mark Adler + jloup@gzip.org madler@alumni.caltech.edu + +*/ + +License notice for Mono +------------------------------- + +http://www.mono-project.com/docs/about-mono/ + +Copyright (c) .NET Foundation Contributors + +MIT License + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the Software), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +License notice for International Organization for Standardization +----------------------------------------------------------------- + +Portions (C) International Organization for Standardization 1986: + Permission to copy in any form is granted for use with + conforming SGML systems and applications as defined in + ISO 8879, provided this notice is included in all copies. + +License notice for Intel +------------------------ + +"Copyright (c) 2004-2006 Intel Corporation - All Rights Reserved + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this +list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, +this list of conditions and the following disclaimer in the documentation +and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for Xamarin and Novell +------------------------------------- + +Copyright (c) 2015 Xamarin, Inc (http://www.xamarin.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + +Copyright (c) 2011 Novell, Inc (http://www.novell.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + +Third party notice for W3C +-------------------------- + +"W3C SOFTWARE AND DOCUMENT NOTICE AND LICENSE +Status: This license takes effect 13 May, 2015. +This work is being provided by the copyright holders under the following license. +License +By obtaining and/or copying this work, you (the licensee) agree that you have read, understood, and will comply with the following terms and conditions. +Permission to copy, modify, and distribute this work, with or without modification, for any purpose and without fee or royalty is hereby granted, provided that you include the following on ALL copies of the work or portions thereof, including modifications: +The full text of this NOTICE in a location viewable to users of the redistributed or derivative work. +Any pre-existing intellectual property disclaimers, notices, or terms and conditions. If none exist, the W3C Software and Document Short Notice should be included. +Notice of any changes or modifications, through a copyright statement on the new code or document such as "This software or document includes material copied from or derived from [title and URI of the W3C document]. Copyright © [YEAR] W3C® (MIT, ERCIM, Keio, Beihang)." +Disclaimers +THIS WORK IS PROVIDED "AS IS," AND COPYRIGHT HOLDERS MAKE NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO, WARRANTIES OF MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF THE SOFTWARE OR DOCUMENT WILL NOT INFRINGE ANY THIRD PARTY PATENTS, COPYRIGHTS, TRADEMARKS OR OTHER RIGHTS. +COPYRIGHT HOLDERS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF ANY USE OF THE SOFTWARE OR DOCUMENT. +The name and trademarks of copyright holders may NOT be used in advertising or publicity pertaining to the work without specific, written prior permission. Title to copyright in this work will at all times remain with copyright holders." + +License notice for Bit Twiddling Hacks +-------------------------------------- + +Bit Twiddling Hacks + +By Sean Eron Anderson +seander@cs.stanford.edu + +Individually, the code snippets here are in the public domain (unless otherwise +noted) — feel free to use them however you please. The aggregate collection and +descriptions are © 1997-2005 Sean Eron Anderson. The code and descriptions are +distributed in the hope that they will be useful, but WITHOUT ANY WARRANTY and +without even the implied warranty of merchantability or fitness for a particular +purpose. + +License notice for Brotli +-------------------------------------- + +Copyright (c) 2009, 2010, 2013-2016 by the Brotli Authors. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + +compress_fragment.c: +Copyright (c) 2011, Google Inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +""AS IS"" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +decode_fuzzer.c: +Copyright (c) 2015 The Chromium Authors. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +""AS IS"" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." + +License notice for Json.NET +------------------------------- + +https://github.com/JamesNK/Newtonsoft.Json/blob/master/LICENSE.md + +The MIT License (MIT) + +Copyright (c) 2007 James Newton-King + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS +FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR +COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER +IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +License notice for vectorized base64 encoding / decoding +-------------------------------------------------------- + +Copyright (c) 2005-2007, Nick Galbreath +Copyright (c) 2013-2017, Alfred Klomp +Copyright (c) 2015-2017, Wojciech Mula +Copyright (c) 2016-2017, Matthieu Darbois +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + +- Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + +- Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS +IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A +PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED +TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR +PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF +LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/Assets/Plugins/NuGet/System.Security.Principal.Windows.4.7.0/THIRD-PARTY-NOTICES.TXT.meta b/Assets/Plugins/NuGet/System.Security.Principal.Windows.4.7.0/THIRD-PARTY-NOTICES.TXT.meta new file mode 100644 index 0000000..603ea51 --- /dev/null +++ b/Assets/Plugins/NuGet/System.Security.Principal.Windows.4.7.0/THIRD-PARTY-NOTICES.TXT.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: fb0c9e18287cf394587e7d7133c52964 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Plugins/NuGet/System.Security.Principal.Windows.4.7.0/lib.meta b/Assets/Plugins/NuGet/System.Security.Principal.Windows.4.7.0/lib.meta new file mode 100644 index 0000000..387e9bb --- /dev/null +++ b/Assets/Plugins/NuGet/System.Security.Principal.Windows.4.7.0/lib.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 1e519836fc4c90441af30d4531dccc1e +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Plugins/NuGet/System.Security.Principal.Windows.4.7.0/lib/netstandard2.0.meta b/Assets/Plugins/NuGet/System.Security.Principal.Windows.4.7.0/lib/netstandard2.0.meta new file mode 100644 index 0000000..6fc03bc --- /dev/null +++ b/Assets/Plugins/NuGet/System.Security.Principal.Windows.4.7.0/lib/netstandard2.0.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 9fb4ccf70ab11a646bc1de97250f16f7 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Plugins/NuGet/System.Security.Principal.Windows.4.7.0/lib/netstandard2.0/System.Security.Principal.Windows.dll b/Assets/Plugins/NuGet/System.Security.Principal.Windows.4.7.0/lib/netstandard2.0/System.Security.Principal.Windows.dll new file mode 100644 index 0000000000000000000000000000000000000000..19d0fc0e971c88b096fe29a3e318110d83a2a283 GIT binary patch literal 33656 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 + + + System.Security.Principal.Windows + + + + Provides a safe handle to a Windows thread or process access token. For more information, see Access Tokens. + + + Initializes a new instance of the class. + An object that represents the pre-existing handle to use. Using returns an invalid handle. + + + Returns an invalid handle by instantiating a object with . + Returns a object. + + + Gets a value that indicates whether the handle is invalid. + + if the handle is not valid; otherwise, . + + + Represents an exception for a principal whose identity could not be mapped to a known identity. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class by using the specified error message. + The error message that explains the reason for the exception. + + + Initializes a new instance of the class by using the specified error message and inner exception. + The error message that explains the reason for the exception. + The exception that is the cause of the current exception. If is not null, the current exception is raised in a block that handles the inner exception. + + + Gets serialization information with the data needed to create an instance of this object. + The object that holds the serialized object data about the exception being thrown. + The object that contains contextual information about the source or destination. + + + Represents the collection of unmapped identities for an exception. + The collection of unmapped identities. + + + Represents an identity and is the base class for the and classes. This class does not provide a public constructor, and therefore cannot be inherited. + + + Returns a value that indicates whether the specified object equals this instance of the class. + An object to compare with this instance, or a null reference. + + if is an object with the same underlying type and value as this instance; otherwise, . + + + Serves as a hash function for . is suitable for use in hashing algorithms and data structures like a hash table. + The hash code for this object. + + + Returns a value that indicates whether the specified type is a valid translation type for the class. + The type being queried for validity to serve as a conversion from . The following target types are valid: + + + if is a valid translation type for the class; otherwise, . + + + Compares two objects to determine whether they are equal. They are considered equal if they have the same canonical name representation as the one returned by the property or if they are both . + The left operand to use for the equality comparison. This parameter can be . + The right operand to use for the equality comparison. This parameter can be . + + if and are equal; otherwise, . + + + Compares two objects to determine whether they are not equal. They are considered not equal if they have different canonical name representations than the one returned by the property or if one of the objects is and the other is not. + The left operand to use for the inequality comparison. This parameter can be . + The right operand to use for the inequality comparison. This parameter can be . + + if and are not equal; otherwise, . + + + Returns the string representation of the identity represented by the object. + The identity in string format. + + + Translates the account name represented by the object into another -derived type. + The target type for the conversion from . + The converted identity. + + + Gets the string value of the identity represented by the object. + The string value of the identity represented by the object. + + + Represents a collection of objects and provides a means of converting sets of -derived objects to -derived types. + + + Initializes a new instance of the class with zero items in the collection. + + + Initializes a new instance of the class by using the specified initial size. + The initial number of items in the collection. The value of is a hint only; it is not necessarily the maximum number of items created. + + + Adds an object to the collection. + The object to add to the collection. + + is . + + + Clears all objects from the collection. + + + Indicates whether the collection contains the specified object. + The object to check for. + + if the collection contains the specified object. + + is . + + + Copies the collection to an array, starting at the specified index. + An array object to which the collection is to be copied. + The zero-based index in where the collection is to be copied. + + + Gets the number of items in the collection. + The number of objects in the collection. + + + Gets an enumerator that can be used to iterate through the collection. + An enumerator for the collection. + + + Sets or gets the node at the specified index of the collection. + The zero-based index in the collection. + The at the specified index in the collection. If is greater than or equal to the number of nodes in the collection, the return value is . + + + Removes the specified object from the collection. + The object to remove. + + if the specified object was removed from the collection. + + is . + + + + Gets an enumerator that can be used to iterate through the collection. + An enumerator for the collection. + + + Converts the objects in the collection to the specified type. Calling this method is the same as calling with the second parameter set to , which means that exceptions will not be thrown for items that fail conversion. + The type to which items in the collection are being converted. + A collection that represents the converted contents of the original collection. + + + Converts the objects in the collection to the specified type and uses the specified fault tolerance to handle or ignore errors associated with a type not having a conversion mapping. + The type to which items in the collection are being converted. + A Boolean value that determines how conversion errors are handled. +If is , conversion errors due to a mapping not being found for the translation result in a failed conversion and exceptions being thrown. +If is , types that failed to convert due to a mapping not being found for the translation are copied without being converted into the collection being returned. + A collection that represents the converted contents of the original collection. + + + Represents a user or group account. + + + Initializes a new instance of the class by using the specified name. + The name used to create the object. This parameter cannot be or an empty string. + + is . + + is an empty string. +-or- + is too long. + + + Initializes a new instance of the class by using the specified domain name and account name. + The name of the domain. This parameter can be or an empty string. Domain names that are null values are treated like an empty string. + The name of the account. This parameter cannot be or an empty string. + + is . + + is an empty string. +-or- + is too long. +-or- + is too long. + + + Returns a value that indicates whether this object is equal to a specified object. + An object to compare with this object, or . + + if is an object with the same underlying type and value as this object; otherwise, . + + + Serves as a hash function for the current object. The method is suitable for hashing algorithms and data structures like a hash table. + A hash value for the current object. + + + Returns a value that indicates whether the specified type is a valid translation type for the class. + The type being queried for validity to serve as a conversion from . The following target types are valid: +- +- + + if is a valid translation type for the class; otherwise . + + + Compares two objects to determine whether they are equal. They are considered equal if they have the same canonical name representation as the one returned by the property or if they are both . + The left operand to use for the equality comparison. This parameter can be . + The right operand to use for the equality comparison. This parameter can be . + + if and are equal; otherwise . + + + Compares two objects to determine whether they are not equal. They are considered not equal if they have different canonical name representations than the one returned by the property or if one of the objects is and the other is not. + The left operand to use for the inequality comparison. This parameter can be . + The right operand to use for the inequality comparison. This parameter can be . + + if and are not equal; otherwise . + + + Returns the account name, in Domain \ Account format, for the account represented by the object. + The account name, in Domain \ Account format. + + + Translates the account name represented by the object into another -derived type. + The target type for the conversion from . The target type must be a type that is considered valid by the method. + The converted identity. + + is . + + is not an type. + Some or all identity references could not be translated. + The source account name is too long. +-or- +A Win32 error code was returned. + + + Returns a string representation of this object. + The string representation of this object. + + + Represents a security identifier (SID) and provides marshaling and comparison operations for SIDs. + + + Initializes a new instance of the class by using a specified binary representation of a security identifier (SID). + The byte array that represents the SID. + The byte offset to use as the starting index in . + + + Initializes a new instance of the class by using an integer that represents the binary form of a security identifier (SID). + An integer that represents the binary form of a SID. + + + Initializes a new instance of the class by using the specified well known security identifier (SID) type and domain SID. + One of the enumeration values. This value must not be . + The domain SID. This value is required for the following values. This parameter is ignored for any other values. +- +- +- +- +- +- +- +- +- +- +- +- +- + + + Initializes a new instance of the class by using the specified security identifier (SID) in Security Descriptor Definition Language (SDDL) format. + SDDL string for the SID used to create the object. + + + Returns the account domain security identifier (SID) portion from the SID represented by the object if the SID represents a Windows account SID. If the SID does not represent a Windows account SID, this property returns . + The account domain SID portion from the SID represented by the object if the SID represents a Windows account SID; otherwise, it returns . + + + Returns the length, in bytes, of the security identifier (SID) represented by the object. + The length, in bytes, of the SID represented by the object. + + + Compares the current object with the specified object. + The object to compare with the current object. + A signed number indicating the relative values of this instance and . + Return Value + + Description + + Less than zero + + This instance is less than . + + Zero + + This instance is equal to . + + Greater than zero + + This instance is greater than . + + + Returns a value that indicates whether this object is equal to a specified object. + An object to compare with this object, or . + + if is an object with the same underlying type and value as this object; otherwise, . + + + Indicates whether the specified object is equal to the current object. + The object to compare with the current object. + + if the value of is equal to the value of the current object. + + + Copies the binary representation of the specified security identifier (SID) represented by the class to a byte array. + The byte array to receive the copied SID. + The byte offset to use as the starting index in . + + + Serves as a hash function for the current object. The method is suitable for hashing algorithms and data structures like a hash table. + A hash value for the current object. + + + Returns a value that indicates whether the security identifier (SID) represented by this object is a valid Windows account SID. + + if the SID represented by this object is a valid Windows account SID; otherwise, . + + + Returns a value that indicates whether the security identifier (SID) represented by this object is from the same domain as the specified SID. + The SID to compare with this object. + + if the SID represented by this object is in the same domain as the SID; otherwise, . + + + Returns a value that indicates whether the specified type is a valid translation type for the class. + The type being queried for validity to serve as a conversion from . The following target types are valid: +- +- + + if is a valid translation type for the class; otherwise, . + + + Returns a value that indicates whether the object matches the specified well known security identifier (SID) type. + A value to compare with the object. + + if is the SID type for the object; otherwise, . + + + Returns the maximum size, in bytes, of the binary representation of the security identifier. + + + Returns the minimum size, in bytes, of the binary representation of the security identifier. + + + Compares two objects to determine whether they are equal. They are considered equal if they have the same canonical representation as the one returned by the property or if they are both . + The left operand to use for the equality comparison. This parameter can be . + The right operand to use for the equality comparison. This parameter can be . + + if and are equal; otherwise, . + + + Compares two objects to determine whether they are not equal. They are considered not equal if they have different canonical name representations than the one returned by the property or if one of the objects is and the other is not. + The left operand to use for the inequality comparison. This parameter can be . + The right operand to use for the inequality comparison. This parameter can be . + + if and are not equal; otherwise, . + + + Returns the security identifier (SID), in Security Descriptor Definition Language (SDDL) format, for the account represented by the object. An example of the SDDL format is S-1-5-9. + The SID, in SDDL format, for the account represented by the object. + + + Translates the account name represented by the object into another -derived type. + The target type for the conversion from . The target type must be a type that is considered valid by the method. + The converted identity. + + is . + + is not an type. + Some or all identity references could not be translated. + A Win32 error code was returned. + + + Returns an uppercase Security Descriptor Definition Language (SDDL) string for the security identifier (SID) represented by this object. + An uppercase SDDL string for the SID represented by the object. + + + Defines the privileges of the user account associated with the access token. + + + The user can change the default owner, primary group, or discretionary access control list (DACL) of the token. + + + The user can change the attributes of the groups in the token. + + + The user can enable or disable privileges in the token. + + + The user can adjust the session identifier of the token. + + + The user has all possible access to the token. + + + The user can attach a primary token to a process. + + + The user can duplicate the token. + + + The user can impersonate a client. + + + The maximum value that can be assigned for the enumeration. + + + The user can query the token. + + + The user can query the source of the token. + + + The user has standard read rights and the privilege for the token. + + + The user has standard write rights and the , and privileges for the token. + + + Defines a set of commonly used security identifiers (SIDs). + + + Indicates a SID that matches the account administrators group. + + + Indicates a SID that matches the certificate administrators group. + + + Indicates a SID that matches the account computer group. + + + Indicates a SID that matches the account controller group. + + + Indicates a SID that matches the account domain administrator group. + + + Indicates a SID that matches the account domain guests group. + + + Indicates a SID that matches the account domain users group. + + + Indicates a SID that matches the enterprise administrators group. + + + Indicates a SID that matches the account guest group. + + + Indicates a SID that matches the account Kerberos target group. + + + Indicates a SID that matches the policy administrators group. + + + Indicates a SID that matches the RAS and IAS server account. + + + Indicates a SID that matches the schema administrators group. + + + Indicates a SID for the anonymous account. + + + Indicates a SID for an authenticated user. + + + Indicates a SID for a batch process. This SID is added to the process of a token when it logs on as a batch job. + + + Indicates a SID that matches the account operators account. + + + Indicates a SID that matches the administrator account. + + + Indicates a SID that matches the Windows Authorization Access group. + + + Indicates a SID that matches the backup operators group. + + + Indicates a SID that matches the domain account. + + + Indicates a SID that matches the guest account. + + + Indicates a SID that allows a user to create incoming forest trusts. It is added to the token of users who are a member of the Incoming Forest Trust Builders built-in group in the root domain of the forest. + + + Indicates a SID that matches the network operators group. + + + Indicates a SID that matches the group of users that have remote access to monitor the computer. + + + Indicates a SID that matches the group of users that have remote access to schedule logging of performance counters on this computer. + + + Indicates a SID that matches the power users group. + + + Indicates a SID that matches pre-Windows 2000 compatible accounts. + + + Indicates a SID that matches the print operators group. + + + Indicates a SID that matches remote desktop users. + + + Indicates a SID that matches the replicator account. + + + Indicates a SID that matches the system operators group. + + + Indicates a SID that matches built-in user accounts. + + + Indicates a creator group server SID. + + + Indicates a SID that matches the creator group of an object. + + + Indicates a creator owner server SID. + + + Indicates a SID that matches the owner or creator of an object. + + + Indicates a SID for a dial-up account. + + + Indicates a SID present when the Microsoft Digest authentication package authenticated the client. + + + Indicates a SID for an enterprise controller. + + + Indicates a SID for an interactive account. This SID is added to the process of a token when it logs on interactively. + + + Indicates a SID that matches a local service. + + + Indicates a local SID. + + + Indicates a SID that matches the local system. + + + Indicates a SID that matches logon IDs. + + + Indicates the maximum defined SID in the enumeration. + + + Indicates a SID that matches a network service. + + + Indicates a SID for a network account. This SID is added to the process of a token when it logs on across a network. + + + Indicates a SID for the Windows NT authority. + + + Indicates a SID present when the Microsoft NTLM authentication package authenticated the client. + + + Indicates a null SID. + + + Indicates a SID present when the user authenticated across a forest with the selective authentication option enabled. If this SID is present, then cannot be present. + + + Indicates a proxy SID. + + + Indicates a SID that matches remote logons. + + + Indicates a SID for restricted code. + + + Indicates a SID present when the Secure Channel (SSL/TLS) authentication package authenticated the client. + + + Indicates a SID for self. + + + Indicates a SID for a service. This SID is added to the process of a token when it logs on as a service. + + + Indicates a SID that matches a terminal server account. + + + Indicates a SID present when the user authenticated from within the forest or across a trust that does not have the selective authentication option enabled. If this SID is present, then cannot be present. + + + Indicates a SID that matches an account read-only controllers group. + + + Indicates a SID that matches the application package authority. + + + Indicates a SID that applies to all app containers. + + + Indicates a SID that matches the built-in DCOM certification services access group. + + + Indicates a SID that allows a user to use cryptographic operations. It is added to the token of users who are a member of the CryptoOperators built-in group. + + + Indicates a SID that matches the distributed COM user group. + + + Indicates a SID that matches an event log readers group. + + + Indicates a SID that matches the Internet built-in user group. + + + Indicates a SID is present in a server that can issue Terminal Server licenses. + + + Indicates a SID that matches a cacheable principals group. + + + Indicates a SID for documents library capability for app containers. + + + Indicates a SID for Windows credentials capability for app containers. + + + Indicates a SID of Internet client and server capability for app containers. + + + Indicates a SID of Internet client capability for app containers. + + + Indicates a SID for music library capability for app containers. + + + Indicates a SID for pictures library capability for app containers. + + + Indicates a SID of private network client and server capability for app containers. + + + Indicates a SID for removable storage capability for app containers. + + + Indicates a SID for shared user certificates capability for app containers. + + + Indicates a SID for videos library capability for app containers. + + + Indicates a SID that matches a console logon group. + + + Indicates a SID that matches a creator and owner rights group. + + + Indicates a SID that matches an enterprise wide read-only controllers group. + + + Indicates a SID that matches a high level of trust label. + + + Indicates a SID that matches the Internet user group. + + + Indicates a SID that matches a local logon group. + + + Indicates a SID that matches an low level of trust label. + + + Indicates a SID that matches an medium level of trust label. + + + Indicates a SID that matches the medium plus integrity label. + + + Indicates a SID that matches a read-only enterprise domain controller. + + + Indicates a SID that matches a non-cacheable principals group. + + + Indicates a SID that matches a system label. + + + Indicates a SID that matches a certificate for the given organization. + + + Indicates a SID that matches an untrusted label. + + + Indicates a SID that matches a write restricted code group. + + + Indicates a SID that matches everyone. + + + Specifies the type of Windows account used. + + + An anonymous account. + + + A Windows guest account. + + + A standard user account. + + + A Windows system account. + + + Specifies common roles to be used with . + + + Account operators manage the user accounts on a computer or domain. + + + Administrators have complete and unrestricted access to the computer or domain. + + + Backup operators can override security restrictions for the sole purpose of backing up or restoring files. + + + Guests are more restricted than users. + + + Power users possess most administrative permissions with some restrictions. Thus, power users can run legacy applications, in addition to certified applications. + + + Print operators can take control of a printer. + + + Replicators support file replication in a domain. + + + System operators manage a particular computer. + + + Users are prevented from making accidental or intentional system-wide changes. Thus, users can run certified applications, but not most legacy applications. + + + Represents a Windows user. + + + Initializes a new instance of the class for the user represented by the specified Windows account token. + The account token for the user on whose behalf the code is running. + + is 0. +-or- + is duplicated and invalid for impersonation. + The caller does not have the correct permissions. +-or- +A Win32 error occurred. + + + Initializes a new instance of the class for the user represented by the specified Windows account token and the specified authentication type. + The account token for the user on whose behalf the code is running. + (Informational use only.) The type of authentication used to identify the user. + + is 0. +-or- + is duplicated and invalid for impersonation. + The caller does not have the correct permissions. +-or- +A Win32 error occurred. + + + Initializes a new instance of the class for the user represented by the specified Windows account token, the specified authentication type, and the specified Windows account type. + The account token for the user on whose behalf the code is running. + (Informational use only.) The type of authentication used to identify the user. + One of the enumeration values. + + is 0. +-or- + is duplicated and invalid for impersonation. + The caller does not have the correct permissions. +-or- +A Win32 error occurred. + + + Initializes a new instance of the class for the user represented by the specified Windows account token, the specified authentication type, the specified Windows account type, and the specified authentication status. + The account token for the user on whose behalf the code is running. + (Informational use only.) The type of authentication used to identify the user. + One of the enumeration values. + + to indicate that the user is authenticated; otherwise, . + + is 0. +-or- + is duplicated and invalid for impersonation. + The caller does not have the correct permissions. +-or- +A Win32 error occurred. + + + Initializes a new instance of the class for the user represented by information in a stream. + The object containing the account information for the user. + An object that indicates the stream characteristics. + A cannot be serialized across processes. + The caller does not have the correct permissions. +-or- +A Win32 error occurred. + + + Initializes a new instance of the class by using the specified object. + The object from which to construct the new instance of . + + + Initializes a new instance of the class for the user represented by the specified User Principal Name (UPN). + The UPN for the user on whose behalf the code is running. + Windows returned the Windows NT status code STATUS_ACCESS_DENIED. + There is insufficient memory available. + The caller does not have the correct permissions. +-or- +The computer is not attached to a Windows 2003 or later domain. +-or- +The computer is not running Windows 2003 or later. +-or- +The user is not a member of the domain the computer is attached to. + + + Gets this for this instance. + Returns a . + + + Gets the type of authentication used to identify the user. + The type of authentication used to identify the user. + Windows returned the Windows NT status code STATUS_ACCESS_DENIED. + There is insufficient memory available. + The caller does not have the correct permissions. +-or- +The computer is not attached to a Windows 2003 or later domain. +-or- +The computer is not running Windows 2003 or later. +-or- +The user is not a member of the domain the computer is attached to. + + + Gets all claims for the user represented by this Windows identity. + A collection of claims for this object. + + + Creates a new object that is a copy of the current instance. + A copy of the current instance. + + + Identifies the name of the default issuer. + + + Gets claims that have the property key. + A collection of claims that have the property key. + + + Releases all resources used by the . + + + Releases the unmanaged resources used by the and optionally releases the managed resources. + + to release both managed and unmanaged resources; to release only unmanaged resources. + + + Returns a object that you can use as a sentinel value in your code to represent an anonymous user. The property value does not represent the built-in anonymous identity used by the Windows operating system. + An object that represents an anonymous user. + + + Returns a object that represents the current Windows user. + An object that represents the current user. + The caller does not have the correct permissions. + + + Returns a object that represents the Windows identity for either the thread or the process, depending on the value of the parameter. + + to return the only if the thread is currently impersonating; to return the of the thread if it is impersonating or the of the process if the thread is not currently impersonating. + An object that represents a Windows user. + + + Returns a object that represents the current Windows user, using the specified desired token access level. + A bitwise combination of the enumeration values. + An object that represents the current user. + + + Gets the groups the current Windows user belongs to. + An object representing the groups the current Windows user belongs to. + + + Gets the impersonation level for the user. + One of the enumeration values that specifies the impersonation level. + + + Gets a value that indicates whether the user account is identified as an anonymous account by the system. + + if the user account is an anonymous account; otherwise, . + + + Gets a value indicating whether the user has been authenticated by Windows. + + if the user was authenticated; otherwise, . + + + Gets a value indicating whether the user account is identified as a account by the system. + + if the user account is a account; otherwise, . + + + Gets a value indicating whether the user account is identified as a account by the system. + + if the user account is a account; otherwise, . + + + Gets the user's Windows logon name. + The Windows logon name of the user on whose behalf the code is being run. + + + Gets the security identifier (SID) for the token owner. + An object for the token owner. + + + Runs the specified action as the impersonated Windows identity. Instead of using an impersonated method call and running your function in , you can use and provide your function directly as a parameter. + The SafeAccessTokenHandle of the impersonated Windows identity. + The System.Action to run. + + + Runs the specified function as the impersonated Windows identity. Instead of using an impersonated method call and running your function in , you can use and provide your function directly as a parameter. + The SafeAccessTokenHandle of the impersonated Windows identity. + The System.Func to run. + The type of object used by and returned by the function. + The result of the function. + + + Implements the interface and is called back by the deserialization event when deserialization is complete. + The source of the deserialization event. + + + Sets the object with the logical context information needed to recreate an instance of this execution context. + An object containing the information required to serialize the . + An object containing the source and destination of the serialized stream associated with the . + + + Gets the Windows account token for the user. + The handle of the access token associated with the current execution thread. + + + Gets the security identifier (SID) for the user. + An object for the user. + + + Gets claims that have the property key. + A collection of claims that have the property key. + + + Enables code to check the Windows group membership of a Windows user. + + + Initializes a new instance of the class by using the specified object. + The object from which to construct the new instance of . + + is . + + + Gets all Windows device claims from this principal. + A collection of all Windows device claims from this principal. + + + Gets the identity of the current principal. + The object of the current principal. + + + Determines whether the current principal belongs to the Windows user group with the specified relative identifier (RID). + The RID of the Windows user group in which to check for the principal's membership status. + + if the current principal is a member of the specified Windows user group, that is, in a particular role; otherwise, . + + + Determines whether the current principal belongs to the Windows user group with the specified security identifier (SID). + A that uniquely identifies a Windows user group. + + if the current principal is a member of the specified Windows user group; otherwise, . + + is . + Windows returned a Win32 error. + + + Determines whether the current principal belongs to the Windows user group with the specified . + One of the values. + + if the current principal is a member of the specified Windows user group; otherwise, . + + is not a valid value. + + + Determines whether the current principal belongs to the Windows user group with the specified name. + The name of the Windows user group for which to check membership. + + if the current principal is a member of the specified Windows user group; otherwise, . + + + Gets all Windows user claims from this principal. + A collection of all Windows user claims from this principal. + + + \ No newline at end of file diff --git a/Assets/Plugins/NuGet/System.Security.Principal.Windows.4.7.0/lib/netstandard2.0/System.Security.Principal.Windows.xml.meta b/Assets/Plugins/NuGet/System.Security.Principal.Windows.4.7.0/lib/netstandard2.0/System.Security.Principal.Windows.xml.meta new file mode 100644 index 0000000..b4e13ba --- /dev/null +++ b/Assets/Plugins/NuGet/System.Security.Principal.Windows.4.7.0/lib/netstandard2.0/System.Security.Principal.Windows.xml.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: cb39349fe00d1084aa5b5d946911919e +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Plugins/NuGet/System.Security.Principal.Windows.4.7.0/useSharedDesignerContext.txt b/Assets/Plugins/NuGet/System.Security.Principal.Windows.4.7.0/useSharedDesignerContext.txt new file mode 100644 index 0000000..e69de29 diff --git a/Assets/Plugins/NuGet/System.Security.Principal.Windows.4.7.0/useSharedDesignerContext.txt.meta b/Assets/Plugins/NuGet/System.Security.Principal.Windows.4.7.0/useSharedDesignerContext.txt.meta new file mode 100644 index 0000000..775c06a --- /dev/null +++ b/Assets/Plugins/NuGet/System.Security.Principal.Windows.4.7.0/useSharedDesignerContext.txt.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 59bb4e3cd42bc114981ff341a40eb5a2 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Plugins/NuGet/System.Security.Principal.Windows.4.7.0/version.txt b/Assets/Plugins/NuGet/System.Security.Principal.Windows.4.7.0/version.txt new file mode 100644 index 0000000..f5d54e7 --- /dev/null +++ b/Assets/Plugins/NuGet/System.Security.Principal.Windows.4.7.0/version.txt @@ -0,0 +1 @@ +0f7f38c4fd323b26da10cce95f857f77f0f09b48 diff --git a/Assets/Plugins/NuGet/System.Security.Principal.Windows.4.7.0/version.txt.meta b/Assets/Plugins/NuGet/System.Security.Principal.Windows.4.7.0/version.txt.meta new file mode 100644 index 0000000..9442335 --- /dev/null +++ b/Assets/Plugins/NuGet/System.Security.Principal.Windows.4.7.0/version.txt.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 51a3a143607e22f449b28ad68866a0fe +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Plugins/NuGet/packagefolder.txt b/Assets/Plugins/NuGet/packagefolder.txt new file mode 100644 index 0000000..25954c0 --- /dev/null +++ b/Assets/Plugins/NuGet/packagefolder.txt @@ -0,0 +1 @@ +do not delete diff --git a/Assets/Plugins/NuGet/packagefolder.txt.meta b/Assets/Plugins/NuGet/packagefolder.txt.meta new file mode 100644 index 0000000..f485353 --- /dev/null +++ b/Assets/Plugins/NuGet/packagefolder.txt.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 6109fd8bbeae7404cafa277c1fbdb533 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scenes.meta b/Assets/Scenes.meta new file mode 100644 index 0000000..12a89f0 --- /dev/null +++ b/Assets/Scenes.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: c2cf5c919ad66484f9e76c2f00cd0e9a +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scenes/SampleScene.unity b/Assets/Scenes/SampleScene.unity new file mode 100644 index 0000000..790dd20 --- /dev/null +++ b/Assets/Scenes/SampleScene.unity @@ -0,0 +1,254 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!29 &1 +OcclusionCullingSettings: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_OcclusionBakeSettings: + smallestOccluder: 5 + smallestHole: 0.25 + backfaceThreshold: 100 + m_SceneGUID: 00000000000000000000000000000000 + m_OcclusionCullingData: {fileID: 0} +--- !u!104 &2 +RenderSettings: + m_ObjectHideFlags: 0 + serializedVersion: 10 + m_Fog: 0 + m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} + m_FogMode: 3 + m_FogDensity: 0.01 + m_LinearFogStart: 0 + m_LinearFogEnd: 300 + m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} + m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} + m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} + m_AmbientIntensity: 1 + m_AmbientMode: 0 + m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} + m_SkyboxMaterial: {fileID: 10304, guid: 0000000000000000f000000000000000, type: 0} + m_HaloStrength: 0.5 + m_FlareStrength: 1 + m_FlareFadeSpeed: 3 + m_HaloTexture: {fileID: 0} + m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} + m_DefaultReflectionMode: 0 + m_DefaultReflectionResolution: 128 + m_ReflectionBounces: 1 + m_ReflectionIntensity: 1 + m_CustomReflection: {fileID: 0} + m_Sun: {fileID: 0} + m_UseRadianceAmbientProbe: 0 +--- !u!157 &3 +LightmapSettings: + m_ObjectHideFlags: 0 + serializedVersion: 13 + m_BakeOnSceneLoad: 0 + m_GISettings: + serializedVersion: 2 + m_BounceScale: 1 + m_IndirectOutputScale: 1 + m_AlbedoBoost: 1 + m_EnvironmentLightingMode: 0 + m_EnableBakedLightmaps: 1 + m_EnableRealtimeLightmaps: 0 + m_LightmapEditorSettings: + serializedVersion: 12 + m_Resolution: 2 + m_BakeResolution: 40 + m_AtlasSize: 1024 + m_AO: 0 + m_AOMaxDistance: 1 + m_CompAOExponent: 1 + m_CompAOExponentDirect: 0 + m_ExtractAmbientOcclusion: 0 + m_Padding: 2 + m_LightmapParameters: {fileID: 0} + m_LightmapsBakeMode: 1 + m_TextureCompression: 1 + m_ReflectionCompression: 2 + m_MixedBakeMode: 2 + m_BakeBackend: 1 + m_PVRSampling: 1 + m_PVRDirectSampleCount: 32 + m_PVRSampleCount: 512 + m_PVRBounces: 2 + m_PVREnvironmentSampleCount: 256 + m_PVREnvironmentReferencePointCount: 2048 + m_PVRFilteringMode: 1 + m_PVRDenoiserTypeDirect: 1 + m_PVRDenoiserTypeIndirect: 1 + m_PVRDenoiserTypeAO: 1 + m_PVRFilterTypeDirect: 0 + m_PVRFilterTypeIndirect: 0 + m_PVRFilterTypeAO: 0 + m_PVREnvironmentMIS: 1 + m_PVRCulling: 1 + m_PVRFilteringGaussRadiusDirect: 1 + m_PVRFilteringGaussRadiusIndirect: 5 + m_PVRFilteringGaussRadiusAO: 2 + m_PVRFilteringAtrousPositionSigmaDirect: 0.5 + m_PVRFilteringAtrousPositionSigmaIndirect: 2 + m_PVRFilteringAtrousPositionSigmaAO: 1 + m_ExportTrainingData: 0 + m_TrainingDataDestination: TrainingData + m_LightProbeSampleCountMultiplier: 4 + m_LightingDataAsset: {fileID: 20201, guid: 0000000000000000f000000000000000, type: 0} + m_LightingSettings: {fileID: 0} +--- !u!196 &4 +NavMeshSettings: + serializedVersion: 2 + m_ObjectHideFlags: 0 + m_BuildSettings: + serializedVersion: 3 + agentTypeID: 0 + agentRadius: 0.5 + agentHeight: 2 + agentSlope: 45 + agentClimb: 0.4 + ledgeDropHeight: 0 + maxJumpAcrossDistance: 0 + minRegionArea: 2 + manualCellSize: 0 + cellSize: 0.16666667 + manualTileSize: 0 + tileSize: 256 + buildHeightMesh: 0 + maxJobWorkers: 0 + preserveTilesOutsideBounds: 0 + debug: + m_Flags: 0 + m_NavMeshData: {fileID: 0} +--- !u!1 &330585543 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 330585546} + - component: {fileID: 330585545} + - component: {fileID: 330585547} + m_Layer: 0 + m_Name: Main Camera + m_TagString: MainCamera + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!20 &330585545 +Camera: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 330585543} + m_Enabled: 1 + serializedVersion: 2 + m_ClearFlags: 1 + m_BackGroundColor: {r: 0.19215687, g: 0.3019608, b: 0.4745098, a: 0} + m_projectionMatrixMode: 1 + m_GateFitMode: 2 + m_FOVAxisMode: 0 + m_Iso: 200 + m_ShutterSpeed: 0.005 + m_Aperture: 16 + m_FocusDistance: 10 + m_FocalLength: 50 + m_BladeCount: 5 + m_Curvature: {x: 2, y: 11} + m_BarrelClipping: 0.25 + m_Anamorphism: 0 + m_SensorSize: {x: 36, y: 24} + m_LensShift: {x: 0, y: 0} + m_NormalizedViewPortRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 1 + height: 1 + near clip plane: 0.3 + far clip plane: 1000 + field of view: 60 + orthographic: 0 + orthographic size: 5 + m_Depth: -1 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RenderingPath: -1 + m_TargetTexture: {fileID: 0} + m_TargetDisplay: 0 + m_TargetEye: 3 + m_HDR: 1 + m_AllowMSAA: 1 + m_AllowDynamicResolution: 0 + m_ForceIntoRT: 0 + m_OcclusionCulling: 1 + m_StereoConvergence: 10 + m_StereoSeparation: 0.022 +--- !u!4 &330585546 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 330585543} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 1, z: -10} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &330585547 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 330585543} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: a79441f348de89743a2939f4d699eac1, type: 3} + m_Name: + m_EditorClassIdentifier: + m_RenderShadows: 1 + m_RequiresDepthTextureOption: 2 + m_RequiresOpaqueTextureOption: 2 + m_CameraType: 0 + m_Cameras: [] + m_RendererIndex: -1 + m_VolumeLayerMask: + serializedVersion: 2 + m_Bits: 1 + m_VolumeTrigger: {fileID: 0} + m_VolumeFrameworkUpdateModeOption: 2 + m_RenderPostProcessing: 1 + m_Antialiasing: 0 + m_AntialiasingQuality: 2 + m_StopNaN: 0 + m_Dithering: 0 + m_ClearDepth: 1 + m_AllowXRRendering: 1 + m_AllowHDROutput: 1 + m_UseScreenCoordOverride: 0 + m_ScreenSizeOverride: {x: 0, y: 0, z: 0, w: 0} + m_ScreenCoordScaleBias: {x: 0, y: 0, z: 0, w: 0} + m_RequiresDepthTexture: 0 + m_RequiresColorTexture: 0 + m_TaaSettings: + m_Quality: 3 + m_FrameInfluence: 0.1 + m_JitterScale: 1 + m_MipBias: 0 + m_VarianceClampScale: 0.9 + m_ContrastAdaptiveSharpening: 0 + m_Version: 2 +--- !u!1660057539 &9223372036854775807 +SceneRoots: + m_ObjectHideFlags: 0 + m_Roots: + - {fileID: 330585546} diff --git a/Assets/Scenes/SampleScene.unity.meta b/Assets/Scenes/SampleScene.unity.meta new file mode 100644 index 0000000..9531828 --- /dev/null +++ b/Assets/Scenes/SampleScene.unity.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 99c9720ab356a0642a771bea13969a05 +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scenes/Tests.meta b/Assets/Scenes/Tests.meta new file mode 100644 index 0000000..c7db67e --- /dev/null +++ b/Assets/Scenes/Tests.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 3de6f644a6962a4468f78d50228c428e +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scenes/Tests/Test_Empty.unity b/Assets/Scenes/Tests/Test_Empty.unity new file mode 100644 index 0000000..470251e --- /dev/null +++ b/Assets/Scenes/Tests/Test_Empty.unity @@ -0,0 +1,254 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!29 &1 +OcclusionCullingSettings: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_OcclusionBakeSettings: + smallestOccluder: 5 + smallestHole: 0.25 + backfaceThreshold: 100 + m_SceneGUID: 00000000000000000000000000000000 + m_OcclusionCullingData: {fileID: 0} +--- !u!104 &2 +RenderSettings: + m_ObjectHideFlags: 0 + serializedVersion: 10 + m_Fog: 0 + m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} + m_FogMode: 3 + m_FogDensity: 0.01 + m_LinearFogStart: 0 + m_LinearFogEnd: 300 + m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} + m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} + m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} + m_AmbientIntensity: 1 + m_AmbientMode: 3 + m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} + m_SkyboxMaterial: {fileID: 0} + m_HaloStrength: 0.5 + m_FlareStrength: 1 + m_FlareFadeSpeed: 3 + m_HaloTexture: {fileID: 0} + m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} + m_DefaultReflectionMode: 0 + m_DefaultReflectionResolution: 128 + m_ReflectionBounces: 1 + m_ReflectionIntensity: 1 + m_CustomReflection: {fileID: 0} + m_Sun: {fileID: 0} + m_UseRadianceAmbientProbe: 0 +--- !u!157 &3 +LightmapSettings: + m_ObjectHideFlags: 0 + serializedVersion: 13 + m_BakeOnSceneLoad: 0 + m_GISettings: + serializedVersion: 2 + m_BounceScale: 1 + m_IndirectOutputScale: 1 + m_AlbedoBoost: 1 + m_EnvironmentLightingMode: 0 + m_EnableBakedLightmaps: 0 + m_EnableRealtimeLightmaps: 0 + m_LightmapEditorSettings: + serializedVersion: 12 + m_Resolution: 2 + m_BakeResolution: 40 + m_AtlasSize: 1024 + m_AO: 0 + m_AOMaxDistance: 1 + m_CompAOExponent: 1 + m_CompAOExponentDirect: 0 + m_ExtractAmbientOcclusion: 0 + m_Padding: 2 + m_LightmapParameters: {fileID: 0} + m_LightmapsBakeMode: 1 + m_TextureCompression: 1 + m_ReflectionCompression: 2 + m_MixedBakeMode: 2 + m_BakeBackend: 2 + m_PVRSampling: 1 + m_PVRDirectSampleCount: 32 + m_PVRSampleCount: 512 + m_PVRBounces: 2 + m_PVREnvironmentSampleCount: 256 + m_PVREnvironmentReferencePointCount: 2048 + m_PVRFilteringMode: 1 + m_PVRDenoiserTypeDirect: 1 + m_PVRDenoiserTypeIndirect: 1 + m_PVRDenoiserTypeAO: 1 + m_PVRFilterTypeDirect: 0 + m_PVRFilterTypeIndirect: 0 + m_PVRFilterTypeAO: 0 + m_PVREnvironmentMIS: 1 + m_PVRCulling: 1 + m_PVRFilteringGaussRadiusDirect: 1 + m_PVRFilteringGaussRadiusIndirect: 1 + m_PVRFilteringGaussRadiusAO: 1 + m_PVRFilteringAtrousPositionSigmaDirect: 0.5 + m_PVRFilteringAtrousPositionSigmaIndirect: 2 + m_PVRFilteringAtrousPositionSigmaAO: 1 + m_ExportTrainingData: 0 + m_TrainingDataDestination: TrainingData + m_LightProbeSampleCountMultiplier: 4 + m_LightingDataAsset: {fileID: 20201, guid: 0000000000000000f000000000000000, type: 0} + m_LightingSettings: {fileID: 0} +--- !u!196 &4 +NavMeshSettings: + serializedVersion: 2 + m_ObjectHideFlags: 0 + m_BuildSettings: + serializedVersion: 3 + agentTypeID: 0 + agentRadius: 0.5 + agentHeight: 2 + agentSlope: 45 + agentClimb: 0.4 + ledgeDropHeight: 0 + maxJumpAcrossDistance: 0 + minRegionArea: 2 + manualCellSize: 0 + cellSize: 0.16666667 + manualTileSize: 0 + tileSize: 256 + buildHeightMesh: 0 + maxJobWorkers: 0 + preserveTilesOutsideBounds: 0 + debug: + m_Flags: 0 + m_NavMeshData: {fileID: 0} +--- !u!1 &1823123707 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1823123710} + - component: {fileID: 1823123709} + - component: {fileID: 1823123711} + m_Layer: 0 + m_Name: Main Camera + m_TagString: MainCamera + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!20 &1823123709 +Camera: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1823123707} + m_Enabled: 1 + serializedVersion: 2 + m_ClearFlags: 1 + m_BackGroundColor: {r: 0.19215687, g: 0.3019608, b: 0.4745098, a: 0} + m_projectionMatrixMode: 1 + m_GateFitMode: 2 + m_FOVAxisMode: 0 + m_Iso: 200 + m_ShutterSpeed: 0.005 + m_Aperture: 16 + m_FocusDistance: 10 + m_FocalLength: 50 + m_BladeCount: 5 + m_Curvature: {x: 2, y: 11} + m_BarrelClipping: 0.25 + m_Anamorphism: 0 + m_SensorSize: {x: 36, y: 24} + m_LensShift: {x: 0, y: 0} + m_NormalizedViewPortRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 1 + height: 1 + near clip plane: 0.3 + far clip plane: 1000 + field of view: 60 + orthographic: 1 + orthographic size: 5 + m_Depth: -1 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RenderingPath: -1 + m_TargetTexture: {fileID: 0} + m_TargetDisplay: 0 + m_TargetEye: 3 + m_HDR: 1 + m_AllowMSAA: 1 + m_AllowDynamicResolution: 0 + m_ForceIntoRT: 0 + m_OcclusionCulling: 1 + m_StereoConvergence: 10 + m_StereoSeparation: 0.022 +--- !u!4 &1823123710 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1823123707} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: -10} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &1823123711 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1823123707} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: a79441f348de89743a2939f4d699eac1, type: 3} + m_Name: + m_EditorClassIdentifier: Unity.RenderPipelines.Universal.Runtime::UnityEngine.Rendering.Universal.UniversalAdditionalCameraData + m_RenderShadows: 1 + m_RequiresDepthTextureOption: 2 + m_RequiresOpaqueTextureOption: 2 + m_CameraType: 0 + m_Cameras: [] + m_RendererIndex: -1 + m_VolumeLayerMask: + serializedVersion: 2 + m_Bits: 1 + m_VolumeTrigger: {fileID: 0} + m_VolumeFrameworkUpdateModeOption: 2 + m_RenderPostProcessing: 0 + m_Antialiasing: 0 + m_AntialiasingQuality: 2 + m_StopNaN: 0 + m_Dithering: 0 + m_ClearDepth: 1 + m_AllowXRRendering: 1 + m_AllowHDROutput: 1 + m_UseScreenCoordOverride: 0 + m_ScreenSizeOverride: {x: 0, y: 0, z: 0, w: 0} + m_ScreenCoordScaleBias: {x: 0, y: 0, z: 0, w: 0} + m_RequiresDepthTexture: 0 + m_RequiresColorTexture: 0 + m_TaaSettings: + m_Quality: 3 + m_FrameInfluence: 0.1 + m_JitterScale: 1 + m_MipBias: 0 + m_VarianceClampScale: 0.9 + m_ContrastAdaptiveSharpening: 0 + m_Version: 2 +--- !u!1660057539 &9223372036854775807 +SceneRoots: + m_ObjectHideFlags: 0 + m_Roots: + - {fileID: 1823123710} diff --git a/Assets/Scenes/Tests/Test_Empty.unity.meta b/Assets/Scenes/Tests/Test_Empty.unity.meta new file mode 100644 index 0000000..4de1bce --- /dev/null +++ b/Assets/Scenes/Tests/Test_Empty.unity.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 2a463a4fb9ed50f42a2c9685f47b9ce8 +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scenes/Tests/Test_UnitMovement.unity b/Assets/Scenes/Tests/Test_UnitMovement.unity new file mode 100644 index 0000000..a26eb19 --- /dev/null +++ b/Assets/Scenes/Tests/Test_UnitMovement.unity @@ -0,0 +1,15506 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!29 &1 +OcclusionCullingSettings: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_OcclusionBakeSettings: + smallestOccluder: 5 + smallestHole: 0.25 + backfaceThreshold: 100 + m_SceneGUID: 00000000000000000000000000000000 + m_OcclusionCullingData: {fileID: 0} +--- !u!104 &2 +RenderSettings: + m_ObjectHideFlags: 0 + serializedVersion: 10 + m_Fog: 0 + m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} + m_FogMode: 3 + m_FogDensity: 0.01 + m_LinearFogStart: 0 + m_LinearFogEnd: 300 + m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} + m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} + m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} + m_AmbientIntensity: 1 + m_AmbientMode: 3 + m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} + m_SkyboxMaterial: {fileID: 0} + m_HaloStrength: 0.5 + m_FlareStrength: 1 + m_FlareFadeSpeed: 3 + m_HaloTexture: {fileID: 0} + m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} + m_DefaultReflectionMode: 0 + m_DefaultReflectionResolution: 128 + m_ReflectionBounces: 1 + m_ReflectionIntensity: 1 + m_CustomReflection: {fileID: 0} + m_Sun: {fileID: 0} + m_UseRadianceAmbientProbe: 0 +--- !u!157 &3 +LightmapSettings: + m_ObjectHideFlags: 0 + serializedVersion: 13 + m_BakeOnSceneLoad: 0 + m_GISettings: + serializedVersion: 2 + m_BounceScale: 1 + m_IndirectOutputScale: 1 + m_AlbedoBoost: 1 + m_EnvironmentLightingMode: 0 + m_EnableBakedLightmaps: 0 + m_EnableRealtimeLightmaps: 0 + m_LightmapEditorSettings: + serializedVersion: 12 + m_Resolution: 2 + m_BakeResolution: 40 + m_AtlasSize: 1024 + m_AO: 0 + m_AOMaxDistance: 1 + m_CompAOExponent: 1 + m_CompAOExponentDirect: 0 + m_ExtractAmbientOcclusion: 0 + m_Padding: 2 + m_LightmapParameters: {fileID: 0} + m_LightmapsBakeMode: 1 + m_TextureCompression: 1 + m_ReflectionCompression: 2 + m_MixedBakeMode: 2 + m_BakeBackend: 1 + m_PVRSampling: 1 + m_PVRDirectSampleCount: 32 + m_PVRSampleCount: 512 + m_PVRBounces: 2 + m_PVREnvironmentSampleCount: 256 + m_PVREnvironmentReferencePointCount: 2048 + m_PVRFilteringMode: 1 + m_PVRDenoiserTypeDirect: 1 + m_PVRDenoiserTypeIndirect: 1 + m_PVRDenoiserTypeAO: 1 + m_PVRFilterTypeDirect: 0 + m_PVRFilterTypeIndirect: 0 + m_PVRFilterTypeAO: 0 + m_PVREnvironmentMIS: 1 + m_PVRCulling: 1 + m_PVRFilteringGaussRadiusDirect: 1 + m_PVRFilteringGaussRadiusIndirect: 1 + m_PVRFilteringGaussRadiusAO: 1 + m_PVRFilteringAtrousPositionSigmaDirect: 0.5 + m_PVRFilteringAtrousPositionSigmaIndirect: 2 + m_PVRFilteringAtrousPositionSigmaAO: 1 + m_ExportTrainingData: 0 + m_TrainingDataDestination: TrainingData + m_LightProbeSampleCountMultiplier: 4 + m_LightingDataAsset: {fileID: 20201, guid: 0000000000000000f000000000000000, type: 0} + m_LightingSettings: {fileID: 0} +--- !u!196 &4 +NavMeshSettings: + serializedVersion: 2 + m_ObjectHideFlags: 0 + m_BuildSettings: + serializedVersion: 3 + agentTypeID: 0 + agentRadius: 0.5 + agentHeight: 2 + agentSlope: 45 + agentClimb: 0.4 + ledgeDropHeight: 0 + maxJumpAcrossDistance: 0 + minRegionArea: 2 + manualCellSize: 0 + cellSize: 0.16666667 + manualTileSize: 0 + tileSize: 256 + buildHeightMesh: 0 + maxJobWorkers: 0 + preserveTilesOutsideBounds: 0 + debug: + m_Flags: 0 + m_NavMeshData: {fileID: 0} +--- !u!1 &74305580 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 74305581} + - component: {fileID: 74305583} + - component: {fileID: 74305582} + m_Layer: 0 + m_Name: BackgroundA + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &74305581 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 74305580} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 266447440} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!483693784 &74305582 +TilemapRenderer: + serializedVersion: 2 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 74305580} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 0 + m_ReflectionProbeUsage: 0 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 0 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 + m_SortingLayerID: -1386240971 + m_SortingLayer: 2 + m_SortingOrder: 0 + m_MaskInteraction: 0 + m_ChunkSize: {x: 32, y: 32, z: 32} + m_ChunkCullingBounds: {x: 0, y: 0, z: 0} + m_MaxChunkCount: 16 + m_MaxFrameAge: 16 + m_SortOrder: 0 + m_Mode: 0 + m_DetectChunkCullingBounds: 0 +--- !u!1839735485 &74305583 +Tilemap: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 74305580} + m_Enabled: 1 + m_Tiles: {} + m_AnimatedTiles: {} + m_TileAssetArray: + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + m_TileSpriteArray: + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + m_TileMatrixArray: + - m_RefCount: 0 + m_Data: + e00: -9.274527e-27 + e01: 0 + e02: 1e-45 + e03: -1.1020282e-38 + e10: 2.77e-43 + e11: 0 + e12: 0 + e13: 8.9e-43 + e20: 2.323759e-10 + e21: -1.1020282e-38 + e22: 2.647701e-29 + e23: 0.000000004855952 + e30: 4.591e-41 + e31: 8.9e-43 + e32: 8.94e-43 + e33: 8.91e-43 + m_TileColorArray: + - m_RefCount: 0 + m_Data: {r: 0.0000000048559343, g: 0.0000000048559343, b: 0.0000000048559343, a: 0.0000000048559343} + m_TileObjectToInstantiateArray: [] + m_AnimationFrameRate: 1 + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_Origin: {x: -32, y: -1, z: 0} + m_Size: {x: 33, y: 2, z: 1} + m_TileAnchor: {x: 0.5, y: 0.5, z: 0} + m_TileOrientation: 0 + m_TileOrientationMatrix: + e00: 1 + e01: 0 + e02: 0 + e03: 0 + e10: 0 + e11: 1 + e12: 0 + e13: 0 + e20: 0 + e21: 0 + e22: 1 + e23: 0 + e30: 0 + e31: 0 + e32: 0 + e33: 1 +--- !u!1001 &95090002 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 1692770168} + m_Modifications: + - target: {fileID: 5359555551451932894, guid: aa572251628ba4d4baa01cd838b9fc76, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target + value: + objectReference: {fileID: 935621872} + - target: {fileID: 5359555551451932894, guid: aa572251628ba4d4baa01cd838b9fc76, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target + value: + objectReference: {fileID: 1874834507} + - target: {fileID: 5359555551451932894, guid: aa572251628ba4d4baa01cd838b9fc76, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName + value: ToggleBorder + objectReference: {fileID: 0} + - target: {fileID: 5359555551451932894, guid: aa572251628ba4d4baa01cd838b9fc76, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName + value: ToggleVisibility + objectReference: {fileID: 0} + - target: {fileID: 5646916920372441721, guid: aa572251628ba4d4baa01cd838b9fc76, type: 3} + propertyPath: m_Pivot.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 5646916920372441721, guid: aa572251628ba4d4baa01cd838b9fc76, type: 3} + propertyPath: m_Pivot.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 5646916920372441721, guid: aa572251628ba4d4baa01cd838b9fc76, type: 3} + propertyPath: m_AnchorMax.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 5646916920372441721, guid: aa572251628ba4d4baa01cd838b9fc76, type: 3} + propertyPath: m_AnchorMax.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 5646916920372441721, guid: aa572251628ba4d4baa01cd838b9fc76, type: 3} + propertyPath: m_AnchorMin.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 5646916920372441721, guid: aa572251628ba4d4baa01cd838b9fc76, type: 3} + propertyPath: m_AnchorMin.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 5646916920372441721, guid: aa572251628ba4d4baa01cd838b9fc76, type: 3} + propertyPath: m_SizeDelta.x + value: 128 + objectReference: {fileID: 0} + - target: {fileID: 5646916920372441721, guid: aa572251628ba4d4baa01cd838b9fc76, type: 3} + propertyPath: m_SizeDelta.y + value: 128 + objectReference: {fileID: 0} + - target: {fileID: 5646916920372441721, guid: aa572251628ba4d4baa01cd838b9fc76, type: 3} + propertyPath: m_LocalScale.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 5646916920372441721, guid: aa572251628ba4d4baa01cd838b9fc76, type: 3} + propertyPath: m_LocalScale.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 5646916920372441721, guid: aa572251628ba4d4baa01cd838b9fc76, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5646916920372441721, guid: aa572251628ba4d4baa01cd838b9fc76, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5646916920372441721, guid: aa572251628ba4d4baa01cd838b9fc76, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5646916920372441721, guid: aa572251628ba4d4baa01cd838b9fc76, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 5646916920372441721, guid: aa572251628ba4d4baa01cd838b9fc76, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5646916920372441721, guid: aa572251628ba4d4baa01cd838b9fc76, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5646916920372441721, guid: aa572251628ba4d4baa01cd838b9fc76, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5646916920372441721, guid: aa572251628ba4d4baa01cd838b9fc76, type: 3} + propertyPath: m_AnchoredPosition.x + value: -60 + objectReference: {fileID: 0} + - target: {fileID: 5646916920372441721, guid: aa572251628ba4d4baa01cd838b9fc76, type: 3} + propertyPath: m_AnchoredPosition.y + value: -200 + objectReference: {fileID: 0} + - target: {fileID: 5646916920372441721, guid: aa572251628ba4d4baa01cd838b9fc76, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5646916920372441721, guid: aa572251628ba4d4baa01cd838b9fc76, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5646916920372441721, guid: aa572251628ba4d4baa01cd838b9fc76, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7458929114684592854, guid: aa572251628ba4d4baa01cd838b9fc76, type: 3} + propertyPath: m_Sprite + value: + objectReference: {fileID: 6046806508578437223, guid: 58b17aafc91cf88479d31f4747d21816, type: 3} + - target: {fileID: 8029034508977964876, guid: aa572251628ba4d4baa01cd838b9fc76, type: 3} + propertyPath: m_Name + value: TrapInventoryButton + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: aa572251628ba4d4baa01cd838b9fc76, type: 3} +--- !u!224 &95090003 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 5646916920372441721, guid: aa572251628ba4d4baa01cd838b9fc76, type: 3} + m_PrefabInstance: {fileID: 95090002} + m_PrefabAsset: {fileID: 0} +--- !u!1 &266447438 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 266447440} + - component: {fileID: 266447439} + - component: {fileID: 266447442} + m_Layer: 0 + m_Name: TileGrid + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!156049354 &266447439 +Grid: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 266447438} + m_Enabled: 1 + m_CellSize: {x: 1, y: 1, z: 0} + m_CellGap: {x: 0, y: 0, z: 0} + m_CellLayout: 0 + m_CellSwizzle: 0 +--- !u!4 &266447440 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 266447438} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 1877866585} + - {fileID: 449014276} + - {fileID: 1010954534} + - {fileID: 1155539832} + - {fileID: 74305581} + - {fileID: 1062059270} + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!50 &266447442 +Rigidbody2D: + serializedVersion: 5 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 266447438} + m_BodyType: 2 + m_Simulated: 1 + m_UseFullKinematicContacts: 0 + m_UseAutoMass: 0 + m_Mass: 1 + m_LinearDamping: 0 + m_AngularDamping: 0.05 + m_GravityScale: 1 + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_Interpolate: 0 + m_SleepingMode: 1 + m_CollisionDetection: 0 + m_Constraints: 0 +--- !u!1001 &284592043 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 1773853735881579092, guid: 0d22f0438375e60478b3856417b103e6, type: 3} + propertyPath: m_LocalPosition.x + value: 22.5 + objectReference: {fileID: 0} + - target: {fileID: 1773853735881579092, guid: 0d22f0438375e60478b3856417b103e6, type: 3} + propertyPath: m_LocalPosition.y + value: -4.950001 + objectReference: {fileID: 0} + - target: {fileID: 1773853735881579092, guid: 0d22f0438375e60478b3856417b103e6, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1773853735881579092, guid: 0d22f0438375e60478b3856417b103e6, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 1773853735881579092, guid: 0d22f0438375e60478b3856417b103e6, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1773853735881579092, guid: 0d22f0438375e60478b3856417b103e6, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1773853735881579092, guid: 0d22f0438375e60478b3856417b103e6, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1773853735881579092, guid: 0d22f0438375e60478b3856417b103e6, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1773853735881579092, guid: 0d22f0438375e60478b3856417b103e6, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1773853735881579092, guid: 0d22f0438375e60478b3856417b103e6, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2223815045319872774, guid: 0d22f0438375e60478b3856417b103e6, type: 3} + propertyPath: m_Name + value: TreasureChest + objectReference: {fileID: 0} + - target: {fileID: 3275517007335047251, guid: 0d22f0438375e60478b3856417b103e6, type: 3} + propertyPath: m_SortingLayer + value: 4 + objectReference: {fileID: 0} + m_RemovedComponents: + - {fileID: 7069929522489002920, guid: 0d22f0438375e60478b3856417b103e6, type: 3} + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 2223815045319872774, guid: 0d22f0438375e60478b3856417b103e6, type: 3} + insertIndex: -1 + addedObject: {fileID: 1248967695} + - targetCorrespondingSourceObject: {fileID: 2223815045319872774, guid: 0d22f0438375e60478b3856417b103e6, type: 3} + insertIndex: -1 + addedObject: {fileID: 1248967696} + m_SourcePrefab: {fileID: 100100000, guid: 0d22f0438375e60478b3856417b103e6, type: 3} +--- !u!212 &284592044 stripped +SpriteRenderer: + m_CorrespondingSourceObject: {fileID: 3275517007335047251, guid: 0d22f0438375e60478b3856417b103e6, type: 3} + m_PrefabInstance: {fileID: 284592043} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &317959203 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: -1716117421633299209, guid: abc97ef53ac39b645a1bd75a4c3f0f69, type: 3} + propertyPath: m_Intensity + value: 1 + objectReference: {fileID: 0} + - target: {fileID: -1716117421633299209, guid: abc97ef53ac39b645a1bd75a4c3f0f69, type: 3} + propertyPath: m_ApplyToSortingLayers.Array.size + value: 8 + objectReference: {fileID: 0} + - target: {fileID: -1716117421633299209, guid: abc97ef53ac39b645a1bd75a4c3f0f69, type: 3} + propertyPath: 'm_ApplyToSortingLayers.Array.data[3]' + value: -1721124277 + objectReference: {fileID: 0} + - target: {fileID: -1716117421633299209, guid: abc97ef53ac39b645a1bd75a4c3f0f69, type: 3} + propertyPath: 'm_ApplyToSortingLayers.Array.data[4]' + value: -1403023199 + objectReference: {fileID: 0} + - target: {fileID: -1716117421633299209, guid: abc97ef53ac39b645a1bd75a4c3f0f69, type: 3} + propertyPath: 'm_ApplyToSortingLayers.Array.data[5]' + value: -47480705 + objectReference: {fileID: 0} + - target: {fileID: -1716117421633299209, guid: abc97ef53ac39b645a1bd75a4c3f0f69, type: 3} + propertyPath: 'm_ApplyToSortingLayers.Array.data[6]' + value: -2112306437 + objectReference: {fileID: 0} + - target: {fileID: 4651519948885318994, guid: abc97ef53ac39b645a1bd75a4c3f0f69, type: 3} + propertyPath: m_Name + value: Torch + objectReference: {fileID: 0} + - target: {fileID: 5101714354512762368, guid: abc97ef53ac39b645a1bd75a4c3f0f69, type: 3} + propertyPath: m_LocalPosition.x + value: -14.5 + objectReference: {fileID: 0} + - target: {fileID: 5101714354512762368, guid: abc97ef53ac39b645a1bd75a4c3f0f69, type: 3} + propertyPath: m_LocalPosition.y + value: 1.51 + objectReference: {fileID: 0} + - target: {fileID: 5101714354512762368, guid: abc97ef53ac39b645a1bd75a4c3f0f69, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5101714354512762368, guid: abc97ef53ac39b645a1bd75a4c3f0f69, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 5101714354512762368, guid: abc97ef53ac39b645a1bd75a4c3f0f69, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5101714354512762368, guid: abc97ef53ac39b645a1bd75a4c3f0f69, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5101714354512762368, guid: abc97ef53ac39b645a1bd75a4c3f0f69, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5101714354512762368, guid: abc97ef53ac39b645a1bd75a4c3f0f69, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5101714354512762368, guid: abc97ef53ac39b645a1bd75a4c3f0f69, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5101714354512762368, guid: abc97ef53ac39b645a1bd75a4c3f0f69, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: abc97ef53ac39b645a1bd75a4c3f0f69, type: 3} +--- !u!1001 &397121043 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 1692770168} + m_Modifications: + - target: {fileID: 6247099292504577940, guid: ecea1e44e40c24144a0e615c6e5a2cab, type: 3} + propertyPath: m_Name + value: MineButtonIcon + objectReference: {fileID: 0} + - target: {fileID: 8340117360286087174, guid: ecea1e44e40c24144a0e615c6e5a2cab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Mode + value: 3 + objectReference: {fileID: 0} + - target: {fileID: 8340117360286087174, guid: ecea1e44e40c24144a0e615c6e5a2cab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target + value: + objectReference: {fileID: 397121045} + - target: {fileID: 8340117360286087174, guid: ecea1e44e40c24144a0e615c6e5a2cab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_Target + value: + objectReference: {fileID: 3301369820996697576} + - target: {fileID: 8340117360286087174, guid: ecea1e44e40c24144a0e615c6e5a2cab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[2].m_Target + value: + objectReference: {fileID: 1147697391} + - target: {fileID: 8340117360286087174, guid: ecea1e44e40c24144a0e615c6e5a2cab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName + value: ToggleBorder + objectReference: {fileID: 0} + - target: {fileID: 8340117360286087174, guid: ecea1e44e40c24144a0e615c6e5a2cab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName + value: ToggleActionState + objectReference: {fileID: 0} + - target: {fileID: 8340117360286087174, guid: ecea1e44e40c24144a0e615c6e5a2cab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[2].m_MethodName + value: ToggleBorder + objectReference: {fileID: 0} + - target: {fileID: 8340117360286087174, guid: ecea1e44e40c24144a0e615c6e5a2cab, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName + value: Vaultage.UI.BorderIconButton, Vaultage.UI + objectReference: {fileID: 0} + - target: {fileID: 8611756498887467681, guid: ecea1e44e40c24144a0e615c6e5a2cab, type: 3} + propertyPath: m_Pivot.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 8611756498887467681, guid: ecea1e44e40c24144a0e615c6e5a2cab, type: 3} + propertyPath: m_Pivot.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 8611756498887467681, guid: ecea1e44e40c24144a0e615c6e5a2cab, type: 3} + propertyPath: m_AnchorMax.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 8611756498887467681, guid: ecea1e44e40c24144a0e615c6e5a2cab, type: 3} + propertyPath: m_AnchorMax.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 8611756498887467681, guid: ecea1e44e40c24144a0e615c6e5a2cab, type: 3} + propertyPath: m_AnchorMin.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 8611756498887467681, guid: ecea1e44e40c24144a0e615c6e5a2cab, type: 3} + propertyPath: m_AnchorMin.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 8611756498887467681, guid: ecea1e44e40c24144a0e615c6e5a2cab, type: 3} + propertyPath: m_SizeDelta.x + value: 128 + objectReference: {fileID: 0} + - target: {fileID: 8611756498887467681, guid: ecea1e44e40c24144a0e615c6e5a2cab, type: 3} + propertyPath: m_SizeDelta.y + value: 128 + objectReference: {fileID: 0} + - target: {fileID: 8611756498887467681, guid: ecea1e44e40c24144a0e615c6e5a2cab, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8611756498887467681, guid: ecea1e44e40c24144a0e615c6e5a2cab, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8611756498887467681, guid: ecea1e44e40c24144a0e615c6e5a2cab, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8611756498887467681, guid: ecea1e44e40c24144a0e615c6e5a2cab, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 8611756498887467681, guid: ecea1e44e40c24144a0e615c6e5a2cab, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8611756498887467681, guid: ecea1e44e40c24144a0e615c6e5a2cab, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8611756498887467681, guid: ecea1e44e40c24144a0e615c6e5a2cab, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8611756498887467681, guid: ecea1e44e40c24144a0e615c6e5a2cab, type: 3} + propertyPath: m_AnchoredPosition.x + value: -60 + objectReference: {fileID: 0} + - target: {fileID: 8611756498887467681, guid: ecea1e44e40c24144a0e615c6e5a2cab, type: 3} + propertyPath: m_AnchoredPosition.y + value: -60 + objectReference: {fileID: 0} + - target: {fileID: 8611756498887467681, guid: ecea1e44e40c24144a0e615c6e5a2cab, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8611756498887467681, guid: ecea1e44e40c24144a0e615c6e5a2cab, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8611756498887467681, guid: ecea1e44e40c24144a0e615c6e5a2cab, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: ecea1e44e40c24144a0e615c6e5a2cab, type: 3} +--- !u!224 &397121044 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 8611756498887467681, guid: ecea1e44e40c24144a0e615c6e5a2cab, type: 3} + m_PrefabInstance: {fileID: 397121043} + m_PrefabAsset: {fileID: 0} +--- !u!114 &397121045 stripped +MonoBehaviour: + m_CorrespondingSourceObject: {fileID: 1697159713423530109, guid: ecea1e44e40c24144a0e615c6e5a2cab, type: 3} + m_PrefabInstance: {fileID: 397121043} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 0a9e5b66d3584df989d3a6387e271a33, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!1 &449014275 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 449014276} + - component: {fileID: 449014278} + - component: {fileID: 449014277} + - component: {fileID: 449014279} + m_Layer: 3 + m_Name: NonDirt + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &449014276 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 449014275} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 266447440} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!483693784 &449014277 +TilemapRenderer: + serializedVersion: 2 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 449014275} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 0 + m_ReflectionProbeUsage: 0 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 0 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 + m_SortingLayerID: -1403023199 + m_SortingLayer: 7 + m_SortingOrder: 0 + m_MaskInteraction: 0 + m_ChunkSize: {x: 32, y: 32, z: 32} + m_ChunkCullingBounds: {x: 0, y: 0, z: 0} + m_MaxChunkCount: 16 + m_MaxFrameAge: 16 + m_SortOrder: 0 + m_Mode: 0 + m_DetectChunkCullingBounds: 0 +--- !u!1839735485 &449014278 +Tilemap: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 449014275} + m_Enabled: 1 + m_Tiles: + - first: {x: -11, y: -5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 21 + m_TileSpriteIndex: 4294967295 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -18, y: 0, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 18 + m_TileSpriteIndex: 0 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -17, y: 0, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 18 + m_TileSpriteIndex: 0 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -16, y: 0, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 18 + m_TileSpriteIndex: 0 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -15, y: 0, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 18 + m_TileSpriteIndex: 0 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -14, y: 0, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 18 + m_TileSpriteIndex: 0 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -13, y: 0, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 18 + m_TileSpriteIndex: 0 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -12, y: 0, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 18 + m_TileSpriteIndex: 0 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -11, y: 0, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 18 + m_TileSpriteIndex: 0 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + m_AnimatedTiles: {} + m_TileAssetArray: + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 8 + m_Data: {fileID: 11400000, guid: 51b8bf751b16e1f429e1944aa2858f11, type: 2} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 1 + m_Data: {fileID: 11400000, guid: be7163bdc95762c47a23e9768e2311ab, type: 2} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + m_TileSpriteArray: + - m_RefCount: 8 + m_Data: {fileID: 436877273, guid: b55134515b03a0248b0080afcd749751, type: 3} + m_TileMatrixArray: + - m_RefCount: 9 + m_Data: + e00: 1 + e01: 0 + e02: 0 + e03: 0 + e10: 0 + e11: 1 + e12: 0 + e13: 0 + e20: 0 + e21: 0 + e22: 1 + e23: 0 + e30: 0 + e31: 0 + e32: 0 + e33: 1 + m_TileColorArray: + - m_RefCount: 9 + m_Data: {r: 1, g: 1, b: 1, a: 1} + m_TileObjectToInstantiateArray: + - m_RefCount: 8 + m_Data: {fileID: 4638520899282994429, guid: bc55a54b8c00f504b927b654cf1391e3, type: 3} + m_AnimationFrameRate: 1 + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_Origin: {x: -32, y: -31, z: 0} + m_Size: {x: 63, y: 52, z: 1} + m_TileAnchor: {x: 0.5, y: 0.5, z: 0} + m_TileOrientation: 0 + m_TileOrientationMatrix: + e00: 1 + e01: 0 + e02: 0 + e03: 0 + e10: 0 + e11: 1 + e12: 0 + e13: 0 + e20: 0 + e21: 0 + e22: 1 + e23: 0 + e30: 0 + e31: 0 + e32: 0 + e33: 1 +--- !u!19719996 &449014279 +TilemapCollider2D: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 449014275} + m_Enabled: 1 + serializedVersion: 3 + m_Density: 1 + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_ForceSendLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_ForceReceiveLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_ContactCaptureLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_CallbackLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_IsTrigger: 0 + m_UsedByEffector: 0 + m_CompositeOperation: 0 + m_CompositeOrder: 0 + m_Offset: {x: 0, y: 0} + m_MaximumTileChangeCount: 1000 + m_ExtrusionFactor: 0 + m_UseDelaunayMesh: 0 +--- !u!1 &457342795 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 457342797} + - component: {fileID: 457342796} + m_Layer: 0 + m_Name: Pathfinding + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &457342796 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 457342795} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 78396926cbbfc4ac3b48fc5fc34a87d1, type: 3} + m_Name: + m_EditorClassIdentifier: + version: 1073741824 + data: + dataString: UEsDBBQAAAgIAACYn+vOO02pXwEAAEkCAAALACQAZ3JhcGgwLmpzb24KACAAAAAAAAEAGAAAgD7V3rGdAQCAPtXesZ0BAIA+1d6xnQFdUdtuwjAM/ZUqzwMVWkrZMwxN2hji8gFu4rYWbVIlKaMg/n0JjMv2ZOvYPvY5PjGtlGWvwYktoEaXsA/cY7VUJO1cQ1Oyl4BtuuZS2kqy3UwWJLG/0SBNrnTtG+bb96lvyNJwAnGYTEahwGTIeyIZ5Ukcj9NUZGGWj9jZdRsEzcsNFG5EtlXloBoOUzIWJPeLBv3hyIEV1WSNPy5gBxdCh3W/8ehj4Nk0dByM12B1iw5oDQ6ny7IzxM0DtSXx3erem0Nl/sMrENT6kYGnRd5qQ3t8UNRgdtdr9lC1vpBeLlCNdZce8U3pdQPa4NW4+5x0etHYhRJ4E/npcm+Yx7yBRUviLzUTkUgHOODRJMpiLrIe4CQdJ1E4jnKeD7OYXZaT+wlBtUQJlb25oxqUT/t/P3t5anD/qtDwPadjrZ5cIpmrNdeI8utKcfPJoHZbnEgxE2SdULSWZOFH2enMzj9QSwMEFAAACAgAAJif66lhGMBtAAAAeAAAAAkAJABtZXRhLmpzb24KACAAAAAAAAEAGAAAgD7V3rGdAQCAPtXesZ0BAIA+1d6xnQGrVipLLSrOzM9TslIw1TPRM9NRUEovSizIKAYKGII4pZkpIHa0UopxioVhqmGysaVxkklySpJuYqqlhbmZsYG5cVpymlGSiVIsUH1JZUGqX2JuKkRPQGJJRlpmXkpmXrpeQH5mXok7yGyl2FoAUEsBAi0AFAAACAgAAJif6847TalfAQAASQIAAAsAJAAAAAAAAAAAAAAAAAAAAGdyYXBoMC5qc29uCgAgAAAAAAABABgAAIA+1d6xnQEAgD7V3rGdAQCAPtXesZ0BUEsBAi0AFAAACAgAAJif66lhGMBtAAAAeAAAAAkAJAAAAAAAAAAAAAAArAEAAG1ldGEuanNvbgoAIAAAAAAAAQAYAACAPtXesZ0BAIA+1d6xnQEAgD7V3rGdAVBLBQYAAAAAAgACALgAAABkAgAAAAA= + file_cachedStartup: {fileID: 0} + cacheStartup: 0 + showNavGraphs: 1 + showUnwalkableNodes: 1 + debugMode: 0 + graphUpdateDebugMode: 0 + debugFloor: 0 + debugRoof: 1 + manualDebugFloorRoof: 0 + showSearchTree: 0 + unwalkableNodeDebugSize: 0.3 + logPathResults: 0 + maxNearestNodeDistance: 100 + scanOnStartup: 1 + fullGetNearestSearch: 0 + prioritizeGraphs: 0 + prioritizeGraphsLimit: 1 + colorSettings: + _SolidColor: {r: 0.11764706, g: 0.4, b: 0.7882353, a: 0.9} + _UnwalkableNode: {r: 1, g: 0, b: 0, a: 0.5} + _BoundsHandles: {r: 0.29, g: 0.454, b: 0.741, a: 0.9} + _ConnectionLowLerp: {r: 0, g: 1, b: 0, a: 0.5} + _ConnectionHighLerp: {r: 1, g: 0, b: 0, a: 0.5} + _AreaColors: [] + tagNames: [] + heuristic: 2 + heuristicScale: 1 + threadCount: 1 + maxFrameTime: 10 + batchGraphUpdates: 0 + graphUpdateBatchingInterval: 0.2 + navmeshUpdates: + updateInterval: 0 + euclideanEmbedding: + mode: 0 + seed: 0 + pivotPointRoot: {fileID: 0} + spreadOutCount: 1 + showGraphs: 1 + showGraphsInStandalonePlayer: 0 +--- !u!4 &457342797 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 457342795} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1001 &548822088 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: -1716117421633299209, guid: abc97ef53ac39b645a1bd75a4c3f0f69, type: 3} + propertyPath: m_Intensity + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4651519948885318994, guid: abc97ef53ac39b645a1bd75a4c3f0f69, type: 3} + propertyPath: m_Name + value: Torch_2 + objectReference: {fileID: 0} + - target: {fileID: 5101714354512762368, guid: abc97ef53ac39b645a1bd75a4c3f0f69, type: 3} + propertyPath: m_LocalPosition.x + value: 17.193058 + objectReference: {fileID: 0} + - target: {fileID: 5101714354512762368, guid: abc97ef53ac39b645a1bd75a4c3f0f69, type: 3} + propertyPath: m_LocalPosition.y + value: -3.924368 + objectReference: {fileID: 0} + - target: {fileID: 5101714354512762368, guid: abc97ef53ac39b645a1bd75a4c3f0f69, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5101714354512762368, guid: abc97ef53ac39b645a1bd75a4c3f0f69, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 5101714354512762368, guid: abc97ef53ac39b645a1bd75a4c3f0f69, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5101714354512762368, guid: abc97ef53ac39b645a1bd75a4c3f0f69, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5101714354512762368, guid: abc97ef53ac39b645a1bd75a4c3f0f69, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5101714354512762368, guid: abc97ef53ac39b645a1bd75a4c3f0f69, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5101714354512762368, guid: abc97ef53ac39b645a1bd75a4c3f0f69, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5101714354512762368, guid: abc97ef53ac39b645a1bd75a4c3f0f69, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: abc97ef53ac39b645a1bd75a4c3f0f69, type: 3} +--- !u!4 &664961890 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 7878437034774183674, guid: a117f8050f8f79f47a9774080e66d761, type: 3} + m_PrefabInstance: {fileID: 8306559787363745896} + m_PrefabAsset: {fileID: 0} +--- !u!1 &814935199 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 814935200} + - component: {fileID: 814935201} + - component: {fileID: 814935203} + m_Layer: 5 + m_Name: IsPathGood + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &814935200 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 814935199} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 870422820} + m_Father: {fileID: 1692770168} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 1, y: 1} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: -124, y: -425} + m_SizeDelta: {x: 100, y: 100} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &814935201 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 814935199} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4caa1ef961c5455c8ad719cdef97df4c, type: 3} + m_Name: + m_EditorClassIdentifier: + image: {fileID: 870422824} + button: {fileID: 870422821} +--- !u!222 &814935203 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 814935199} + m_CullTransparentMesh: 1 +--- !u!1 &870422819 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 870422820} + - component: {fileID: 870422823} + - component: {fileID: 870422824} + - component: {fileID: 870422821} + m_Layer: 5 + m_Name: Button + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &870422820 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 870422819} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 814935200} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 100, y: 100} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &870422821 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 870422819} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_WrapAround: 0 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 1 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: 1, g: 1, b: 1, a: 1} + m_PressedColor: {r: 1, g: 1, b: 1, a: 1} + m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_DisabledColor: {r: 1, g: 1, b: 1, a: 1} + m_ColorMultiplier: 1 + m_FadeDuration: 0.1 + m_SpriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_SelectedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_SelectedTrigger: Selected + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 870422824} + m_OnClick: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 3301369820996697576} + m_TargetAssemblyTypeName: Vaultage.Levels.TileManager, Vaultage.Levels + m_MethodName: ToggleLevelState + m_Mode: 3 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 2 + m_FloatArgument: 0 + m_StringArgument: + m_BoolArgument: 0 + m_CallState: 2 +--- !u!222 &870422823 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 870422819} + m_CullTransparentMesh: 1 +--- !u!114 &870422824 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 870422819} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: -1349505029, guid: 8c244b309e25b8848b78b013fd8178fd, type: 3} + m_Type: 0 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!114 &935621872 stripped +MonoBehaviour: + m_CorrespondingSourceObject: {fileID: 3338150467382200485, guid: aa572251628ba4d4baa01cd838b9fc76, type: 3} + m_PrefabInstance: {fileID: 95090002} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 0a9e5b66d3584df989d3a6387e271a33, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!1 &1010954533 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1010954534} + - component: {fileID: 1010954536} + - component: {fileID: 1010954535} + - component: {fileID: 1010954537} + - component: {fileID: 1010954539} + - component: {fileID: 1010954538} + m_Layer: 3 + m_Name: Dirt + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1010954534 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1010954533} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 266447440} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!483693784 &1010954535 +TilemapRenderer: + serializedVersion: 2 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1010954533} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 0 + m_ReflectionProbeUsage: 0 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 0 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 + m_SortingLayerID: -1721124277 + m_SortingLayer: 6 + m_SortingOrder: 0 + m_MaskInteraction: 0 + m_ChunkSize: {x: 32, y: 32, z: 32} + m_ChunkCullingBounds: {x: 0, y: 0, z: 0} + m_MaxChunkCount: 16 + m_MaxFrameAge: 16 + m_SortOrder: 0 + m_Mode: 0 + m_DetectChunkCullingBounds: 0 +--- !u!1839735485 &1010954536 +Tilemap: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1010954533} + m_Enabled: 1 + m_Tiles: + - first: {x: -22, y: -10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 34 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -21, y: -10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -20, y: -10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -19, y: -10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -18, y: -10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -17, y: -10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -16, y: -10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -15, y: -10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -14, y: -10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -13, y: -10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -12, y: -10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -11, y: -10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -10, y: -10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -9, y: -10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -8, y: -10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -7, y: -10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -6, y: -10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -5, y: -10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -4, y: -10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -3, y: -10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -2, y: -10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -1, y: -10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 0, y: -10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 1, y: -10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 2, y: -10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 3, y: -10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 4, y: -10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 5, y: -10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 6, y: -10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 7, y: -10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 8, y: -10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 9, y: -10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 10, y: -10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 11, y: -10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 12, y: -10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 13, y: -10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 14, y: -10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 15, y: -10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 16, y: -10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 17, y: -10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 18, y: -10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 19, y: -10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 20, y: -10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 21, y: -10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 22, y: -10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 23, y: -10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 24, y: -10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 25, y: -10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 26, y: -10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 30 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -22, y: -9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 32 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -21, y: -9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -20, y: -9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -19, y: -9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -18, y: -9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -17, y: -9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -16, y: -9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -15, y: -9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -14, y: -9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -13, y: -9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -12, y: -9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -11, y: -9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -10, y: -9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -9, y: -9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -8, y: -9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -7, y: -9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -6, y: -9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -5, y: -9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -4, y: -9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -3, y: -9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -2, y: -9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -1, y: -9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 0, y: -9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 1, y: -9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 2, y: -9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 3, y: -9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 4, y: -9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 5, y: -9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 6, y: -9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 7, y: -9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 8, y: -9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 9, y: -9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 10, y: -9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 11, y: -9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 12, y: -9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 13, y: -9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 14, y: -9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 15, y: -9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 16, y: -9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 17, y: -9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 18, y: -9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 19, y: -9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 20, y: -9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 21, y: -9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 22, y: -9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 23, y: -9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 24, y: -9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 25, y: -9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 26, y: -9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 29 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -22, y: -8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 32 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -21, y: -8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -20, y: -8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -19, y: -8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -18, y: -8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -17, y: -8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -16, y: -8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -15, y: -8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -14, y: -8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -13, y: -8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -12, y: -8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -11, y: -8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -10, y: -8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -9, y: -8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -8, y: -8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -7, y: -8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -6, y: -8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -5, y: -8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -4, y: -8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -3, y: -8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -2, y: -8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -1, y: -8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 0, y: -8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 1, y: -8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 2, y: -8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 3, y: -8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 4, y: -8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 5, y: -8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 6, y: -8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 7, y: -8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 8, y: -8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 9, y: -8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 10, y: -8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 11, y: -8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 12, y: -8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 13, y: -8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 14, y: -8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 15, y: -8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 16, y: -8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 17, y: -8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 18, y: -8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 19, y: -8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 20, y: -8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 21, y: -8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 22, y: -8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 23, y: -8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 24, y: -8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 25, y: -8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 26, y: -8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 29 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -22, y: -7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 32 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -21, y: -7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -20, y: -7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -19, y: -7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -18, y: -7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -17, y: -7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -16, y: -7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -15, y: -7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -14, y: -7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -13, y: -7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -12, y: -7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -11, y: -7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -10, y: -7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -9, y: -7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -8, y: -7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -7, y: -7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -6, y: -7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -5, y: -7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -4, y: -7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -3, y: -7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -2, y: -7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -1, y: -7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 0, y: -7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 1, y: -7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 2, y: -7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 3, y: -7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 4, y: -7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 5, y: -7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 6, y: -7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 7, y: -7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 8, y: -7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 9, y: -7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 10, y: -7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 11, y: -7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 12, y: -7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 13, y: -7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 14, y: -7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 15, y: -7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 16, y: -7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 17, y: -7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 18, y: -7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 19, y: -7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 20, y: -7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 21, y: -7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 22, y: -7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 23, y: -7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 24, y: -7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 25, y: -7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 26, y: -7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 29 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -22, y: -6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 32 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -21, y: -6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -20, y: -6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -19, y: -6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -18, y: -6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -17, y: -6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -16, y: -6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -15, y: -6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -14, y: -6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -13, y: -6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -12, y: -6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -11, y: -6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -10, y: -6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -9, y: -6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -8, y: -6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -7, y: -6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -6, y: -6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -5, y: -6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 16 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -4, y: -6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -3, y: -6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 23 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -2, y: -6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -1, y: -6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 0, y: -6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 23 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 1, y: -6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 2, y: -6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 3, y: -6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 4, y: -6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 5, y: -6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 6, y: -6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 7, y: -6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 8, y: -6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 9, y: -6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 10, y: -6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 11, y: -6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 12, y: -6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 13, y: -6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 14, y: -6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 15, y: -6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 16, y: -6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 17, y: -6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 18, y: -6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 19, y: -6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 20, y: -6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 21, y: -6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 22, y: -6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 23, y: -6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 24, y: -6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 23 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 25, y: -6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 26, y: -6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 29 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -22, y: -5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 32 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -21, y: -5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -20, y: -5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -19, y: -5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -18, y: -5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -17, y: -5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -16, y: -5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -15, y: -5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -14, y: -5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -13, y: -5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -12, y: -5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -11, y: -5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -10, y: -5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -9, y: -5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -8, y: -5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -7, y: -5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -6, y: -5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 16 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -5, y: -5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 22 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -3, y: -5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 20 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 0, y: -5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 20 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 24, y: -5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 32 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 25, y: -5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 26, y: -5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 29 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -22, y: -4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 32 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -21, y: -4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -20, y: -4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -19, y: -4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -18, y: -4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -17, y: -4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -16, y: -4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -15, y: -4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -14, y: -4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -13, y: -4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -12, y: -4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -11, y: -4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -10, y: -4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -9, y: -4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -8, y: -4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -7, y: -4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 16 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -6, y: -4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 22 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -3, y: -4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 20 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 0, y: -4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 20 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 24, y: -4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 32 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 25, y: -4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 26, y: -4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 29 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -22, y: -3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 32 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -21, y: -3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -20, y: -3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -19, y: -3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -18, y: -3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -17, y: -3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -16, y: -3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -15, y: -3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -14, y: -3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -13, y: -3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -12, y: -3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -11, y: -3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -10, y: -3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -9, y: -3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -8, y: -3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 16 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -7, y: -3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 22 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -3, y: -3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 20 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 0, y: -3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 20 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 24, y: -3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 32 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 25, y: -3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 26, y: -3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 29 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -22, y: -2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 32 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -21, y: -2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -20, y: -2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -19, y: -2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -18, y: -2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -17, y: -2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -16, y: -2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -15, y: -2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -14, y: -2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -13, y: -2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -12, y: -2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -11, y: -2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -10, y: -2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -9, y: -2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 16 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -8, y: -2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 22 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -3, y: -2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 20 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -1, y: -2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 19 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 0, y: -2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 22 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 24, y: -2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 32 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 25, y: -2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 26, y: -2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 29 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -22, y: -1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 32 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -21, y: -1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -20, y: -1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -19, y: -1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 16 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -18, y: -1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -17, y: -1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -16, y: -1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -15, y: -1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -14, y: -1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -13, y: -1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -12, y: -1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -11, y: -1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -10, y: -1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -9, y: -1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 22 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -3, y: -1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 20 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 24, y: -1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 32 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 25, y: -1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 26, y: -1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 29 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -22, y: 0, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 32 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -21, y: 0, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -20, y: 0, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -19, y: 0, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 29 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -5, y: 0, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 18 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -3, y: 0, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 20 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -1, y: 0, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 34 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 0, y: 0, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 21 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 24, y: 0, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 32 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 25, y: 0, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 26, y: 0, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 29 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -22, y: 1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 32 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -21, y: 1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -20, y: 1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -19, y: 1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 29 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -7, y: 1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 34 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -6, y: 1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -5, y: 1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 29 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -3, y: 1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 20 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -1, y: 1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 20 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 24, y: 1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 32 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 25, y: 1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 26, y: 1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 29 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -22, y: 2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 32 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -21, y: 2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -20, y: 2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -19, y: 2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 29 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -7, y: 2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 32 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -6, y: 2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -5, y: 2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 29 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -3, y: 2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 20 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -1, y: 2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 24 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 0, y: 2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 30 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 24, y: 2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 32 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 25, y: 2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 26, y: 2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 29 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -22, y: 3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 32 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -21, y: 3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -20, y: 3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -19, y: 3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 29 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -7, y: 3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 24 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -6, y: 3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 23 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -5, y: 3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 29 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -3, y: 3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 20 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 0, y: 3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 20 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 24, y: 3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 32 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 25, y: 3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 26, y: 3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 29 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -22, y: 4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 32 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -21, y: 4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -20, y: 4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -19, y: 4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 29 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -6, y: 4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 32 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -5, y: 4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 29 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -3, y: 4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 24 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -2, y: 4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 21 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 0, y: 4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 20 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 24, y: 4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 32 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 25, y: 4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 26, y: 4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 29 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -22, y: 5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 32 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -21, y: 5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -20, y: 5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -19, y: 5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 29 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -6, y: 5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 24 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -5, y: 5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 22 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 0, y: 5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 20 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 24, y: 5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 32 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 25, y: 5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 26, y: 5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 29 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -22, y: 6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 32 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -21, y: 6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -20, y: 6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -19, y: 6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 29 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 0, y: 6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 20 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 24, y: 6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 32 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 25, y: 6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 26, y: 6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 29 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -22, y: 7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 32 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -21, y: 7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -20, y: 7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -19, y: 7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 28 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -18, y: 7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -17, y: 7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -16, y: 7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -15, y: 7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -14, y: 7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -13, y: 7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -12, y: 7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -11, y: 7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -10, y: 7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -9, y: 7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -8, y: 7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -7, y: 7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -6, y: 7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -5, y: 7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -4, y: 7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -3, y: 7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -2, y: 7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -1, y: 7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 0, y: 7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 28 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 1, y: 7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 2, y: 7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 3, y: 7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 4, y: 7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 5, y: 7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 6, y: 7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 7, y: 7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 8, y: 7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 9, y: 7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 10, y: 7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 11, y: 7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 12, y: 7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 13, y: 7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 14, y: 7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 15, y: 7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 16, y: 7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 17, y: 7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 18, y: 7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 19, y: 7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 20, y: 7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 21, y: 7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 22, y: 7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 23, y: 7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 33 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 24, y: 7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 27 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 25, y: 7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 26, y: 7, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 29 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -22, y: 8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 32 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -21, y: 8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -20, y: 8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -19, y: 8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -18, y: 8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -17, y: 8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -16, y: 8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -15, y: 8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -14, y: 8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -13, y: 8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -12, y: 8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -11, y: 8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -10, y: 8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -9, y: 8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -8, y: 8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -7, y: 8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -6, y: 8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -5, y: 8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -4, y: 8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -3, y: 8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -2, y: 8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -1, y: 8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 0, y: 8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 1, y: 8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 2, y: 8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 3, y: 8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 4, y: 8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 5, y: 8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 6, y: 8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 7, y: 8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 8, y: 8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 9, y: 8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 10, y: 8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 11, y: 8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 12, y: 8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 13, y: 8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 14, y: 8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 15, y: 8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 16, y: 8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 17, y: 8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 18, y: 8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 19, y: 8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 20, y: 8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 21, y: 8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 22, y: 8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 23, y: 8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 24, y: 8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 25, y: 8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 26, y: 8, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 29 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -22, y: 9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 32 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -21, y: 9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -20, y: 9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -19, y: 9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -18, y: 9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -17, y: 9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -16, y: 9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -15, y: 9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -14, y: 9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -13, y: 9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -12, y: 9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -11, y: 9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -10, y: 9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -9, y: 9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -8, y: 9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -7, y: 9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -6, y: 9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -5, y: 9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -4, y: 9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -3, y: 9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -2, y: 9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -1, y: 9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 0, y: 9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 1, y: 9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 2, y: 9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 3, y: 9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 4, y: 9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 5, y: 9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 6, y: 9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 7, y: 9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 8, y: 9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 9, y: 9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 10, y: 9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 11, y: 9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 12, y: 9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 13, y: 9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 14, y: 9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 15, y: 9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 16, y: 9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 17, y: 9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 18, y: 9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 19, y: 9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 20, y: 9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 21, y: 9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 22, y: 9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 23, y: 9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 24, y: 9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 25, y: 9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 31 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 26, y: 9, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 29 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -22, y: 10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 24 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -21, y: 10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -20, y: 10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -19, y: 10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -18, y: 10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -17, y: 10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -16, y: 10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -15, y: 10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -14, y: 10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -13, y: 10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -12, y: 10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -11, y: 10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -10, y: 10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -9, y: 10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -8, y: 10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -7, y: 10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -6, y: 10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -5, y: 10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -4, y: 10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -3, y: 10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -2, y: 10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: -1, y: 10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 0, y: 10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 1, y: 10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 2, y: 10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 3, y: 10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 4, y: 10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 5, y: 10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 6, y: 10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 7, y: 10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 8, y: 10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 9, y: 10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 10, y: 10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 11, y: 10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 12, y: 10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 13, y: 10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 14, y: 10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 15, y: 10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 16, y: 10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 17, y: 10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 18, y: 10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 19, y: 10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 20, y: 10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 21, y: 10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 22, y: 10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 23, y: 10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 24, y: 10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 25, y: 10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 25 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + - first: {x: 26, y: 10, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 34 + m_TileSpriteIndex: 22 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 0 + dummyAlignment: 0 + m_AllTileFlags: 1073741826 + m_AnimatedTiles: {} + m_TileAssetArray: + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 624 + m_Data: {fileID: 11400000, guid: c0c95385692760d488e5741070857a7d, type: 2} + m_TileSpriteArray: + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 6 + m_Data: {fileID: -891081787949516477, guid: 88c8d3ae10fef864595d9f528d656d71, type: 3} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 1 + m_Data: {fileID: -606866937, guid: 88c8d3ae10fef864595d9f528d656d71, type: 3} + - m_RefCount: 1 + m_Data: {fileID: -253113927, guid: 88c8d3ae10fef864595d9f528d656d71, type: 3} + - m_RefCount: 17 + m_Data: {fileID: 1171527534, guid: 88c8d3ae10fef864595d9f528d656d71, type: 3} + - m_RefCount: 2 + m_Data: {fileID: 1624453463, guid: 88c8d3ae10fef864595d9f528d656d71, type: 3} + - m_RefCount: 8 + m_Data: {fileID: 7519212684182835306, guid: 88c8d3ae10fef864595d9f528d656d71, type: 3} + - m_RefCount: 4 + m_Data: {fileID: -5463713774021811853, guid: 88c8d3ae10fef864595d9f528d656d71, type: 3} + - m_RefCount: 5 + m_Data: {fileID: -150090512748786058, guid: 88c8d3ae10fef864595d9f528d656d71, type: 3} + - m_RefCount: 82 + m_Data: {fileID: 8317132526258472064, guid: 88c8d3ae10fef864595d9f528d656d71, type: 3} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 1 + m_Data: {fileID: 1894256167, guid: 88c8d3ae10fef864595d9f528d656d71, type: 3} + - m_RefCount: 2 + m_Data: {fileID: 1171350227, guid: 88c8d3ae10fef864595d9f528d656d71, type: 3} + - m_RefCount: 30 + m_Data: {fileID: -507516478, guid: 88c8d3ae10fef864595d9f528d656d71, type: 3} + - m_RefCount: 2 + m_Data: {fileID: 1052176056, guid: 88c8d3ae10fef864595d9f528d656d71, type: 3} + - m_RefCount: 338 + m_Data: {fileID: 690055542701915167, guid: 88c8d3ae10fef864595d9f528d656d71, type: 3} + - m_RefCount: 33 + m_Data: {fileID: -95544307, guid: 88c8d3ae10fef864595d9f528d656d71, type: 3} + - m_RefCount: 89 + m_Data: {fileID: -1745323935, guid: 88c8d3ae10fef864595d9f528d656d71, type: 3} + - m_RefCount: 3 + m_Data: {fileID: -143382035, guid: 88c8d3ae10fef864595d9f528d656d71, type: 3} + m_TileMatrixArray: + - m_RefCount: 624 + m_Data: + e00: 1 + e01: 0 + e02: 0 + e03: 0 + e10: 0 + e11: 1 + e12: 0 + e13: 0 + e20: 0 + e21: 0 + e22: 1 + e23: 0 + e30: 0 + e31: 0 + e32: 0 + e33: 1 + - m_RefCount: 0 + m_Data: + e00: 0 + e01: 0 + e02: 0 + e03: -1.617134e-19 + e10: 0 + e11: 0 + e12: 0 + e13: 1.8e-44 + e20: 0 + e21: 0 + e22: 0 + e23: 0 + e30: 0 + e31: 0 + e32: 0 + e33: 0 + - m_RefCount: 0 + m_Data: + e00: 0 + e01: 0 + e02: 0 + e03: -1.617134e-19 + e10: 0 + e11: 0 + e12: 0 + e13: 1.8e-44 + e20: 0 + e21: 0 + e22: 0 + e23: 0 + e30: 0 + e31: 0 + e32: 0 + e33: 0 + - m_RefCount: 0 + m_Data: + e00: 0 + e01: 0 + e02: 0 + e03: -1.617134e-19 + e10: 0 + e11: 0 + e12: 0 + e13: 1.8e-44 + e20: 0 + e21: 0 + e22: 0 + e23: 0 + e30: 0 + e31: 0 + e32: 0 + e33: 0 + m_TileColorArray: + - m_RefCount: 624 + m_Data: {r: 1, g: 1, b: 1, a: 1} + m_TileObjectToInstantiateArray: + - m_RefCount: 624 + m_Data: {fileID: 8169234169501898198, guid: 99bd36c25b7e1a742b42315173187bc8, type: 3} + m_AnimationFrameRate: 1 + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_Origin: {x: -32, y: -48, z: 0} + m_Size: {x: 75, y: 75, z: 1} + m_TileAnchor: {x: 0.5, y: 0.5, z: 0} + m_TileOrientation: 0 + m_TileOrientationMatrix: + e00: 1 + e01: 0 + e02: 0 + e03: 0 + e10: 0 + e11: 1 + e12: 0 + e13: 0 + e20: 0 + e21: 0 + e22: 1 + e23: 0 + e30: 0 + e31: 0 + e32: 0 + e33: 1 +--- !u!19719996 &1010954537 +TilemapCollider2D: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1010954533} + m_Enabled: 1 + serializedVersion: 3 + m_Density: 1 + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_ForceSendLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_ForceReceiveLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_ContactCaptureLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_CallbackLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_IsTrigger: 0 + m_UsedByEffector: 0 + m_CompositeOperation: 1 + m_CompositeOrder: 0 + m_Offset: {x: 0, y: 0} + m_MaximumTileChangeCount: 1000 + m_ExtrusionFactor: 0 + m_UseDelaunayMesh: 0 +--- !u!66 &1010954538 +CompositeCollider2D: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1010954533} + m_Enabled: 1 + serializedVersion: 3 + m_Density: 1 + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_ForceSendLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_ForceReceiveLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_ContactCaptureLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_CallbackLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_IsTrigger: 0 + m_UsedByEffector: 0 + m_CompositeOperation: 0 + m_CompositeOrder: 0 + m_Offset: {x: 0, y: 0} + m_GeometryType: 0 + m_GenerationType: 0 + m_EdgeRadius: 0 + m_ColliderPaths: + - m_Collider: {fileID: 1010954537} + m_ColliderPaths: + - - X: 270000000 + Y: -98125000 + - X: 270000000 + Y: 108125000 + - X: 268124992 + Y: 110000000 + - X: -218750000 + Y: 110000000 + - X: -220000000 + Y: 108750000 + - X: -220000000 + Y: -98125000 + - X: -218124992 + Y: -100000000 + - X: 268124992 + Y: -100000000 + - - X: -40000000 + Y: -50000000 + - X: -40000000 + Y: -41875000 + - X: -41875000 + Y: -40000000 + - X: -50000000 + Y: -40000000 + - X: -50000000 + Y: -31875000 + - X: -51875000 + Y: -30000000 + - X: -60000000 + Y: -30000000 + - X: -60000000 + Y: -21875000 + - X: -61875000 + Y: -20000000 + - X: -70000000 + Y: -20000000 + - X: -70000000 + Y: -11875000 + - X: -71875000 + Y: -10000000 + - X: -80000000 + Y: -10000000 + - X: -80000000 + Y: -1875000 + - X: -81875000 + Y: 0 + - X: -180000000 + Y: 0 + - X: -180000000 + Y: 70000000 + - X: 0 + Y: 70000000 + - X: 0 + Y: 30000000 + - X: -8750000 + Y: 30000000 + - X: -10000000 + Y: 28750000 + - X: -10000000 + Y: 1875000 + - X: -8125000 + Y: 0 + - X: 8125000 + Y: 0 + - X: 10000000 + Y: 1875000 + - X: 10000000 + Y: 8750000 + - X: 8750000 + Y: 10000000 + - X: 0 + Y: 10000000 + - X: 0 + Y: 20000000 + - X: 8125000 + Y: 20000000 + - X: 10000000 + Y: 21875000 + - X: 10000000 + Y: 70000000 + - X: 240000000 + Y: 70000000 + - X: 240000000 + Y: -50000000 + - X: 10000000 + Y: -50000000 + - X: 10000000 + Y: -11875000 + - X: 8125000 + Y: -10000000 + - X: -8750000 + Y: -10000000 + - X: -10000000 + Y: -11250000 + - X: -10000000 + Y: -18125000 + - X: -8125000 + Y: -20000000 + - X: 0 + Y: -20000000 + - X: 0 + Y: -50000000 + - X: -20000000 + Y: -50000000 + - X: -20000000 + Y: 40000000 + - X: -11875000 + Y: 40000000 + - X: -10000000 + Y: 41875000 + - X: -10000000 + Y: 48750000 + - X: -11250000 + Y: 50000000 + - X: -28750000 + Y: 50000000 + - X: -30000000 + Y: 48750000 + - X: -30000000 + Y: -50000000 + - - X: -40000000 + Y: 1875000 + - X: -40000000 + Y: 58125000 + - X: -41875000 + Y: 60000000 + - X: -58750000 + Y: 60000000 + - X: -60000000 + Y: 58750000 + - X: -60000000 + Y: 40000000 + - X: -68750000 + Y: 40000000 + - X: -70000000 + Y: 38750000 + - X: -70000000 + Y: 11875000 + - X: -68125000 + Y: 10000000 + - X: -50000000 + Y: 10000000 + - X: -50000000 + Y: 1875000 + - X: -48125000 + Y: 0 + - X: -41875000 + Y: 0 + m_CompositePaths: + m_Paths: + - - {x: 26.812489, y: -10} + - {x: 27, y: -9.8124895} + - {x: 26.999994, y: 10.812508} + - {x: 26.812489, y: 11} + - {x: -21.875008, y: 10.999992} + - {x: -22, y: 10.874989} + - {x: -21.999992, y: -9.812508} + - {x: -21.812489, y: -10} + - - {x: 24, y: -4.9999704} + - {x: 1, y: -4.9999704} + - {x: 0.99999243, y: -1.1874924} + - {x: 0.8124892, y: -1} + - {x: -0.8750076, y: -1.0000076} + - {x: -1, y: -1.1250108} + - {x: -0.99999243, y: -1.8125076} + - {x: -0.8124892, y: -2} + - {x: 0, y: -2.0000293} + - {x: -0.0000294, y: -5} + - {x: -2, y: -4.9999704} + - {x: -1.9999707, y: 4} + - {x: -1.1874924, y: 4.0000076} + - {x: -1, y: 4.187511} + - {x: -1.0000076, y: 4.8750076} + - {x: -1.1250108, y: 5} + - {x: -2.8750076, y: 4.9999924} + - {x: -3, y: 4.874989} + - {x: -3.0000293, y: -5} + - {x: -4, y: -4.9999704} + - {x: -4.0000076, y: -4.1874924} + - {x: -4.187511, y: -4} + - {x: -5, y: -3.9999704} + - {x: -5.0000076, y: -3.1874924} + - {x: -5.187511, y: -3} + - {x: -6, y: -2.9999707} + - {x: -6.0000076, y: -2.1874924} + - {x: -6.187511, y: -2} + - {x: -7, y: -1.9999707} + - {x: -7.000008, y: -1.1874924} + - {x: -7.1875105, y: -1} + - {x: -8, y: -0.9999706} + - {x: -8.000008, y: -0.1874924} + - {x: -8.1875105, y: 0} + - {x: -18, y: 0.0000294} + - {x: -17.999971, y: 7} + - {x: 0, y: 6.9999704} + - {x: -0.0000294, y: 3} + - {x: -0.8750076, y: 2.9999924} + - {x: -1, y: 2.8749893} + - {x: -0.99999243, y: 0.1874924} + - {x: -0.8124892, y: 0} + - {x: 0.8125076, y: 0.0000076} + - {x: 1, y: 0.1875108} + - {x: 0.99999243, y: 0.8750076} + - {x: 0.8749892, y: 1} + - {x: 0, y: 1.0000294} + - {x: 0.0000294, y: 2} + - {x: 0.8125076, y: 2.0000076} + - {x: 1, y: 2.1875107} + - {x: 1.0000294, y: 7} + - {x: 24, y: 6.9999704} + - - {x: -4.187511, y: 0} + - {x: -4, y: 0.1875108} + - {x: -4.0000076, y: 5.8125076} + - {x: -4.187511, y: 6} + - {x: -5.8750076, y: 5.9999924} + - {x: -6, y: 5.874989} + - {x: -6.0000296, y: 4} + - {x: -6.875008, y: 3.9999924} + - {x: -7, y: 3.8749893} + - {x: -6.999992, y: 1.1874924} + - {x: -6.8124895, y: 1} + - {x: -5, y: 0.9999706} + - {x: -4.9999924, y: 0.1874924} + - {x: -4.812489, y: 0} + m_VertexDistance: 0.0005 + m_OffsetDistance: 0.00005 + m_UseDelaunayMesh: 0 + m_CompositeGameObject: {fileID: 1010954533} +--- !u!50 &1010954539 +Rigidbody2D: + serializedVersion: 5 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1010954533} + m_BodyType: 2 + m_Simulated: 1 + m_UseFullKinematicContacts: 0 + m_UseAutoMass: 0 + m_Mass: 1 + m_LinearDamping: 0 + m_AngularDamping: 0.05 + m_GravityScale: 1 + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_Interpolate: 0 + m_SleepingMode: 1 + m_CollisionDetection: 0 + m_Constraints: 0 +--- !u!1 &1046793730 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1046793731} + - component: {fileID: 1046793733} + - component: {fileID: 1046793732} + m_Layer: 5 + m_Name: BorderInner + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1046793731 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1046793730} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1147697390} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.01, y: 0.01} + m_AnchorMax: {x: 0.99, y: 0.99} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &1046793732 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1046793730} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 2100000, guid: fa6c80aba121fcf41849642b7d7be986, type: 2} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 0 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 0 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 0} + m_Type: 1 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!222 &1046793733 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1046793730} + m_CullTransparentMesh: 1 +--- !u!1 &1062059269 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1062059270} + - component: {fileID: 1062059272} + - component: {fileID: 1062059271} + m_Layer: 0 + m_Name: BackgroundB + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1062059270 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1062059269} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: -0.02, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 266447440} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!483693784 &1062059271 +TilemapRenderer: + serializedVersion: 2 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1062059269} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 0 + m_ReflectionProbeUsage: 0 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 0 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 + m_SortingLayerID: 2004814055 + m_SortingLayer: 1 + m_SortingOrder: 0 + m_MaskInteraction: 0 + m_ChunkSize: {x: 32, y: 32, z: 32} + m_ChunkCullingBounds: {x: 0, y: 0, z: 0} + m_MaxChunkCount: 16 + m_MaxFrameAge: 16 + m_SortOrder: 0 + m_Mode: 0 + m_DetectChunkCullingBounds: 0 +--- !u!1839735485 &1062059272 +Tilemap: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1062059269} + m_Enabled: 1 + m_Tiles: + - first: {x: -10, y: -5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -9, y: -5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -8, y: -5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -7, y: -5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -6, y: -5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -5, y: -5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -4, y: -5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -3, y: -5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -2, y: -5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -1, y: -5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 0, y: -5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 1, y: -5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 2, y: -5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 3, y: -5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 4, y: -5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 5, y: -5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 6, y: -5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 7, y: -5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 8, y: -5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 9, y: -5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 10, y: -5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 11, y: -5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 12, y: -5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 13, y: -5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 14, y: -5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 15, y: -5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 16, y: -5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 17, y: -5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 18, y: -5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 19, y: -5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 20, y: -5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 21, y: -5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 22, y: -5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 23, y: -5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -10, y: -4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -9, y: -4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -8, y: -4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -7, y: -4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -6, y: -4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -5, y: -4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -4, y: -4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -3, y: -4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -2, y: -4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -1, y: -4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 0, y: -4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 1, y: -4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 2, y: -4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 3, y: -4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 4, y: -4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 5, y: -4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 6, y: -4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 7, y: -4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 8, y: -4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 9, y: -4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 10, y: -4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 11, y: -4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 12, y: -4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 13, y: -4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 14, y: -4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 15, y: -4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 16, y: -4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 17, y: -4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 18, y: -4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 19, y: -4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 20, y: -4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 21, y: -4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 22, y: -4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 23, y: -4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -10, y: -3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -9, y: -3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -8, y: -3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -7, y: -3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -6, y: -3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -5, y: -3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -4, y: -3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -3, y: -3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -2, y: -3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -1, y: -3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 0, y: -3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 1, y: -3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 2, y: -3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 3, y: -3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 4, y: -3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 5, y: -3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 6, y: -3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 7, y: -3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 8, y: -3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 9, y: -3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 10, y: -3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 11, y: -3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 12, y: -3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 13, y: -3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 14, y: -3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 15, y: -3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 16, y: -3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 17, y: -3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 18, y: -3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 19, y: -3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 20, y: -3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 21, y: -3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 22, y: -3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 23, y: -3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 24, y: -3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -10, y: -2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -9, y: -2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -8, y: -2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -7, y: -2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -6, y: -2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -5, y: -2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -4, y: -2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -3, y: -2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -2, y: -2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -1, y: -2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 0, y: -2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 1, y: -2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 2, y: -2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 3, y: -2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 4, y: -2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 5, y: -2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 6, y: -2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 7, y: -2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 8, y: -2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 9, y: -2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 10, y: -2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 11, y: -2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 12, y: -2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 13, y: -2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 14, y: -2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 15, y: -2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 16, y: -2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 17, y: -2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 18, y: -2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 19, y: -2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 20, y: -2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 21, y: -2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 22, y: -2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 23, y: -2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 24, y: -2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -10, y: -1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -9, y: -1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -8, y: -1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -7, y: -1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -6, y: -1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -5, y: -1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -4, y: -1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -3, y: -1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -2, y: -1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -1, y: -1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 0, y: -1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 1, y: -1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 2, y: -1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 3, y: -1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 4, y: -1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 5, y: -1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 6, y: -1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 7, y: -1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 8, y: -1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 9, y: -1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 10, y: -1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 11, y: -1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 12, y: -1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 13, y: -1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 14, y: -1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 15, y: -1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 16, y: -1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 17, y: -1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 18, y: -1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 19, y: -1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 20, y: -1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 21, y: -1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 22, y: -1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 23, y: -1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 24, y: -1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -18, y: 0, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -17, y: 0, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -16, y: 0, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -15, y: 0, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -14, y: 0, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -13, y: 0, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -12, y: 0, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -11, y: 0, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -10, y: 0, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -9, y: 0, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -8, y: 0, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -7, y: 0, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -6, y: 0, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -5, y: 0, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -4, y: 0, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -3, y: 0, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -2, y: 0, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -1, y: 0, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 0, y: 0, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 1, y: 0, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 2, y: 0, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 3, y: 0, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 4, y: 0, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 5, y: 0, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 6, y: 0, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 7, y: 0, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 8, y: 0, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 9, y: 0, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 10, y: 0, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 11, y: 0, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 12, y: 0, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 13, y: 0, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 14, y: 0, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 15, y: 0, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 16, y: 0, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 17, y: 0, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 18, y: 0, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 19, y: 0, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 20, y: 0, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 21, y: 0, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 22, y: 0, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 23, y: 0, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 24, y: 0, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -18, y: 1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -17, y: 1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -16, y: 1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -15, y: 1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -14, y: 1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -13, y: 1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -12, y: 1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -11, y: 1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -10, y: 1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -9, y: 1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -8, y: 1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -7, y: 1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -6, y: 1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -5, y: 1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -4, y: 1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -3, y: 1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -2, y: 1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -1, y: 1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 0, y: 1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 1, y: 1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 2, y: 1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 3, y: 1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 4, y: 1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 5, y: 1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 6, y: 1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 7, y: 1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 8, y: 1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 9, y: 1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 10, y: 1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 11, y: 1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 12, y: 1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 13, y: 1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 14, y: 1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 15, y: 1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 16, y: 1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 17, y: 1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 18, y: 1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 19, y: 1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 20, y: 1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 21, y: 1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 22, y: 1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 23, y: 1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 24, y: 1, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -18, y: 2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -17, y: 2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -16, y: 2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -15, y: 2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -14, y: 2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -13, y: 2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -12, y: 2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -11, y: 2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -10, y: 2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -9, y: 2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -8, y: 2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -7, y: 2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -6, y: 2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -5, y: 2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -4, y: 2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -3, y: 2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -2, y: 2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -1, y: 2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 0, y: 2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 1, y: 2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 2, y: 2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 3, y: 2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 4, y: 2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 5, y: 2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 6, y: 2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 7, y: 2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 8, y: 2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 9, y: 2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 10, y: 2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 11, y: 2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 12, y: 2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 13, y: 2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 14, y: 2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 15, y: 2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 16, y: 2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 17, y: 2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 18, y: 2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 19, y: 2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 20, y: 2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 21, y: 2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 22, y: 2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 23, y: 2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -18, y: 3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -17, y: 3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -16, y: 3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -15, y: 3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -14, y: 3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -13, y: 3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -12, y: 3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -11, y: 3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -10, y: 3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -9, y: 3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -8, y: 3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -7, y: 3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -6, y: 3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -5, y: 3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -4, y: 3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -3, y: 3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -2, y: 3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -1, y: 3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 0, y: 3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 1, y: 3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 2, y: 3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 3, y: 3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 4, y: 3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 5, y: 3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 6, y: 3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 7, y: 3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 8, y: 3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 9, y: 3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 10, y: 3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 11, y: 3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 12, y: 3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 13, y: 3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 14, y: 3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 15, y: 3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 16, y: 3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 17, y: 3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 18, y: 3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 19, y: 3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 20, y: 3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 21, y: 3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 22, y: 3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 23, y: 3, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -18, y: 4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -17, y: 4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -16, y: 4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -15, y: 4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -14, y: 4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -13, y: 4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -12, y: 4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -11, y: 4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -10, y: 4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -9, y: 4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -8, y: 4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -7, y: 4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -6, y: 4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -5, y: 4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -4, y: 4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -3, y: 4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -2, y: 4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -1, y: 4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 0, y: 4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 1, y: 4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 2, y: 4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 3, y: 4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 4, y: 4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 5, y: 4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 6, y: 4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 7, y: 4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 8, y: 4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 9, y: 4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 10, y: 4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 11, y: 4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 12, y: 4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 13, y: 4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 14, y: 4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 15, y: 4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 16, y: 4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 17, y: 4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 18, y: 4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 19, y: 4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 20, y: 4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 21, y: 4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 22, y: 4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 23, y: 4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -18, y: 5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -17, y: 5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -16, y: 5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -15, y: 5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -14, y: 5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -13, y: 5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -12, y: 5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -11, y: 5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -10, y: 5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -9, y: 5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -8, y: 5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -7, y: 5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -6, y: 5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -5, y: 5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -4, y: 5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -3, y: 5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -2, y: 5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -1, y: 5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 0, y: 5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 1, y: 5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 2, y: 5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 3, y: 5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 4, y: 5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 5, y: 5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 6, y: 5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 7, y: 5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 8, y: 5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 9, y: 5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 10, y: 5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 11, y: 5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 12, y: 5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 13, y: 5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 14, y: 5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 15, y: 5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 16, y: 5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 17, y: 5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 18, y: 5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 19, y: 5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 20, y: 5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 21, y: 5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 22, y: 5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 23, y: 5, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -18, y: 6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -17, y: 6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -16, y: 6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -15, y: 6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -14, y: 6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -13, y: 6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -12, y: 6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -11, y: 6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -10, y: 6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -9, y: 6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -8, y: 6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -7, y: 6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -6, y: 6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -5, y: 6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -4, y: 6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -3, y: 6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -2, y: 6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: -1, y: 6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 0, y: 6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 1, y: 6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 2, y: 6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 3, y: 6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 4, y: 6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 5, y: 6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 6, y: 6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 7, y: 6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 8, y: 6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 9, y: 6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 10, y: 6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 11, y: 6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 12, y: 6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 13, y: 6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 14, y: 6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 15, y: 6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 16, y: 6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 17, y: 6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 18, y: 6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 19, y: 6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 20, y: 6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 21, y: 6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 22, y: 6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + - first: {x: 23, y: 6, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 26 + m_TileSpriteIndex: 26 + m_TileMatrixIndex: 0 + m_TileColorIndex: 1 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + m_AnimatedTiles: {} + m_TileAssetArray: + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 469 + m_Data: {fileID: 11400000, guid: 2ee9494f9a6af8e4b9bfcdc06c648ad5, type: 2} + m_TileSpriteArray: + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 0 + m_Data: {fileID: 0} + - m_RefCount: 469 + m_Data: {fileID: -6027461372000990807, guid: b55134515b03a0248b0080afcd749751, type: 3} + m_TileMatrixArray: + - m_RefCount: 469 + m_Data: + e00: 1 + e01: 0 + e02: 0 + e03: 0 + e10: 0 + e11: 1 + e12: 0 + e13: 0 + e20: 0 + e21: 0 + e22: 1 + e23: 0 + e30: 0 + e31: 0 + e32: 0 + e33: 1 + m_TileColorArray: + - m_RefCount: 0 + m_Data: {r: -0.10287535, g: -0.10287535, b: -0.10287535, a: -0.10287535} + - m_RefCount: 469 + m_Data: {r: 1, g: 1, b: 1, a: 1} + m_TileObjectToInstantiateArray: + - m_RefCount: 0 + m_Data: {fileID: 0} + m_AnimationFrameRate: 1 + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_Origin: {x: -32, y: -47, z: 0} + m_Size: {x: 75, y: 74, z: 1} + m_TileAnchor: {x: 0.5, y: 0.5, z: 0} + m_TileOrientation: 0 + m_TileOrientationMatrix: + e00: 1 + e01: 0 + e02: 0 + e03: 0 + e10: 0 + e11: 1 + e12: 0 + e13: 0 + e20: 0 + e21: 0 + e22: 1 + e23: 0 + e30: 0 + e31: 0 + e32: 0 + e33: 1 +--- !u!1 &1147697389 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1147697390} + - component: {fileID: 1147697391} + m_Layer: 5 + m_Name: Border + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1147697390 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1147697389} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 1046793731} + - {fileID: 1518213400} + m_Father: {fileID: 1692770168} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &1147697391 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1147697389} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: e5673e03148ef9b4c8e6b2b07c61476a, type: 3} + m_Name: + m_EditorClassIdentifier: + border: {fileID: 1518213402} + color: {r: 1, g: 0, b: 0, a: 0} +--- !u!1 &1155539831 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1155539832} + - component: {fileID: 1155539834} + - component: {fileID: 1155539833} + - component: {fileID: 1155539835} + m_Layer: 0 + m_Name: Objects + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1155539832 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1155539831} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 266447440} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!483693784 &1155539833 +TilemapRenderer: + serializedVersion: 2 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1155539831} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 0 + m_ReflectionProbeUsage: 0 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 0 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 + m_SortingLayerID: -2112306437 + m_SortingLayer: 4 + m_SortingOrder: 0 + m_MaskInteraction: 0 + m_ChunkSize: {x: 32, y: 32, z: 32} + m_ChunkCullingBounds: {x: 0, y: 0, z: 0} + m_MaxChunkCount: 16 + m_MaxFrameAge: 16 + m_SortOrder: 0 + m_Mode: 0 + m_DetectChunkCullingBounds: 0 +--- !u!1839735485 &1155539834 +Tilemap: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1155539831} + m_Enabled: 1 + m_Tiles: {} + m_AnimatedTiles: {} + m_TileAssetArray: + - m_RefCount: 0 + m_Data: {fileID: 0} + m_TileSpriteArray: + - m_RefCount: 0 + m_Data: {fileID: 0} + m_TileMatrixArray: + - m_RefCount: 0 + m_Data: + e00: -9.273923e-27 + e01: 0 + e02: 1e-45 + e03: -1.1020282e-38 + e10: 2.77e-43 + e11: 0 + e12: 0 + e13: 8.9e-43 + e20: 2.323759e-10 + e21: -1.1020282e-38 + e22: 2.634855e-29 + e23: 0.0000000065141457 + e30: 4.591e-41 + e31: 8.9e-43 + e32: 8.94e-43 + e33: 8.91e-43 + m_TileColorArray: + - m_RefCount: 0 + m_Data: {r: 8.6236e-41, g: 8.6236e-41, b: 8.6236e-41, a: 8.6236e-41} + m_TileObjectToInstantiateArray: [] + m_AnimationFrameRate: 1 + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_Origin: {x: 0, y: -20, z: 0} + m_Size: {x: 14, y: 20, z: 1} + m_TileAnchor: {x: 0.5, y: 0.5, z: 0} + m_TileOrientation: 0 + m_TileOrientationMatrix: + e00: 1 + e01: 0 + e02: 0 + e03: 0 + e10: 0 + e11: 1 + e12: 0 + e13: 0 + e20: 0 + e21: 0 + e22: 1 + e23: 0 + e30: 0 + e31: 0 + e32: 0 + e33: 1 +--- !u!19719996 &1155539835 +TilemapCollider2D: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1155539831} + m_Enabled: 1 + serializedVersion: 3 + m_Density: 1 + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_ForceSendLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_ForceReceiveLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_ContactCaptureLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_CallbackLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_IsTrigger: 0 + m_UsedByEffector: 0 + m_CompositeOperation: 0 + m_CompositeOrder: 0 + m_Offset: {x: 0, y: 0} + m_MaximumTileChangeCount: 1000 + m_ExtrusionFactor: 0 + m_UseDelaunayMesh: 0 +--- !u!1 &1248967691 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 2223815045319872774, guid: 0d22f0438375e60478b3856417b103e6, type: 3} + m_PrefabInstance: {fileID: 284592043} + m_PrefabAsset: {fileID: 0} +--- !u!61 &1248967695 +BoxCollider2D: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1248967691} + m_Enabled: 1 + serializedVersion: 3 + m_Density: 1 + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_ForceSendLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_ForceReceiveLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_ContactCaptureLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_CallbackLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_IsTrigger: 1 + m_UsedByEffector: 0 + m_CompositeOperation: 0 + m_CompositeOrder: 0 + m_Offset: {x: 0, y: 0.5} + m_SpriteTilingProperty: + border: {x: 0, y: 0, z: 0, w: 0} + pivot: {x: 0.5, y: 0} + oldSize: {x: 1, y: 1} + newSize: {x: 1, y: 1} + adaptiveTilingThreshold: 0.5 + drawMode: 0 + adaptiveTiling: 0 + m_AutoTiling: 0 + m_Size: {x: 1, y: 1} + m_EdgeRadius: 0 +--- !u!114 &1248967696 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1248967691} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 09a362d5a97f40cdb1e5c9bb666d3fb8, type: 3} + m_Name: + m_EditorClassIdentifier: + spriteRenderer: {fileID: 284592044} + openedSprite: {fileID: -4594073691743651274, guid: 0ce62fc63fc748b4aa9150b178c3028c, type: 3} +--- !u!1001 &1325650371 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 5175590660049520058, guid: cab06475c0e3dac4388657fc42d2cef2, type: 3} + propertyPath: m_Name + value: HighlightCursor + objectReference: {fileID: 0} + - target: {fileID: 7509010622626679982, guid: cab06475c0e3dac4388657fc42d2cef2, type: 3} + propertyPath: m_Enabled + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8176036292653188359, guid: cab06475c0e3dac4388657fc42d2cef2, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8176036292653188359, guid: cab06475c0e3dac4388657fc42d2cef2, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8176036292653188359, guid: cab06475c0e3dac4388657fc42d2cef2, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8176036292653188359, guid: cab06475c0e3dac4388657fc42d2cef2, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 8176036292653188359, guid: cab06475c0e3dac4388657fc42d2cef2, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8176036292653188359, guid: cab06475c0e3dac4388657fc42d2cef2, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8176036292653188359, guid: cab06475c0e3dac4388657fc42d2cef2, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8176036292653188359, guid: cab06475c0e3dac4388657fc42d2cef2, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8176036292653188359, guid: cab06475c0e3dac4388657fc42d2cef2, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8176036292653188359, guid: cab06475c0e3dac4388657fc42d2cef2, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: cab06475c0e3dac4388657fc42d2cef2, type: 3} +--- !u!1 &1518213399 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1518213400} + - component: {fileID: 1518213403} + - component: {fileID: 1518213402} + m_Layer: 5 + m_Name: BorderOuter + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1518213400 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1518213399} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1147697390} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &1518213402 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1518213399} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 2100000, guid: 83b5476344bb6f440b6fb40fd11d0ca5, type: 2} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 0 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 0 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 0} + m_Type: 1 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!222 &1518213403 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1518213399} + m_CullTransparentMesh: 1 +--- !u!1 &1577500747 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1577500748} + - component: {fileID: 1577500750} + - component: {fileID: 1577500749} + m_Layer: 0 + m_Name: EndTrigger + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1577500748 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1577500747} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -16, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &1577500749 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1577500747} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ac098df135593ab48819a77c5cebbba2, type: 3} + m_Name: + m_EditorClassIdentifier: + isSingleUse: 1 + InteractionEvent: + m_PersistentCalls: + m_Calls: [] +--- !u!61 &1577500750 +BoxCollider2D: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1577500747} + m_Enabled: 1 + serializedVersion: 3 + m_Density: 1 + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_ForceSendLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_ForceReceiveLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_ContactCaptureLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_CallbackLayers: + serializedVersion: 2 + m_Bits: 4294967295 + m_IsTrigger: 0 + m_UsedByEffector: 0 + m_CompositeOperation: 0 + m_CompositeOrder: 0 + m_Offset: {x: 0.8, y: 3} + m_SpriteTilingProperty: + border: {x: 0, y: 0, z: 0, w: 0} + pivot: {x: 0, y: 0} + oldSize: {x: 0, y: 0} + newSize: {x: 0, y: 0} + adaptiveTilingThreshold: 0 + drawMode: 0 + adaptiveTiling: 0 + m_AutoTiling: 0 + m_Size: {x: 2.5, y: 7} + m_EdgeRadius: 0 +--- !u!1 &1692770164 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1692770168} + - component: {fileID: 1692770167} + - component: {fileID: 1692770166} + - component: {fileID: 1692770165} + m_Layer: 5 + m_Name: Canvas + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &1692770165 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1692770164} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: dc42784cf147c0c48a680349fa168899, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreReversedGraphics: 1 + m_BlockingObjects: 0 + m_BlockingMask: + serializedVersion: 2 + m_Bits: 4294967295 +--- !u!114 &1692770166 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1692770164} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UiScaleMode: 0 + m_ReferencePixelsPerUnit: 100 + m_ScaleFactor: 1 + m_ReferenceResolution: {x: 800, y: 600} + m_ScreenMatchMode: 0 + m_MatchWidthOrHeight: 0 + m_PhysicalUnit: 3 + m_FallbackScreenDPI: 96 + m_DefaultSpriteDPI: 96 + m_DynamicPixelsPerUnit: 1 + m_PresetInfoIsWorld: 0 +--- !u!223 &1692770167 +Canvas: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1692770164} + m_Enabled: 1 + serializedVersion: 3 + m_RenderMode: 0 + m_Camera: {fileID: 0} + m_PlaneDistance: 100 + m_PixelPerfect: 0 + m_ReceivesEvents: 1 + m_OverrideSorting: 0 + m_OverridePixelPerfect: 0 + m_SortingBucketNormalizedSize: 0 + m_VertexColorAlwaysGammaSpace: 0 + m_AdditionalShaderChannelsFlag: 25 + m_UpdateRectTransformForStandalone: 0 + m_SortingLayerID: 0 + m_SortingOrder: 0 + m_TargetDisplay: 0 +--- !u!224 &1692770168 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1692770164} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 0, y: 0, z: 0} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 397121044} + - {fileID: 6132270968606439766} + - {fileID: 95090003} + - {fileID: 1147697390} + - {fileID: 814935200} + - {fileID: 1874834506} + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 0, y: 0} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0, y: 0} +--- !u!1001 &1720342205 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 1692770168} + m_Modifications: + - target: {fileID: 281572975974734502, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 281572975974734502, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 281572975974734502, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 281572975974734502, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 281572975974734502, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 281572975974734502, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 453941068724094309, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 453941068724094309, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 453941068724094309, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 453941068724094309, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 453941068724094309, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 453941068724094309, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3043556662459898459, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3043556662459898459, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3043556662459898459, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3043556662459898459, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3043556662459898459, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3043556662459898459, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3340035587673309847, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3340035587673309847, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3340035587673309847, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3340035587673309847, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3340035587673309847, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3340035587673309847, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3871398926158297319, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_Pivot.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 3871398926158297319, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_Pivot.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 3871398926158297319, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_AnchorMax.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 3871398926158297319, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_AnchorMax.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 3871398926158297319, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_AnchorMin.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 3871398926158297319, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_AnchorMin.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 3871398926158297319, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_SizeDelta.x + value: 100 + objectReference: {fileID: 0} + - target: {fileID: 3871398926158297319, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_SizeDelta.y + value: 100 + objectReference: {fileID: 0} + - target: {fileID: 3871398926158297319, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3871398926158297319, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3871398926158297319, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3871398926158297319, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 3871398926158297319, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3871398926158297319, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3871398926158297319, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3871398926158297319, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3871398926158297319, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3871398926158297319, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3871398926158297319, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3871398926158297319, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4276989877594319827, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4276989877594319827, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4276989877594319827, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4276989877594319827, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4276989877594319827, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4276989877594319827, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4444282667152476035, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_Name + value: TrapInventory + objectReference: {fileID: 0} + - target: {fileID: 4780356888603551415, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4780356888603551415, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4780356888603551415, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4780356888603551415, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4780356888603551415, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4780356888603551415, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5308109457241104871, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5308109457241104871, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5308109457241104871, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5308109457241104871, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5308109457241104871, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5308109457241104871, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6659755263961027452, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6659755263961027452, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6659755263961027452, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6659755263961027452, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6659755263961027452, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6659755263961027452, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6666049518064052821, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6666049518064052821, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6666049518064052821, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6666049518064052821, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6666049518064052821, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6666049518064052821, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7741586269436557896, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7741586269436557896, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7741586269436557896, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7741586269436557896, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7741586269436557896, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7741586269436557896, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8656309984492746603, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8656309984492746603, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8656309984492746603, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8656309984492746603, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8656309984492746603, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8656309984492746603, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8879303000355631548, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8879303000355631548, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8879303000355631548, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8879303000355631548, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8879303000355631548, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8879303000355631548, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} +--- !u!1 &1781357767 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1781357769} + - component: {fileID: 1781357768} + - component: {fileID: 1781357770} + m_Layer: 0 + m_Name: LevelPointGraph + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &1781357768 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1781357767} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: b17178916eb74623aaffa3f2997a551c, type: 3} + m_Name: + m_EditorClassIdentifier: + AllowedLocations: -1 + tileManager: {fileID: 3301369820996697576} + nodeObject: {fileID: 0} +--- !u!4 &1781357769 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1781357767} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &1781357770 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1781357767} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 632ae7eb1d4ce49d38a1e38ee7efe7c5, type: 3} + m_Name: + m_EditorClassIdentifier: + guid: b809a406950de62c-d65f644788db0bf5 +--- !u!224 &1874834506 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 3871398926158297319, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + m_PrefabInstance: {fileID: 1720342205} + m_PrefabAsset: {fileID: 0} +--- !u!114 &1874834507 stripped +MonoBehaviour: + m_CorrespondingSourceObject: {fileID: 245905985669063406, guid: 4d8726b7729f66e4c802176a00f571c4, type: 3} + m_PrefabInstance: {fileID: 1720342205} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 47b971e21a7137647b0786ae3a2c317a, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!1 &1877866584 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1877866585} + - component: {fileID: 1877866587} + - component: {fileID: 1877866586} + m_Layer: 0 + m_Name: Overlay + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1877866585 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1877866584} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 266447440} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!483693784 &1877866586 +TilemapRenderer: + serializedVersion: 2 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1877866584} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 0 + m_ReflectionProbeUsage: 0 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_ForceMeshLod: -1 + m_MeshLodSelectionBias: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 0 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_GlobalIlluminationMeshLod: 0 + m_SortingLayerID: -1711069785 + m_SortingLayer: 8 + m_SortingOrder: 0 + m_MaskInteraction: 0 + m_ChunkSize: {x: 32, y: 32, z: 32} + m_ChunkCullingBounds: {x: 0, y: 0, z: 0} + m_MaxChunkCount: 16 + m_MaxFrameAge: 16 + m_SortOrder: 0 + m_Mode: 0 + m_DetectChunkCullingBounds: 0 +--- !u!1839735485 &1877866587 +Tilemap: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1877866584} + m_Enabled: 1 + m_Tiles: + - first: {x: 2, y: 0, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 0 + m_TileSpriteIndex: 0 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 1073741825 + m_AnimatedTiles: {} + m_TileAssetArray: + - m_RefCount: 1 + m_Data: {fileID: 11400000, guid: 835702674d572c94aa926a13cc1a502c, type: 2} + m_TileSpriteArray: + - m_RefCount: 1 + m_Data: {fileID: 2091687042, guid: 687cffc3bfbd8e844a9997724797cebd, type: 3} + m_TileMatrixArray: + - m_RefCount: 1 + m_Data: + e00: 1 + e01: 0 + e02: 0 + e03: 0 + e10: 0 + e11: 1 + e12: 0 + e13: 0 + e20: 0 + e21: 0 + e22: 1 + e23: 0 + e30: 0 + e31: 0 + e32: 0 + e33: 1 + m_TileColorArray: + - m_RefCount: 1 + m_Data: {r: 1, g: 1, b: 1, a: 1} + m_TileObjectToInstantiateArray: [] + m_AnimationFrameRate: 1 + m_Color: {r: 0, g: 1, b: 0.79999995, a: 1} + m_Origin: {x: -9, y: 0, z: 0} + m_Size: {x: 12, y: 1, z: 1} + m_TileAnchor: {x: 0.5, y: 0.5, z: 0} + m_TileOrientation: 1 + m_TileOrientationMatrix: + e00: 1 + e01: 0 + e02: 0 + e03: 0 + e10: 0 + e11: 1 + e12: 0 + e13: 0 + e20: 0 + e21: 0 + e22: 1 + e23: 0 + e30: 0 + e31: 0 + e32: 0 + e33: 1 +--- !u!1001 &1877900951 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: -1716117421633299209, guid: abc97ef53ac39b645a1bd75a4c3f0f69, type: 3} + propertyPath: m_Intensity + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4651519948885318994, guid: abc97ef53ac39b645a1bd75a4c3f0f69, type: 3} + propertyPath: m_Name + value: Torch_1 + objectReference: {fileID: 0} + - target: {fileID: 5101714354512762368, guid: abc97ef53ac39b645a1bd75a4c3f0f69, type: 3} + propertyPath: m_LocalPosition.x + value: 9.997656 + objectReference: {fileID: 0} + - target: {fileID: 5101714354512762368, guid: abc97ef53ac39b645a1bd75a4c3f0f69, type: 3} + propertyPath: m_LocalPosition.y + value: -3.974163 + objectReference: {fileID: 0} + - target: {fileID: 5101714354512762368, guid: abc97ef53ac39b645a1bd75a4c3f0f69, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5101714354512762368, guid: abc97ef53ac39b645a1bd75a4c3f0f69, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 5101714354512762368, guid: abc97ef53ac39b645a1bd75a4c3f0f69, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5101714354512762368, guid: abc97ef53ac39b645a1bd75a4c3f0f69, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5101714354512762368, guid: abc97ef53ac39b645a1bd75a4c3f0f69, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5101714354512762368, guid: abc97ef53ac39b645a1bd75a4c3f0f69, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5101714354512762368, guid: abc97ef53ac39b645a1bd75a4c3f0f69, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5101714354512762368, guid: abc97ef53ac39b645a1bd75a4c3f0f69, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: abc97ef53ac39b645a1bd75a4c3f0f69, type: 3} +--- !u!1 &1937897919 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1937897922} + - component: {fileID: 1937897921} + - component: {fileID: 1937897920} + m_Layer: 0 + m_Name: EventSystem + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &1937897920 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1937897919} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 01614664b831546d2ae94a42149d80ac, type: 3} + m_Name: + m_EditorClassIdentifier: + m_SendPointerHoverToParent: 1 + m_MoveRepeatDelay: 0.5 + m_MoveRepeatRate: 0.1 + m_XRTrackingOrigin: {fileID: 0} + m_ActionsAsset: {fileID: -944628639613478452, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} + m_PointAction: {fileID: -1654692200621890270, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} + m_MoveAction: {fileID: -8784545083839296357, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} + m_SubmitAction: {fileID: 392368643174621059, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} + m_CancelAction: {fileID: 7727032971491509709, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} + m_LeftClickAction: {fileID: 3001919216989983466, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} + m_MiddleClickAction: {fileID: -2185481485913320682, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} + m_RightClickAction: {fileID: -4090225696740746782, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} + m_ScrollWheelAction: {fileID: 6240969308177333660, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} + m_TrackedDevicePositionAction: {fileID: 6564999863303420839, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} + m_TrackedDeviceOrientationAction: {fileID: 7970375526676320489, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} + m_DeselectOnBackgroundClick: 1 + m_PointerBehavior: 0 + m_CursorLockBehavior: 0 + m_ScrollDeltaPerTick: 6 +--- !u!114 &1937897921 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1937897919} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 76c392e42b5098c458856cdf6ecaaaa1, type: 3} + m_Name: + m_EditorClassIdentifier: + m_FirstSelected: {fileID: 0} + m_sendNavigationEvents: 1 + m_DragThreshold: 10 +--- !u!4 &1937897922 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1937897919} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1001 &3201957107120764005 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 1692770168} + m_Modifications: + - target: {fileID: 3915923971470731752, guid: b98ed26a152a329459a944b174f9f682, type: 3} + propertyPath: m_Pivot.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 3915923971470731752, guid: b98ed26a152a329459a944b174f9f682, type: 3} + propertyPath: m_Pivot.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 3915923971470731752, guid: b98ed26a152a329459a944b174f9f682, type: 3} + propertyPath: m_AnchorMax.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 3915923971470731752, guid: b98ed26a152a329459a944b174f9f682, type: 3} + propertyPath: m_AnchorMax.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 3915923971470731752, guid: b98ed26a152a329459a944b174f9f682, type: 3} + propertyPath: m_AnchorMin.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 3915923971470731752, guid: b98ed26a152a329459a944b174f9f682, type: 3} + propertyPath: m_AnchorMin.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 3915923971470731752, guid: b98ed26a152a329459a944b174f9f682, type: 3} + propertyPath: m_SizeDelta.x + value: 128 + objectReference: {fileID: 0} + - target: {fileID: 3915923971470731752, guid: b98ed26a152a329459a944b174f9f682, type: 3} + propertyPath: m_SizeDelta.y + value: 128 + objectReference: {fileID: 0} + - target: {fileID: 3915923971470731752, guid: b98ed26a152a329459a944b174f9f682, type: 3} + propertyPath: m_LocalScale.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 3915923971470731752, guid: b98ed26a152a329459a944b174f9f682, type: 3} + propertyPath: m_LocalScale.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 3915923971470731752, guid: b98ed26a152a329459a944b174f9f682, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3915923971470731752, guid: b98ed26a152a329459a944b174f9f682, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3915923971470731752, guid: b98ed26a152a329459a944b174f9f682, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3915923971470731752, guid: b98ed26a152a329459a944b174f9f682, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 3915923971470731752, guid: b98ed26a152a329459a944b174f9f682, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3915923971470731752, guid: b98ed26a152a329459a944b174f9f682, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3915923971470731752, guid: b98ed26a152a329459a944b174f9f682, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3915923971470731752, guid: b98ed26a152a329459a944b174f9f682, type: 3} + propertyPath: m_AnchoredPosition.x + value: -60 + objectReference: {fileID: 0} + - target: {fileID: 3915923971470731752, guid: b98ed26a152a329459a944b174f9f682, type: 3} + propertyPath: m_AnchoredPosition.y + value: -130 + objectReference: {fileID: 0} + - target: {fileID: 3915923971470731752, guid: b98ed26a152a329459a944b174f9f682, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3915923971470731752, guid: b98ed26a152a329459a944b174f9f682, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3915923971470731752, guid: b98ed26a152a329459a944b174f9f682, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4624764922645321282, guid: b98ed26a152a329459a944b174f9f682, type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target + value: + objectReference: {fileID: 3301369820996697576} + - target: {fileID: 5649375560124518512, guid: b98ed26a152a329459a944b174f9f682, type: 3} + propertyPath: m_Name + value: UndoButton + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: b98ed26a152a329459a944b174f9f682, type: 3} +--- !u!1001 &3301369820996697575 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 2163627055098963381, guid: e4ddca272db72f147822cbfac66f74e4, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2163627055098963381, guid: e4ddca272db72f147822cbfac66f74e4, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2163627055098963381, guid: e4ddca272db72f147822cbfac66f74e4, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2163627055098963381, guid: e4ddca272db72f147822cbfac66f74e4, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 2163627055098963381, guid: e4ddca272db72f147822cbfac66f74e4, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2163627055098963381, guid: e4ddca272db72f147822cbfac66f74e4, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2163627055098963381, guid: e4ddca272db72f147822cbfac66f74e4, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2163627055098963381, guid: e4ddca272db72f147822cbfac66f74e4, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2163627055098963381, guid: e4ddca272db72f147822cbfac66f74e4, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2163627055098963381, guid: e4ddca272db72f147822cbfac66f74e4, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4061917168424806981, guid: e4ddca272db72f147822cbfac66f74e4, type: 3} + propertyPath: m_Size.x + value: 41 + objectReference: {fileID: 0} + - target: {fileID: 4061917168424806981, guid: e4ddca272db72f147822cbfac66f74e4, type: 3} + propertyPath: m_Size.y + value: 16 + objectReference: {fileID: 0} + - target: {fileID: 4061917168424806981, guid: e4ddca272db72f147822cbfac66f74e4, type: 3} + propertyPath: m_Enabled + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4061917168424806981, guid: e4ddca272db72f147822cbfac66f74e4, type: 3} + propertyPath: m_Offset.x + value: 2.5 + objectReference: {fileID: 0} + - target: {fileID: 4061917168424806981, guid: e4ddca272db72f147822cbfac66f74e4, type: 3} + propertyPath: m_Offset.y + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7298866229718010260, guid: e4ddca272db72f147822cbfac66f74e4, type: 3} + propertyPath: m_Name + value: TileManager + objectReference: {fileID: 0} + - target: {fileID: 7935815007634844301, guid: e4ddca272db72f147822cbfac66f74e4, type: 3} + propertyPath: levelData + value: + objectReference: {fileID: 11400000, guid: 0bc8ae95ed85ec446ade3c5dbd7fc996, type: 2} + - target: {fileID: 7935815007634844301, guid: e4ddca272db72f147822cbfac66f74e4, type: 3} + propertyPath: endTrigger + value: + objectReference: {fileID: 1577500750} + - target: {fileID: 7935815007634844301, guid: e4ddca272db72f147822cbfac66f74e4, type: 3} + propertyPath: undoButton + value: + objectReference: {fileID: 3824872029334913930} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: e4ddca272db72f147822cbfac66f74e4, type: 3} +--- !u!114 &3301369820996697576 stripped +MonoBehaviour: + m_CorrespondingSourceObject: {fileID: 7935815007634844301, guid: e4ddca272db72f147822cbfac66f74e4, type: 3} + m_PrefabInstance: {fileID: 3301369820996697575} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 01d0b69c36d848e4afd3c18b12c19ed4, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!1001 &3647093934400283996 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 5175590660049520058, guid: d288120eb681b8241be52b24432d4ef3, type: 3} + propertyPath: m_Name + value: TrapCursor + objectReference: {fileID: 0} + - target: {fileID: 8176036292653188359, guid: d288120eb681b8241be52b24432d4ef3, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8176036292653188359, guid: d288120eb681b8241be52b24432d4ef3, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8176036292653188359, guid: d288120eb681b8241be52b24432d4ef3, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8176036292653188359, guid: d288120eb681b8241be52b24432d4ef3, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 8176036292653188359, guid: d288120eb681b8241be52b24432d4ef3, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8176036292653188359, guid: d288120eb681b8241be52b24432d4ef3, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8176036292653188359, guid: d288120eb681b8241be52b24432d4ef3, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8176036292653188359, guid: d288120eb681b8241be52b24432d4ef3, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8176036292653188359, guid: d288120eb681b8241be52b24432d4ef3, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8176036292653188359, guid: d288120eb681b8241be52b24432d4ef3, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: d288120eb681b8241be52b24432d4ef3, type: 3} +--- !u!1001 &3677622802539301173 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 476272733275480442, guid: 000625fd72252bf43b6708c270e609c7, type: 3} + propertyPath: m_Name + value: LevelCamera + objectReference: {fileID: 0} + - target: {fileID: 839369924275970448, guid: 000625fd72252bf43b6708c270e609c7, type: 3} + propertyPath: cameraSpeed + value: 25 + objectReference: {fileID: 0} + - target: {fileID: 6312222424468245898, guid: 000625fd72252bf43b6708c270e609c7, type: 3} + propertyPath: m_GridSnapping + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 8297539335856060991, guid: 000625fd72252bf43b6708c270e609c7, type: 3} + propertyPath: m_TargetTexture + value: + objectReference: {fileID: 0} + - target: {fileID: 8297539335856060991, guid: 000625fd72252bf43b6708c270e609c7, type: 3} + propertyPath: orthographic size + value: 5.625 + objectReference: {fileID: 0} + - target: {fileID: 8297539335856060991, guid: 000625fd72252bf43b6708c270e609c7, type: 3} + propertyPath: m_BackGroundColor.b + value: 0.39883935 + objectReference: {fileID: 0} + - target: {fileID: 8297539335856060991, guid: 000625fd72252bf43b6708c270e609c7, type: 3} + propertyPath: m_BackGroundColor.g + value: 0.39883935 + objectReference: {fileID: 0} + - target: {fileID: 8297539335856060991, guid: 000625fd72252bf43b6708c270e609c7, type: 3} + propertyPath: m_BackGroundColor.r + value: 0.5245282 + objectReference: {fileID: 0} + - target: {fileID: 8297539335856060991, guid: 000625fd72252bf43b6708c270e609c7, type: 3} + propertyPath: m_NormalizedViewPortRect.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8297539335856060991, guid: 000625fd72252bf43b6708c270e609c7, type: 3} + propertyPath: m_NormalizedViewPortRect.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8297539335856060991, guid: 000625fd72252bf43b6708c270e609c7, type: 3} + propertyPath: m_NormalizedViewPortRect.width + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 8297539335856060991, guid: 000625fd72252bf43b6708c270e609c7, type: 3} + propertyPath: m_NormalizedViewPortRect.height + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 8373194765044288788, guid: 000625fd72252bf43b6708c270e609c7, type: 3} + propertyPath: m_LocalPosition.x + value: 3.97 + objectReference: {fileID: 0} + - target: {fileID: 8373194765044288788, guid: 000625fd72252bf43b6708c270e609c7, type: 3} + propertyPath: m_LocalPosition.y + value: -6.63 + objectReference: {fileID: 0} + - target: {fileID: 8373194765044288788, guid: 000625fd72252bf43b6708c270e609c7, type: 3} + propertyPath: m_LocalPosition.z + value: -10 + objectReference: {fileID: 0} + - target: {fileID: 8373194765044288788, guid: 000625fd72252bf43b6708c270e609c7, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 8373194765044288788, guid: 000625fd72252bf43b6708c270e609c7, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 8373194765044288788, guid: 000625fd72252bf43b6708c270e609c7, type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 8373194765044288788, guid: 000625fd72252bf43b6708c270e609c7, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 8373194765044288788, guid: 000625fd72252bf43b6708c270e609c7, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8373194765044288788, guid: 000625fd72252bf43b6708c270e609c7, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8373194765044288788, guid: 000625fd72252bf43b6708c270e609c7, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8584066925909701050, guid: 000625fd72252bf43b6708c270e609c7, type: 3} + propertyPath: m_RenderPostProcessing + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 000625fd72252bf43b6708c270e609c7, type: 3} +--- !u!114 &3824872029334913930 stripped +MonoBehaviour: + m_CorrespondingSourceObject: {fileID: 590335667602438302, guid: b98ed26a152a329459a944b174f9f682, type: 3} + m_PrefabInstance: {fileID: 3201957107120764005} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 0a9e5b66d3584df989d3a6387e271a33, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!1001 &3964000586915859766 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 1760370740070846234, guid: 4efb462fbbbfcb14e949b2e63b35a152, type: 3} + propertyPath: m_LocalPosition.x + value: -2.8056757 + objectReference: {fileID: 0} + - target: {fileID: 1760370740070846234, guid: 4efb462fbbbfcb14e949b2e63b35a152, type: 3} + propertyPath: m_LocalPosition.y + value: -0.33670175 + objectReference: {fileID: 0} + - target: {fileID: 1760370740070846234, guid: 4efb462fbbbfcb14e949b2e63b35a152, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1760370740070846234, guid: 4efb462fbbbfcb14e949b2e63b35a152, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 1760370740070846234, guid: 4efb462fbbbfcb14e949b2e63b35a152, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1760370740070846234, guid: 4efb462fbbbfcb14e949b2e63b35a152, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1760370740070846234, guid: 4efb462fbbbfcb14e949b2e63b35a152, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1760370740070846234, guid: 4efb462fbbbfcb14e949b2e63b35a152, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1760370740070846234, guid: 4efb462fbbbfcb14e949b2e63b35a152, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1760370740070846234, guid: 4efb462fbbbfcb14e949b2e63b35a152, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6576339457260133357, guid: 4efb462fbbbfcb14e949b2e63b35a152, type: 3} + propertyPath: m_Name + value: GlobalLight + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 4efb462fbbbfcb14e949b2e63b35a152, type: 3} +--- !u!224 &6132270968606439766 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 3915923971470731752, guid: b98ed26a152a329459a944b174f9f682, type: 3} + m_PrefabInstance: {fileID: 3201957107120764005} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &8306559787363745896 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 2369131719208633291, guid: a117f8050f8f79f47a9774080e66d761, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2369131719208633291, guid: a117f8050f8f79f47a9774080e66d761, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2369131719208633291, guid: a117f8050f8f79f47a9774080e66d761, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2369131719208633291, guid: a117f8050f8f79f47a9774080e66d761, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 2369131719208633291, guid: a117f8050f8f79f47a9774080e66d761, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2369131719208633291, guid: a117f8050f8f79f47a9774080e66d761, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2369131719208633291, guid: a117f8050f8f79f47a9774080e66d761, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2369131719208633291, guid: a117f8050f8f79f47a9774080e66d761, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2369131719208633291, guid: a117f8050f8f79f47a9774080e66d761, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2369131719208633291, guid: a117f8050f8f79f47a9774080e66d761, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2663716756371217958, guid: a117f8050f8f79f47a9774080e66d761, type: 3} + propertyPath: m_Name + value: TrapManager + objectReference: {fileID: 0} + - target: {fileID: 4122943533474716781, guid: a117f8050f8f79f47a9774080e66d761, type: 3} + propertyPath: _trapContainer + value: + objectReference: {fileID: 664961890} + - target: {fileID: 4122943533474716781, guid: a117f8050f8f79f47a9774080e66d761, type: 3} + propertyPath: trapInventoryBar + value: + objectReference: {fileID: 245905985669063406, guid: de79d54620e113844a81995f23e82d8c, type: 3} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: a117f8050f8f79f47a9774080e66d761, type: 3} +--- !u!1001 &8438126801875177390 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 884442269049504215, guid: 289606b10f77d78439075433d873bc0f, type: 3} + propertyPath: m_LocalPosition.x + value: -6 + objectReference: {fileID: 0} + - target: {fileID: 884442269049504215, guid: 289606b10f77d78439075433d873bc0f, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 884442269049504215, guid: 289606b10f77d78439075433d873bc0f, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 884442269049504215, guid: 289606b10f77d78439075433d873bc0f, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 884442269049504215, guid: 289606b10f77d78439075433d873bc0f, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 884442269049504215, guid: 289606b10f77d78439075433d873bc0f, type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 884442269049504215, guid: 289606b10f77d78439075433d873bc0f, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 884442269049504215, guid: 289606b10f77d78439075433d873bc0f, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 884442269049504215, guid: 289606b10f77d78439075433d873bc0f, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 884442269049504215, guid: 289606b10f77d78439075433d873bc0f, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 904958977262225375, guid: 289606b10f77d78439075433d873bc0f, type: 3} + propertyPath: m_Name + value: Intruders + objectReference: {fileID: 0} + - target: {fileID: 904958977262225375, guid: 289606b10f77d78439075433d873bc0f, type: 3} + propertyPath: m_IsActive + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 8337709242333465459, guid: 289606b10f77d78439075433d873bc0f, type: 3} + propertyPath: maxIntruders + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 8337709242333465459, guid: 289606b10f77d78439075433d873bc0f, type: 3} + propertyPath: intruders.Array.size + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 8337709242333465459, guid: 289606b10f77d78439075433d873bc0f, type: 3} + propertyPath: 'intruders.Array.data[0]' + value: + objectReference: {fileID: 1209026344880138227, guid: f00d14a2cf11fcb45b76ac0fcf88bd4d, type: 3} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 289606b10f77d78439075433d873bc0f, type: 3} +--- !u!1001 &8831235594044065411 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + serializedVersion: 3 + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 824626083392493702, guid: 2bf5f172b9257a74bbd56f57309b2397, type: 3} + propertyPath: m_Name + value: Player + objectReference: {fileID: 0} + - target: {fileID: 5326844495731125048, guid: 2bf5f172b9257a74bbd56f57309b2397, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5326844495731125048, guid: 2bf5f172b9257a74bbd56f57309b2397, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5326844495731125048, guid: 2bf5f172b9257a74bbd56f57309b2397, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5326844495731125048, guid: 2bf5f172b9257a74bbd56f57309b2397, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 5326844495731125048, guid: 2bf5f172b9257a74bbd56f57309b2397, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5326844495731125048, guid: 2bf5f172b9257a74bbd56f57309b2397, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5326844495731125048, guid: 2bf5f172b9257a74bbd56f57309b2397, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5326844495731125048, guid: 2bf5f172b9257a74bbd56f57309b2397, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5326844495731125048, guid: 2bf5f172b9257a74bbd56f57309b2397, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5326844495731125048, guid: 2bf5f172b9257a74bbd56f57309b2397, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 2bf5f172b9257a74bbd56f57309b2397, type: 3} +--- !u!1660057539 &9223372036854775807 +SceneRoots: + m_ObjectHideFlags: 0 + m_Roots: + - {fileID: 3301369820996697575} + - {fileID: 8306559787363745896} + - {fileID: 3677622802539301173} + - {fileID: 1692770168} + - {fileID: 8831235594044065411} + - {fileID: 3647093934400283996} + - {fileID: 1325650371} + - {fileID: 8438126801875177390} + - {fileID: 266447440} + - {fileID: 1937897922} + - {fileID: 1781357769} + - {fileID: 457342797} + - {fileID: 3964000586915859766} + - {fileID: 284592043} + - {fileID: 317959203} + - {fileID: 1877900951} + - {fileID: 548822088} + - {fileID: 1577500748} diff --git a/Assets/Scenes/Tests/Test_UnitMovement.unity.meta b/Assets/Scenes/Tests/Test_UnitMovement.unity.meta new file mode 100644 index 0000000..ff2019d --- /dev/null +++ b/Assets/Scenes/Tests/Test_UnitMovement.unity.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 69c8208d0afc3d247a5d5e7b2c039fd2 +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts.meta b/Assets/Scripts.meta new file mode 100644 index 0000000..4f3082b --- /dev/null +++ b/Assets/Scripts.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 026ea3289c401bc4abc502e754205a3e +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/BracerLib.asmdef b/Assets/Scripts/BracerLib.asmdef new file mode 100644 index 0000000..12d6a01 --- /dev/null +++ b/Assets/Scripts/BracerLib.asmdef @@ -0,0 +1,16 @@ +{ + "name": "BracerLib", + "rootNamespace": "BracerLib", + "references": [ + "GUID:75469ad4d38634e559750d17036d5f7c" + ], + "includePlatforms": [], + "excludePlatforms": [], + "allowUnsafeCode": false, + "overrideReferences": false, + "precompiledReferences": [], + "autoReferenced": true, + "defineConstraints": [], + "versionDefines": [], + "noEngineReferences": false +} \ No newline at end of file diff --git a/Assets/Scripts/BracerLib.asmdef.meta b/Assets/Scripts/BracerLib.asmdef.meta new file mode 100644 index 0000000..5ff45e9 --- /dev/null +++ b/Assets/Scripts/BracerLib.asmdef.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: a60bafe2eaba2f24fbb33ab1ab52999b +AssemblyDefinitionImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/Coroutines.meta b/Assets/Scripts/Coroutines.meta new file mode 100644 index 0000000..57c63f8 --- /dev/null +++ b/Assets/Scripts/Coroutines.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 1e57509c8f334614782377c50d3b006b +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/Coroutines/CancellableWaitForSeconds.cs b/Assets/Scripts/Coroutines/CancellableWaitForSeconds.cs new file mode 100644 index 0000000..699a19c --- /dev/null +++ b/Assets/Scripts/Coroutines/CancellableWaitForSeconds.cs @@ -0,0 +1,31 @@ +using System; +using UnityEngine; +using UnityEngine.TestTools; + +namespace BracerLib.Utility.Coroutines +{ + [ExcludeFromCoverage] + public class CancellableWaitForSeconds : CustomYieldInstruction + { + private float remaining; + private readonly Func predicate; + + public override bool keepWaiting => ShouldKeepWaiting(); + + public CancellableWaitForSeconds(float wait, Func predicate) + { + remaining = wait; + this.predicate = predicate; + } + + private bool ShouldKeepWaiting() + { + remaining -= Time.deltaTime; + var check = CheckCustomPredicate(); + + return !(check || remaining < 0f); + } + + private bool CheckCustomPredicate() => predicate?.Invoke() ?? false; + } +} diff --git a/Assets/Scripts/Coroutines/CancellableWaitForSeconds.cs.meta b/Assets/Scripts/Coroutines/CancellableWaitForSeconds.cs.meta new file mode 100644 index 0000000..d18a96f --- /dev/null +++ b/Assets/Scripts/Coroutines/CancellableWaitForSeconds.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: c1f806820d3cd904399807656f490d62 \ No newline at end of file diff --git a/Assets/Scripts/DI.meta b/Assets/Scripts/DI.meta new file mode 100644 index 0000000..aa6e702 --- /dev/null +++ b/Assets/Scripts/DI.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 095d1626aba91364faf64598b4f35f64 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/DI/Dependency.cs b/Assets/Scripts/DI/Dependency.cs new file mode 100644 index 0000000..3f1f960 --- /dev/null +++ b/Assets/Scripts/DI/Dependency.cs @@ -0,0 +1,18 @@ +using System; + +namespace BracerLib.DI +{ + public struct Dependency + { + public Type Type { get; } + public FactoryFunc Factory { get; } + public DependencyLifetime Lifetime { get; } + + public Dependency(Type type, FactoryFunc provider, DependencyLifetime lifetime) + { + Type = type; + Factory = provider; + Lifetime = lifetime; + } + } +} diff --git a/Assets/Scripts/DI/Dependency.cs.meta b/Assets/Scripts/DI/Dependency.cs.meta new file mode 100644 index 0000000..51cadee --- /dev/null +++ b/Assets/Scripts/DI/Dependency.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: 08b41999af4aec5459aa82b9a53bcf46 \ No newline at end of file diff --git a/Assets/Scripts/DI/DependencyCollection.cs b/Assets/Scripts/DI/DependencyCollection.cs new file mode 100644 index 0000000..9a4ef2a --- /dev/null +++ b/Assets/Scripts/DI/DependencyCollection.cs @@ -0,0 +1,16 @@ +using System.Collections; +using System.Collections.Generic; + +namespace BracerLib.DI +{ + public class DependencyCollection : IEnumerable + { + private readonly IList dependencies = new List(); + + public void Add(Dependency dependency) => dependencies.Add(dependency); + + public IEnumerator GetEnumerator() => dependencies.GetEnumerator(); + + IEnumerator IEnumerable.GetEnumerator() => dependencies.GetEnumerator(); + } +} diff --git a/Assets/Scripts/DI/DependencyCollection.cs.meta b/Assets/Scripts/DI/DependencyCollection.cs.meta new file mode 100644 index 0000000..dafa744 --- /dev/null +++ b/Assets/Scripts/DI/DependencyCollection.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: a09894721d4f3714aa39bc4335147866 \ No newline at end of file diff --git a/Assets/Scripts/DI/DependencyContext.cs b/Assets/Scripts/DI/DependencyContext.cs new file mode 100644 index 0000000..e350bb4 --- /dev/null +++ b/Assets/Scripts/DI/DependencyContext.cs @@ -0,0 +1,28 @@ +using UnityEngine; + +namespace BracerLib.DI +{ + [DefaultExecutionOrder(-1)] + public abstract class DependencyContext : MonoBehaviour + { + private DependencyProvider dependencyProvider; + protected readonly DependencyCollection dependencyCollection = new(); + + protected abstract void Setup(); + + protected abstract void Configure(); + + private void Awake() + { + Setup(); + + dependencyProvider = new DependencyProvider(dependencyCollection); + + var children = GetComponentsInChildren(true); + foreach (var child in children) + dependencyProvider.Inject(child); + + Configure(); + } + } +} diff --git a/Assets/Scripts/DI/DependencyContext.cs.meta b/Assets/Scripts/DI/DependencyContext.cs.meta new file mode 100644 index 0000000..03db0d1 --- /dev/null +++ b/Assets/Scripts/DI/DependencyContext.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: af6df49e6c26ffe41a2c34e13afdb851 \ No newline at end of file diff --git a/Assets/Scripts/DI/DependencyFactory.cs b/Assets/Scripts/DI/DependencyFactory.cs new file mode 100644 index 0000000..530c4cf --- /dev/null +++ b/Assets/Scripts/DI/DependencyFactory.cs @@ -0,0 +1,59 @@ +using System; +using System.Runtime.Serialization; +using UnityEngine; +using Object = UnityEngine.Object; + +namespace BracerLib.DI +{ + public delegate object FactoryFunc(DependencyProvider provider); + + public static class DependencyFactory + { + public static FactoryFunc FromClass() where T : class, new() + { + return provider => + { + var type = typeof(T); + var obj = FormatterServices.GetUninitializedObject(type); + + provider.Inject(obj); + + type.GetConstructor(Type.EmptyTypes)?.Invoke(obj, null); + + return (T)obj; + }; + } + + public static FactoryFunc FromGameObject(T instance) where T : MonoBehaviour + { + return dependencies => + { + var children = instance.GetComponentsInChildren(true); + foreach (var child in children) + dependencies.Inject(child); + + return instance; + }; + } + + public static FactoryFunc FromPrefab(T prefab) where T : MonoBehaviour + { + return provider => + { + var prefabObj = prefab.gameObject; + var wasActive = prefabObj.activeSelf; + prefabObj.SetActive(false); + var instance = Object.Instantiate(prefab); + prefabObj.SetActive(wasActive); + var children = instance.GetComponentsInChildren(true); + + foreach (var child in children) + provider.Inject(child); + + instance.gameObject.SetActive(wasActive); + + return instance.GetComponent(); + }; + } + } +} diff --git a/Assets/Scripts/DI/DependencyFactory.cs.meta b/Assets/Scripts/DI/DependencyFactory.cs.meta new file mode 100644 index 0000000..84a651c --- /dev/null +++ b/Assets/Scripts/DI/DependencyFactory.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: 4dd8b23ba952434428cdbc308db727b1 \ No newline at end of file diff --git a/Assets/Scripts/DI/DependencyLifetime.cs b/Assets/Scripts/DI/DependencyLifetime.cs new file mode 100644 index 0000000..9645d8d --- /dev/null +++ b/Assets/Scripts/DI/DependencyLifetime.cs @@ -0,0 +1,8 @@ +namespace BracerLib.DI +{ + public enum DependencyLifetime + { + Transient = 0, + Singleton + } +} diff --git a/Assets/Scripts/DI/DependencyLifetime.cs.meta b/Assets/Scripts/DI/DependencyLifetime.cs.meta new file mode 100644 index 0000000..87d0230 --- /dev/null +++ b/Assets/Scripts/DI/DependencyLifetime.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: 3d180c5acba365c4c9381bc61d6c6781 \ No newline at end of file diff --git a/Assets/Scripts/DI/DependencyProvider.cs b/Assets/Scripts/DI/DependencyProvider.cs new file mode 100644 index 0000000..3d322d4 --- /dev/null +++ b/Assets/Scripts/DI/DependencyProvider.cs @@ -0,0 +1,59 @@ +using System; +using System.Collections.Generic; +using System.Reflection; + +namespace BracerLib.DI +{ + public class DependencyProvider + { + private IDictionary dependencyMap = new Dictionary(); + private IDictionary singletons = new Dictionary(); + + public DependencyProvider(DependencyCollection collection) + { + foreach (var d in collection) + dependencyMap.Add(d.Type, d); + } + + public object Get(Type type) + { + if (!dependencyMap.ContainsKey(type)) + throw new ArgumentException($"Type is not a dependency: {type.FullName}"); + + var dependency = dependencyMap[type]; + switch (dependency.Lifetime) + { + case DependencyLifetime.Transient: return dependency.Factory(this); + case DependencyLifetime.Singleton: + if (!singletons.ContainsKey(type)) + singletons.Add(type, dependency.Factory(this)); + + return singletons[type]; + default: throw new ArgumentOutOfRangeException($"Unavailable lifetime for dependency: {type.FullName}"); + } + } + + public T Get() => (T)Get(typeof(T)); + + public object Inject(object dependant) + { + var type = dependant.GetType(); + while (type != null) + { + var fields = type.GetFields(BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.DeclaredOnly | + BindingFlags.Instance); + foreach (var f in fields) + { + if (f.GetCustomAttribute(false) == null) + continue; + + f.SetValue(dependant, Get(f.FieldType)); + } + + type = type.BaseType; + } + + return dependant; + } + } +} diff --git a/Assets/Scripts/DI/DependencyProvider.cs.meta b/Assets/Scripts/DI/DependencyProvider.cs.meta new file mode 100644 index 0000000..6ed0272 --- /dev/null +++ b/Assets/Scripts/DI/DependencyProvider.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: 0857e79315720b44eb82767785bfa5b4 \ No newline at end of file diff --git a/Assets/Scripts/DI/InjectFieldAttribute.cs b/Assets/Scripts/DI/InjectFieldAttribute.cs new file mode 100644 index 0000000..a87d254 --- /dev/null +++ b/Assets/Scripts/DI/InjectFieldAttribute.cs @@ -0,0 +1,6 @@ +using System; + +namespace BracerLib.DI +{ + public class InjectFieldAttribute : Attribute { } +} diff --git a/Assets/Scripts/DI/InjectFieldAttribute.cs.meta b/Assets/Scripts/DI/InjectFieldAttribute.cs.meta new file mode 100644 index 0000000..ca59508 --- /dev/null +++ b/Assets/Scripts/DI/InjectFieldAttribute.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: 1f10c710f6a498a468c7c3d5a3f7f429 \ No newline at end of file diff --git a/Assets/Scripts/Data.meta b/Assets/Scripts/Data.meta new file mode 100644 index 0000000..4c3172d --- /dev/null +++ b/Assets/Scripts/Data.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: b3050982b0392a94aa176a80fc5a54e1 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/Data/Layer.cs b/Assets/Scripts/Data/Layer.cs new file mode 100644 index 0000000..569e62e --- /dev/null +++ b/Assets/Scripts/Data/Layer.cs @@ -0,0 +1,40 @@ +using System; +using UnityEngine; +using UnityEngine.TestTools; + +namespace BracerLib.Data +{ + [Serializable, ExcludeFromCoverage] + public struct Layer : IEquatable + { + public static implicit operator int(Layer layer) + { + return layer.layerIndex; + } + + [SerializeField] + private int layerIndex; + + public int LayerIndex + { + get => layerIndex; + set + { + if (value > 0 && value < 32) + layerIndex = value; + } + } + + public int Mask => 1 << layerIndex; + + public bool Equals(Layer other) => layerIndex == other.layerIndex; + + public override bool Equals(object obj) => obj is Layer other && Equals(other); + + public override int GetHashCode() => layerIndex; + + public static bool operator ==(Layer left, Layer right) => left.Equals(right); + + public static bool operator !=(Layer left, Layer right) => !left.Equals(right); + } +} diff --git a/Assets/Scripts/Data/Layer.cs.meta b/Assets/Scripts/Data/Layer.cs.meta new file mode 100644 index 0000000..25107c1 --- /dev/null +++ b/Assets/Scripts/Data/Layer.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: 5c4f8fe70c14aea4ea15d53ddb93f727 \ No newline at end of file diff --git a/Assets/Scripts/Editor.meta b/Assets/Scripts/Editor.meta new file mode 100644 index 0000000..ccab22e --- /dev/null +++ b/Assets/Scripts/Editor.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 777c7569a062abb4cbf6f9bd72906506 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/Editor/BracerLib.Editor.asmdef b/Assets/Scripts/Editor/BracerLib.Editor.asmdef new file mode 100644 index 0000000..d7eceb6 --- /dev/null +++ b/Assets/Scripts/Editor/BracerLib.Editor.asmdef @@ -0,0 +1,18 @@ +{ + "name": "BracerLib.Editor", + "rootNamespace": "BracerLib.Editor", + "references": [ + "GUID:a60bafe2eaba2f24fbb33ab1ab52999b" + ], + "includePlatforms": [ + "Editor" + ], + "excludePlatforms": [], + "allowUnsafeCode": false, + "overrideReferences": false, + "precompiledReferences": [], + "autoReferenced": true, + "defineConstraints": [], + "versionDefines": [], + "noEngineReferences": false +} \ No newline at end of file diff --git a/Assets/Scripts/Editor/BracerLib.Editor.asmdef.meta b/Assets/Scripts/Editor/BracerLib.Editor.asmdef.meta new file mode 100644 index 0000000..26a58ee --- /dev/null +++ b/Assets/Scripts/Editor/BracerLib.Editor.asmdef.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: ed2fb3312eb6acc4e90f5b6ac5964596 +AssemblyDefinitionImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/Editor/Data.meta b/Assets/Scripts/Editor/Data.meta new file mode 100644 index 0000000..f89b67d --- /dev/null +++ b/Assets/Scripts/Editor/Data.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 0d3660d7d1878fd4dab8b7a904c7a0be +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/Editor/Data/LayerPropertyDrawer.cs b/Assets/Scripts/Editor/Data/LayerPropertyDrawer.cs new file mode 100644 index 0000000..160a939 --- /dev/null +++ b/Assets/Scripts/Editor/Data/LayerPropertyDrawer.cs @@ -0,0 +1,26 @@ +using BracerLib.Data; +using UnityEditor; +using UnityEngine; +using UnityEngine.TestTools; + +namespace BracerLib.Editor.Data +{ + /// + /// Referenced via: https://discussions.unity.com/t/select-only-one-layer-in-the-inspector-select-only-one-layer-in-the-inspector/230727 + /// + [CustomPropertyDrawer(typeof(Layer))] + [ExcludeFromCoverage] + public class LayerPropertyDrawer : PropertyDrawer + { + public override void OnGUI(Rect position, SerializedProperty property, GUIContent label) + { + EditorGUI.BeginProperty(position, GUIContent.none, property); + var layerIndex = property.FindPropertyRelative("layerIndex"); + + position = EditorGUI.PrefixLabel(position, GUIUtility.GetControlID(FocusType.Passive), label); + if (layerIndex != null) + layerIndex.intValue = EditorGUI.LayerField(position, layerIndex.intValue); + EditorGUI.EndProperty(); + } + } +} diff --git a/Assets/Scripts/Editor/Data/LayerPropertyDrawer.cs.meta b/Assets/Scripts/Editor/Data/LayerPropertyDrawer.cs.meta new file mode 100644 index 0000000..8b40a6a --- /dev/null +++ b/Assets/Scripts/Editor/Data/LayerPropertyDrawer.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: b603be9d2db54a6ba8f16f73927f322c +timeCreated: 1773804726 \ No newline at end of file diff --git a/Assets/Scripts/Editor/UI.meta b/Assets/Scripts/Editor/UI.meta new file mode 100644 index 0000000..5f6978f --- /dev/null +++ b/Assets/Scripts/Editor/UI.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: aebda41daf072e0438978241a08410d4 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/Editor/UI/NonDrawingGraphicEditor.cs b/Assets/Scripts/Editor/UI/NonDrawingGraphicEditor.cs new file mode 100644 index 0000000..92459b4 --- /dev/null +++ b/Assets/Scripts/Editor/UI/NonDrawingGraphicEditor.cs @@ -0,0 +1,28 @@ +using System; +using BracerLib.UI; +using UnityEngine; +using UnityEditor; +using UnityEditor.UI; +using UnityEngine.TestTools; + +namespace BracerLib.Editor.UI +{ + //Don't forget to put this file inside a 'Editor' folder + [CanEditMultipleObjects] + [CustomEditor(typeof(NonDrawingGraphic), false)] + [ExcludeFromCoverage] + public class NonDrawingGraphicEditor : GraphicEditor + { + public override void OnInspectorGUI() + { + serializedObject.Update(); + EditorGUI.BeginDisabledGroup(true); + EditorGUILayout.PropertyField(m_Script, Array.Empty()); + EditorGUI.EndDisabledGroup(); + + // skipping AppearanceControlsGUI + RaycastControlsGUI(); + serializedObject.ApplyModifiedProperties(); + } + } +} diff --git a/Assets/Scripts/Editor/UI/NonDrawingGraphicEditor.cs.meta b/Assets/Scripts/Editor/UI/NonDrawingGraphicEditor.cs.meta new file mode 100644 index 0000000..fbfcd39 --- /dev/null +++ b/Assets/Scripts/Editor/UI/NonDrawingGraphicEditor.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 3bea4dc700684cb5953636c68a1543e7 +timeCreated: 1686367053 \ No newline at end of file diff --git a/Assets/Scripts/Editor/Utility.meta b/Assets/Scripts/Editor/Utility.meta new file mode 100644 index 0000000..ebb5346 --- /dev/null +++ b/Assets/Scripts/Editor/Utility.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: dfe5690b14e7536429ffc5eee664df2c +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/Editor/Utility/EditorSearchField.cs b/Assets/Scripts/Editor/Utility/EditorSearchField.cs new file mode 100644 index 0000000..da4f201 --- /dev/null +++ b/Assets/Scripts/Editor/Utility/EditorSearchField.cs @@ -0,0 +1,92 @@ +using System; +using UnityEditor; +using UnityEditor.IMGUI.Controls; +using UnityEngine; +using UnityEngine.TestTools; + +namespace BracerLib.Editor.Utility +{ + /// + /// Referenced via https://github.com/marijnz/unity-autocomplete-search-field + /// + [Serializable] + [Obsolete("Use Odin or some attribute-based item instead.")] + [ExcludeFromCoverage] + public class EditorSearchField + { + private static class Styles + { + public const float RESULT_HEIGHT = 20f; + public const float RESULT_BORDER_WIDTH = 2f; + public const float RESULT_MARGIN = 15f; + public const float RESULT_LABEL_OFFSET = 2f; + + public static readonly GUIStyle ENTRY_EVEN; + public static readonly GUIStyle ENTRY_ODD; + public static readonly GUIStyle LABEL_STYLE; + public static readonly GUIStyle RESULTS_BORDER_STYLE; + + static Styles() + { + ENTRY_EVEN = new GUIStyle("CN EntryBackEven"); + ENTRY_ODD = new GUIStyle("CN EntryBackOdd"); + RESULTS_BORDER_STYLE = new GUIStyle("hostview"); + + LABEL_STYLE = new GUIStyle + { + alignment = TextAnchor.MiddleLeft, + richText = true + }; + } + } + + private static void RepaintFocusedWindow() + { + if (EditorWindow.focusedWindow != null) + EditorWindow.focusedWindow.Repaint(); + } + + private SearchField searchField; + private string searchString; + + public event Action OnInputChanged; + + public bool HasSearchString => !string.IsNullOrEmpty(SearchString); + public string SearchString + { + get => searchString; + set + { + searchString = value; + OnGUI(); + } + } + + public void OnGUI() + { + var rect = GUILayoutUtility.GetRect(1, 1, 18, 18, GUILayout.ExpandWidth(true)); + GUILayout.BeginHorizontal(); + + DoSearchField(rect); + + GUILayout.EndHorizontal(); + } + + private void DoSearchField(Rect rect) + { + if (searchField == null) + searchField = new SearchField(); + + var result = searchField.OnGUI(rect, searchString); + if (result != searchString) + OnInputChanged?.Invoke(result); + + searchString = result; + + if (HasSearchbarFocused()) + RepaintFocusedWindow(); + } + + private bool HasSearchbarFocused() => GUIUtility.keyboardControl == searchField.searchFieldControlID; + } +} diff --git a/Assets/Scripts/Editor/Utility/EditorSearchField.cs.meta b/Assets/Scripts/Editor/Utility/EditorSearchField.cs.meta new file mode 100644 index 0000000..90e766e --- /dev/null +++ b/Assets/Scripts/Editor/Utility/EditorSearchField.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: e0320c64c0c142a999d375385c65efee +timeCreated: 1727491490 \ No newline at end of file diff --git a/Assets/Scripts/Editor/Utility/SearchableScrollView.cs b/Assets/Scripts/Editor/Utility/SearchableScrollView.cs new file mode 100644 index 0000000..8d03533 --- /dev/null +++ b/Assets/Scripts/Editor/Utility/SearchableScrollView.cs @@ -0,0 +1,287 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using UnityEditor; +using UnityEngine; +using UnityEngine.TestTools; + +namespace BracerLib.Editor.Utility +{ + /// + /// A set-up for a component that can be a searchable list. Deprecated but fun to create. + /// Doesn't work for entry adds. + /// + /// + [ExcludeFromCoverage] + [Obsolete] + public class SearchableScrollView + { + public delegate void DataDelegate(int index, string originalValue, string newValue); + + public delegate bool ValidationDelegate(string entry); + + private static class Styles + { + public static readonly GUIStyle SELECTED; + + static Styles() + { + var t = new Texture2D(1, 1); + t.SetPixel(0, 0, new Color(0.4f, 0.4f, 0.4f)); + t.Apply(); + + SELECTED = new GUIStyle(EditorStyles.label); + SELECTED.normal.textColor = Color.white; + SELECTED.normal.background = t; + } + } + + private static readonly string EDIT_FIELD = "selectedTextField"; + + private readonly EditorSearchField searchField; + private IList data; + private IList dataLabels = new List(); + private IList searchResults; + private readonly IDictionary filteredLabelsToData = new Dictionary(); + private EventType prevEventType; + private int selectedIndex = -1; + private bool isEditing; + private bool isNewEntry; + private bool cancelEdit; + private bool editingFinished; + private string originalEntryText; + private string editedEntryText; + private Vector2 scrollPosition; + + public float MaxWidth { get; set; } + public IList Data + { + set + { + if (value == null) + return; + + data = value; + + searchField.SearchString = string.Empty; + + dataLabels.Clear(); + dataLabels = data.Select(d => d.ToString()).ToList(); + + filteredLabelsToData.Clear(); + } + } + /// + /// The modified index of the selection in the list with the search results taken into account. + /// + public int SelectedIndex => filteredLabelsToData.ContainsKey(selectedIndex) ? filteredLabelsToData[selectedIndex] : selectedIndex; + public ValidationDelegate ValidateEntry { get; set; } + public DataDelegate DataEntryAdded { get; set; } + public DataDelegate DataEntryEdited { get; set; } + public DataDelegate DataEntryRemoved { get; set; } + + private IList TargetData => (searchResults?.Count ?? 0) > 0 ? searchResults : dataLabels; + + public SearchableScrollView() + { + searchField = new EditorSearchField(); + searchField.OnInputChanged += SearchFieldInputChanged; + } + + public void OnGUI() + { + HandleEditing(); + + GUILayout.BeginVertical(); + GUILayout.BeginVertical(EditorStyles.helpBox); + + searchField.OnGUI(); + + scrollPosition = GUILayout.BeginScrollView(scrollPosition, false, true, GUILayout.MaxWidth(MaxWidth)); + GUILayout.BeginVertical(); + + // Output all keys in the list, with some being modified in style or interact-ability by way of flags + var newEntryIndex = -1; + var targetData = TargetData; + for (var i = 0; i < (targetData?.Count ?? 0); i++) + { + var target = targetData![i]; + var selected = selectedIndex == i; + + if (isEditing && selected) + { + if (originalEntryText == null) + { + originalEntryText = target; + editedEntryText = target; + } + + GUI.SetNextControlName(EDIT_FIELD); + editedEntryText = GUILayout.TextField(editedEntryText, Styles.SELECTED); + GUI.FocusControl(EDIT_FIELD); + } + else if (cancelEdit && selected) + { + cancelEdit = false; + + if (isNewEntry) + newEntryIndex = i; + else + targetData[i] = originalEntryText; + + originalEntryText = null; + editedEntryText = null; + } + else if (editingFinished && selected) + { + editingFinished = false; + UpdateListValue(i, originalEntryText, editedEntryText); + + originalEntryText = null; + editedEntryText = null; + } + else if (GUILayout.Button(target, selected ? Styles.SELECTED : EditorStyles.label) && !isEditing) + selectedIndex = selected ? -1 : i; + } + + GUILayout.FlexibleSpace(); + + GUILayout.EndVertical(); + GUILayout.EndScrollView(); + + GUILayout.EndVertical(); + + GUILayout.Label("F2 = Edit entry\nEnter = Accept and apply changes\nEscape = Cancel entry edit", EditorStyles.helpBox); + + GUILayout.EndVertical(); + } + + public void AddNewEntry() + { + searchField.SearchString = string.Empty; + dataLabels.Add(string.Empty); + + selectedIndex = dataLabels.Count - 1; + isEditing = true; + isNewEntry = true; + } + + public void DeleteEntry() + { + if (selectedIndex < 0) + return; + + dataLabels.RemoveAt(SelectedIndex); + + DataEntryRemoved?.Invoke(SelectedIndex, null, null); + + searchField.SearchString = string.Empty; + } + + private void FinalizeNewEntry() + { + if (!isEditing) + return; + + isEditing = false; + editingFinished = true; + } + + private void HandleEditing() + { + var eventType = Event.current.type; + var isKeyDown = eventType == EventType.KeyDown; + if (selectedIndex < 0 || !isKeyDown || eventType == prevEventType) + { + if (!isKeyDown) + prevEventType = eventType; + + return; + } + + prevEventType = eventType; + + var keyCode = Event.current.keyCode; + switch (keyCode) + { + case KeyCode.Escape: + if (!isEditing) + return; + + isEditing = false; + cancelEdit = true; + + break; + case KeyCode.Return: + case KeyCode.KeypadEnter: + FinalizeNewEntry(); + + break; + case KeyCode.F2: + isEditing = true; + + break; + } + } + + private void UpdateListValue(int index, string origText, string editedText) + { + if (editedText == origText || (ValidateEntry != null && !ValidateEntry(editedText))) + { + if (isNewEntry) + { + isNewEntry = false; + + dataLabels.RemoveAt(dataLabels.Count - 1); + } + + return; + } + + if (filteredLabelsToData.TryGetValue(index, out var origIndex)) + { + searchResults[index] = editedText; + dataLabels[origIndex] = editedText; + + index = origIndex; + } + else + dataLabels[index] = editedText; + + if (isNewEntry) + { + isNewEntry = false; + DataEntryAdded?.Invoke(index, null, editedText); + } + else + DataEntryEdited?.Invoke(index, origText, editedText); + } + + private void SearchFieldInputChanged(string searchString) + { + searchResults ??= new List(); + + searchResults.Clear(); + filteredLabelsToData.Clear(); + + if (searchString != null) + { + var newIndex = 0; + searchResults = dataLabels.Where((label, index) => + { + var result = label.IndexOf(searchString, StringComparison.OrdinalIgnoreCase) >= 0; + + if (result) + filteredLabelsToData.Add(newIndex++, index); + + return result; + }).ToList(); + } + else + searchResults = dataLabels; + + if (selectedIndex >= searchResults.Count) + selectedIndex = -1; + } + } +} diff --git a/Assets/Scripts/Editor/Utility/SearchableScrollView.cs.meta b/Assets/Scripts/Editor/Utility/SearchableScrollView.cs.meta new file mode 100644 index 0000000..9d42288 --- /dev/null +++ b/Assets/Scripts/Editor/Utility/SearchableScrollView.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 7685e09f2a5b45dc82e8010310780446 +timeCreated: 1727611465 \ No newline at end of file diff --git a/Assets/Scripts/Editor/Utility/TextureUtility.cs b/Assets/Scripts/Editor/Utility/TextureUtility.cs new file mode 100644 index 0000000..7ad44bc --- /dev/null +++ b/Assets/Scripts/Editor/Utility/TextureUtility.cs @@ -0,0 +1,21 @@ +using UnityEngine; +using UnityEngine.TestTools; + +namespace BracerLib.Editor.Utility +{ + [ExcludeFromCoverage] + public static class TextureUtility + { + public static Texture2D MakeTexture(int width, int height, Color color) + { + var pixels = new Color[width * height]; + for (var i = 0; i < pixels.Length; i++) + pixels[i] = color; + var tex = new Texture2D(width, height); + tex.SetPixels(pixels); + tex.Apply(); + + return tex; + } + } +} diff --git a/Assets/Scripts/Editor/Utility/TextureUtility.cs.meta b/Assets/Scripts/Editor/Utility/TextureUtility.cs.meta new file mode 100644 index 0000000..79bb9c5 --- /dev/null +++ b/Assets/Scripts/Editor/Utility/TextureUtility.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 73762c73e5e84089b53c84bbf6e66665 +timeCreated: 1716170448 \ No newline at end of file diff --git a/Assets/Scripts/Events.meta b/Assets/Scripts/Events.meta new file mode 100644 index 0000000..c78226f --- /dev/null +++ b/Assets/Scripts/Events.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: d63f7bdfd6b25a54e854ed23430eba56 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/Events/GameEventArgs.cs b/Assets/Scripts/Events/GameEventArgs.cs new file mode 100644 index 0000000..615390b --- /dev/null +++ b/Assets/Scripts/Events/GameEventArgs.cs @@ -0,0 +1,23 @@ +using System; +using UnityEngine.TestTools; + +namespace BracerLib.Events +{ + [ExcludeFromCoverage] + public class GameEventArgs : EventArgs + { + public new static GameEventArgs Empty => new GameEventArgs(); + + public object[] Args { get; } + + public GameEventArgs(object eventArg) + { + Args = new[] { eventArg }; + } + + public GameEventArgs(params object[] args) + { + Args = args; + } + } +} diff --git a/Assets/Scripts/Events/GameEventArgs.cs.meta b/Assets/Scripts/Events/GameEventArgs.cs.meta new file mode 100644 index 0000000..f260ae3 --- /dev/null +++ b/Assets/Scripts/Events/GameEventArgs.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: 590da2e23275974478933650ab2f2157 \ No newline at end of file diff --git a/Assets/Scripts/Events/Interfaces.meta b/Assets/Scripts/Events/Interfaces.meta new file mode 100644 index 0000000..cf1ef1a --- /dev/null +++ b/Assets/Scripts/Events/Interfaces.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 9c52142ef5bc2ae4ea59e76830055910 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/Events/Interfaces/IGameEvent.cs b/Assets/Scripts/Events/Interfaces/IGameEvent.cs new file mode 100644 index 0000000..d7a6887 --- /dev/null +++ b/Assets/Scripts/Events/Interfaces/IGameEvent.cs @@ -0,0 +1,11 @@ +using System; + +namespace BracerLib.Events.Interfaces +{ + public interface IGameEvent + { + event Action BeforeEvent; + event Action DuringEvent; + event Action AfterEvent; + } +} diff --git a/Assets/Scripts/Events/Interfaces/IGameEvent.cs.meta b/Assets/Scripts/Events/Interfaces/IGameEvent.cs.meta new file mode 100644 index 0000000..aba6c2f --- /dev/null +++ b/Assets/Scripts/Events/Interfaces/IGameEvent.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 5495905009a14d24ad885fa5d12da919 +timeCreated: 1777815885 \ No newline at end of file diff --git a/Assets/Scripts/Events/UnityInteractionEvent.cs b/Assets/Scripts/Events/UnityInteractionEvent.cs new file mode 100644 index 0000000..5938ba4 --- /dev/null +++ b/Assets/Scripts/Events/UnityInteractionEvent.cs @@ -0,0 +1,9 @@ +using System; +using UnityEngine; +using UnityEngine.Events; + +namespace BracerLib.Events +{ + [Serializable] + public class UnityInteractionEvent : UnityEvent { } +} diff --git a/Assets/Scripts/Events/UnityInteractionEvent.cs.meta b/Assets/Scripts/Events/UnityInteractionEvent.cs.meta new file mode 100644 index 0000000..5019f89 --- /dev/null +++ b/Assets/Scripts/Events/UnityInteractionEvent.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: 3153b3a444cdb9f48ab31c24120b4504 \ No newline at end of file diff --git a/Assets/Scripts/StateManagement.meta b/Assets/Scripts/StateManagement.meta new file mode 100644 index 0000000..ef28793 --- /dev/null +++ b/Assets/Scripts/StateManagement.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: c05a6a317b434df4ab536aed5fef6ba1 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/StateManagement/GameState.cs b/Assets/Scripts/StateManagement/GameState.cs new file mode 100644 index 0000000..7047c8b --- /dev/null +++ b/Assets/Scripts/StateManagement/GameState.cs @@ -0,0 +1,13 @@ +using BracerLib.Utility; + +namespace BracerLib.StateManagement +{ + /// + /// Representation of a GameState enum that can be expanded without issue + /// and into other classes of a base GameState. + /// + public class GameState : Enumeration + { + public GameState(int id, string name) : base(id, name) { } + } +} diff --git a/Assets/Scripts/StateManagement/GameState.cs.meta b/Assets/Scripts/StateManagement/GameState.cs.meta new file mode 100644 index 0000000..7bcc245 --- /dev/null +++ b/Assets/Scripts/StateManagement/GameState.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: c91277dea27634a4a849d3f5a0013533 \ No newline at end of file diff --git a/Assets/Scripts/StateManagement/GameStateController.cs b/Assets/Scripts/StateManagement/GameStateController.cs new file mode 100644 index 0000000..7d04d57 --- /dev/null +++ b/Assets/Scripts/StateManagement/GameStateController.cs @@ -0,0 +1,349 @@ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Diagnostics; +using System.Linq; +using BracerLib.StateManagement.Interfaces; +using UnityEngine; +using Debug = UnityEngine.Debug; + +namespace BracerLib.StateManagement +{ + public delegate IEnumerator GameStateEventHandler(GameState state); + + [RequireComponent(typeof(StateMap))] + [DefaultExecutionOrder(-999)] + public class GameStateController : MonoBehaviour + { + /// + /// Priority-specific holder of events that need to trigger. + /// + private class GameStatePriorityEventHolder + { + /// + /// Event that houses all registered delegates to be invoked. + /// + public event GameStateEventHandler GameStateEventTrigger; + /// + /// Priority reference of this particular event holder. + /// + public GameStatePriority Priority { get; private set; } + /// + /// The list of delegates that can be invoked and yielded piece-meal rather than all at once via the assigned event. + /// + public IEnumerable InvocationList => GameStateEventTrigger?.GetInvocationList() ?? Array.Empty(); + + public GameStatePriorityEventHolder(GameStatePriority priority) => Priority = priority; + + ~GameStatePriorityEventHolder() => Clear(); + + /// + /// Get rid of all the attached delegates before clearing this out so no (less?) memory leaks + /// + public void Clear() + { + var invocations = InvocationList; + foreach (var i in invocations) + GameStateEventTrigger -= (GameStateEventHandler)i; + } + } + + /// + /// Tracks priority events for a given state. + /// + private class GameStateEvent : IGameStateTrigger + { + /// + /// Pre-allocation capacity for required states. + /// + private const int MAXSTATECAPACITY = 2; + + public IDictionary PrioritizedHandlers; + + private bool isCompleted; + private IList requiredStates; + private IGameStateTrigger[] cachedRequiredStates; + + /// + /// this event represents. + /// + public GameState State { get; } + + /// + /// The s required before this state can be triggered. + /// + public IGameStateTrigger[] RequiredStates => cachedRequiredStates ??= requiredStates.ToArray(); + + /// + /// is being processed. Can only be set true if all required + /// triggers have been completed. If triggered prematurely, set into a queue state to be polled + /// by until it can be triggered. + /// + public bool IsTriggered { get; private set; } + + /// + /// Check to see if has been completed. Will rely on Coroutines or async behavior. + /// + public bool IsComplete => IsTriggered && isCompleted; + + public GameStateEvent(GameState state) + { + State = state; + requiredStates = new List(MAXSTATECAPACITY); + + PrioritizedHandlers = new Dictionary(); + + var priorities = Enum.GetValues(typeof(GameStatePriority)); + foreach (GameStatePriority p in priorities) + PrioritizedHandlers.Add(p, new GameStatePriorityEventHolder(p)); + } + + ~GameStateEvent() => Clear(); + + /// + /// Add a state requirement for this event to follow. + /// + /// A state that must be complete before these events can be invoked. + public void AddRequiredState(IGameStateTrigger gameGameState) + { + if (!requiredStates.Contains(gameGameState)) + requiredStates.Add(gameGameState); + } + + public void Reset() => IsTriggered = false; + + public void Clear() + { + Reset(); + + requiredStates.Clear(); + + foreach (var pair in PrioritizedHandlers) + pair.Value.Clear(); + } + + /// + /// Upon being triggered, go through and wait for each registered coroutine to run and complete. + /// + public IEnumerator WaitForGameStateEvents() + { + if (IsTriggered || isCompleted) + yield break; + + IsTriggered = true; + + yield return null; + + foreach (var p in PriorityStates) + { + var invocations = PrioritizedHandlers[p].InvocationList; + foreach (var @delegate in invocations) + { + var handler = (GameStateEventHandler)@delegate; + + // TODO: Figure out a way to get status or result from this + yield return handler.Invoke(State); + } + } + + isCompleted = true; + } + + private bool AllRequiredStatesTriggered() + { + var result = true; + + foreach (var s in requiredStates) + result &= s.IsTriggered; + + return result; + } + + private bool AllRequiredStatesCompleted() + { + var result = true; + + foreach (var s in requiredStates) + result &= s.IsComplete; + + return result; + } + } + + private static GameStateController INSTANCE; + private static IDictionary STATE_EVENTS = new Dictionary(); + + public static GameStateController Instance + { + get + { + if (INSTANCE == null) +#if UNITY_6000_0_OR_NEWER + INSTANCE = FindAnyObjectByType(); +#else + INSTANCE = FindObjectOfType(); +#endif + + return INSTANCE; + } + } + + public static GameStatePriority[] PriorityStates { get; } = (GameStatePriority[])Enum.GetValues(typeof(GameStatePriority)); + + /// + /// Attempts to run the available action if a has been triggered, meaning all its + /// dependencies have been triggered as well. + /// + /// The target state. + /// The handler or delegate to run. + /// The priority that the invocation should occur with. + /// A status the user can act upon, if needed. + public static GameStateInvocationStatus RunOrDefer(GameState state, GameStateEventHandler handler, GameStatePriority priority = GameStatePriority.Medium) + { + var triggered = IsGameStateTriggered(state) || IsGameStateComplete(state); + if (triggered) + { + Instance.StartCoroutine(handler(state)); + + return GameStateInvocationStatus.Success; + } + + if (Instance == null && STATE_EVENTS.Count == 0) + return GameStateInvocationStatus.Failure; + + if (!STATE_EVENTS.TryGetValue(state, out var gameStateEvent)) + { + Debug.LogError($"GameState invocation failure: Could not defer invocation of ${handler.Method.Name}."); + + return GameStateInvocationStatus.Failure; + } + + STATE_EVENTS[state].PrioritizedHandlers[priority].GameStateEventTrigger += handler; + + return GameStateInvocationStatus.Deferred; + } + + public static bool IsGameStateTriggered(GameState state) => STATE_EVENTS.TryGetValue(state, out var stateEvent) && stateEvent.IsTriggered; + + public static bool IsGameStateComplete(GameState state) => STATE_EVENTS.TryGetValue(state, out var stateEvent) && stateEvent.IsComplete; + + private static void ResetStateFlags() + { + foreach (var entry in STATE_EVENTS) + entry.Value.Reset(); + } + + private StateMap stateMap; + private bool isTriggered; + private bool isCompleted; + private Coroutine initCoroutine; + private YieldInstruction frameWait; + private Stopwatch stateStopwatch; + private Stopwatch overallStopwatch; + + /// + /// Bootstrap all state dependencies upon awake so they can be registered first + /// + private void Awake() + { + INSTANCE = this; + stateStopwatch = new Stopwatch(); + overallStopwatch = new Stopwatch(); + + if (STATE_EVENTS.Count > 0) + { + Debug.LogError("No GameStates recognized. Exiting state registration. You've more than likely done something very wrong."); + + return; + } + + frameWait = new WaitForEndOfFrame(); + + stateMap = GetComponent(); + + foreach (var v in stateMap.GetGameStateMap()) + STATE_EVENTS.Add(v, new GameStateEvent(v)); + + // Add state dependency map. Left-hand GameState requires right-hand GameState to be finished before proceeding + // Supports multiple-required states. Read as "LeftHandState requires RightHandState." + // New states can be added in this chain, but they must be linked from one end to the other + // e.g. (GameState.B, GameState.A), -> GameState.B requires GameState.A + // (GameState.C, GameState.B) -> GameState.C requires GameState.B + foreach (var t in stateMap.GetGameStateRequirements()) + STATE_EVENTS[t.Item1].AddRequiredState(STATE_EVENTS[t.Item2]); + } + + private void Start() => TriggerInitialization(); + + private void OnDestroy() + { + INSTANCE = null; + + STATE_EVENTS.Clear(); + + foreach (var entry in STATE_EVENTS) + entry.Value.Clear(); + } + + private void TriggerInitialization() + { + if (initCoroutine != null) + return; + + initCoroutine = StartCoroutine(PerformInitialization()); + } + + /// + /// Run events attached to all states running up the chain of requirements for . + /// + private IEnumerator PerformInitialization() + { + ResetStateFlags(); + + // Allow all other objects in scene to wake up + yield return new WaitForSeconds(0.5f); + + var readyState = stateMap.GetReadyState(); + + IGameStateTriggerInvoker targetEvent; + while ((targetEvent = NextAvailableGameStateEvent(readyState)) != null) + { + Debug.Log($"Running GameState: {targetEvent.State}"); + stateStopwatch.Restart(); + + yield return StartCoroutine(targetEvent.WaitForGameStateEvents()); + stateStopwatch.Stop(); + + yield return frameWait; + + var span = TimeSpan.FromMilliseconds(stateStopwatch.ElapsedMilliseconds); + Debug.Log($"{targetEvent.State}: {span.Minutes:D2} minutes, {span.Seconds:D2} seconds, {span.Milliseconds:D3} ms"); + } + + var overallSpan = TimeSpan.FromMilliseconds(stateStopwatch.ElapsedMilliseconds); + Debug.Log($"Finish initializing all GameStates\n{overallSpan.Minutes:D2} minutes, {overallSpan.Seconds:D2} seconds, {overallSpan.Milliseconds:D3} ms"); + } + + /// + /// Recursively traverse the required that each event may have until it reaches + /// the state that needs to be run next. + /// + /// State to start traversal from. + /// The earliest event whose events have not yet triggered. + private IGameStateTrigger NextAvailableGameStateEvent(GameState state) + { + var currentEvent = STATE_EVENTS[state]; + var states = currentEvent.RequiredStates; + var index = 0; + while (index < states.Length) + { + var target = NextAvailableGameStateEvent(states[index++].State); + + if (target != null && !target.IsTriggered) + return target; + } + + return !currentEvent.IsTriggered ? currentEvent : null; + } + } +} diff --git a/Assets/Scripts/StateManagement/GameStateController.cs.meta b/Assets/Scripts/StateManagement/GameStateController.cs.meta new file mode 100644 index 0000000..4e27b77 --- /dev/null +++ b/Assets/Scripts/StateManagement/GameStateController.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: 9e7c95ba8e0d6d24b8d1492525d538ae \ No newline at end of file diff --git a/Assets/Scripts/StateManagement/GameStateInvocationStatus.cs b/Assets/Scripts/StateManagement/GameStateInvocationStatus.cs new file mode 100644 index 0000000..d766144 --- /dev/null +++ b/Assets/Scripts/StateManagement/GameStateInvocationStatus.cs @@ -0,0 +1,9 @@ +namespace BracerLib.StateManagement +{ + public enum GameStateInvocationStatus + { + Failure, + Deferred, + Success + } +} diff --git a/Assets/Scripts/StateManagement/GameStateInvocationStatus.cs.meta b/Assets/Scripts/StateManagement/GameStateInvocationStatus.cs.meta new file mode 100644 index 0000000..0043186 --- /dev/null +++ b/Assets/Scripts/StateManagement/GameStateInvocationStatus.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: 21f5fc392c0ba374b9eb8f0950b6a799 \ No newline at end of file diff --git a/Assets/Scripts/StateManagement/GameStatePriority.cs b/Assets/Scripts/StateManagement/GameStatePriority.cs new file mode 100644 index 0000000..f62f4e4 --- /dev/null +++ b/Assets/Scripts/StateManagement/GameStatePriority.cs @@ -0,0 +1,11 @@ +namespace BracerLib.StateManagement +{ + public enum GameStatePriority + { + Highest, + High, + Medium, + Low, + Lowest + } +} diff --git a/Assets/Scripts/StateManagement/GameStatePriority.cs.meta b/Assets/Scripts/StateManagement/GameStatePriority.cs.meta new file mode 100644 index 0000000..f01293c --- /dev/null +++ b/Assets/Scripts/StateManagement/GameStatePriority.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: 140bdf34ce09b7b47b9a681fb52bf8b6 \ No newline at end of file diff --git a/Assets/Scripts/StateManagement/Interfaces.meta b/Assets/Scripts/StateManagement/Interfaces.meta new file mode 100644 index 0000000..e56611b --- /dev/null +++ b/Assets/Scripts/StateManagement/Interfaces.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 79e978ffe1b3a3249a3a451d36aeb3c0 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/StateManagement/Interfaces/IGameStateIdentifier.cs b/Assets/Scripts/StateManagement/Interfaces/IGameStateIdentifier.cs new file mode 100644 index 0000000..d1956c8 --- /dev/null +++ b/Assets/Scripts/StateManagement/Interfaces/IGameStateIdentifier.cs @@ -0,0 +1,7 @@ +namespace BracerLib.StateManagement.Interfaces +{ + public interface IGameStateIdentifier + { + GameState State { get; } + } +} diff --git a/Assets/Scripts/StateManagement/Interfaces/IGameStateIdentifier.cs.meta b/Assets/Scripts/StateManagement/Interfaces/IGameStateIdentifier.cs.meta new file mode 100644 index 0000000..d442c63 --- /dev/null +++ b/Assets/Scripts/StateManagement/Interfaces/IGameStateIdentifier.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 8b426d591d7141ce9762bc4a762a865d +timeCreated: 1697030279 \ No newline at end of file diff --git a/Assets/Scripts/StateManagement/Interfaces/IGameStateTrigger.cs b/Assets/Scripts/StateManagement/Interfaces/IGameStateTrigger.cs new file mode 100644 index 0000000..5c8670c --- /dev/null +++ b/Assets/Scripts/StateManagement/Interfaces/IGameStateTrigger.cs @@ -0,0 +1,4 @@ +namespace BracerLib.StateManagement.Interfaces +{ + public interface IGameStateTrigger : IGameStateTriggerStatus, IGameStateTriggerInvoker { } +} diff --git a/Assets/Scripts/StateManagement/Interfaces/IGameStateTrigger.cs.meta b/Assets/Scripts/StateManagement/Interfaces/IGameStateTrigger.cs.meta new file mode 100644 index 0000000..251f9ba --- /dev/null +++ b/Assets/Scripts/StateManagement/Interfaces/IGameStateTrigger.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 8400e946acf14bfd89ee59f69c4a44ae +timeCreated: 1697030243 \ No newline at end of file diff --git a/Assets/Scripts/StateManagement/Interfaces/IGameStateTriggerInvoker.cs b/Assets/Scripts/StateManagement/Interfaces/IGameStateTriggerInvoker.cs new file mode 100644 index 0000000..082198c --- /dev/null +++ b/Assets/Scripts/StateManagement/Interfaces/IGameStateTriggerInvoker.cs @@ -0,0 +1,9 @@ +using System.Collections; + +namespace BracerLib.StateManagement.Interfaces +{ + public interface IGameStateTriggerInvoker : IGameStateIdentifier + { + IEnumerator WaitForGameStateEvents(); + } +} diff --git a/Assets/Scripts/StateManagement/Interfaces/IGameStateTriggerInvoker.cs.meta b/Assets/Scripts/StateManagement/Interfaces/IGameStateTriggerInvoker.cs.meta new file mode 100644 index 0000000..5af6617 --- /dev/null +++ b/Assets/Scripts/StateManagement/Interfaces/IGameStateTriggerInvoker.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 90d8238af53645aca1a06d611b4c15c4 +timeCreated: 1697030264 \ No newline at end of file diff --git a/Assets/Scripts/StateManagement/Interfaces/IGameStateTriggerStatus.cs b/Assets/Scripts/StateManagement/Interfaces/IGameStateTriggerStatus.cs new file mode 100644 index 0000000..bb5e167 --- /dev/null +++ b/Assets/Scripts/StateManagement/Interfaces/IGameStateTriggerStatus.cs @@ -0,0 +1,8 @@ +namespace BracerLib.StateManagement.Interfaces +{ + public interface IGameStateTriggerStatus + { + bool IsTriggered { get; } + bool IsComplete { get; } + } +} diff --git a/Assets/Scripts/StateManagement/Interfaces/IGameStateTriggerStatus.cs.meta b/Assets/Scripts/StateManagement/Interfaces/IGameStateTriggerStatus.cs.meta new file mode 100644 index 0000000..1914d24 --- /dev/null +++ b/Assets/Scripts/StateManagement/Interfaces/IGameStateTriggerStatus.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 42365a62862043f693a71a439c00a693 +timeCreated: 1697030254 \ No newline at end of file diff --git a/Assets/Scripts/StateManagement/StateMap.cs b/Assets/Scripts/StateManagement/StateMap.cs new file mode 100644 index 0000000..c798b15 --- /dev/null +++ b/Assets/Scripts/StateManagement/StateMap.cs @@ -0,0 +1,27 @@ +using System; +using UnityEngine; + +namespace BracerLib.StateManagement +{ + /// + /// Base StateMap component that can be extended and used for start up or other state loads. + /// + [DefaultExecutionOrder(-1000)] + public class StateMap : MonoBehaviour + { + /// + /// Method to send back the number of states to be utilized. + /// + public virtual GameState[] GetGameStateMap() => Array.Empty(); + + /// + /// The running requirement set for all state entries. + /// + public virtual Tuple[] GetGameStateRequirements() => Array.Empty>(); + + /// + /// What is considered the last game ready state to run before starting the game. + /// + public virtual GameState GetReadyState() => null; + } +} diff --git a/Assets/Scripts/StateManagement/StateMap.cs.meta b/Assets/Scripts/StateManagement/StateMap.cs.meta new file mode 100644 index 0000000..fea62b9 --- /dev/null +++ b/Assets/Scripts/StateManagement/StateMap.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: d3f8dd6850d6fa144b4aabaceaadfeac \ No newline at end of file diff --git a/Assets/Scripts/Tests.meta b/Assets/Scripts/Tests.meta new file mode 100644 index 0000000..1c826b0 --- /dev/null +++ b/Assets/Scripts/Tests.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 20492f3cdddb8734884b33efce400a39 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/Tests/BracerLib.Tests.asmdef b/Assets/Scripts/Tests/BracerLib.Tests.asmdef new file mode 100644 index 0000000..43d30b9 --- /dev/null +++ b/Assets/Scripts/Tests/BracerLib.Tests.asmdef @@ -0,0 +1,22 @@ +{ + "name": "BracerLib.Tests", + "rootNamespace": "BracerLib.Tests", + "references": [ + "UnityEngine.TestRunner", + "BracerLib" + ], + "includePlatforms": [], + "excludePlatforms": [], + "allowUnsafeCode": false, + "overrideReferences": true, + "precompiledReferences": [ + "nunit.framework.dll", + "Moq.dll" + ], + "autoReferenced": true, + "defineConstraints": [ + "UNITY_INCLUDE_TESTS" + ], + "versionDefines": [], + "noEngineReferences": false +} \ No newline at end of file diff --git a/Assets/Scripts/Tests/BracerLib.Tests.asmdef.meta b/Assets/Scripts/Tests/BracerLib.Tests.asmdef.meta new file mode 100644 index 0000000..5e5cb05 --- /dev/null +++ b/Assets/Scripts/Tests/BracerLib.Tests.asmdef.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: f994df8a4a2196f499e769b079127c12 +AssemblyDefinitionImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/Tests/MonoBehaviourTester.cs b/Assets/Scripts/Tests/MonoBehaviourTester.cs new file mode 100644 index 0000000..4f0c38a --- /dev/null +++ b/Assets/Scripts/Tests/MonoBehaviourTester.cs @@ -0,0 +1,12 @@ +using UnityEngine; +using UnityEngine.TestTools; + +namespace BracerLib.Tests +{ + [ExecuteInEditMode] + [ExcludeFromCoverage] + public class MonoBehaviourTester : MonoBehaviour, IMonoBehaviourTest + { + public virtual bool IsTestFinished { get; set; } + } +} diff --git a/Assets/Scripts/Tests/MonoBehaviourTester.cs.meta b/Assets/Scripts/Tests/MonoBehaviourTester.cs.meta new file mode 100644 index 0000000..15f3b0a --- /dev/null +++ b/Assets/Scripts/Tests/MonoBehaviourTester.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: 7e2baafc97e51834e89c53aaa65ddd67 \ No newline at end of file diff --git a/Assets/Scripts/Tests/Objects.meta b/Assets/Scripts/Tests/Objects.meta new file mode 100644 index 0000000..e85e9de --- /dev/null +++ b/Assets/Scripts/Tests/Objects.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 0ca20ad462434c06ad77f83ad433b8e3 +timeCreated: 1778953578 \ No newline at end of file diff --git a/Assets/Scripts/Tests/Objects/ObjectLifetimeTests.cs b/Assets/Scripts/Tests/Objects/ObjectLifetimeTests.cs new file mode 100644 index 0000000..8c29a37 --- /dev/null +++ b/Assets/Scripts/Tests/Objects/ObjectLifetimeTests.cs @@ -0,0 +1,130 @@ +using System; +using System.Collections; +using NUnit.Framework; +using UnityEngine; +using UnityEngine.TestTools; +using Assert = UnityEngine.Assertions.Assert; + +namespace BracerLib.Tests.Objects +{ + public class ObjectLifetimeTests : TestBase + { + private class SomeDisposable : IDisposable + { + public bool IsDisposed { get; private set; } + + public void Dispose() + { + if (IsDisposed) + return; + + IsDisposed = true; + + GC.SuppressFinalize(this); + } + } + + private SomeDisposable disposableObject; + private SomeDisposable disposableFuncObject; + private GameObject singleTestLifetimeObject; + private GameObject singleTestLifetimeFuncObject; + private GameObject completeTestLifetimeObject; + private GameObject completeTestLifetimeFuncObject; + private bool singleTestWasCreated; + + [UnityTest, Order(1)] + public IEnumerator SetUpOneTimeObjects() + { + completeTestLifetimeObject = new GameObject("full lifetime"); + RegisterOneTimeTestObject(completeTestLifetimeObject); + + yield return null; + Assert.IsTrue(completeTestLifetimeObject != null); + + completeTestLifetimeFuncObject = RegisterOneTimeTestObject(GetNewObject); + + yield return null; + Assert.IsTrue(completeTestLifetimeFuncObject != null); + } + + /// + /// Not here to test Unity code, but want to run through a basic shift of the object position. + /// + [UnityTest, Order(2)] + public IEnumerator TempUnityObjectMovesCorrectly() + { + Assert.IsFalse(singleTestWasCreated); + + singleTestLifetimeObject = new GameObject("singleTestLifetime"); + RegisterTempTestObject(singleTestLifetimeObject); + singleTestLifetimeFuncObject = RegisterTempTestObject(GetNewObject); + singleTestWasCreated = true; + + Assert.IsTrue(singleTestWasCreated); + + yield return null; + + var testTransform = singleTestLifetimeObject.transform; + var tPos = testTransform.position; + var lastPos = tPos; + tPos = Vector3.one; + testTransform.position = tPos; + + Assert.IsTrue(tPos != lastPos); + + testTransform.Translate(Vector3.up); + + yield return null; + + tPos = testTransform.position; + + Assert.IsTrue(tPos != lastPos); + } + + [UnityTest, Order(3)] + public IEnumerator TempUnityObjectNoLongerExistsAfterPreviousTest() + { + Assert.IsTrue(singleTestWasCreated); + Assert.IsNull(singleTestLifetimeObject); + Assert.IsNull(singleTestLifetimeFuncObject); + yield return null; + } + + [UnityTest, Order(4)] + public IEnumerator OneTimeObjectStillExists() + { + Assert.IsTrue(completeTestLifetimeObject != null); + Assert.IsTrue(completeTestLifetimeFuncObject != null); + yield return null; + } + + [Test, Order(5)] + public void RegisterDisposableObject() + { + disposableObject = new SomeDisposable(); + RegisterDisposableTempTestObject(disposableObject); + Assert.IsNotNull(disposableObject); + Assert.IsFalse(disposableObject.IsDisposed); + + disposableFuncObject = RegisterDisposableTempTestObject(() => new SomeDisposable()); + Assert.IsNotNull(disposableFuncObject); + Assert.IsFalse(disposableFuncObject.IsDisposed); + } + + [Test, Order(6)] + public void CheckIfDisposableObjectHasDisposed() + { + Assert.IsNotNull(disposableObject); + Assert.IsTrue(disposableObject.IsDisposed); + + disposableObject = null; + + Assert.IsNotNull(disposableFuncObject); + Assert.IsTrue(disposableFuncObject.IsDisposed); + + disposableObject = null; + } + + private GameObject GetNewObject() => new GameObject(); + } +} diff --git a/Assets/Scripts/Tests/Objects/ObjectLifetimeTests.cs.meta b/Assets/Scripts/Tests/Objects/ObjectLifetimeTests.cs.meta new file mode 100644 index 0000000..f516461 --- /dev/null +++ b/Assets/Scripts/Tests/Objects/ObjectLifetimeTests.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 78520c491186453a91097eac4579ed75 +timeCreated: 1778931474 \ No newline at end of file diff --git a/Assets/Scripts/Tests/Objects/ObjectMockTests.cs b/Assets/Scripts/Tests/Objects/ObjectMockTests.cs new file mode 100644 index 0000000..e68f9d7 --- /dev/null +++ b/Assets/Scripts/Tests/Objects/ObjectMockTests.cs @@ -0,0 +1,55 @@ +using System.Collections; +using Moq; +using NUnit.Framework; +using UnityEngine; + +namespace BracerLib.Tests.Objects +{ + public interface ITester + { + void Test(); + } + + public class Tester : ITester + { + public void Test() {} + } + + public class MockComponent : MonoBehaviour + { + private ITester tester; + + public void DoTest() + { + tester.Test(); + } + } + + public class ObjectMockTests : TestBase + { + private MockComponent mockComponent; + private Mock testerMock; + + protected override IEnumerator UnityOneTimeSetUp() + { + testerMock = new Mock(); + + var go = new GameObject("mock test obj"); + mockComponent = go.AddComponent(); + RegisterOneTimeTestObject(go); + SetReflectedValue(mockComponent, "tester", testerMock.Object); + + yield return null; + } + + [Test] + public void TestMock() + { + testerMock.Setup(x => x.Test()); + + mockComponent.DoTest(); + + testerMock.Verify(x => x.Test(), Times.Once); + } + } +} diff --git a/Assets/Scripts/Tests/Objects/ObjectMockTests.cs.meta b/Assets/Scripts/Tests/Objects/ObjectMockTests.cs.meta new file mode 100644 index 0000000..0ce0f5e --- /dev/null +++ b/Assets/Scripts/Tests/Objects/ObjectMockTests.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 45e688432fb9423e8efb7c88cdbd9785 +timeCreated: 1779762115 \ No newline at end of file diff --git a/Assets/Scripts/Tests/Properties.meta b/Assets/Scripts/Tests/Properties.meta new file mode 100644 index 0000000..0d131bf --- /dev/null +++ b/Assets/Scripts/Tests/Properties.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 82e81a731adf4d6fbab5315db59006d2 +timeCreated: 1778983978 \ No newline at end of file diff --git a/Assets/Scripts/Tests/Properties/PropertyTests.cs b/Assets/Scripts/Tests/Properties/PropertyTests.cs new file mode 100644 index 0000000..177f63c --- /dev/null +++ b/Assets/Scripts/Tests/Properties/PropertyTests.cs @@ -0,0 +1,130 @@ +using System; +using System.Collections; +using UnityEngine; +using UnityEngine.Assertions; +using UnityEngine.TestTools; + +namespace BracerLib.Tests.Properties +{ + public class PropertyTests : TestBase + { + public class SomeObject : MonoBehaviour + { + public DependencyA dependencyA; + + [SerializeField] + private DependencyB dependencyB1; + [SerializeField] + private DependencyB dependencyB2; + [SerializeField] + private DependencyB dependencyB3; + + private DependencyC dependencyC; + private DependencyD dependencyD; + private ValueDependency valueDependency; + private int someValue; + + public DependencyB DependencyB1 => dependencyB1; + public DependencyB DependencyB2 => dependencyB2; + public DependencyB DependencyB3 => dependencyB3; + public DependencyC DependencyC => dependencyC; + public DependencyD DependencyD => dependencyD; + public ValueDependency ValueDependency => valueDependency; + public int SomeValue => someValue; + } + + public class DependencyA : MonoBehaviour + { + public int Value => 1; + } + + public class DependencyB : MonoBehaviour + { + public int Value => 2; + } + + public class DependencyC : MonoBehaviour + { + public int Value => 3; + } + + [Serializable] + public class DependencyD { } + + public struct ValueDependency + { + public int Value; + } + + private GameObject setupGameObject; + private SomeObject setupSomeObject; + private DependencyA setupDependencyA; + + protected override IEnumerator UnityOneTimeSetUp() + { + setupGameObject = new GameObject("setup"); + setupSomeObject = setupGameObject.AddComponent(); + setupDependencyA = setupGameObject.AddComponent(); + + setupSomeObject.dependencyA = setupDependencyA; + RegisterOneTimeTestObject(setupSomeObject); + + yield return null; + } + + [UnityTest] + public IEnumerator TestProperties() + { + Assert.IsNotNull(setupSomeObject); + Assert.IsNotNull(setupDependencyA); + + // Set Serialized private Mono + var depB = new[] { setupGameObject.AddComponent(), setupGameObject.AddComponent(), setupGameObject.AddComponent() }; + SetObjectReference(setupSomeObject, "dependencyB1", depB[0]); + SetObjectReferences(setupSomeObject, ("dependencyB2", depB[1]), ("dependencyB3", depB[2])); + + // Set Reflected private Mono + var depC = setupGameObject.AddComponent(); + SetReflectedValue(setupSomeObject, "dependencyC", depC); + + // Set Reflected private POCO + // Set Reflected private value + var depD = new DependencyD(); + var valueDependency = new ValueDependency { Value = 255 }; + SetReflectedValues(setupSomeObject, ("dependencyD", depD), ("valueDependency", valueDependency)); + + yield return null; + + Assert.IsNotNull(depB[0]); + Assert.IsNotNull(setupSomeObject.DependencyB1); + Assert.AreEqual(depB[0], setupSomeObject.DependencyB1); + + Assert.IsNotNull(depB[1]); + Assert.IsNotNull(setupSomeObject.DependencyB2); + Assert.AreEqual(depB[1], setupSomeObject.DependencyB2); + + Assert.IsNotNull(depB[2]); + Assert.IsNotNull(setupSomeObject.DependencyB3); + Assert.AreEqual(depB[2], setupSomeObject.DependencyB3); + + Assert.IsNotNull(depC); + Assert.IsNotNull(setupSomeObject.DependencyC); + Assert.AreEqual(depC, setupSomeObject.DependencyC); + + Assert.IsNotNull(depD); + Assert.IsNotNull(setupSomeObject.DependencyD); + Assert.AreEqual(depD, setupSomeObject.DependencyD); + + Assert.AreEqual(setupSomeObject.ValueDependency.Value, valueDependency.Value); + } + + [UnityTest] + public IEnumerator TestPropertyErrors() + { + yield return null; + + SetReflectedValue(setupSomeObject, "someFakeValue", 1); + LogAssert.Expect(LogType.Warning, "There is no property someFakeValue to the target object."); + } + } +} diff --git a/Assets/Scripts/Tests/Properties/PropertyTests.cs.meta b/Assets/Scripts/Tests/Properties/PropertyTests.cs.meta new file mode 100644 index 0000000..166868c --- /dev/null +++ b/Assets/Scripts/Tests/Properties/PropertyTests.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: ce9835c5996a47e6a286fabb5d421d3e +timeCreated: 1778983994 \ No newline at end of file diff --git a/Assets/Scripts/Tests/Scenes.meta b/Assets/Scripts/Tests/Scenes.meta new file mode 100644 index 0000000..51e5d81 --- /dev/null +++ b/Assets/Scripts/Tests/Scenes.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: f662576f6c6c422d810fcd5290ec107c +timeCreated: 1778977478 \ No newline at end of file diff --git a/Assets/Scripts/Tests/Scenes/SceneTests.cs b/Assets/Scripts/Tests/Scenes/SceneTests.cs new file mode 100644 index 0000000..851f73f --- /dev/null +++ b/Assets/Scripts/Tests/Scenes/SceneTests.cs @@ -0,0 +1,45 @@ +using System.Collections; +using UnityEngine.Assertions; +using UnityEngine.SceneManagement; +using UnityEngine.TestTools; + +namespace BracerLib.Tests.Scenes +{ + public class SceneTests : TestBase + { + private Scene oneTimeScene; + private Scene testScene; + + [UnityTest] + public IEnumerator CloseSceneWithZeroScenesRegistered() + { + var sceneCount = SceneManager.loadedSceneCount; + Assert.IsTrue(sceneCount > 0); + + yield return CloseLatestScene(); + + Assert.IsTrue(SceneManager.loadedSceneCount == sceneCount); + } + + [UnityTest] + public IEnumerator CreateScenesWithSpecificLifetimes() + { + yield return OpenScene("Scenes/Tests/Test_Empty", true); + oneTimeScene = SceneManager.GetSceneAt(SceneManager.loadedSceneCount - 1); + Assert.IsTrue(oneTimeScene.isLoaded); + + yield return OpenScene("Scenes/Tests/Test_Empty"); + testScene = SceneManager.GetSceneAt(SceneManager.loadedSceneCount - 1); + Assert.IsTrue(testScene.isLoaded); + } + + [UnityTest] + public IEnumerator TestSceneLifetimes() + { + yield return null; + + Assert.IsTrue(oneTimeScene.isLoaded); + Assert.IsFalse(testScene.isLoaded); + } + } +} diff --git a/Assets/Scripts/Tests/Scenes/SceneTests.cs.meta b/Assets/Scripts/Tests/Scenes/SceneTests.cs.meta new file mode 100644 index 0000000..aea49f4 --- /dev/null +++ b/Assets/Scripts/Tests/Scenes/SceneTests.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 6c5d9b3d87fe4f1dab685f84ed847fdf +timeCreated: 1778977483 \ No newline at end of file diff --git a/Assets/Scripts/Tests/TestBase.cs b/Assets/Scripts/Tests/TestBase.cs new file mode 100644 index 0000000..f524c50 --- /dev/null +++ b/Assets/Scripts/Tests/TestBase.cs @@ -0,0 +1,413 @@ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Diagnostics.CodeAnalysis; +using System.Linq; +using System.Reflection; +using Moq; +using NUnit.Framework; +using UnityEditor; +using UnityEngine; +using UnityEngine.SceneManagement; +using UnityEngine.TestTools; +using Object = UnityEngine.Object; + +namespace BracerLib.Tests +{ + [ExcludeFromCodeCoverage, ExcludeFromCoverage] + public class TestBase + { + // private readonly IDictionary globalPropertyCache; + private readonly IDictionary objectPropertyCache; + private readonly Queue destroyOnTestEnd; + private readonly Stack closeOnTestEnd; + private readonly Queue disposeOnTestEnd; + private readonly Queue destroyOnOneTimeEnd; + private readonly Stack closeOnOneTimeEnd; + private readonly Queue disposeOnOneTimeEnd; + + [ExcludeFromCoverage] + protected TestBase() + { + // globalPropertyCache = new Dictionary(); + objectPropertyCache = new Dictionary(); + destroyOnTestEnd = new Queue(); + closeOnTestEnd = new Stack(); + disposeOnTestEnd = new Queue(); + destroyOnOneTimeEnd = new Queue(); + closeOnOneTimeEnd = new Stack(); + disposeOnOneTimeEnd = new Queue(); + } + + /// + /// Called as part of NUnit framework. Override instead. + /// + [OneTimeSetUp, ExcludeFromCoverage] + public void DoOneTimeSetUp() + { + OneTimeSetUp(); + } + + [UnityOneTimeSetUp, ExcludeFromCoverage] + public IEnumerator DoUnityOneTimeSetUp() + { + yield return UnityOneTimeSetUp(); + } + + /// + /// Called as part of NUnit framework. Override instead. + /// + [SetUp, ExcludeFromCoverage] + public void DoSetUp() + { + SetUp(); + } + + [UnitySetUp, ExcludeFromCoverage] + public IEnumerator DoUnitySetUp() + { + yield return UnitySetUp(); + } + + /// + /// Called as part of NUnit framework. Override instead. + /// + [TearDown, ExcludeFromCoverage] + public void DoTearDown() + { + TearDown(); + + objectPropertyCache.Clear(); + } + + [UnityTearDown, ExcludeFromCoverage] + public IEnumerator DoUnityTearDown() + { + yield return UnityTearDown(); + + Reset(); + + while (closeOnTestEnd.Count > 0) + yield return CloseLatestScene(); + } + + /// + /// Called as part of NUnit framework. Override instead. + /// + [OneTimeTearDown, ExcludeFromCoverage] + public void DoOneTimeTearDown() + { + OneTimeTearDown(); + } + + [UnityOneTimeTearDown, ExcludeFromCoverage] + public IEnumerator DoUnityOneTimeTearDown() + { + yield return UnityOneTimeTearDown(); + + CleanupUnityObjects(destroyOnOneTimeEnd); + CleanupDisposableObjects(disposeOnOneTimeEnd); + + while (closeOnOneTimeEnd.Count > 0) + yield return CloseLatestScene(true); + } + + /// + /// Pass a Unity object that will be destroyed at the end of the test. + /// + protected T RegisterTempTestObject(T obj) where T : Object + { + destroyOnTestEnd.Enqueue(obj); + + return obj; + } + + /// + /// Pass a function that generates or returns a Unity object that will be destroyed at the end of the test. + /// + protected T RegisterTempTestObject(Func generator) where T : Object + { + var obj = generator(); + + return RegisterTempTestObject(obj); + } + + /// + /// Pass a Unity object that will be destroyed at the end of all the tests in a given suite. + /// + protected T RegisterOneTimeTestObject(T obj) where T : Object + { + destroyOnOneTimeEnd.Enqueue(obj); + + return obj; + } + + /// + /// Pass a function that generates or returns a Unity object that will be destroyed at the end of all the tests in a given suite. + /// + protected T RegisterOneTimeTestObject(Func generator) where T : Object + { + var obj = generator(); + + return RegisterOneTimeTestObject(obj); + } + + /// + /// Pass a disposable object that will be cleaned up at the end of the test. + /// + protected T RegisterDisposableTempTestObject(T obj) where T : IDisposable + { + disposeOnTestEnd.Enqueue(obj); + + return obj; + } + + /// + /// Pass a function that generates or returns a disposable object that will be cleaned up at the end of the test. + /// + /// + /// + /// + protected T RegisterDisposableTempTestObject(Func generator) where T : IDisposable + { + var obj = generator(); + + return RegisterDisposableTempTestObject(obj); + } + + /// + /// Pass a disposable object that will be cleaned up at the end of the test. + /// + protected T RegisterDisposableOneTimeTestObject(T obj) where T : IDisposable + { + disposeOnOneTimeEnd.Enqueue(obj); + + return obj; + } + + /// + /// Pass a function that generates or returns a disposable object that will be cleaned up at the end of the test. + /// + /// + /// + /// + protected T RegisterDisposableOneTimeTestObject(Func generator) where T : IDisposable + { + var obj = generator(); + + return RegisterDisposableOneTimeTestObject(obj); + } + + protected IEnumerator OpenScene(string scenePath, bool isOneTime = false) + { + var asyncOp = SceneManager.LoadSceneAsync(scenePath, LoadSceneMode.Additive); + asyncOp!.completed += SetLoadedSceneActive; + + yield return asyncOp; + + var loadedScene = SceneManager.GetSceneAt(SceneManager.loadedSceneCount - 1); + if (!isOneTime) + closeOnTestEnd.Push(loadedScene); + else + closeOnOneTimeEnd.Push(loadedScene); + } + + protected IEnumerator CloseLatestScene(bool isOneTime = false) + { + var targetStack = !isOneTime ? closeOnTestEnd : closeOnOneTimeEnd; + + if (!targetStack.TryPop(out var targetScene)) + yield break; + + var asyncOp = SceneManager.UnloadSceneAsync(targetScene); + asyncOp!.completed += SetLoadedSceneActive; + + yield return asyncOp; + } + + protected void SetLoadedSceneActive(AsyncOperation asyncOperation) + { + SceneManager.SetActiveScene(SceneManager.GetSceneAt(SceneManager.loadedSceneCount - 1)); + } + + [ExcludeFromCoverage] + protected virtual void OneTimeSetUp() { } + + [ExcludeFromCoverage] + protected virtual IEnumerator UnityOneTimeSetUp() + { + yield return null; + } + + protected virtual void SetUp() { } + + protected virtual IEnumerator UnitySetUp() + { + yield return null; + } + + protected virtual void TearDown() { } + + protected virtual IEnumerator UnityTearDown() + { + yield return null; + } + + [ExcludeFromCoverage] + protected virtual void OneTimeTearDown() { } + + [ExcludeFromCoverage] + protected virtual IEnumerator UnityOneTimeTearDown() + { + yield return null; + } + + /// + /// Set a private value member of an object via C# reflection. + /// + /// + /// public class SomeObject { + /// private int item; + /// } + /// + /// var obj = new SomeObject(); + /// SetReflectedValue(obj, "item", 25); + /// + private protected void SetReflectedValue(object targetObject, string targetProperty, object targetValue) + { + SetReflectedValue(targetObject, targetObject.GetType(), targetProperty, targetValue); + } + + private protected void SetReflectedValues(object targetObject, params ValueTuple[] properties) + { + var type = targetObject.GetType(); + + for (var i = 0; i < properties.Length; i++) + SetReflectedValue(targetObject, type, properties[i].Item1, properties[i].Item2); + } + + /// + /// Set a non-interface reference member of a MonoBehaviour via Unity reflection. + /// Will be applied depending on context of Test setup being used. + /// + /// + /// public class SomeOtherObject { } + /// + /// public class SomeObject : MonoBehaviour { + /// private SomeOtherObject item; + /// } + /// + /// var gameObj = new GameObject("SomeObj"); + /// var c = gameObj.AddComponent(typeof(SomeObject)); + /// var someOtherObj = new SomeOtherObj(); + /// + /// SetObjectReference(c, "item", someOtherObj); + /// + private protected void SetObjectReference(Object targetObj, string targetValue, Object value) + { + if (!objectPropertyCache.TryGetValue(targetObj, out var serializedObject)) + { + serializedObject = new SerializedObject(targetObj); + objectPropertyCache.Add(targetObj, serializedObject); + } + + var property = serializedObject.FindProperty(targetValue); + property.objectReferenceValue = value; + + serializedObject.ApplyModifiedProperties(); + } + + /// + /// Set a non-interface reference member of a MonoBehaviour via Unity reflection. + /// Will be applied depending on context of Test setup being used. + /// + /// + /// public class SomeObject : MonoBehaviour { + /// private SomeOtherObject item1; + /// private SomeAdditionalObject item2; + /// } + /// + /// var gameObj = new GameObject("SomeObj"); + /// var c = gameObj.AddComponent(typeof(SomeObject)); + /// + /// SetObjectReference(c, a); + /// + private protected void SetObjectReferences(Object targetObj, params ValueTuple[] properties) + { + for (var i = 0; i < properties.Length; i++) + SetObjectReference(targetObj, properties[i].Item1, properties[i].Item2); + } + + private void SetReflectedValue(object targetObject, Type type, string targetProperty, object targetValue) + { + var fieldProperty = type.GetField(targetProperty, BindingFlags.NonPublic | BindingFlags.Instance); + + if (fieldProperty == null) + { + Debug.LogWarning($"There is no property {targetProperty} to the target object."); + + return; + } + + fieldProperty.SetValue(targetObject, targetValue); + } + + private void Reset() + { + ResetAllMocks(); + CleanupDisposableObjects(disposeOnTestEnd); + CleanupUnityObjects(destroyOnTestEnd); + } + + private void CleanupUnityObjects(Queue unityObjects) + { + if (unityObjects.Count == 0) + return; + + while (unityObjects.Count != 0) + { + var temp = unityObjects.Dequeue(); + if (temp != null) + Object.DestroyImmediate(temp); + } + } + + private void CleanupDisposableObjects(Queue disposableObjects) + { + if (disposableObjects.Count == 0) + return; + + while (disposableObjects.Count != 0) + { + var temp = disposableObjects.Dequeue(); + temp?.Dispose(); + } + } + + [ExcludeFromCoverage] + private void ResetAllMocks() + { + var mocks = GetType().GetFields(BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic) + .Where(f => f.FieldType == typeof(Mock)).Select(f => (Mock)f.GetValue(this)); + + foreach (var m in mocks) + m.Reset(); + } + + // [ExcludeFromCoverage] + // private void Apply(bool isGlobal = false) + // { + // ApplyPropertyCache(objectPropertyCache); + // } + // + // [ExcludeFromCoverage] + // private void ApplyPropertyCache(IDictionary cache) + // { + // if (cache.Count == 0) + // return; + // + // foreach (var pair in cache) + // pair.Value.ApplyModifiedProperties(); + // } + } +} diff --git a/Assets/Scripts/Tests/TestBase.cs.meta b/Assets/Scripts/Tests/TestBase.cs.meta new file mode 100644 index 0000000..4762f62 --- /dev/null +++ b/Assets/Scripts/Tests/TestBase.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: f1863291fabd7fb43837115239feede3 \ No newline at end of file diff --git a/Assets/Scripts/Tests/Utility.meta b/Assets/Scripts/Tests/Utility.meta new file mode 100644 index 0000000..f899321 --- /dev/null +++ b/Assets/Scripts/Tests/Utility.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: c3b38a9a1e7f41b8849eb925b8dda6ef +timeCreated: 1686834699 \ No newline at end of file diff --git a/Assets/Scripts/Tests/Utility/MathUtilityTests.cs b/Assets/Scripts/Tests/Utility/MathUtilityTests.cs new file mode 100644 index 0000000..fd7c647 --- /dev/null +++ b/Assets/Scripts/Tests/Utility/MathUtilityTests.cs @@ -0,0 +1,63 @@ +using System.Collections; +using BracerLib.Utility; +using NUnit.Framework; +using UnityEngine; + +namespace BracerLib.Tests.Utility +{ + public class MathUtilityTests : TestBase + { + private static IEnumerable BoundValues() + { + yield return new TestCaseData(2, 1, 3, 2).SetName("Value is between bounds"); + yield return new TestCaseData(0, 1, 3, 3).SetName("Value is below bounds"); + yield return new TestCaseData(4, 1, 3, 1).SetName("Value is above bounds"); + } + + private static IEnumerable BetweenValuesInt() + { + yield return new TestCaseData(0, -1, 1, BoundsInclusivity.None, true).SetName("Value is between bounds"); + yield return new TestCaseData(-2, -1, 1, BoundsInclusivity.None, false).SetName("Value is below bounds"); + yield return new TestCaseData(2, -1, 1, BoundsInclusivity.None, false).SetName("Value is above bounds"); + yield return new TestCaseData(-1, -1, 1, BoundsInclusivity.Both, true).SetName("Value is at bound, inclusive both"); + yield return new TestCaseData(-1, -1, 1, BoundsInclusivity.Left, true).SetName("Value is at bound, inclusive left"); + yield return new TestCaseData(1, -1, 1, BoundsInclusivity.Right, true).SetName("Value is at bound, inclusive right"); + yield return new TestCaseData(1, -1, 1, BoundsInclusivity.Both, true).SetName("Value is at bound, exclusive"); + } + + private static IEnumerable BetweenValuesFloat() + { + yield return new TestCaseData(0f, -1f, 1f, BoundsInclusivity.None, true).SetName("Value is between bounds"); + yield return new TestCaseData(-2f, -1f, 1f, BoundsInclusivity.None, false).SetName("Value is below bounds"); + yield return new TestCaseData(2f, -1f, 1f, BoundsInclusivity.None, false).SetName("Value is above bounds"); + yield return new TestCaseData(-1f, -1f, 1f, BoundsInclusivity.Both, true).SetName("Value is at bound, inclusive both"); + yield return new TestCaseData(-1f, -1f, 1f, BoundsInclusivity.Left, true).SetName("Value is at bound, inclusive left"); + yield return new TestCaseData(1f, -1f, 1f, BoundsInclusivity.Right, true).SetName("Value is at bound, inclusive right"); + yield return new TestCaseData(1f, -1f, 1f, BoundsInclusivity.Both, true).SetName("Value is at bound, exclusive"); + } + + [Test] + [TestCaseSource(nameof(BoundValues))] + public void ValuesAreWithinBounds(int value, int min, int max, int expected) + { + var result = MathUtility.KeepWithinBounds(value, min, max); + Assert.That(result, Is.EqualTo(expected)); + } + + [Test] + [TestCaseSource(nameof(BetweenValuesInt))] + public void ValuesBetweenBounds(int value, int min, int max, BoundsInclusivity inclusivity, bool expected) + { + var result = MathUtility.IsBetween(value, min, max, inclusivity); + Assert.That(result, Is.EqualTo(expected)); + } + + [Test] + [TestCaseSource(nameof(BetweenValuesFloat))] + public void ValuesBetweenBoundsFloat(float value, float min, float max, BoundsInclusivity inclusivity, bool expected) + { + var result = MathUtility.IsBetween(value, min, max, inclusivity); + Assert.That(result, Is.EqualTo(expected)); + } + } +} diff --git a/Assets/Scripts/Tests/Utility/MathUtilityTests.cs.meta b/Assets/Scripts/Tests/Utility/MathUtilityTests.cs.meta new file mode 100644 index 0000000..dafca40 --- /dev/null +++ b/Assets/Scripts/Tests/Utility/MathUtilityTests.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 4fcf35728772424c9c2c84e29290ac5e +timeCreated: 1780244918 \ No newline at end of file diff --git a/Assets/Scripts/Tests/Utility/TriangulatorTest.cs b/Assets/Scripts/Tests/Utility/TriangulatorTest.cs new file mode 100644 index 0000000..2088ee3 --- /dev/null +++ b/Assets/Scripts/Tests/Utility/TriangulatorTest.cs @@ -0,0 +1,129 @@ +using System; +using System.Collections; +using System.Collections.Generic; +using BracerLib.Utility; +using NUnit.Framework; +using UnityEngine; + +namespace BracerLib.Tests.Utility +{ + public class TriangulatorTest : TestBase + { + private static IEnumerable AreaValueTests() + { + var points = new List(); + + yield return new TestCaseData(points.ToArray(), 0f).SetName("No points to calculate"); + + points.AddRange(new[] + { + Vector2.one, + new Vector2(5f, 7f), + new Vector2(-2f, 8f) + }); + + yield return new TestCaseData(points.ToArray(), 23f).SetName("Area of a triangle"); + + points.Add(new Vector2(3f, 5f)); + + yield return new TestCaseData(points.ToArray(), 10f).SetName("Area of a quad"); + } + + private static IEnumerable InsideTrianglePointsTest() + { + yield return new TestCaseData( + Vector2.zero, + new Vector2(3f, 3f), + new Vector2(3f, 0f), + new Vector2(2f, 1f), + true + ).SetName("Point inside triangle"); + + yield return new TestCaseData( + Vector2.zero, + new Vector2(3f, 3f), + new Vector2(3f, 0f), + new Vector2(1f, 0f), + true + ).SetName("Point on the line"); + + yield return new TestCaseData( + Vector2.zero, + new Vector2(3f, 3f), + new Vector2(3f, 0f), + new Vector2(3f, 0f), + false + ).SetName("Point is one of triangle points"); + + yield return new TestCaseData( + Vector2.zero, + new Vector2(3f, 3f), + new Vector2(3f, 0f), + new Vector2(-2f, 1f), + false + ).SetName("Point outside triangle"); + } + + private static IEnumerable TriangulatePointsTest() + { + yield return new TestCaseData( + new[] + { + Vector2.zero, + Vector2.right, + Vector2.right + Vector2.up, + Vector2.up, + Vector2.left + Vector2.up, + Vector2.left + }, + new[] { 5,3,2,2,0,5,5,4,3,2,1,0 } + ).SetName("Positive triangulation"); + + yield return new TestCaseData( + new[] + { + Vector2.zero, + Vector2.right, + Vector2.right + Vector2.down, + Vector2.down, + Vector2.left + Vector2.down, + Vector2.left + }, + new[] { 1,3,4,4,0,1,1,2,3,4,5,0 } + ).SetName("Negative triangulation"); + + yield return new TestCaseData( + new[] { Vector2.zero, Vector2.right }, + Array.Empty() + ).SetName("Empty triangulation"); + } + + [Test] + [TestCaseSource(nameof(AreaValueTests))] + public void AreaCalculatesCorrectly(Vector2[] points, float expected) + { + var result = Triangulator.Area(points); + Assert.AreEqual(expected, result); + } + + [Test] + [TestCaseSource(nameof(InsideTrianglePointsTest))] + public void PointsInsideTriangleCorrectly(Vector2 a, Vector2 b, Vector2 c, Vector2 p, bool expected) + { + var result = Triangulator.InsideTriangle(a, b, c, p); + Assert.AreEqual(expected, result); + } + + [Test] + [TestCaseSource(nameof(TriangulatePointsTest))] + public void TriangulatePoints(Vector2[] points, int[] expected) + { + var result = Triangulator.Triangulate(points); + Assert.AreEqual(expected.Length, result.Length); + for (var i = 0; i < result.Length; i++) + { + Assert.AreEqual(expected[i], result[i]); + } + } + } +} diff --git a/Assets/Scripts/Tests/Utility/TriangulatorTest.cs.meta b/Assets/Scripts/Tests/Utility/TriangulatorTest.cs.meta new file mode 100644 index 0000000..3653b9d --- /dev/null +++ b/Assets/Scripts/Tests/Utility/TriangulatorTest.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 0a7aaa2ed31747e5ae172f296a2808e3 +timeCreated: 1686834708 \ No newline at end of file diff --git a/Assets/Scripts/UI.meta b/Assets/Scripts/UI.meta new file mode 100644 index 0000000..f44511f --- /dev/null +++ b/Assets/Scripts/UI.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: efcb2963a18fd8646a6840e5596275f6 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/UI/NonDrawingGraphic.cs b/Assets/Scripts/UI/NonDrawingGraphic.cs new file mode 100644 index 0000000..9e848b5 --- /dev/null +++ b/Assets/Scripts/UI/NonDrawingGraphic.cs @@ -0,0 +1,21 @@ +using UnityEngine.TestTools; +using UnityEngine.UI; + +namespace BracerLib.UI +{ + /// A concrete subclass of the Unity UI `Graphic` class that just skips drawing. + /// Useful for providing a raycast target without actually drawing anything. + [ExcludeFromCoverage] + public class NonDrawingGraphic : Graphic + { + public override void SetMaterialDirty() { } + + public override void SetVerticesDirty() { } + + /// Probably not necessary since the chain of calls `Rebuild()`->`UpdateGeometry()`->`DoMeshGeneration()`->`OnPopulateMesh()` won't happen; so here really just as a fail-safe. + protected override void OnPopulateMesh(VertexHelper vh) + { + vh.Clear(); + } + } +} diff --git a/Assets/Scripts/UI/NonDrawingGraphic.cs.meta b/Assets/Scripts/UI/NonDrawingGraphic.cs.meta new file mode 100644 index 0000000..f2ee161 --- /dev/null +++ b/Assets/Scripts/UI/NonDrawingGraphic.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: b78fc1af781b54e4392ff1040214c054 \ No newline at end of file diff --git a/Assets/Scripts/UI/SceneLoadingManager.cs b/Assets/Scripts/UI/SceneLoadingManager.cs new file mode 100644 index 0000000..a321b1c --- /dev/null +++ b/Assets/Scripts/UI/SceneLoadingManager.cs @@ -0,0 +1,88 @@ +using System.Collections; +using UnityEngine; +using UnityEngine.SceneManagement; + +namespace BracerLib.UI +{ + public class SceneLoadingManager : MonoBehaviour + { + private static SceneLoadingManager _instance; + + public static void LoadScenes(string[] scenePath, LoadSceneMode sceneMode) + { + if (!ValidInstance()) + return; + + _instance.TryLoadScenes(scenePath, sceneMode); + } + + public static void Show() + { + if (ValidInstance()) + _instance.Toggle(true); + } + + public static void Hide() + { + if (ValidInstance()) + _instance.Toggle(false); + } + + private static bool ValidInstance() + { + if (_instance != null) + return true; + + Debug.LogError("No Load Screen Manager found."); + + return false; + } + + [SerializeField] + private GameObject _loadingScreenGameObject; + + private Coroutine _sceneLoadingCoroutine; + + private void Awake() + { + DontDestroyOnLoad(_loadingScreenGameObject); + if (_instance != null) + { + Debug.LogError("Multiple LoadScreenManagers found. Please delete one", this); + Destroy(this); + + return; + } + + _instance = this; + } + + private void TryLoadScenes(string[] scenePaths, LoadSceneMode sceneMode) + { + if (_sceneLoadingCoroutine != null) + { + Debug.LogError("SceneLoadingManager is already loading scenes."); + + return; + } + + _sceneLoadingCoroutine = StartCoroutine(LoadSceneCoroutine(scenePaths, sceneMode)); + } + + private IEnumerator LoadSceneCoroutine(string[] scenePaths, LoadSceneMode sceneMode) + { + Show(); + + for (var i = 0; i < scenePaths.Length; i++) + yield return SceneManager.LoadSceneAsync(scenePaths[i], sceneMode); + + Hide(); + _sceneLoadingCoroutine = null; + } + + private void Toggle(bool state) + { + _loadingScreenGameObject.SetActive(state); + } + } +} diff --git a/Assets/Scripts/UI/SceneLoadingManager.cs.meta b/Assets/Scripts/UI/SceneLoadingManager.cs.meta new file mode 100644 index 0000000..d05347a --- /dev/null +++ b/Assets/Scripts/UI/SceneLoadingManager.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: 7e94d21e86e94de46b81f938aa50a29e \ No newline at end of file diff --git a/Assets/Scripts/Utility.meta b/Assets/Scripts/Utility.meta new file mode 100644 index 0000000..8501887 --- /dev/null +++ b/Assets/Scripts/Utility.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 6d6041568ca07d940ae4a4f10cda4b8a +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/Utility/ArrayExtensions.cs b/Assets/Scripts/Utility/ArrayExtensions.cs new file mode 100644 index 0000000..b4d0360 --- /dev/null +++ b/Assets/Scripts/Utility/ArrayExtensions.cs @@ -0,0 +1,44 @@ +using System; +using System.Collections; +using UnityEngine.TestTools; + +namespace BracerLib.Utility +{ + [ExcludeFromCoverage] + public static class ArrayExtensions + { + public static bool Contains(this T[] array, T value) where T : IComparable + { + for (var i = 0; i < array.Length; i++) + { + if (array[i].CompareTo(value) == 0) + return true; + } + + return false; + } + + public static bool Contains(this T[] array, U value, Func predicate) + { + for (var i = 0; i < array.Length; i++) + { + if (predicate(array[i], value)) + return true; + } + + return false; + } + + public static T[] Subset(this T[] data, int index, int length) + { + var result = new T[length]; + Array.Copy(data, index, result, 0, length); + + return result; + } + + public static bool HasIndex(this IList list, int index) => index >= 0 && index < list.Count; + + public static bool HasIndex(this Array array, int index) => index >= 0 && index < array.Length; + } +} diff --git a/Assets/Scripts/Utility/ArrayExtensions.cs.meta b/Assets/Scripts/Utility/ArrayExtensions.cs.meta new file mode 100644 index 0000000..8dd2a13 --- /dev/null +++ b/Assets/Scripts/Utility/ArrayExtensions.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: 5fe12305b0d411b41bb552e80e21d2c5 \ No newline at end of file diff --git a/Assets/Scripts/Utility/CameraUtility.cs b/Assets/Scripts/Utility/CameraUtility.cs new file mode 100644 index 0000000..844c4e0 --- /dev/null +++ b/Assets/Scripts/Utility/CameraUtility.cs @@ -0,0 +1,31 @@ +using UnityEngine; +using UnityEngine.InputSystem; +using UnityEngine.TestTools; + +namespace BracerLib.Utility +{ + [ExcludeFromCoverage] + public static class CameraUtility + { + private static Camera mainCamera; + + public static Camera MainCamera + { + get + { + if (mainCamera == null) + mainCamera = Camera.main; + + return mainCamera; + } + } + + public static Vector3 MouseToWorldPoint() + { + var screenPosition = (Vector3)Mouse.current.position.ReadValue(); + screenPosition.z = mainCamera.nearClipPlane; + + return mainCamera.ScreenToWorldPoint(screenPosition); + } + } +} diff --git a/Assets/Scripts/Utility/CameraUtility.cs.meta b/Assets/Scripts/Utility/CameraUtility.cs.meta new file mode 100644 index 0000000..5c027ee --- /dev/null +++ b/Assets/Scripts/Utility/CameraUtility.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: 16fe30152b82df3439d6cd584b5603f7 \ No newline at end of file diff --git a/Assets/Scripts/Utility/CoroutineUtility.cs b/Assets/Scripts/Utility/CoroutineUtility.cs new file mode 100644 index 0000000..36edeaa --- /dev/null +++ b/Assets/Scripts/Utility/CoroutineUtility.cs @@ -0,0 +1,11 @@ +using UnityEngine; +using UnityEngine.TestTools; + +namespace BracerLib.Utility +{ + [ExcludeFromCoverage] + public static class CoroutineUtility + { + public static readonly WaitForEndOfFrame WAIT_END_OF_FRAME = new WaitForEndOfFrame(); + } +} diff --git a/Assets/Scripts/Utility/CoroutineUtility.cs.meta b/Assets/Scripts/Utility/CoroutineUtility.cs.meta new file mode 100644 index 0000000..3aef480 --- /dev/null +++ b/Assets/Scripts/Utility/CoroutineUtility.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: c41498bcbc999014bb88eaa4c886662d \ No newline at end of file diff --git a/Assets/Scripts/Utility/DirectoryUtility.cs b/Assets/Scripts/Utility/DirectoryUtility.cs new file mode 100644 index 0000000..bff537b --- /dev/null +++ b/Assets/Scripts/Utility/DirectoryUtility.cs @@ -0,0 +1,18 @@ +using System.IO; +using UnityEngine; +using UnityEngine.TestTools; + +namespace BracerLib.Utility +{ + [ExcludeFromCoverage] + public static class DirectoryUtility + { + private const string FOLDER_SCRIPTABLE_DATA = "Scriptables"; + + public static string AssetPath => Application.dataPath; + + public static string DataPath => Path.Combine(AssetPath, FOLDER_SCRIPTABLE_DATA); + + public static void CreateDirectory(string path) => Directory.CreateDirectory(path); + } +} diff --git a/Assets/Scripts/Utility/DirectoryUtility.cs.meta b/Assets/Scripts/Utility/DirectoryUtility.cs.meta new file mode 100644 index 0000000..11b7055 --- /dev/null +++ b/Assets/Scripts/Utility/DirectoryUtility.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: 70c2b1f7783b82e4bb38be51e9a3ee8d \ No newline at end of file diff --git a/Assets/Scripts/Utility/EditorOnlyObject.cs b/Assets/Scripts/Utility/EditorOnlyObject.cs new file mode 100644 index 0000000..a946586 --- /dev/null +++ b/Assets/Scripts/Utility/EditorOnlyObject.cs @@ -0,0 +1,15 @@ +using UnityEngine; +using UnityEngine.TestTools; + +namespace BracerLib.Utility +{ + [ExcludeFromCoverage] + public class EditorOnlyObject : MonoBehaviour + { + private void Awake() + { + if (Application.isPlaying) + Destroy(gameObject); + } + } +} diff --git a/Assets/Scripts/Utility/EditorOnlyObject.cs.meta b/Assets/Scripts/Utility/EditorOnlyObject.cs.meta new file mode 100644 index 0000000..14c546d --- /dev/null +++ b/Assets/Scripts/Utility/EditorOnlyObject.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: b3d9a97f953c3834ab17f72144e3c68e \ No newline at end of file diff --git a/Assets/Scripts/Utility/EnumUtility.cs b/Assets/Scripts/Utility/EnumUtility.cs new file mode 100644 index 0000000..d20d539 --- /dev/null +++ b/Assets/Scripts/Utility/EnumUtility.cs @@ -0,0 +1,15 @@ +using System; +using UnityEngine.TestTools; + +namespace BracerLib.Utility +{ + [ExcludeFromCoverage] + public static class EnumUtility + { + public static T GetValue(int index) where T : IConvertible => (T)Enum.ToObject(typeof(T), index); + + public static T GetValue(string value) where T : IConvertible => (T)Enum.Parse(typeof(T), value, true); + + public static T[] GetValues() where T : IConvertible => (T[])Enum.GetValues(typeof(T)); + } +} diff --git a/Assets/Scripts/Utility/EnumUtility.cs.meta b/Assets/Scripts/Utility/EnumUtility.cs.meta new file mode 100644 index 0000000..7d979ad --- /dev/null +++ b/Assets/Scripts/Utility/EnumUtility.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: f0af1e16642bde44a9213b87a7940873 \ No newline at end of file diff --git a/Assets/Scripts/Utility/Enumeration.cs b/Assets/Scripts/Utility/Enumeration.cs new file mode 100644 index 0000000..5c70893 --- /dev/null +++ b/Assets/Scripts/Utility/Enumeration.cs @@ -0,0 +1,44 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Reflection; +using UnityEngine.TestTools; + +namespace BracerLib.Utility +{ + /// + /// An object-oriented, extensible base class to represent an enum type. + /// + [ExcludeFromCoverage] + public abstract class Enumeration : IComparable + { + public static IEnumerable GetAll() where T : Enumeration => + typeof(T).GetFields(BindingFlags.Public + | BindingFlags.Static + | BindingFlags.DeclaredOnly) + .Select(f => f.GetValue(null)) + .Cast(); + + public string Name { get; private set; } + public int Id { get; private set; } + + protected Enumeration(int id, string name) => (Id, Name) = (id, name); + + public override string ToString() => Name; + + public override bool Equals(object obj) + { + if (obj is not Enumeration otherValue) + return false; + + var typeMatches = GetType() == obj.GetType(); + var valueMatches = Id.Equals(otherValue.Id); + + return typeMatches && valueMatches; + } + + public override int GetHashCode() => HashCode.Combine(Name, Id); + + public int CompareTo(object obj) => Id.CompareTo(((Enumeration)obj).Id); + } +} diff --git a/Assets/Scripts/Utility/Enumeration.cs.meta b/Assets/Scripts/Utility/Enumeration.cs.meta new file mode 100644 index 0000000..f52f711 --- /dev/null +++ b/Assets/Scripts/Utility/Enumeration.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: 00be9a2e2cb17ca4fb5fd4855caafef0 \ No newline at end of file diff --git a/Assets/Scripts/Utility/ListExtensions.cs b/Assets/Scripts/Utility/ListExtensions.cs new file mode 100644 index 0000000..31a39c0 --- /dev/null +++ b/Assets/Scripts/Utility/ListExtensions.cs @@ -0,0 +1,32 @@ +using System; +using System.Collections.Generic; +using UnityEngine.TestTools; + +namespace BracerLib.Utility +{ + [ExcludeFromCoverage] + public static class ListExtensions + { + public static bool Contains(this T[] array, T value) where T : IComparable + { + for (var i = 0; i < array.Length; i++) + { + if (array[i].CompareTo(value) == 0) + return true; + } + + return false; + } + + public static bool Contains(this List list, U item, Func predicate) + { + for (var i = 0; i < list.Count; ++i) + { + if (predicate(list[i], item)) + return true; + } + + return false; + } + } +} diff --git a/Assets/Scripts/Utility/ListExtensions.cs.meta b/Assets/Scripts/Utility/ListExtensions.cs.meta new file mode 100644 index 0000000..99b6dbc --- /dev/null +++ b/Assets/Scripts/Utility/ListExtensions.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: 2bf3d9a83a2ae4946a0f64c698f37ca2 \ No newline at end of file diff --git a/Assets/Scripts/Utility/MathUtility.cs b/Assets/Scripts/Utility/MathUtility.cs new file mode 100644 index 0000000..534f9df --- /dev/null +++ b/Assets/Scripts/Utility/MathUtility.cs @@ -0,0 +1,93 @@ +using UnityEngine; + +namespace BracerLib.Utility +{ + /// + /// Inclusivity determination for a comparison between a lower and upper bound number. + /// + public enum BoundsInclusivity + { + /// + /// Neither bound is included. + /// + None, + /// + /// Both bounds are included. + /// + Both, + /// + /// Left bound is included. + /// + Left, + /// + /// Right bound is included. + /// + Right + } + + public static class MathUtility + { + public const float TWO_PI = 2f * Mathf.PI; + + /// + /// Overflow of a value between two bounds. Values lower than the lowerbound will cycle from the upperbound and vice versa. + /// + /// The value to overflow, if needed. + /// The lowerbound number to be checked against. + /// The upperbound number to be checked against. + /// Inclusive value within the bounds. + public static int KeepWithinBounds(int value, int lowerBound, int upperBound) + { + var diff = upperBound - lowerBound + 1; + var v = (value - lowerBound) % diff + diff; + v = v % diff + lowerBound; + + return v; + } + + /// + /// Determine if a value is between a lower and upper bound set of numbers. + /// + /// The value to check. + /// The lower bound of the comparison. + /// The upper bound of the comparison. + /// The inclusivity bounds for the comparison. + /// Whether the value is between the two numbers based on the inclusivity passed. + public static bool IsBetween( + int value, + int lowerBound, + int upperBound, + BoundsInclusivity inclusivity = BoundsInclusivity.None + ) + { + var result = inclusivity switch + { + BoundsInclusivity.Both => value >= lowerBound && value <= upperBound, + BoundsInclusivity.Left => value >= lowerBound && value < upperBound, + BoundsInclusivity.Right => value > lowerBound && value <= upperBound, + _ => value > lowerBound && value < upperBound + }; + + return result; + } + + /// + public static bool IsBetween( + float value, + float lowerBound, + float upperBound, + BoundsInclusivity inclusivity = BoundsInclusivity.None + ) + { + var result = inclusivity switch + { + BoundsInclusivity.Both => value >= lowerBound && value <= upperBound, + BoundsInclusivity.Left => value >= lowerBound && value < upperBound, + BoundsInclusivity.Right => value > lowerBound && value <= upperBound, + _ => value > lowerBound && value < upperBound + }; + + return result; + } + } +} diff --git a/Assets/Scripts/Utility/MathUtility.cs.meta b/Assets/Scripts/Utility/MathUtility.cs.meta new file mode 100644 index 0000000..21482d8 --- /dev/null +++ b/Assets/Scripts/Utility/MathUtility.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: 6950e03105df6034da37cc9f7c066710 \ No newline at end of file diff --git a/Assets/Scripts/Utility/RandomUtility.cs b/Assets/Scripts/Utility/RandomUtility.cs new file mode 100644 index 0000000..59ed220 --- /dev/null +++ b/Assets/Scripts/Utility/RandomUtility.cs @@ -0,0 +1,113 @@ +using System; +using UnityEngine; +using UnityEngine.TestTools; +using Random = System.Random; +using Vector2 = System.Numerics.Vector2; +using Vector3 = System.Numerics.Vector3; + +namespace BracerLib.Utility +{ + [ExcludeFromCoverage] + public static class RandomUtility + { + public static readonly string CHARS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789"; + + [ThreadStatic] + private static Random unrepeatedRandomThreadInstance; + + private static Random unrepeatedRandom => unrepeatedRandomThreadInstance ??= new Random(DateTime.Now.Millisecond); + + private static int prevSeed = -1; + + public static float NextFloat(this Random prng) => (float)prng.NextDouble(); + + public static float Range(this Random prng, float minInclusive, float maxExclusive) + => minInclusive + (maxExclusive - minInclusive) * prng.NextFloat(); + + public static void RandomizeUnityRandom() + { + var seed = (int)DateTime.Now.Ticks; + if (seed != prevSeed) + return; + + prevSeed = seed; + UnityEngine.Random.InitState(seed); + } + + /// Random between 0.0 inclusive and 1.0 exclusive. + public static double NextDouble() => unrepeatedRandom.NextDouble(); + + /// Random between 0f inclusive and 1f exclusive. + public static float NextFloat() => unrepeatedRandom.NextFloat(); + + /// + /// Given a value, return a random number between the negative and positive of the input value. + /// + /// Non-negative value. + public static float Range(float bookendRangeValue) => unrepeatedRandom.Range(-bookendRangeValue, bookendRangeValue); + + public static float Range(float minInclusive, float maxExclusive) => unrepeatedRandom.Range(minInclusive, maxExclusive); + + public static int Range(int minInclusive, int maxExclusive) => unrepeatedRandom.Next(minInclusive, maxExclusive); + + /// Random point uniformly distributed on the surface of a sphere of radius 1. + public static Vector3 RandomOnUnitSphere() { + var theta = MathUtility.TWO_PI * NextDouble(); + var phi = Math.Acos(2.0 * NextDouble() - 1.0); + var sinPhi = Math.Sin(phi); + return new Vector3( + (float)(sinPhi * Math.Cos(theta)), + (float)(sinPhi * Math.Sin(theta)), + (float)Math.Cos(phi) + ); + } + + /// Random point uniformly distributed inside a sphere of radius 1. + public static Vector3 RandomInUnitSphere() => RandomOnUnitSphere() * (float)Math.Pow(NextDouble(), 1.0 / 3.0); + + /// Random point uniformly distributed on the perimeter of a circle of radius 1. + public static Vector2 RandomOnUnitCircle() { + var angle = MathUtility.TWO_PI * NextDouble(); + return new Vector2((float)Math.Cos(angle), (float)Math.Sin(angle)); + } + + /// Random point uniformly distributed in a circle of radius 1. + public static Vector2 RandomInUnitCircle() => RandomOnUnitCircle() * (float)Math.Sqrt(NextDouble()); + + /// Random point uniformly distributed in a ring starting at radius1 and ending at radius2. + public static Vector2 RandomInRing(float r1, float r2) { + var r2sq = r2 * r2; + return RandomOnUnitCircle() * (float)Math.Sqrt(NextDouble() * (r1 * r1 - r2sq) + r2sq); + } + + public static Color RandomColorRGB() + { + return new Color( + unrepeatedRandom.NextFloat(), + unrepeatedRandom.NextFloat(), + unrepeatedRandom.NextFloat(), + 1f + ); + } + + public static Color RandomColorRGBA() + { + return new Color( + unrepeatedRandom.NextFloat(), + unrepeatedRandom.NextFloat(), + unrepeatedRandom.NextFloat(), + unrepeatedRandom.NextFloat() + ); + } + public static string GetRandomString(int length) + { + var stringChars = new char[length]; + var random = new Random(); + + for (var i = 0; i < stringChars.Length; i++) + stringChars[i] = CHARS[random.Next(CHARS.Length)]; + + return new string(stringChars); + } + } +} diff --git a/Assets/Scripts/Utility/RandomUtility.cs.meta b/Assets/Scripts/Utility/RandomUtility.cs.meta new file mode 100644 index 0000000..d42cd57 --- /dev/null +++ b/Assets/Scripts/Utility/RandomUtility.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: 431151141fd66ab49aa38604affb75c4 \ No newline at end of file diff --git a/Assets/Scripts/Utility/RegexExtensions.cs b/Assets/Scripts/Utility/RegexExtensions.cs new file mode 100644 index 0000000..099a92c --- /dev/null +++ b/Assets/Scripts/Utility/RegexExtensions.cs @@ -0,0 +1,34 @@ +using System; +using System.Linq; +using System.Text.RegularExpressions; +using UnityEngine.TestTools; + +namespace BracerLib.Utility +{ + [ExcludeFromCoverage] + public static class RegexExtensions + { + public static T GrabValue(this MatchCollection matches, string property) + { + var type = typeof(T); + var underlyingType = Nullable.GetUnderlyingType(type); + type = underlyingType ?? type; + + foreach (var m in matches.Cast()) + { + if (m.Groups[1].Value != property) + continue; + + var value = m.Groups[2].Value; + + if (type != typeof(bool)) + return (T)Convert.ChangeType(value, type); + + if (bool.TryParse(value, out var b)) + return (T)Convert.ChangeType(b, type); + } + + return default; + } + } +} diff --git a/Assets/Scripts/Utility/RegexExtensions.cs.meta b/Assets/Scripts/Utility/RegexExtensions.cs.meta new file mode 100644 index 0000000..15766fc --- /dev/null +++ b/Assets/Scripts/Utility/RegexExtensions.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: 36e5a69e8b0b1724f97e84f459ce350e \ No newline at end of file diff --git a/Assets/Scripts/Utility/Triangulator.cs b/Assets/Scripts/Utility/Triangulator.cs new file mode 100644 index 0000000..f1d5a8b --- /dev/null +++ b/Assets/Scripts/Utility/Triangulator.cs @@ -0,0 +1,128 @@ +using System; +using System.Collections.Generic; +using UnityEngine; + +namespace BracerLib.Utility +{ + /// + /// Sourced from https://mmems.gitbook.io/calepin/Algorithms/Polygon%20triangulation%20-%20tessellation/Triangulator%20-%20Unity + /// + public static class Triangulator + { + public static int[] Triangulate(Vector2[] points) + { + var n = points.Length; + + if (n < 3) + return Array.Empty(); + + var indices = new List(); + var verts = new int[n]; + if (Area(points) > 0f) + { + for (var i = 0; i < n; i++) + verts[i] = i; + } + else + { + for (var i = 0; i < n; i++) + verts[i] = n - 1 - i; + } + + var nv = n; + var count = 2 * nv; + for (int _ = 0, j = nv - 1; nv > 2;) + { + if (count-- <= 0) + return indices.ToArray(); + + var u = j; + if (nv <= u) + u = 0; + j = u + 1; + if (nv <= j) + j = 0; + var w = j + 1; + if (nv <= w) + w = 0; + + if (!Snip(u, j, w, nv, points, verts)) + continue; + + indices.Add(verts[u]); + indices.Add(verts[j]); + indices.Add(verts[w]); + _++; + for (int s = j, t = j + 1; t < nv; s++, t++) + verts[s] = verts[t]; + nv--; + count = 2 * nv; + } + + indices.Reverse(); + + return indices.ToArray(); + } + + public static bool Snip(int u, int v, int w, int n, Vector2[] points, int[] verts) + { + var a = points[verts[u]]; + var b = points[verts[v]]; + var c = points[verts[w]]; + + if (Mathf.Epsilon > (b.x - a.x) * (c.y - a.y) - (b.y - a.y) * (c.x - a.x)) + return false; + + for (var i = 0; i < n; i++) + { + if (i == u || i == v || i == w) + continue; + + if (InsideTriangle(a, b, c, points[verts[i]])) + return false; + } + + return true; + } + + /// + /// Check if a point is inside of a triangle of 3 given points. + /// Used from https://blackpawn.com/texts/pointinpoly/ + /// + public static bool InsideTriangle(Vector2 a, Vector2 b, Vector2 c, Vector2 p) + { + var v0 = c - a; + var v1 = b - a; + var v2 = p - a; + + var dots = new[] + { + Vector2.Dot(v0, v0), + Vector2.Dot(v0, v1), + Vector2.Dot(v0, v2), + Vector2.Dot(v1, v1), + Vector2.Dot(v1, v2) + }; + + var invDenom = 1 / (dots[0] * dots[3] - dots[1] * dots[1]); + var u = (dots[3] * dots[2] - dots[1] * dots[4]) * invDenom; + var v = (dots[0] * dots[4] - dots[1] * dots[2]) * invDenom; + + return u >= 0f && v >= 0f && u + v < 1; + } + + public static float Area(Vector2[] points) + { + var n = points.Length; + var area = 0f; + for (int i = n - 1, j = 0; j < n; i = j++) + { + var iVal = points[i]; + var jVal = points[j]; + area += iVal.x * jVal.y - jVal.x * iVal.y; + } + + return area * 0.5f; + } + } +} diff --git a/Assets/Scripts/Utility/Triangulator.cs.meta b/Assets/Scripts/Utility/Triangulator.cs.meta new file mode 100644 index 0000000..a9c30ae --- /dev/null +++ b/Assets/Scripts/Utility/Triangulator.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: a9d6996e34b8a71408e2f8b2f19fd6d5 \ No newline at end of file diff --git a/Assets/Scripts/Utility/UIUtility.cs b/Assets/Scripts/Utility/UIUtility.cs new file mode 100644 index 0000000..ab9e22b --- /dev/null +++ b/Assets/Scripts/Utility/UIUtility.cs @@ -0,0 +1,48 @@ +using System.Collections.Generic; +using UnityEngine; +using UnityEngine.EventSystems; +using UnityEngine.SceneManagement; +using UnityEngine.TestTools; + +namespace BracerLib.Utility +{ + [ExcludeFromCoverage] + public static class UIUtility + { + private static bool performRefresh; + private static PointerEventData eventBuffer = new PointerEventData(EventSystem.current); + private static List raycastResultBuffer = new List(4); + + static UIUtility() + { + SceneManager.activeSceneChanged += (before, after) => Refresh(); + } + + public static bool IsMouseOverUI(Vector2 position, int uiLayer) + { + var eventSystem = EventSystem.current; + eventBuffer.position = position; + eventSystem.RaycastAll(eventBuffer, raycastResultBuffer); + + for (var i = 0; i < raycastResultBuffer.Count; i++) + { + var raycastResult = raycastResultBuffer[i]; + + if (raycastResult.gameObject.layer == uiLayer) + return true; + } + + return false; + } + + private static void Refresh() + { + var current = EventSystem.current; + + if (current == null) + return; + + eventBuffer = new PointerEventData(EventSystem.current); + } + } +} diff --git a/Assets/Scripts/Utility/UIUtility.cs.meta b/Assets/Scripts/Utility/UIUtility.cs.meta new file mode 100644 index 0000000..56ab4b7 --- /dev/null +++ b/Assets/Scripts/Utility/UIUtility.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: 3ded37ec57e76974ea31fe55ee797b90 \ No newline at end of file diff --git a/Assets/Scripts/Utility/UnityLogger.cs b/Assets/Scripts/Utility/UnityLogger.cs new file mode 100644 index 0000000..c8219db --- /dev/null +++ b/Assets/Scripts/Utility/UnityLogger.cs @@ -0,0 +1,59 @@ +using System; +using UnityEngine; +using UnityEngine.TestTools; +using Object = UnityEngine.Object; + +namespace BracerLib.Utility +{ + [ExcludeFromCoverage] + public class UnityLogger : MonoBehaviour, ILogger + { + public ILogHandler logHandler + { + get => Debug.unityLogger.logHandler; + set => Debug.unityLogger.logHandler = value; + } + public bool logEnabled + { + get => Debug.unityLogger.logEnabled; + set => Debug.unityLogger.logEnabled = value; + } + public LogType filterLogType + { + get => Debug.unityLogger.filterLogType; + set => Debug.unityLogger.filterLogType = value; + } + + public void LogFormat(LogType logType, Object context, string format, params object[] args) => Debug.unityLogger.LogFormat(logType, context, format, args); + + public void LogException(Exception exception, Object context) => Debug.unityLogger.LogException(exception, context); + + public bool IsLogTypeAllowed(LogType logType) => Debug.unityLogger.IsLogTypeAllowed(logType); + + public void Log(LogType logType, object message) => Debug.unityLogger.Log(logType, message); + + public void Log(LogType logType, object message, Object context) => Debug.unityLogger.Log(logType, message, context); + + public void Log(LogType logType, string logTag, object message) => Debug.unityLogger.Log(logType, logTag, message); + + public void Log(LogType logType, string logTag, object message, Object context) => Debug.unityLogger.Log(logType, logTag, message, context); + + public void Log(object message) => Debug.unityLogger.Log(message); + + public void Log(string logTag, object message) => Debug.unityLogger.Log(logTag, message); + + public void Log(string logTag, object message, Object context) => Debug.unityLogger.Log(logTag, message, context); + + public void LogWarning(string logTag, object message) => Debug.unityLogger.LogWarning(logTag, message); + + public void LogWarning(string logTag, object message, Object context) => Debug.unityLogger.LogWarning(logTag, message, context); + + public void LogError(string logTag, object message) => Debug.unityLogger.LogError(logTag, message); + + public void LogError(string logTag, object message, Object context) => Debug.unityLogger.LogError(logTag, message, context); + + public void LogFormat(LogType logType, string format, params object[] args) => Debug.unityLogger.LogFormat(logType, format, args); + + public void LogException(Exception exception) => Debug.unityLogger.LogException(exception); + } +} diff --git a/Assets/Scripts/Utility/UnityLogger.cs.meta b/Assets/Scripts/Utility/UnityLogger.cs.meta new file mode 100644 index 0000000..c492152 --- /dev/null +++ b/Assets/Scripts/Utility/UnityLogger.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: 14d325e5522f99c46bedfd5b49f1f5e1 \ No newline at end of file diff --git a/Assets/Scripts/Utility/Vector3Extensions.cs b/Assets/Scripts/Utility/Vector3Extensions.cs new file mode 100644 index 0000000..a6eda9f --- /dev/null +++ b/Assets/Scripts/Utility/Vector3Extensions.cs @@ -0,0 +1,47 @@ +using System; +using UnityEngine; +using UnityEngine.TestTools; + +namespace BracerLib.Utility +{ + [ExcludeFromCoverage] + public static class Vector3Extensions + { + public static Vector3 With(this Vector3 vector, float? x = null, float? y = null, float? z = null) => new(x ?? vector.x, y ?? vector.y, z ?? vector.z); + + public static Vector3 Add(this Vector3 vector, float? x = null, float? y = null, float? z = null) + => new( + x != null ? vector.x + x.Value : vector.x, + y != null ? vector.y + y.Value : vector.y, + z != null ? vector.z + z.Value : vector.z + ); + /// + /// Take an existing Vector3 and truncate all its values to a certain number of decimal places. + /// + public static Vector3 Truncate(this Vector3 value, int decimalPlaces = 3) + { + double adjust = 0.5f / Mathf.Pow(10, decimalPlaces); + + return new Vector3( + (float)Math.Round(value.x - adjust, decimalPlaces), + (float)Math.Round(value.y - adjust, decimalPlaces), + (float)Math.Round(value.z - adjust, decimalPlaces) + ); + } + + public static Vector3 Floor(this Vector3 value) + { + return new Vector3(Mathf.Floor(value.x), Mathf.Floor(value.y), Mathf.Floor(value.z)); + } + + public static Vector3 Ceiling(this Vector3 value) + { + return new Vector3(Mathf.Ceil(value.x), Mathf.Ceil(value.y), Mathf.Ceil(value.z)); + } + + public static Vector3 ProjectToLine(this Vector3 point, Vector3 lineStart, Vector3 lineEnd) + { + return Vector3.Project(point - lineStart, lineEnd - lineStart) + lineStart; + } + } +} diff --git a/Assets/Scripts/Utility/Vector3Extensions.cs.meta b/Assets/Scripts/Utility/Vector3Extensions.cs.meta new file mode 100644 index 0000000..dd42f2d --- /dev/null +++ b/Assets/Scripts/Utility/Vector3Extensions.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: fed94b0e69fa9d74081a5836acda2292 \ No newline at end of file diff --git a/Assets/Scripts/Utility/Vector4Int.cs b/Assets/Scripts/Utility/Vector4Int.cs new file mode 100644 index 0000000..cd5e351 --- /dev/null +++ b/Assets/Scripts/Utility/Vector4Int.cs @@ -0,0 +1,292 @@ +using System; +using System.Globalization; +using System.Runtime.CompilerServices; +using UnityEngine; +using UnityEngine.TestTools; + +namespace BracerLib.Utility +{ + [ExcludeFromCoverage] + public struct Vector4Int : IEquatable, IFormattable + { + private static readonly Vector4Int zero = new Vector4Int(0, 0, 0, 0); + private static readonly Vector4Int one = new Vector4Int(1, 1, 1, 1); + private static readonly Vector4Int up = new Vector4Int(0, 1, 0, 0); + private static readonly Vector4Int down = new Vector4Int(0, -1, 0, 0); + private static readonly Vector4Int left = new Vector4Int(-1, 0, 0, 0); + private static readonly Vector4Int right = new Vector4Int(1, 0, 0, 0); + private static readonly Vector4Int forward = new Vector4Int(0, 0, 1, 0); + private static readonly Vector4Int back = new Vector4Int(0, 0, -1, 0); + + public static Vector4Int Zero + { + [MethodImpl(MethodImplOptions.AggressiveInlining)] get => Vector4Int.zero; + } + + /// + /// Shorthand for writing Vector4Int(1, 1, 1, 1). + /// + public static Vector4Int One + { + [MethodImpl(MethodImplOptions.AggressiveInlining)] get => Vector4Int.one; + } + + /// + /// Shorthand for writing Vector4Int(0, 1, 0, 0). + /// + public static Vector4Int Up + { + [MethodImpl(MethodImplOptions.AggressiveInlining)] get => Vector4Int.up; + } + + /// + /// Shorthand for writing Vector4Int(0, -1, 0, 0). + /// + public static Vector4Int Down + { + [MethodImpl(MethodImplOptions.AggressiveInlining)] get => Vector4Int.down; + } + + /// + /// Shorthand for writing Vector4Int(-1, 0, 0, 0). + /// + public static Vector4Int Left + { + [MethodImpl(MethodImplOptions.AggressiveInlining)] get => Vector4Int.left; + } + + /// + /// Shorthand for writing Vector4Int(1, 0, 0, 0). + /// + public static Vector4Int Right + { + [MethodImpl(MethodImplOptions.AggressiveInlining)] get => Vector4Int.right; + } + + /// + /// Shorthand for writing Vector4Int(0, 0, 1, 0). + /// + public static Vector4Int Forward + { + [MethodImpl(MethodImplOptions.AggressiveInlining)] get => Vector4Int.forward; + } + + /// + /// Shorthand for writing Vector4Int(0, 0, -1, 0). + /// + public static Vector4Int Back + { + [MethodImpl(MethodImplOptions.AggressiveInlining)] get => Vector4Int.back; + } + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public static implicit operator Vector4(Vector4Int v) + { + return new Vector4((float) v.x, (float) v.y, (float) v.z); + } + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public static explicit operator Vector2Int(Vector4Int v) => new Vector2Int(v.x, v.y); + + /// + /// Converts a Vector4 to a Vector4Int by doing a Floor to each value. + /// + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public static Vector4Int FloorToInt(Vector4 v) + { + return new Vector4Int(Mathf.FloorToInt(v.x), Mathf.FloorToInt(v.y), Mathf.FloorToInt(v.z), Mathf.FloorToInt(v.w)); + } + + /// + /// Converts a Vector4 to a Vector4Int by doing a Ceiling to each value. + /// + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public static Vector4Int CeilToInt(Vector4 v) + { + return new Vector4Int(Mathf.CeilToInt(v.x), Mathf.CeilToInt(v.y), Mathf.CeilToInt(v.z),Mathf.CeilToInt(v.w)); + } + + /// + /// Converts a Vector4 to a Vector4Int by doing a Round to each value. + /// + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public static Vector4Int RoundToInt(Vector4 v) + { + return new Vector4Int(Mathf.RoundToInt(v.x), Mathf.RoundToInt(v.y), Mathf.RoundToInt(v.z), Mathf.RoundToInt(v.w)); + } + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public static Vector4Int operator +(Vector4Int a, Vector4Int b) + { + return new Vector4Int(a.x + b.x, a.y + b.y, a.z + b.z, a.w + b.w); + } + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public static Vector4Int operator -(Vector4Int a, Vector4Int b) + { + return new Vector4Int(a.x - b.x, a.y - b.y, a.z - b.z, a.w - b.w); + } + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public static Vector4Int operator *(Vector4Int a, Vector4Int b) + { + return new Vector4Int(a.x * b.x, a.y * b.y, a.z * b.z, a.w * b.w); + } + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public static Vector4Int operator -(Vector4Int a) => new Vector4Int(-a.x, -a.y, -a.z, -a.w); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public static Vector4Int operator *(Vector4Int a, int b) + { + return new Vector4Int(a.x * b, a.y * b, a.z * b, a.w * b); + } + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public static Vector4Int operator *(int a, Vector4Int b) + { + return new Vector4Int(a * b.x, a * b.y, a * b.z, a * b.w); + } + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public static Vector4Int operator /(Vector4Int a, int b) + { + return new Vector4Int(a.x / b, a.y / b, a.z / b, a.w / b); + } + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public static bool operator ==(Vector4Int lhs, Vector4Int rhs) + { + return lhs.x == rhs.x && lhs.y == rhs.y && lhs.z == rhs.z && lhs.w == rhs.w; + } + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public static bool operator !=(Vector4Int lhs, Vector4Int rhs) => !(lhs == rhs); + + private int x; + private int y; + private int z; + private int w; + + public int X + { + [MethodImpl(MethodImplOptions.AggressiveInlining)] get => x; + [MethodImpl(MethodImplOptions.AggressiveInlining)] set => x = value; + } + + public int Y + { + [MethodImpl(MethodImplOptions.AggressiveInlining)] get => y; + [MethodImpl(MethodImplOptions.AggressiveInlining)] set => y = value; + } + + public int Z + { + [MethodImpl(MethodImplOptions.AggressiveInlining)] get => z; + [MethodImpl(MethodImplOptions.AggressiveInlining)] set => z = value; + } + + public int W + { + [MethodImpl(MethodImplOptions.AggressiveInlining)] get => w; + [MethodImpl(MethodImplOptions.AggressiveInlining)] set => w = value; + } + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public Vector4Int(int x) + { + this.x = x; + this.y = 0; + this.z = 0; + this.w = 0; + } + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public Vector4Int(int x, int y) + { + this.x = x; + this.y = y; + this.z = 0; + this.w = 0; + } + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public Vector4Int(int x, int y, int z) + { + this.x = x; + this.y = y; + this.z = z; + this.w = 0; + } + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public Vector4Int(int x, int y, int z, int w) + { + this.x = x; + this.y = y; + this.z = z; + this.w = w; + } + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public Vector4Int(Vector3Int indexes, int w) + { + x = indexes.x; + y = indexes.y; + z = indexes.z; + this.w = w; + } + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool Equals(Vector4Int other) => this == other; + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public override bool Equals(object other) => other is Vector4Int other1 && Equals(other1); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public override int GetHashCode() + { + int hashCode1 = y.GetHashCode(); + int hashCode2 = z.GetHashCode(); + return x.GetHashCode() ^ hashCode1 << 4 ^ hashCode1 >> 28 ^ hashCode2 >> 4 ^ hashCode2 << 28; + } + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public Vector3Int ToVector3Int() + { + return new Vector3Int(x, y, z); + } + + /// + /// Returns a formatted string for this vector. + /// + /// A numeric format string. + /// An object that specifies culture-specific formatting. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public override string ToString() => ToString((string) null, (IFormatProvider) null); + + /// + /// Returns a formatted string for this vector. + /// + /// A numeric format string. + /// An object that specifies culture-specific formatting. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public string ToString(string format) => ToString(format, (IFormatProvider) null); + + /// + /// Returns a formatted string for this vector. + /// + /// A numeric format string. + /// An object that specifies culture-specific formatting. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public string ToString(string format, IFormatProvider formatProvider) + { + if (formatProvider == null) + formatProvider = (IFormatProvider) CultureInfo.InvariantCulture.NumberFormat; + return $"({(object)x.ToString(format, formatProvider)}, {(object)y.ToString(format, formatProvider)}, {(object)z.ToString(format, formatProvider)})"; + } + } +} diff --git a/Assets/Scripts/Utility/Vector4Int.cs.meta b/Assets/Scripts/Utility/Vector4Int.cs.meta new file mode 100644 index 0000000..5a7594c --- /dev/null +++ b/Assets/Scripts/Utility/Vector4Int.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: c064042965f85f94598e90c06fb7ec18 \ No newline at end of file diff --git a/Assets/Settings.meta b/Assets/Settings.meta new file mode 100644 index 0000000..39b94dd --- /dev/null +++ b/Assets/Settings.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 709f11a7f3c4041caa4ef136ea32d874 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Settings/Build Profiles.meta b/Assets/Settings/Build Profiles.meta new file mode 100644 index 0000000..415047f --- /dev/null +++ b/Assets/Settings/Build Profiles.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: e69beeeb0446b064e9fbe657847718f2 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Settings/Build Profiles/WindowsTest.asset b/Assets/Settings/Build Profiles/WindowsTest.asset new file mode 100644 index 0000000..d3974a5 --- /dev/null +++ b/Assets/Settings/Build Profiles/WindowsTest.asset @@ -0,0 +1,1001 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 15003, guid: 0000000000000000e000000000000000, type: 0} + m_Name: WindowsTest + m_EditorClassIdentifier: UnityEditor.dll::UnityEditor.Build.Profile.BuildProfile + m_AssetVersion: 1 + m_BuildTarget: 19 + m_Subtarget: 2 + m_PlatformId: 4e3c793746204150860bf175a9a41a05 + m_PlatformBuildProfile: + rid: 5155379823799697408 + m_OverrideGlobalSceneList: 1 + m_Scenes: + - m_enabled: 1 + m_path: Assets/Scenes/Tests/Test_Empty.unity + - m_enabled: 1 + m_path: Assets/Scenes/Tests/Test_UnitMovement.unity + m_HasScriptingDefines: 1 + m_ScriptingDefines: + - UNITY_INCLUDE_TESTS + m_PlayerSettingsYaml: + m_Settings: + - line: '| PlayerSettings:' + - line: '| m_ObjectHideFlags: 0' + - line: '| serializedVersion: 28' + - line: '| productGUID: da363db4bce9f554a92085f21f679bf8' + - line: '| AndroidProfiler: 0' + - line: '| AndroidFilterTouchesWhenObscured: 0' + - line: '| AndroidEnableSustainedPerformanceMode: 0' + - line: '| defaultScreenOrientation: 4' + - line: '| targetDevice: 2' + - line: '| useOnDemandResources: 0' + - line: '| accelerometerFrequency: 60' + - line: '| companyName: Bracer Studios LLC' + - line: '| productName: Bracer Lib Test' + - line: '| defaultCursor: {instanceID: 0}' + - line: '| cursorHotspot: {x: 0, y: 0}' + - line: '| m_SplashScreenBackgroundColor: {r: 0.13725491, g: 0.12156863, b: + 0.1254902, a: 1}' + - line: '| m_ShowUnitySplashScreen: 1' + - line: '| m_ShowUnitySplashLogo: 1' + - line: '| m_SplashScreenOverlayOpacity: 1' + - line: '| m_SplashScreenAnimation: 1' + - line: '| m_SplashScreenLogoStyle: 1' + - line: '| m_SplashScreenDrawMode: 0' + - line: '| m_SplashScreenBackgroundAnimationZoom: 1' + - line: '| m_SplashScreenLogoAnimationZoom: 1' + - line: '| m_SplashScreenBackgroundLandscapeAspect: 1' + - line: '| m_SplashScreenBackgroundPortraitAspect: 1' + - line: '| m_SplashScreenBackgroundLandscapeUvs:' + - line: '| serializedVersion: 2' + - line: '| x: 0' + - line: '| y: 0' + - line: '| width: 1' + - line: '| height: 1' + - line: '| m_SplashScreenBackgroundPortraitUvs:' + - line: '| serializedVersion: 2' + - line: '| x: 0' + - line: '| y: 0' + - line: '| width: 1' + - line: '| height: 1' + - line: '| m_SplashScreenLogos: []' + - line: '| m_VirtualRealitySplashScreen: {instanceID: 0}' + - line: '| m_HolographicTrackingLossScreen: {instanceID: 0}' + - line: '| defaultScreenWidth: 1024' + - line: '| defaultScreenHeight: 768' + - line: '| defaultScreenWidthWeb: 960' + - line: '| defaultScreenHeightWeb: 600' + - line: '| m_StereoRenderingPath: 0' + - line: '| m_ActiveColorSpace: 1' + - line: '| unsupportedMSAAFallback: 0' + - line: '| m_SpriteBatchMaxVertexCount: 65535' + - line: '| m_SpriteBatchVertexThreshold: 300' + - line: '| m_MTRendering: 1' + - line: '| mipStripping: 0' + - line: '| numberOfMipsStripped: 0' + - line: '| numberOfMipsStrippedPerMipmapLimitGroup: {}' + - line: '| m_StackTraceTypes: 010000000100000001000000010000000100000001000000' + - line: '| iosShowActivityIndicatorOnLoading: -1' + - line: '| androidShowActivityIndicatorOnLoading: -1' + - line: '| iosUseCustomAppBackgroundBehavior: 0' + - line: '| allowedAutorotateToPortrait: 1' + - line: '| allowedAutorotateToPortraitUpsideDown: 1' + - line: '| allowedAutorotateToLandscapeRight: 1' + - line: '| allowedAutorotateToLandscapeLeft: 1' + - line: '| useOSAutorotation: 1' + - line: '| use32BitDisplayBuffer: 1' + - line: '| preserveFramebufferAlpha: 0' + - line: '| disableDepthAndStencilBuffers: 0' + - line: '| androidStartInFullscreen: 1' + - line: '| androidRenderOutsideSafeArea: 1' + - line: '| androidUseSwappy: 0' + - line: '| androidDisplayOptions: 1' + - line: '| androidBlitType: 0' + - line: '| androidResizeableActivity: 1' + - line: '| androidDefaultWindowWidth: 1920' + - line: '| androidDefaultWindowHeight: 1080' + - line: '| androidMinimumWindowWidth: 400' + - line: '| androidMinimumWindowHeight: 300' + - line: '| androidFullscreenMode: 1' + - line: '| androidAutoRotationBehavior: 1' + - line: '| androidPredictiveBackSupport: 1' + - line: '| androidApplicationEntry: 2' + - line: '| defaultIsNativeResolution: 1' + - line: '| macRetinaSupport: 1' + - line: '| runInBackground: 0' + - line: '| muteOtherAudioSources: 0' + - line: '| Prepare IOS For Recording: 0' + - line: '| Force IOS Speakers When Recording: 0' + - line: '| audioSpatialExperience: 0' + - line: '| deferSystemGesturesMode: 0' + - line: '| hideHomeButton: 0' + - line: '| submitAnalytics: 1' + - line: '| usePlayerLog: 1' + - line: '| dedicatedServerOptimizations: 1' + - line: '| bakeCollisionMeshes: 0' + - line: '| forceSingleInstance: 0' + - line: '| useFlipModelSwapchain: 1' + - line: '| resizableWindow: 0' + - line: '| useMacAppStoreValidation: 0' + - line: '| macAppStoreCategory: public.app-category.games' + - line: '| gpuSkinning: 1' + - line: '| meshDeformation: 2' + - line: '| xboxPIXTextureCapture: 0' + - line: '| xboxEnableAvatar: 0' + - line: '| xboxEnableKinect: 0' + - line: '| xboxEnableKinectAutoTracking: 0' + - line: '| xboxEnableFitness: 0' + - line: '| visibleInBackground: 1' + - line: '| allowFullscreenSwitch: 1' + - line: '| fullscreenMode: 1' + - line: '| xboxSpeechDB: 0' + - line: '| xboxEnableHeadOrientation: 0' + - line: '| xboxEnableGuest: 0' + - line: '| xboxEnablePIXSampling: 0' + - line: '| metalFramebufferOnly: 0' + - line: '| metalUseMetalDisplayLink: 0' + - line: '| xboxOneResolution: 0' + - line: '| xboxOneSResolution: 0' + - line: '| xboxOneXResolution: 3' + - line: '| xboxOneMonoLoggingLevel: 0' + - line: '| xboxOneLoggingLevel: 1' + - line: '| xboxOneDisableEsram: 0' + - line: '| xboxOneEnableTypeOptimization: 0' + - line: '| xboxOnePresentImmediateThreshold: 0' + - line: '| switchQueueCommandMemory: 1048576' + - line: '| switchQueueControlMemory: 16384' + - line: '| switchQueueComputeMemory: 262144' + - line: '| switchNVNShaderPoolsGranularity: 33554432' + - line: '| switchNVNDefaultPoolsGranularity: 16777216' + - line: '| switchNVNOtherPoolsGranularity: 16777216' + - line: '| switchGpuScratchPoolGranularity: 2097152' + - line: '| switchAllowGpuScratchShrinking: 0' + - line: '| switchNVNMaxPublicTextureIDCount: 0' + - line: '| switchNVNMaxPublicSamplerIDCount: 0' + - line: '| switchMaxWorkerMultiple: 8' + - line: '| switchNVNGraphicsFirmwareMemory: 32' + - line: '| switchGraphicsJobsSyncAfterKick: 1' + - line: '| vulkanNumSwapchainBuffers: 3' + - line: '| vulkanEnableSetSRGBWrite: 0' + - line: '| vulkanEnablePreTransform: 1' + - line: '| vulkanEnableLateAcquireNextImage: 0' + - line: '| vulkanEnableCommandBufferRecycling: 1' + - line: '| loadStoreDebugModeEnabled: 0' + - line: '| visionOSBundleVersion: 1.0' + - line: '| tvOSBundleVersion: 1.0' + - line: '| bundleVersion: 0.1.0' + - line: '| preloadedAssets: []' + - line: '| metroInputSource: 0' + - line: '| wsaTransparentSwapchain: 0' + - line: '| m_HolographicPauseOnTrackingLoss: 1' + - line: '| xboxOneDisableKinectGpuReservation: 1' + - line: '| xboxOneEnable7thCore: 1' + - line: '| vrSettings:' + - line: '| enable360StereoCapture: 0' + - line: '| isWsaHolographicRemotingEnabled: 0' + - line: '| enableFrameTimingStats: 0' + - line: '| enableOpenGLProfilerGPURecorders: 1' + - line: '| allowHDRDisplaySupport: 0' + - line: '| useHDRDisplay: 0' + - line: '| hdrBitDepth: 0' + - line: '| m_ColorGamuts: 00000000' + - line: '| targetPixelDensity: 30' + - line: '| resolutionScalingMode: 0' + - line: '| resetResolutionOnWindowResize: 0' + - line: '| androidSupportedAspectRatio: 1' + - line: '| androidMaxAspectRatio: 2.4' + - line: '| androidMinAspectRatio: 1' + - line: '| applicationIdentifier:' + - line: '| Android: com.UnityTechnologies.com.unity.template.urpblank' + - line: '| Standalone: com.Unity-Technologies.com.unity.template.urp-blank' + - line: '| iPhone: com.Unity-Technologies.com.unity.template.urp-blank' + - line: '| buildNumber:' + - line: '| Standalone: 0' + - line: '| VisionOS: 0' + - line: '| iPhone: 0' + - line: '| tvOS: 0' + - line: '| overrideDefaultApplicationIdentifier: 1' + - line: '| AndroidBundleVersionCode: 1' + - line: '| AndroidMinSdkVersion: 25' + - line: '| AndroidTargetSdkVersion: 0' + - line: '| AndroidPreferredInstallLocation: 1' + - line: '| AndroidPreferredDataLocation: 1' + - line: '| aotOptions: ' + - line: '| stripEngineCode: 1' + - line: '| iPhoneStrippingLevel: 0' + - line: '| iPhoneScriptCallOptimization: 0' + - line: '| ForceInternetPermission: 0' + - line: '| ForceSDCardPermission: 0' + - line: '| CreateWallpaper: 0' + - line: '| androidSplitApplicationBinary: 0' + - line: '| keepLoadedShadersAlive: 0' + - line: '| StripUnusedMeshComponents: 0' + - line: '| strictShaderVariantMatching: 0' + - line: '| VertexChannelCompressionMask: 4054' + - line: '| iPhoneSdkVersion: 988' + - line: '| iOSSimulatorArchitecture: 0' + - line: '| iOSTargetOSVersionString: 15.0' + - line: '| tvOSSdkVersion: 0' + - line: '| tvOSSimulatorArchitecture: 0' + - line: '| tvOSRequireExtendedGameController: 0' + - line: '| tvOSTargetOSVersionString: 15.0' + - line: '| VisionOSSdkVersion: 0' + - line: '| VisionOSTargetOSVersionString: 1.0' + - line: '| uIPrerenderedIcon: 0' + - line: '| uIRequiresPersistentWiFi: 0' + - line: '| uIRequiresFullScreen: 1' + - line: '| uIStatusBarHidden: 1' + - line: '| uIExitOnSuspend: 0' + - line: '| uIStatusBarStyle: 0' + - line: '| appleTVSplashScreen: {instanceID: 0}' + - line: '| appleTVSplashScreen2x: {instanceID: 0}' + - line: '| tvOSSmallIconLayers: []' + - line: '| tvOSSmallIconLayers2x: []' + - line: '| tvOSLargeIconLayers: []' + - line: '| tvOSLargeIconLayers2x: []' + - line: '| tvOSTopShelfImageLayers: []' + - line: '| tvOSTopShelfImageLayers2x: []' + - line: '| tvOSTopShelfImageWideLayers: []' + - line: '| tvOSTopShelfImageWideLayers2x: []' + - line: '| iOSLaunchScreenType: 0' + - line: '| iOSLaunchScreenPortrait: {instanceID: 0}' + - line: '| iOSLaunchScreenLandscape: {instanceID: 0}' + - line: '| iOSLaunchScreenBackgroundColor:' + - line: '| serializedVersion: 2' + - line: '| rgba: 0' + - line: '| iOSLaunchScreenFillPct: 100' + - line: '| iOSLaunchScreenSize: 100' + - line: '| iOSLaunchScreeniPadType: 0' + - line: '| iOSLaunchScreeniPadImage: {instanceID: 0}' + - line: '| iOSLaunchScreeniPadBackgroundColor:' + - line: '| serializedVersion: 2' + - line: '| rgba: 0' + - line: '| iOSLaunchScreeniPadFillPct: 100' + - line: '| iOSLaunchScreeniPadSize: 100' + - line: '| iOSLaunchScreenCustomStoryboardPath: ' + - line: '| iOSLaunchScreeniPadCustomStoryboardPath: ' + - line: '| iOSDeviceRequirements: []' + - line: '| iOSURLSchemes: []' + - line: '| macOSURLSchemes: []' + - line: '| iOSBackgroundModes: 0' + - line: '| iOSMetalForceHardShadows: 0' + - line: '| metalEditorSupport: 1' + - line: '| metalAPIValidation: 1' + - line: '| metalCompileShaderBinary: 0' + - line: '| iOSRenderExtraFrameOnPause: 0' + - line: '| iosCopyPluginsCodeInsteadOfSymlink: 0' + - line: '| appleDeveloperTeamID: ' + - line: '| iOSManualSigningProvisioningProfileID: ' + - line: '| tvOSManualSigningProvisioningProfileID: ' + - line: '| VisionOSManualSigningProvisioningProfileID: ' + - line: '| iOSManualSigningProvisioningProfileType: 0' + - line: '| tvOSManualSigningProvisioningProfileType: 0' + - line: '| VisionOSManualSigningProvisioningProfileType: 0' + - line: '| appleEnableAutomaticSigning: 0' + - line: '| iOSRequireARKit: 0' + - line: '| iOSAutomaticallyDetectAndAddCapabilities: 1' + - line: '| appleEnableProMotion: 0' + - line: '| shaderPrecisionModel: 0' + - line: '| clonedFromGUID: 3c72c65a16f0acb438eed22b8b16c24a' + - line: '| templatePackageId: com.unity.template.urp-blank@17.0.14' + - line: '| templateDefaultScene: Assets/Scenes/SampleScene.unity' + - line: '| useCustomMainManifest: 0' + - line: '| useCustomLauncherManifest: 0' + - line: '| useCustomMainGradleTemplate: 0' + - line: '| useCustomLauncherGradleManifest: 0' + - line: '| useCustomBaseGradleTemplate: 0' + - line: '| useCustomGradlePropertiesTemplate: 0' + - line: '| useCustomGradleSettingsTemplate: 0' + - line: '| useCustomProguardFile: 0' + - line: '| AndroidTargetArchitectures: 2' + - line: '| AndroidAllowedArchitectures: -13' + - line: '| AndroidSplashScreenScale: 0' + - line: '| androidSplashScreen: {instanceID: 0}' + - line: '| AndroidKeystoreName: ' + - line: '| AndroidKeyaliasName: ' + - line: '| AndroidEnableArmv9SecurityFeatures: 0' + - line: '| AndroidEnableArm64MTE: 0' + - line: '| AndroidBuildApkPerCpuArchitecture: 0' + - line: '| AndroidTVCompatibility: 0' + - line: '| AndroidIsGame: 1' + - line: '| androidAppCategory: 3' + - line: '| useAndroidAppCategory: 1' + - line: '| androidAppCategoryOther: ' + - line: '| AndroidEnableTango: 0' + - line: '| androidEnableBanner: 1' + - line: '| androidUseLowAccuracyLocation: 0' + - line: '| androidUseCustomKeystore: 0' + - line: '| m_AndroidBanners:' + - line: '| - width: 320' + - line: '| height: 180' + - line: '| banner: {instanceID: 0}' + - line: '| androidGamepadSupportLevel: 0' + - line: '| AndroidMinifyRelease: 0' + - line: '| AndroidMinifyDebug: 0' + - line: '| AndroidValidateAppBundleSize: 1' + - line: '| AndroidAppBundleSizeToValidate: 150' + - line: '| AndroidReportGooglePlayAppDependencies: 1' + - line: '| androidSymbolsSizeThreshold: 800' + - line: '| m_BuildTargetIcons: []' + - line: '| m_BuildTargetPlatformIcons:' + - line: '| - m_BuildTarget: iPhone' + - line: '| m_Icons:' + - line: '| - m_Textures: []' + - line: '| m_Width: 180' + - line: '| m_Height: 180' + - line: '| m_Kind: 0' + - line: '| m_SubKind: iPhone' + - line: '| - m_Textures: []' + - line: '| m_Width: 120' + - line: '| m_Height: 120' + - line: '| m_Kind: 0' + - line: '| m_SubKind: iPhone' + - line: '| - m_Textures: []' + - line: '| m_Width: 167' + - line: '| m_Height: 167' + - line: '| m_Kind: 0' + - line: '| m_SubKind: iPad' + - line: '| - m_Textures: []' + - line: '| m_Width: 152' + - line: '| m_Height: 152' + - line: '| m_Kind: 0' + - line: '| m_SubKind: iPad' + - line: '| - m_Textures: []' + - line: '| m_Width: 76' + - line: '| m_Height: 76' + - line: '| m_Kind: 0' + - line: '| m_SubKind: iPad' + - line: '| - m_Textures: []' + - line: '| m_Width: 120' + - line: '| m_Height: 120' + - line: '| m_Kind: 3' + - line: '| m_SubKind: iPhone' + - line: '| - m_Textures: []' + - line: '| m_Width: 80' + - line: '| m_Height: 80' + - line: '| m_Kind: 3' + - line: '| m_SubKind: iPhone' + - line: '| - m_Textures: []' + - line: '| m_Width: 80' + - line: '| m_Height: 80' + - line: '| m_Kind: 3' + - line: '| m_SubKind: iPad' + - line: '| - m_Textures: []' + - line: '| m_Width: 40' + - line: '| m_Height: 40' + - line: '| m_Kind: 3' + - line: '| m_SubKind: iPad' + - line: '| - m_Textures: []' + - line: '| m_Width: 87' + - line: '| m_Height: 87' + - line: '| m_Kind: 1' + - line: '| m_SubKind: iPhone' + - line: '| - m_Textures: []' + - line: '| m_Width: 58' + - line: '| m_Height: 58' + - line: '| m_Kind: 1' + - line: '| m_SubKind: iPhone' + - line: '| - m_Textures: []' + - line: '| m_Width: 29' + - line: '| m_Height: 29' + - line: '| m_Kind: 1' + - line: '| m_SubKind: iPhone' + - line: '| - m_Textures: []' + - line: '| m_Width: 58' + - line: '| m_Height: 58' + - line: '| m_Kind: 1' + - line: '| m_SubKind: iPad' + - line: '| - m_Textures: []' + - line: '| m_Width: 29' + - line: '| m_Height: 29' + - line: '| m_Kind: 1' + - line: '| m_SubKind: iPad' + - line: '| - m_Textures: []' + - line: '| m_Width: 60' + - line: '| m_Height: 60' + - line: '| m_Kind: 2' + - line: '| m_SubKind: iPhone' + - line: '| - m_Textures: []' + - line: '| m_Width: 40' + - line: '| m_Height: 40' + - line: '| m_Kind: 2' + - line: '| m_SubKind: iPhone' + - line: '| - m_Textures: []' + - line: '| m_Width: 40' + - line: '| m_Height: 40' + - line: '| m_Kind: 2' + - line: '| m_SubKind: iPad' + - line: '| - m_Textures: []' + - line: '| m_Width: 20' + - line: '| m_Height: 20' + - line: '| m_Kind: 2' + - line: '| m_SubKind: iPad' + - line: '| - m_Textures: []' + - line: '| m_Width: 1024' + - line: '| m_Height: 1024' + - line: '| m_Kind: 4' + - line: '| m_SubKind: App Store' + - line: '| - m_BuildTarget: Android' + - line: '| m_Icons:' + - line: '| - m_Textures: []' + - line: '| m_Width: 432' + - line: '| m_Height: 432' + - line: '| m_Kind: 2' + - line: '| m_SubKind: ' + - line: '| - m_Textures: []' + - line: '| m_Width: 324' + - line: '| m_Height: 324' + - line: '| m_Kind: 2' + - line: '| m_SubKind: ' + - line: '| - m_Textures: []' + - line: '| m_Width: 216' + - line: '| m_Height: 216' + - line: '| m_Kind: 2' + - line: '| m_SubKind: ' + - line: '| - m_Textures: []' + - line: '| m_Width: 162' + - line: '| m_Height: 162' + - line: '| m_Kind: 2' + - line: '| m_SubKind: ' + - line: '| - m_Textures: []' + - line: '| m_Width: 108' + - line: '| m_Height: 108' + - line: '| m_Kind: 2' + - line: '| m_SubKind: ' + - line: '| - m_Textures: []' + - line: '| m_Width: 81' + - line: '| m_Height: 81' + - line: '| m_Kind: 2' + - line: '| m_SubKind: ' + - line: '| - m_Textures: []' + - line: '| m_Width: 192' + - line: '| m_Height: 192' + - line: '| m_Kind: 1' + - line: '| m_SubKind: ' + - line: '| - m_Textures: []' + - line: '| m_Width: 144' + - line: '| m_Height: 144' + - line: '| m_Kind: 1' + - line: '| m_SubKind: ' + - line: '| - m_Textures: []' + - line: '| m_Width: 96' + - line: '| m_Height: 96' + - line: '| m_Kind: 1' + - line: '| m_SubKind: ' + - line: '| - m_Textures: []' + - line: '| m_Width: 72' + - line: '| m_Height: 72' + - line: '| m_Kind: 1' + - line: '| m_SubKind: ' + - line: '| - m_Textures: []' + - line: '| m_Width: 48' + - line: '| m_Height: 48' + - line: '| m_Kind: 1' + - line: '| m_SubKind: ' + - line: '| - m_Textures: []' + - line: '| m_Width: 36' + - line: '| m_Height: 36' + - line: '| m_Kind: 1' + - line: '| m_SubKind: ' + - line: '| - m_Textures: []' + - line: '| m_Width: 192' + - line: '| m_Height: 192' + - line: '| m_Kind: 0' + - line: '| m_SubKind: ' + - line: '| - m_Textures: []' + - line: '| m_Width: 144' + - line: '| m_Height: 144' + - line: '| m_Kind: 0' + - line: '| m_SubKind: ' + - line: '| - m_Textures: []' + - line: '| m_Width: 96' + - line: '| m_Height: 96' + - line: '| m_Kind: 0' + - line: '| m_SubKind: ' + - line: '| - m_Textures: []' + - line: '| m_Width: 72' + - line: '| m_Height: 72' + - line: '| m_Kind: 0' + - line: '| m_SubKind: ' + - line: '| - m_Textures: []' + - line: '| m_Width: 48' + - line: '| m_Height: 48' + - line: '| m_Kind: 0' + - line: '| m_SubKind: ' + - line: '| - m_Textures: []' + - line: '| m_Width: 36' + - line: '| m_Height: 36' + - line: '| m_Kind: 0' + - line: '| m_SubKind: ' + - line: '| - m_BuildTarget: tvOS' + - line: '| m_Icons:' + - line: '| - m_Textures: []' + - line: '| m_Width: 1280' + - line: '| m_Height: 768' + - line: '| m_Kind: 0' + - line: '| m_SubKind: ' + - line: '| - m_Textures: []' + - line: '| m_Width: 800' + - line: '| m_Height: 480' + - line: '| m_Kind: 0' + - line: '| m_SubKind: ' + - line: '| - m_Textures: []' + - line: '| m_Width: 400' + - line: '| m_Height: 240' + - line: '| m_Kind: 0' + - line: '| m_SubKind: ' + - line: '| - m_Textures: []' + - line: '| m_Width: 4640' + - line: '| m_Height: 1440' + - line: '| m_Kind: 1' + - line: '| m_SubKind: ' + - line: '| - m_Textures: []' + - line: '| m_Width: 2320' + - line: '| m_Height: 720' + - line: '| m_Kind: 1' + - line: '| m_SubKind: ' + - line: '| - m_Textures: []' + - line: '| m_Width: 3840' + - line: '| m_Height: 1440' + - line: '| m_Kind: 1' + - line: '| m_SubKind: ' + - line: '| - m_Textures: []' + - line: '| m_Width: 1920' + - line: '| m_Height: 720' + - line: '| m_Kind: 1' + - line: '| m_SubKind: ' + - line: '| m_BuildTargetBatching: []' + - line: '| m_BuildTargetShaderSettings: []' + - line: '| m_BuildTargetGraphicsJobs: []' + - line: '| m_BuildTargetGraphicsJobMode: []' + - line: '| m_BuildTargetGraphicsAPIs:' + - line: '| - m_BuildTarget: iOSSupport' + - line: '| m_APIs: 10000000' + - line: '| m_Automatic: 1' + - line: '| - m_BuildTarget: AndroidPlayer' + - line: '| m_APIs: 150000000b000000' + - line: '| m_Automatic: 0' + - line: '| m_BuildTargetVRSettings: []' + - line: '| m_DefaultShaderChunkSizeInMB: 16' + - line: '| m_DefaultShaderChunkCount: 0' + - line: '| openGLRequireES31: 0' + - line: '| openGLRequireES31AEP: 0' + - line: '| openGLRequireES32: 0' + - line: '| m_TemplateCustomTags: {}' + - line: '| mobileMTRendering:' + - line: '| Android: 1' + - line: '| iPhone: 1' + - line: '| tvOS: 1' + - line: '| m_BuildTargetGroupLightmapEncodingQuality:' + - line: '| - serializedVersion: 2' + - line: '| m_BuildTarget: Android' + - line: '| m_EncodingQuality: 1' + - line: '| m_BuildTargetGroupHDRCubemapEncodingQuality: []' + - line: '| m_BuildTargetGroupLightmapSettings: []' + - line: '| m_BuildTargetGroupLoadStoreDebugModeSettings: []' + - line: '| m_BuildTargetNormalMapEncoding:' + - line: '| - m_BuildTarget: Android' + - line: '| m_Encoding: 1' + - line: '| m_BuildTargetDefaultTextureCompressionFormat:' + - line: '| - serializedVersion: 3' + - line: '| m_BuildTarget: Android' + - line: '| m_Formats: 03000000' + - line: '| playModeTestRunnerEnabled: 0' + - line: '| runPlayModeTestAsEditModeTest: 0' + - line: '| actionOnDotNetUnhandledException: 1' + - line: '| editorGfxJobOverride: 1' + - line: '| enableInternalProfiler: 0' + - line: '| logObjCUncaughtExceptions: 1' + - line: '| enableCrashReportAPI: 0' + - line: '| cameraUsageDescription: ' + - line: '| locationUsageDescription: ' + - line: '| microphoneUsageDescription: ' + - line: '| bluetoothUsageDescription: ' + - line: '| macOSTargetOSVersion: 12.0' + - line: '| switchNMETAOverride: ' + - line: '| switchNetLibKey: ' + - line: '| switchSocketMemoryPoolSize: 6144' + - line: '| switchSocketAllocatorPoolSize: 128' + - line: '| switchSocketConcurrencyLimit: 14' + - line: '| switchScreenResolutionBehavior: 2' + - line: '| switchUseCPUProfiler: 0' + - line: '| switchEnableFileSystemTrace: 0' + - line: '| switchLTOSetting: 0' + - line: '| switchApplicationID: 0x01004b9000490000' + - line: '| switchNSODependencies: ' + - line: '| switchCompilerFlags: ' + - line: '| switchTitleNames_0: ' + - line: '| switchTitleNames_1: ' + - line: '| switchTitleNames_2: ' + - line: '| switchTitleNames_3: ' + - line: '| switchTitleNames_4: ' + - line: '| switchTitleNames_5: ' + - line: '| switchTitleNames_6: ' + - line: '| switchTitleNames_7: ' + - line: '| switchTitleNames_8: ' + - line: '| switchTitleNames_9: ' + - line: '| switchTitleNames_10: ' + - line: '| switchTitleNames_11: ' + - line: '| switchTitleNames_12: ' + - line: '| switchTitleNames_13: ' + - line: '| switchTitleNames_14: ' + - line: '| switchTitleNames_15: ' + - line: '| switchPublisherNames_0: ' + - line: '| switchPublisherNames_1: ' + - line: '| switchPublisherNames_2: ' + - line: '| switchPublisherNames_3: ' + - line: '| switchPublisherNames_4: ' + - line: '| switchPublisherNames_5: ' + - line: '| switchPublisherNames_6: ' + - line: '| switchPublisherNames_7: ' + - line: '| switchPublisherNames_8: ' + - line: '| switchPublisherNames_9: ' + - line: '| switchPublisherNames_10: ' + - line: '| switchPublisherNames_11: ' + - line: '| switchPublisherNames_12: ' + - line: '| switchPublisherNames_13: ' + - line: '| switchPublisherNames_14: ' + - line: '| switchPublisherNames_15: ' + - line: '| switchIcons_0: {instanceID: 0}' + - line: '| switchIcons_1: {instanceID: 0}' + - line: '| switchIcons_2: {instanceID: 0}' + - line: '| switchIcons_3: {instanceID: 0}' + - line: '| switchIcons_4: {instanceID: 0}' + - line: '| switchIcons_5: {instanceID: 0}' + - line: '| switchIcons_6: {instanceID: 0}' + - line: '| switchIcons_7: {instanceID: 0}' + - line: '| switchIcons_8: {instanceID: 0}' + - line: '| switchIcons_9: {instanceID: 0}' + - line: '| switchIcons_10: {instanceID: 0}' + - line: '| switchIcons_11: {instanceID: 0}' + - line: '| switchIcons_12: {instanceID: 0}' + - line: '| switchIcons_13: {instanceID: 0}' + - line: '| switchIcons_14: {instanceID: 0}' + - line: '| switchIcons_15: {instanceID: 0}' + - line: '| switchSmallIcons_0: {instanceID: 0}' + - line: '| switchSmallIcons_1: {instanceID: 0}' + - line: '| switchSmallIcons_2: {instanceID: 0}' + - line: '| switchSmallIcons_3: {instanceID: 0}' + - line: '| switchSmallIcons_4: {instanceID: 0}' + - line: '| switchSmallIcons_5: {instanceID: 0}' + - line: '| switchSmallIcons_6: {instanceID: 0}' + - line: '| switchSmallIcons_7: {instanceID: 0}' + - line: '| switchSmallIcons_8: {instanceID: 0}' + - line: '| switchSmallIcons_9: {instanceID: 0}' + - line: '| switchSmallIcons_10: {instanceID: 0}' + - line: '| switchSmallIcons_11: {instanceID: 0}' + - line: '| switchSmallIcons_12: {instanceID: 0}' + - line: '| switchSmallIcons_13: {instanceID: 0}' + - line: '| switchSmallIcons_14: {instanceID: 0}' + - line: '| switchSmallIcons_15: {instanceID: 0}' + - line: '| switchManualHTML: ' + - line: '| switchAccessibleURLs: ' + - line: '| switchLegalInformation: ' + - line: '| switchMainThreadStackSize: 1048576' + - line: '| switchPresenceGroupId: ' + - line: '| switchLogoHandling: 0' + - line: '| switchReleaseVersion: 0' + - line: '| switchDisplayVersion: 1.0.0' + - line: '| switchStartupUserAccount: 0' + - line: '| switchSupportedLanguagesMask: 0' + - line: '| switchLogoType: 0' + - line: '| switchApplicationErrorCodeCategory: ' + - line: '| switchUserAccountSaveDataSize: 0' + - line: '| switchUserAccountSaveDataJournalSize: 0' + - line: '| switchApplicationAttribute: 0' + - line: '| switchCardSpecSize: -1' + - line: '| switchCardSpecClock: -1' + - line: '| switchRatingsMask: 0' + - line: '| switchRatingsInt_0: 0' + - line: '| switchRatingsInt_1: 0' + - line: '| switchRatingsInt_2: 0' + - line: '| switchRatingsInt_3: 0' + - line: '| switchRatingsInt_4: 0' + - line: '| switchRatingsInt_5: 0' + - line: '| switchRatingsInt_6: 0' + - line: '| switchRatingsInt_7: 0' + - line: '| switchRatingsInt_8: 0' + - line: '| switchRatingsInt_9: 0' + - line: '| switchRatingsInt_10: 0' + - line: '| switchRatingsInt_11: 0' + - line: '| switchRatingsInt_12: 0' + - line: '| switchLocalCommunicationIds_0: ' + - line: '| switchLocalCommunicationIds_1: ' + - line: '| switchLocalCommunicationIds_2: ' + - line: '| switchLocalCommunicationIds_3: ' + - line: '| switchLocalCommunicationIds_4: ' + - line: '| switchLocalCommunicationIds_5: ' + - line: '| switchLocalCommunicationIds_6: ' + - line: '| switchLocalCommunicationIds_7: ' + - line: '| switchParentalControl: 0' + - line: '| switchAllowsScreenshot: 1' + - line: '| switchAllowsVideoCapturing: 1' + - line: '| switchAllowsRuntimeAddOnContentInstall: 0' + - line: '| switchDataLossConfirmation: 0' + - line: '| switchUserAccountLockEnabled: 0' + - line: '| switchSystemResourceMemory: 16777216' + - line: '| switchSupportedNpadStyles: 22' + - line: '| switchNativeFsCacheSize: 32' + - line: '| switchIsHoldTypeHorizontal: 0' + - line: '| switchSupportedNpadCount: 8' + - line: '| switchEnableTouchScreen: 1' + - line: '| switchSocketConfigEnabled: 0' + - line: '| switchTcpInitialSendBufferSize: 32' + - line: '| switchTcpInitialReceiveBufferSize: 64' + - line: '| switchTcpAutoSendBufferSizeMax: 256' + - line: '| switchTcpAutoReceiveBufferSizeMax: 256' + - line: '| switchUdpSendBufferSize: 9' + - line: '| switchUdpReceiveBufferSize: 42' + - line: '| switchSocketBufferEfficiency: 4' + - line: '| switchSocketInitializeEnabled: 1' + - line: '| switchNetworkInterfaceManagerInitializeEnabled: 1' + - line: '| switchDisableHTCSPlayerConnection: 0' + - line: '| switchUseNewStyleFilepaths: 0' + - line: '| switchUseLegacyFmodPriorities: 0' + - line: '| switchUseMicroSleepForYield: 1' + - line: '| switchEnableRamDiskSupport: 0' + - line: '| switchMicroSleepForYieldTime: 25' + - line: '| switchRamDiskSpaceSize: 12' + - line: '| switchUpgradedPlayerSettingsToNMETA: 0' + - line: '| ps4NPAgeRating: 12' + - line: '| ps4NPTitleSecret: ' + - line: '| ps4NPTrophyPackPath: ' + - line: '| ps4ParentalLevel: 11' + - line: '| ps4ContentID: ED1633-NPXX51362_00-0000000000000000' + - line: '| ps4Category: 0' + - line: '| ps4MasterVersion: 01.00' + - line: '| ps4AppVersion: 01.00' + - line: '| ps4AppType: 0' + - line: '| ps4ParamSfxPath: ' + - line: '| ps4VideoOutPixelFormat: 0' + - line: '| ps4VideoOutInitialWidth: 1920' + - line: '| ps4VideoOutBaseModeInitialWidth: 1920' + - line: '| ps4VideoOutReprojectionRate: 60' + - line: '| ps4PronunciationXMLPath: ' + - line: '| ps4PronunciationSIGPath: ' + - line: '| ps4BackgroundImagePath: ' + - line: '| ps4StartupImagePath: ' + - line: '| ps4StartupImagesFolder: ' + - line: '| ps4IconImagesFolder: ' + - line: '| ps4SaveDataImagePath: ' + - line: '| ps4SdkOverride: ' + - line: '| ps4BGMPath: ' + - line: '| ps4ShareFilePath: ' + - line: '| ps4ShareOverlayImagePath: ' + - line: '| ps4PrivacyGuardImagePath: ' + - line: '| ps4ExtraSceSysFile: ' + - line: '| ps4NPtitleDatPath: ' + - line: '| ps4RemotePlayKeyAssignment: -1' + - line: '| ps4RemotePlayKeyMappingDir: ' + - line: '| ps4PlayTogetherPlayerCount: 0' + - line: '| ps4EnterButtonAssignment: 2' + - line: '| ps4ApplicationParam1: 0' + - line: '| ps4ApplicationParam2: 0' + - line: '| ps4ApplicationParam3: 0' + - line: '| ps4ApplicationParam4: 0' + - line: '| ps4DownloadDataSize: 0' + - line: '| ps4GarlicHeapSize: 2048' + - line: '| ps4ProGarlicHeapSize: 2560' + - line: '| playerPrefsMaxSize: 32768' + - line: '| ps4Passcode: frAQBc8Wsa1xVPfvJcrgRYwTiizs2trQ' + - line: '| ps4pnSessions: 1' + - line: '| ps4pnPresence: 1' + - line: '| ps4pnFriends: 1' + - line: '| ps4pnGameCustomData: 1' + - line: '| playerPrefsSupport: 0' + - line: '| enableApplicationExit: 0' + - line: '| resetTempFolder: 1' + - line: '| restrictedAudioUsageRights: 0' + - line: '| ps4UseResolutionFallback: 0' + - line: '| ps4ReprojectionSupport: 0' + - line: '| ps4UseAudio3dBackend: 0' + - line: '| ps4UseLowGarlicFragmentationMode: 1' + - line: '| ps4SocialScreenEnabled: 0' + - line: '| ps4ScriptOptimizationLevel: 2' + - line: '| ps4Audio3dVirtualSpeakerCount: 14' + - line: '| ps4attribCpuUsage: 0' + - line: '| ps4PatchPkgPath: ' + - line: '| ps4PatchLatestPkgPath: ' + - line: '| ps4PatchChangeinfoPath: ' + - line: '| ps4PatchDayOne: 0' + - line: '| ps4attribUserManagement: 0' + - line: '| ps4attribMoveSupport: 0' + - line: '| ps4attrib3DSupport: 0' + - line: '| ps4attribShareSupport: 0' + - line: '| ps4attribExclusiveVR: 0' + - line: '| ps4disableAutoHideSplash: 0' + - line: '| ps4videoRecordingFeaturesUsed: 0' + - line: '| ps4contentSearchFeaturesUsed: 0' + - line: '| ps4CompatibilityPS5: 0' + - line: '| ps4AllowPS5Detection: 0' + - line: '| ps4GPU800MHz: 1' + - line: '| ps4attribEyeToEyeDistanceSettingVR: 0' + - line: '| ps4IncludedModules: []' + - line: '| ps4attribVROutputEnabled: 0' + - line: '| monoEnv: ' + - line: '| splashScreenBackgroundSourceLandscape: {instanceID: 0}' + - line: '| splashScreenBackgroundSourcePortrait: {instanceID: 0}' + - line: '| blurSplashScreenBackground: 1' + - line: '| spritePackerPolicy: ' + - line: '| webGLMemorySize: 32' + - line: '| webGLExceptionSupport: 1' + - line: '| webGLNameFilesAsHashes: 0' + - line: '| webGLShowDiagnostics: 0' + - line: '| webGLDataCaching: 1' + - line: '| webGLDebugSymbols: 0' + - line: '| webGLEmscriptenArgs: ' + - line: '| webGLModulesDirectory: ' + - line: '| webGLTemplate: APPLICATION:Default' + - line: '| webGLAnalyzeBuildSize: 0' + - line: '| webGLUseEmbeddedResources: 0' + - line: '| webGLCompressionFormat: 0' + - line: '| webGLWasmArithmeticExceptions: 0' + - line: '| webGLLinkerTarget: 1' + - line: '| webGLThreadsSupport: 0' + - line: '| webGLDecompressionFallback: 0' + - line: '| webGLInitialMemorySize: 32' + - line: '| webGLMaximumMemorySize: 2048' + - line: '| webGLMemoryGrowthMode: 2' + - line: '| webGLMemoryLinearGrowthStep: 16' + - line: '| webGLMemoryGeometricGrowthStep: 0.2' + - line: '| webGLMemoryGeometricGrowthCap: 96' + - line: '| webGLPowerPreference: 2' + - line: '| webGLWebAssemblyTable: 0' + - line: '| webGLWebAssemblyBigInt: 0' + - line: '| webGLCloseOnQuit: 0' + - line: '| webWasm2023: 0' + - line: '| webEnableSubmoduleStrippingCompatibility: 0' + - line: '| scriptingDefineSymbols: {}' + - line: '| additionalCompilerArguments: {}' + - line: '| platformArchitecture: {}' + - line: '| scriptingBackend:' + - line: '| Android: 1' + - line: '| il2cppCompilerConfiguration: {}' + - line: '| il2cppCodeGeneration: {}' + - line: '| il2cppStacktraceInformation: {}' + - line: '| managedStrippingLevel: {}' + - line: '| incrementalIl2cppBuild: {}' + - line: '| suppressCommonWarnings: 1' + - line: '| allowUnsafeCode: 0' + - line: '| useDeterministicCompilation: 1' + - line: '| additionalIl2CppArgs: ' + - line: '| scriptingRuntimeVersion: 1' + - line: '| gcIncremental: 1' + - line: '| gcWBarrierValidation: 0' + - line: '| apiCompatibilityLevelPerPlatform: {}' + - line: '| editorAssembliesCompatibilityLevel: 1' + - line: '| m_RenderingPath: 1' + - line: '| m_MobileRenderingPath: 1' + - line: '| metroPackageName: BracerLibTest' + - line: '| metroPackageVersion: ' + - line: '| metroCertificatePath: ' + - line: '| metroCertificatePassword: ' + - line: '| metroCertificateSubject: ' + - line: '| metroCertificateIssuer: ' + - line: '| metroCertificateNotAfter: 0000000000000000' + - line: '| metroApplicationDescription: BracerLibTest' + - line: '| wsaImages: {}' + - line: '| metroTileShortName: ' + - line: '| metroTileShowName: 0' + - line: '| metroMediumTileShowName: 0' + - line: '| metroLargeTileShowName: 0' + - line: '| metroWideTileShowName: 0' + - line: '| metroSupportStreamingInstall: 0' + - line: '| metroLastRequiredScene: 0' + - line: '| metroDefaultTileSize: 1' + - line: '| metroTileForegroundText: 2' + - line: '| metroTileBackgroundColor: {r: 0.13333334, g: 0.17254902, b: 0.21568628, + a: 0}' + - line: '| metroSplashScreenBackgroundColor: {r: 0.12941177, g: 0.17254902, + b: 0.21568628, a: 1}' + - line: '| metroSplashScreenUseBackgroundColor: 0' + - line: '| syncCapabilities: 0' + - line: '| platformCapabilities: {}' + - line: '| metroTargetDeviceFamilies: {}' + - line: '| metroFTAName: ' + - line: '| metroFTAFileTypes: []' + - line: '| metroProtocolName: ' + - line: '| vcxProjDefaultLanguage: ' + - line: '| XboxOneProductId: ' + - line: '| XboxOneUpdateKey: ' + - line: '| XboxOneSandboxId: ' + - line: '| XboxOneContentId: ' + - line: '| XboxOneTitleId: ' + - line: '| XboxOneSCId: ' + - line: '| XboxOneGameOsOverridePath: ' + - line: '| XboxOnePackagingOverridePath: ' + - line: '| XboxOneAppManifestOverridePath: ' + - line: '| XboxOneVersion: 1.0.0.0' + - line: '| XboxOnePackageEncryption: 0' + - line: '| XboxOnePackageUpdateGranularity: 2' + - line: '| XboxOneDescription: ' + - line: '| XboxOneLanguage:' + - line: '| - enus' + - line: '| XboxOneCapability: []' + - line: '| XboxOneGameRating: {}' + - line: '| XboxOneIsContentPackage: 0' + - line: '| XboxOneEnhancedXboxCompatibilityMode: 0' + - line: '| XboxOneEnableGPUVariability: 1' + - line: '| XboxOneSockets: {}' + - line: '| XboxOneSplashScreen: {instanceID: 0}' + - line: '| XboxOneAllowedProductIds: []' + - line: '| XboxOnePersistentLocalStorageSize: 0' + - line: '| XboxOneXTitleMemory: 8' + - line: '| XboxOneOverrideIdentityName: ' + - line: '| XboxOneOverrideIdentityPublisher: ' + - line: '| vrEditorSettings: {}' + - line: '| cloudServicesEnabled: {}' + - line: '| luminIcon:' + - line: '| m_Name: ' + - line: '| m_ModelFolderPath: ' + - line: '| m_PortalFolderPath: ' + - line: '| luminCert:' + - line: '| m_CertPath: ' + - line: '| m_SignPackage: 1' + - line: '| luminIsChannelApp: 0' + - line: '| luminVersion:' + - line: '| m_VersionCode: 1' + - line: '| m_VersionName: ' + - line: '| hmiPlayerDataPath: ' + - line: '| hmiForceSRGBBlit: 1' + - line: '| embeddedLinuxEnableGamepadInput: 0' + - line: '| hmiCpuConfiguration: ' + - line: '| hmiLogStartupTiming: 0' + - line: '| qnxGraphicConfPath: ' + - line: '| apiCompatibilityLevel: 6' + - line: '| captureStartupLogs: {}' + - line: '| activeInputHandler: 1' + - line: '| windowsGamepadBackendHint: 0' + - line: '| cloudProjectId: c6a9b8cd-fa7d-4b43-b27f-1aaaccade5e1' + - line: '| framebufferDepthMemorylessMode: 0' + - line: '| qualitySettingsNames: []' + - line: '| projectName: BracerLibTest' + - line: '| organizationId: blake-farrugia' + - line: '| cloudEnabled: 0' + - line: '| legacyClampBlendShapeWeights: 0' + - line: '| hmiLoadingImage: {instanceID: 0}' + - line: '| platformRequiresReadableAssets: 0' + - line: '| virtualTexturingSupportEnabled: 0' + - line: '| insecureHttpOption: 0' + - line: '| androidVulkanDenyFilterList: []' + - line: '| androidVulkanAllowFilterList: []' + - line: '| androidVulkanDeviceFilterListAsset: {instanceID: 0}' + - line: '| d3d12DeviceFilterListAsset: {instanceID: 0}' + - line: '| allowedHttpConnections: 3' + - line: '| ' + references: + version: 2 + RefIds: + - rid: 5155379823799697408 + type: {class: WindowsPlatformSettings, ns: UnityEditor.WindowsStandalone, asm: UnityEditor.WindowsStandalone.Extensions} + data: + m_Development: 0 + m_ConnectProfiler: 0 + m_BuildWithDeepProfilingSupport: 0 + m_AllowDebugging: 0 + m_WaitForManagedDebugger: 0 + m_ManagedDebuggerFixedPort: 0 + m_ExplicitNullChecks: 0 + m_ExplicitDivideByZeroChecks: 0 + m_ExplicitArrayBoundsChecks: 0 + m_CompressionType: 0 + m_InstallInBuildFolder: 0 + m_InsightsSettingsContainer: + m_BuildProfileEngineDiagnosticsState: 2 + m_AdaptivePerformanceEnabled: 0 + m_WindowsBuildAndRunDeployTarget: 0 + m_Architecture: 0 + m_CreateSolution: 0 + m_CopyPDBFiles: 0 + m_WindowsDevicePortalAddress: + m_WindowsDevicePortalUsername: diff --git a/Assets/Settings/Build Profiles/WindowsTest.asset.meta b/Assets/Settings/Build Profiles/WindowsTest.asset.meta new file mode 100644 index 0000000..bd652b7 --- /dev/null +++ b/Assets/Settings/Build Profiles/WindowsTest.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: f83c78574de34614f8fd24de20231ce7 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Settings/DefaultVolumeProfile.asset b/Assets/Settings/DefaultVolumeProfile.asset new file mode 100644 index 0000000..6fb1822 --- /dev/null +++ b/Assets/Settings/DefaultVolumeProfile.asset @@ -0,0 +1,982 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &-9167874883656233139 +MonoBehaviour: + m_ObjectHideFlags: 3 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5485954d14dfb9a4c8ead8edb0ded5b1, type: 3} + m_Name: LiftGammaGain + m_EditorClassIdentifier: + active: 1 + lift: + m_OverrideState: 1 + m_Value: {x: 1, y: 1, z: 1, w: 0} + gamma: + m_OverrideState: 1 + m_Value: {x: 1, y: 1, z: 1, w: 0} + gain: + m_OverrideState: 1 + m_Value: {x: 1, y: 1, z: 1, w: 0} +--- !u!114 &-8270506406425502121 +MonoBehaviour: + m_ObjectHideFlags: 3 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 70afe9e12c7a7ed47911bb608a23a8ff, type: 3} + m_Name: SplitToning + m_EditorClassIdentifier: + active: 1 + shadows: + m_OverrideState: 1 + m_Value: {r: 0.5, g: 0.5, b: 0.5, a: 1} + highlights: + m_OverrideState: 1 + m_Value: {r: 0.5, g: 0.5, b: 0.5, a: 1} + balance: + m_OverrideState: 1 + m_Value: 0 +--- !u!114 &-8104416584915340131 +MonoBehaviour: + m_ObjectHideFlags: 3 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 0} + m_Name: CopyPasteTestComponent2 + m_EditorClassIdentifier: Unity.RenderPipelines.Core.Editor.Tests:UnityEditor.Rendering.Tests:VolumeComponentCopyPasteTests/CopyPasteTestComponent2 + active: 1 + p1: + m_OverrideState: 1 + m_Value: 0 + p2: + m_OverrideState: 1 + m_Value: 0 + p21: + m_OverrideState: 1 + m_Value: 0 +--- !u!114 &-7750755424749557576 +MonoBehaviour: + m_ObjectHideFlags: 3 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 60f3b30c03e6ba64d9a27dc9dba8f28d, type: 3} + m_Name: OutlineVolumeComponent + m_EditorClassIdentifier: + active: 1 + Enabled: + m_OverrideState: 1 + m_Value: 0 +--- !u!114 &-7743500325797982168 +MonoBehaviour: + m_ObjectHideFlags: 3 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ccf1aba9553839d41ae37dd52e9ebcce, type: 3} + m_Name: MotionBlur + m_EditorClassIdentifier: + active: 1 + mode: + m_OverrideState: 1 + m_Value: 0 + quality: + m_OverrideState: 1 + m_Value: 0 + intensity: + m_OverrideState: 1 + m_Value: 0 + clamp: + m_OverrideState: 1 + m_Value: 0.05 +--- !u!114 &-7274224791359825572 +MonoBehaviour: + m_ObjectHideFlags: 3 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 0fd9ee276a1023e439cf7a9c393195fa, type: 3} + m_Name: TestAnimationCurveVolumeComponent + m_EditorClassIdentifier: + active: 1 + testParameter: + m_OverrideState: 1 + m_Value: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0.5 + value: 10 + inSlope: 0 + outSlope: 10 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 1 + value: 15 + inSlope: 10 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 +--- !u!114 &-6335409530604852063 +MonoBehaviour: + m_ObjectHideFlags: 3 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 66f335fb1ffd8684294ad653bf1c7564, type: 3} + m_Name: ColorAdjustments + m_EditorClassIdentifier: + active: 1 + postExposure: + m_OverrideState: 1 + m_Value: 0 + contrast: + m_OverrideState: 1 + m_Value: 0 + colorFilter: + m_OverrideState: 1 + m_Value: {r: 1, g: 1, b: 1, a: 1} + hueShift: + m_OverrideState: 1 + m_Value: 0 + saturation: + m_OverrideState: 1 + m_Value: 0 +--- !u!114 &-6288072647309666549 +MonoBehaviour: + m_ObjectHideFlags: 3 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 29fa0085f50d5e54f8144f766051a691, type: 3} + m_Name: FilmGrain + m_EditorClassIdentifier: + active: 1 + type: + m_OverrideState: 1 + m_Value: 0 + intensity: + m_OverrideState: 1 + m_Value: 0 + response: + m_OverrideState: 1 + m_Value: 0.8 + texture: + m_OverrideState: 1 + m_Value: {fileID: 0} +--- !u!114 &-5520245016509672950 +MonoBehaviour: + m_ObjectHideFlags: 3 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 97c23e3b12dc18c42a140437e53d3951, type: 3} + m_Name: Tonemapping + m_EditorClassIdentifier: + active: 1 + mode: + m_OverrideState: 1 + m_Value: 0 + neutralHDRRangeReductionMode: + m_OverrideState: 1 + m_Value: 2 + acesPreset: + m_OverrideState: 1 + m_Value: 3 + hueShiftAmount: + m_OverrideState: 1 + m_Value: 0 + detectPaperWhite: + m_OverrideState: 1 + m_Value: 0 + paperWhite: + m_OverrideState: 1 + m_Value: 300 + detectBrightnessLimits: + m_OverrideState: 1 + m_Value: 1 + minNits: + m_OverrideState: 1 + m_Value: 0.005 + maxNits: + m_OverrideState: 1 + m_Value: 1000 +--- !u!114 &-5360449096862653589 +MonoBehaviour: + m_ObjectHideFlags: 3 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 0} + m_Name: VolumeComponentSupportedEverywhere + m_EditorClassIdentifier: Unity.RenderPipelines.Core.Editor.Tests:UnityEngine.Rendering.Tests:VolumeComponentEditorSupportedOnTests/VolumeComponentSupportedEverywhere + active: 1 +--- !u!114 &-5139089513906902183 +MonoBehaviour: + m_ObjectHideFlags: 3 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5a00a63fdd6bd2a45ab1f2d869305ffd, type: 3} + m_Name: OasisFogVolumeComponent + m_EditorClassIdentifier: + active: 1 + Density: + m_OverrideState: 1 + m_Value: 0 + StartDistance: + m_OverrideState: 1 + m_Value: 0 + HeightRange: + m_OverrideState: 1 + m_Value: {x: 0, y: 50} + Tint: + m_OverrideState: 1 + m_Value: {r: 1, g: 1, b: 1, a: 1} + SunScatteringIntensity: + m_OverrideState: 1 + m_Value: 2 +--- !u!114 &-4463884970436517307 +MonoBehaviour: + m_ObjectHideFlags: 3 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fb60a22f311433c4c962b888d1393f88, type: 3} + m_Name: PaniniProjection + m_EditorClassIdentifier: + active: 1 + distance: + m_OverrideState: 1 + m_Value: 0 + cropToFit: + m_OverrideState: 1 + m_Value: 1 +--- !u!114 &-1410297666881709256 +MonoBehaviour: + m_ObjectHideFlags: 3 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 6bd486065ce11414fa40e631affc4900, type: 3} + m_Name: ProbeVolumesOptions + m_EditorClassIdentifier: + active: 1 + normalBias: + m_OverrideState: 1 + m_Value: 0.33 + viewBias: + m_OverrideState: 1 + m_Value: 0 + scaleBiasWithMinProbeDistance: + m_OverrideState: 1 + m_Value: 0 + samplingNoise: + m_OverrideState: 1 + m_Value: 0.1 + animateSamplingNoise: + m_OverrideState: 1 + m_Value: 1 + leakReductionMode: + m_OverrideState: 1 + m_Value: 1 + minValidDotProductValue: + m_OverrideState: 1 + m_Value: 0.1 + occlusionOnlyReflectionNormalization: + m_OverrideState: 1 + m_Value: 1 + intensityMultiplier: + m_OverrideState: 1 + m_Value: 1 + skyOcclusionIntensityMultiplier: + m_OverrideState: 1 + m_Value: 1 +--- !u!114 &-1216621516061285780 +MonoBehaviour: + m_ObjectHideFlags: 3 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 0b2db86121404754db890f4c8dfe81b2, type: 3} + m_Name: Bloom + m_EditorClassIdentifier: + active: 1 + skipIterations: + m_OverrideState: 1 + m_Value: 1 + threshold: + m_OverrideState: 1 + m_Value: 0.9 + intensity: + m_OverrideState: 1 + m_Value: 0 + scatter: + m_OverrideState: 1 + m_Value: 0.7 + clamp: + m_OverrideState: 1 + m_Value: 65472 + tint: + m_OverrideState: 1 + m_Value: {r: 1, g: 1, b: 1, a: 1} + highQualityFiltering: + m_OverrideState: 1 + m_Value: 0 + downscale: + m_OverrideState: 1 + m_Value: 0 + maxIterations: + m_OverrideState: 1 + m_Value: 6 + dirtTexture: + m_OverrideState: 1 + m_Value: {fileID: 0} + dimension: 1 + dirtIntensity: + m_OverrideState: 1 + m_Value: 0 +--- !u!114 &-1170528603972255243 +MonoBehaviour: + m_ObjectHideFlags: 3 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 221518ef91623a7438a71fef23660601, type: 3} + m_Name: WhiteBalance + m_EditorClassIdentifier: + active: 1 + temperature: + m_OverrideState: 1 + m_Value: 0 + tint: + m_OverrideState: 1 + m_Value: 0 +--- !u!114 &-581120513425526550 +MonoBehaviour: + m_ObjectHideFlags: 3 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 0} + m_Name: CopyPasteTestComponent3 + m_EditorClassIdentifier: Unity.RenderPipelines.Core.Editor.Tests:UnityEditor.Rendering.Tests:VolumeComponentCopyPasteTests/CopyPasteTestComponent3 + active: 1 + p1: + m_OverrideState: 1 + m_Value: 0 + p2: + m_OverrideState: 1 + m_Value: 0 + p31: + m_OverrideState: 1 + m_Value: {r: 0, g: 0, b: 0, a: 1} +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d7fd9488000d3734a9e00ee676215985, type: 3} + m_Name: DefaultVolumeProfile + m_EditorClassIdentifier: + components: + - {fileID: -9167874883656233139} + - {fileID: 1918650496244738858} + - {fileID: 853819529557874667} + - {fileID: 1052315754049611418} + - {fileID: -1170528603972255243} + - {fileID: -8270506406425502121} + - {fileID: -5520245016509672950} + - {fileID: 7173750748008157695} + - {fileID: 1666464333004379222} + - {fileID: 9001657382290151224} + - {fileID: -6335409530604852063} + - {fileID: -1216621516061285780} + - {fileID: 3959858460715838825} + - {fileID: -7743500325797982168} + - {fileID: 4644742534064026673} + - {fileID: -4463884970436517307} + - {fileID: -6288072647309666549} + - {fileID: 7518938298396184218} + - {fileID: -1410297666881709256} + - {fileID: -7750755424749557576} + - {fileID: -5139089513906902183} +--- !u!114 &853819529557874667 +MonoBehaviour: + m_ObjectHideFlags: 3 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 06437c1ff663d574d9447842ba0a72e4, type: 3} + m_Name: ScreenSpaceLensFlare + m_EditorClassIdentifier: + active: 1 + intensity: + m_OverrideState: 1 + m_Value: 0 + tintColor: + m_OverrideState: 1 + m_Value: {r: 1, g: 1, b: 1, a: 1} + bloomMip: + m_OverrideState: 1 + m_Value: 1 + firstFlareIntensity: + m_OverrideState: 1 + m_Value: 1 + secondaryFlareIntensity: + m_OverrideState: 1 + m_Value: 1 + warpedFlareIntensity: + m_OverrideState: 1 + m_Value: 1 + warpedFlareScale: + m_OverrideState: 1 + m_Value: {x: 1, y: 1} + samples: + m_OverrideState: 1 + m_Value: 1 + sampleDimmer: + m_OverrideState: 1 + m_Value: 0.5 + vignetteEffect: + m_OverrideState: 1 + m_Value: 1 + startingPosition: + m_OverrideState: 1 + m_Value: 1.25 + scale: + m_OverrideState: 1 + m_Value: 1.5 + streaksIntensity: + m_OverrideState: 1 + m_Value: 0 + streaksLength: + m_OverrideState: 1 + m_Value: 0.5 + streaksOrientation: + m_OverrideState: 1 + m_Value: 0 + streaksThreshold: + m_OverrideState: 1 + m_Value: 0.25 + resolution: + m_OverrideState: 1 + m_Value: 4 + chromaticAbberationIntensity: + m_OverrideState: 1 + m_Value: 0.5 +--- !u!114 &1052315754049611418 +MonoBehaviour: + m_ObjectHideFlags: 3 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 558a8e2b6826cf840aae193990ba9f2e, type: 3} + m_Name: ShadowsMidtonesHighlights + m_EditorClassIdentifier: + active: 1 + shadows: + m_OverrideState: 1 + m_Value: {x: 1, y: 1, z: 1, w: 0} + midtones: + m_OverrideState: 1 + m_Value: {x: 1, y: 1, z: 1, w: 0} + highlights: + m_OverrideState: 1 + m_Value: {x: 1, y: 1, z: 1, w: 0} + shadowsStart: + m_OverrideState: 1 + m_Value: 0 + shadowsEnd: + m_OverrideState: 1 + m_Value: 0.3 + highlightsStart: + m_OverrideState: 1 + m_Value: 0.55 + highlightsEnd: + m_OverrideState: 1 + m_Value: 1 +--- !u!114 &1666464333004379222 +MonoBehaviour: + m_ObjectHideFlags: 3 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 3eb4b772797da9440885e8bd939e9560, type: 3} + m_Name: ColorCurves + m_EditorClassIdentifier: + active: 1 + master: + m_OverrideState: 1 + m_Value: + k__BackingField: 2 + m_Loop: 0 + m_ZeroValue: 0 + m_Range: 1 + m_Curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 1 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + red: + m_OverrideState: 1 + m_Value: + k__BackingField: 2 + m_Loop: 0 + m_ZeroValue: 0 + m_Range: 1 + m_Curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 1 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + green: + m_OverrideState: 1 + m_Value: + k__BackingField: 2 + m_Loop: 0 + m_ZeroValue: 0 + m_Range: 1 + m_Curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 1 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + blue: + m_OverrideState: 1 + m_Value: + k__BackingField: 2 + m_Loop: 0 + m_ZeroValue: 0 + m_Range: 1 + m_Curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 1 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + hueVsHue: + m_OverrideState: 1 + m_Value: + k__BackingField: 0 + m_Loop: 1 + m_ZeroValue: 0.5 + m_Range: 1 + m_Curve: + serializedVersion: 2 + m_Curve: [] + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + hueVsSat: + m_OverrideState: 1 + m_Value: + k__BackingField: 0 + m_Loop: 1 + m_ZeroValue: 0.5 + m_Range: 1 + m_Curve: + serializedVersion: 2 + m_Curve: [] + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + satVsSat: + m_OverrideState: 1 + m_Value: + k__BackingField: 0 + m_Loop: 0 + m_ZeroValue: 0.5 + m_Range: 1 + m_Curve: + serializedVersion: 2 + m_Curve: [] + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + lumVsSat: + m_OverrideState: 1 + m_Value: + k__BackingField: 0 + m_Loop: 0 + m_ZeroValue: 0.5 + m_Range: 1 + m_Curve: + serializedVersion: 2 + m_Curve: [] + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 +--- !u!114 &1918650496244738858 +MonoBehaviour: + m_ObjectHideFlags: 3 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: e021b4c809a781e468c2988c016ebbea, type: 3} + m_Name: ColorLookup + m_EditorClassIdentifier: + active: 1 + texture: + m_OverrideState: 1 + m_Value: {fileID: 0} + dimension: 1 + contribution: + m_OverrideState: 1 + m_Value: 0 +--- !u!114 &3959858460715838825 +MonoBehaviour: + m_ObjectHideFlags: 3 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: c01700fd266d6914ababb731e09af2eb, type: 3} + m_Name: DepthOfField + m_EditorClassIdentifier: + active: 1 + mode: + m_OverrideState: 1 + m_Value: 0 + gaussianStart: + m_OverrideState: 1 + m_Value: 10 + gaussianEnd: + m_OverrideState: 1 + m_Value: 30 + gaussianMaxRadius: + m_OverrideState: 1 + m_Value: 1 + highQualitySampling: + m_OverrideState: 1 + m_Value: 0 + focusDistance: + m_OverrideState: 1 + m_Value: 10 + aperture: + m_OverrideState: 1 + m_Value: 5.6 + focalLength: + m_OverrideState: 1 + m_Value: 50 + bladeCount: + m_OverrideState: 1 + m_Value: 5 + bladeCurvature: + m_OverrideState: 1 + m_Value: 1 + bladeRotation: + m_OverrideState: 1 + m_Value: 0 +--- !u!114 &4251301726029935498 +MonoBehaviour: + m_ObjectHideFlags: 3 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 74955a4b0b4243bc87231e8b59ed9140, type: 3} + m_Name: TestVolume + m_EditorClassIdentifier: + active: 1 + param: + m_OverrideState: 1 + m_Value: 123 +--- !u!114 &4644742534064026673 +MonoBehaviour: + m_ObjectHideFlags: 3 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 81180773991d8724ab7f2d216912b564, type: 3} + m_Name: ChromaticAberration + m_EditorClassIdentifier: + active: 1 + intensity: + m_OverrideState: 1 + m_Value: 0 +--- !u!114 &6940869943325143175 +MonoBehaviour: + m_ObjectHideFlags: 3 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 0} + m_Name: VolumeComponentSupportedOnAnySRP + m_EditorClassIdentifier: Unity.RenderPipelines.Core.Editor.Tests:UnityEngine.Rendering.Tests:VolumeComponentEditorSupportedOnTests/VolumeComponentSupportedOnAnySRP + active: 1 +--- !u!114 &7173750748008157695 +MonoBehaviour: + m_ObjectHideFlags: 3 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 899c54efeace73346a0a16faa3afe726, type: 3} + m_Name: Vignette + m_EditorClassIdentifier: + active: 1 + color: + m_OverrideState: 1 + m_Value: {r: 0, g: 0, b: 0, a: 1} + center: + m_OverrideState: 1 + m_Value: {x: 0.5, y: 0.5} + intensity: + m_OverrideState: 1 + m_Value: 0 + smoothness: + m_OverrideState: 1 + m_Value: 0.2 + rounded: + m_OverrideState: 1 + m_Value: 0 +--- !u!114 &7518938298396184218 +MonoBehaviour: + m_ObjectHideFlags: 3 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: c5e1dc532bcb41949b58bc4f2abfbb7e, type: 3} + m_Name: LensDistortion + m_EditorClassIdentifier: + active: 1 + intensity: + m_OverrideState: 1 + m_Value: 0 + xMultiplier: + m_OverrideState: 1 + m_Value: 1 + yMultiplier: + m_OverrideState: 1 + m_Value: 1 + center: + m_OverrideState: 1 + m_Value: {x: 0.5, y: 0.5} + scale: + m_OverrideState: 1 + m_Value: 1 +--- !u!114 &9001657382290151224 +MonoBehaviour: + m_ObjectHideFlags: 3 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: cdfbdbb87d3286943a057f7791b43141, type: 3} + m_Name: ChannelMixer + m_EditorClassIdentifier: + active: 1 + redOutRedIn: + m_OverrideState: 1 + m_Value: 100 + redOutGreenIn: + m_OverrideState: 1 + m_Value: 0 + redOutBlueIn: + m_OverrideState: 1 + m_Value: 0 + greenOutRedIn: + m_OverrideState: 1 + m_Value: 0 + greenOutGreenIn: + m_OverrideState: 1 + m_Value: 100 + greenOutBlueIn: + m_OverrideState: 1 + m_Value: 0 + blueOutRedIn: + m_OverrideState: 1 + m_Value: 0 + blueOutGreenIn: + m_OverrideState: 1 + m_Value: 0 + blueOutBlueIn: + m_OverrideState: 1 + m_Value: 100 +--- !u!114 &9122958982931076880 +MonoBehaviour: + m_ObjectHideFlags: 3 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 0} + m_Name: CopyPasteTestComponent1 + m_EditorClassIdentifier: Unity.RenderPipelines.Core.Editor.Tests:UnityEditor.Rendering.Tests:VolumeComponentCopyPasteTests/CopyPasteTestComponent1 + active: 1 + p1: + m_OverrideState: 1 + m_Value: 0 + p2: + m_OverrideState: 1 + m_Value: 0 diff --git a/Assets/Settings/DefaultVolumeProfile.asset.meta b/Assets/Settings/DefaultVolumeProfile.asset.meta new file mode 100644 index 0000000..53b314a --- /dev/null +++ b/Assets/Settings/DefaultVolumeProfile.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: ab09877e2e707104187f6f83e2f62510 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Settings/Mobile_RPAsset.asset b/Assets/Settings/Mobile_RPAsset.asset new file mode 100644 index 0000000..fedee07 --- /dev/null +++ b/Assets/Settings/Mobile_RPAsset.asset @@ -0,0 +1,143 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: bf2edee5c58d82540a51f03df9d42094, type: 3} + m_Name: Mobile_RPAsset + m_EditorClassIdentifier: + k_AssetVersion: 13 + k_AssetPreviousVersion: 13 + m_RendererType: 1 + m_RendererData: {fileID: 0} + m_RendererDataList: + - {fileID: 11400000, guid: 65bc7dbf4170f435aa868c779acfb082, type: 2} + m_DefaultRendererIndex: 0 + m_RequireDepthTexture: 0 + m_RequireOpaqueTexture: 0 + m_OpaqueDownsampling: 0 + m_SupportsTerrainHoles: 1 + m_SupportsHDR: 1 + m_HDRColorBufferPrecision: 0 + m_MSAA: 1 + m_RenderScale: 0.8 + m_UpscalingFilter: 0 + m_FsrOverrideSharpness: 0 + m_FsrSharpness: 0.92 + m_EnableLODCrossFade: 1 + m_LODCrossFadeDitheringType: 1 + m_ShEvalMode: 0 + m_LightProbeSystem: 0 + m_ProbeVolumeMemoryBudget: 1024 + m_ProbeVolumeBlendingMemoryBudget: 256 + m_SupportProbeVolumeGPUStreaming: 0 + m_SupportProbeVolumeDiskStreaming: 0 + m_SupportProbeVolumeScenarios: 0 + m_SupportProbeVolumeScenarioBlending: 0 + m_ProbeVolumeSHBands: 1 + m_MainLightRenderingMode: 1 + m_MainLightShadowsSupported: 1 + m_MainLightShadowmapResolution: 1024 + m_AdditionalLightsRenderingMode: 1 + m_AdditionalLightsPerObjectLimit: 4 + m_AdditionalLightShadowsSupported: 0 + m_AdditionalLightsShadowmapResolution: 2048 + m_AdditionalLightsShadowResolutionTierLow: 256 + m_AdditionalLightsShadowResolutionTierMedium: 512 + m_AdditionalLightsShadowResolutionTierHigh: 1024 + m_ReflectionProbeBlending: 1 + m_ReflectionProbeBoxProjection: 1 + m_ReflectionProbeAtlas: 1 + m_ShadowDistance: 50 + m_ShadowCascadeCount: 1 + m_Cascade2Split: 0.25 + m_Cascade3Split: {x: 0.1, y: 0.3} + m_Cascade4Split: {x: 0.067, y: 0.2, z: 0.467} + m_CascadeBorder: 0.2 + m_ShadowDepthBias: 1 + m_ShadowNormalBias: 1 + m_AnyShadowsSupported: 1 + m_SoftShadowsSupported: 0 + m_ConservativeEnclosingSphere: 1 + m_NumIterationsEnclosingSphere: 64 + m_SoftShadowQuality: 2 + m_AdditionalLightsCookieResolution: 1024 + m_AdditionalLightsCookieFormat: 1 + m_UseSRPBatcher: 1 + m_SupportsDynamicBatching: 0 + m_MixedLightingSupported: 1 + m_SupportsLightCookies: 1 + m_SupportsLightLayers: 1 + m_DebugLevel: 0 + m_StoreActionsOptimization: 0 + m_UseAdaptivePerformance: 1 + m_ColorGradingMode: 0 + m_ColorGradingLutSize: 32 + m_AllowPostProcessAlphaOutput: 0 + m_UseFastSRGBLinearConversion: 1 + m_SupportDataDrivenLensFlare: 1 + m_SupportScreenSpaceLensFlare: 1 + m_GPUResidentDrawerMode: 0 + m_SmallMeshScreenPercentage: 0 + m_GPUResidentDrawerEnableOcclusionCullingInCameras: 0 + m_ShadowType: 1 + m_LocalShadowsSupported: 0 + m_LocalShadowsAtlasResolution: 256 + m_MaxPixelLights: 0 + m_ShadowAtlasResolution: 256 + m_VolumeFrameworkUpdateMode: 0 + m_VolumeProfile: {fileID: 11400000, guid: 10fc4df2da32a41aaa32d77bc913491c, type: 2} + apvScenesData: + obsoleteSceneBounds: + m_Keys: [] + m_Values: [] + obsoleteHasProbeVolumes: + m_Keys: [] + m_Values: + m_PrefilteringModeMainLightShadows: 3 + m_PrefilteringModeAdditionalLight: 4 + m_PrefilteringModeAdditionalLightShadows: 0 + m_PrefilterXRKeywords: 1 + m_PrefilteringModeForwardPlus: 1 + m_PrefilteringModeDeferredRendering: 0 + m_PrefilteringModeScreenSpaceOcclusion: 0 + m_PrefilterDebugKeywords: 1 + m_PrefilterWriteRenderingLayers: 1 + m_PrefilterHDROutput: 1 + m_PrefilterAlphaOutput: 0 + m_PrefilterSSAODepthNormals: 1 + m_PrefilterSSAOSourceDepthLow: 1 + m_PrefilterSSAOSourceDepthMedium: 0 + m_PrefilterSSAOSourceDepthHigh: 1 + m_PrefilterSSAOInterleaved: 0 + m_PrefilterSSAOBlueNoise: 1 + m_PrefilterSSAOSampleCountLow: 1 + m_PrefilterSSAOSampleCountMedium: 0 + m_PrefilterSSAOSampleCountHigh: 1 + m_PrefilterDBufferMRT1: 1 + m_PrefilterDBufferMRT2: 1 + m_PrefilterDBufferMRT3: 1 + m_PrefilterSoftShadowsQualityLow: 1 + m_PrefilterSoftShadowsQualityMedium: 1 + m_PrefilterSoftShadowsQualityHigh: 1 + m_PrefilterSoftShadows: 0 + m_PrefilterScreenCoord: 1 + m_PrefilterScreenSpaceIrradiance: 0 + m_PrefilterNativeRenderPass: 1 + m_PrefilterUseLegacyLightmaps: 0 + m_PrefilterBicubicLightmapSampling: 0 + m_PrefilterReflectionProbeRotation: 0 + m_PrefilterReflectionProbeBlending: 0 + m_PrefilterReflectionProbeBoxProjection: 0 + m_PrefilterReflectionProbeAtlas: 0 + m_ShaderVariantLogLevel: 0 + m_ShadowCascades: 0 + m_Textures: + blueNoise64LTex: {fileID: 2800000, guid: e3d24661c1e055f45a7560c033dbb837, type: 3} + bayerMatrixTex: {fileID: 2800000, guid: f9ee4ed84c1d10c49aabb9b210b0fc44, type: 3} diff --git a/Assets/Settings/Mobile_RPAsset.asset.meta b/Assets/Settings/Mobile_RPAsset.asset.meta new file mode 100644 index 0000000..3660d15 --- /dev/null +++ b/Assets/Settings/Mobile_RPAsset.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 5e6cbd92db86f4b18aec3ed561671858 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Settings/Mobile_Renderer.asset b/Assets/Settings/Mobile_Renderer.asset new file mode 100644 index 0000000..ea246b2 --- /dev/null +++ b/Assets/Settings/Mobile_Renderer.asset @@ -0,0 +1,52 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: de640fe3d0db1804a85f9fc8f5cadab6, type: 3} + m_Name: Mobile_Renderer + m_EditorClassIdentifier: + debugShaders: + debugReplacementPS: {fileID: 4800000, guid: cf852408f2e174538bcd9b7fda1c5ae7, + type: 3} + hdrDebugViewPS: {fileID: 4800000, guid: 573620ae32aec764abd4d728906d2587, type: 3} + probeVolumeSamplingDebugComputeShader: {fileID: 7200000, guid: 53626a513ea68ce47b59dc1299fe3959, + type: 3} + probeVolumeResources: + probeVolumeDebugShader: {fileID: 0} + probeVolumeFragmentationDebugShader: {fileID: 0} + probeVolumeOffsetDebugShader: {fileID: 0} + probeVolumeSamplingDebugShader: {fileID: 0} + probeSamplingDebugMesh: {fileID: 0} + probeSamplingDebugTexture: {fileID: 0} + probeVolumeBlendStatesCS: {fileID: 0} + m_RendererFeatures: [] + m_RendererFeatureMap: + m_UseNativeRenderPass: 1 + postProcessData: {fileID: 11400000, guid: 41439944d30ece34e96484bdb6645b55, type: 2} + m_AssetVersion: 2 + m_OpaqueLayerMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_TransparentLayerMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_DefaultStencilState: + overrideStencilState: 0 + stencilReference: 0 + stencilCompareFunction: 8 + passOperation: 2 + failOperation: 0 + zFailOperation: 0 + m_ShadowTransparentReceive: 0 + m_RenderingMode: 0 + m_DepthPrimingMode: 0 + m_CopyDepthMode: 0 + m_AccurateGbufferNormals: 0 + m_IntermediateTextureMode: 0 diff --git a/Assets/Settings/Mobile_Renderer.asset.meta b/Assets/Settings/Mobile_Renderer.asset.meta new file mode 100644 index 0000000..a3588b1 --- /dev/null +++ b/Assets/Settings/Mobile_Renderer.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 65bc7dbf4170f435aa868c779acfb082 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Settings/PC_RPAsset.asset b/Assets/Settings/PC_RPAsset.asset new file mode 100644 index 0000000..9b2b046 --- /dev/null +++ b/Assets/Settings/PC_RPAsset.asset @@ -0,0 +1,143 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: bf2edee5c58d82540a51f03df9d42094, type: 3} + m_Name: PC_RPAsset + m_EditorClassIdentifier: + k_AssetVersion: 13 + k_AssetPreviousVersion: 13 + m_RendererType: 1 + m_RendererData: {fileID: 0} + m_RendererDataList: + - {fileID: 11400000, guid: f288ae1f4751b564a96ac7587541f7a2, type: 2} + m_DefaultRendererIndex: 0 + m_RequireDepthTexture: 1 + m_RequireOpaqueTexture: 1 + m_OpaqueDownsampling: 1 + m_SupportsTerrainHoles: 1 + m_SupportsHDR: 1 + m_HDRColorBufferPrecision: 0 + m_MSAA: 1 + m_RenderScale: 1 + m_UpscalingFilter: 0 + m_FsrOverrideSharpness: 0 + m_FsrSharpness: 0.92 + m_EnableLODCrossFade: 1 + m_LODCrossFadeDitheringType: 1 + m_ShEvalMode: 0 + m_LightProbeSystem: 0 + m_ProbeVolumeMemoryBudget: 1024 + m_ProbeVolumeBlendingMemoryBudget: 256 + m_SupportProbeVolumeGPUStreaming: 0 + m_SupportProbeVolumeDiskStreaming: 0 + m_SupportProbeVolumeScenarios: 0 + m_SupportProbeVolumeScenarioBlending: 0 + m_ProbeVolumeSHBands: 1 + m_MainLightRenderingMode: 1 + m_MainLightShadowsSupported: 1 + m_MainLightShadowmapResolution: 2048 + m_AdditionalLightsRenderingMode: 1 + m_AdditionalLightsPerObjectLimit: 4 + m_AdditionalLightShadowsSupported: 1 + m_AdditionalLightsShadowmapResolution: 2048 + m_AdditionalLightsShadowResolutionTierLow: 256 + m_AdditionalLightsShadowResolutionTierMedium: 512 + m_AdditionalLightsShadowResolutionTierHigh: 1024 + m_ReflectionProbeBlending: 1 + m_ReflectionProbeBoxProjection: 1 + m_ReflectionProbeAtlas: 1 + m_ShadowDistance: 50 + m_ShadowCascadeCount: 4 + m_Cascade2Split: 0.25 + m_Cascade3Split: {x: 0.1, y: 0.3} + m_Cascade4Split: {x: 0.12299999, y: 0.2926, z: 0.53599995} + m_CascadeBorder: 0.107758604 + m_ShadowDepthBias: 0.1 + m_ShadowNormalBias: 0.5 + m_AnyShadowsSupported: 1 + m_SoftShadowsSupported: 1 + m_ConservativeEnclosingSphere: 1 + m_NumIterationsEnclosingSphere: 64 + m_SoftShadowQuality: 3 + m_AdditionalLightsCookieResolution: 2048 + m_AdditionalLightsCookieFormat: 3 + m_UseSRPBatcher: 1 + m_SupportsDynamicBatching: 0 + m_MixedLightingSupported: 1 + m_SupportsLightCookies: 1 + m_SupportsLightLayers: 1 + m_DebugLevel: 0 + m_StoreActionsOptimization: 0 + m_UseAdaptivePerformance: 1 + m_ColorGradingMode: 0 + m_ColorGradingLutSize: 32 + m_AllowPostProcessAlphaOutput: 0 + m_UseFastSRGBLinearConversion: 0 + m_SupportDataDrivenLensFlare: 1 + m_SupportScreenSpaceLensFlare: 1 + m_GPUResidentDrawerMode: 0 + m_SmallMeshScreenPercentage: 0 + m_GPUResidentDrawerEnableOcclusionCullingInCameras: 0 + m_ShadowType: 1 + m_LocalShadowsSupported: 0 + m_LocalShadowsAtlasResolution: 256 + m_MaxPixelLights: 0 + m_ShadowAtlasResolution: 256 + m_VolumeFrameworkUpdateMode: 0 + m_VolumeProfile: {fileID: 11400000, guid: 10fc4df2da32a41aaa32d77bc913491c, type: 2} + apvScenesData: + obsoleteSceneBounds: + m_Keys: [] + m_Values: [] + obsoleteHasProbeVolumes: + m_Keys: [] + m_Values: + m_PrefilteringModeMainLightShadows: 3 + m_PrefilteringModeAdditionalLight: 4 + m_PrefilteringModeAdditionalLightShadows: 0 + m_PrefilterXRKeywords: 1 + m_PrefilteringModeForwardPlus: 1 + m_PrefilteringModeDeferredRendering: 0 + m_PrefilteringModeScreenSpaceOcclusion: 1 + m_PrefilterDebugKeywords: 1 + m_PrefilterWriteRenderingLayers: 0 + m_PrefilterHDROutput: 1 + m_PrefilterAlphaOutput: 0 + m_PrefilterSSAODepthNormals: 0 + m_PrefilterSSAOSourceDepthLow: 1 + m_PrefilterSSAOSourceDepthMedium: 1 + m_PrefilterSSAOSourceDepthHigh: 1 + m_PrefilterSSAOInterleaved: 1 + m_PrefilterSSAOBlueNoise: 0 + m_PrefilterSSAOSampleCountLow: 1 + m_PrefilterSSAOSampleCountMedium: 0 + m_PrefilterSSAOSampleCountHigh: 1 + m_PrefilterDBufferMRT1: 1 + m_PrefilterDBufferMRT2: 1 + m_PrefilterDBufferMRT3: 0 + m_PrefilterSoftShadowsQualityLow: 0 + m_PrefilterSoftShadowsQualityMedium: 0 + m_PrefilterSoftShadowsQualityHigh: 0 + m_PrefilterSoftShadows: 0 + m_PrefilterScreenCoord: 1 + m_PrefilterScreenSpaceIrradiance: 0 + m_PrefilterNativeRenderPass: 1 + m_PrefilterUseLegacyLightmaps: 0 + m_PrefilterBicubicLightmapSampling: 0 + m_PrefilterReflectionProbeRotation: 0 + m_PrefilterReflectionProbeBlending: 0 + m_PrefilterReflectionProbeBoxProjection: 0 + m_PrefilterReflectionProbeAtlas: 0 + m_ShaderVariantLogLevel: 0 + m_ShadowCascades: 0 + m_Textures: + blueNoise64LTex: {fileID: 2800000, guid: e3d24661c1e055f45a7560c033dbb837, type: 3} + bayerMatrixTex: {fileID: 2800000, guid: f9ee4ed84c1d10c49aabb9b210b0fc44, type: 3} diff --git a/Assets/Settings/PC_RPAsset.asset.meta b/Assets/Settings/PC_RPAsset.asset.meta new file mode 100644 index 0000000..e286b2f --- /dev/null +++ b/Assets/Settings/PC_RPAsset.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 4b83569d67af61e458304325a23e5dfd +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Settings/PC_Renderer.asset b/Assets/Settings/PC_Renderer.asset new file mode 100644 index 0000000..475b02e --- /dev/null +++ b/Assets/Settings/PC_Renderer.asset @@ -0,0 +1,95 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: de640fe3d0db1804a85f9fc8f5cadab6, type: 3} + m_Name: PC_Renderer + m_EditorClassIdentifier: + debugShaders: + debugReplacementPS: {fileID: 4800000, guid: cf852408f2e174538bcd9b7fda1c5ae7, + type: 3} + hdrDebugViewPS: {fileID: 4800000, guid: 573620ae32aec764abd4d728906d2587, type: 3} + probeVolumeSamplingDebugComputeShader: {fileID: 7200000, guid: 53626a513ea68ce47b59dc1299fe3959, + type: 3} + probeVolumeResources: + probeVolumeDebugShader: {fileID: 4800000, guid: e5c6678ed2aaa91408dd3df699057aae, + type: 3} + probeVolumeFragmentationDebugShader: {fileID: 4800000, guid: 03cfc4915c15d504a9ed85ecc404e607, + type: 3} + probeVolumeOffsetDebugShader: {fileID: 4800000, guid: 53a11f4ebaebf4049b3638ef78dc9664, + type: 3} + probeVolumeSamplingDebugShader: {fileID: 4800000, guid: 8f96cd657dc40064aa21efcc7e50a2e7, + type: 3} + probeSamplingDebugMesh: {fileID: -3555484719484374845, guid: 57d7c4c16e2765b47a4d2069b311bffe, + type: 3} + probeSamplingDebugTexture: {fileID: 2800000, guid: 24ec0e140fb444a44ab96ee80844e18e, + type: 3} + probeVolumeBlendStatesCS: {fileID: 7200000, guid: b9a23f869c4fd45f19c5ada54dd82176, + type: 3} + m_RendererFeatures: + - {fileID: 7833122117494664109} + m_RendererFeatureMap: ad6b866f10d7b46c + m_UseNativeRenderPass: 1 + postProcessData: {fileID: 11400000, guid: 41439944d30ece34e96484bdb6645b55, type: 2} + m_AssetVersion: 2 + m_OpaqueLayerMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_TransparentLayerMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_DefaultStencilState: + overrideStencilState: 0 + stencilReference: 1 + stencilCompareFunction: 3 + passOperation: 2 + failOperation: 0 + zFailOperation: 0 + m_ShadowTransparentReceive: 1 + m_RenderingMode: 2 + m_DepthPrimingMode: 0 + m_CopyDepthMode: 0 + m_AccurateGbufferNormals: 0 + m_IntermediateTextureMode: 0 +--- !u!114 &7833122117494664109 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f62c9c65cf3354c93be831c8bc075510, type: 3} + m_Name: ScreenSpaceAmbientOcclusion + m_EditorClassIdentifier: + m_Active: 1 + m_Settings: + AOMethod: 0 + Downsample: 0 + AfterOpaque: 0 + Source: 1 + NormalSamples: 1 + Intensity: 0.4 + DirectLightingStrength: 0.25 + Radius: 0.3 + Samples: 1 + BlurQuality: 0 + Falloff: 100 + SampleCount: -1 + m_BlueNoise256Textures: + - {fileID: 2800000, guid: 36f118343fc974119bee3d09e2111500, type: 3} + - {fileID: 2800000, guid: 4b7b083e6b6734e8bb2838b0b50a0bc8, type: 3} + - {fileID: 2800000, guid: c06cc21c692f94f5fb5206247191eeee, type: 3} + - {fileID: 2800000, guid: cb76dd40fa7654f9587f6a344f125c9a, type: 3} + - {fileID: 2800000, guid: e32226222ff144b24bf3a5a451de54bc, type: 3} + - {fileID: 2800000, guid: 3302065f671a8450b82c9ddf07426f3a, type: 3} + - {fileID: 2800000, guid: 56a77a3e8d64f47b6afe9e3c95cb57d5, type: 3} + m_Shader: {fileID: 4800000, guid: 0849e84e3d62649e8882e9d6f056a017, type: 3} diff --git a/Assets/Settings/PC_Renderer.asset.meta b/Assets/Settings/PC_Renderer.asset.meta new file mode 100644 index 0000000..ddae6a5 --- /dev/null +++ b/Assets/Settings/PC_Renderer.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: f288ae1f4751b564a96ac7587541f7a2 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Settings/SampleSceneProfile.asset b/Assets/Settings/SampleSceneProfile.asset new file mode 100644 index 0000000..c1b0f63 --- /dev/null +++ b/Assets/Settings/SampleSceneProfile.asset @@ -0,0 +1,159 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &-7893295128165547882 +MonoBehaviour: + m_ObjectHideFlags: 3 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 0b2db86121404754db890f4c8dfe81b2, type: 3} + m_Name: Bloom + m_EditorClassIdentifier: + active: 1 + skipIterations: + m_OverrideState: 1 + m_Value: 0 + threshold: + m_OverrideState: 1 + m_Value: 1 + intensity: + m_OverrideState: 1 + m_Value: 0.25 + scatter: + m_OverrideState: 1 + m_Value: 0.5 + clamp: + m_OverrideState: 0 + m_Value: 65472 + tint: + m_OverrideState: 0 + m_Value: {r: 1, g: 1, b: 1, a: 1} + highQualityFiltering: + m_OverrideState: 1 + m_Value: 1 + downscale: + m_OverrideState: 0 + m_Value: 0 + maxIterations: + m_OverrideState: 0 + m_Value: 6 + dirtTexture: + m_OverrideState: 0 + m_Value: {fileID: 0} + dimension: 1 + dirtIntensity: + m_OverrideState: 0 + m_Value: 0 +--- !u!114 &-3357603926938260329 +MonoBehaviour: + m_ObjectHideFlags: 3 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 899c54efeace73346a0a16faa3afe726, type: 3} + m_Name: Vignette + m_EditorClassIdentifier: + active: 1 + color: + m_OverrideState: 0 + m_Value: {r: 0, g: 0, b: 0, a: 1} + center: + m_OverrideState: 0 + m_Value: {x: 0.5, y: 0.5} + intensity: + m_OverrideState: 1 + m_Value: 0.2 + smoothness: + m_OverrideState: 0 + m_Value: 0.2 + rounded: + m_OverrideState: 0 + m_Value: 0 +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d7fd9488000d3734a9e00ee676215985, type: 3} + m_Name: SampleSceneProfile + m_EditorClassIdentifier: + components: + - {fileID: 849379129802519247} + - {fileID: -7893295128165547882} + - {fileID: 7391319092446245454} + - {fileID: -3357603926938260329} +--- !u!114 &849379129802519247 +MonoBehaviour: + m_ObjectHideFlags: 3 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 97c23e3b12dc18c42a140437e53d3951, type: 3} + m_Name: Tonemapping + m_EditorClassIdentifier: + active: 1 + mode: + m_OverrideState: 1 + m_Value: 1 + neutralHDRRangeReductionMode: + m_OverrideState: 0 + m_Value: 2 + acesPreset: + m_OverrideState: 0 + m_Value: 3 + hueShiftAmount: + m_OverrideState: 0 + m_Value: 0 + detectPaperWhite: + m_OverrideState: 1 + m_Value: 0 + paperWhite: + m_OverrideState: 1 + m_Value: 234 + detectBrightnessLimits: + m_OverrideState: 1 + m_Value: 1 + minNits: + m_OverrideState: 1 + m_Value: 0.005 + maxNits: + m_OverrideState: 1 + m_Value: 647 +--- !u!114 &7391319092446245454 +MonoBehaviour: + m_ObjectHideFlags: 3 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ccf1aba9553839d41ae37dd52e9ebcce, type: 3} + m_Name: MotionBlur + m_EditorClassIdentifier: + active: 0 + mode: + m_OverrideState: 0 + m_Value: 0 + quality: + m_OverrideState: 1 + m_Value: 2 + intensity: + m_OverrideState: 1 + m_Value: 0.6 + clamp: + m_OverrideState: 0 + m_Value: 0.05 diff --git a/Assets/Settings/SampleSceneProfile.asset.meta b/Assets/Settings/SampleSceneProfile.asset.meta new file mode 100644 index 0000000..b82270c --- /dev/null +++ b/Assets/Settings/SampleSceneProfile.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 10fc4df2da32a41aaa32d77bc913491c +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Settings/UniversalRenderPipelineGlobalSettings.asset b/Assets/Settings/UniversalRenderPipelineGlobalSettings.asset new file mode 100644 index 0000000..19c0c0b --- /dev/null +++ b/Assets/Settings/UniversalRenderPipelineGlobalSettings.asset @@ -0,0 +1,433 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 2ec995e51a6e251468d2a3fd8a686257, type: 3} + m_Name: UniversalRenderPipelineGlobalSettings + m_EditorClassIdentifier: + m_ShaderStrippingSetting: + m_Version: 0 + m_ExportShaderVariants: 1 + m_ShaderVariantLogLevel: 0 + m_StripRuntimeDebugShaders: 1 + m_URPShaderStrippingSetting: + m_Version: 0 + m_StripUnusedPostProcessingVariants: 1 + m_StripUnusedVariants: 1 + m_StripScreenCoordOverrideVariants: 1 + m_ShaderVariantLogLevel: 0 + m_ExportShaderVariants: 1 + m_StripDebugVariants: 1 + m_StripUnusedPostProcessingVariants: 1 + m_StripUnusedVariants: 1 + m_StripScreenCoordOverrideVariants: 1 + supportRuntimeDebugDisplay: 0 + m_EnableRenderGraph: 0 + m_Settings: + m_SettingsList: + m_List: + - rid: 6852985685364965376 + - rid: 6852985685364965377 + - rid: 6852985685364965378 + - rid: 6852985685364965379 + - rid: 6852985685364965380 + - rid: 6852985685364965381 + - rid: 6852985685364965382 + - rid: 6852985685364965383 + - rid: 6852985685364965384 + - rid: 6852985685364965385 + - rid: 6852985685364965386 + - rid: 6852985685364965387 + - rid: 6852985685364965388 + - rid: 6852985685364965389 + - rid: 6852985685364965390 + - rid: 6852985685364965391 + - rid: 6852985685364965392 + - rid: 6852985685364965393 + - rid: 6852985685364965394 + - rid: 8712630790384254976 + - rid: 5155379806866505730 + - rid: 5155379806866505731 + - rid: 5155379806866505732 + - rid: 5155379806866505733 + - rid: 5155379806866505734 + - rid: 5155379806866505735 + - rid: 5155379806866505736 + - rid: 5155379806866505737 + - rid: 5155379806866505738 + - rid: 5155379806866505739 + - rid: 5155379806866505740 + - rid: 5155379806866505741 + - rid: 5155379806866505742 + - rid: 5155379806866505743 + m_RuntimeSettings: + m_List: [] + m_AssetVersion: 10 + m_ObsoleteDefaultVolumeProfile: {fileID: 0} + m_RenderingLayerNames: + - Light Layer default + - Light Layer 1 + - Light Layer 2 + - Light Layer 3 + - Light Layer 4 + - Light Layer 5 + - Light Layer 6 + - Light Layer 7 + m_ValidRenderingLayers: 0 + lightLayerName0: Light Layer default + lightLayerName1: Light Layer 1 + lightLayerName2: Light Layer 2 + lightLayerName3: Light Layer 3 + lightLayerName4: Light Layer 4 + lightLayerName5: Light Layer 5 + lightLayerName6: Light Layer 6 + lightLayerName7: Light Layer 7 + apvScenesData: + obsoleteSceneBounds: + m_Keys: [] + m_Values: [] + obsoleteHasProbeVolumes: + m_Keys: [] + m_Values: + references: + version: 2 + RefIds: + - rid: 5155379806866505730 + type: {class: RayTracingRenderPipelineResources, ns: UnityEngine.Rendering.UnifiedRayTracing, asm: Unity.UnifiedRayTracing.Runtime} + data: + m_Version: 1 + m_GeometryPoolKernels: {fileID: 7200000, guid: 98e3d58cae7210c4786f67f504c9e899, type: 3} + m_CopyBuffer: {fileID: 7200000, guid: 1b95b5dcf48d1914c9e1e7405c7660e3, type: 3} + m_CopyPositions: {fileID: 7200000, guid: 1ad53a96b58d3c3488dde4f14db1aaeb, type: 3} + m_BitHistogram: {fileID: 7200000, guid: 8670f7ce4b60cef43bed36148aa1b0a2, type: 3} + m_BlockReducePart: {fileID: 7200000, guid: 4e034cc8ea2635c4e9f063e5ddc7ea7a, type: 3} + m_BlockScan: {fileID: 7200000, guid: 4d6d5de35fa45ef4a92119397a045cc9, type: 3} + m_BuildHlbvh: {fileID: 7200000, guid: 2d70cd6be91bd7843a39a54b51c15b13, type: 3} + m_RestructureBvh: {fileID: 7200000, guid: 56641cb88dcb31a4398a4997ef7a7a8c, type: 3} + m_Scatter: {fileID: 7200000, guid: a2eaeefdac4637a44b734e85b7be9186, type: 3} + - rid: 5155379806866505731 + type: {class: UniversalRenderPipelineEditorAssets, ns: UnityEngine.Rendering.Universal, asm: Unity.RenderPipelines.Universal.Runtime} + data: + m_DefaultSettingsVolumeProfile: {fileID: 11400000, guid: eda47df5b85f4f249abf7abd73db2cb2, type: 2} + - rid: 5155379806866505732 + type: {class: UniversalRenderPipelineRuntimeTerrainShaders, ns: UnityEngine.Rendering.Universal, asm: Unity.RenderPipelines.Universal.Runtime} + data: + m_Version: 0 + m_TerrainDetailLit: {fileID: 4800000, guid: f6783ab646d374f94b199774402a5144, type: 3} + m_TerrainDetailGrassBillboard: {fileID: 4800000, guid: 29868e73b638e48ca99a19ea58c48d90, type: 3} + m_TerrainDetailGrass: {fileID: 4800000, guid: e507fdfead5ca47e8b9a768b51c291a1, type: 3} + - rid: 5155379806866505733 + type: {class: URPTerrainShaderSetting, ns: UnityEngine.Rendering.Universal, asm: Unity.RenderPipelines.Universal.Runtime} + data: + m_Version: 0 + m_IncludeTerrainShaders: 1 + - rid: 5155379806866505734 + type: {class: PostProcessData/ShaderResources, ns: UnityEngine.Rendering.Universal, asm: Unity.RenderPipelines.Universal.Runtime} + data: + stopNanPS: {fileID: 4800000, guid: 1121bb4e615ca3c48b214e79e841e823, type: 3} + subpixelMorphologicalAntialiasingPS: {fileID: 4800000, guid: 63eaba0ebfb82cc43bde059b4a8c65f6, type: 3} + gaussianDepthOfFieldPS: {fileID: 4800000, guid: 5e7134d6e63e0bc47a1dd2669cedb379, type: 3} + bokehDepthOfFieldPS: {fileID: 4800000, guid: 2aed67ad60045d54ba3a00c91e2d2631, type: 3} + cameraMotionBlurPS: {fileID: 4800000, guid: 1edcd131364091c46a17cbff0b1de97a, type: 3} + paniniProjectionPS: {fileID: 4800000, guid: a15b78cf8ca26ca4fb2090293153c62c, type: 3} + lutBuilderLdrPS: {fileID: 4800000, guid: 65df88701913c224d95fc554db28381a, type: 3} + lutBuilderHdrPS: {fileID: 4800000, guid: ec9fec698a3456d4fb18cf8bacb7a2bc, type: 3} + bloomPS: {fileID: 4800000, guid: 5f1864addb451f54bae8c86d230f736e, type: 3} + temporalAntialiasingPS: {fileID: 4800000, guid: 9c70c1a35ff15f340b38ea84842358bf, type: 3} + LensFlareDataDrivenPS: {fileID: 4800000, guid: 6cda457ac28612740adb23da5d39ea92, type: 3} + LensFlareScreenSpacePS: {fileID: 4800000, guid: 701880fecb344ea4c9cd0db3407ab287, type: 3} + scalingSetupPS: {fileID: 4800000, guid: e8ee25143a34b8c4388709ea947055d1, type: 3} + easuPS: {fileID: 4800000, guid: 562b7ae4f629f144aa97780546fce7c6, type: 3} + uberPostPS: {fileID: 4800000, guid: e7857e9d0c934dc4f83f270f8447b006, type: 3} + finalPostPassPS: {fileID: 4800000, guid: c49e63ed1bbcb334780a3bd19dfed403, type: 3} + m_ShaderResourcesVersion: 0 + - rid: 5155379806866505735 + type: {class: URPReflectionProbeSettings, ns: UnityEngine.Rendering, asm: Unity.RenderPipelines.Universal.Runtime} + data: + version: 1 + useReflectionProbeRotation: 0 + - rid: 5155379806866505736 + type: {class: ScreenSpaceAmbientOcclusionDynamicResources, ns: UnityEngine.Rendering.Universal, asm: Unity.RenderPipelines.Universal.Runtime} + data: + m_BlueNoise256Textures: + - {fileID: 2800000, guid: 36f118343fc974119bee3d09e2111500, type: 3} + - {fileID: 2800000, guid: 4b7b083e6b6734e8bb2838b0b50a0bc8, type: 3} + - {fileID: 2800000, guid: c06cc21c692f94f5fb5206247191eeee, type: 3} + - {fileID: 2800000, guid: cb76dd40fa7654f9587f6a344f125c9a, type: 3} + - {fileID: 2800000, guid: e32226222ff144b24bf3a5a451de54bc, type: 3} + - {fileID: 2800000, guid: 3302065f671a8450b82c9ddf07426f3a, type: 3} + - {fileID: 2800000, guid: 56a77a3e8d64f47b6afe9e3c95cb57d5, type: 3} + m_Version: 0 + - rid: 5155379806866505737 + type: {class: OnTilePostProcessResource, ns: UnityEngine.Rendering.Universal, asm: Unity.RenderPipelines.Universal.Runtime} + data: + m_Version: 0 + m_UberPostShader: {fileID: 4800000, guid: fe4f13c1004a07d4ea1e30bfd0326d9e, type: 3} + - rid: 5155379806866505738 + type: {class: UniversalRenderPipelineRuntimeXRResources, ns: UnityEngine.Rendering.Universal, asm: Unity.RenderPipelines.Universal.Runtime} + data: + m_xrOcclusionMeshPS: {fileID: 4800000, guid: 4431b1f1f743fbf4eb310a967890cbea, type: 3} + m_xrMirrorViewPS: {fileID: 4800000, guid: d5a307c014552314b9f560906d708772, type: 3} + m_xrMotionVector: {fileID: 4800000, guid: f89aac1e4f84468418fe30e611dff395, type: 3} + - rid: 5155379806866505739 + type: {class: ScreenSpaceAmbientOcclusionPersistentResources, ns: UnityEngine.Rendering.Universal, asm: Unity.RenderPipelines.Universal.Runtime} + data: + m_Shader: {fileID: 4800000, guid: 0849e84e3d62649e8882e9d6f056a017, type: 3} + m_Version: 0 + - rid: 5155379806866505740 + type: {class: PostProcessData/TextureResources, ns: UnityEngine.Rendering.Universal, asm: Unity.RenderPipelines.Universal.Runtime} + data: + blueNoise16LTex: + - {fileID: 2800000, guid: 81200413a40918d4d8702e94db29911c, type: 3} + - {fileID: 2800000, guid: d50c5e07c9911a74982bddf7f3075e7b, type: 3} + - {fileID: 2800000, guid: 1134690bf9216164dbc75050e35b7900, type: 3} + - {fileID: 2800000, guid: 7ce2118f74614a94aa8a0cdf2e6062c3, type: 3} + - {fileID: 2800000, guid: 2ca97df9d1801e84a8a8f2c53cb744f0, type: 3} + - {fileID: 2800000, guid: e63eef8f54aa9dc4da9a5ac094b503b5, type: 3} + - {fileID: 2800000, guid: 39451254daebd6d40b52899c1f1c0c1b, type: 3} + - {fileID: 2800000, guid: c94ad916058dff743b0f1c969ddbe660, type: 3} + - {fileID: 2800000, guid: ed5ea7ce59ca8ec4f9f14bf470a30f35, type: 3} + - {fileID: 2800000, guid: 071e954febf155243a6c81e48f452644, type: 3} + - {fileID: 2800000, guid: 96aaab9cc247d0b4c98132159688c1af, type: 3} + - {fileID: 2800000, guid: fc3fa8f108657e14486697c9a84ccfc5, type: 3} + - {fileID: 2800000, guid: bfed3e498947fcb4890b7f40f54d85b9, type: 3} + - {fileID: 2800000, guid: d512512f4af60a442ab3458489412954, type: 3} + - {fileID: 2800000, guid: 47a45908f6db0cb44a0d5e961143afec, type: 3} + - {fileID: 2800000, guid: 4dcc0502f8586f941b5c4a66717205e8, type: 3} + - {fileID: 2800000, guid: 9d92991794bb5864c8085468b97aa067, type: 3} + - {fileID: 2800000, guid: 14381521ff11cb74abe3fe65401c23be, type: 3} + - {fileID: 2800000, guid: d36f0fe53425e08499a2333cf423634c, type: 3} + - {fileID: 2800000, guid: d4044ea2490d63b43aa1765f8efbf8a9, type: 3} + - {fileID: 2800000, guid: c9bd74624d8070f429e3f46d161f9204, type: 3} + - {fileID: 2800000, guid: d5c9b274310e5524ebe32a4e4da3df1f, type: 3} + - {fileID: 2800000, guid: f69770e54f2823f43badf77916acad83, type: 3} + - {fileID: 2800000, guid: 10b6c6d22e73dea46a8ab36b6eebd629, type: 3} + - {fileID: 2800000, guid: a2ec5cbf5a9b64345ad3fab0912ddf7b, type: 3} + - {fileID: 2800000, guid: 1c3c6d69a645b804fa232004b96b7ad3, type: 3} + - {fileID: 2800000, guid: d18a24d7b4ed50f4387993566d9d3ae2, type: 3} + - {fileID: 2800000, guid: c989e1ed85cf7154caa922fec53e6af6, type: 3} + - {fileID: 2800000, guid: ff47e5a0f105eb34883b973e51f4db62, type: 3} + - {fileID: 2800000, guid: fa042edbfc40fbd4bad0ab9d505b1223, type: 3} + - {fileID: 2800000, guid: 896d9004736809c4fb5973b7c12eb8b9, type: 3} + - {fileID: 2800000, guid: 179f794063d2a66478e6e726f84a65bc, type: 3} + filmGrainTex: + - {fileID: 2800000, guid: 654c582f7f8a5a14dbd7d119cbde215d, type: 3} + - {fileID: 2800000, guid: dd77ffd079630404e879388999033049, type: 3} + - {fileID: 2800000, guid: 1097e90e1306e26439701489f391a6c0, type: 3} + - {fileID: 2800000, guid: f0b67500f7fad3b4c9f2b13e8f41ba6e, type: 3} + - {fileID: 2800000, guid: 9930fb4528622b34687b00bbe6883de7, type: 3} + - {fileID: 2800000, guid: bd9e8c758250ef449a4b4bfaad7a2133, type: 3} + - {fileID: 2800000, guid: 510a2f57334933e4a8dbabe4c30204e4, type: 3} + - {fileID: 2800000, guid: b4db8180660810945bf8d55ab44352ad, type: 3} + - {fileID: 2800000, guid: fd2fd78b392986e42a12df2177d3b89c, type: 3} + - {fileID: 2800000, guid: 5cdee82a77d13994f83b8fdabed7c301, type: 3} + smaaAreaTex: {fileID: 2800000, guid: d1f1048909d55cd4fa1126ab998f617e, type: 3} + smaaSearchTex: {fileID: 2800000, guid: 51eee22c2a633ef4aada830eed57c3fd, type: 3} + m_TexturesResourcesVersion: 0 + - rid: 5155379806866505741 + type: {class: VrsRenderPipelineRuntimeResources, ns: UnityEngine.Rendering, asm: Unity.RenderPipelines.Core.Runtime} + data: + m_TextureComputeShader: {fileID: 7200000, guid: cacb30de6c40c7444bbc78cb0a81fd2a, type: 3} + m_VisualizationShader: {fileID: 4800000, guid: 620b55b8040a88d468e94abe55bed5ba, type: 3} + m_VisualizationLookupTable: + m_Data: + - {r: 0.785, g: 0.23, b: 0.2, a: 1} + - {r: 1, g: 0.8, b: 0.8, a: 1} + - {r: 0.4, g: 0.2, b: 0.2, a: 1} + - {r: 0.51, g: 0.8, b: 0.6, a: 1} + - {r: 0.6, g: 0.8, b: 1, a: 1} + - {r: 0.2, g: 0.4, b: 0.6, a: 1} + - {r: 0.8, g: 1, b: 0.8, a: 1} + - {r: 0.2, g: 0.4, b: 0.2, a: 1} + - {r: 0.125, g: 0.22, b: 0.36, a: 1} + m_ConversionLookupTable: + m_Data: + - {r: 0.785, g: 0.23, b: 0.2, a: 1} + - {r: 1, g: 0.8, b: 0.8, a: 1} + - {r: 0.4, g: 0.2, b: 0.2, a: 1} + - {r: 0.51, g: 0.8, b: 0.6, a: 1} + - {r: 0.6, g: 0.8, b: 1, a: 1} + - {r: 0.2, g: 0.4, b: 0.6, a: 1} + - {r: 0.8, g: 1, b: 0.8, a: 1} + - {r: 0.2, g: 0.4, b: 0.2, a: 1} + - {r: 0.125, g: 0.22, b: 0.36, a: 1} + - rid: 5155379806866505742 + type: {class: RenderingDebuggerRuntimeResources, ns: UnityEngine.Rendering, asm: Unity.RenderPipelines.Core.Runtime} + data: + m_version: 0 + - rid: 5155379806866505743 + type: {class: LightmapSamplingSettings, ns: UnityEngine.Rendering, asm: Unity.RenderPipelines.Core.Runtime} + data: + m_Version: 1 + m_UseBicubicLightmapSampling: 0 + - rid: 6852985685364965376 + type: {class: URPShaderStrippingSetting, ns: UnityEngine.Rendering.Universal, asm: Unity.RenderPipelines.Universal.Runtime} + data: + m_Version: 0 + m_StripUnusedPostProcessingVariants: 1 + m_StripUnusedVariants: 1 + m_StripScreenCoordOverrideVariants: 1 + - rid: 6852985685364965377 + type: {class: UniversalRenderPipelineEditorShaders, ns: UnityEngine.Rendering.Universal, asm: Unity.RenderPipelines.Universal.Runtime} + data: + m_AutodeskInteractive: {fileID: 4800000, guid: 0e9d5a909a1f7e84882a534d0d11e49f, type: 3} + m_AutodeskInteractiveTransparent: {fileID: 4800000, guid: 5c81372d981403744adbdda4433c9c11, type: 3} + m_AutodeskInteractiveMasked: {fileID: 4800000, guid: 80aa867ac363ac043847b06ad71604cd, type: 3} + m_DefaultSpeedTree7Shader: {fileID: 4800000, guid: 0f4122b9a743b744abe2fb6a0a88868b, type: 3} + m_DefaultSpeedTree8Shader: {fileID: -6465566751694194690, guid: 9920c1f1781549a46ba081a2a15a16ec, type: 3} + m_DefaultSpeedTree9Shader: {fileID: -6465566751694194690, guid: cbd3e1cc4ae141c42a30e33b4d666a61, type: 3} + - rid: 6852985685364965378 + type: {class: UniversalRendererResources, ns: UnityEngine.Rendering.Universal, asm: Unity.RenderPipelines.Universal.Runtime} + data: + m_Version: 0 + m_CopyDepthPS: {fileID: 4800000, guid: d6dae50ee9e1bfa4db75f19f99355220, type: 3} + m_CameraMotionVector: {fileID: 4800000, guid: c56b7e0d4c7cb484e959caeeedae9bbf, type: 3} + m_StencilDeferredPS: {fileID: 4800000, guid: e9155b26e1bc55942a41e518703fe304, type: 3} + m_ClusterDeferred: {fileID: 4800000, guid: 222cce62363a44a380c36bf03b392608, type: 3} + m_StencilDitherMaskSeedPS: {fileID: 4800000, guid: 8c3ee818f2efa514c889881ccb2e95a2, type: 3} + m_DBufferClear: {fileID: 4800000, guid: f056d8bd2a1c7e44e9729144b4c70395, type: 3} + - rid: 6852985685364965379 + type: {class: UniversalRenderPipelineDebugShaders, ns: UnityEngine.Rendering.Universal, asm: Unity.RenderPipelines.Universal.Runtime} + data: + m_DebugReplacementPS: {fileID: 4800000, guid: cf852408f2e174538bcd9b7fda1c5ae7, type: 3} + m_HdrDebugViewPS: {fileID: 4800000, guid: 573620ae32aec764abd4d728906d2587, type: 3} + m_ProbeVolumeSamplingDebugComputeShader: {fileID: 7200000, guid: 53626a513ea68ce47b59dc1299fe3959, type: 3} + - rid: 6852985685364965380 + type: {class: UniversalRenderPipelineRuntimeShaders, ns: UnityEngine.Rendering.Universal, asm: Unity.RenderPipelines.Universal.Runtime} + data: + m_Version: 0 + m_FallbackErrorShader: {fileID: 4800000, guid: e6e9a19c3678ded42a3bc431ebef7dbd, type: 3} + m_BlitHDROverlay: {fileID: 4800000, guid: a89bee29cffa951418fc1e2da94d1959, type: 3} + m_CoreBlitPS: {fileID: 4800000, guid: 93446b5c5339d4f00b85c159e1159b7c, type: 3} + m_CoreBlitColorAndDepthPS: {fileID: 4800000, guid: d104b2fc1ca6445babb8e90b0758136b, type: 3} + m_SamplingPS: {fileID: 4800000, guid: 04c410c9937594faa893a11dceb85f7e, type: 3} + m_TerrainDetailLit: {fileID: 0} + m_TerrainDetailGrassBillboard: {fileID: 0} + m_TerrainDetailGrass: {fileID: 0} + - rid: 6852985685364965381 + type: {class: UniversalRenderPipelineRuntimeTextures, ns: UnityEngine.Rendering.Universal, asm: Unity.RenderPipelines.Universal.Runtime} + data: + m_Version: 1 + m_BlueNoise64LTex: {fileID: 2800000, guid: e3d24661c1e055f45a7560c033dbb837, type: 3} + m_BayerMatrixTex: {fileID: 2800000, guid: f9ee4ed84c1d10c49aabb9b210b0fc44, type: 3} + m_DebugFontTex: {fileID: 2800000, guid: 26a413214480ef144b2915d6ff4d0beb, type: 3} + - rid: 6852985685364965382 + type: {class: Renderer2DResources, ns: UnityEngine.Rendering.Universal, asm: Unity.RenderPipelines.Universal.Runtime} + data: + m_Version: 0 + m_LightShader: {fileID: 4800000, guid: 3f6c848ca3d7bca4bbe846546ac701a1, type: 3} + m_ProjectedShadowShader: {fileID: 4800000, guid: ce09d4a80b88c5a4eb9768fab4f1ee00, type: 3} + m_SpriteShadowShader: {fileID: 4800000, guid: 44fc62292b65ab04eabcf310e799ccf6, type: 3} + m_SpriteUnshadowShader: {fileID: 4800000, guid: de02b375720b5c445afe83cd483bedf3, type: 3} + m_GeometryShadowShader: {fileID: 4800000, guid: 19349a0f9a7ed4c48a27445bcf92e5e1, type: 3} + m_GeometryUnshadowShader: {fileID: 4800000, guid: 77774d9009bb81447b048c907d4c6273, type: 3} + m_CopyDepthPS: {fileID: 4800000, guid: d6dae50ee9e1bfa4db75f19f99355220, type: 3} + m_DefaultLitMaterial: {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, type: 2} + m_DefaultUnlitMaterial: {fileID: 2100000, guid: 9dfc825aed78fcd4ba02077103263b40, type: 2} + m_DefaultMaskMaterial: {fileID: 2100000, guid: 15d0c3709176029428a0da2f8cecf0b5, type: 2} + m_DefaultMesh2DLitMaterial: {fileID: 2100000, guid: 9452ae1262a74094f8a68013fbcd1834, type: 2} + - rid: 6852985685364965383 + type: {class: UniversalRenderPipelineEditorMaterials, ns: UnityEngine.Rendering.Universal, asm: Unity.RenderPipelines.Universal.Runtime} + data: + m_DefaultMaterial: {fileID: 2100000, guid: 31321ba15b8f8eb4c954353edc038b1d, type: 2} + m_DefaultParticleMaterial: {fileID: 2100000, guid: e823cd5b5d27c0f4b8256e7c12ee3e6d, type: 2} + m_DefaultLineMaterial: {fileID: 2100000, guid: e823cd5b5d27c0f4b8256e7c12ee3e6d, type: 2} + m_DefaultTerrainMaterial: {fileID: 2100000, guid: 594ea882c5a793440b60ff72d896021e, type: 2} + m_DefaultDecalMaterial: {fileID: 2100000, guid: 31d0dcc6f2dd4e4408d18036a2c93862, type: 2} + m_DefaultSpriteMaterial: {fileID: 2100000, guid: 9dfc825aed78fcd4ba02077103263b40, type: 2} + - rid: 6852985685364965384 + type: {class: URPDefaultVolumeProfileSettings, ns: UnityEngine.Rendering.Universal, asm: Unity.RenderPipelines.Universal.Runtime} + data: + m_Version: 0 + m_VolumeProfile: {fileID: 11400000, guid: ab09877e2e707104187f6f83e2f62510, type: 2} + - rid: 6852985685364965385 + type: {class: RenderGraphSettings, ns: UnityEngine.Rendering.Universal, asm: Unity.RenderPipelines.Universal.Runtime} + data: + m_Version: 0 + m_EnableRenderCompatibilityMode: 0 + - rid: 6852985685364965386 + type: {class: GPUResidentDrawerResources, ns: UnityEngine.Rendering, asm: Unity.RenderPipelines.GPUDriven.Runtime} + data: + m_Version: 0 + m_InstanceDataBufferCopyKernels: {fileID: 7200000, guid: f984aeb540ded8b4fbb8a2047ab5b2e2, type: 3} + m_InstanceDataBufferUploadKernels: {fileID: 7200000, guid: 53864816eb00f2343b60e1a2c5a262ef, type: 3} + m_TransformUpdaterKernels: {fileID: 7200000, guid: 2a567b9b2733f8d47a700c3c85bed75b, type: 3} + m_WindDataUpdaterKernels: {fileID: 7200000, guid: fde76746e4fd0ed418c224f6b4084114, type: 3} + m_OccluderDepthPyramidKernels: {fileID: 7200000, guid: 08b2b5fb307b0d249860612774a987da, type: 3} + m_InstanceOcclusionCullingKernels: {fileID: 7200000, guid: f6d223acabc2f974795a5a7864b50e6c, type: 3} + m_OcclusionCullingDebugKernels: {fileID: 7200000, guid: b23e766bcf50ca4438ef186b174557df, type: 3} + m_DebugOcclusionTestPS: {fileID: 4800000, guid: d3f0849180c2d0944bc71060693df100, type: 3} + m_DebugOccluderPS: {fileID: 4800000, guid: b3c92426a88625841ab15ca6a7917248, type: 3} + - rid: 6852985685364965387 + type: {class: STP/RuntimeResources, ns: UnityEngine.Rendering, asm: Unity.RenderPipelines.Core.Runtime} + data: + m_setupCS: {fileID: 7200000, guid: 33be2e9a5506b2843bdb2bdff9cad5e1, type: 3} + m_preTaaCS: {fileID: 7200000, guid: a679dba8ec4d9ce45884a270b0e22dda, type: 3} + m_taaCS: {fileID: 7200000, guid: 3923900e2b41b5e47bc25bfdcbcdc9e6, type: 3} + - rid: 6852985685364965388 + type: {class: ProbeVolumeBakingResources, ns: UnityEngine.Rendering, asm: Unity.RenderPipelines.Core.Runtime} + data: + m_Version: 1 + dilationShader: {fileID: 7200000, guid: 6bb382f7de370af41b775f54182e491d, type: 3} + subdivideSceneCS: {fileID: 7200000, guid: bb86f1f0af829fd45b2ebddda1245c22, type: 3} + voxelizeSceneShader: {fileID: 4800000, guid: c8b6a681c7b4e2e4785ffab093907f9e, type: 3} + traceVirtualOffsetCS: {fileID: -6772857160820960102, guid: ff2cbab5da58bf04d82c5f34037ed123, type: 3} + traceVirtualOffsetRT: {fileID: -5126288278712620388, guid: ff2cbab5da58bf04d82c5f34037ed123, type: 3} + skyOcclusionCS: {fileID: -6772857160820960102, guid: 5a2a534753fbdb44e96c3c78b5a6999d, type: 3} + skyOcclusionRT: {fileID: -5126288278712620388, guid: 5a2a534753fbdb44e96c3c78b5a6999d, type: 3} + renderingLayerCS: {fileID: -6772857160820960102, guid: 94a070d33e408384bafc1dea4a565df9, type: 3} + renderingLayerRT: {fileID: -5126288278712620388, guid: 94a070d33e408384bafc1dea4a565df9, type: 3} + - rid: 6852985685364965389 + type: {class: ProbeVolumeGlobalSettings, ns: UnityEngine.Rendering, asm: Unity.RenderPipelines.Core.Runtime} + data: + m_Version: 1 + m_ProbeVolumeDisableStreamingAssets: 0 + - rid: 6852985685364965390 + type: {class: ProbeVolumeDebugResources, ns: UnityEngine.Rendering, asm: Unity.RenderPipelines.Core.Runtime} + data: + m_Version: 1 + probeVolumeDebugShader: {fileID: 4800000, guid: 3b21275fd12d65f49babb5286f040f2d, type: 3} + probeVolumeFragmentationDebugShader: {fileID: 4800000, guid: 3a80877c579b9144ebdcc6d923bca303, type: 3} + probeVolumeSamplingDebugShader: {fileID: 4800000, guid: bf54e6528c79a224e96346799064c393, type: 3} + probeVolumeOffsetDebugShader: {fileID: 4800000, guid: db8bd7436dc2c5f4c92655307d198381, type: 3} + probeSamplingDebugMesh: {fileID: -3555484719484374845, guid: 20be25aac4e22ee49a7db76fb3df6de2, type: 3} + numbersDisplayTex: {fileID: 2800000, guid: 73fe53b428c5b3440b7e87ee830b608a, type: 3} + - rid: 6852985685364965391 + type: {class: IncludeAdditionalRPAssets, ns: UnityEngine.Rendering, asm: Unity.RenderPipelines.Core.Runtime} + data: + m_version: 0 + m_IncludeReferencedInScenes: 0 + m_IncludeAssetsByLabel: 0 + m_LabelToInclude: + - rid: 6852985685364965392 + type: {class: ShaderStrippingSetting, ns: UnityEngine.Rendering, asm: Unity.RenderPipelines.Core.Runtime} + data: + m_Version: 0 + m_ExportShaderVariants: 1 + m_ShaderVariantLogLevel: 0 + m_StripRuntimeDebugShaders: 1 + - rid: 6852985685364965393 + type: {class: ProbeVolumeRuntimeResources, ns: UnityEngine.Rendering, asm: Unity.RenderPipelines.Core.Runtime} + data: + m_Version: 1 + probeVolumeBlendStatesCS: {fileID: 7200000, guid: a3f7b8c99de28a94684cb1daebeccf5d, type: 3} + probeVolumeUploadDataCS: {fileID: 7200000, guid: 0951de5992461754fa73650732c4954c, type: 3} + probeVolumeUploadDataL2CS: {fileID: 7200000, guid: 6196f34ed825db14b81fb3eb0ea8d931, type: 3} + - rid: 6852985685364965394 + type: {class: RenderGraphGlobalSettings, ns: UnityEngine.Rendering, asm: Unity.RenderPipelines.Core.Runtime} + data: + m_version: 0 + m_EnableCompilationCaching: 1 + m_EnableValidityChecks: 1 + - rid: 8712630790384254976 + type: {class: RenderGraphUtilsResources, ns: UnityEngine.Rendering.RenderGraphModule.Util, asm: Unity.RenderPipelines.Core.Runtime} + data: + m_Version: 0 + m_CoreCopyPS: {fileID: 4800000, guid: 12dc59547ea167a4ab435097dd0f9add, type: 3} diff --git a/Assets/Settings/UniversalRenderPipelineGlobalSettings.asset.meta b/Assets/Settings/UniversalRenderPipelineGlobalSettings.asset.meta new file mode 100644 index 0000000..81b84f2 --- /dev/null +++ b/Assets/Settings/UniversalRenderPipelineGlobalSettings.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 18dc0cd2c080841dea60987a38ce93fa +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/packages.config b/Assets/packages.config new file mode 100644 index 0000000..23bc116 --- /dev/null +++ b/Assets/packages.config @@ -0,0 +1,7 @@ + + + + + + + \ No newline at end of file diff --git a/Assets/packages.config.meta b/Assets/packages.config.meta new file mode 100644 index 0000000..2f96d00 --- /dev/null +++ b/Assets/packages.config.meta @@ -0,0 +1,28 @@ +fileFormatVersion: 2 +guid: 883d65a5c823c9640bbb0010b782455c +labels: +- NuGetForUnity +PluginImporter: + externalObjects: {} + serializedVersion: 3 + iconMap: {} + executionOrder: {} + defineConstraints: [] + isPreloaded: 0 + isOverridable: 0 + isExplicitlyReferenced: 0 + validateReferences: 1 + platformData: + Any: + enabled: 0 + settings: {} + Editor: + enabled: 0 + settings: + DefaultValueInitialized: true + WindowsStoreApps: + enabled: 0 + settings: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/BracerLib.Editor.csproj.DotSettings b/BracerLib.Editor.csproj.DotSettings new file mode 100644 index 0000000..d346bc9 --- /dev/null +++ b/BracerLib.Editor.csproj.DotSettings @@ -0,0 +1,2 @@ + + True \ No newline at end of file diff --git a/BracerLib.sln b/BracerLib.sln new file mode 100644 index 0000000..732a520 --- /dev/null +++ b/BracerLib.sln @@ -0,0 +1,541 @@ + +Microsoft Visual Studio Solution File, Format Version 11.00 +# Visual Studio 2010 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.Timeline", "Unity.Timeline.csproj", "{c7de3392-d370-e844-bff7-efa1e8e04962}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.RenderPipelines.GPUDriven.Runtime", "Unity.RenderPipelines.GPUDriven.Runtime.csproj", "{11cb5c15-a8d6-bcbc-7ae8-9ca17447c04c}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.PlasticSCM.Editor", "Unity.PlasticSCM.Editor.csproj", "{3d1e5c79-373a-7ae9-52c8-e0991c94bf18}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.ShaderGraph.Editor", "Unity.ShaderGraph.Editor.csproj", "{1fe24b2d-d893-3acb-2069-9e1cd30b7267}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.RenderPipelines.Core.Runtime", "Unity.RenderPipelines.Core.Runtime.csproj", "{8ec9c36b-bf24-f884-f73a-01aa80729bda}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.Mathematics", "Unity.Mathematics.csproj", "{27fe22f8-2c3e-db4d-64ab-7e9a442c59e6}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.Timeline.Editor", "Unity.Timeline.Editor.csproj", "{15106780-5ebe-f60c-e0e2-7407d3913fc8}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.Multiplayer.Center.Editor", "Unity.Multiplayer.Center.Editor.csproj", "{5684fa08-bd92-50eb-6fdd-75a8034b6c53}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.RenderPipelines.Core.Editor", "Unity.RenderPipelines.Core.Editor.csproj", "{0d026cce-bd48-13f5-b614-8d180c62e5fb}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.Collections", "Unity.Collections.csproj", "{3575df36-6e70-8ff7-af98-bb48af852875}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "UnityEngine.UI", "UnityEngine.UI.csproj", "{35d85fca-1e89-2cf9-f920-227aa21760e9}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.RenderPipelines.Universal.2D.Runtime", "Unity.RenderPipelines.Universal.2D.Runtime.csproj", "{b0e3a7b3-77cb-1bc9-9dde-2be3dcbb62e3}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.VisualScripting.Core.Editor", "Unity.VisualScripting.Core.Editor.csproj", "{f4890066-2b23-6b8a-57b9-71e51575e507}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.RenderPipelines.Universal.Editor", "Unity.RenderPipelines.Universal.Editor.csproj", "{bc7b1ba2-9b7c-fd34-c16b-c156ba404630}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.PerformanceTesting.Editor", "Unity.PerformanceTesting.Editor.csproj", "{7c8e4144-ee3c-e5ce-a048-0490b919b2c1}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "UnityEngine.TestRunner", "UnityEngine.TestRunner.csproj", "{7e8376a3-2994-aa2d-ecee-57d3b2778856}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.Burst", "Unity.Burst.csproj", "{8cd3aef6-eb98-2eb4-bbf6-618504a6bc25}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.VisualScripting.Flow.Editor", "Unity.VisualScripting.Flow.Editor.csproj", "{b029fd12-0034-c9a5-0c58-b7307ff9b40b}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BracerLib.Editor", "BracerLib.Editor.csproj", "{ebf95861-75cd-cac8-aa40-5cbff3559df5}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.VisualStudio.Editor", "Unity.VisualStudio.Editor.csproj", "{68a7871b-1477-7e5a-2b7a-30be62593a80}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.InputSystem", "Unity.InputSystem.csproj", "{dde00eed-2fb3-229e-db9b-f8842791f29d}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PPv2URPConverters", "PPv2URPConverters.csproj", "{4ef6f126-1e76-3977-cca9-62dbdd6fa18f}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.Searcher.Editor", "Unity.Searcher.Editor.csproj", "{30c3ae50-6324-26f1-8b71-3a12e9f66387}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "UnityEditor.TestRunner", "UnityEditor.TestRunner.csproj", "{b3064196-a1a6-4af9-2da3-6e77942a2e71}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.VisualScripting.Core", "Unity.VisualScripting.Core.csproj", "{b200cee7-2268-f7d4-8608-d8063cf2a950}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.RenderPipelines.Universal.Runtime", "Unity.RenderPipelines.Universal.Runtime.csproj", "{b8637a08-a8d2-d07f-4e97-0f90029cffd1}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.UnifiedRayTracing.Runtime", "Unity.UnifiedRayTracing.Runtime.csproj", "{e51af9b3-e8b0-acae-c335-bf11898c038c}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.AI.Navigation.Editor.ConversionSystem", "Unity.AI.Navigation.Editor.ConversionSystem.csproj", "{5c78a938-6c63-3c7b-ffb0-a16b22eb7a8e}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.VisualScripting.State.Editor", "Unity.VisualScripting.State.Editor.csproj", "{cafe8a81-691e-b523-a832-d01e5410dae8}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.TestTools.CodeCoverage.Editor", "Unity.TestTools.CodeCoverage.Editor.csproj", "{1bdfd001-4245-fe24-e896-c5a1a699cd5a}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.Burst.CodeGen", "Unity.Burst.CodeGen.csproj", "{cbcdbef5-67d3-c78e-64d6-0d69947d5b45}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.VisualScripting.Flow", "Unity.VisualScripting.Flow.csproj", "{4755914f-7c44-89e2-eb6a-8bbdba26cf7b}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.PerformanceTesting", "Unity.PerformanceTesting.csproj", "{1ea40115-f73a-9c47-cd8c-f4f88acab367}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.TestTools.CodeCoverage.Editor.OpenCover.Model", "Unity.TestTools.CodeCoverage.Editor.OpenCover.Model.csproj", "{65fc4968-b932-8466-4017-12a0ff5da91c}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.TextMeshPro", "Unity.TextMeshPro.csproj", "{c912743f-2380-1662-16e9-543bdd27e846}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.TextMeshPro.Editor", "Unity.TextMeshPro.Editor.csproj", "{088bbfe7-fc28-0a18-eb26-f44a1fb855f6}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.Burst.Editor", "Unity.Burst.Editor.csproj", "{9ef3b936-2f52-6ed0-14f1-f8910daa6e3d}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.TestTools.CodeCoverage.Editor.OpenCover.Mono.Reflection", "Unity.TestTools.CodeCoverage.Editor.OpenCover.Mono.Reflection.csproj", "{3bc98edc-e8ab-2a41-c3f7-35d11f4b76e6}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.Rider.Editor", "Unity.Rider.Editor.csproj", "{885468ab-9312-0d9c-9780-53a16ad326a1}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.VisualScripting.State", "Unity.VisualScripting.State.csproj", "{25a1052d-c57c-9cc5-81b9-bbd50b124d67}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BracerLib", "BracerLib.csproj", "{c7626ced-1494-6d64-aaa0-4355b8652ccf}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.AI.Navigation.Updater", "Unity.AI.Navigation.Updater.csproj", "{1be01f44-d7b0-c5b1-591a-492d459debb6}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "UnityEditor.UI", "UnityEditor.UI.csproj", "{158ca74e-03e3-8317-be43-062b42b649f8}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.RenderPipelines.Universal.2D.Editor.Overrides", "Unity.RenderPipelines.Universal.2D.Editor.Overrides.csproj", "{57e5f3b3-b0c1-4bb8-aaf1-ebab14a05bfb}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "NuGetForUnity", "NuGetForUnity.csproj", "{82d965fb-5aab-0d3a-4ef1-bf87a1b1f419}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.AI.Navigation.Editor", "Unity.AI.Navigation.Editor.csproj", "{2302fc94-3c87-090a-0858-46ecb3782a45}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.Multiplayer.Center.Common", "Unity.Multiplayer.Center.Common.csproj", "{ce9f4022-e444-651d-f862-f7108847bdc6}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.InputSystem.ForUI", "Unity.InputSystem.ForUI.csproj", "{55cf8ad8-181f-e1de-c479-1a534af92c40}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.AI.Navigation", "Unity.AI.Navigation.csproj", "{431100e4-ede9-0ac0-5585-41f5e54066f9}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.Collections.CodeGen", "Unity.Collections.CodeGen.csproj", "{953fa071-bac9-7696-0845-23fb52ccfe67}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.Mathematics.Editor", "Unity.Mathematics.Editor.csproj", "{d1c9975f-9ad3-c0ab-bb95-dd58efe91c87}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.VisualScripting.SettingsProvider.Editor", "Unity.VisualScripting.SettingsProvider.Editor.csproj", "{56caeea3-b311-3fcb-1e7d-37048dd6a236}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "UnityEditor.UI.Analytics", "UnityEditor.UI.Analytics.csproj", "{c616567d-abf5-50b1-8a00-61d7ab5999c4}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.Settings.Editor", "Unity.Settings.Editor.csproj", "{6b0ba172-59ce-7447-a3b8-587a2d08348c}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.InputSystem.TestFramework", "Unity.InputSystem.TestFramework.csproj", "{51971fcb-d44f-9e82-0217-922cdede5de4}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.ShaderGraph.Utilities", "Unity.ShaderGraph.Utilities.csproj", "{3434c993-50f4-206e-9220-4800c1523f17}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.VisualScripting.Shared.Editor", "Unity.VisualScripting.Shared.Editor.csproj", "{b0905826-0d88-a86b-d92f-7b86054ad766}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.CollabProxy.Editor", "Unity.CollabProxy.Editor.csproj", "{66fb8bd8-d0ba-5944-3797-733f28566306}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.RenderPipeline.Universal.ShaderLibrary", "Unity.RenderPipeline.Universal.ShaderLibrary.csproj", "{74eb1a56-3ac2-16d6-1cea-6bf2eb8e6d24}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BracerLib.Tests", "BracerLib.Tests.csproj", "{4484591c-1eef-2cfa-4ffe-9300a11a6e88}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.InputSystem.DocCodeSamples", "Unity.InputSystem.DocCodeSamples.csproj", "{9087a195-2a22-2897-7f07-c14de5a88906}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.RenderPipelines.Universal.Shaders", "Unity.RenderPipelines.Universal.Shaders.csproj", "{6bd889a2-0579-a131-74e8-5e602cff20f6}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.RenderPipelines.Core.Runtime.Shared", "Unity.RenderPipelines.Core.Runtime.Shared.csproj", "{7a772534-c89d-4dee-5ebb-918ba11ed3b7}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.InternalAPIEngineBridge.004", "Unity.InternalAPIEngineBridge.004.csproj", "{0661fe88-d34b-9839-95ce-cc4caa4a7719}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.RenderPipelines.Core.Editor.Shared", "Unity.RenderPipelines.Core.Editor.Shared.csproj", "{13032185-b6de-d9a3-dc34-0a4e2853ed06}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.VisualScripting.DocCodeExamples", "Unity.VisualScripting.DocCodeExamples.csproj", "{3acddcbe-f2e3-f9b3-384f-b00f037631c9}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.PlasticSCM.Editor.Entities", "Unity.PlasticSCM.Editor.Entities.csproj", "{433b063d-fdcf-942c-cacc-e0a12ecfab4c}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.Rendering.LightTransport.Editor", "Unity.Rendering.LightTransport.Editor.csproj", "{d0c562bc-37b2-968f-c487-6f9c7907dfc9}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.Collections.Editor", "Unity.Collections.Editor.csproj", "{7a399762-1357-59af-18c5-64fb51c178f2}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.RenderPipelines.Universal.Config.Runtime", "Unity.RenderPipelines.Universal.Config.Runtime.csproj", "{563c2e64-8afd-e84b-dc4f-07e1ec672b92}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.RenderPipelines.ShaderGraph.ShaderGraphLibrary", "Unity.RenderPipelines.ShaderGraph.ShaderGraphLibrary.csproj", "{459d962f-006f-2953-d085-3294c6f8ac18}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.RenderPipelines.Core.ShaderLibrary", "Unity.RenderPipelines.Core.ShaderLibrary.csproj", "{d036b2eb-2fb1-b02d-70e7-f800bb2d6e27}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.Timeline", "Unity.Timeline.Player.csproj", "{d9ba9151-38c1-f6be-9d15-e7b3ac159d74}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.RenderPipelines.GPUDriven.Runtime", "Unity.RenderPipelines.GPUDriven.Runtime.Player.csproj", "{968c345c-9dcc-560a-a66b-1ffb7651002b}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.RenderPipelines.Core.Runtime", "Unity.RenderPipelines.Core.Runtime.Player.csproj", "{b68faf78-32ca-4324-8282-11385694f449}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.Mathematics", "Unity.Mathematics.Player.csproj", "{e86715ee-3afa-4fa1-736a-9c8f7ae308b5}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.Collections", "Unity.Collections.Player.csproj", "{70f071a3-241d-3d5e-fb00-4ba123785e8e}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "UnityEngine.UI", "UnityEngine.UI.Player.csproj", "{6dd54bf1-f21a-9c67-75d3-f773ffed40aa}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.RenderPipelines.Universal.2D.Runtime", "Unity.RenderPipelines.Universal.2D.Runtime.Player.csproj", "{ffdab153-5d63-614c-fd02-f41f622dd58e}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "UnityEngine.TestRunner", "UnityEngine.TestRunner.Player.csproj", "{d8a5fb8d-ccac-7685-687e-3a3ffff5b4bc}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.Burst", "Unity.Burst.Player.csproj", "{9edeb5c5-e75c-1dfe-a513-60d0ee9249a5}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.InputSystem", "Unity.InputSystem.Player.csproj", "{a4bdb33e-14c6-24ff-9628-0326f3801ab1}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.VisualScripting.Core", "Unity.VisualScripting.Core.Player.csproj", "{1c7cbe53-22ab-6d60-fec3-42b60324b0f3}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.RenderPipelines.Universal.Runtime", "Unity.RenderPipelines.Universal.Runtime.Player.csproj", "{65e61f66-b1da-6e8c-fad4-e91b95737ff1}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.UnifiedRayTracing.Runtime", "Unity.UnifiedRayTracing.Runtime.Player.csproj", "{f03200f1-db9f-6269-a9ef-34209375db7a}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.VisualScripting.Flow", "Unity.VisualScripting.Flow.Player.csproj", "{de4dd82f-5a21-63ee-5c85-edec15d9f144}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.PerformanceTesting", "Unity.PerformanceTesting.Player.csproj", "{53870e0f-e50d-ab80-0590-4d7e1fb3b6b7}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.TextMeshPro", "Unity.TextMeshPro.Player.csproj", "{d045cd94-9e03-1f54-4d48-db0819966501}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.VisualScripting.State", "Unity.VisualScripting.State.Player.csproj", "{e4273429-32bb-bd2b-12b3-121710178d5d}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BracerLib", "BracerLib.Player.csproj", "{dd837195-398b-c681-8a81-252d8b9e1f24}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.Multiplayer.Center.Common", "Unity.Multiplayer.Center.Common.Player.csproj", "{c1923a49-338d-6fc7-95fe-5f4874c65df3}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.InputSystem.ForUI", "Unity.InputSystem.ForUI.Player.csproj", "{eeaaccee-6eb7-3aa6-3365-1fcdf27cd9f2}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.AI.Navigation", "Unity.AI.Navigation.Player.csproj", "{9c05d347-9b19-07e4-3bae-9a366f790d55}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.InputSystem.TestFramework", "Unity.InputSystem.TestFramework.Player.csproj", "{0dbdeb89-3d1a-f74b-6146-66dafb7791b9}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.RenderPipeline.Universal.ShaderLibrary", "Unity.RenderPipeline.Universal.ShaderLibrary.Player.csproj", "{6c463f3f-ca62-1c24-839b-4209b59ef663}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BracerLib.Tests", "BracerLib.Tests.Player.csproj", "{b69f40b8-be9e-fc07-f6df-48ec5a15c8cf}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.RenderPipelines.Universal.Shaders", "Unity.RenderPipelines.Universal.Shaders.Player.csproj", "{0b6b79bd-c270-39e4-9d1c-97c7e9edcc79}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.RenderPipelines.Core.Runtime.Shared", "Unity.RenderPipelines.Core.Runtime.Shared.Player.csproj", "{3399d0a6-bd1a-c050-867d-6a14b9dc7a99}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.InternalAPIEngineBridge.004", "Unity.InternalAPIEngineBridge.004.Player.csproj", "{9af20a01-0715-5d01-32ca-c4bb2fd0bb7f}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.VisualScripting.DocCodeExamples", "Unity.VisualScripting.DocCodeExamples.Player.csproj", "{fdbabadb-0f6b-49cd-e87a-0ebbaf4d2d96}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.RenderPipelines.Universal.Config.Runtime", "Unity.RenderPipelines.Universal.Config.Runtime.Player.csproj", "{87b810fe-daa0-9aec-85dd-88cba86d95a4}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.RenderPipelines.ShaderGraph.ShaderGraphLibrary", "Unity.RenderPipelines.ShaderGraph.ShaderGraphLibrary.Player.csproj", "{d4a0c4a1-1452-37dd-3d3d-772525ed81eb}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.RenderPipelines.Core.ShaderLibrary", "Unity.RenderPipelines.Core.ShaderLibrary.Player.csproj", "{0636e6df-d0a1-eed5-05dc-f32835373eee}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Assembly-CSharp-Editor", "Assembly-CSharp-Editor.csproj", "{7c9ea9b1-fa3a-92fd-79ef-0614d2e7d0ef}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TestNewCustomAssembly", "TestNewCustomAssembly.csproj", "{54d18321-8ea9-7877-ea25-1eed11581560}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Assembly-CSharp", "Assembly-CSharp.csproj", "{1db738a9-1ee1-760e-4898-932e6b285849}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.RenderPipelines.Universal.Editor.Tests", "Unity.RenderPipelines.Universal.Editor.Tests.csproj", "{5f698b77-6a5d-38cd-a890-0ff2c871c71e}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.Mathematics.Tests", "Unity.Mathematics.Tests.csproj", "{279bd096-13fb-548d-7246-08940fbf375b}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.RenderPipelines.Core.Editor.Tests", "Unity.RenderPipelines.Core.Editor.Tests.csproj", "{b2b6456e-3d99-1dd4-5f43-c6cda3ff13b3}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.Collections.Tests", "Unity.Collections.Tests.csproj", "{79cf9723-c644-7442-69eb-c5c151c9c0e1}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Assembly-CSharp-firstpass", "Assembly-CSharp-firstpass.csproj", "{207c8737-bff2-8041-a9ea-023da545cd38}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.RenderPipelines.Universal.Config.Editor.Tests", "Unity.RenderPipelines.Universal.Config.Editor.Tests.csproj", "{cd938261-bfbd-f558-cbc8-ba5c0295a431}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.Collections.DocCodeSamples", "Unity.Collections.DocCodeSamples.csproj", "{8a300f5f-5251-b709-205e-df30786d6848}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.Searcher.EditorTests", "Unity.Searcher.EditorTests.csproj", "{9ca57f9a-b614-5f43-3202-23433e524919}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.Collections.PerformanceTests", "Unity.Collections.PerformanceTests.csproj", "{5700e776-3c6b-5d30-7c88-98979020fb76}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.TestTools.CodeCoverage.Editor.Compatibility", "Unity.TestTools.CodeCoverage.Editor.Compatibility.csproj", "{9e6fe5d0-882c-a65b-b2af-257fc355bffd}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.TextMeshPro.Editor.Tests", "Unity.TextMeshPro.Editor.Tests.csproj", "{9bb85942-a19c-9b29-b904-737de6c5fee3}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DocCodeExamples", "DocCodeExamples.csproj", "{f6b43d73-93b8-2daf-0d31-8788e79381c0}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.Multiplayer.Center.Tests", "Unity.Multiplayer.Center.Tests.csproj", "{b913b693-5316-e28d-62f5-c41fe4f3e072}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.RenderPipelines.Core.Runtime.Tests", "Unity.RenderPipelines.Core.Runtime.Tests.csproj", "{d2900108-958e-d2d9-fc9e-0896852f84e4}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.Multiplayer.Center.Editor.Tests", "Unity.Multiplayer.Center.Editor.Tests.csproj", "{7dbeeeef-9a7a-9e62-1442-a35b9bad2a6d}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.Settings.Tests", "Unity.Settings.Tests.csproj", "{8e3e0f5f-d73b-af4f-5dd0-c2f1d1fbac2f}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "UnityEngine.UI.Tests", "UnityEngine.UI.Tests.csproj", "{39acbc6c-63fd-041f-9e3b-77c9a6c78db2}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.InputSystem.IntegrationTests", "Unity.InputSystem.IntegrationTests.csproj", "{87fcd96e-1898-a080-280b-1c03f27a73c0}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.Collections.Tests.Playmode", "Unity.Collections.Tests.Playmode.csproj", "{46408877-4288-1836-f173-5fc6db61570c}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.Nuget.Mono-Cecil", "Unity.Nuget.Mono-Cecil.csproj", "{b2996835-aef4-549d-ffa3-a33650ea1d66}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.TextMeshPro.Tests", "Unity.TextMeshPro.Tests.csproj", "{8b1c82f6-9fb3-65fb-2f81-a505a30520a7}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.UnifiedRayTracing.Editor.Tests", "Unity.UnifiedRayTracing.Editor.Tests.csproj", "{e7559aad-8cbb-e043-951c-019b1b9f375a}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "UnityEditor.UI.EditorTests", "UnityEditor.UI.EditorTests.csproj", "{349e63a6-2f61-9675-8363-51bd4636efb2}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.RenderPipelines.Universal.Runtime.Tests", "Unity.RenderPipelines.Universal.Runtime.Tests.csproj", "{7f4a82b8-f4d7-9a2f-9e2c-d26f38f16856}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.Collections.BurstCompatibilityGen", "Unity.Collections.BurstCompatibilityGen.csproj", "{e2d03f5e-39f0-1926-8eb5-3ef7a4a57095}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Unity.ShaderGraph.Editor.Tests", "Unity.ShaderGraph.Editor.Tests.csproj", "{7860e1df-2750-ea79-b6f2-74d6e5a59eb3}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {c7de3392-d370-e844-bff7-efa1e8e04962}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {c7de3392-d370-e844-bff7-efa1e8e04962}.Debug|Any CPU.Build.0 = Debug|Any CPU + {11cb5c15-a8d6-bcbc-7ae8-9ca17447c04c}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {11cb5c15-a8d6-bcbc-7ae8-9ca17447c04c}.Debug|Any CPU.Build.0 = Debug|Any CPU + {3d1e5c79-373a-7ae9-52c8-e0991c94bf18}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {3d1e5c79-373a-7ae9-52c8-e0991c94bf18}.Debug|Any CPU.Build.0 = Debug|Any CPU + {1fe24b2d-d893-3acb-2069-9e1cd30b7267}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {1fe24b2d-d893-3acb-2069-9e1cd30b7267}.Debug|Any CPU.Build.0 = Debug|Any CPU + {8ec9c36b-bf24-f884-f73a-01aa80729bda}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {8ec9c36b-bf24-f884-f73a-01aa80729bda}.Debug|Any CPU.Build.0 = Debug|Any CPU + {27fe22f8-2c3e-db4d-64ab-7e9a442c59e6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {27fe22f8-2c3e-db4d-64ab-7e9a442c59e6}.Debug|Any CPU.Build.0 = Debug|Any CPU + {15106780-5ebe-f60c-e0e2-7407d3913fc8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {15106780-5ebe-f60c-e0e2-7407d3913fc8}.Debug|Any CPU.Build.0 = Debug|Any CPU + {5684fa08-bd92-50eb-6fdd-75a8034b6c53}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {5684fa08-bd92-50eb-6fdd-75a8034b6c53}.Debug|Any CPU.Build.0 = Debug|Any CPU + {0d026cce-bd48-13f5-b614-8d180c62e5fb}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {0d026cce-bd48-13f5-b614-8d180c62e5fb}.Debug|Any CPU.Build.0 = Debug|Any CPU + {3575df36-6e70-8ff7-af98-bb48af852875}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {3575df36-6e70-8ff7-af98-bb48af852875}.Debug|Any CPU.Build.0 = Debug|Any CPU + {35d85fca-1e89-2cf9-f920-227aa21760e9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {35d85fca-1e89-2cf9-f920-227aa21760e9}.Debug|Any CPU.Build.0 = Debug|Any CPU + {b0e3a7b3-77cb-1bc9-9dde-2be3dcbb62e3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {b0e3a7b3-77cb-1bc9-9dde-2be3dcbb62e3}.Debug|Any CPU.Build.0 = Debug|Any CPU + {f4890066-2b23-6b8a-57b9-71e51575e507}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {f4890066-2b23-6b8a-57b9-71e51575e507}.Debug|Any CPU.Build.0 = Debug|Any CPU + {bc7b1ba2-9b7c-fd34-c16b-c156ba404630}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {bc7b1ba2-9b7c-fd34-c16b-c156ba404630}.Debug|Any CPU.Build.0 = Debug|Any CPU + {7c8e4144-ee3c-e5ce-a048-0490b919b2c1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {7c8e4144-ee3c-e5ce-a048-0490b919b2c1}.Debug|Any CPU.Build.0 = Debug|Any CPU + {7e8376a3-2994-aa2d-ecee-57d3b2778856}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {7e8376a3-2994-aa2d-ecee-57d3b2778856}.Debug|Any CPU.Build.0 = Debug|Any CPU + {8cd3aef6-eb98-2eb4-bbf6-618504a6bc25}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {8cd3aef6-eb98-2eb4-bbf6-618504a6bc25}.Debug|Any CPU.Build.0 = Debug|Any CPU + {b029fd12-0034-c9a5-0c58-b7307ff9b40b}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {b029fd12-0034-c9a5-0c58-b7307ff9b40b}.Debug|Any CPU.Build.0 = Debug|Any CPU + {ebf95861-75cd-cac8-aa40-5cbff3559df5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {ebf95861-75cd-cac8-aa40-5cbff3559df5}.Debug|Any CPU.Build.0 = Debug|Any CPU + {68a7871b-1477-7e5a-2b7a-30be62593a80}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {68a7871b-1477-7e5a-2b7a-30be62593a80}.Debug|Any CPU.Build.0 = Debug|Any CPU + {dde00eed-2fb3-229e-db9b-f8842791f29d}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {dde00eed-2fb3-229e-db9b-f8842791f29d}.Debug|Any CPU.Build.0 = Debug|Any CPU + {4ef6f126-1e76-3977-cca9-62dbdd6fa18f}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {4ef6f126-1e76-3977-cca9-62dbdd6fa18f}.Debug|Any CPU.Build.0 = Debug|Any CPU + {30c3ae50-6324-26f1-8b71-3a12e9f66387}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {30c3ae50-6324-26f1-8b71-3a12e9f66387}.Debug|Any CPU.Build.0 = Debug|Any CPU + {b3064196-a1a6-4af9-2da3-6e77942a2e71}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {b3064196-a1a6-4af9-2da3-6e77942a2e71}.Debug|Any CPU.Build.0 = Debug|Any CPU + {b200cee7-2268-f7d4-8608-d8063cf2a950}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {b200cee7-2268-f7d4-8608-d8063cf2a950}.Debug|Any CPU.Build.0 = Debug|Any CPU + {b8637a08-a8d2-d07f-4e97-0f90029cffd1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {b8637a08-a8d2-d07f-4e97-0f90029cffd1}.Debug|Any CPU.Build.0 = Debug|Any CPU + {e51af9b3-e8b0-acae-c335-bf11898c038c}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {e51af9b3-e8b0-acae-c335-bf11898c038c}.Debug|Any CPU.Build.0 = Debug|Any CPU + {5c78a938-6c63-3c7b-ffb0-a16b22eb7a8e}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {5c78a938-6c63-3c7b-ffb0-a16b22eb7a8e}.Debug|Any CPU.Build.0 = Debug|Any CPU + {cafe8a81-691e-b523-a832-d01e5410dae8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {cafe8a81-691e-b523-a832-d01e5410dae8}.Debug|Any CPU.Build.0 = Debug|Any CPU + {1bdfd001-4245-fe24-e896-c5a1a699cd5a}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {1bdfd001-4245-fe24-e896-c5a1a699cd5a}.Debug|Any CPU.Build.0 = Debug|Any CPU + {cbcdbef5-67d3-c78e-64d6-0d69947d5b45}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {cbcdbef5-67d3-c78e-64d6-0d69947d5b45}.Debug|Any CPU.Build.0 = Debug|Any CPU + {4755914f-7c44-89e2-eb6a-8bbdba26cf7b}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {4755914f-7c44-89e2-eb6a-8bbdba26cf7b}.Debug|Any CPU.Build.0 = Debug|Any CPU + {1ea40115-f73a-9c47-cd8c-f4f88acab367}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {1ea40115-f73a-9c47-cd8c-f4f88acab367}.Debug|Any CPU.Build.0 = Debug|Any CPU + {65fc4968-b932-8466-4017-12a0ff5da91c}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {65fc4968-b932-8466-4017-12a0ff5da91c}.Debug|Any CPU.Build.0 = Debug|Any CPU + {c912743f-2380-1662-16e9-543bdd27e846}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {c912743f-2380-1662-16e9-543bdd27e846}.Debug|Any CPU.Build.0 = Debug|Any CPU + {088bbfe7-fc28-0a18-eb26-f44a1fb855f6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {088bbfe7-fc28-0a18-eb26-f44a1fb855f6}.Debug|Any CPU.Build.0 = Debug|Any CPU + {9ef3b936-2f52-6ed0-14f1-f8910daa6e3d}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {9ef3b936-2f52-6ed0-14f1-f8910daa6e3d}.Debug|Any CPU.Build.0 = Debug|Any CPU + {3bc98edc-e8ab-2a41-c3f7-35d11f4b76e6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {3bc98edc-e8ab-2a41-c3f7-35d11f4b76e6}.Debug|Any CPU.Build.0 = Debug|Any CPU + {885468ab-9312-0d9c-9780-53a16ad326a1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {885468ab-9312-0d9c-9780-53a16ad326a1}.Debug|Any CPU.Build.0 = Debug|Any CPU + {25a1052d-c57c-9cc5-81b9-bbd50b124d67}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {25a1052d-c57c-9cc5-81b9-bbd50b124d67}.Debug|Any CPU.Build.0 = Debug|Any CPU + {c7626ced-1494-6d64-aaa0-4355b8652ccf}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {c7626ced-1494-6d64-aaa0-4355b8652ccf}.Debug|Any CPU.Build.0 = Debug|Any CPU + {1be01f44-d7b0-c5b1-591a-492d459debb6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {1be01f44-d7b0-c5b1-591a-492d459debb6}.Debug|Any CPU.Build.0 = Debug|Any CPU + {158ca74e-03e3-8317-be43-062b42b649f8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {158ca74e-03e3-8317-be43-062b42b649f8}.Debug|Any CPU.Build.0 = Debug|Any CPU + {57e5f3b3-b0c1-4bb8-aaf1-ebab14a05bfb}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {57e5f3b3-b0c1-4bb8-aaf1-ebab14a05bfb}.Debug|Any CPU.Build.0 = Debug|Any CPU + {82d965fb-5aab-0d3a-4ef1-bf87a1b1f419}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {82d965fb-5aab-0d3a-4ef1-bf87a1b1f419}.Debug|Any CPU.Build.0 = Debug|Any CPU + {2302fc94-3c87-090a-0858-46ecb3782a45}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {2302fc94-3c87-090a-0858-46ecb3782a45}.Debug|Any CPU.Build.0 = Debug|Any CPU + {ce9f4022-e444-651d-f862-f7108847bdc6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {ce9f4022-e444-651d-f862-f7108847bdc6}.Debug|Any CPU.Build.0 = Debug|Any CPU + {55cf8ad8-181f-e1de-c479-1a534af92c40}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {55cf8ad8-181f-e1de-c479-1a534af92c40}.Debug|Any CPU.Build.0 = Debug|Any CPU + {431100e4-ede9-0ac0-5585-41f5e54066f9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {431100e4-ede9-0ac0-5585-41f5e54066f9}.Debug|Any CPU.Build.0 = Debug|Any CPU + {953fa071-bac9-7696-0845-23fb52ccfe67}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {953fa071-bac9-7696-0845-23fb52ccfe67}.Debug|Any CPU.Build.0 = Debug|Any CPU + {d1c9975f-9ad3-c0ab-bb95-dd58efe91c87}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {d1c9975f-9ad3-c0ab-bb95-dd58efe91c87}.Debug|Any CPU.Build.0 = Debug|Any CPU + {56caeea3-b311-3fcb-1e7d-37048dd6a236}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {56caeea3-b311-3fcb-1e7d-37048dd6a236}.Debug|Any CPU.Build.0 = Debug|Any CPU + {c616567d-abf5-50b1-8a00-61d7ab5999c4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {c616567d-abf5-50b1-8a00-61d7ab5999c4}.Debug|Any CPU.Build.0 = Debug|Any CPU + {6b0ba172-59ce-7447-a3b8-587a2d08348c}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {6b0ba172-59ce-7447-a3b8-587a2d08348c}.Debug|Any CPU.Build.0 = Debug|Any CPU + {51971fcb-d44f-9e82-0217-922cdede5de4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {51971fcb-d44f-9e82-0217-922cdede5de4}.Debug|Any CPU.Build.0 = Debug|Any CPU + {3434c993-50f4-206e-9220-4800c1523f17}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {3434c993-50f4-206e-9220-4800c1523f17}.Debug|Any CPU.Build.0 = Debug|Any CPU + {b0905826-0d88-a86b-d92f-7b86054ad766}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {b0905826-0d88-a86b-d92f-7b86054ad766}.Debug|Any CPU.Build.0 = Debug|Any CPU + {66fb8bd8-d0ba-5944-3797-733f28566306}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {66fb8bd8-d0ba-5944-3797-733f28566306}.Debug|Any CPU.Build.0 = Debug|Any CPU + {74eb1a56-3ac2-16d6-1cea-6bf2eb8e6d24}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {74eb1a56-3ac2-16d6-1cea-6bf2eb8e6d24}.Debug|Any CPU.Build.0 = Debug|Any CPU + {4484591c-1eef-2cfa-4ffe-9300a11a6e88}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {4484591c-1eef-2cfa-4ffe-9300a11a6e88}.Debug|Any CPU.Build.0 = Debug|Any CPU + {9087a195-2a22-2897-7f07-c14de5a88906}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {9087a195-2a22-2897-7f07-c14de5a88906}.Debug|Any CPU.Build.0 = Debug|Any CPU + {6bd889a2-0579-a131-74e8-5e602cff20f6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {6bd889a2-0579-a131-74e8-5e602cff20f6}.Debug|Any CPU.Build.0 = Debug|Any CPU + {7a772534-c89d-4dee-5ebb-918ba11ed3b7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {7a772534-c89d-4dee-5ebb-918ba11ed3b7}.Debug|Any CPU.Build.0 = Debug|Any CPU + {0661fe88-d34b-9839-95ce-cc4caa4a7719}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {0661fe88-d34b-9839-95ce-cc4caa4a7719}.Debug|Any CPU.Build.0 = Debug|Any CPU + {13032185-b6de-d9a3-dc34-0a4e2853ed06}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {13032185-b6de-d9a3-dc34-0a4e2853ed06}.Debug|Any CPU.Build.0 = Debug|Any CPU + {3acddcbe-f2e3-f9b3-384f-b00f037631c9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {3acddcbe-f2e3-f9b3-384f-b00f037631c9}.Debug|Any CPU.Build.0 = Debug|Any CPU + {433b063d-fdcf-942c-cacc-e0a12ecfab4c}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {433b063d-fdcf-942c-cacc-e0a12ecfab4c}.Debug|Any CPU.Build.0 = Debug|Any CPU + {d0c562bc-37b2-968f-c487-6f9c7907dfc9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {d0c562bc-37b2-968f-c487-6f9c7907dfc9}.Debug|Any CPU.Build.0 = Debug|Any CPU + {7a399762-1357-59af-18c5-64fb51c178f2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {7a399762-1357-59af-18c5-64fb51c178f2}.Debug|Any CPU.Build.0 = Debug|Any CPU + {563c2e64-8afd-e84b-dc4f-07e1ec672b92}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {563c2e64-8afd-e84b-dc4f-07e1ec672b92}.Debug|Any CPU.Build.0 = Debug|Any CPU + {459d962f-006f-2953-d085-3294c6f8ac18}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {459d962f-006f-2953-d085-3294c6f8ac18}.Debug|Any CPU.Build.0 = Debug|Any CPU + {d036b2eb-2fb1-b02d-70e7-f800bb2d6e27}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {d036b2eb-2fb1-b02d-70e7-f800bb2d6e27}.Debug|Any CPU.Build.0 = Debug|Any CPU + {d9ba9151-38c1-f6be-9d15-e7b3ac159d74}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {d9ba9151-38c1-f6be-9d15-e7b3ac159d74}.Debug|Any CPU.Build.0 = Debug|Any CPU + {968c345c-9dcc-560a-a66b-1ffb7651002b}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {968c345c-9dcc-560a-a66b-1ffb7651002b}.Debug|Any CPU.Build.0 = Debug|Any CPU + {b68faf78-32ca-4324-8282-11385694f449}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {b68faf78-32ca-4324-8282-11385694f449}.Debug|Any CPU.Build.0 = Debug|Any CPU + {e86715ee-3afa-4fa1-736a-9c8f7ae308b5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {e86715ee-3afa-4fa1-736a-9c8f7ae308b5}.Debug|Any CPU.Build.0 = Debug|Any CPU + {70f071a3-241d-3d5e-fb00-4ba123785e8e}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {70f071a3-241d-3d5e-fb00-4ba123785e8e}.Debug|Any CPU.Build.0 = Debug|Any CPU + {6dd54bf1-f21a-9c67-75d3-f773ffed40aa}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {6dd54bf1-f21a-9c67-75d3-f773ffed40aa}.Debug|Any CPU.Build.0 = Debug|Any CPU + {ffdab153-5d63-614c-fd02-f41f622dd58e}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {ffdab153-5d63-614c-fd02-f41f622dd58e}.Debug|Any CPU.Build.0 = Debug|Any CPU + {d8a5fb8d-ccac-7685-687e-3a3ffff5b4bc}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {d8a5fb8d-ccac-7685-687e-3a3ffff5b4bc}.Debug|Any CPU.Build.0 = Debug|Any CPU + {9edeb5c5-e75c-1dfe-a513-60d0ee9249a5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {9edeb5c5-e75c-1dfe-a513-60d0ee9249a5}.Debug|Any CPU.Build.0 = Debug|Any CPU + {a4bdb33e-14c6-24ff-9628-0326f3801ab1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {a4bdb33e-14c6-24ff-9628-0326f3801ab1}.Debug|Any CPU.Build.0 = Debug|Any CPU + {1c7cbe53-22ab-6d60-fec3-42b60324b0f3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {1c7cbe53-22ab-6d60-fec3-42b60324b0f3}.Debug|Any CPU.Build.0 = Debug|Any CPU + {65e61f66-b1da-6e8c-fad4-e91b95737ff1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {65e61f66-b1da-6e8c-fad4-e91b95737ff1}.Debug|Any CPU.Build.0 = Debug|Any CPU + {f03200f1-db9f-6269-a9ef-34209375db7a}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {f03200f1-db9f-6269-a9ef-34209375db7a}.Debug|Any CPU.Build.0 = Debug|Any CPU + {de4dd82f-5a21-63ee-5c85-edec15d9f144}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {de4dd82f-5a21-63ee-5c85-edec15d9f144}.Debug|Any CPU.Build.0 = Debug|Any CPU + {53870e0f-e50d-ab80-0590-4d7e1fb3b6b7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {53870e0f-e50d-ab80-0590-4d7e1fb3b6b7}.Debug|Any CPU.Build.0 = Debug|Any CPU + {d045cd94-9e03-1f54-4d48-db0819966501}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {d045cd94-9e03-1f54-4d48-db0819966501}.Debug|Any CPU.Build.0 = Debug|Any CPU + {e4273429-32bb-bd2b-12b3-121710178d5d}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {e4273429-32bb-bd2b-12b3-121710178d5d}.Debug|Any CPU.Build.0 = Debug|Any CPU + {dd837195-398b-c681-8a81-252d8b9e1f24}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {dd837195-398b-c681-8a81-252d8b9e1f24}.Debug|Any CPU.Build.0 = Debug|Any CPU + {c1923a49-338d-6fc7-95fe-5f4874c65df3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {c1923a49-338d-6fc7-95fe-5f4874c65df3}.Debug|Any CPU.Build.0 = Debug|Any CPU + {eeaaccee-6eb7-3aa6-3365-1fcdf27cd9f2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {eeaaccee-6eb7-3aa6-3365-1fcdf27cd9f2}.Debug|Any CPU.Build.0 = Debug|Any CPU + {9c05d347-9b19-07e4-3bae-9a366f790d55}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {9c05d347-9b19-07e4-3bae-9a366f790d55}.Debug|Any CPU.Build.0 = Debug|Any CPU + {0dbdeb89-3d1a-f74b-6146-66dafb7791b9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {0dbdeb89-3d1a-f74b-6146-66dafb7791b9}.Debug|Any CPU.Build.0 = Debug|Any CPU + {6c463f3f-ca62-1c24-839b-4209b59ef663}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {6c463f3f-ca62-1c24-839b-4209b59ef663}.Debug|Any CPU.Build.0 = Debug|Any CPU + {b69f40b8-be9e-fc07-f6df-48ec5a15c8cf}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {b69f40b8-be9e-fc07-f6df-48ec5a15c8cf}.Debug|Any CPU.Build.0 = Debug|Any CPU + {0b6b79bd-c270-39e4-9d1c-97c7e9edcc79}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {0b6b79bd-c270-39e4-9d1c-97c7e9edcc79}.Debug|Any CPU.Build.0 = Debug|Any CPU + {3399d0a6-bd1a-c050-867d-6a14b9dc7a99}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {3399d0a6-bd1a-c050-867d-6a14b9dc7a99}.Debug|Any CPU.Build.0 = Debug|Any CPU + {9af20a01-0715-5d01-32ca-c4bb2fd0bb7f}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {9af20a01-0715-5d01-32ca-c4bb2fd0bb7f}.Debug|Any CPU.Build.0 = Debug|Any CPU + {fdbabadb-0f6b-49cd-e87a-0ebbaf4d2d96}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {fdbabadb-0f6b-49cd-e87a-0ebbaf4d2d96}.Debug|Any CPU.Build.0 = Debug|Any CPU + {87b810fe-daa0-9aec-85dd-88cba86d95a4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {87b810fe-daa0-9aec-85dd-88cba86d95a4}.Debug|Any CPU.Build.0 = Debug|Any CPU + {d4a0c4a1-1452-37dd-3d3d-772525ed81eb}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {d4a0c4a1-1452-37dd-3d3d-772525ed81eb}.Debug|Any CPU.Build.0 = Debug|Any CPU + {0636e6df-d0a1-eed5-05dc-f32835373eee}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {0636e6df-d0a1-eed5-05dc-f32835373eee}.Debug|Any CPU.Build.0 = Debug|Any CPU + {7c9ea9b1-fa3a-92fd-79ef-0614d2e7d0ef}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {7c9ea9b1-fa3a-92fd-79ef-0614d2e7d0ef}.Debug|Any CPU.Build.0 = Debug|Any CPU + {54d18321-8ea9-7877-ea25-1eed11581560}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {54d18321-8ea9-7877-ea25-1eed11581560}.Debug|Any CPU.Build.0 = Debug|Any CPU + {1db738a9-1ee1-760e-4898-932e6b285849}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {1db738a9-1ee1-760e-4898-932e6b285849}.Debug|Any CPU.Build.0 = Debug|Any CPU + {5f698b77-6a5d-38cd-a890-0ff2c871c71e}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {5f698b77-6a5d-38cd-a890-0ff2c871c71e}.Debug|Any CPU.Build.0 = Debug|Any CPU + {279bd096-13fb-548d-7246-08940fbf375b}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {279bd096-13fb-548d-7246-08940fbf375b}.Debug|Any CPU.Build.0 = Debug|Any CPU + {b2b6456e-3d99-1dd4-5f43-c6cda3ff13b3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {b2b6456e-3d99-1dd4-5f43-c6cda3ff13b3}.Debug|Any CPU.Build.0 = Debug|Any CPU + {79cf9723-c644-7442-69eb-c5c151c9c0e1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {79cf9723-c644-7442-69eb-c5c151c9c0e1}.Debug|Any CPU.Build.0 = Debug|Any CPU + {207c8737-bff2-8041-a9ea-023da545cd38}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {207c8737-bff2-8041-a9ea-023da545cd38}.Debug|Any CPU.Build.0 = Debug|Any CPU + {cd938261-bfbd-f558-cbc8-ba5c0295a431}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {cd938261-bfbd-f558-cbc8-ba5c0295a431}.Debug|Any CPU.Build.0 = Debug|Any CPU + {8a300f5f-5251-b709-205e-df30786d6848}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {8a300f5f-5251-b709-205e-df30786d6848}.Debug|Any CPU.Build.0 = Debug|Any CPU + {9ca57f9a-b614-5f43-3202-23433e524919}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {9ca57f9a-b614-5f43-3202-23433e524919}.Debug|Any CPU.Build.0 = Debug|Any CPU + {5700e776-3c6b-5d30-7c88-98979020fb76}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {5700e776-3c6b-5d30-7c88-98979020fb76}.Debug|Any CPU.Build.0 = Debug|Any CPU + {9e6fe5d0-882c-a65b-b2af-257fc355bffd}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {9e6fe5d0-882c-a65b-b2af-257fc355bffd}.Debug|Any CPU.Build.0 = Debug|Any CPU + {9bb85942-a19c-9b29-b904-737de6c5fee3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {9bb85942-a19c-9b29-b904-737de6c5fee3}.Debug|Any CPU.Build.0 = Debug|Any CPU + {f6b43d73-93b8-2daf-0d31-8788e79381c0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {f6b43d73-93b8-2daf-0d31-8788e79381c0}.Debug|Any CPU.Build.0 = Debug|Any CPU + {b913b693-5316-e28d-62f5-c41fe4f3e072}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {b913b693-5316-e28d-62f5-c41fe4f3e072}.Debug|Any CPU.Build.0 = Debug|Any CPU + {d2900108-958e-d2d9-fc9e-0896852f84e4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {d2900108-958e-d2d9-fc9e-0896852f84e4}.Debug|Any CPU.Build.0 = Debug|Any CPU + {7dbeeeef-9a7a-9e62-1442-a35b9bad2a6d}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {7dbeeeef-9a7a-9e62-1442-a35b9bad2a6d}.Debug|Any CPU.Build.0 = Debug|Any CPU + {8e3e0f5f-d73b-af4f-5dd0-c2f1d1fbac2f}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {8e3e0f5f-d73b-af4f-5dd0-c2f1d1fbac2f}.Debug|Any CPU.Build.0 = Debug|Any CPU + {39acbc6c-63fd-041f-9e3b-77c9a6c78db2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {39acbc6c-63fd-041f-9e3b-77c9a6c78db2}.Debug|Any CPU.Build.0 = Debug|Any CPU + {87fcd96e-1898-a080-280b-1c03f27a73c0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {87fcd96e-1898-a080-280b-1c03f27a73c0}.Debug|Any CPU.Build.0 = Debug|Any CPU + {46408877-4288-1836-f173-5fc6db61570c}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {46408877-4288-1836-f173-5fc6db61570c}.Debug|Any CPU.Build.0 = Debug|Any CPU + {b2996835-aef4-549d-ffa3-a33650ea1d66}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {b2996835-aef4-549d-ffa3-a33650ea1d66}.Debug|Any CPU.Build.0 = Debug|Any CPU + {8b1c82f6-9fb3-65fb-2f81-a505a30520a7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {8b1c82f6-9fb3-65fb-2f81-a505a30520a7}.Debug|Any CPU.Build.0 = Debug|Any CPU + {e7559aad-8cbb-e043-951c-019b1b9f375a}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {e7559aad-8cbb-e043-951c-019b1b9f375a}.Debug|Any CPU.Build.0 = Debug|Any CPU + {349e63a6-2f61-9675-8363-51bd4636efb2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {349e63a6-2f61-9675-8363-51bd4636efb2}.Debug|Any CPU.Build.0 = Debug|Any CPU + {7f4a82b8-f4d7-9a2f-9e2c-d26f38f16856}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {7f4a82b8-f4d7-9a2f-9e2c-d26f38f16856}.Debug|Any CPU.Build.0 = Debug|Any CPU + {e2d03f5e-39f0-1926-8eb5-3ef7a4a57095}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {e2d03f5e-39f0-1926-8eb5-3ef7a4a57095}.Debug|Any CPU.Build.0 = Debug|Any CPU + {7860e1df-2750-ea79-b6f2-74d6e5a59eb3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {7860e1df-2750-ea79-b6f2-74d6e5a59eb3}.Debug|Any CPU.Build.0 = Debug|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection +EndGlobal diff --git a/Packages/manifest.json b/Packages/manifest.json new file mode 100644 index 0000000..05a7d69 --- /dev/null +++ b/Packages/manifest.json @@ -0,0 +1,51 @@ +{ + "dependencies": { + "com.github-glitchenzo.nugetforunity": "https://github.com/GlitchEnzo/NuGetForUnity.git?path=/src/NuGetForUnity", + "com.unity.ai.navigation": "2.0.12", + "com.unity.collab-proxy": "2.12.4", + "com.unity.ide.rider": "3.0.39", + "com.unity.ide.visualstudio": "2.0.26", + "com.unity.inputsystem": "1.19.0", + "com.unity.multiplayer.center": "1.0.1", + "com.unity.render-pipelines.universal": "17.3.0", + "com.unity.test-framework": "1.6.0", + "com.unity.testtools.codecoverage": "1.3.0", + "com.unity.timeline": "1.8.12", + "com.unity.ugui": "2.0.0", + "com.unity.visualscripting": "1.9.11", + "com.unity.modules.accessibility": "1.0.0", + "com.unity.modules.adaptiveperformance": "1.0.0", + "com.unity.modules.ai": "1.0.0", + "com.unity.modules.androidjni": "1.0.0", + "com.unity.modules.animation": "1.0.0", + "com.unity.modules.assetbundle": "1.0.0", + "com.unity.modules.audio": "1.0.0", + "com.unity.modules.cloth": "1.0.0", + "com.unity.modules.director": "1.0.0", + "com.unity.modules.imageconversion": "1.0.0", + "com.unity.modules.imgui": "1.0.0", + "com.unity.modules.jsonserialize": "1.0.0", + "com.unity.modules.particlesystem": "1.0.0", + "com.unity.modules.physics": "1.0.0", + "com.unity.modules.physics2d": "1.0.0", + "com.unity.modules.screencapture": "1.0.0", + "com.unity.modules.terrain": "1.0.0", + "com.unity.modules.terrainphysics": "1.0.0", + "com.unity.modules.tilemap": "1.0.0", + "com.unity.modules.ui": "1.0.0", + "com.unity.modules.uielements": "1.0.0", + "com.unity.modules.umbra": "1.0.0", + "com.unity.modules.unityanalytics": "1.0.0", + "com.unity.modules.unitywebrequest": "1.0.0", + "com.unity.modules.unitywebrequestassetbundle": "1.0.0", + "com.unity.modules.unitywebrequestaudio": "1.0.0", + "com.unity.modules.unitywebrequesttexture": "1.0.0", + "com.unity.modules.unitywebrequestwww": "1.0.0", + "com.unity.modules.vectorgraphics": "1.0.0", + "com.unity.modules.vehicles": "1.0.0", + "com.unity.modules.video": "1.0.0", + "com.unity.modules.vr": "1.0.0", + "com.unity.modules.wind": "1.0.0", + "com.unity.modules.xr": "1.0.0" + } +} diff --git a/Packages/packages-lock.json b/Packages/packages-lock.json new file mode 100644 index 0000000..ae7e134 --- /dev/null +++ b/Packages/packages-lock.json @@ -0,0 +1,496 @@ +{ + "dependencies": { + "com.github-glitchenzo.nugetforunity": { + "version": "https://github.com/GlitchEnzo/NuGetForUnity.git?path=/src/NuGetForUnity", + "depth": 0, + "source": "git", + "dependencies": {}, + "hash": "acc1c7bc9ea34c33b830e40316fca52553878d29" + }, + "com.unity.ai.navigation": { + "version": "2.0.12", + "depth": 0, + "source": "registry", + "dependencies": { + "com.unity.modules.ai": "1.0.0" + }, + "url": "https://packages.unity.com" + }, + "com.unity.burst": { + "version": "1.8.29", + "depth": 2, + "source": "registry", + "dependencies": { + "com.unity.mathematics": "1.2.1", + "com.unity.modules.jsonserialize": "1.0.0" + }, + "url": "https://packages.unity.com" + }, + "com.unity.collab-proxy": { + "version": "2.12.4", + "depth": 0, + "source": "registry", + "dependencies": {}, + "url": "https://packages.unity.com" + }, + "com.unity.collections": { + "version": "2.6.5", + "depth": 2, + "source": "registry", + "dependencies": { + "com.unity.burst": "1.8.27", + "com.unity.mathematics": "1.3.2", + "com.unity.test-framework": "1.4.6", + "com.unity.nuget.mono-cecil": "1.11.6", + "com.unity.test-framework.performance": "3.0.3" + }, + "url": "https://packages.unity.com" + }, + "com.unity.ext.nunit": { + "version": "2.0.5", + "depth": 1, + "source": "builtin", + "dependencies": {} + }, + "com.unity.ide.rider": { + "version": "3.0.39", + "depth": 0, + "source": "registry", + "dependencies": { + "com.unity.ext.nunit": "1.0.6" + }, + "url": "https://packages.unity.com" + }, + "com.unity.ide.visualstudio": { + "version": "2.0.26", + "depth": 0, + "source": "registry", + "dependencies": { + "com.unity.test-framework": "1.1.33" + }, + "url": "https://packages.unity.com" + }, + "com.unity.inputsystem": { + "version": "1.19.0", + "depth": 0, + "source": "registry", + "dependencies": { + "com.unity.modules.uielements": "1.0.0" + }, + "url": "https://packages.unity.com" + }, + "com.unity.mathematics": { + "version": "1.3.3", + "depth": 2, + "source": "registry", + "dependencies": {}, + "url": "https://packages.unity.com" + }, + "com.unity.multiplayer.center": { + "version": "1.0.1", + "depth": 0, + "source": "builtin", + "dependencies": { + "com.unity.modules.uielements": "1.0.0" + } + }, + "com.unity.nuget.mono-cecil": { + "version": "1.11.6", + "depth": 3, + "source": "registry", + "dependencies": {}, + "url": "https://packages.unity.com" + }, + "com.unity.render-pipelines.core": { + "version": "17.3.0", + "depth": 1, + "source": "builtin", + "dependencies": { + "com.unity.burst": "1.8.14", + "com.unity.mathematics": "1.3.2", + "com.unity.ugui": "2.0.0", + "com.unity.collections": "2.4.3", + "com.unity.modules.physics": "1.0.0", + "com.unity.modules.terrain": "1.0.0", + "com.unity.modules.jsonserialize": "1.0.0" + } + }, + "com.unity.render-pipelines.universal": { + "version": "17.3.0", + "depth": 0, + "source": "builtin", + "dependencies": { + "com.unity.render-pipelines.core": "17.3.0", + "com.unity.shadergraph": "17.3.0", + "com.unity.render-pipelines.universal-config": "17.0.3" + } + }, + "com.unity.render-pipelines.universal-config": { + "version": "17.0.3", + "depth": 1, + "source": "builtin", + "dependencies": { + "com.unity.render-pipelines.core": "17.0.3" + } + }, + "com.unity.searcher": { + "version": "4.9.4", + "depth": 2, + "source": "registry", + "dependencies": {}, + "url": "https://packages.unity.com" + }, + "com.unity.settings-manager": { + "version": "2.1.1", + "depth": 1, + "source": "registry", + "dependencies": {}, + "url": "https://packages.unity.com" + }, + "com.unity.shadergraph": { + "version": "17.3.0", + "depth": 1, + "source": "builtin", + "dependencies": { + "com.unity.render-pipelines.core": "17.3.0", + "com.unity.searcher": "4.9.3" + } + }, + "com.unity.test-framework": { + "version": "1.6.0", + "depth": 0, + "source": "builtin", + "dependencies": { + "com.unity.ext.nunit": "2.0.3", + "com.unity.modules.imgui": "1.0.0", + "com.unity.modules.jsonserialize": "1.0.0" + } + }, + "com.unity.test-framework.performance": { + "version": "3.4.0", + "depth": 3, + "source": "registry", + "dependencies": { + "com.unity.test-framework": "1.1.33", + "com.unity.modules.jsonserialize": "1.0.0" + }, + "url": "https://packages.unity.com" + }, + "com.unity.testtools.codecoverage": { + "version": "1.3.0", + "depth": 0, + "source": "registry", + "dependencies": { + "com.unity.test-framework": "1.4.5", + "com.unity.settings-manager": "2.0.0" + }, + "url": "https://packages.unity.com" + }, + "com.unity.timeline": { + "version": "1.8.12", + "depth": 0, + "source": "registry", + "dependencies": { + "com.unity.modules.audio": "1.0.0", + "com.unity.modules.director": "1.0.0", + "com.unity.modules.animation": "1.0.0", + "com.unity.modules.particlesystem": "1.0.0" + }, + "url": "https://packages.unity.com" + }, + "com.unity.ugui": { + "version": "2.0.0", + "depth": 0, + "source": "builtin", + "dependencies": { + "com.unity.modules.ui": "1.0.0", + "com.unity.modules.imgui": "1.0.0" + } + }, + "com.unity.visualscripting": { + "version": "1.9.11", + "depth": 0, + "source": "registry", + "dependencies": { + "com.unity.ugui": "1.0.0", + "com.unity.modules.jsonserialize": "1.0.0" + }, + "url": "https://packages.unity.com" + }, + "com.unity.modules.accessibility": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": {} + }, + "com.unity.modules.adaptiveperformance": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": { + "com.unity.modules.subsystems": "1.0.0" + } + }, + "com.unity.modules.ai": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": {} + }, + "com.unity.modules.androidjni": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": {} + }, + "com.unity.modules.animation": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": {} + }, + "com.unity.modules.assetbundle": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": {} + }, + "com.unity.modules.audio": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": {} + }, + "com.unity.modules.cloth": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": { + "com.unity.modules.physics": "1.0.0" + } + }, + "com.unity.modules.director": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": { + "com.unity.modules.audio": "1.0.0", + "com.unity.modules.animation": "1.0.0" + } + }, + "com.unity.modules.hierarchycore": { + "version": "1.0.0", + "depth": 1, + "source": "builtin", + "dependencies": {} + }, + "com.unity.modules.imageconversion": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": {} + }, + "com.unity.modules.imgui": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": {} + }, + "com.unity.modules.jsonserialize": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": {} + }, + "com.unity.modules.particlesystem": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": {} + }, + "com.unity.modules.physics": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": {} + }, + "com.unity.modules.physics2d": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": {} + }, + "com.unity.modules.screencapture": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": { + "com.unity.modules.imageconversion": "1.0.0" + } + }, + "com.unity.modules.subsystems": { + "version": "1.0.0", + "depth": 1, + "source": "builtin", + "dependencies": { + "com.unity.modules.jsonserialize": "1.0.0" + } + }, + "com.unity.modules.terrain": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": {} + }, + "com.unity.modules.terrainphysics": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": { + "com.unity.modules.physics": "1.0.0", + "com.unity.modules.terrain": "1.0.0" + } + }, + "com.unity.modules.tilemap": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": { + "com.unity.modules.physics2d": "1.0.0" + } + }, + "com.unity.modules.ui": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": {} + }, + "com.unity.modules.uielements": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": { + "com.unity.modules.ui": "1.0.0", + "com.unity.modules.imgui": "1.0.0", + "com.unity.modules.jsonserialize": "1.0.0", + "com.unity.modules.hierarchycore": "1.0.0", + "com.unity.modules.physics": "1.0.0" + } + }, + "com.unity.modules.umbra": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": {} + }, + "com.unity.modules.unityanalytics": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": { + "com.unity.modules.unitywebrequest": "1.0.0", + "com.unity.modules.jsonserialize": "1.0.0" + } + }, + "com.unity.modules.unitywebrequest": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": {} + }, + "com.unity.modules.unitywebrequestassetbundle": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": { + "com.unity.modules.assetbundle": "1.0.0", + "com.unity.modules.unitywebrequest": "1.0.0" + } + }, + "com.unity.modules.unitywebrequestaudio": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": { + "com.unity.modules.unitywebrequest": "1.0.0", + "com.unity.modules.audio": "1.0.0" + } + }, + "com.unity.modules.unitywebrequesttexture": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": { + "com.unity.modules.unitywebrequest": "1.0.0", + "com.unity.modules.imageconversion": "1.0.0" + } + }, + "com.unity.modules.unitywebrequestwww": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": { + "com.unity.modules.unitywebrequest": "1.0.0", + "com.unity.modules.unitywebrequestassetbundle": "1.0.0", + "com.unity.modules.unitywebrequestaudio": "1.0.0", + "com.unity.modules.audio": "1.0.0", + "com.unity.modules.assetbundle": "1.0.0", + "com.unity.modules.imageconversion": "1.0.0" + } + }, + "com.unity.modules.vectorgraphics": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": { + "com.unity.modules.uielements": "1.0.0", + "com.unity.modules.imageconversion": "1.0.0", + "com.unity.modules.imgui": "1.0.0" + } + }, + "com.unity.modules.vehicles": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": { + "com.unity.modules.physics": "1.0.0" + } + }, + "com.unity.modules.video": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": { + "com.unity.modules.audio": "1.0.0", + "com.unity.modules.ui": "1.0.0", + "com.unity.modules.unitywebrequest": "1.0.0" + } + }, + "com.unity.modules.vr": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": { + "com.unity.modules.jsonserialize": "1.0.0", + "com.unity.modules.physics": "1.0.0", + "com.unity.modules.xr": "1.0.0" + } + }, + "com.unity.modules.wind": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": {} + }, + "com.unity.modules.xr": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": { + "com.unity.modules.physics": "1.0.0", + "com.unity.modules.jsonserialize": "1.0.0", + "com.unity.modules.subsystems": "1.0.0" + } + } + } +} diff --git a/ProjectSettings/AudioManager.asset b/ProjectSettings/AudioManager.asset new file mode 100644 index 0000000..27287fe --- /dev/null +++ b/ProjectSettings/AudioManager.asset @@ -0,0 +1,19 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!11 &1 +AudioManager: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Volume: 1 + Rolloff Scale: 1 + Doppler Factor: 1 + Default Speaker Mode: 2 + m_SampleRate: 0 + m_DSPBufferSize: 1024 + m_VirtualVoiceCount: 512 + m_RealVoiceCount: 32 + m_SpatializerPlugin: + m_AmbisonicDecoderPlugin: + m_DisableAudio: 0 + m_VirtualizeEffects: 1 + m_RequestedDSPBufferSize: 0 diff --git a/ProjectSettings/ClusterInputManager.asset b/ProjectSettings/ClusterInputManager.asset new file mode 100644 index 0000000..e7886b2 --- /dev/null +++ b/ProjectSettings/ClusterInputManager.asset @@ -0,0 +1,6 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!236 &1 +ClusterInputManager: + m_ObjectHideFlags: 0 + m_Inputs: [] diff --git a/ProjectSettings/DynamicsManager.asset b/ProjectSettings/DynamicsManager.asset new file mode 100644 index 0000000..fc90ab9 --- /dev/null +++ b/ProjectSettings/DynamicsManager.asset @@ -0,0 +1,36 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!55 &1 +PhysicsManager: + m_ObjectHideFlags: 0 + serializedVersion: 13 + m_Gravity: {x: 0, y: -9.81, z: 0} + m_DefaultMaterial: {fileID: 0} + m_BounceThreshold: 2 + m_SleepThreshold: 0.005 + m_DefaultContactOffset: 0.01 + m_DefaultSolverIterations: 6 + m_DefaultSolverVelocityIterations: 1 + m_QueriesHitBackfaces: 0 + m_QueriesHitTriggers: 1 + m_EnableAdaptiveForce: 0 + m_ClothInterCollisionDistance: 0.1 + m_ClothInterCollisionStiffness: 0.2 + m_ContactsGeneration: 1 + m_LayerCollisionMatrix: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff + m_AutoSimulation: 1 + m_AutoSyncTransforms: 0 + m_ReuseCollisionCallbacks: 1 + m_ClothInterCollisionSettingsToggle: 0 + m_ClothGravity: {x: 0, y: -9.81, z: 0} + m_ContactPairsMode: 0 + m_BroadphaseType: 0 + m_WorldBounds: + m_Center: {x: 0, y: 0, z: 0} + m_Extent: {x: 250, y: 250, z: 250} + m_WorldSubdivisions: 8 + m_FrictionType: 0 + m_EnableEnhancedDeterminism: 0 + m_EnableUnifiedHeightmaps: 1 + m_SolverType: 0 + m_DefaultMaxAngularSpeed: 50 diff --git a/ProjectSettings/EditorBuildSettings.asset b/ProjectSettings/EditorBuildSettings.asset new file mode 100644 index 0000000..1c963e1 --- /dev/null +++ b/ProjectSettings/EditorBuildSettings.asset @@ -0,0 +1,16 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1045 &1 +EditorBuildSettings: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Scenes: + - enabled: 1 + path: Assets/Scenes/Tests/Test_Empty.unity + guid: 2a463a4fb9ed50f42a2c9685f47b9ce8 + - enabled: 1 + path: Assets/Scenes/Tests/Test_UnitMovement.unity + guid: 69c8208d0afc3d247a5d5e7b2c039fd2 + m_configObjects: + com.unity.input.settings.actions: {fileID: -944628639613478452, guid: 052faaac586de48259a63d0c4782560b, type: 3} + m_UseUCBPForAssetBundles: 0 diff --git a/ProjectSettings/EditorSettings.asset b/ProjectSettings/EditorSettings.asset new file mode 100644 index 0000000..878c4cb --- /dev/null +++ b/ProjectSettings/EditorSettings.asset @@ -0,0 +1,50 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!159 &1 +EditorSettings: + m_ObjectHideFlags: 0 + serializedVersion: 15 + m_SerializationMode: 2 + m_LineEndingsForNewScripts: 0 + m_DefaultBehaviorMode: 0 + m_PrefabRegularEnvironment: {fileID: 0} + m_PrefabUIEnvironment: {fileID: 0} + m_SpritePackerMode: 0 + m_SpritePackerCacheSize: 10 + m_SpritePackerPaddingPower: 1 + m_Bc7TextureCompressor: 0 + m_EtcTextureCompressorBehavior: 1 + m_EtcTextureFastCompressor: 1 + m_EtcTextureNormalCompressor: 2 + m_EtcTextureBestCompressor: 4 + m_ProjectGenerationIncludedExtensions: txt;xml;fnt;cd;asmdef;rsp;asmref + m_ProjectGenerationRootNamespace: + m_EnableTextureStreamingInEditMode: 1 + m_EnableTextureStreamingInPlayMode: 1 + m_EnableEditorAsyncCPUTextureLoading: 0 + m_AsyncShaderCompilation: 1 + m_PrefabModeAllowAutoSave: 1 + m_EnterPlayModeOptionsEnabled: 1 + m_EnterPlayModeOptions: 0 + m_GameObjectNamingDigits: 1 + m_GameObjectNamingScheme: 0 + m_AssetNamingUsesSpace: 1 + m_InspectorUseIMGUIDefaultInspector: 0 + m_UseLegacyProbeSampleCount: 0 + m_SerializeInlineMappingsOnOneLine: 1 + m_DisableCookiesInLightmapper: 0 + m_ShadowmaskStitching: 0 + m_AssetPipelineMode: 1 + m_RefreshImportMode: 0 + m_CacheServerMode: 0 + m_CacheServerEndpoint: + m_CacheServerNamespacePrefix: default + m_CacheServerEnableDownload: 1 + m_CacheServerEnableUpload: 1 + m_CacheServerEnableAuth: 0 + m_CacheServerEnableTls: 0 + m_CacheServerValidationMode: 2 + m_CacheServerDownloadBatchSize: 128 + m_EnableEnlightenBakedGI: 0 + m_ReferencedClipsExactNaming: 1 + m_ForceAssetUnloadAndGCOnSceneLoad: 1 diff --git a/ProjectSettings/GraphicsSettings.asset b/ProjectSettings/GraphicsSettings.asset new file mode 100644 index 0000000..84b2182 --- /dev/null +++ b/ProjectSettings/GraphicsSettings.asset @@ -0,0 +1,69 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!30 &1 +GraphicsSettings: + m_ObjectHideFlags: 0 + serializedVersion: 16 + m_Deferred: + m_Mode: 1 + m_Shader: {fileID: 69, guid: 0000000000000000f000000000000000, type: 0} + m_DeferredReflections: + m_Mode: 1 + m_Shader: {fileID: 74, guid: 0000000000000000f000000000000000, type: 0} + m_ScreenSpaceShadows: + m_Mode: 1 + m_Shader: {fileID: 64, guid: 0000000000000000f000000000000000, type: 0} + m_DepthNormals: + m_Mode: 1 + m_Shader: {fileID: 62, guid: 0000000000000000f000000000000000, type: 0} + m_MotionVectors: + m_Mode: 1 + m_Shader: {fileID: 75, guid: 0000000000000000f000000000000000, type: 0} + m_LightHalo: + m_Mode: 1 + m_Shader: {fileID: 105, guid: 0000000000000000f000000000000000, type: 0} + m_LensFlare: + m_Mode: 1 + m_Shader: {fileID: 102, guid: 0000000000000000f000000000000000, type: 0} + m_VideoShadersIncludeMode: 2 + m_AlwaysIncludedShaders: + - {fileID: 7, guid: 0000000000000000f000000000000000, type: 0} + - {fileID: 15104, guid: 0000000000000000f000000000000000, type: 0} + - {fileID: 15105, guid: 0000000000000000f000000000000000, type: 0} + - {fileID: 15106, guid: 0000000000000000f000000000000000, type: 0} + - {fileID: 10753, guid: 0000000000000000f000000000000000, type: 0} + - {fileID: 10770, guid: 0000000000000000f000000000000000, type: 0} + - {fileID: 10783, guid: 0000000000000000f000000000000000, type: 0} + m_PreloadedShaders: [] + m_PreloadShadersBatchTimeLimit: -1 + m_SpritesDefaultMaterial: {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} + m_CustomRenderPipeline: {fileID: 11400000, guid: 4b83569d67af61e458304325a23e5dfd, type: 2} + m_TransparencySortMode: 0 + m_TransparencySortAxis: {x: 0, y: 0, z: 1} + m_DefaultRenderingPath: 1 + m_DefaultMobileRenderingPath: 1 + m_TierSettings: [] + m_LightmapStripping: 0 + m_FogStripping: 0 + m_InstancingStripping: 0 + m_BrgStripping: 0 + m_LightmapKeepPlain: 1 + m_LightmapKeepDirCombined: 1 + m_LightmapKeepDynamicPlain: 1 + m_LightmapKeepDynamicDirCombined: 1 + m_LightmapKeepShadowMask: 1 + m_LightmapKeepSubtractive: 1 + m_FogKeepLinear: 1 + m_FogKeepExp: 1 + m_FogKeepExp2: 1 + m_AlbedoSwatchInfos: [] + m_RenderPipelineGlobalSettingsMap: + UnityEngine.Rendering.Universal.UniversalRenderPipeline: {fileID: 11400000, guid: 18dc0cd2c080841dea60987a38ce93fa, type: 2} + m_ShaderBuildSettings: + keywordDeclarationOverrides: [] + m_LightsUseLinearIntensity: 1 + m_LightsUseColorTemperature: 1 + m_LogWhenShaderIsCompiled: 0 + m_LightProbeOutsideHullStrategy: 0 + m_CameraRelativeLightCulling: 0 + m_CameraRelativeShadowCulling: 0 diff --git a/ProjectSettings/InputManager.asset b/ProjectSettings/InputManager.asset new file mode 100644 index 0000000..b16147e --- /dev/null +++ b/ProjectSettings/InputManager.asset @@ -0,0 +1,487 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!13 &1 +InputManager: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Axes: + - serializedVersion: 3 + m_Name: Horizontal + descriptiveName: + descriptiveNegativeName: + negativeButton: left + positiveButton: right + altNegativeButton: a + altPositiveButton: d + gravity: 3 + dead: 0.001 + sensitivity: 3 + snap: 1 + invert: 0 + type: 0 + axis: 0 + joyNum: 0 + - serializedVersion: 3 + m_Name: Vertical + descriptiveName: + descriptiveNegativeName: + negativeButton: down + positiveButton: up + altNegativeButton: s + altPositiveButton: w + gravity: 3 + dead: 0.001 + sensitivity: 3 + snap: 1 + invert: 0 + type: 0 + axis: 0 + joyNum: 0 + - serializedVersion: 3 + m_Name: Fire1 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: left ctrl + altNegativeButton: + altPositiveButton: mouse 0 + gravity: 1000 + dead: 0.001 + sensitivity: 1000 + snap: 0 + invert: 0 + type: 0 + axis: 0 + joyNum: 0 + - serializedVersion: 3 + m_Name: Fire2 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: left alt + altNegativeButton: + altPositiveButton: mouse 1 + gravity: 1000 + dead: 0.001 + sensitivity: 1000 + snap: 0 + invert: 0 + type: 0 + axis: 0 + joyNum: 0 + - serializedVersion: 3 + m_Name: Fire3 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: left shift + altNegativeButton: + altPositiveButton: mouse 2 + gravity: 1000 + dead: 0.001 + sensitivity: 1000 + snap: 0 + invert: 0 + type: 0 + axis: 0 + joyNum: 0 + - serializedVersion: 3 + m_Name: Jump + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: space + altNegativeButton: + altPositiveButton: + gravity: 1000 + dead: 0.001 + sensitivity: 1000 + snap: 0 + invert: 0 + type: 0 + axis: 0 + joyNum: 0 + - serializedVersion: 3 + m_Name: Mouse X + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: + altNegativeButton: + altPositiveButton: + gravity: 0 + dead: 0 + sensitivity: 0.1 + snap: 0 + invert: 0 + type: 1 + axis: 0 + joyNum: 0 + - serializedVersion: 3 + m_Name: Mouse Y + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: + altNegativeButton: + altPositiveButton: + gravity: 0 + dead: 0 + sensitivity: 0.1 + snap: 0 + invert: 0 + type: 1 + axis: 1 + joyNum: 0 + - serializedVersion: 3 + m_Name: Mouse ScrollWheel + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: + altNegativeButton: + altPositiveButton: + gravity: 0 + dead: 0 + sensitivity: 0.1 + snap: 0 + invert: 0 + type: 1 + axis: 2 + joyNum: 0 + - serializedVersion: 3 + m_Name: Horizontal + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: + altNegativeButton: + altPositiveButton: + gravity: 0 + dead: 0.19 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 0 + joyNum: 0 + - serializedVersion: 3 + m_Name: Vertical + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: + altNegativeButton: + altPositiveButton: + gravity: 0 + dead: 0.19 + sensitivity: 1 + snap: 0 + invert: 1 + type: 2 + axis: 1 + joyNum: 0 + - serializedVersion: 3 + m_Name: Fire1 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: joystick button 0 + altNegativeButton: + altPositiveButton: + gravity: 1000 + dead: 0.001 + sensitivity: 1000 + snap: 0 + invert: 0 + type: 0 + axis: 0 + joyNum: 0 + - serializedVersion: 3 + m_Name: Fire2 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: joystick button 1 + altNegativeButton: + altPositiveButton: + gravity: 1000 + dead: 0.001 + sensitivity: 1000 + snap: 0 + invert: 0 + type: 0 + axis: 0 + joyNum: 0 + - serializedVersion: 3 + m_Name: Fire3 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: joystick button 2 + altNegativeButton: + altPositiveButton: + gravity: 1000 + dead: 0.001 + sensitivity: 1000 + snap: 0 + invert: 0 + type: 0 + axis: 0 + joyNum: 0 + - serializedVersion: 3 + m_Name: Jump + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: joystick button 3 + altNegativeButton: + altPositiveButton: + gravity: 1000 + dead: 0.001 + sensitivity: 1000 + snap: 0 + invert: 0 + type: 0 + axis: 0 + joyNum: 0 + - serializedVersion: 3 + m_Name: Submit + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: return + altNegativeButton: + altPositiveButton: joystick button 0 + gravity: 1000 + dead: 0.001 + sensitivity: 1000 + snap: 0 + invert: 0 + type: 0 + axis: 0 + joyNum: 0 + - serializedVersion: 3 + m_Name: Submit + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: enter + altNegativeButton: + altPositiveButton: space + gravity: 1000 + dead: 0.001 + sensitivity: 1000 + snap: 0 + invert: 0 + type: 0 + axis: 0 + joyNum: 0 + - serializedVersion: 3 + m_Name: Cancel + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.001 + sensitivity: 1000 + snap: 0 + invert: 0 + type: 0 + axis: 0 + joyNum: 0 + - serializedVersion: 3 + m_Name: Enable Debug Button 1 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: left ctrl + altNegativeButton: + altPositiveButton: joystick button 8 + gravity: 0 + dead: 0 + sensitivity: 0 + snap: 0 + invert: 0 + type: 0 + axis: 0 + joyNum: 0 + - serializedVersion: 3 + m_Name: Enable Debug Button 2 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: backspace + altNegativeButton: + altPositiveButton: joystick button 9 + gravity: 0 + dead: 0 + sensitivity: 0 + snap: 0 + invert: 0 + type: 0 + axis: 0 + joyNum: 0 + - serializedVersion: 3 + m_Name: Debug Reset + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: left alt + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 0 + dead: 0 + sensitivity: 0 + snap: 0 + invert: 0 + type: 0 + axis: 0 + joyNum: 0 + - serializedVersion: 3 + m_Name: Debug Next + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: page down + altNegativeButton: + altPositiveButton: joystick button 5 + gravity: 0 + dead: 0 + sensitivity: 0 + snap: 0 + invert: 0 + type: 0 + axis: 0 + joyNum: 0 + - serializedVersion: 3 + m_Name: Debug Previous + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: page up + altNegativeButton: + altPositiveButton: joystick button 4 + gravity: 0 + dead: 0 + sensitivity: 0 + snap: 0 + invert: 0 + type: 0 + axis: 0 + joyNum: 0 + - serializedVersion: 3 + m_Name: Debug Validate + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: return + altNegativeButton: + altPositiveButton: joystick button 0 + gravity: 0 + dead: 0 + sensitivity: 0 + snap: 0 + invert: 0 + type: 0 + axis: 0 + joyNum: 0 + - serializedVersion: 3 + m_Name: Debug Persistent + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: right shift + altNegativeButton: + altPositiveButton: joystick button 2 + gravity: 0 + dead: 0 + sensitivity: 0 + snap: 0 + invert: 0 + type: 0 + axis: 0 + joyNum: 0 + - serializedVersion: 3 + m_Name: Debug Multiplier + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: left shift + altNegativeButton: + altPositiveButton: joystick button 3 + gravity: 0 + dead: 0 + sensitivity: 0 + snap: 0 + invert: 0 + type: 0 + axis: 0 + joyNum: 0 + - serializedVersion: 3 + m_Name: Debug Horizontal + descriptiveName: + descriptiveNegativeName: + negativeButton: left + positiveButton: right + altNegativeButton: + altPositiveButton: + gravity: 1000 + dead: 0.001 + sensitivity: 1000 + snap: 0 + invert: 0 + type: 0 + axis: 0 + joyNum: 0 + - serializedVersion: 3 + m_Name: Debug Vertical + descriptiveName: + descriptiveNegativeName: + negativeButton: down + positiveButton: up + altNegativeButton: + altPositiveButton: + gravity: 1000 + dead: 0.001 + sensitivity: 1000 + snap: 0 + invert: 0 + type: 0 + axis: 0 + joyNum: 0 + - serializedVersion: 3 + m_Name: Debug Vertical + descriptiveName: + descriptiveNegativeName: + negativeButton: down + positiveButton: up + altNegativeButton: + altPositiveButton: + gravity: 1000 + dead: 0.001 + sensitivity: 1000 + snap: 0 + invert: 0 + type: 2 + axis: 6 + joyNum: 0 + - serializedVersion: 3 + m_Name: Debug Horizontal + descriptiveName: + descriptiveNegativeName: + negativeButton: left + positiveButton: right + altNegativeButton: + altPositiveButton: + gravity: 1000 + dead: 0.001 + sensitivity: 1000 + snap: 0 + invert: 0 + type: 2 + axis: 5 + joyNum: 0 diff --git a/ProjectSettings/MemorySettings.asset b/ProjectSettings/MemorySettings.asset new file mode 100644 index 0000000..5b5face --- /dev/null +++ b/ProjectSettings/MemorySettings.asset @@ -0,0 +1,35 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!387306366 &1 +MemorySettings: + m_ObjectHideFlags: 0 + m_EditorMemorySettings: + m_MainAllocatorBlockSize: -1 + m_ThreadAllocatorBlockSize: -1 + m_MainGfxBlockSize: -1 + m_ThreadGfxBlockSize: -1 + m_CacheBlockSize: -1 + m_TypetreeBlockSize: -1 + m_ProfilerBlockSize: -1 + m_ProfilerEditorBlockSize: -1 + m_BucketAllocatorGranularity: -1 + m_BucketAllocatorBucketsCount: -1 + m_BucketAllocatorBlockSize: -1 + m_BucketAllocatorBlockCount: -1 + m_ProfilerBucketAllocatorGranularity: -1 + m_ProfilerBucketAllocatorBucketsCount: -1 + m_ProfilerBucketAllocatorBlockSize: -1 + m_ProfilerBucketAllocatorBlockCount: -1 + m_TempAllocatorSizeMain: -1 + m_JobTempAllocatorBlockSize: -1 + m_BackgroundJobTempAllocatorBlockSize: -1 + m_JobTempAllocatorReducedBlockSize: -1 + m_TempAllocatorSizeGIBakingWorker: -1 + m_TempAllocatorSizeNavMeshWorker: -1 + m_TempAllocatorSizeAudioWorker: -1 + m_TempAllocatorSizeCloudWorker: -1 + m_TempAllocatorSizeGfx: -1 + m_TempAllocatorSizeJobWorker: -1 + m_TempAllocatorSizeBackgroundWorker: -1 + m_TempAllocatorSizePreloadManager: -1 + m_PlatformMemorySettings: {} diff --git a/ProjectSettings/MultiplayerManager.asset b/ProjectSettings/MultiplayerManager.asset new file mode 100644 index 0000000..2a93664 --- /dev/null +++ b/ProjectSettings/MultiplayerManager.asset @@ -0,0 +1,7 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!655991488 &1 +MultiplayerManager: + m_ObjectHideFlags: 0 + m_EnableMultiplayerRoles: 0 + m_StrippingTypes: {} diff --git a/ProjectSettings/NavMeshAreas.asset b/ProjectSettings/NavMeshAreas.asset new file mode 100644 index 0000000..3b0b7c3 --- /dev/null +++ b/ProjectSettings/NavMeshAreas.asset @@ -0,0 +1,91 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!126 &1 +NavMeshProjectSettings: + m_ObjectHideFlags: 0 + serializedVersion: 2 + areas: + - name: Walkable + cost: 1 + - name: Not Walkable + cost: 1 + - name: Jump + cost: 2 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + m_LastAgentTypeID: -887442657 + m_Settings: + - serializedVersion: 2 + agentTypeID: 0 + agentRadius: 0.5 + agentHeight: 2 + agentSlope: 45 + agentClimb: 0.75 + ledgeDropHeight: 0 + maxJumpAcrossDistance: 0 + minRegionArea: 2 + manualCellSize: 0 + cellSize: 0.16666667 + manualTileSize: 0 + tileSize: 256 + accuratePlacement: 0 + debug: + m_Flags: 0 + m_SettingNames: + - Humanoid diff --git a/ProjectSettings/PackageManagerSettings.asset b/ProjectSettings/PackageManagerSettings.asset new file mode 100644 index 0000000..be4a797 --- /dev/null +++ b/ProjectSettings/PackageManagerSettings.asset @@ -0,0 +1,43 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &1 +MonoBehaviour: + m_ObjectHideFlags: 61 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 13964, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_EnablePreviewPackages: 0 + m_EnablePackageDependencies: 0 + m_AdvancedSettingsExpanded: 1 + m_ScopedRegistriesSettingsExpanded: 1 + oneTimeWarningShown: 0 + m_Registries: + - m_Id: main + m_Name: + m_Url: https://packages.unity.com + m_Scopes: [] + m_IsDefault: 1 + m_Capabilities: 7 + m_UserSelectedRegistryName: + m_UserAddingNewScopedRegistry: 0 + m_RegistryInfoDraft: + m_ErrorMessage: + m_Original: + m_Id: + m_Name: + m_Url: + m_Scopes: [] + m_IsDefault: 0 + m_Capabilities: 0 + m_Modified: 0 + m_Name: + m_Url: + m_Scopes: + - + m_SelectedScopeIndex: 0 diff --git a/ProjectSettings/Packages/com.unity.testtools.codecoverage/Settings.json b/ProjectSettings/Packages/com.unity.testtools.codecoverage/Settings.json new file mode 100644 index 0000000..ecc3986 --- /dev/null +++ b/ProjectSettings/Packages/com.unity.testtools.codecoverage/Settings.json @@ -0,0 +1,46 @@ +{ + "m_Dictionary": { + "m_DictionaryValues": [ + { + "type": "System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089", + "key": "IncludeAssemblies", + "value": "{\"m_Value\":\"BracerLib,BracerLib.Editor,BracerLib.Tests\"}" + }, + { + "type": "System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089", + "key": "Path", + "value": "{\"m_Value\":\"{ProjectPath}/CodeCoverage\"}" + }, + { + "type": "System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089", + "key": "HistoryPath", + "value": "{\"m_Value\":\"{ProjectPath}/CodeCoverage\"}" + }, + { + "type": "System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089", + "key": "PathsToInclude", + "value": "{\"m_Value\":\"\"}" + }, + { + "type": "System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089", + "key": "PathsToExclude", + "value": "{\"m_Value\":\"{ProjectPath}/Assets/Scripts/Tests/**\"}" + }, + { + "type": "System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089", + "key": "EnableCodeCoverage", + "value": "{\"m_Value\":true}" + }, + { + "type": "System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089", + "key": "OpenReportWhenGenerated", + "value": "{\"m_Value\":false}" + }, + { + "type": "System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089", + "key": "GenerateAdditionalMetrics", + "value": "{\"m_Value\":true}" + } + ] + } +} \ No newline at end of file diff --git a/ProjectSettings/Physics2DSettings.asset b/ProjectSettings/Physics2DSettings.asset new file mode 100644 index 0000000..6c5cf8a --- /dev/null +++ b/ProjectSettings/Physics2DSettings.asset @@ -0,0 +1,56 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!19 &1 +Physics2DSettings: + m_ObjectHideFlags: 0 + serializedVersion: 4 + m_Gravity: {x: 0, y: -9.81} + m_DefaultMaterial: {fileID: 0} + m_VelocityIterations: 8 + m_PositionIterations: 3 + m_VelocityThreshold: 1 + m_MaxLinearCorrection: 0.2 + m_MaxAngularCorrection: 8 + m_MaxTranslationSpeed: 100 + m_MaxRotationSpeed: 360 + m_BaumgarteScale: 0.2 + m_BaumgarteTimeOfImpactScale: 0.75 + m_TimeToSleep: 0.5 + m_LinearSleepTolerance: 0.01 + m_AngularSleepTolerance: 2 + m_DefaultContactOffset: 0.01 + m_JobOptions: + serializedVersion: 2 + useMultithreading: 0 + useConsistencySorting: 0 + m_InterpolationPosesPerJob: 100 + m_NewContactsPerJob: 30 + m_CollideContactsPerJob: 100 + m_ClearFlagsPerJob: 200 + m_ClearBodyForcesPerJob: 200 + m_SyncDiscreteFixturesPerJob: 50 + m_SyncContinuousFixturesPerJob: 50 + m_FindNearestContactsPerJob: 100 + m_UpdateTriggerContactsPerJob: 100 + m_IslandSolverCostThreshold: 100 + m_IslandSolverBodyCostScale: 1 + m_IslandSolverContactCostScale: 10 + m_IslandSolverJointCostScale: 10 + m_IslandSolverBodiesPerJob: 50 + m_IslandSolverContactsPerJob: 50 + m_AutoSimulation: 1 + m_QueriesHitTriggers: 1 + m_QueriesStartInColliders: 1 + m_CallbacksOnDisable: 1 + m_ReuseCollisionCallbacks: 0 + m_AutoSyncTransforms: 0 + m_AlwaysShowColliders: 0 + m_ShowColliderSleep: 1 + m_ShowColliderContacts: 0 + m_ShowColliderAABB: 0 + m_ContactArrowScale: 0.2 + m_ColliderAwakeColor: {r: 0.5686275, g: 0.95686275, b: 0.54509807, a: 0.7529412} + m_ColliderAsleepColor: {r: 0.5686275, g: 0.95686275, b: 0.54509807, a: 0.36078432} + m_ColliderContactColor: {r: 1, g: 0, b: 1, a: 0.6862745} + m_ColliderAABBColor: {r: 1, g: 1, b: 0, a: 0.2509804} + m_LayerCollisionMatrix: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff diff --git a/ProjectSettings/PresetManager.asset b/ProjectSettings/PresetManager.asset new file mode 100644 index 0000000..67a94da --- /dev/null +++ b/ProjectSettings/PresetManager.asset @@ -0,0 +1,7 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1386491679 &1 +PresetManager: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_DefaultPresets: {} diff --git a/ProjectSettings/ProjectSettings.asset b/ProjectSettings/ProjectSettings.asset new file mode 100644 index 0000000..c913562 --- /dev/null +++ b/ProjectSettings/ProjectSettings.asset @@ -0,0 +1,943 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!129 &1 +PlayerSettings: + m_ObjectHideFlags: 0 + serializedVersion: 28 + productGUID: da363db4bce9f554a92085f21f679bf8 + AndroidProfiler: 0 + AndroidFilterTouchesWhenObscured: 0 + AndroidEnableSustainedPerformanceMode: 0 + defaultScreenOrientation: 4 + targetDevice: 2 + useOnDemandResources: 0 + accelerometerFrequency: 60 + companyName: DefaultCompany + productName: BracerLibTest + defaultCursor: {fileID: 0} + cursorHotspot: {x: 0, y: 0} + m_SplashScreenBackgroundColor: {r: 0.13725491, g: 0.12156863, b: 0.1254902, a: 1} + m_ShowUnitySplashScreen: 1 + m_ShowUnitySplashLogo: 1 + m_SplashScreenOverlayOpacity: 1 + m_SplashScreenAnimation: 1 + m_SplashScreenLogoStyle: 1 + m_SplashScreenDrawMode: 0 + m_SplashScreenBackgroundAnimationZoom: 1 + m_SplashScreenLogoAnimationZoom: 1 + m_SplashScreenBackgroundLandscapeAspect: 1 + m_SplashScreenBackgroundPortraitAspect: 1 + m_SplashScreenBackgroundLandscapeUvs: + serializedVersion: 2 + x: 0 + y: 0 + width: 1 + height: 1 + m_SplashScreenBackgroundPortraitUvs: + serializedVersion: 2 + x: 0 + y: 0 + width: 1 + height: 1 + m_SplashScreenLogos: [] + m_VirtualRealitySplashScreen: {fileID: 0} + m_HolographicTrackingLossScreen: {fileID: 0} + defaultScreenWidth: 1024 + defaultScreenHeight: 768 + defaultScreenWidthWeb: 960 + defaultScreenHeightWeb: 600 + m_StereoRenderingPath: 0 + m_ActiveColorSpace: 1 + unsupportedMSAAFallback: 0 + m_SpriteBatchMaxVertexCount: 65535 + m_SpriteBatchVertexThreshold: 300 + m_MTRendering: 1 + mipStripping: 0 + numberOfMipsStripped: 0 + numberOfMipsStrippedPerMipmapLimitGroup: {} + m_StackTraceTypes: 010000000100000001000000010000000100000001000000 + iosShowActivityIndicatorOnLoading: -1 + androidShowActivityIndicatorOnLoading: -1 + iosUseCustomAppBackgroundBehavior: 0 + allowedAutorotateToPortrait: 1 + allowedAutorotateToPortraitUpsideDown: 1 + allowedAutorotateToLandscapeRight: 1 + allowedAutorotateToLandscapeLeft: 1 + useOSAutorotation: 1 + use32BitDisplayBuffer: 1 + preserveFramebufferAlpha: 0 + disableDepthAndStencilBuffers: 0 + androidStartInFullscreen: 1 + androidRenderOutsideSafeArea: 1 + androidUseSwappy: 0 + androidDisplayOptions: 1 + androidBlitType: 0 + androidResizeableActivity: 1 + androidDefaultWindowWidth: 1920 + androidDefaultWindowHeight: 1080 + androidMinimumWindowWidth: 400 + androidMinimumWindowHeight: 300 + androidFullscreenMode: 1 + androidAutoRotationBehavior: 1 + androidPredictiveBackSupport: 1 + androidApplicationEntry: 2 + defaultIsNativeResolution: 1 + macRetinaSupport: 1 + runInBackground: 0 + muteOtherAudioSources: 0 + Prepare IOS For Recording: 0 + Force IOS Speakers When Recording: 0 + audioSpatialExperience: 0 + deferSystemGesturesMode: 0 + hideHomeButton: 0 + submitAnalytics: 1 + usePlayerLog: 1 + dedicatedServerOptimizations: 1 + bakeCollisionMeshes: 0 + forceSingleInstance: 0 + useFlipModelSwapchain: 1 + resizableWindow: 0 + useMacAppStoreValidation: 0 + macAppStoreCategory: public.app-category.games + gpuSkinning: 1 + meshDeformation: 2 + xboxPIXTextureCapture: 0 + xboxEnableAvatar: 0 + xboxEnableKinect: 0 + xboxEnableKinectAutoTracking: 0 + xboxEnableFitness: 0 + visibleInBackground: 1 + allowFullscreenSwitch: 1 + fullscreenMode: 1 + xboxSpeechDB: 0 + xboxEnableHeadOrientation: 0 + xboxEnableGuest: 0 + xboxEnablePIXSampling: 0 + metalFramebufferOnly: 0 + metalUseMetalDisplayLink: 0 + xboxOneResolution: 0 + xboxOneSResolution: 0 + xboxOneXResolution: 3 + xboxOneMonoLoggingLevel: 0 + xboxOneLoggingLevel: 1 + xboxOneDisableEsram: 0 + xboxOneEnableTypeOptimization: 0 + xboxOnePresentImmediateThreshold: 0 + switchQueueCommandMemory: 1048576 + switchQueueControlMemory: 16384 + switchQueueComputeMemory: 262144 + switchNVNShaderPoolsGranularity: 33554432 + switchNVNDefaultPoolsGranularity: 16777216 + switchNVNOtherPoolsGranularity: 16777216 + switchGpuScratchPoolGranularity: 2097152 + switchAllowGpuScratchShrinking: 0 + switchNVNMaxPublicTextureIDCount: 0 + switchNVNMaxPublicSamplerIDCount: 0 + switchMaxWorkerMultiple: 8 + switchNVNGraphicsFirmwareMemory: 32 + switchGraphicsJobsSyncAfterKick: 1 + vulkanNumSwapchainBuffers: 3 + vulkanEnableSetSRGBWrite: 0 + vulkanEnablePreTransform: 1 + vulkanEnableLateAcquireNextImage: 0 + vulkanEnableCommandBufferRecycling: 1 + loadStoreDebugModeEnabled: 0 + visionOSBundleVersion: 1.0 + tvOSBundleVersion: 1.0 + bundleVersion: 0.1.0 + preloadedAssets: [] + metroInputSource: 0 + wsaTransparentSwapchain: 0 + m_HolographicPauseOnTrackingLoss: 1 + xboxOneDisableKinectGpuReservation: 1 + xboxOneEnable7thCore: 1 + vrSettings: + enable360StereoCapture: 0 + isWsaHolographicRemotingEnabled: 0 + enableFrameTimingStats: 0 + enableOpenGLProfilerGPURecorders: 1 + allowHDRDisplaySupport: 0 + useHDRDisplay: 0 + hdrBitDepth: 0 + m_ColorGamuts: 00000000 + targetPixelDensity: 30 + resolutionScalingMode: 0 + resetResolutionOnWindowResize: 0 + androidSupportedAspectRatio: 1 + androidMaxAspectRatio: 2.4 + androidMinAspectRatio: 1 + applicationIdentifier: + Android: com.UnityTechnologies.com.unity.template.urpblank + Standalone: com.Unity-Technologies.com.unity.template.urp-blank + iPhone: com.Unity-Technologies.com.unity.template.urp-blank + buildNumber: + Standalone: 0 + VisionOS: 0 + iPhone: 0 + tvOS: 0 + overrideDefaultApplicationIdentifier: 1 + AndroidBundleVersionCode: 1 + AndroidMinSdkVersion: 25 + AndroidTargetSdkVersion: 0 + AndroidPreferredInstallLocation: 1 + AndroidPreferredDataLocation: 1 + aotOptions: + stripEngineCode: 1 + iPhoneStrippingLevel: 0 + iPhoneScriptCallOptimization: 0 + ForceInternetPermission: 0 + ForceSDCardPermission: 0 + CreateWallpaper: 0 + androidSplitApplicationBinary: 0 + keepLoadedShadersAlive: 0 + StripUnusedMeshComponents: 0 + strictShaderVariantMatching: 0 + VertexChannelCompressionMask: 4054 + iPhoneSdkVersion: 988 + iOSSimulatorArchitecture: 0 + iOSTargetOSVersionString: 15.0 + tvOSSdkVersion: 0 + tvOSSimulatorArchitecture: 0 + tvOSRequireExtendedGameController: 0 + tvOSTargetOSVersionString: 15.0 + VisionOSSdkVersion: 0 + VisionOSTargetOSVersionString: 1.0 + uIPrerenderedIcon: 0 + uIRequiresPersistentWiFi: 0 + uIRequiresFullScreen: 1 + uIStatusBarHidden: 1 + uIExitOnSuspend: 0 + uIStatusBarStyle: 0 + appleTVSplashScreen: {fileID: 0} + appleTVSplashScreen2x: {fileID: 0} + tvOSSmallIconLayers: [] + tvOSSmallIconLayers2x: [] + tvOSLargeIconLayers: [] + tvOSLargeIconLayers2x: [] + tvOSTopShelfImageLayers: [] + tvOSTopShelfImageLayers2x: [] + tvOSTopShelfImageWideLayers: [] + tvOSTopShelfImageWideLayers2x: [] + iOSLaunchScreenType: 0 + iOSLaunchScreenPortrait: {fileID: 0} + iOSLaunchScreenLandscape: {fileID: 0} + iOSLaunchScreenBackgroundColor: + serializedVersion: 2 + rgba: 0 + iOSLaunchScreenFillPct: 100 + iOSLaunchScreenSize: 100 + iOSLaunchScreeniPadType: 0 + iOSLaunchScreeniPadImage: {fileID: 0} + iOSLaunchScreeniPadBackgroundColor: + serializedVersion: 2 + rgba: 0 + iOSLaunchScreeniPadFillPct: 100 + iOSLaunchScreeniPadSize: 100 + iOSLaunchScreenCustomStoryboardPath: + iOSLaunchScreeniPadCustomStoryboardPath: + iOSDeviceRequirements: [] + iOSURLSchemes: [] + macOSURLSchemes: [] + iOSBackgroundModes: 0 + iOSMetalForceHardShadows: 0 + metalEditorSupport: 1 + metalAPIValidation: 1 + metalCompileShaderBinary: 0 + iOSRenderExtraFrameOnPause: 0 + iosCopyPluginsCodeInsteadOfSymlink: 0 + appleDeveloperTeamID: + iOSManualSigningProvisioningProfileID: + tvOSManualSigningProvisioningProfileID: + VisionOSManualSigningProvisioningProfileID: + iOSManualSigningProvisioningProfileType: 0 + tvOSManualSigningProvisioningProfileType: 0 + VisionOSManualSigningProvisioningProfileType: 0 + appleEnableAutomaticSigning: 0 + iOSRequireARKit: 0 + iOSAutomaticallyDetectAndAddCapabilities: 1 + appleEnableProMotion: 0 + shaderPrecisionModel: 0 + clonedFromGUID: 3c72c65a16f0acb438eed22b8b16c24a + templatePackageId: com.unity.template.urp-blank@17.0.14 + templateDefaultScene: Assets/Scenes/SampleScene.unity + useCustomMainManifest: 0 + useCustomLauncherManifest: 0 + useCustomMainGradleTemplate: 0 + useCustomLauncherGradleManifest: 0 + useCustomBaseGradleTemplate: 0 + useCustomGradlePropertiesTemplate: 0 + useCustomGradleSettingsTemplate: 0 + useCustomProguardFile: 0 + AndroidTargetArchitectures: 2 + AndroidAllowedArchitectures: -13 + AndroidSplashScreenScale: 0 + androidSplashScreen: {fileID: 0} + AndroidKeystoreName: + AndroidKeyaliasName: + AndroidEnableArmv9SecurityFeatures: 0 + AndroidEnableArm64MTE: 0 + AndroidBuildApkPerCpuArchitecture: 0 + AndroidTVCompatibility: 0 + AndroidIsGame: 1 + androidAppCategory: 3 + useAndroidAppCategory: 1 + androidAppCategoryOther: + AndroidEnableTango: 0 + androidEnableBanner: 1 + androidUseLowAccuracyLocation: 0 + androidUseCustomKeystore: 0 + m_AndroidBanners: + - width: 320 + height: 180 + banner: {fileID: 0} + androidGamepadSupportLevel: 0 + AndroidMinifyRelease: 0 + AndroidMinifyDebug: 0 + AndroidValidateAppBundleSize: 1 + AndroidAppBundleSizeToValidate: 150 + AndroidReportGooglePlayAppDependencies: 1 + androidSymbolsSizeThreshold: 800 + m_BuildTargetIcons: [] + m_BuildTargetPlatformIcons: + - m_BuildTarget: iPhone + m_Icons: + - m_Textures: [] + m_Width: 180 + m_Height: 180 + m_Kind: 0 + m_SubKind: iPhone + - m_Textures: [] + m_Width: 120 + m_Height: 120 + m_Kind: 0 + m_SubKind: iPhone + - m_Textures: [] + m_Width: 167 + m_Height: 167 + m_Kind: 0 + m_SubKind: iPad + - m_Textures: [] + m_Width: 152 + m_Height: 152 + m_Kind: 0 + m_SubKind: iPad + - m_Textures: [] + m_Width: 76 + m_Height: 76 + m_Kind: 0 + m_SubKind: iPad + - m_Textures: [] + m_Width: 120 + m_Height: 120 + m_Kind: 3 + m_SubKind: iPhone + - m_Textures: [] + m_Width: 80 + m_Height: 80 + m_Kind: 3 + m_SubKind: iPhone + - m_Textures: [] + m_Width: 80 + m_Height: 80 + m_Kind: 3 + m_SubKind: iPad + - m_Textures: [] + m_Width: 40 + m_Height: 40 + m_Kind: 3 + m_SubKind: iPad + - m_Textures: [] + m_Width: 87 + m_Height: 87 + m_Kind: 1 + m_SubKind: iPhone + - m_Textures: [] + m_Width: 58 + m_Height: 58 + m_Kind: 1 + m_SubKind: iPhone + - m_Textures: [] + m_Width: 29 + m_Height: 29 + m_Kind: 1 + m_SubKind: iPhone + - m_Textures: [] + m_Width: 58 + m_Height: 58 + m_Kind: 1 + m_SubKind: iPad + - m_Textures: [] + m_Width: 29 + m_Height: 29 + m_Kind: 1 + m_SubKind: iPad + - m_Textures: [] + m_Width: 60 + m_Height: 60 + m_Kind: 2 + m_SubKind: iPhone + - m_Textures: [] + m_Width: 40 + m_Height: 40 + m_Kind: 2 + m_SubKind: iPhone + - m_Textures: [] + m_Width: 40 + m_Height: 40 + m_Kind: 2 + m_SubKind: iPad + - m_Textures: [] + m_Width: 20 + m_Height: 20 + m_Kind: 2 + m_SubKind: iPad + - m_Textures: [] + m_Width: 1024 + m_Height: 1024 + m_Kind: 4 + m_SubKind: App Store + - m_BuildTarget: Android + m_Icons: + - m_Textures: [] + m_Width: 432 + m_Height: 432 + m_Kind: 2 + m_SubKind: + - m_Textures: [] + m_Width: 324 + m_Height: 324 + m_Kind: 2 + m_SubKind: + - m_Textures: [] + m_Width: 216 + m_Height: 216 + m_Kind: 2 + m_SubKind: + - m_Textures: [] + m_Width: 162 + m_Height: 162 + m_Kind: 2 + m_SubKind: + - m_Textures: [] + m_Width: 108 + m_Height: 108 + m_Kind: 2 + m_SubKind: + - m_Textures: [] + m_Width: 81 + m_Height: 81 + m_Kind: 2 + m_SubKind: + - m_Textures: [] + m_Width: 192 + m_Height: 192 + m_Kind: 1 + m_SubKind: + - m_Textures: [] + m_Width: 144 + m_Height: 144 + m_Kind: 1 + m_SubKind: + - m_Textures: [] + m_Width: 96 + m_Height: 96 + m_Kind: 1 + m_SubKind: + - m_Textures: [] + m_Width: 72 + m_Height: 72 + m_Kind: 1 + m_SubKind: + - m_Textures: [] + m_Width: 48 + m_Height: 48 + m_Kind: 1 + m_SubKind: + - m_Textures: [] + m_Width: 36 + m_Height: 36 + m_Kind: 1 + m_SubKind: + - m_Textures: [] + m_Width: 192 + m_Height: 192 + m_Kind: 0 + m_SubKind: + - m_Textures: [] + m_Width: 144 + m_Height: 144 + m_Kind: 0 + m_SubKind: + - m_Textures: [] + m_Width: 96 + m_Height: 96 + m_Kind: 0 + m_SubKind: + - m_Textures: [] + m_Width: 72 + m_Height: 72 + m_Kind: 0 + m_SubKind: + - m_Textures: [] + m_Width: 48 + m_Height: 48 + m_Kind: 0 + m_SubKind: + - m_Textures: [] + m_Width: 36 + m_Height: 36 + m_Kind: 0 + m_SubKind: + - m_BuildTarget: tvOS + m_Icons: + - m_Textures: [] + m_Width: 1280 + m_Height: 768 + m_Kind: 0 + m_SubKind: + - m_Textures: [] + m_Width: 800 + m_Height: 480 + m_Kind: 0 + m_SubKind: + - m_Textures: [] + m_Width: 400 + m_Height: 240 + m_Kind: 0 + m_SubKind: + - m_Textures: [] + m_Width: 4640 + m_Height: 1440 + m_Kind: 1 + m_SubKind: + - m_Textures: [] + m_Width: 2320 + m_Height: 720 + m_Kind: 1 + m_SubKind: + - m_Textures: [] + m_Width: 3840 + m_Height: 1440 + m_Kind: 1 + m_SubKind: + - m_Textures: [] + m_Width: 1920 + m_Height: 720 + m_Kind: 1 + m_SubKind: + m_BuildTargetBatching: [] + m_BuildTargetShaderSettings: [] + m_BuildTargetGraphicsJobs: [] + m_BuildTargetGraphicsJobMode: [] + m_BuildTargetGraphicsAPIs: + - m_BuildTarget: iOSSupport + m_APIs: 10000000 + m_Automatic: 1 + - m_BuildTarget: AndroidPlayer + m_APIs: 150000000b000000 + m_Automatic: 0 + m_BuildTargetVRSettings: [] + m_DefaultShaderChunkSizeInMB: 16 + m_DefaultShaderChunkCount: 0 + openGLRequireES31: 0 + openGLRequireES31AEP: 0 + openGLRequireES32: 0 + m_TemplateCustomTags: {} + mobileMTRendering: + Android: 1 + iPhone: 1 + tvOS: 1 + m_BuildTargetGroupLightmapEncodingQuality: + - serializedVersion: 2 + m_BuildTarget: Android + m_EncodingQuality: 1 + m_BuildTargetGroupHDRCubemapEncodingQuality: [] + m_BuildTargetGroupLightmapSettings: [] + m_BuildTargetGroupLoadStoreDebugModeSettings: [] + m_BuildTargetNormalMapEncoding: + - m_BuildTarget: Android + m_Encoding: 1 + m_BuildTargetDefaultTextureCompressionFormat: + - serializedVersion: 3 + m_BuildTarget: Android + m_Formats: 03000000 + playModeTestRunnerEnabled: 0 + runPlayModeTestAsEditModeTest: 0 + actionOnDotNetUnhandledException: 1 + editorGfxJobOverride: 1 + enableInternalProfiler: 0 + logObjCUncaughtExceptions: 1 + enableCrashReportAPI: 0 + cameraUsageDescription: + locationUsageDescription: + microphoneUsageDescription: + bluetoothUsageDescription: + macOSTargetOSVersion: 12.0 + switchNMETAOverride: + switchNetLibKey: + switchSocketMemoryPoolSize: 6144 + switchSocketAllocatorPoolSize: 128 + switchSocketConcurrencyLimit: 14 + switchScreenResolutionBehavior: 2 + switchUseCPUProfiler: 0 + switchEnableFileSystemTrace: 0 + switchLTOSetting: 0 + switchApplicationID: 0x01004b9000490000 + switchNSODependencies: + switchCompilerFlags: + switchTitleNames_0: + switchTitleNames_1: + switchTitleNames_2: + switchTitleNames_3: + switchTitleNames_4: + switchTitleNames_5: + switchTitleNames_6: + switchTitleNames_7: + switchTitleNames_8: + switchTitleNames_9: + switchTitleNames_10: + switchTitleNames_11: + switchTitleNames_12: + switchTitleNames_13: + switchTitleNames_14: + switchTitleNames_15: + switchPublisherNames_0: + switchPublisherNames_1: + switchPublisherNames_2: + switchPublisherNames_3: + switchPublisherNames_4: + switchPublisherNames_5: + switchPublisherNames_6: + switchPublisherNames_7: + switchPublisherNames_8: + switchPublisherNames_9: + switchPublisherNames_10: + switchPublisherNames_11: + switchPublisherNames_12: + switchPublisherNames_13: + switchPublisherNames_14: + switchPublisherNames_15: + switchIcons_0: {fileID: 0} + switchIcons_1: {fileID: 0} + switchIcons_2: {fileID: 0} + switchIcons_3: {fileID: 0} + switchIcons_4: {fileID: 0} + switchIcons_5: {fileID: 0} + switchIcons_6: {fileID: 0} + switchIcons_7: {fileID: 0} + switchIcons_8: {fileID: 0} + switchIcons_9: {fileID: 0} + switchIcons_10: {fileID: 0} + switchIcons_11: {fileID: 0} + switchIcons_12: {fileID: 0} + switchIcons_13: {fileID: 0} + switchIcons_14: {fileID: 0} + switchIcons_15: {fileID: 0} + switchSmallIcons_0: {fileID: 0} + switchSmallIcons_1: {fileID: 0} + switchSmallIcons_2: {fileID: 0} + switchSmallIcons_3: {fileID: 0} + switchSmallIcons_4: {fileID: 0} + switchSmallIcons_5: {fileID: 0} + switchSmallIcons_6: {fileID: 0} + switchSmallIcons_7: {fileID: 0} + switchSmallIcons_8: {fileID: 0} + switchSmallIcons_9: {fileID: 0} + switchSmallIcons_10: {fileID: 0} + switchSmallIcons_11: {fileID: 0} + switchSmallIcons_12: {fileID: 0} + switchSmallIcons_13: {fileID: 0} + switchSmallIcons_14: {fileID: 0} + switchSmallIcons_15: {fileID: 0} + switchManualHTML: + switchAccessibleURLs: + switchLegalInformation: + switchMainThreadStackSize: 1048576 + switchPresenceGroupId: + switchLogoHandling: 0 + switchReleaseVersion: 0 + switchDisplayVersion: 1.0.0 + switchStartupUserAccount: 0 + switchSupportedLanguagesMask: 0 + switchLogoType: 0 + switchApplicationErrorCodeCategory: + switchUserAccountSaveDataSize: 0 + switchUserAccountSaveDataJournalSize: 0 + switchApplicationAttribute: 0 + switchCardSpecSize: -1 + switchCardSpecClock: -1 + switchRatingsMask: 0 + switchRatingsInt_0: 0 + switchRatingsInt_1: 0 + switchRatingsInt_2: 0 + switchRatingsInt_3: 0 + switchRatingsInt_4: 0 + switchRatingsInt_5: 0 + switchRatingsInt_6: 0 + switchRatingsInt_7: 0 + switchRatingsInt_8: 0 + switchRatingsInt_9: 0 + switchRatingsInt_10: 0 + switchRatingsInt_11: 0 + switchRatingsInt_12: 0 + switchLocalCommunicationIds_0: + switchLocalCommunicationIds_1: + switchLocalCommunicationIds_2: + switchLocalCommunicationIds_3: + switchLocalCommunicationIds_4: + switchLocalCommunicationIds_5: + switchLocalCommunicationIds_6: + switchLocalCommunicationIds_7: + switchParentalControl: 0 + switchAllowsScreenshot: 1 + switchAllowsVideoCapturing: 1 + switchAllowsRuntimeAddOnContentInstall: 0 + switchDataLossConfirmation: 0 + switchUserAccountLockEnabled: 0 + switchSystemResourceMemory: 16777216 + switchSupportedNpadStyles: 22 + switchNativeFsCacheSize: 32 + switchIsHoldTypeHorizontal: 0 + switchSupportedNpadCount: 8 + switchEnableTouchScreen: 1 + switchSocketConfigEnabled: 0 + switchTcpInitialSendBufferSize: 32 + switchTcpInitialReceiveBufferSize: 64 + switchTcpAutoSendBufferSizeMax: 256 + switchTcpAutoReceiveBufferSizeMax: 256 + switchUdpSendBufferSize: 9 + switchUdpReceiveBufferSize: 42 + switchSocketBufferEfficiency: 4 + switchSocketInitializeEnabled: 1 + switchNetworkInterfaceManagerInitializeEnabled: 1 + switchDisableHTCSPlayerConnection: 0 + switchUseNewStyleFilepaths: 0 + switchUseLegacyFmodPriorities: 0 + switchUseMicroSleepForYield: 1 + switchEnableRamDiskSupport: 0 + switchMicroSleepForYieldTime: 25 + switchRamDiskSpaceSize: 12 + switchUpgradedPlayerSettingsToNMETA: 0 + ps4NPAgeRating: 12 + ps4NPTitleSecret: + ps4NPTrophyPackPath: + ps4ParentalLevel: 11 + ps4ContentID: ED1633-NPXX51362_00-0000000000000000 + ps4Category: 0 + ps4MasterVersion: 01.00 + ps4AppVersion: 01.00 + ps4AppType: 0 + ps4ParamSfxPath: + ps4VideoOutPixelFormat: 0 + ps4VideoOutInitialWidth: 1920 + ps4VideoOutBaseModeInitialWidth: 1920 + ps4VideoOutReprojectionRate: 60 + ps4PronunciationXMLPath: + ps4PronunciationSIGPath: + ps4BackgroundImagePath: + ps4StartupImagePath: + ps4StartupImagesFolder: + ps4IconImagesFolder: + ps4SaveDataImagePath: + ps4SdkOverride: + ps4BGMPath: + ps4ShareFilePath: + ps4ShareOverlayImagePath: + ps4PrivacyGuardImagePath: + ps4ExtraSceSysFile: + ps4NPtitleDatPath: + ps4RemotePlayKeyAssignment: -1 + ps4RemotePlayKeyMappingDir: + ps4PlayTogetherPlayerCount: 0 + ps4EnterButtonAssignment: 2 + ps4ApplicationParam1: 0 + ps4ApplicationParam2: 0 + ps4ApplicationParam3: 0 + ps4ApplicationParam4: 0 + ps4DownloadDataSize: 0 + ps4GarlicHeapSize: 2048 + ps4ProGarlicHeapSize: 2560 + playerPrefsMaxSize: 32768 + ps4Passcode: frAQBc8Wsa1xVPfvJcrgRYwTiizs2trQ + ps4pnSessions: 1 + ps4pnPresence: 1 + ps4pnFriends: 1 + ps4pnGameCustomData: 1 + playerPrefsSupport: 0 + enableApplicationExit: 0 + resetTempFolder: 1 + restrictedAudioUsageRights: 0 + ps4UseResolutionFallback: 0 + ps4ReprojectionSupport: 0 + ps4UseAudio3dBackend: 0 + ps4UseLowGarlicFragmentationMode: 1 + ps4SocialScreenEnabled: 0 + ps4ScriptOptimizationLevel: 2 + ps4Audio3dVirtualSpeakerCount: 14 + ps4attribCpuUsage: 0 + ps4PatchPkgPath: + ps4PatchLatestPkgPath: + ps4PatchChangeinfoPath: + ps4PatchDayOne: 0 + ps4attribUserManagement: 0 + ps4attribMoveSupport: 0 + ps4attrib3DSupport: 0 + ps4attribShareSupport: 0 + ps4attribExclusiveVR: 0 + ps4disableAutoHideSplash: 0 + ps4videoRecordingFeaturesUsed: 0 + ps4contentSearchFeaturesUsed: 0 + ps4CompatibilityPS5: 0 + ps4AllowPS5Detection: 0 + ps4GPU800MHz: 1 + ps4attribEyeToEyeDistanceSettingVR: 0 + ps4IncludedModules: [] + ps4attribVROutputEnabled: 0 + monoEnv: + splashScreenBackgroundSourceLandscape: {fileID: 0} + splashScreenBackgroundSourcePortrait: {fileID: 0} + blurSplashScreenBackground: 1 + spritePackerPolicy: + webGLMemorySize: 32 + webGLExceptionSupport: 1 + webGLNameFilesAsHashes: 0 + webGLShowDiagnostics: 0 + webGLDataCaching: 1 + webGLDebugSymbols: 0 + webGLEmscriptenArgs: + webGLModulesDirectory: + webGLTemplate: APPLICATION:Default + webGLAnalyzeBuildSize: 0 + webGLUseEmbeddedResources: 0 + webGLCompressionFormat: 0 + webGLWasmArithmeticExceptions: 0 + webGLLinkerTarget: 1 + webGLThreadsSupport: 0 + webGLDecompressionFallback: 0 + webGLInitialMemorySize: 32 + webGLMaximumMemorySize: 2048 + webGLMemoryGrowthMode: 2 + webGLMemoryLinearGrowthStep: 16 + webGLMemoryGeometricGrowthStep: 0.2 + webGLMemoryGeometricGrowthCap: 96 + webGLPowerPreference: 2 + webGLWebAssemblyTable: 0 + webGLWebAssemblyBigInt: 0 + webGLCloseOnQuit: 0 + webWasm2023: 0 + webEnableSubmoduleStrippingCompatibility: 0 + scriptingDefineSymbols: {} + additionalCompilerArguments: {} + platformArchitecture: {} + scriptingBackend: + Android: 1 + il2cppCompilerConfiguration: {} + il2cppCodeGeneration: {} + il2cppStacktraceInformation: {} + managedStrippingLevel: {} + incrementalIl2cppBuild: {} + suppressCommonWarnings: 1 + allowUnsafeCode: 0 + useDeterministicCompilation: 1 + additionalIl2CppArgs: + scriptingRuntimeVersion: 1 + gcIncremental: 1 + gcWBarrierValidation: 0 + apiCompatibilityLevelPerPlatform: {} + editorAssembliesCompatibilityLevel: 1 + m_RenderingPath: 1 + m_MobileRenderingPath: 1 + metroPackageName: BracerLibTest + metroPackageVersion: + metroCertificatePath: + metroCertificatePassword: + metroCertificateSubject: + metroCertificateIssuer: + metroCertificateNotAfter: 0000000000000000 + metroApplicationDescription: BracerLibTest + wsaImages: {} + metroTileShortName: + metroTileShowName: 0 + metroMediumTileShowName: 0 + metroLargeTileShowName: 0 + metroWideTileShowName: 0 + metroSupportStreamingInstall: 0 + metroLastRequiredScene: 0 + metroDefaultTileSize: 1 + metroTileForegroundText: 2 + metroTileBackgroundColor: {r: 0.13333334, g: 0.17254902, b: 0.21568628, a: 0} + metroSplashScreenBackgroundColor: {r: 0.12941177, g: 0.17254902, b: 0.21568628, a: 1} + metroSplashScreenUseBackgroundColor: 0 + syncCapabilities: 0 + platformCapabilities: {} + metroTargetDeviceFamilies: {} + metroFTAName: + metroFTAFileTypes: [] + metroProtocolName: + vcxProjDefaultLanguage: + XboxOneProductId: + XboxOneUpdateKey: + XboxOneSandboxId: + XboxOneContentId: + XboxOneTitleId: + XboxOneSCId: + XboxOneGameOsOverridePath: + XboxOnePackagingOverridePath: + XboxOneAppManifestOverridePath: + XboxOneVersion: 1.0.0.0 + XboxOnePackageEncryption: 0 + XboxOnePackageUpdateGranularity: 2 + XboxOneDescription: + XboxOneLanguage: + - enus + XboxOneCapability: [] + XboxOneGameRating: {} + XboxOneIsContentPackage: 0 + XboxOneEnhancedXboxCompatibilityMode: 0 + XboxOneEnableGPUVariability: 1 + XboxOneSockets: {} + XboxOneSplashScreen: {fileID: 0} + XboxOneAllowedProductIds: [] + XboxOnePersistentLocalStorageSize: 0 + XboxOneXTitleMemory: 8 + XboxOneOverrideIdentityName: + XboxOneOverrideIdentityPublisher: + vrEditorSettings: {} + cloudServicesEnabled: {} + luminIcon: + m_Name: + m_ModelFolderPath: + m_PortalFolderPath: + luminCert: + m_CertPath: + m_SignPackage: 1 + luminIsChannelApp: 0 + luminVersion: + m_VersionCode: 1 + m_VersionName: + hmiPlayerDataPath: + hmiForceSRGBBlit: 1 + embeddedLinuxEnableGamepadInput: 0 + hmiCpuConfiguration: + hmiLogStartupTiming: 0 + qnxGraphicConfPath: + apiCompatibilityLevel: 6 + captureStartupLogs: {} + activeInputHandler: 1 + windowsGamepadBackendHint: 0 + cloudProjectId: c6a9b8cd-fa7d-4b43-b27f-1aaaccade5e1 + framebufferDepthMemorylessMode: 0 + qualitySettingsNames: [] + projectName: BracerLibTest + organizationId: blake-farrugia + cloudEnabled: 0 + legacyClampBlendShapeWeights: 0 + hmiLoadingImage: {fileID: 0} + platformRequiresReadableAssets: 0 + virtualTexturingSupportEnabled: 0 + insecureHttpOption: 0 + androidVulkanDenyFilterList: [] + androidVulkanAllowFilterList: [] + androidVulkanDeviceFilterListAsset: {fileID: 0} + d3d12DeviceFilterListAsset: {fileID: 0} + allowedHttpConnections: 3 diff --git a/ProjectSettings/ProjectVersion.txt b/ProjectSettings/ProjectVersion.txt new file mode 100644 index 0000000..e0b58cc --- /dev/null +++ b/ProjectSettings/ProjectVersion.txt @@ -0,0 +1,2 @@ +m_EditorVersion: 6000.3.15f1 +m_EditorVersionWithRevision: 6000.3.15f1 (c1aa84e375f6) diff --git a/ProjectSettings/QualitySettings.asset b/ProjectSettings/QualitySettings.asset new file mode 100644 index 0000000..f55198a --- /dev/null +++ b/ProjectSettings/QualitySettings.asset @@ -0,0 +1,134 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!47 &1 +QualitySettings: + m_ObjectHideFlags: 0 + serializedVersion: 5 + m_CurrentQuality: 1 + m_QualitySettings: + - serializedVersion: 4 + name: Mobile + pixelLightCount: 2 + shadows: 2 + shadowResolution: 1 + shadowProjection: 1 + shadowCascades: 2 + shadowDistance: 40 + shadowNearPlaneOffset: 3 + shadowCascade2Split: 0.33333334 + shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} + shadowmaskMode: 0 + skinWeights: 2 + globalTextureMipmapLimit: 0 + textureMipmapLimitSettings: [] + anisotropicTextures: 1 + antiAliasing: 0 + softParticles: 0 + softVegetation: 1 + realtimeReflectionProbes: 0 + billboardsFaceCameraPosition: 1 + useLegacyDetailDistribution: 1 + adaptiveVsync: 0 + vSyncCount: 0 + realtimeGICPUUsage: 100 + adaptiveVsyncExtraA: 0 + adaptiveVsyncExtraB: 0 + lodBias: 1 + maximumLODLevel: 0 + enableLODCrossFade: 1 + streamingMipmapsActive: 0 + streamingMipmapsAddAllCameras: 1 + streamingMipmapsMemoryBudget: 512 + streamingMipmapsRenderersPerFrame: 512 + streamingMipmapsMaxLevelReduction: 2 + streamingMipmapsMaxFileIORequests: 1024 + particleRaycastBudget: 256 + asyncUploadTimeSlice: 2 + asyncUploadBufferSize: 16 + asyncUploadPersistentBuffer: 1 + resolutionScalingFixedDPIFactor: 1 + customRenderPipeline: {fileID: 11400000, guid: 5e6cbd92db86f4b18aec3ed561671858, + type: 2} + terrainQualityOverrides: 0 + terrainPixelError: 1 + terrainDetailDensityScale: 1 + terrainBasemapDistance: 1000 + terrainDetailDistance: 80 + terrainTreeDistance: 5000 + terrainBillboardStart: 50 + terrainFadeLength: 5 + terrainMaxTrees: 50 + excludedTargetPlatforms: + - Standalone + - serializedVersion: 4 + name: PC + pixelLightCount: 2 + shadows: 2 + shadowResolution: 1 + shadowProjection: 1 + shadowCascades: 2 + shadowDistance: 40 + shadowNearPlaneOffset: 3 + shadowCascade2Split: 0.33333334 + shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} + shadowmaskMode: 1 + skinWeights: 4 + globalTextureMipmapLimit: 0 + textureMipmapLimitSettings: [] + anisotropicTextures: 2 + antiAliasing: 0 + softParticles: 0 + softVegetation: 1 + realtimeReflectionProbes: 0 + billboardsFaceCameraPosition: 1 + useLegacyDetailDistribution: 1 + adaptiveVsync: 0 + vSyncCount: 0 + realtimeGICPUUsage: 100 + adaptiveVsyncExtraA: 0 + adaptiveVsyncExtraB: 0 + lodBias: 2 + maximumLODLevel: 0 + enableLODCrossFade: 1 + streamingMipmapsActive: 0 + streamingMipmapsAddAllCameras: 1 + streamingMipmapsMemoryBudget: 512 + streamingMipmapsRenderersPerFrame: 512 + streamingMipmapsMaxLevelReduction: 2 + streamingMipmapsMaxFileIORequests: 1024 + particleRaycastBudget: 256 + asyncUploadTimeSlice: 2 + asyncUploadBufferSize: 16 + asyncUploadPersistentBuffer: 1 + resolutionScalingFixedDPIFactor: 1 + customRenderPipeline: {fileID: 11400000, guid: 4b83569d67af61e458304325a23e5dfd, + type: 2} + terrainQualityOverrides: 0 + terrainPixelError: 1 + terrainDetailDensityScale: 1 + terrainBasemapDistance: 1000 + terrainDetailDistance: 80 + terrainTreeDistance: 5000 + terrainBillboardStart: 50 + terrainFadeLength: 5 + terrainMaxTrees: 50 + excludedTargetPlatforms: + - Android + - iPhone + m_TextureMipmapLimitGroupNames: [] + m_PerPlatformDefaultQuality: + Android: 0 + GameCoreScarlett: 1 + GameCoreXboxOne: 1 + Lumin: 0 + Nintendo Switch: 1 + PS4: 1 + PS5: 1 + Server: 0 + Stadia: 0 + Standalone: 1 + WebGL: 0 + Windows Store Apps: 0 + XboxOne: 0 + iPhone: 0 + tvOS: 0 diff --git a/ProjectSettings/SceneTemplateSettings.json b/ProjectSettings/SceneTemplateSettings.json new file mode 100644 index 0000000..ede5887 --- /dev/null +++ b/ProjectSettings/SceneTemplateSettings.json @@ -0,0 +1,121 @@ +{ + "templatePinStates": [], + "dependencyTypeInfos": [ + { + "userAdded": false, + "type": "UnityEngine.AnimationClip", + "defaultInstantiationMode": 0 + }, + { + "userAdded": false, + "type": "UnityEditor.Animations.AnimatorController", + "defaultInstantiationMode": 0 + }, + { + "userAdded": false, + "type": "UnityEngine.AnimatorOverrideController", + "defaultInstantiationMode": 0 + }, + { + "userAdded": false, + "type": "UnityEditor.Audio.AudioMixerController", + "defaultInstantiationMode": 0 + }, + { + "userAdded": false, + "type": "UnityEngine.ComputeShader", + "defaultInstantiationMode": 1 + }, + { + "userAdded": false, + "type": "UnityEngine.Cubemap", + "defaultInstantiationMode": 0 + }, + { + "userAdded": false, + "type": "UnityEngine.GameObject", + "defaultInstantiationMode": 0 + }, + { + "userAdded": false, + "type": "UnityEditor.LightingDataAsset", + "defaultInstantiationMode": 0 + }, + { + "userAdded": false, + "type": "UnityEngine.LightingSettings", + "defaultInstantiationMode": 0 + }, + { + "userAdded": false, + "type": "UnityEngine.Material", + "defaultInstantiationMode": 0 + }, + { + "userAdded": false, + "type": "UnityEditor.MonoScript", + "defaultInstantiationMode": 1 + }, + { + "userAdded": false, + "type": "UnityEngine.PhysicsMaterial", + "defaultInstantiationMode": 0 + }, + { + "userAdded": false, + "type": "UnityEngine.PhysicsMaterial2D", + "defaultInstantiationMode": 0 + }, + { + "userAdded": false, + "type": "UnityEngine.Rendering.PostProcessing.PostProcessProfile", + "defaultInstantiationMode": 0 + }, + { + "userAdded": false, + "type": "UnityEngine.Rendering.PostProcessing.PostProcessResources", + "defaultInstantiationMode": 0 + }, + { + "userAdded": false, + "type": "UnityEngine.Rendering.VolumeProfile", + "defaultInstantiationMode": 0 + }, + { + "userAdded": false, + "type": "UnityEditor.SceneAsset", + "defaultInstantiationMode": 1 + }, + { + "userAdded": false, + "type": "UnityEngine.Shader", + "defaultInstantiationMode": 1 + }, + { + "userAdded": false, + "type": "UnityEngine.ShaderVariantCollection", + "defaultInstantiationMode": 1 + }, + { + "userAdded": false, + "type": "UnityEngine.Texture", + "defaultInstantiationMode": 0 + }, + { + "userAdded": false, + "type": "UnityEngine.Texture2D", + "defaultInstantiationMode": 0 + }, + { + "userAdded": false, + "type": "UnityEngine.Timeline.TimelineAsset", + "defaultInstantiationMode": 0 + } + ], + "defaultDependencyTypeInfo": { + "userAdded": false, + "type": "", + "defaultInstantiationMode": 1 + }, + "newSceneOverride": 0 +} \ No newline at end of file diff --git a/ProjectSettings/ShaderGraphSettings.asset b/ProjectSettings/ShaderGraphSettings.asset new file mode 100644 index 0000000..ce8c243 --- /dev/null +++ b/ProjectSettings/ShaderGraphSettings.asset @@ -0,0 +1,19 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &1 +MonoBehaviour: + m_ObjectHideFlags: 61 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: de02f9e1d18f588468e474319d09a723, type: 3} + m_Name: + m_EditorClassIdentifier: + shaderVariantLimit: 128 + overrideShaderVariantLimit: 0 + customInterpolatorErrorThreshold: 32 + customInterpolatorWarningThreshold: 16 + customHeatmapValues: {fileID: 0} diff --git a/ProjectSettings/TagManager.asset b/ProjectSettings/TagManager.asset new file mode 100644 index 0000000..6413d11 --- /dev/null +++ b/ProjectSettings/TagManager.asset @@ -0,0 +1,76 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!78 &1 +TagManager: + serializedVersion: 2 + tags: [] + layers: + - Default + - TransparentFX + - Ignore Raycast + - + - Water + - UI + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + m_SortingLayers: + - name: Default + uniqueID: 0 + locked: 0 + m_RenderingLayers: + - Default + - Light Layer 1 + - Light Layer 2 + - Light Layer 3 + - Light Layer 4 + - Light Layer 5 + - Light Layer 6 + - Light Layer 7 + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - diff --git a/ProjectSettings/TimeManager.asset b/ProjectSettings/TimeManager.asset new file mode 100644 index 0000000..558a017 --- /dev/null +++ b/ProjectSettings/TimeManager.asset @@ -0,0 +1,9 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!5 &1 +TimeManager: + m_ObjectHideFlags: 0 + Fixed Timestep: 0.02 + Maximum Allowed Timestep: 0.33333334 + m_TimeScale: 1 + Maximum Particle Timestep: 0.03 diff --git a/ProjectSettings/URPProjectSettings.asset b/ProjectSettings/URPProjectSettings.asset new file mode 100644 index 0000000..6ad5631 --- /dev/null +++ b/ProjectSettings/URPProjectSettings.asset @@ -0,0 +1,16 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &1 +MonoBehaviour: + m_ObjectHideFlags: 61 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 247994e1f5a72c2419c26a37e9334c01, type: 3} + m_Name: + m_EditorClassIdentifier: + m_LastMaterialVersion: 10 + m_ProjectSettingFolderPath: URPDefaultResources diff --git a/ProjectSettings/UnityConnectSettings.asset b/ProjectSettings/UnityConnectSettings.asset new file mode 100644 index 0000000..029ad8b --- /dev/null +++ b/ProjectSettings/UnityConnectSettings.asset @@ -0,0 +1,40 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!310 &1 +UnityConnectSettings: + m_ObjectHideFlags: 0 + serializedVersion: 1 + m_Enabled: 0 + m_TestMode: 0 + m_EventOldUrl: https://api.uca.cloud.unity3d.com/v1/events + m_EventUrl: https://cdp.cloud.unity3d.com/v1/events + m_ConfigUrl: https://config.uca.cloud.unity3d.com + m_DashboardUrl: https://dashboard.unity3d.com + m_TestInitMode: 0 + InsightsSettings: + m_EngineDiagnosticsEnabled: 1 + m_Enabled: 0 + CrashReportingSettings: + serializedVersion: 2 + m_EventUrl: https://perf-events.cloud.unity3d.com + m_EnableCloudDiagnosticsReporting: 0 + m_LogBufferSize: 10 + m_CaptureEditorExceptions: 1 + UnityPurchasingSettings: + m_Enabled: 0 + m_TestMode: 0 + UnityAnalyticsSettings: + m_Enabled: 0 + m_TestMode: 0 + m_InitializeOnStartup: 1 + m_PackageRequiringCoreStatsPresent: 0 + UnityAdsSettings: + m_Enabled: 0 + m_InitializeOnStartup: 1 + m_TestMode: 0 + m_IosGameId: + m_AndroidGameId: + m_GameIds: {} + m_GameId: + PerformanceReportingSettings: + m_Enabled: 0 diff --git a/ProjectSettings/VFXManager.asset b/ProjectSettings/VFXManager.asset new file mode 100644 index 0000000..3a95c98 --- /dev/null +++ b/ProjectSettings/VFXManager.asset @@ -0,0 +1,12 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!937362698 &1 +VFXManager: + m_ObjectHideFlags: 0 + m_IndirectShader: {fileID: 0} + m_CopyBufferShader: {fileID: 0} + m_SortShader: {fileID: 0} + m_StripUpdateShader: {fileID: 0} + m_RenderPipeSettingsPath: + m_FixedTimeStep: 0.016666668 + m_MaxDeltaTime: 0.05 diff --git a/ProjectSettings/VersionControlSettings.asset b/ProjectSettings/VersionControlSettings.asset new file mode 100644 index 0000000..dca2881 --- /dev/null +++ b/ProjectSettings/VersionControlSettings.asset @@ -0,0 +1,8 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!890905787 &1 +VersionControlSettings: + m_ObjectHideFlags: 0 + m_Mode: Visible Meta Files + m_CollabEditorSettings: + inProgressEnabled: 1 diff --git a/ProjectSettings/XRSettings.asset b/ProjectSettings/XRSettings.asset new file mode 100644 index 0000000..482590c --- /dev/null +++ b/ProjectSettings/XRSettings.asset @@ -0,0 +1,10 @@ +{ + "m_SettingKeys": [ + "VR Device Disabled", + "VR Device User Alert" + ], + "m_SettingValues": [ + "False", + "False" + ] +} \ No newline at end of file diff --git a/UserSettings/EditorUserSettings.asset b/UserSettings/EditorUserSettings.asset new file mode 100644 index 0000000..3ceb772 --- /dev/null +++ b/UserSettings/EditorUserSettings.asset @@ -0,0 +1,36 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!162 &1 +EditorUserSettings: + m_ObjectHideFlags: 0 + serializedVersion: 4 + m_ConfigSettings: + QuickInstaller_com.unity.purchasing_installRecorded: + value: 2550581500 + flags: 0 + QuickInstaller_com.unity.services.levelplay_installRecorded: + value: 2550581500 + flags: 0 + RecentlyUsedSceneGuid-0: + value: 5a08575f5207595a0f5d59741173094444164f7d7d2a23317c7a4465bbe1646d + flags: 0 + vcSharedLogLevel: + value: 0d5e400f0650 + flags: 0 + m_VCAutomaticAdd: 1 + m_VCDebugCom: 0 + m_VCDebugCmd: 0 + m_VCDebugOut: 0 + m_SemanticMergeMode: 2 + m_DesiredImportWorkerCount: 8 + m_StandbyImportWorkerCount: 2 + m_IdleImportWorkerShutdownDelay: 60000 + m_VCShowFailedCheckout: 1 + m_VCOverwriteFailedCheckoutAssets: 1 + m_VCProjectOverlayIcons: 1 + m_VCHierarchyOverlayIcons: 1 + m_VCOtherOverlayIcons: 1 + m_VCAllowAsyncUpdate: 1 + m_VCScanLocalPackagesOnConnect: 1 + m_ArtifactGarbageCollection: 1 + m_CompressAssetsOnImport: 1 diff --git a/UserSettings/Layouts/default-6000.dwlt b/UserSettings/Layouts/default-6000.dwlt new file mode 100644 index 0000000..ac17e55 --- /dev/null +++ b/UserSettings/Layouts/default-6000.dwlt @@ -0,0 +1,3648 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &1 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 12004, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: UnityEditor.dll::UnityEditor.ContainerWindow + m_PixelRect: + serializedVersion: 2 + x: 0 + y: 43.2 + width: 2048 + height: 1196.8 + m_ShowMode: 4 + m_Title: Game + m_RootView: {fileID: 2} + m_MinSize: {x: 875, y: 300} + m_MaxSize: {x: 10000, y: 10000} + m_Maximized: 1 +--- !u!114 &2 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12008, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: + - {fileID: 3} + - {fileID: 5} + - {fileID: 4} + m_Position: + serializedVersion: 2 + x: 0 + y: 0 + width: 2048 + height: 1196.8 + m_MinSize: {x: 875, y: 300} + m_MaxSize: {x: 10000, y: 10000} + m_UseTopView: 1 + m_TopViewHeight: 36 + m_UseBottomView: 1 + m_BottomViewHeight: 20 +--- !u!114 &3 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12011, guid: 0000000000000000e000000000000000, type: 0} + m_Name: MainToolbarWindow + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 0 + y: 0 + width: 2048 + height: 36 + m_MinSize: {x: 50, y: 50} + m_MaxSize: {x: 4000, y: 4000} + m_ActualView: {fileID: 19} +--- !u!114 &4 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12042, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 0 + y: 1176.8 + width: 2048 + height: 20 + m_MinSize: {x: 0, y: 0} + m_MaxSize: {x: 0, y: 0} +--- !u!114 &5 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12010, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: + - {fileID: 6} + - {fileID: 15} + m_Position: + serializedVersion: 2 + x: 0 + y: 36 + width: 2048 + height: 1140.8 + m_MinSize: {x: 400, y: 112} + m_MaxSize: {x: 32384, y: 16192} + vertical: 0 + controlID: 170 + draggingID: 0 +--- !u!114 &6 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12010, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: + - {fileID: 7} + - {fileID: 11} + m_Position: + serializedVersion: 2 + x: 0 + y: 0 + width: 1399.2 + height: 1140.8 + m_MinSize: {x: 300, y: 112} + m_MaxSize: {x: 24288, y: 16192} + vertical: 1 + controlID: 171 + draggingID: 0 +--- !u!114 &7 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12010, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: + - {fileID: 8} + - {fileID: 9} + - {fileID: 10} + m_Position: + serializedVersion: 2 + x: 0 + y: 0 + width: 1399.2 + height: 687.2 + m_MinSize: {x: 300, y: 56} + m_MaxSize: {x: 24288, y: 8096} + vertical: 0 + controlID: 51 + draggingID: 0 +--- !u!114 &8 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 0 + y: 0 + width: 200 + height: 687.2 + m_MinSize: {x: 201, y: 226} + m_MaxSize: {x: 4001, y: 4026} + m_ActualView: {fileID: 21} + m_Panes: + - {fileID: 21} + m_Selected: 0 + m_LastSelected: 0 +--- !u!114 &9 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} + m_Name: SceneView + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 200 + y: 0 + width: 998.4 + height: 687.2 + m_MinSize: {x: 202, y: 226} + m_MaxSize: {x: 4002, y: 4026} + m_ActualView: {fileID: 22} + m_Panes: + - {fileID: 22} + m_Selected: 0 + m_LastSelected: 0 +--- !u!114 &10 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} + m_Name: GameView + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 1198.4 + y: 0 + width: 200.79993 + height: 687.2 + m_MinSize: {x: 202, y: 226} + m_MaxSize: {x: 4002, y: 4026} + m_ActualView: {fileID: 20} + m_Panes: + - {fileID: 20} + m_Selected: 0 + m_LastSelected: 0 +--- !u!114 &11 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 12010, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: + - {fileID: 12} + - {fileID: 13} + - {fileID: 14} + m_Position: + serializedVersion: 2 + x: 0 + y: 687.2 + width: 1399.2 + height: 453.60004 + m_MinSize: {x: 300, y: 56} + m_MaxSize: {x: 24288, y: 8096} + vertical: 0 + controlID: 172 + draggingID: 0 +--- !u!114 &12 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} + m_Name: ProjectBrowser + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 0 + y: 0 + width: 616.8 + height: 453.60004 + m_MinSize: {x: 231, y: 276} + m_MaxSize: {x: 10001, y: 10026} + m_ActualView: {fileID: 23} + m_Panes: + - {fileID: 23} + m_Selected: 0 + m_LastSelected: 0 +--- !u!114 &13 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} + m_Name: ConsoleWindow + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 616.8 + y: 0 + width: 664.8 + height: 453.60004 + m_MinSize: {x: 102, y: 126} + m_MaxSize: {x: 4002, y: 4026} + m_ActualView: {fileID: 24} + m_Panes: + - {fileID: 24} + m_Selected: 0 + m_LastSelected: 0 +--- !u!114 &14 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} + m_Name: AnimatorControllerTool + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 1281.6 + y: 0 + width: 117.599976 + height: 453.60004 + m_MinSize: {x: 102, y: 126} + m_MaxSize: {x: 4002, y: 4026} + m_ActualView: {fileID: 26} + m_Panes: + - {fileID: 25} + - {fileID: 26} + m_Selected: 1 + m_LastSelected: 0 +--- !u!114 &15 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 12010, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: + - {fileID: 16} + - {fileID: 17} + m_Position: + serializedVersion: 2 + x: 1399.2 + y: 0 + width: 648.80005 + height: 1140.8 + m_MinSize: {x: 100, y: 112} + m_MaxSize: {x: 8096, y: 16192} + vertical: 1 + controlID: 183 + draggingID: 0 +--- !u!114 &16 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} + m_Name: InspectorWindow + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 0 + y: 0 + width: 648.80005 + height: 504.8 + m_MinSize: {x: 276, y: 76} + m_MaxSize: {x: 4001, y: 4026} + m_ActualView: {fileID: 27} + m_Panes: + - {fileID: 27} + m_Selected: 0 + m_LastSelected: 1 +--- !u!114 &17 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} + m_Name: CodeCoverageWindow + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 0 + y: 504.8 + width: 648.80005 + height: 636.00006 + m_MinSize: {x: 446, y: 91} + m_MaxSize: {x: 4001, y: 4026} + m_ActualView: {fileID: 18} + m_Panes: + - {fileID: 28} + - {fileID: 18} + m_Selected: 1 + m_LastSelected: 0 +--- !u!114 &18 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: b5115ff20f1ea204dac14fa49c0e8f69, type: 3} + m_Name: + m_EditorClassIdentifier: Unity.TestTools.CodeCoverage.Editor::UnityEditor.TestTools.CodeCoverage.CodeCoverageWindow + m_MinSize: {x: 445, y: 65} + m_MaxSize: {x: 4000, y: 4000} + m_TitleContent: + m_Text: Code Coverage + m_Image: {fileID: 2800000, guid: 48e45b7f100ee4b48a02e05135e6cece, type: 3} + m_Tooltip: + m_TextWithWhitespace: "Code Coverage\u200B" + m_Pos: + serializedVersion: 2 + x: 1 + y: 528.8 + width: 647.80005 + height: 610.00006 + m_SerializedDataModeController: + m_DataMode: 0 + m_PreferredDataMode: 0 + m_SupportedDataModes: + isAutomatic: 1 + m_ViewDataDictionary: {fileID: 0} + m_OverlayCanvas: + m_LastAppliedPresetName: Default + m_SaveData: [] + m_ContainerData: [] + m_DynamicPanelContainerData: [] + m_OverlaysVisible: 1 + m_DynamicPanelBehavior: 0 +--- !u!114 &19 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 13987, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: UnityEditor.dll::UnityEditor.MainToolbarWindow + m_MinSize: {x: 50, y: 50} + m_MaxSize: {x: 4000, y: 4000} + m_TitleContent: + m_Text: UnityEditor.MainToolbarWindow + m_Image: {fileID: 0} + m_Tooltip: + m_TextWithWhitespace: "UnityEditor.MainToolbarWindow\u200B" + m_Pos: + serializedVersion: 2 + x: 0 + y: 0 + width: 2048 + height: 36 + m_SerializedDataModeController: + m_DataMode: 0 + m_PreferredDataMode: 0 + m_SupportedDataModes: + isAutomatic: 1 + m_ViewDataDictionary: {fileID: 0} + m_OverlayCanvas: + m_LastAppliedPresetName: Default + m_SaveData: + - dockPosition: 0 + containerId: overlay-toolbar__top + displayed: 1 + id: Services/Account + index: 0 + contents: '{"m_Layout":4,"m_Collapsed":false,"m_Folded":false,"m_Floating":false,"m_FloatingSnapOffset":{"x":0.0,"y":0.0},"m_SnapOffsetDelta":{"x":0.0,"y":0.0},"m_FloatingSnapCorner":0,"m_Size":{"x":0.0,"y":0.0},"m_SizeOverridden":false}' + floating: 0 + collapsed: 0 + snapOffset: {x: 0, y: 0} + snapOffsetDelta: {x: 0, y: 0} + snapCorner: 0 + layout: 4 + size: {x: 0, y: 0} + sizeOverridden: 0 + - dockPosition: 0 + containerId: overlay-toolbar__top + displayed: 1 + id: Editor Controls/Store + index: 1 + contents: '{"m_Layout":4,"m_Collapsed":false,"m_Folded":false,"m_Floating":false,"m_FloatingSnapOffset":{"x":0.0,"y":0.0},"m_SnapOffsetDelta":{"x":0.0,"y":0.0},"m_FloatingSnapCorner":0,"m_Size":{"x":0.0,"y":0.0},"m_SizeOverridden":false}' + floating: 0 + collapsed: 0 + snapOffset: {x: 0, y: 0} + snapOffsetDelta: {x: 0, y: 0} + snapCorner: 0 + layout: 4 + size: {x: 0, y: 0} + sizeOverridden: 0 + - dockPosition: 0 + containerId: overlay-toolbar__top + displayed: 0 + id: Unsupported User Elements + index: 2 + contents: '{"m_Layout":4,"m_Collapsed":false,"m_Folded":false,"m_Floating":false,"m_FloatingSnapOffset":{"x":0.0,"y":0.0},"m_SnapOffsetDelta":{"x":0.0,"y":0.0},"m_FloatingSnapCorner":0,"m_Size":{"x":0.0,"y":0.0},"m_SizeOverridden":false}' + floating: 0 + collapsed: 0 + snapOffset: {x: 0, y: 0} + snapOffsetDelta: {x: 0, y: 0} + snapCorner: 0 + layout: 4 + size: {x: 0, y: 0} + sizeOverridden: 0 + - dockPosition: 0 + containerId: overlay-toolbar__top + displayed: 1 + id: Package Management/Package Manager + index: 3 + contents: '{"m_Layout":4,"m_Collapsed":false,"m_Folded":false,"m_Floating":false,"m_FloatingSnapOffset":{"x":0.0,"y":0.0},"m_SnapOffsetDelta":{"x":0.0,"y":0.0},"m_FloatingSnapCorner":0,"m_Size":{"x":0.0,"y":0.0},"m_SizeOverridden":false}' + floating: 0 + collapsed: 0 + snapOffset: {x: 0, y: 0} + snapOffsetDelta: {x: 0, y: 0} + snapCorner: 0 + layout: 4 + size: {x: 0, y: 0} + sizeOverridden: 0 + - dockPosition: 0 + containerId: overlay-toolbar__top + displayed: 1 + id: Services/Collab + index: 4 + contents: '{"m_Layout":4,"m_Collapsed":false,"m_Folded":false,"m_Floating":false,"m_FloatingSnapOffset":{"x":0.0,"y":0.0},"m_SnapOffsetDelta":{"x":0.0,"y":0.0},"m_FloatingSnapCorner":0,"m_Size":{"x":0.0,"y":0.0},"m_SizeOverridden":false}' + floating: 0 + collapsed: 0 + snapOffset: {x: 0, y: 0} + snapOffsetDelta: {x: 0, y: 0} + snapCorner: 0 + layout: 4 + size: {x: 0, y: 0} + sizeOverridden: 0 + - dockPosition: 0 + containerId: overlay-toolbar__top + displayed: 1 + id: Services/AI + index: 5 + contents: '{"m_Layout":4,"m_Collapsed":false,"m_Folded":false,"m_Floating":false,"m_FloatingSnapOffset":{"x":0.0,"y":0.0},"m_SnapOffsetDelta":{"x":0.0,"y":0.0},"m_FloatingSnapCorner":0,"m_Size":{"x":0.0,"y":0.0},"m_SizeOverridden":false}' + floating: 0 + collapsed: 0 + snapOffset: {x: 0, y: 0} + snapOffsetDelta: {x: 0, y: 0} + snapCorner: 0 + layout: 4 + size: {x: 0, y: 0} + sizeOverridden: 0 + - dockPosition: 0 + containerId: overlay-toolbar__top + displayed: 1 + id: Services/Unity Version Control + index: 6 + contents: '{"m_Layout":4,"m_Collapsed":false,"m_Folded":false,"m_Floating":false,"m_FloatingSnapOffset":{"x":0.0,"y":0.0},"m_SnapOffsetDelta":{"x":0.0,"y":0.0},"m_FloatingSnapCorner":0,"m_Size":{"x":0.0,"y":0.0},"m_SizeOverridden":false}' + floating: 0 + collapsed: 0 + snapOffset: {x: 0, y: 0} + snapOffsetDelta: {x: 0, y: 0} + snapCorner: 0 + layout: 4 + size: {x: 0, y: 0} + sizeOverridden: 0 + - dockPosition: 1 + containerId: overlay-toolbar__top + displayed: 1 + id: Services/Toolbar Help + index: 0 + contents: '{"m_Layout":4,"m_Collapsed":false,"m_Folded":false,"m_Floating":false,"m_FloatingSnapOffset":{"x":0.0,"y":0.0},"m_SnapOffsetDelta":{"x":0.0,"y":0.0},"m_FloatingSnapCorner":0,"m_Size":{"x":0.0,"y":0.0},"m_SizeOverridden":false}' + floating: 0 + collapsed: 0 + snapOffset: {x: 0, y: 0} + snapOffsetDelta: {x: 0, y: 0} + snapCorner: 0 + layout: 4 + size: {x: 0, y: 0} + sizeOverridden: 0 + - dockPosition: 1 + containerId: overlay-toolbar__top + displayed: 1 + id: Editor Controls/Layout + index: 1 + contents: '{"m_Layout":4,"m_Collapsed":false,"m_Folded":false,"m_Floating":false,"m_FloatingSnapOffset":{"x":0.0,"y":0.0},"m_SnapOffsetDelta":{"x":0.0,"y":0.0},"m_FloatingSnapCorner":0,"m_Size":{"x":0.0,"y":0.0},"m_SizeOverridden":false}' + floating: 0 + collapsed: 0 + snapOffset: {x: 0, y: 0} + snapOffsetDelta: {x: 0, y: 0} + snapCorner: 0 + layout: 4 + size: {x: 0, y: 0} + sizeOverridden: 0 + - dockPosition: 1 + containerId: overlay-toolbar__top + displayed: 0 + id: Editor Utility/Quality + index: 2 + contents: '{"m_Layout":4,"m_Collapsed":false,"m_Folded":false,"m_Floating":false,"m_FloatingSnapOffset":{"x":0.0,"y":0.0},"m_SnapOffsetDelta":{"x":0.0,"y":0.0},"m_FloatingSnapCorner":0,"m_Size":{"x":0.0,"y":0.0},"m_SizeOverridden":false}' + floating: 0 + collapsed: 0 + snapOffset: {x: 0, y: 0} + snapOffsetDelta: {x: 0, y: 0} + snapCorner: 0 + layout: 4 + size: {x: 0, y: 0} + sizeOverridden: 0 + - dockPosition: 1 + containerId: overlay-toolbar__top + displayed: 1 + id: Editor Controls/Search + index: 3 + contents: '{"m_Layout":4,"m_Collapsed":false,"m_Folded":false,"m_Floating":false,"m_FloatingSnapOffset":{"x":0.0,"y":0.0},"m_SnapOffsetDelta":{"x":0.0,"y":0.0},"m_FloatingSnapCorner":0,"m_Size":{"x":0.0,"y":0.0},"m_SizeOverridden":false}' + floating: 0 + collapsed: 0 + snapOffset: {x: 0, y: 0} + snapOffsetDelta: {x: 0, y: 0} + snapCorner: 0 + layout: 4 + size: {x: 0, y: 0} + sizeOverridden: 0 + - dockPosition: 1 + containerId: overlay-toolbar__top + displayed: 1 + id: Editor Controls/Modes + index: 4 + contents: '{"m_Layout":4,"m_Collapsed":false,"m_Folded":false,"m_Floating":false,"m_FloatingSnapOffset":{"x":0.0,"y":0.0},"m_SnapOffsetDelta":{"x":0.0,"y":0.0},"m_FloatingSnapCorner":0,"m_Size":{"x":0.0,"y":0.0},"m_SizeOverridden":false}' + floating: 0 + collapsed: 0 + snapOffset: {x: 0, y: 0} + snapOffsetDelta: {x: 0, y: 0} + snapCorner: 0 + layout: 4 + size: {x: 0, y: 0} + sizeOverridden: 0 + - dockPosition: 1 + containerId: overlay-toolbar__top + displayed: 1 + id: Editor Controls/Undo + index: 5 + contents: '{"m_Layout":4,"m_Collapsed":false,"m_Folded":false,"m_Floating":false,"m_FloatingSnapOffset":{"x":0.0,"y":0.0},"m_SnapOffsetDelta":{"x":0.0,"y":0.0},"m_FloatingSnapCorner":0,"m_Size":{"x":0.0,"y":0.0},"m_SizeOverridden":false}' + floating: 0 + collapsed: 0 + snapOffset: {x: 0, y: 0} + snapOffsetDelta: {x: 0, y: 0} + snapCorner: 0 + layout: 4 + size: {x: 0, y: 0} + sizeOverridden: 0 + - dockPosition: 1 + containerId: overlay-toolbar__top + displayed: 1 + id: Multiplayer/Multiplayer Role + index: 6 + contents: '{"m_Layout":4,"m_Collapsed":false,"m_Folded":false,"m_Floating":false,"m_FloatingSnapOffset":{"x":0.0,"y":0.0},"m_SnapOffsetDelta":{"x":0.0,"y":0.0},"m_FloatingSnapCorner":0,"m_Size":{"x":0.0,"y":0.0},"m_SizeOverridden":false}' + floating: 0 + collapsed: 0 + snapOffset: {x: 0, y: 0} + snapOffsetDelta: {x: 0, y: 0} + snapCorner: 0 + layout: 4 + size: {x: 0, y: 0} + sizeOverridden: 0 + - dockPosition: 1 + containerId: overlay-toolbar__top + displayed: 1 + id: Services/Cloud + index: 7 + contents: '{"m_Layout":4,"m_Collapsed":false,"m_Folded":false,"m_Floating":false,"m_FloatingSnapOffset":{"x":0.0,"y":0.0},"m_SnapOffsetDelta":{"x":0.0,"y":0.0},"m_FloatingSnapCorner":0,"m_Size":{"x":0.0,"y":0.0},"m_SizeOverridden":false}' + floating: 0 + collapsed: 0 + snapOffset: {x: 0, y: 0} + snapOffsetDelta: {x: 0, y: 0} + snapCorner: 0 + layout: 4 + size: {x: 0, y: 0} + sizeOverridden: 0 + - dockPosition: 1 + containerId: overlay-toolbar__top + displayed: 0 + id: Services/Environment + index: 8 + contents: '{"m_Layout":4,"m_Collapsed":false,"m_Folded":false,"m_Floating":false,"m_FloatingSnapOffset":{"x":0.0,"y":0.0},"m_SnapOffsetDelta":{"x":0.0,"y":0.0},"m_FloatingSnapCorner":0,"m_Size":{"x":0.0,"y":0.0},"m_SizeOverridden":false}' + floating: 0 + collapsed: 0 + snapOffset: {x: 0, y: 0} + snapOffsetDelta: {x: 0, y: 0} + snapCorner: 0 + layout: 4 + size: {x: 0, y: 0} + sizeOverridden: 0 + - dockPosition: 2 + containerId: overlay-toolbar__top + displayed: 1 + id: Play Mode Controls + index: 0 + contents: '{"m_Layout":4,"m_Collapsed":false,"m_Folded":false,"m_Floating":false,"m_FloatingSnapOffset":{"x":0.0,"y":0.0},"m_SnapOffsetDelta":{"x":0.0,"y":0.0},"m_FloatingSnapCorner":0,"m_Size":{"x":0.0,"y":0.0},"m_SizeOverridden":false}' + floating: 0 + collapsed: 0 + snapOffset: {x: 0, y: 0} + snapOffsetDelta: {x: 0, y: 0} + snapCorner: 0 + layout: 4 + size: {x: 0, y: 0} + sizeOverridden: 0 + m_ContainerData: + - containerId: overlay-toolbar__top + scrollOffset: 0 + - containerId: Floating + scrollOffset: 0 + m_DynamicPanelContainerData: [] + m_OverlaysVisible: 1 + m_DynamicPanelBehavior: 0 +--- !u!114 &20 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12015, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 200, y: 200} + m_MaxSize: {x: 4000, y: 4000} + m_TitleContent: + m_Text: Game + m_Image: {fileID: 4621777727084837110, guid: 0000000000000000d000000000000000, type: 0} + m_Tooltip: + m_TextWithWhitespace: "Game\u200B" + m_Pos: + serializedVersion: 2 + x: 1199.4 + y: 24 + width: 198.79993 + height: 661.2 + m_SerializedDataModeController: + m_DataMode: 0 + m_PreferredDataMode: 0 + m_SupportedDataModes: + isAutomatic: 1 + m_ViewDataDictionary: {fileID: 0} + m_OverlayCanvas: + m_LastAppliedPresetName: Default + m_SaveData: [] + m_ContainerData: [] + m_DynamicPanelContainerData: [] + m_OverlaysVisible: 1 + m_DynamicPanelBehavior: 0 + m_SerializedViewNames: [] + m_SerializedViewValues: [] + m_PlayModeViewName: GameView + m_ShowGizmos: 0 + m_TargetDisplay: 0 + m_ClearColor: {r: 0, g: 0, b: 0, a: 0} + m_TargetSize: {x: 1920, y: 1080} + m_TextureFilterMode: 0 + m_TextureHideFlags: 61 + m_RenderIMGUI: 1 + m_EnterPlayModeBehavior: 0 + m_UseMipMap: 0 + m_VSyncEnabled: 0 + m_Gizmos: 0 + m_Stats: 0 + m_SelectedSizes: 03000000000000000000000000000000000000000000000000000000000000000000000000000000 + m_ZoomArea: + m_HRangeLocked: 0 + m_VRangeLocked: 0 + hZoomLockedByDefault: 0 + vZoomLockedByDefault: 0 + m_HBaseRangeMin: -768 + m_HBaseRangeMax: 768 + m_VBaseRangeMin: -432 + m_VBaseRangeMax: 432 + m_HAllowExceedBaseRangeMin: 1 + m_HAllowExceedBaseRangeMax: 1 + m_VAllowExceedBaseRangeMin: 1 + m_VAllowExceedBaseRangeMax: 1 + m_ScaleWithWindow: 0 + m_HSlider: 0 + m_VSlider: 0 + m_IgnoreScrollWheelUntilClicked: 0 + m_EnableMouseInput: 1 + m_EnableSliderZoomHorizontal: 0 + m_EnableSliderZoomVertical: 0 + m_UniformScale: 1 + m_UpDirection: 1 + m_DrawArea: + serializedVersion: 2 + x: 0 + y: 21 + width: 198.79993 + height: 640.2 + m_Scale: {x: 0.12942703, y: 0.12942703} + m_Translation: {x: 99.39996, y: 320.1} + m_MarginLeft: 0 + m_MarginRight: 0 + m_MarginTop: 0 + m_MarginBottom: 0 + m_LastShownAreaInsideMargins: + serializedVersion: 2 + x: -768 + y: -2473.2083 + width: 1536 + height: 4946.4165 + m_MinimalGUI: 1 + m_defaultScale: 0.12942703 + m_LastWindowPixelSize: {x: 198.79993, y: 661.2} + m_ClearInEditMode: 1 + m_NoCameraWarning: 1 + m_LowResolutionForAspectRatios: 00000000000000000000 + m_XRRenderMode: 0 + m_RenderTexture: {fileID: 0} + m_showToolbar: 1 +--- !u!114 &21 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12061, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 200, y: 200} + m_MaxSize: {x: 4000, y: 4000} + m_TitleContent: + m_Text: Hierarchy + m_Image: {fileID: -3734745235275155857, guid: 0000000000000000d000000000000000, type: 0} + m_Tooltip: + m_TextWithWhitespace: "Hierarchy\u200B" + m_Pos: + serializedVersion: 2 + x: 0 + y: 24 + width: 199 + height: 661.2 + m_SerializedDataModeController: + m_DataMode: 0 + m_PreferredDataMode: 0 + m_SupportedDataModes: + isAutomatic: 1 + m_ViewDataDictionary: {fileID: 0} + m_OverlayCanvas: + m_LastAppliedPresetName: Default + m_SaveData: [] + m_ContainerData: [] + m_DynamicPanelContainerData: [] + m_OverlaysVisible: 1 + m_DynamicPanelBehavior: 0 + m_SceneHierarchy: + m_TreeViewState: + scrollPos: {x: 0, y: 0} + m_SelectedIDs: [] + m_LastClickedID: + m_Data: 0 + m_ExpandedIDs: + - m_Data: -11044 + - m_Data: -9940 + - m_Data: -8732 + - m_Data: -7626 + - m_Data: -5964 + - m_Data: -4930 + - m_Data: -3646 + - m_Data: -2614 + - m_Data: -1356 + m_RenameOverlay: + m_UserAcceptedRename: 0 + m_Name: + m_OriginalName: + m_EditFieldRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 0 + height: 0 + m_UserData: + m_Data: 0 + m_IsWaitingForDelay: 0 + m_IsRenaming: 0 + m_OriginalEventType: 11 + m_IsRenamingFilename: 0 + m_TrimLeadingAndTrailingWhitespace: 0 + m_ClientGUIView: {fileID: 8} + m_SearchString: + m_ExpandedScenes: [] + m_CurrenRootInstanceID: 0 + m_LockTracker: + m_IsLocked: 0 + m_CurrentSortingName: TransformSorting + m_WindowGUID: 4c969a2b90040154d917609493e03593 +--- !u!114 &22 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12013, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 200, y: 200} + m_MaxSize: {x: 4000, y: 4000} + m_TitleContent: + m_Text: Scene + m_Image: {fileID: 8634526014445323508, guid: 0000000000000000d000000000000000, type: 0} + m_Tooltip: + m_TextWithWhitespace: "Scene\u200B" + m_Pos: + serializedVersion: 2 + x: 201 + y: 24 + width: 996.4 + height: 661.2 + m_SerializedDataModeController: + m_DataMode: 0 + m_PreferredDataMode: 0 + m_SupportedDataModes: + isAutomatic: 1 + m_ViewDataDictionary: {fileID: 0} + m_OverlayCanvas: + m_LastAppliedPresetName: Default + m_SaveData: + - dockPosition: 0 + containerId: overlay-toolbar__top + displayed: 1 + id: Tool Settings + index: 1 + contents: '{"m_Layout":1,"m_Collapsed":false,"m_Folded":false,"m_Floating":false,"m_FloatingSnapOffset":{"x":24.0,"y":-25.60003662109375},"m_SnapOffsetDelta":{"x":0.0,"y":0.0},"m_FloatingSnapCorner":2,"m_Size":{"x":0.0,"y":0.0},"m_SizeOverridden":false}' + floating: 0 + collapsed: 0 + snapOffset: {x: 24, y: -25.600037} + snapOffsetDelta: {x: 0, y: 0} + snapCorner: 2 + layout: 1 + size: {x: 0, y: 0} + sizeOverridden: 0 + - dockPosition: 0 + containerId: overlay-toolbar__top + displayed: 1 + id: unity-grid-and-snap-toolbar + index: 2 + contents: '{"m_Layout":1,"m_Collapsed":false,"m_Folded":false,"m_Floating":false,"m_FloatingSnapOffset":{"x":24.0,"y":149.0},"m_SnapOffsetDelta":{"x":0.0,"y":0.0},"m_FloatingSnapCorner":0,"m_Size":{"x":0.0,"y":0.0},"m_SizeOverridden":false}' + floating: 0 + collapsed: 0 + snapOffset: {x: 24, y: 149} + snapOffsetDelta: {x: 0, y: 0} + snapCorner: 0 + layout: 1 + size: {x: 0, y: 0} + sizeOverridden: 0 + - dockPosition: 1 + containerId: overlay-toolbar__top + displayed: 1 + id: unity-scene-view-toolbar + index: 0 + contents: '{"m_Layout":1,"m_Collapsed":false,"m_Folded":false,"m_Floating":false,"m_FloatingSnapOffset":{"x":-287.199951171875,"y":24.799999237060548},"m_SnapOffsetDelta":{"x":0.0,"y":0.0},"m_FloatingSnapCorner":1,"m_Size":{"x":0.0,"y":0.0},"m_SizeOverridden":false}' + floating: 0 + collapsed: 0 + snapOffset: {x: -287.19995, y: 24.8} + snapOffsetDelta: {x: 0, y: 0} + snapCorner: 1 + layout: 1 + size: {x: 0, y: 0} + sizeOverridden: 0 + - dockPosition: 1 + containerId: overlay-toolbar__top + displayed: 0 + id: unity-search-toolbar + index: 2 + contents: '{"m_Layout":1,"m_Collapsed":false,"m_Folded":false,"m_Floating":false,"m_FloatingSnapOffset":{"x":0.0,"y":0.0},"m_SnapOffsetDelta":{"x":0.0,"y":0.0},"m_FloatingSnapCorner":1,"m_Size":{"x":0.0,"y":0.0},"m_SizeOverridden":false}' + floating: 0 + collapsed: 0 + snapOffset: {x: 0, y: 0} + snapOffsetDelta: {x: 0, y: 0} + snapCorner: 1 + layout: 1 + size: {x: 0, y: 0} + sizeOverridden: 0 + - dockPosition: 0 + containerId: overlay-container--left + displayed: 1 + id: unity-transform-toolbar + index: 0 + contents: '{"m_Layout":2,"m_Collapsed":false,"m_Folded":false,"m_Floating":false,"m_FloatingSnapOffset":{"x":24.0,"y":24.799999237060548},"m_SnapOffsetDelta":{"x":0.0,"y":0.0},"m_FloatingSnapCorner":0,"m_Size":{"x":0.0,"y":0.0},"m_SizeOverridden":false}' + floating: 0 + collapsed: 0 + snapOffset: {x: 24, y: 24.8} + snapOffsetDelta: {x: 0, y: 0} + snapCorner: 0 + layout: 2 + size: {x: 0, y: 0} + sizeOverridden: 0 + - dockPosition: 0 + containerId: overlay-container--left + displayed: 1 + id: unity-component-tools + index: 1 + contents: + floating: 0 + collapsed: 0 + snapOffset: {x: 0, y: 197} + snapOffsetDelta: {x: 0, y: 0} + snapCorner: 0 + layout: 2 + size: {x: 0, y: 0} + sizeOverridden: 0 + - dockPosition: 0 + containerId: overlay-container--right + displayed: 1 + id: Orientation + index: 0 + contents: '{"m_Layout":4,"m_Collapsed":false,"m_Folded":false,"m_Floating":false,"m_FloatingSnapOffset":{"x":24.0,"y":86.0},"m_SnapOffsetDelta":{"x":0.0,"y":0.0},"m_FloatingSnapCorner":0,"m_Size":{"x":0.0,"y":0.0},"m_SizeOverridden":false}' + floating: 0 + collapsed: 0 + snapOffset: {x: 24, y: 86} + snapOffsetDelta: {x: 0, y: 0} + snapCorner: 0 + layout: 4 + size: {x: 0, y: 0} + sizeOverridden: 0 + - dockPosition: 1 + containerId: overlay-container--right + displayed: 0 + id: Scene View/Light Settings + index: 0 + contents: '{"m_Layout":4,"m_Collapsed":false,"m_Folded":false,"m_Floating":false,"m_FloatingSnapOffset":{"x":0.0,"y":0.0},"m_SnapOffsetDelta":{"x":0.0,"y":0.0},"m_FloatingSnapCorner":0,"m_Size":{"x":0.0,"y":0.0},"m_SizeOverridden":false}' + floating: 0 + collapsed: 0 + snapOffset: {x: 0, y: 0} + snapOffsetDelta: {x: 0, y: 0} + snapCorner: 0 + layout: 4 + size: {x: 0, y: 0} + sizeOverridden: 0 + - dockPosition: 1 + containerId: overlay-container--right + displayed: 0 + id: Scene View/Camera + index: 1 + contents: + floating: 0 + collapsed: 0 + snapOffset: {x: 0, y: 0} + snapOffsetDelta: {x: 0, y: 24.8} + snapCorner: 0 + layout: 4 + size: {x: 0, y: 0} + sizeOverridden: 0 + - dockPosition: 1 + containerId: overlay-container--right + displayed: 0 + id: Scene View/Cloth Constraints + index: 1 + contents: '{"m_Layout":4,"m_Collapsed":false,"m_Folded":false,"m_Floating":false,"m_FloatingSnapOffset":{"x":0.0,"y":0.0},"m_SnapOffsetDelta":{"x":0.0,"y":0.0},"m_FloatingSnapCorner":0,"m_Size":{"x":0.0,"y":0.0},"m_SizeOverridden":false}' + floating: 0 + collapsed: 0 + snapOffset: {x: 0, y: 0} + snapOffsetDelta: {x: 0, y: 0} + snapCorner: 0 + layout: 4 + size: {x: 0, y: 0} + sizeOverridden: 0 + - dockPosition: 1 + containerId: overlay-container--right + displayed: 0 + id: Scene View/Cloth Collisions + index: 2 + contents: '{"m_Layout":4,"m_Collapsed":false,"m_Folded":false,"m_Floating":false,"m_FloatingSnapOffset":{"x":0.0,"y":0.0},"m_SnapOffsetDelta":{"x":0.0,"y":0.0},"m_FloatingSnapCorner":0,"m_Size":{"x":0.0,"y":0.0},"m_SizeOverridden":false}' + floating: 0 + collapsed: 0 + snapOffset: {x: 0, y: 0} + snapOffsetDelta: {x: 0, y: 0} + snapCorner: 0 + layout: 4 + size: {x: 0, y: 0} + sizeOverridden: 0 + - dockPosition: 1 + containerId: overlay-container--right + displayed: 0 + id: Scene View/Navmesh Display + index: 4 + contents: + floating: 0 + collapsed: 0 + snapOffset: {x: 0, y: 24.8} + snapOffsetDelta: {x: 0, y: 0} + snapCorner: 0 + layout: 4 + size: {x: 0, y: 0} + sizeOverridden: 0 + - dockPosition: 1 + containerId: overlay-container--right + displayed: 0 + id: Scene View/Agent Display + index: 5 + contents: + floating: 0 + collapsed: 0 + snapOffset: {x: 0, y: 0} + snapOffsetDelta: {x: 0, y: 24.8} + snapCorner: 0 + layout: 4 + size: {x: 0, y: 0} + sizeOverridden: 0 + - dockPosition: 1 + containerId: overlay-container--right + displayed: 0 + id: Scene View/Obstacle Display + index: 6 + contents: + floating: 0 + collapsed: 0 + snapOffset: {x: 0, y: 0} + snapOffsetDelta: {x: 0, y: 24.8} + snapCorner: 0 + layout: 4 + size: {x: 0, y: 0} + sizeOverridden: 0 + - dockPosition: 1 + containerId: overlay-container--right + displayed: 0 + id: Scene View/Occlusion Culling + index: 3 + contents: '{"m_Layout":4,"m_Collapsed":false,"m_Folded":false,"m_Floating":false,"m_FloatingSnapOffset":{"x":0.0,"y":0.0},"m_SnapOffsetDelta":{"x":0.0,"y":0.0},"m_FloatingSnapCorner":0,"m_Size":{"x":0.0,"y":0.0},"m_SizeOverridden":false}' + floating: 0 + collapsed: 0 + snapOffset: {x: 0, y: 0} + snapOffsetDelta: {x: 0, y: 0} + snapCorner: 0 + layout: 4 + size: {x: 0, y: 0} + sizeOverridden: 0 + - dockPosition: 1 + containerId: overlay-container--right + displayed: 0 + id: Scene View/Physics Debugger + index: 4 + contents: '{"m_Layout":4,"m_Collapsed":false,"m_Folded":false,"m_Floating":false,"m_FloatingSnapOffset":{"x":0.0,"y":0.0},"m_SnapOffsetDelta":{"x":0.0,"y":0.0},"m_FloatingSnapCorner":0,"m_Size":{"x":0.0,"y":0.0},"m_SizeOverridden":false}' + floating: 0 + collapsed: 0 + snapOffset: {x: 0, y: 0} + snapOffsetDelta: {x: 0, y: 0} + snapCorner: 0 + layout: 4 + size: {x: 0, y: 0} + sizeOverridden: 0 + - dockPosition: 1 + containerId: overlay-container--right + displayed: 0 + id: Scene View/Scene Visibility + index: 6 + contents: '{"m_Layout":4,"m_Collapsed":false,"m_Folded":false,"m_Floating":false,"m_FloatingSnapOffset":{"x":0.0,"y":0.0},"m_SnapOffsetDelta":{"x":0.0,"y":0.0},"m_FloatingSnapCorner":0,"m_Size":{"x":0.0,"y":0.0},"m_SizeOverridden":false}' + floating: 0 + collapsed: 0 + snapOffset: {x: 0, y: 0} + snapOffsetDelta: {x: 0, y: 0} + snapCorner: 0 + layout: 4 + size: {x: 0, y: 0} + sizeOverridden: 0 + - dockPosition: 1 + containerId: overlay-container--right + displayed: 0 + id: Scene View/Particles + index: 7 + contents: '{"m_Layout":4,"m_Collapsed":false,"m_Folded":false,"m_Floating":false,"m_FloatingSnapOffset":{"x":0.0,"y":24.799999237060548},"m_SnapOffsetDelta":{"x":0.0,"y":0.0},"m_FloatingSnapCorner":0,"m_Size":{"x":0.0,"y":0.0},"m_SizeOverridden":false}' + floating: 0 + collapsed: 0 + snapOffset: {x: 0, y: 24.8} + snapOffsetDelta: {x: 0, y: 0} + snapCorner: 0 + layout: 4 + size: {x: 0, y: 0} + sizeOverridden: 0 + - dockPosition: 1 + containerId: overlay-container--right + displayed: 0 + id: Scene View/Tilemap + index: 11 + contents: + floating: 0 + collapsed: 0 + snapOffset: {x: 0, y: 0} + snapOffsetDelta: {x: 0, y: 0} + snapCorner: 0 + layout: 4 + size: {x: 0, y: 0} + sizeOverridden: 0 + - dockPosition: 1 + containerId: overlay-container--right + displayed: 0 + id: Scene View/Tilemap Palette Helper + index: 12 + contents: + floating: 0 + collapsed: 0 + snapOffset: {x: 0, y: 0} + snapOffsetDelta: {x: 0, y: 0} + snapCorner: 0 + layout: 4 + size: {x: 0, y: 0} + sizeOverridden: 0 + - dockPosition: 1 + containerId: overlay-toolbar__top + displayed: 0 + id: Scene View/Open Tile Palette + index: 2 + contents: '{"m_Layout":4,"m_Collapsed":false,"m_Folded":false,"m_Floating":false,"m_FloatingSnapOffset":{"x":24.0,"y":0.0},"m_SnapOffsetDelta":{"x":0.0,"y":0.0},"m_FloatingSnapCorner":0,"m_Size":{"x":0.0,"y":0.0},"m_SizeOverridden":false}' + floating: 0 + collapsed: 0 + snapOffset: {x: 24, y: 0} + snapOffsetDelta: {x: 0, y: 0} + snapCorner: 0 + layout: 4 + size: {x: 0, y: 0} + sizeOverridden: 0 + - dockPosition: 1 + containerId: overlay-toolbar__top + displayed: 0 + id: Scene View/Tilemap Focus + index: 4 + contents: '{"m_Layout":4,"m_Collapsed":false,"m_Folded":false,"m_Floating":false,"m_FloatingSnapOffset":{"x":-142.4000244140625,"y":24.799999237060548},"m_SnapOffsetDelta":{"x":0.0,"y":0.0},"m_FloatingSnapCorner":1,"m_Size":{"x":0.0,"y":0.0},"m_SizeOverridden":false}' + floating: 0 + collapsed: 0 + snapOffset: {x: -142.40002, y: 24.8} + snapOffsetDelta: {x: 0, y: 0} + snapCorner: 1 + layout: 4 + size: {x: 0, y: 0} + sizeOverridden: 0 + - dockPosition: 1 + containerId: overlay-container--right + displayed: 0 + id: Scene View/Animation Rigging + index: 7 + contents: + floating: 0 + collapsed: 0 + snapOffset: {x: 0, y: 24.8} + snapOffsetDelta: {x: 0, y: 0} + snapCorner: 0 + layout: 4 + size: {x: 0, y: 0} + sizeOverridden: 0 + - dockPosition: 1 + containerId: overlay-container--right + displayed: 0 + id: unity-spline-inspector + index: 8 + contents: '{"m_Layout":4,"m_Collapsed":false,"m_Folded":false,"m_Floating":false,"m_FloatingSnapOffset":{"x":24.0,"y":0.0},"m_SnapOffsetDelta":{"x":0.0,"y":0.0},"m_FloatingSnapCorner":0,"m_Size":{"x":0.0,"y":0.0},"m_SizeOverridden":false}' + floating: 0 + collapsed: 0 + snapOffset: {x: 24, y: 0} + snapOffsetDelta: {x: 0, y: 0} + snapCorner: 0 + layout: 4 + size: {x: 0, y: 0} + sizeOverridden: 0 + - dockPosition: 1 + containerId: overlay-toolbar__top + displayed: 0 + id: GHPC Tools + index: 4 + contents: + floating: 0 + collapsed: 0 + snapOffset: {x: 0, y: 0} + snapOffsetDelta: {x: 0, y: 24.8} + snapCorner: 0 + layout: 4 + size: {x: 0, y: 0} + sizeOverridden: 0 + - dockPosition: 1 + containerId: overlay-container--right + displayed: 1 + id: AINavigationOverlay + index: 5 + contents: '{"m_Layout":4,"m_Collapsed":false,"m_Folded":false,"m_Floating":false,"m_FloatingSnapOffset":{"x":24.0,"y":48.0},"m_SnapOffsetDelta":{"x":0.0,"y":0.0},"m_FloatingSnapCorner":0,"m_Size":{"x":0.0,"y":0.0},"m_SizeOverridden":false}' + floating: 0 + collapsed: 0 + snapOffset: {x: 24, y: 48} + snapOffsetDelta: {x: 0, y: 0} + snapCorner: 0 + layout: 4 + size: {x: 0, y: 0} + sizeOverridden: 0 + - dockPosition: 1 + containerId: overlay-container--right + displayed: 0 + id: Scene View/TrailRenderer + index: 8 + contents: '{"m_Layout":4,"m_Collapsed":false,"m_Folded":false,"m_Floating":false,"m_FloatingSnapOffset":{"x":48.0,"y":48.0},"m_SnapOffsetDelta":{"x":0.0,"y":0.0},"m_FloatingSnapCorner":0,"m_Size":{"x":0.0,"y":0.0},"m_SizeOverridden":false}' + floating: 0 + collapsed: 0 + snapOffset: {x: 48, y: 48} + snapOffsetDelta: {x: 0, y: 0} + snapCorner: 0 + layout: 4 + size: {x: 0, y: 0} + sizeOverridden: 0 + - dockPosition: 1 + containerId: overlay-container--right + displayed: 1 + id: UnityEditor.SceneViewCameraOverlay + index: 9 + contents: + floating: 0 + collapsed: 0 + snapOffset: {x: 0, y: 48} + snapOffsetDelta: {x: 0, y: 0} + snapCorner: 0 + layout: 4 + size: {x: 0, y: 0} + sizeOverridden: 0 + - dockPosition: 0 + containerId: overlay-toolbar__top + displayed: 0 + id: Brush Attributes + index: 3 + contents: '{"m_Layout":4,"m_Collapsed":false,"m_Folded":false,"m_Floating":false,"m_FloatingSnapOffset":{"x":24.0,"y":0.0},"m_SnapOffsetDelta":{"x":0.0,"y":0.0},"m_FloatingSnapCorner":0,"m_Size":{"x":0.0,"y":0.0},"m_SizeOverridden":false}' + floating: 0 + collapsed: 0 + snapOffset: {x: 24, y: 0} + snapOffsetDelta: {x: 0, y: 0} + snapCorner: 0 + layout: 4 + size: {x: 0, y: 0} + sizeOverridden: 0 + - dockPosition: 1 + containerId: overlay-toolbar__top + displayed: 1 + id: unity-scene-view-camera-mode-toolbar + index: 1 + contents: '{"m_Layout":1,"m_Collapsed":false,"m_Folded":false,"m_Floating":false,"m_FloatingSnapOffset":{"x":-184.0,"y":24.799999237060548},"m_SnapOffsetDelta":{"x":0.0,"y":0.0},"m_FloatingSnapCorner":1,"m_Size":{"x":0.0,"y":0.0},"m_SizeOverridden":false}' + floating: 0 + collapsed: 0 + snapOffset: {x: -184, y: 24.8} + snapOffsetDelta: {x: 0, y: 0} + snapCorner: 1 + layout: 1 + size: {x: 0, y: 0} + sizeOverridden: 0 + - dockPosition: 0 + containerId: overlay-toolbar__left + displayed: 0 + id: Terrain Tools + index: 0 + contents: '{"m_Layout":4,"m_Collapsed":false,"m_Folded":false,"m_Floating":false,"m_FloatingSnapOffset":{"x":24.0,"y":0.0},"m_SnapOffsetDelta":{"x":0.0,"y":0.0},"m_FloatingSnapCorner":0,"m_Size":{"x":0.0,"y":0.0},"m_SizeOverridden":false}' + floating: 0 + collapsed: 0 + snapOffset: {x: 24, y: 0} + snapOffsetDelta: {x: 0, y: 0} + snapCorner: 0 + layout: 4 + size: {x: 0, y: 0} + sizeOverridden: 0 + - dockPosition: 0 + containerId: overlay-toolbar__left + displayed: 0 + id: Brush Masks + index: 1 + contents: '{"m_Layout":4,"m_Collapsed":false,"m_Folded":false,"m_Floating":false,"m_FloatingSnapOffset":{"x":24.0,"y":0.0},"m_SnapOffsetDelta":{"x":0.0,"y":0.0},"m_FloatingSnapCorner":0,"m_Size":{"x":0.0,"y":0.0},"m_SizeOverridden":false}' + floating: 0 + collapsed: 0 + snapOffset: {x: 24, y: 0} + snapOffsetDelta: {x: 0, y: 0} + snapCorner: 0 + layout: 4 + size: {x: 0, y: 0} + sizeOverridden: 0 + - dockPosition: 1 + containerId: overlay-container--left + displayed: 0 + id: Scene View/Lighting Visualization Colors + index: 0 + contents: '{"m_Layout":4,"m_Collapsed":false,"m_Folded":false,"m_Floating":false,"m_FloatingSnapOffset":{"x":0.0,"y":0.0},"m_SnapOffsetDelta":{"x":0.0,"y":0.0},"m_FloatingSnapCorner":0,"m_Size":{"x":0.0,"y":0.0},"m_SizeOverridden":false}' + floating: 0 + collapsed: 0 + snapOffset: {x: 0, y: 0} + snapOffsetDelta: {x: 0, y: 0} + snapCorner: 0 + layout: 4 + size: {x: 0, y: 0} + sizeOverridden: 0 + - dockPosition: 1 + containerId: overlay-container--left + displayed: 1 + id: Overlays/OverlayMenu + index: 1 + contents: '{"m_Layout":1,"m_Collapsed":false,"m_Folded":false,"m_Floating":false,"m_FloatingSnapOffset":{"x":24.0,"y":24.799999237060548},"m_SnapOffsetDelta":{"x":0.0,"y":0.0},"m_FloatingSnapCorner":0,"m_Size":{"x":0.0,"y":0.0},"m_SizeOverridden":false}' + floating: 0 + collapsed: 0 + snapOffset: {x: 24, y: 24.8} + snapOffsetDelta: {x: 0, y: 0} + snapCorner: 0 + layout: 1 + size: {x: 0, y: 0} + sizeOverridden: 0 + - dockPosition: 1 + containerId: overlay-container--right + displayed: 0 + id: APV Overlay + index: 9 + contents: '{"m_Layout":4,"m_Collapsed":false,"m_Folded":false,"m_Floating":false,"m_FloatingSnapOffset":{"x":0.0,"y":0.0},"m_SnapOffsetDelta":{"x":0.0,"y":0.0},"m_FloatingSnapCorner":0,"m_Size":{"x":0.0,"y":0.0},"m_SizeOverridden":false}' + floating: 0 + collapsed: 0 + snapOffset: {x: 0, y: 0} + snapOffsetDelta: {x: 0, y: 0} + snapCorner: 0 + layout: 4 + size: {x: 0, y: 0} + sizeOverridden: 0 + - dockPosition: 1 + containerId: overlay-container--right + displayed: 0 + id: SceneView/CamerasOverlay + index: 10 + contents: '{"m_Layout":4,"m_Collapsed":false,"m_Folded":false,"m_Floating":false,"m_FloatingSnapOffset":{"x":0.0,"y":0.0},"m_SnapOffsetDelta":{"x":0.0,"y":0.0},"m_FloatingSnapCorner":0,"m_Size":{"x":0.0,"y":0.0},"m_SizeOverridden":false}' + floating: 0 + collapsed: 0 + snapOffset: {x: 0, y: 0} + snapOffsetDelta: {x: 0, y: 0} + snapCorner: 0 + layout: 4 + size: {x: 0, y: 0} + sizeOverridden: 0 + - dockPosition: 1 + containerId: overlay-container--right + displayed: 0 + id: Scene View/PBR Validation Settings + index: 11 + contents: '{"m_Layout":4,"m_Collapsed":false,"m_Folded":false,"m_Floating":false,"m_FloatingSnapOffset":{"x":0.0,"y":0.0},"m_SnapOffsetDelta":{"x":0.0,"y":0.0},"m_FloatingSnapCorner":0,"m_Size":{"x":0.0,"y":0.0},"m_SizeOverridden":false}' + floating: 0 + collapsed: 0 + snapOffset: {x: 0, y: 0} + snapOffsetDelta: {x: 0, y: 0} + snapCorner: 0 + layout: 4 + size: {x: 0, y: 0} + sizeOverridden: 0 + - dockPosition: 1 + containerId: overlay-container--right + displayed: 0 + id: Scene View/Tile Palette Clipboard + index: 0 + contents: '{"m_Layout":4,"m_Collapsed":false,"m_Folded":false,"m_Floating":false,"m_FloatingSnapOffset":{"x":-395.1999816894531,"y":-304.79998779296877},"m_SnapOffsetDelta":{"x":-0.000030517578125,"y":0.0},"m_FloatingSnapCorner":3,"m_Size":{"x":0.0,"y":0.0},"m_SizeOverridden":false}' + floating: 0 + collapsed: 0 + snapOffset: {x: -395.19998, y: -304.8} + snapOffsetDelta: {x: -0.000030517578, y: 0} + snapCorner: 3 + layout: 4 + size: {x: 0, y: 0} + sizeOverridden: 0 + - dockPosition: 1 + containerId: overlay-container--right + displayed: 0 + id: Scene View/Tile Palette Brush Pick + index: 2 + contents: '{"m_Layout":4,"m_Collapsed":false,"m_Folded":false,"m_Floating":false,"m_FloatingSnapOffset":{"x":-395.1999816894531,"y":-304.79998779296877},"m_SnapOffsetDelta":{"x":-0.000030517578125,"y":0.0},"m_FloatingSnapCorner":3,"m_Size":{"x":0.0,"y":0.0},"m_SizeOverridden":false}' + floating: 0 + collapsed: 0 + snapOffset: {x: -395.19998, y: -304.8} + snapOffsetDelta: {x: -0.000030517578, y: 0} + snapCorner: 3 + layout: 4 + size: {x: 0, y: 0} + sizeOverridden: 0 + - dockPosition: 1 + containerId: overlay-container--right + displayed: 0 + id: Scene View/Path + index: 14 + contents: '{"m_Layout":4,"m_Collapsed":false,"m_Folded":false,"m_Floating":false,"m_FloatingSnapOffset":{"x":0.0,"y":0.0},"m_SnapOffsetDelta":{"x":0.0,"y":0.0},"m_FloatingSnapCorner":0,"m_Size":{"x":0.0,"y":0.0},"m_SizeOverridden":false}' + floating: 0 + collapsed: 0 + snapOffset: {x: 0, y: 0} + snapOffsetDelta: {x: 0, y: 0} + snapCorner: 0 + layout: 4 + size: {x: 0, y: 0} + sizeOverridden: 0 + - dockPosition: 1 + containerId: overlay-container--right + displayed: 0 + id: Scene View/Sprite Swap + index: 15 + contents: '{"m_Layout":4,"m_Collapsed":false,"m_Folded":false,"m_Floating":false,"m_FloatingSnapOffset":{"x":0.0,"y":0.0},"m_SnapOffsetDelta":{"x":0.0,"y":0.0},"m_FloatingSnapCorner":0,"m_Size":{"x":0.0,"y":0.0},"m_SizeOverridden":false}' + floating: 0 + collapsed: 0 + snapOffset: {x: 0, y: 0} + snapOffsetDelta: {x: 0, y: 0} + snapCorner: 0 + layout: 4 + size: {x: 0, y: 0} + sizeOverridden: 0 + - dockPosition: 0 + containerId: overlay-toolbar__top + displayed: 0 + id: unity-tool-contexts-toolbar + index: 0 + contents: '{"m_Layout":4,"m_Collapsed":false,"m_Folded":false,"m_Floating":false,"m_FloatingSnapOffset":{"x":0.0,"y":0.0},"m_SnapOffsetDelta":{"x":0.0,"y":0.0},"m_FloatingSnapCorner":0,"m_Size":{"x":0.0,"y":0.0},"m_SizeOverridden":false}' + floating: 0 + collapsed: 0 + snapOffset: {x: 0, y: 0} + snapOffsetDelta: {x: 0, y: 0} + snapCorner: 0 + layout: 4 + size: {x: 0, y: 0} + sizeOverridden: 0 + m_ContainerData: + - containerId: overlay-toolbar__top + scrollOffset: 0 + - containerId: overlay-toolbar__left + scrollOffset: 0 + - containerId: overlay-container--left + scrollOffset: 0 + - containerId: overlay-container--right + scrollOffset: 0 + - containerId: overlay-toolbar__right + scrollOffset: 0 + - containerId: overlay-toolbar__bottom + scrollOffset: 0 + - containerId: Floating + scrollOffset: 0 + - containerId: overlay-dynamic-panel--left + scrollOffset: 0 + - containerId: overlay-dynamic-panel--right + scrollOffset: 0 + m_DynamicPanelContainerData: + - containerId: overlay-dynamic-panel--left + width: 56 + saveData: + state: 0 + overlayData: [] + - containerId: overlay-dynamic-panel--right + width: 56 + saveData: + state: 0 + overlayData: [] + m_OverlaysVisible: 1 + m_DynamicPanelBehavior: 0 + m_WindowGUID: cc27987af1a868c49b0894db9c0f5429 + m_Gizmos: 1 + m_OverrideSceneCullingMask: 6917529027641081856 + m_SceneIsLit: 0 + m_SceneLighting: 1 + m_2DMode: 0 + m_isRotationLocked: 0 + m_PlayAudio: 0 + m_AudioPlay: 0 + m_DebugDrawModesUseInteractiveLightBakingData: 0 + m_Position: + m_Target: {x: 0, y: 0, z: 0} + speed: 2 + m_Value: {x: 0, y: 0, z: 0} + m_RenderMode: 0 + m_CameraMode: + drawMode: 0 + name: Shaded + section: Shading Mode + m_ValidateTrueMetals: 0 + m_DoValidateTrueMetals: 0 + m_SceneViewState: + m_AlwaysRefresh: 0 + showFog: 1 + showSkybox: 0 + showFlares: 1 + showImageEffects: 1 + showParticleSystems: 1 + showVisualEffectGraphs: 1 + m_FxEnabled: 1 + m_Grid: + xGrid: + m_Fade: + m_Target: 0 + speed: 2 + m_Value: 0 + m_Color: {r: 0.5, g: 0.5, b: 0.5, a: 0.4} + m_Pivot: {x: 0, y: 0, z: 0} + m_Size: {x: 1, y: 1} + yGrid: + m_Fade: + m_Target: 1 + speed: 2 + m_Value: 1 + m_Color: {r: 0.5, g: 0.5, b: 0.5, a: 0.4} + m_Pivot: {x: 0, y: 0, z: 0} + m_Size: {x: 1, y: 1} + zGrid: + m_Fade: + m_Target: 0 + speed: 2 + m_Value: 0 + m_Color: {r: 0.5, g: 0.5, b: 0.5, a: 0.4} + m_Pivot: {x: 0, y: 0, z: 0} + m_Size: {x: 1, y: 1} + m_ShowGrid: 1 + m_GridAxis: 1 + m_gridOpacity: 0.5 + m_Rotation: + m_Target: {x: -0.08717229, y: 0.89959055, z: -0.21045254, w: -0.3726226} + speed: 2 + m_Value: {x: -0.08717229, y: 0.89959055, z: -0.21045254, w: -0.3726226} + m_Size: + m_Target: 10 + speed: 2 + m_Value: 10 + m_Ortho: + m_Target: 0 + speed: 2 + m_Value: 0 + m_CameraSettings: + m_Speed: 1.0005 + m_SpeedNormalized: 0.5 + m_SpeedMin: 0.001 + m_SpeedMax: 2 + m_EasingEnabled: 1 + m_EasingDuration: 0.4 + m_AccelerationEnabled: 1 + m_FieldOfViewHorizontalOrVertical: 60 + m_NearClip: 0.03 + m_FarClip: 10000 + m_DynamicClip: 1 + m_OcclusionCulling: 0 + m_LastSceneViewRotation: {x: -0.08717229, y: 0.89959055, z: -0.21045254, w: -0.3726226} + m_LastSceneViewOrtho: 0 + m_Viewpoint: + m_SceneView: {fileID: 22} + m_CameraOverscanSettings: + m_Opacity: 50 + m_Scale: 1 + m_ReplacementShader: {fileID: 0} + m_ReplacementString: + m_SceneVisActive: 1 + m_LastLockedObject: {fileID: 0} + m_LastDebugDrawMode: + drawMode: 35 + name: Contributors / Receivers + section: Lighting + m_ViewIsLockedToObject: 0 +--- !u!114 &23 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12014, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 230, y: 250} + m_MaxSize: {x: 10000, y: 10000} + m_TitleContent: + m_Text: Project + m_Image: {fileID: -5179483145760003458, guid: 0000000000000000d000000000000000, type: 0} + m_Tooltip: + m_TextWithWhitespace: "Project\u200B" + m_Pos: + serializedVersion: 2 + x: 0 + y: 24 + width: 615.8 + height: 427.60004 + m_SerializedDataModeController: + m_DataMode: 0 + m_PreferredDataMode: 0 + m_SupportedDataModes: + isAutomatic: 1 + m_ViewDataDictionary: {fileID: 0} + m_OverlayCanvas: + m_LastAppliedPresetName: Default + m_SaveData: [] + m_ContainerData: [] + m_DynamicPanelContainerData: [] + m_OverlaysVisible: 1 + m_DynamicPanelBehavior: 0 + m_SearchFilter: + m_NameFilter: + m_ClassNames: [] + m_AssetLabels: [] + m_AssetBundleNames: [] + m_ReferencingInstanceIDs: + m_SceneHandles: [] + m_ShowAllHits: 0 + m_SkipHidden: 0 + m_SearchArea: 1 + m_Folders: + - Assets/Scripts + m_Globs: [] + m_ProductIds: + m_AnyWithAssetOrigin: 0 + m_OriginalText: + m_ImportLogFlags: 0 + m_FilterByTypeIntersection: 0 + m_ViewMode: 1 + m_StartGridSize: 44 + m_LastFolders: + - Assets/Scripts + m_LastFoldersGridSize: 44 + m_LastProjectPath: F:\Users\kavi\Projects\BracerLib + m_LockTracker: + m_IsLocked: 0 + m_LastLocalAssetsSearchArea: 1 + m_FolderTreeState: + scrollPos: {x: 0, y: 0} + m_SelectedIDs: + - m_Data: 47478 + m_LastClickedID: + m_Data: 47478 + m_ExpandedIDs: + - m_Data: 0 + - m_Data: 47474 + - m_Data: 47476 + - m_Data: 47478 + - m_Data: 47480 + m_RenameOverlay: + m_UserAcceptedRename: 0 + m_Name: + m_OriginalName: + m_EditFieldRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 0 + height: 0 + m_UserData: + m_Data: 0 + m_IsWaitingForDelay: 0 + m_IsRenaming: 0 + m_OriginalEventType: 11 + m_IsRenamingFilename: 1 + m_TrimLeadingAndTrailingWhitespace: 0 + m_ClientGUIView: {fileID: 12} + m_SearchString: + m_CreateAssetUtility: + m_EndAction: {fileID: 0} + m_InstanceID: 0 + m_Path: + m_Icon: {fileID: 0} + m_ResourceFile: + m_AssetTreeState: + scrollPos: {x: 0, y: 0} + m_SelectedIDs: [] + m_LastClickedID: + m_Data: 0 + m_ExpandedIDs: + - m_Data: 0 + - m_Data: 47474 + - m_Data: 47476 + - m_Data: 47478 + - m_Data: 47480 + m_RenameOverlay: + m_UserAcceptedRename: 0 + m_Name: + m_OriginalName: + m_EditFieldRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 0 + height: 0 + m_UserData: + m_Data: 0 + m_IsWaitingForDelay: 0 + m_IsRenaming: 0 + m_OriginalEventType: 11 + m_IsRenamingFilename: 1 + m_TrimLeadingAndTrailingWhitespace: 0 + m_ClientGUIView: {fileID: 0} + m_SearchString: + m_CreateAssetUtility: + m_EndAction: {fileID: 0} + m_InstanceID: 0 + m_Path: + m_Icon: {fileID: 0} + m_ResourceFile: + m_ListAreaState: + m_SelectedInstanceIDs: [] + m_LastClickedInstanceID: 0 + m_HadKeyboardFocusLastEvent: 0 + m_ExpandedInstanceIDs: + - m_Data: 47914 + m_RenameOverlay: + m_UserAcceptedRename: 0 + m_Name: + m_OriginalName: + m_EditFieldRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 0 + height: 0 + m_UserData: + m_Data: 0 + m_IsWaitingForDelay: 0 + m_IsRenaming: 0 + m_OriginalEventType: 11 + m_IsRenamingFilename: 1 + m_TrimLeadingAndTrailingWhitespace: 0 + m_ClientGUIView: {fileID: 12} + m_CreateAssetUtility: + m_EndAction: {fileID: 0} + m_InstanceID: 0 + m_Path: + m_Icon: {fileID: 0} + m_ResourceFile: + m_NewAssetIndexInList: -1 + m_ScrollPosition: {x: 0, y: 0} + m_GridSize: 44 + m_SkipHiddenPackages: 0 + m_DirectoriesAreaWidth: 240.2 +--- !u!114 &24 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12003, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 100, y: 100} + m_MaxSize: {x: 4000, y: 4000} + m_TitleContent: + m_Text: Console + m_Image: {fileID: -4950941429401207979, guid: 0000000000000000d000000000000000, type: 0} + m_Tooltip: + m_TextWithWhitespace: "Console\u200B" + m_Pos: + serializedVersion: 2 + x: 617.8 + y: 24 + width: 662.8 + height: 427.60004 + m_SerializedDataModeController: + m_DataMode: 0 + m_PreferredDataMode: 0 + m_SupportedDataModes: + isAutomatic: 1 + m_ViewDataDictionary: {fileID: 0} + m_OverlayCanvas: + m_LastAppliedPresetName: Default + m_SaveData: [] + m_ContainerData: [] + m_DynamicPanelContainerData: [] + m_OverlaysVisible: 1 + m_DynamicPanelBehavior: 0 +--- !u!114 &25 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 12071, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 100, y: 100} + m_MaxSize: {x: 4000, y: 4000} + m_TitleContent: + m_Text: Animation + m_Image: {fileID: -3237396543322336831, guid: 0000000000000000d000000000000000, type: 0} + m_Tooltip: + m_TextWithWhitespace: "Animation\u200B" + m_Pos: + serializedVersion: 2 + x: 701.60004 + y: 765.60004 + width: 954 + height: 428.40002 + m_SerializedDataModeController: + m_DataMode: 0 + m_PreferredDataMode: 0 + m_SupportedDataModes: + isAutomatic: 1 + m_ViewDataDictionary: {fileID: 0} + m_OverlayCanvas: + m_LastAppliedPresetName: Default + m_SaveData: [] + m_ContainerData: [] + m_DynamicPanelContainerData: [] + m_OverlaysVisible: 1 + m_DynamicPanelBehavior: 0 + m_LockTracker: + m_IsLocked: 0 + m_LastSelectedObjectID: 0 +--- !u!114 &26 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 12914, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 100, y: 100} + m_MaxSize: {x: 4000, y: 4000} + m_TitleContent: + m_Text: Animator + m_Image: {fileID: 1711060831702674872, guid: 0000000000000000d000000000000000, type: 0} + m_Tooltip: + m_TextWithWhitespace: "Animator\u200B" + m_Pos: + serializedVersion: 2 + x: 1282.6 + y: 24 + width: 115.599976 + height: 427.60004 + m_SerializedDataModeController: + m_DataMode: 0 + m_PreferredDataMode: 0 + m_SupportedDataModes: + isAutomatic: 1 + m_ViewDataDictionary: {fileID: 0} + m_OverlayCanvas: + m_LastAppliedPresetName: Default + m_SaveData: [] + m_ContainerData: [] + m_DynamicPanelContainerData: [] + m_OverlaysVisible: 1 + m_DynamicPanelBehavior: 0 + m_ViewTransforms: + m_KeySerializationHelper: [] + m_ValueSerializationHelper: [] + m_PreviewAnimator: {fileID: 0} + m_AnimatorController: {fileID: 0} + m_BreadCrumbs: [] + stateMachineGraph: {fileID: 0} + stateMachineGraphGUI: {fileID: 0} + blendTreeGraph: {fileID: 0} + blendTreeGraphGUI: {fileID: 0} + m_AutoLiveLink: 1 + m_MiniTool: 0 + m_LockTracker: + m_IsLocked: 0 + m_CurrentEditor: 0 + m_LayerEditor: + m_SelectedLayerIndex: 0 +--- !u!114 &27 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12019, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 275, y: 50} + m_MaxSize: {x: 4000, y: 4000} + m_TitleContent: + m_Text: Inspector + m_Image: {fileID: -440750813802333266, guid: 0000000000000000d000000000000000, type: 0} + m_Tooltip: + m_TextWithWhitespace: "Inspector\u200B" + m_Pos: + serializedVersion: 2 + x: 1 + y: 24 + width: 647.80005 + height: 478.8 + m_SerializedDataModeController: + m_DataMode: 0 + m_PreferredDataMode: 0 + m_SupportedDataModes: + isAutomatic: 1 + m_ViewDataDictionary: {fileID: 0} + m_OverlayCanvas: + m_LastAppliedPresetName: Default + m_SaveData: [] + m_ContainerData: [] + m_DynamicPanelContainerData: [] + m_OverlaysVisible: 1 + m_DynamicPanelBehavior: 0 + m_ObjectsLockedBeforeSerialization: [] + m_InstanceIDsLockedBeforeSerialization: + m_PreviewResizer: + m_CachedPref: -268 + m_ControlHash: -371814159 + m_PrefName: Preview_InspectorPreview + m_LastInspectedObjectInstanceID: -1 + m_LastVerticalScrollValue: 0 + m_GlobalObjectId: + m_InspectorMode: 0 + m_LockTracker: + m_IsLocked: 0 + m_PreviewWindow: {fileID: 0} +--- !u!114 &28 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 13401, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 50, y: 50} + m_MaxSize: {x: 4000, y: 4000} + m_TitleContent: + m_Text: Test Runner + m_Image: {fileID: 0} + m_Tooltip: Test framework for running Edit mode and Play mode tests in Unity. + Part of the com.unity.test-framework package. + m_TextWithWhitespace: "Test Runner\u200B" + m_Pos: + serializedVersion: 2 + x: 1399.2001 + y: 584 + width: 647.80005 + height: 610.00006 + m_SerializedDataModeController: + m_DataMode: 0 + m_PreferredDataMode: 0 + m_SupportedDataModes: + isAutomatic: 1 + m_ViewDataDictionary: {fileID: 0} + m_OverlayCanvas: + m_LastAppliedPresetName: Default + m_SaveData: [] + m_ContainerData: [] + m_DynamicPanelContainerData: [] + m_OverlaysVisible: 1 + m_DynamicPanelBehavior: 0 + m_Spl: + ID: 285 + splitterInitialOffset: 188 + currentActiveSplitter: -1 + realSizes: + - 358.4 + - 181.6 + relativeSizes: + - 0.66409266 + - 0.33590734 + minSizes: + - 32 + - 32 + maxSizes: + - 0 + - 0 + lastTotalSize: 540 + splitSize: 6 + xOffset: 0 + m_Version: 1 + oldRealSizes: + oldMinSizes: + oldMaxSizes: + oldSplitSize: 0 + m_TestTypeToolbarIndex: 1 + m_TestListGUIs: + - m_Window: {fileID: 28} + runProgress: + RunGuid: f40be6d8-fdbc-465c-965e-36aad0d0e46e + ExecutionSettings: + m_TargetPlatform: 0 + m_HasTargetPlatform: 0 + filter: + testMode: 0 + testNames: [] + groupNames: [] + categoryNames: [] + assemblyNames: [] + filters: + - testMode: 2 + testNames: [] + groupNames: + - .* + categoryNames: [] + assemblyNames: [] + runSynchronously: 0 + playerHeartbeatTimeout: 600 + orderedTestNames: [] + ignoreTests: [] + featureFlags: + fileCleanUpCheck: 0 + requiresSplashScreen: 0 + strictDomainReload: 0 + disableNestedEnumeratorBugfix: 0 + randomOrderSeed: 0 + HasFinished: 1 + Progress: 0.9999997 + CurrentStepName: Unlock Reload Assemblies + CurrentStageName: + m_NewResultList: + - id: 1018 + uniqueId: '[Bracer Lib Test][suite]' + name: Bracer Lib Test + fullName: Bracer Lib Test + resultStatus: 0 + duration: 0 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 1 + categories: [] + parentId: + parentUniqueId: + m_ResultText: "CreateScenesWithSpecificLifetimes (0.001s)\n---\nSystem.InvalidOperationException + : This can only be used during play mode, please use EditorSceneManager.OpenScene() + instead.\n---\n at (wrapper managed-to-native) UnityEngine.SceneManagement.SceneManagerAPIInternal.LoadSceneAsyncNameIndexInternal_Injected(UnityEngine.Bindings.ManagedSpanWrapper&,int,UnityEngine.SceneManagement.LoadSceneParameters&,bool)\r\n + at UnityEngine.SceneManagement.SceneManagerAPIInternal.LoadSceneAsyncNameIndexInternal + (System.String sceneName, System.Int32 sceneBuildIndex, UnityEngine.SceneManagement.LoadSceneParameters + parameters, System.Boolean mustCompleteNextFrame) [0x0002a] in <6567e2a645a94ef68fffcf0e5cb82d14>:0 + \r\n at UnityEngine.SceneManagement.SceneManagerAPI.LoadSceneAsyncByNameOrIndex + (System.String sceneName, System.Int32 sceneBuildIndex, UnityEngine.SceneManagement.LoadSceneParameters + parameters, System.Boolean mustCompleteNextFrame) [0x00000] in <6567e2a645a94ef68fffcf0e5cb82d14>:0 + \r\n at UnityEngine.SceneManagement.SceneManager.LoadSceneAsyncNameIndexInternal + (System.String sceneName, System.Int32 sceneBuildIndex, UnityEngine.SceneManagement.LoadSceneParameters + parameters, System.Boolean mustCompleteNextFrame) [0x00016] in <6567e2a645a94ef68fffcf0e5cb82d14>:0 + \r\n at UnityEngine.SceneManagement.SceneManager.LoadSceneAsync (System.String + sceneName, UnityEngine.SceneManagement.LoadSceneParameters parameters) [0x00001] + in <6567e2a645a94ef68fffcf0e5cb82d14>:0 \r\n at UnityEngine.SceneManagement.SceneManager.LoadSceneAsync + (System.String sceneName, UnityEngine.SceneManagement.LoadSceneMode mode) [0x00009] + in <6567e2a645a94ef68fffcf0e5cb82d14>:0 \r\n at BracerStudios.Tests.TestBase+d__21.MoveNext + () [0x00020] in Assets\\Scripts\\BracerStudios\\Tests\\TestBase.cs:161 \r\n + at UnityEngine.TestTools.TestEnumerator+d__7.MoveNext () [0x0004e] + in Library\\PackageCache\\com.unity.test-framework@aebcb98460c6\\UnityEngine.TestRunner\\NUnitExtensions\\Attributes\\TestEnumerator.cs:44 + " + m_ResultStacktrace: " at (wrapper managed-to-native) UnityEngine.SceneManagement.SceneManagerAPIInternal.LoadSceneAsyncNameIndexInternal_Injected(UnityEngine.Bindings.ManagedSpanWrapper&,int,UnityEngine.SceneManagement.LoadSceneParameters&,bool)\r\n + at UnityEngine.SceneManagement.SceneManagerAPIInternal.LoadSceneAsyncNameIndexInternal + (System.String sceneName, System.Int32 sceneBuildIndex, UnityEngine.SceneManagement.LoadSceneParameters + parameters, System.Boolean mustCompleteNextFrame) [0x0002a] in <6567e2a645a94ef68fffcf0e5cb82d14>:0 + \r\n at UnityEngine.SceneManagement.SceneManagerAPI.LoadSceneAsyncByNameOrIndex + (System.String sceneName, System.Int32 sceneBuildIndex, UnityEngine.SceneManagement.LoadSceneParameters + parameters, System.Boolean mustCompleteNextFrame) [0x00000] in <6567e2a645a94ef68fffcf0e5cb82d14>:0 + \r\n at UnityEngine.SceneManagement.SceneManager.LoadSceneAsyncNameIndexInternal + (System.String sceneName, System.Int32 sceneBuildIndex, UnityEngine.SceneManagement.LoadSceneParameters + parameters, System.Boolean mustCompleteNextFrame) [0x00016] in <6567e2a645a94ef68fffcf0e5cb82d14>:0 + \r\n at UnityEngine.SceneManagement.SceneManager.LoadSceneAsync (System.String + sceneName, UnityEngine.SceneManagement.LoadSceneParameters parameters) [0x00001] + in <6567e2a645a94ef68fffcf0e5cb82d14>:0 \r\n at UnityEngine.SceneManagement.SceneManager.LoadSceneAsync + (System.String sceneName, UnityEngine.SceneManagement.LoadSceneMode mode) [0x00009] + in <6567e2a645a94ef68fffcf0e5cb82d14>:0 \r\n at BracerStudios.Tests.TestBase+d__21.MoveNext + () [0x00020] in F:\\Users\\kavi\\Projects\\Vaultage\\Assets\\Scripts\\BracerStudios\\Tests\\TestBase.cs:161 + \r\n at UnityEngine.TestTools.TestEnumerator+d__7.MoveNext () [0x0004e] + in .\\Library\\PackageCache\\com.unity.test-framework@aebcb98460c6\\UnityEngine.TestRunner\\NUnitExtensions\\Attributes\\TestEnumerator.cs:44 " + m_TestListState: + scrollPos: {x: 0, y: 0} + m_SelectedIDs: 230f9c42 + m_LastClickedID: 1117523747 + m_ExpandedIDs: 356fd8893294e98a827c6f8dae20cfa8f45959bb145ddde808d3f5f24c8e7eff0c786413d49e0d1e9a2d223cf883fa5031c06d679e31e66917e6127224343b7463507a741fc0677affffff7f + m_RenameOverlay: + m_UserAcceptedRename: 0 + m_Name: + m_OriginalName: + m_EditFieldRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 0 + height: 0 + m_UserData: 0 + m_IsWaitingForDelay: 0 + m_IsRenaming: 0 + m_OriginalEventType: 11 + m_IsRenamingFilename: 0 + m_TrimLeadingAndTrailingWhitespace: 0 + m_ClientGUIView: {fileID: 0} + m_SearchString: + m_TestRunnerUIFilter: + PassedHidden: 0 + FailedHidden: 0 + NotRunHidden: 0 + m_SearchString: + selectedCategories: [] + availableCategories: + - Uncategorized + m_SelectedOption: 0 + - m_Window: {fileID: 28} + runProgress: + RunGuid: f40be6d8-fdbc-465c-965e-36aad0d0e46e + ExecutionSettings: + m_TargetPlatform: 0 + m_HasTargetPlatform: 0 + filter: + testMode: 0 + testNames: [] + groupNames: [] + categoryNames: [] + assemblyNames: [] + filters: + - testMode: 2 + testNames: [] + groupNames: + - .* + categoryNames: [] + assemblyNames: [] + runSynchronously: 0 + playerHeartbeatTimeout: 600 + orderedTestNames: [] + ignoreTests: [] + featureFlags: + fileCleanUpCheck: 0 + requiresSplashScreen: 0 + strictDomainReload: 0 + disableNestedEnumeratorBugfix: 0 + randomOrderSeed: 0 + HasFinished: 1 + Progress: 0.9999997 + CurrentStepName: Unlock Reload Assemblies + CurrentStageName: + m_NewResultList: + - id: 1063 + uniqueId: '[Bracer Lib Test][suite]' + name: Bracer Lib Test + fullName: Bracer Lib Test + resultStatus: 1 + duration: 0.89121354 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 1 + categories: [] + parentId: + parentUniqueId: + - id: 1052 + uniqueId: '[BracerLib.Tests.dll][suite]' + name: BracerLib.Tests.dll + fullName: F:/Users/kavi/Projects/BracerLib/Library/ScriptAssemblies/BracerLib.Tests.dll + resultStatus: 1 + duration: 0.89121354 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 1 + categories: [] + parentId: 1063 + parentUniqueId: '[Bracer Lib Test][suite]' + - id: 1053 + uniqueId: 'BracerLib.Tests.dll/[BracerLib][suite]' + name: BracerLib + fullName: BracerLib + resultStatus: 1 + duration: 0.89121354 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 1 + categories: [] + parentId: 1052 + parentUniqueId: '[BracerLib.Tests.dll][suite]' + - id: 1054 + uniqueId: 'BracerLib.Tests.dll/BracerLib/[Tests][suite]' + name: Tests + fullName: BracerLib.Tests + resultStatus: 1 + duration: 0.89121354 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 1 + categories: [] + parentId: 1053 + parentUniqueId: 'BracerLib.Tests.dll/[BracerLib][suite]' + - id: 1058 + uniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/[BracerLib.Tests][BracerLib.Tests.Objects][suite]' + name: Objects + fullName: BracerLib.Tests.Objects + resultStatus: 1 + duration: 0.2423597 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 1 + categories: [] + parentId: 1054 + parentUniqueId: 'BracerLib.Tests.dll/BracerLib/[Tests][suite]' + - id: 1043 + uniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Objects/[BracerLib.Tests][BracerLib.Tests.Objects.ObjectLifetimeTests][suite]' + name: ObjectLifetimeTests + fullName: BracerLib.Tests.Objects.ObjectLifetimeTests + resultStatus: 1 + duration: 0.2198761 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 1 + categories: [] + parentId: 1058 + parentUniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/[BracerLib.Tests][BracerLib.Tests.Objects][suite]' + - id: 1024 + uniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Objects/ObjectLifetimeTests/[BracerLib.Tests][BracerLib.Tests.Objects.ObjectLifetimeTests.CheckIfDisposableObjectHasDisposed]' + name: CheckIfDisposableObjectHasDisposed + fullName: BracerLib.Tests.Objects.ObjectLifetimeTests.CheckIfDisposableObjectHasDisposed + resultStatus: 1 + duration: 0.0144532 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 0 + categories: + - Uncategorized + parentId: 1018 + parentUniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Objects/[BracerLib.Tests][BracerLib.Tests.Objects.ObjectLifetimeTests][suite]' + - id: 1022 + uniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Objects/ObjectLifetimeTests/[BracerLib.Tests][BracerLib.Tests.Objects.ObjectLifetimeTests.OneTimeObjectStillExists]' + name: OneTimeObjectStillExists + fullName: BracerLib.Tests.Objects.ObjectLifetimeTests.OneTimeObjectStillExists + resultStatus: 1 + duration: 0.0311087 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 0 + categories: + - Uncategorized + parentId: 1018 + parentUniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Objects/[BracerLib.Tests][BracerLib.Tests.Objects.ObjectLifetimeTests][suite]' + - id: 1023 + uniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Objects/ObjectLifetimeTests/[BracerLib.Tests][BracerLib.Tests.Objects.ObjectLifetimeTests.RegisterDisposableObject]' + name: RegisterDisposableObject + fullName: BracerLib.Tests.Objects.ObjectLifetimeTests.RegisterDisposableObject + resultStatus: 1 + duration: 0.0160034 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 0 + categories: + - Uncategorized + parentId: 1018 + parentUniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Objects/[BracerLib.Tests][BracerLib.Tests.Objects.ObjectLifetimeTests][suite]' + - id: 1019 + uniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Objects/ObjectLifetimeTests/[BracerLib.Tests][BracerLib.Tests.Objects.ObjectLifetimeTests.SetUpOneTimeObjects]' + name: SetUpOneTimeObjects + fullName: BracerLib.Tests.Objects.ObjectLifetimeTests.SetUpOneTimeObjects + resultStatus: 1 + duration: 0.0552655 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 0 + categories: + - Uncategorized + parentId: 1018 + parentUniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Objects/[BracerLib.Tests][BracerLib.Tests.Objects.ObjectLifetimeTests][suite]' + - id: 1020 + uniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Objects/ObjectLifetimeTests/[BracerLib.Tests][BracerLib.Tests.Objects.ObjectLifetimeTests.TempUnityObjectMovesCorrectly]' + name: TempUnityObjectMovesCorrectly + fullName: BracerLib.Tests.Objects.ObjectLifetimeTests.TempUnityObjectMovesCorrectly + resultStatus: 1 + duration: 0.065843 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 0 + categories: + - Uncategorized + parentId: 1018 + parentUniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Objects/[BracerLib.Tests][BracerLib.Tests.Objects.ObjectLifetimeTests][suite]' + - id: 1021 + uniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Objects/ObjectLifetimeTests/[BracerLib.Tests][BracerLib.Tests.Objects.ObjectLifetimeTests.TempUnityObjectNoLongerExistsAfterPreviousTest]' + name: TempUnityObjectNoLongerExistsAfterPreviousTest + fullName: BracerLib.Tests.Objects.ObjectLifetimeTests.TempUnityObjectNoLongerExistsAfterPreviousTest + resultStatus: 1 + duration: 0.0372023 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 0 + categories: + - Uncategorized + parentId: 1018 + parentUniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Objects/[BracerLib.Tests][BracerLib.Tests.Objects.ObjectLifetimeTests][suite]' + - id: 1050 + uniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Objects/[BracerLib.Tests][BracerLib.Tests.Objects.ObjectMockTests][suite]' + name: ObjectMockTests + fullName: BracerLib.Tests.Objects.ObjectMockTests + resultStatus: 1 + duration: 0.0224836 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 1 + categories: [] + parentId: 1058 + parentUniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/[BracerLib.Tests][BracerLib.Tests.Objects][suite]' + - id: 1026 + uniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Objects/ObjectMockTests/[BracerLib.Tests][BracerLib.Tests.Objects.ObjectMockTests.TestMock]' + name: TestMock + fullName: BracerLib.Tests.Objects.ObjectMockTests.TestMock + resultStatus: 1 + duration: 0.0224836 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 0 + categories: + - Uncategorized + parentId: 1025 + parentUniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Objects/[BracerLib.Tests][BracerLib.Tests.Objects.ObjectMockTests][suite]' + - id: 1057 + uniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/[BracerLib.Tests][BracerLib.Tests.Properties][suite]' + name: Properties + fullName: BracerLib.Tests.Properties + resultStatus: 1 + duration: 0.0724018 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 1 + categories: [] + parentId: 1054 + parentUniqueId: 'BracerLib.Tests.dll/BracerLib/[Tests][suite]' + - id: 1040 + uniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Properties/[BracerLib.Tests][BracerLib.Tests.Properties.PropertyTests][suite]' + name: PropertyTests + fullName: BracerLib.Tests.Properties.PropertyTests + resultStatus: 1 + duration: 0.0724018 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 1 + categories: [] + parentId: 1057 + parentUniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/[BracerLib.Tests][BracerLib.Tests.Properties][suite]' + - id: 1016 + uniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Properties/PropertyTests/[BracerLib.Tests][BracerLib.Tests.Properties.PropertyTests.TestProperties]' + name: TestProperties + fullName: BracerLib.Tests.Properties.PropertyTests.TestProperties + resultStatus: 1 + duration: 0.0392997 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 0 + categories: + - Uncategorized + parentId: 1015 + parentUniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Properties/[BracerLib.Tests][BracerLib.Tests.Properties.PropertyTests][suite]' + - id: 1017 + uniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Properties/PropertyTests/[BracerLib.Tests][BracerLib.Tests.Properties.PropertyTests.TestPropertyErrors]' + name: TestPropertyErrors + fullName: BracerLib.Tests.Properties.PropertyTests.TestPropertyErrors + resultStatus: 1 + duration: 0.0331021 + messages: + output: 'There is no property someFakeValue to the target object. + +' + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 0 + categories: + - Uncategorized + parentId: 1015 + parentUniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Properties/[BracerLib.Tests][BracerLib.Tests.Properties.PropertyTests][suite]' + - id: 1056 + uniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/[BracerLib.Tests][BracerLib.Tests.Scenes][suite]' + name: Scenes + fullName: BracerLib.Tests.Scenes + resultStatus: 1 + duration: 0.2060783 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 1 + categories: [] + parentId: 1054 + parentUniqueId: 'BracerLib.Tests.dll/BracerLib/[Tests][suite]' + - id: 1036 + uniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Scenes/[BracerLib.Tests][BracerLib.Tests.Scenes.SceneTests][suite]' + name: SceneTests + fullName: BracerLib.Tests.Scenes.SceneTests + resultStatus: 1 + duration: 0.2060783 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 1 + categories: [] + parentId: 1056 + parentUniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/[BracerLib.Tests][BracerLib.Tests.Scenes][suite]' + - id: 1012 + uniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Scenes/SceneTests/[BracerLib.Tests][BracerLib.Tests.Scenes.SceneTests.CloseSceneWithZeroScenesRegistered]' + name: CloseSceneWithZeroScenesRegistered + fullName: BracerLib.Tests.Scenes.SceneTests.CloseSceneWithZeroScenesRegistered + resultStatus: 1 + duration: 0.0341776 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 0 + categories: + - Uncategorized + parentId: 1011 + parentUniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Scenes/[BracerLib.Tests][BracerLib.Tests.Scenes.SceneTests][suite]' + - id: 1013 + uniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Scenes/SceneTests/[BracerLib.Tests][BracerLib.Tests.Scenes.SceneTests.CreateScenesWithSpecificLifetimes]' + name: CreateScenesWithSpecificLifetimes + fullName: BracerLib.Tests.Scenes.SceneTests.CreateScenesWithSpecificLifetimes + resultStatus: 1 + duration: 0.1267267 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 0 + categories: + - Uncategorized + parentId: 1011 + parentUniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Scenes/[BracerLib.Tests][BracerLib.Tests.Scenes.SceneTests][suite]' + - id: 1014 + uniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Scenes/SceneTests/[BracerLib.Tests][BracerLib.Tests.Scenes.SceneTests.TestSceneLifetimes]' + name: TestSceneLifetimes + fullName: BracerLib.Tests.Scenes.SceneTests.TestSceneLifetimes + resultStatus: 1 + duration: 0.045174 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 0 + categories: + - Uncategorized + parentId: 1011 + parentUniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Scenes/[BracerLib.Tests][BracerLib.Tests.Scenes.SceneTests][suite]' + - id: 1055 + uniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/[BracerLib.Tests][BracerLib.Tests.Utility][suite]' + name: Utility + fullName: BracerLib.Tests.Utility + resultStatus: 1 + duration: 0.37037373 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 1 + categories: [] + parentId: 1054 + parentUniqueId: 'BracerLib.Tests.dll/BracerLib/[Tests][suite]' + - id: 1001 + uniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Utility/[BracerLib.Tests][BracerLib.Tests.Utility.MathUtilityTests][suite]' + name: MathUtilityTests + fullName: BracerLib.Tests.Utility.MathUtilityTests + resultStatus: 1 + duration: 0.24317521 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 1 + categories: [] + parentId: 1055 + parentUniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/[BracerLib.Tests][BracerLib.Tests.Utility][suite]' + - id: 1005 + uniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Utility/MathUtilityTests/[BracerLib.Tests][BracerLib.Tests.Utility.MathUtilityTests.ValuesAreWithinBounds][suite]' + name: ValuesAreWithinBounds + fullName: BracerLib.Tests.Utility.MathUtilityTests.ValuesAreWithinBounds + resultStatus: 1 + duration: 0.050856 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 1 + categories: [] + parentId: 1001 + parentUniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Utility/[BracerLib.Tests][BracerLib.Tests.Utility.MathUtilityTests][suite]' + - id: 1002 + uniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Utility/MathUtilityTests/ValuesAreWithinBounds/[BracerLib.Tests][BracerLib.Tests.Utility.MathUtilityTests.Value + is between bounds]' + name: Value is between bounds + fullName: BracerLib.Tests.Utility.MathUtilityTests.Value is between bounds + resultStatus: 1 + duration: 0.0169093 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 0 + categories: + - Uncategorized + parentId: 1005 + parentUniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Utility/MathUtilityTests/[BracerLib.Tests][BracerLib.Tests.Utility.MathUtilityTests.ValuesAreWithinBounds][suite]' + - id: 1003 + uniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Utility/MathUtilityTests/ValuesAreWithinBounds/[BracerLib.Tests][BracerLib.Tests.Utility.MathUtilityTests.Value + is below bounds]' + name: Value is below bounds + fullName: BracerLib.Tests.Utility.MathUtilityTests.Value is below bounds + resultStatus: 1 + duration: 0.016323 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 0 + categories: + - Uncategorized + parentId: 1005 + parentUniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Utility/MathUtilityTests/[BracerLib.Tests][BracerLib.Tests.Utility.MathUtilityTests.ValuesAreWithinBounds][suite]' + - id: 1004 + uniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Utility/MathUtilityTests/ValuesAreWithinBounds/[BracerLib.Tests][BracerLib.Tests.Utility.MathUtilityTests.Value + is above bounds]' + name: Value is above bounds + fullName: BracerLib.Tests.Utility.MathUtilityTests.Value is above bounds + resultStatus: 1 + duration: 0.0176237 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 0 + categories: + - Uncategorized + parentId: 1005 + parentUniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Utility/MathUtilityTests/[BracerLib.Tests][BracerLib.Tests.Utility.MathUtilityTests.ValuesAreWithinBounds][suite]' + - id: 1013 + uniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Utility/MathUtilityTests/[BracerLib.Tests][BracerLib.Tests.Utility.MathUtilityTests.ValuesBetweenBounds][suite]' + name: ValuesBetweenBounds + fullName: BracerLib.Tests.Utility.MathUtilityTests.ValuesBetweenBounds + resultStatus: 1 + duration: 0.1038187 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 1 + categories: [] + parentId: 1001 + parentUniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Utility/[BracerLib.Tests][BracerLib.Tests.Utility.MathUtilityTests][suite]' + - id: 1006 + uniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Utility/MathUtilityTests/ValuesBetweenBounds/[BracerLib.Tests][BracerLib.Tests.Utility.MathUtilityTests.Value + is between bounds]' + name: Value is between bounds + fullName: BracerLib.Tests.Utility.MathUtilityTests.Value is between bounds + resultStatus: 1 + duration: 0.0156456 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 0 + categories: + - Uncategorized + parentId: 1013 + parentUniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Utility/MathUtilityTests/[BracerLib.Tests][BracerLib.Tests.Utility.MathUtilityTests.ValuesBetweenBounds][suite]' + - id: 1007 + uniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Utility/MathUtilityTests/ValuesBetweenBounds/[BracerLib.Tests][BracerLib.Tests.Utility.MathUtilityTests.Value + is below bounds]' + name: Value is below bounds + fullName: BracerLib.Tests.Utility.MathUtilityTests.Value is below bounds + resultStatus: 1 + duration: 0.0162674 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 0 + categories: + - Uncategorized + parentId: 1013 + parentUniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Utility/MathUtilityTests/[BracerLib.Tests][BracerLib.Tests.Utility.MathUtilityTests.ValuesBetweenBounds][suite]' + - id: 1008 + uniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Utility/MathUtilityTests/ValuesBetweenBounds/[BracerLib.Tests][BracerLib.Tests.Utility.MathUtilityTests.Value + is above bounds]' + name: Value is above bounds + fullName: BracerLib.Tests.Utility.MathUtilityTests.Value is above bounds + resultStatus: 1 + duration: 0.0165829 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 0 + categories: + - Uncategorized + parentId: 1013 + parentUniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Utility/MathUtilityTests/[BracerLib.Tests][BracerLib.Tests.Utility.MathUtilityTests.ValuesBetweenBounds][suite]' + - id: 1009 + uniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Utility/MathUtilityTests/ValuesBetweenBounds/[BracerLib.Tests][BracerLib.Tests.Utility.MathUtilityTests.Value + is at bound, inclusive both]' + name: Value is at bound, inclusive both + fullName: BracerLib.Tests.Utility.MathUtilityTests.Value is at bound, inclusive + both + resultStatus: 1 + duration: 0.0141726 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 0 + categories: + - Uncategorized + parentId: 1013 + parentUniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Utility/MathUtilityTests/[BracerLib.Tests][BracerLib.Tests.Utility.MathUtilityTests.ValuesBetweenBounds][suite]' + - id: 1010 + uniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Utility/MathUtilityTests/ValuesBetweenBounds/[BracerLib.Tests][BracerLib.Tests.Utility.MathUtilityTests.Value + is at bound, inclusive left]' + name: Value is at bound, inclusive left + fullName: BracerLib.Tests.Utility.MathUtilityTests.Value is at bound, inclusive + left + resultStatus: 1 + duration: 0.014256 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 0 + categories: + - Uncategorized + parentId: 1013 + parentUniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Utility/MathUtilityTests/[BracerLib.Tests][BracerLib.Tests.Utility.MathUtilityTests.ValuesBetweenBounds][suite]' + - id: 1011 + uniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Utility/MathUtilityTests/ValuesBetweenBounds/[BracerLib.Tests][BracerLib.Tests.Utility.MathUtilityTests.Value + is at bound, inclusive right]' + name: Value is at bound, inclusive right + fullName: BracerLib.Tests.Utility.MathUtilityTests.Value is at bound, inclusive + right + resultStatus: 1 + duration: 0.0134671 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 0 + categories: + - Uncategorized + parentId: 1013 + parentUniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Utility/MathUtilityTests/[BracerLib.Tests][BracerLib.Tests.Utility.MathUtilityTests.ValuesBetweenBounds][suite]' + - id: 1012 + uniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Utility/MathUtilityTests/ValuesBetweenBounds/[BracerLib.Tests][BracerLib.Tests.Utility.MathUtilityTests.Value + is at bound, exclusive]' + name: Value is at bound, exclusive + fullName: BracerLib.Tests.Utility.MathUtilityTests.Value is at bound, exclusive + resultStatus: 1 + duration: 0.0134271 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 0 + categories: + - Uncategorized + parentId: 1013 + parentUniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Utility/MathUtilityTests/[BracerLib.Tests][BracerLib.Tests.Utility.MathUtilityTests.ValuesBetweenBounds][suite]' + - id: 1021 + uniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Utility/MathUtilityTests/[BracerLib.Tests][BracerLib.Tests.Utility.MathUtilityTests.ValuesBetweenBoundsFloat][suite]' + name: ValuesBetweenBoundsFloat + fullName: BracerLib.Tests.Utility.MathUtilityTests.ValuesBetweenBoundsFloat + resultStatus: 1 + duration: 0.0885005 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 1 + categories: [] + parentId: 1001 + parentUniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Utility/[BracerLib.Tests][BracerLib.Tests.Utility.MathUtilityTests][suite]' + - id: 1014 + uniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Utility/MathUtilityTests/ValuesBetweenBoundsFloat/[BracerLib.Tests][BracerLib.Tests.Utility.MathUtilityTests.Value + is between bounds]' + name: Value is between bounds + fullName: BracerLib.Tests.Utility.MathUtilityTests.Value is between bounds + resultStatus: 1 + duration: 0.0112778 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 0 + categories: + - Uncategorized + parentId: 1021 + parentUniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Utility/MathUtilityTests/[BracerLib.Tests][BracerLib.Tests.Utility.MathUtilityTests.ValuesBetweenBoundsFloat][suite]' + - id: 1015 + uniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Utility/MathUtilityTests/ValuesBetweenBoundsFloat/[BracerLib.Tests][BracerLib.Tests.Utility.MathUtilityTests.Value + is below bounds]' + name: Value is below bounds + fullName: BracerLib.Tests.Utility.MathUtilityTests.Value is below bounds + resultStatus: 1 + duration: 0.0128422 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 0 + categories: + - Uncategorized + parentId: 1021 + parentUniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Utility/MathUtilityTests/[BracerLib.Tests][BracerLib.Tests.Utility.MathUtilityTests.ValuesBetweenBoundsFloat][suite]' + - id: 1016 + uniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Utility/MathUtilityTests/ValuesBetweenBoundsFloat/[BracerLib.Tests][BracerLib.Tests.Utility.MathUtilityTests.Value + is above bounds]' + name: Value is above bounds + fullName: BracerLib.Tests.Utility.MathUtilityTests.Value is above bounds + resultStatus: 1 + duration: 0.0126699 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 0 + categories: + - Uncategorized + parentId: 1021 + parentUniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Utility/MathUtilityTests/[BracerLib.Tests][BracerLib.Tests.Utility.MathUtilityTests.ValuesBetweenBoundsFloat][suite]' + - id: 1017 + uniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Utility/MathUtilityTests/ValuesBetweenBoundsFloat/[BracerLib.Tests][BracerLib.Tests.Utility.MathUtilityTests.Value + is at bound, inclusive both]' + name: Value is at bound, inclusive both + fullName: BracerLib.Tests.Utility.MathUtilityTests.Value is at bound, inclusive + both + resultStatus: 1 + duration: 0.0133844 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 0 + categories: + - Uncategorized + parentId: 1021 + parentUniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Utility/MathUtilityTests/[BracerLib.Tests][BracerLib.Tests.Utility.MathUtilityTests.ValuesBetweenBoundsFloat][suite]' + - id: 1018 + uniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Utility/MathUtilityTests/ValuesBetweenBoundsFloat/[BracerLib.Tests][BracerLib.Tests.Utility.MathUtilityTests.Value + is at bound, inclusive left]' + name: Value is at bound, inclusive left + fullName: BracerLib.Tests.Utility.MathUtilityTests.Value is at bound, inclusive + left + resultStatus: 1 + duration: 0.0128021 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 0 + categories: + - Uncategorized + parentId: 1021 + parentUniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Utility/MathUtilityTests/[BracerLib.Tests][BracerLib.Tests.Utility.MathUtilityTests.ValuesBetweenBoundsFloat][suite]' + - id: 1019 + uniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Utility/MathUtilityTests/ValuesBetweenBoundsFloat/[BracerLib.Tests][BracerLib.Tests.Utility.MathUtilityTests.Value + is at bound, inclusive right]' + name: Value is at bound, inclusive right + fullName: BracerLib.Tests.Utility.MathUtilityTests.Value is at bound, inclusive + right + resultStatus: 1 + duration: 0.0127331 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 0 + categories: + - Uncategorized + parentId: 1021 + parentUniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Utility/MathUtilityTests/[BracerLib.Tests][BracerLib.Tests.Utility.MathUtilityTests.ValuesBetweenBoundsFloat][suite]' + - id: 1020 + uniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Utility/MathUtilityTests/ValuesBetweenBoundsFloat/[BracerLib.Tests][BracerLib.Tests.Utility.MathUtilityTests.Value + is at bound, exclusive]' + name: Value is at bound, exclusive + fullName: BracerLib.Tests.Utility.MathUtilityTests.Value is at bound, exclusive + resultStatus: 1 + duration: 0.012791 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 0 + categories: + - Uncategorized + parentId: 1021 + parentUniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Utility/MathUtilityTests/[BracerLib.Tests][BracerLib.Tests.Utility.MathUtilityTests.ValuesBetweenBoundsFloat][suite]' + - id: 1022 + uniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Utility/[BracerLib.Tests][BracerLib.Tests.Utility.TriangulatorTest][suite]' + name: TriangulatorTest + fullName: BracerLib.Tests.Utility.TriangulatorTest + resultStatus: 1 + duration: 0.1271985 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 1 + categories: [] + parentId: 1055 + parentUniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/[BracerLib.Tests][BracerLib.Tests.Utility][suite]' + - id: 1026 + uniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Utility/TriangulatorTest/[BracerLib.Tests][BracerLib.Tests.Utility.TriangulatorTest.AreaCalculatesCorrectly][suite]' + name: AreaCalculatesCorrectly + fullName: BracerLib.Tests.Utility.TriangulatorTest.AreaCalculatesCorrectly + resultStatus: 1 + duration: 0.038052 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 1 + categories: [] + parentId: 1022 + parentUniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Utility/[BracerLib.Tests][BracerLib.Tests.Utility.TriangulatorTest][suite]' + - id: 1002 + uniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Utility/TriangulatorTest/AreaCalculatesCorrectly/[BracerLib.Tests][BracerLib.Tests.Utility.TriangulatorTest.No + points to calculate]' + name: No points to calculate + fullName: BracerLib.Tests.Utility.TriangulatorTest.No points to calculate + resultStatus: 1 + duration: 0.0118088 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 0 + categories: + - Uncategorized + parentId: 1005 + parentUniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Utility/TriangulatorTest/[BracerLib.Tests][BracerLib.Tests.Utility.TriangulatorTest.AreaCalculatesCorrectly][suite]' + - id: 1003 + uniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Utility/TriangulatorTest/AreaCalculatesCorrectly/[BracerLib.Tests][BracerLib.Tests.Utility.TriangulatorTest.Area + of a triangle]' + name: Area of a triangle + fullName: BracerLib.Tests.Utility.TriangulatorTest.Area of a triangle + resultStatus: 1 + duration: 0.0132008 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 0 + categories: + - Uncategorized + parentId: 1005 + parentUniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Utility/TriangulatorTest/[BracerLib.Tests][BracerLib.Tests.Utility.TriangulatorTest.AreaCalculatesCorrectly][suite]' + - id: 1004 + uniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Utility/TriangulatorTest/AreaCalculatesCorrectly/[BracerLib.Tests][BracerLib.Tests.Utility.TriangulatorTest.Area + of a quad]' + name: Area of a quad + fullName: BracerLib.Tests.Utility.TriangulatorTest.Area of a quad + resultStatus: 1 + duration: 0.0130424 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 0 + categories: + - Uncategorized + parentId: 1005 + parentUniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Utility/TriangulatorTest/[BracerLib.Tests][BracerLib.Tests.Utility.TriangulatorTest.AreaCalculatesCorrectly][suite]' + - id: 1031 + uniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Utility/TriangulatorTest/[BracerLib.Tests][BracerLib.Tests.Utility.TriangulatorTest.PointsInsideTriangleCorrectly][suite]' + name: PointsInsideTriangleCorrectly + fullName: BracerLib.Tests.Utility.TriangulatorTest.PointsInsideTriangleCorrectly + resultStatus: 1 + duration: 0.0511723 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 1 + categories: [] + parentId: 1022 + parentUniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Utility/[BracerLib.Tests][BracerLib.Tests.Utility.TriangulatorTest][suite]' + - id: 1006 + uniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Utility/TriangulatorTest/PointsInsideTriangleCorrectly/[BracerLib.Tests][BracerLib.Tests.Utility.TriangulatorTest.Point + inside triangle]' + name: Point inside triangle + fullName: BracerLib.Tests.Utility.TriangulatorTest.Point inside triangle + resultStatus: 1 + duration: 0.0114868 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 0 + categories: + - Uncategorized + parentId: 1010 + parentUniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Utility/TriangulatorTest/[BracerLib.Tests][BracerLib.Tests.Utility.TriangulatorTest.PointsInsideTriangleCorrectly][suite]' + - id: 1007 + uniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Utility/TriangulatorTest/PointsInsideTriangleCorrectly/[BracerLib.Tests][BracerLib.Tests.Utility.TriangulatorTest.Point + on the line]' + name: Point on the line + fullName: BracerLib.Tests.Utility.TriangulatorTest.Point on the line + resultStatus: 1 + duration: 0.0130201 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 0 + categories: + - Uncategorized + parentId: 1010 + parentUniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Utility/TriangulatorTest/[BracerLib.Tests][BracerLib.Tests.Utility.TriangulatorTest.PointsInsideTriangleCorrectly][suite]' + - id: 1008 + uniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Utility/TriangulatorTest/PointsInsideTriangleCorrectly/[BracerLib.Tests][BracerLib.Tests.Utility.TriangulatorTest.Point + is one of triangle points]' + name: Point is one of triangle points + fullName: BracerLib.Tests.Utility.TriangulatorTest.Point is one of triangle + points + resultStatus: 1 + duration: 0.0133618 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 0 + categories: + - Uncategorized + parentId: 1010 + parentUniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Utility/TriangulatorTest/[BracerLib.Tests][BracerLib.Tests.Utility.TriangulatorTest.PointsInsideTriangleCorrectly][suite]' + - id: 1009 + uniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Utility/TriangulatorTest/PointsInsideTriangleCorrectly/[BracerLib.Tests][BracerLib.Tests.Utility.TriangulatorTest.Point + outside triangle]' + name: Point outside triangle + fullName: BracerLib.Tests.Utility.TriangulatorTest.Point outside triangle + resultStatus: 1 + duration: 0.0133036 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 0 + categories: + - Uncategorized + parentId: 1010 + parentUniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Utility/TriangulatorTest/[BracerLib.Tests][BracerLib.Tests.Utility.TriangulatorTest.PointsInsideTriangleCorrectly][suite]' + - id: 1035 + uniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Utility/TriangulatorTest/[BracerLib.Tests][BracerLib.Tests.Utility.TriangulatorTest.TriangulatePoints][suite]' + name: TriangulatePoints + fullName: BracerLib.Tests.Utility.TriangulatorTest.TriangulatePoints + resultStatus: 1 + duration: 0.0379742 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 1 + categories: [] + parentId: 1022 + parentUniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Utility/[BracerLib.Tests][BracerLib.Tests.Utility.TriangulatorTest][suite]' + - id: 1011 + uniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Utility/TriangulatorTest/TriangulatePoints/[BracerLib.Tests][BracerLib.Tests.Utility.TriangulatorTest.Positive + triangulation]' + name: Positive triangulation + fullName: BracerLib.Tests.Utility.TriangulatorTest.Positive triangulation + resultStatus: 1 + duration: 0.0116938 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 0 + categories: + - Uncategorized + parentId: 1013 + parentUniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Utility/TriangulatorTest/[BracerLib.Tests][BracerLib.Tests.Utility.TriangulatorTest.TriangulatePoints][suite]' + - id: 1012 + uniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Utility/TriangulatorTest/TriangulatePoints/[BracerLib.Tests][BracerLib.Tests.Utility.TriangulatorTest.Negative + triangulation]' + name: Negative triangulation + fullName: BracerLib.Tests.Utility.TriangulatorTest.Negative triangulation + resultStatus: 1 + duration: 0.0131745 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 0 + categories: + - Uncategorized + parentId: 1013 + parentUniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Utility/TriangulatorTest/[BracerLib.Tests][BracerLib.Tests.Utility.TriangulatorTest.TriangulatePoints][suite]' + - id: 1013 + uniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Utility/TriangulatorTest/TriangulatePoints/[BracerLib.Tests][BracerLib.Tests.Utility.TriangulatorTest.Empty + triangulation]' + name: Empty triangulation + fullName: BracerLib.Tests.Utility.TriangulatorTest.Empty triangulation + resultStatus: 1 + duration: 0.0131059 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 0 + categories: + - Uncategorized + parentId: 1014 + parentUniqueId: 'BracerLib.Tests.dll/BracerLib/Tests/Utility/TriangulatorTest/[BracerLib.Tests][BracerLib.Tests.Utility.TriangulatorTest.TriangulatePoints][suite]' + m_ResultText: Bracer Lib Test (39 tests) (0.891s) + m_ResultStacktrace: + m_TestListState: + scrollPos: {x: 0, y: 0} + m_SelectedIDs: 827c6f8d + m_LastClickedID: -1922073470 + m_ExpandedIDs: be51cf86356fd889f836d88a3294e98a827c6f8d3e3af28f31eae39fae20cfa866b443aa63634ab33eb293c7145ddde8700f2ced3cac60ed09e178f0ce8004f108d3f5f2e557abf7456e50f808b9c2fa4c8e7effa87277080c78641320bc6e18b907c01dd49e0d1e9750c71f843a8f399a2d223cddbf473cb3ed614ef883fa5008b7375e1eaa7e669e31e66924343b7463507a746ec2ec7fffffff7f + m_RenameOverlay: + m_UserAcceptedRename: 0 + m_Name: + m_OriginalName: + m_EditFieldRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 0 + height: 0 + m_UserData: 0 + m_IsWaitingForDelay: 0 + m_IsRenaming: 0 + m_OriginalEventType: 11 + m_IsRenamingFilename: 0 + m_TrimLeadingAndTrailingWhitespace: 0 + m_ClientGUIView: {fileID: 0} + m_SearchString: + m_TestRunnerUIFilter: + PassedHidden: 0 + FailedHidden: 0 + NotRunHidden: 0 + m_SearchString: + selectedCategories: [] + availableCategories: + - Uncategorized + m_SelectedOption: 0 + - m_Window: {fileID: 28} + runProgress: + RunGuid: f40be6d8-fdbc-465c-965e-36aad0d0e46e + ExecutionSettings: + m_TargetPlatform: 0 + m_HasTargetPlatform: 0 + filter: + testMode: 0 + testNames: [] + groupNames: [] + categoryNames: [] + assemblyNames: [] + filters: + - testMode: 2 + testNames: [] + groupNames: + - .* + categoryNames: [] + assemblyNames: [] + runSynchronously: 0 + playerHeartbeatTimeout: 600 + orderedTestNames: [] + ignoreTests: [] + featureFlags: + fileCleanUpCheck: 0 + requiresSplashScreen: 0 + strictDomainReload: 0 + disableNestedEnumeratorBugfix: 0 + randomOrderSeed: 0 + HasFinished: 1 + Progress: 0.9999997 + CurrentStepName: Unlock Reload Assemblies + CurrentStageName: + m_NewResultList: + - id: 1008 + uniqueId: '[BracerLibTest][suite]' + name: BracerLibTest + fullName: BracerLibTest + resultStatus: 0 + duration: 0 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 1 + categories: [] + parentId: + parentUniqueId: + - id: 1020 + uniqueId: '[Tests.dll][suite]' + name: Tests.dll + fullName: F:/Users/kavi/Projects/BracerLib/BracerLibTests/Library/ScriptAssemblies/Tests.dll + resultStatus: 0 + duration: 0 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 1 + categories: [] + parentId: 1008 + parentUniqueId: '[BracerLibTest][suite]' + - id: 1021 + uniqueId: 'Tests.dll/[BracerLib][suite]' + name: BracerLib + fullName: BracerLib + resultStatus: 0 + duration: 0 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 1 + categories: [] + parentId: 1020 + parentUniqueId: '[Tests.dll][suite]' + - id: 1022 + uniqueId: 'Tests.dll/BracerLib/[Tests][suite]' + name: Tests + fullName: BracerLib.Tests + resultStatus: 0 + duration: 0 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 1 + categories: [] + parentId: 1021 + parentUniqueId: 'Tests.dll/[BracerLib][suite]' + - id: 1023 + uniqueId: 'Tests.dll/BracerLib/Tests/[Tests][BracerLib.Tests.Utility][suite]' + name: Utility + fullName: BracerLib.Tests.Utility + resultStatus: 0 + duration: 0 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 1 + categories: [] + parentId: 1022 + parentUniqueId: 'Tests.dll/BracerLib/[Tests][suite]' + - id: 1010 + uniqueId: 'Tests.dll/BracerLib/Tests/Utility/[Tests][BracerLib.Tests.Utility.TriangulatorTest][suite]' + name: TriangulatorTest + fullName: BracerLib.Tests.Utility.TriangulatorTest + resultStatus: 0 + duration: 0 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 1 + categories: [] + parentId: 1023 + parentUniqueId: 'Tests.dll/BracerLib/Tests/[Tests][BracerLib.Tests.Utility][suite]' + - id: 1014 + uniqueId: 'Tests.dll/BracerLib/Tests/Utility/TriangulatorTest/[Tests][BracerLib.Tests.Utility.TriangulatorTest.AreaCalculatesCorrectly][suite]' + name: AreaCalculatesCorrectly + fullName: BracerLib.Tests.Utility.TriangulatorTest.AreaCalculatesCorrectly + resultStatus: 0 + duration: 0 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 1 + categories: [] + parentId: 1010 + parentUniqueId: 'Tests.dll/BracerLib/Tests/Utility/[Tests][BracerLib.Tests.Utility.TriangulatorTest][suite]' + - id: 1011 + uniqueId: 'Tests.dll/BracerLib/Tests/Utility/TriangulatorTest/AreaCalculatesCorrectly/[Tests][BracerLib.Tests.Utility.TriangulatorTest.No + points to calculate]' + name: No points to calculate + fullName: BracerLib.Tests.Utility.TriangulatorTest.No points to calculate + resultStatus: 0 + duration: 0 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 0 + categories: + - Uncategorized + parentId: 1014 + parentUniqueId: 'Tests.dll/BracerLib/Tests/Utility/TriangulatorTest/[Tests][BracerLib.Tests.Utility.TriangulatorTest.AreaCalculatesCorrectly][suite]' + - id: 1012 + uniqueId: 'Tests.dll/BracerLib/Tests/Utility/TriangulatorTest/AreaCalculatesCorrectly/[Tests][BracerLib.Tests.Utility.TriangulatorTest.Area + of a triangle]' + name: Area of a triangle + fullName: BracerLib.Tests.Utility.TriangulatorTest.Area of a triangle + resultStatus: 0 + duration: 0 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 0 + categories: + - Uncategorized + parentId: 1014 + parentUniqueId: 'Tests.dll/BracerLib/Tests/Utility/TriangulatorTest/[Tests][BracerLib.Tests.Utility.TriangulatorTest.AreaCalculatesCorrectly][suite]' + - id: 1013 + uniqueId: 'Tests.dll/BracerLib/Tests/Utility/TriangulatorTest/AreaCalculatesCorrectly/[Tests][BracerLib.Tests.Utility.TriangulatorTest.Area + of a quad]' + name: Area of a quad + fullName: BracerLib.Tests.Utility.TriangulatorTest.Area of a quad + resultStatus: 0 + duration: 0 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 0 + categories: + - Uncategorized + parentId: 1014 + parentUniqueId: 'Tests.dll/BracerLib/Tests/Utility/TriangulatorTest/[Tests][BracerLib.Tests.Utility.TriangulatorTest.AreaCalculatesCorrectly][suite]' + - id: 1019 + uniqueId: 'Tests.dll/BracerLib/Tests/Utility/TriangulatorTest/[Tests][BracerLib.Tests.Utility.TriangulatorTest.PointsInsideTriangleCorrectly][suite]' + name: PointsInsideTriangleCorrectly + fullName: BracerLib.Tests.Utility.TriangulatorTest.PointsInsideTriangleCorrectly + resultStatus: 0 + duration: 0 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 1 + categories: [] + parentId: 1010 + parentUniqueId: 'Tests.dll/BracerLib/Tests/Utility/[Tests][BracerLib.Tests.Utility.TriangulatorTest][suite]' + - id: 1015 + uniqueId: 'Tests.dll/BracerLib/Tests/Utility/TriangulatorTest/PointsInsideTriangleCorrectly/[Tests][BracerLib.Tests.Utility.TriangulatorTest.Point + inside triangle]' + name: Point inside triangle + fullName: BracerLib.Tests.Utility.TriangulatorTest.Point inside triangle + resultStatus: 0 + duration: 0 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 0 + categories: + - Uncategorized + parentId: 1019 + parentUniqueId: 'Tests.dll/BracerLib/Tests/Utility/TriangulatorTest/[Tests][BracerLib.Tests.Utility.TriangulatorTest.PointsInsideTriangleCorrectly][suite]' + - id: 1016 + uniqueId: 'Tests.dll/BracerLib/Tests/Utility/TriangulatorTest/PointsInsideTriangleCorrectly/[Tests][BracerLib.Tests.Utility.TriangulatorTest.Point + on the line]' + name: Point on the line + fullName: BracerLib.Tests.Utility.TriangulatorTest.Point on the line + resultStatus: 0 + duration: 0 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 0 + categories: + - Uncategorized + parentId: 1019 + parentUniqueId: 'Tests.dll/BracerLib/Tests/Utility/TriangulatorTest/[Tests][BracerLib.Tests.Utility.TriangulatorTest.PointsInsideTriangleCorrectly][suite]' + - id: 1017 + uniqueId: 'Tests.dll/BracerLib/Tests/Utility/TriangulatorTest/PointsInsideTriangleCorrectly/[Tests][BracerLib.Tests.Utility.TriangulatorTest.Point + is one of triangle points]' + name: Point is one of triangle points + fullName: BracerLib.Tests.Utility.TriangulatorTest.Point is one of triangle + points + resultStatus: 0 + duration: 0 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 0 + categories: + - Uncategorized + parentId: 1019 + parentUniqueId: 'Tests.dll/BracerLib/Tests/Utility/TriangulatorTest/[Tests][BracerLib.Tests.Utility.TriangulatorTest.PointsInsideTriangleCorrectly][suite]' + - id: 1018 + uniqueId: 'Tests.dll/BracerLib/Tests/Utility/TriangulatorTest/PointsInsideTriangleCorrectly/[Tests][BracerLib.Tests.Utility.TriangulatorTest.Point + outside triangle]' + name: Point outside triangle + fullName: BracerLib.Tests.Utility.TriangulatorTest.Point outside triangle + resultStatus: 0 + duration: 0 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + isSuite: 0 + categories: + - Uncategorized + parentId: 1019 + parentUniqueId: 'Tests.dll/BracerLib/Tests/Utility/TriangulatorTest/[Tests][BracerLib.Tests.Utility.TriangulatorTest.PointsInsideTriangleCorrectly][suite]' + m_ResultText: + m_ResultStacktrace: + m_TestListState: + scrollPos: {x: 0, y: 0} + m_SelectedIDs: + m_LastClickedID: 0 + m_ExpandedIDs: f836d88ae557abf7843a8f39ddbf473cf883fa5063507a74ffffff7f + m_RenameOverlay: + m_UserAcceptedRename: 0 + m_Name: + m_OriginalName: + m_EditFieldRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 0 + height: 0 + m_UserData: 0 + m_IsWaitingForDelay: 0 + m_IsRenaming: 0 + m_OriginalEventType: 11 + m_IsRenamingFilename: 0 + m_TrimLeadingAndTrailingWhitespace: 0 + m_ClientGUIView: {fileID: 0} + m_SearchString: + m_TestRunnerUIFilter: + PassedHidden: 0 + FailedHidden: 0 + NotRunHidden: 0 + m_SearchString: + selectedCategories: [] + availableCategories: + - Uncategorized + m_SelectedOption: 0 diff --git a/UserSettings/Search.index b/UserSettings/Search.index new file mode 100644 index 0000000..af3867a --- /dev/null +++ b/UserSettings/Search.index @@ -0,0 +1,13 @@ +{ + "name": "Assets", + "roots": ["Assets"], + "includes": [], + "excludes": ["Assets/Temp/", "Assets/External/"], + "options": { + "types": true, + "properties": true, + "extended": false, + "dependencies": true + }, + "baseScore": 999 +} \ No newline at end of file diff --git a/UserSettings/Search.settings b/UserSettings/Search.settings new file mode 100644 index 0000000..5b2e926 --- /dev/null +++ b/UserSettings/Search.settings @@ -0,0 +1,34 @@ +trackSelection = true +refreshSearchWindowsInPlayMode = false +pickerAdvancedUI = false +fetchPreview = true +defaultFlags = 0 +keepOpen = true +queryFolder = "Assets" +onBoardingDoNotAskAgain = true +showPackageIndexes = false +showStatusBar = false +scopes = { +} +providers = { +} +objectSelectors = { +} +recentSearches = [ +] +searchItemFavorites = [ +] +savedSearchesSortOrder = 0 +showSavedSearchPanel = false +hideTabs = false +indexOnEditorStartup = true +logIndexingPerformanceReport = false +expandedQueries = [ +] +queryBuilder = true +ignoredProperties = "id;name;classname;imagecontentshash" +helperWidgetCurrentArea = "all" +disabledIndexers = "" +minIndexVariations = 2 +findProviderIndexHelper = true +itemIconSize = 32 \ No newline at end of file