diff --git a/Assets/Database.asset b/Assets/Database.asset deleted file mode 100644 index 16dff34..0000000 --- a/Assets/Database.asset +++ /dev/null @@ -1,31 +0,0 @@ -%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: 8442e6f4be8799444b7bd9703a5c88dc, type: 3} - m_Name: Database - m_EditorClassIdentifier: - database: - _prefabs: - - {fileID: 6962989255644195630, guid: 6cd87b398e7a0e94580f4fcbe2fd310a, type: 3} - - {fileID: 6962989255644195630, guid: 377c7275c0001cc47a6b8926ac57d573, type: 3} - - {fileID: 6962989255644195630, guid: 869a03bba705e8d4485aa73daad773dc, type: 3} - - {fileID: 6962989255644195630, guid: 9b40c232eddfd1b469bea688e3c970c0, type: 3} - - {fileID: 4052934186652138539, guid: 8560e1f66d452b543a705c8a0f3e22fa, type: 3} - - {fileID: 3814095509541806390, guid: 9527f3a1482b90a48bb6c62acc70f986, type: 3} - _scriptableObjects: - - {fileID: 11400000, guid: 4aaf448680c7f8a438a9a5861c622a55, type: 2} - - {fileID: 11400000, guid: e715669e1ed4b294c82d07ac011e89bb, type: 2} - - {fileID: 11400000, guid: a6e34739c9325da4cac4fbaea30d052c, type: 2} - - {fileID: 11400000, guid: d37561e153d6a6448a03839488fdec5e, type: 2} - _folders: - - {fileID: 102900000, guid: f3dee7994db941e47b9445cb464c69a9, type: 3} - - {fileID: 102900000, guid: 4f8284570682f8f4c954e446b35ea0ae, type: 3} - - {fileID: 102900000, guid: 0ca30b5ca281be24bb62d7e48cc2bec8, type: 3} diff --git a/Assets/Editor/LevelEditorCustomInspector.cs b/Assets/Editor/LevelEditorCustomInspector.cs index ceab606..bf6978c 100644 --- a/Assets/Editor/LevelEditorCustomInspector.cs +++ b/Assets/Editor/LevelEditorCustomInspector.cs @@ -2,7 +2,6 @@ using UnityEngine.Tilemaps; using UnityEngine; using System.IO; -using static UnityEngine.GraphicsBuffer; using UnityEditor.SceneManagement; namespace GatherAndDefend.LevelEditor diff --git a/Assets/LevelEditor/LevelEditorScene.unity b/Assets/LevelEditor/LevelEditorScene.unity index 793e610..b735cac 100644 --- a/Assets/LevelEditor/LevelEditorScene.unity +++ b/Assets/LevelEditor/LevelEditorScene.unity @@ -123,7 +123,7 @@ NavMeshSettings: debug: m_Flags: 0 m_NavMeshData: {fileID: 0} ---- !u!1 &189138874 +--- !u!1 &86093666 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} @@ -131,38 +131,38 @@ GameObject: m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - - component: {fileID: 189138875} - - component: {fileID: 189138877} - - component: {fileID: 189138876} + - component: {fileID: 86093667} + - component: {fileID: 86093669} + - component: {fileID: 86093668} m_Layer: 0 - m_Name: Background + m_Name: Entities m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 ---- !u!4 &189138875 +--- !u!4 &86093667 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 189138874} + m_GameObject: {fileID: 86093666} 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: 1827197199} - m_RootOrder: 0 + m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!483693784 &189138876 +--- !u!483693784 &86093668 TilemapRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 189138874} + m_GameObject: {fileID: 86093666} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 @@ -205,16 +205,16 @@ TilemapRenderer: m_Mode: 0 m_DetectChunkCullingBounds: 0 m_MaskInteraction: 0 ---- !u!1839735485 &189138877 +--- !u!1839735485 &86093669 Tilemap: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 189138874} + m_GameObject: {fileID: 86093666} m_Enabled: 1 m_Tiles: - - first: {x: -8, y: -5, z: 0} + - first: {x: -10, y: -4, z: 0} second: serializedVersion: 2 m_TileIndex: 0 @@ -224,7 +224,7 @@ Tilemap: m_TileObjectToInstantiateIndex: 65535 dummyAlignment: 0 m_AllTileFlags: 1073741825 - - first: {x: -7, y: -5, z: 0} + - first: {x: -8, y: -4, z: 0} second: serializedVersion: 2 m_TileIndex: 0 @@ -234,7 +234,7 @@ Tilemap: m_TileObjectToInstantiateIndex: 65535 dummyAlignment: 0 m_AllTileFlags: 1073741825 - - first: {x: -6, y: -5, z: 0} + - first: {x: -6, y: -4, z: 0} second: serializedVersion: 2 m_TileIndex: 0 @@ -244,7 +244,7 @@ Tilemap: m_TileObjectToInstantiateIndex: 65535 dummyAlignment: 0 m_AllTileFlags: 1073741825 - - first: {x: -5, y: -5, z: 0} + - first: {x: -4, y: -4, z: 0} second: serializedVersion: 2 m_TileIndex: 0 @@ -254,7 +254,7 @@ Tilemap: m_TileObjectToInstantiateIndex: 65535 dummyAlignment: 0 m_AllTileFlags: 1073741825 - - first: {x: -4, y: -5, z: 0} + - first: {x: -2, y: -4, z: 0} second: serializedVersion: 2 m_TileIndex: 0 @@ -264,7 +264,7 @@ Tilemap: m_TileObjectToInstantiateIndex: 65535 dummyAlignment: 0 m_AllTileFlags: 1073741825 - - first: {x: -3, y: -5, z: 0} + - first: {x: 0, y: -4, z: 0} second: serializedVersion: 2 m_TileIndex: 0 @@ -274,7 +274,7 @@ Tilemap: m_TileObjectToInstantiateIndex: 65535 dummyAlignment: 0 m_AllTileFlags: 1073741825 - - first: {x: -2, y: -5, z: 0} + - first: {x: 2, y: -4, z: 0} second: serializedVersion: 2 m_TileIndex: 0 @@ -284,7 +284,7 @@ Tilemap: m_TileObjectToInstantiateIndex: 65535 dummyAlignment: 0 m_AllTileFlags: 1073741825 - - first: {x: -1, y: -5, z: 0} + - first: {x: 4, y: -4, z: 0} second: serializedVersion: 2 m_TileIndex: 0 @@ -294,7 +294,7 @@ Tilemap: m_TileObjectToInstantiateIndex: 65535 dummyAlignment: 0 m_AllTileFlags: 1073741825 - - first: {x: 0, y: -5, z: 0} + - first: {x: 6, y: -4, z: 0} second: serializedVersion: 2 m_TileIndex: 0 @@ -304,7 +304,7 @@ Tilemap: m_TileObjectToInstantiateIndex: 65535 dummyAlignment: 0 m_AllTileFlags: 1073741825 - - first: {x: 1, y: -5, z: 0} + - first: {x: 8, y: -4, z: 0} second: serializedVersion: 2 m_TileIndex: 0 @@ -314,7 +314,7 @@ Tilemap: m_TileObjectToInstantiateIndex: 65535 dummyAlignment: 0 m_AllTileFlags: 1073741825 - - first: {x: 2, y: -5, z: 0} + - first: {x: 10, y: -4, z: 0} second: serializedVersion: 2 m_TileIndex: 0 @@ -324,7 +324,7 @@ Tilemap: m_TileObjectToInstantiateIndex: 65535 dummyAlignment: 0 m_AllTileFlags: 1073741825 - - first: {x: 3, y: -5, z: 0} + - first: {x: -10, y: -2, z: 0} second: serializedVersion: 2 m_TileIndex: 0 @@ -334,7 +334,599 @@ Tilemap: m_TileObjectToInstantiateIndex: 65535 dummyAlignment: 0 m_AllTileFlags: 1073741825 - - first: {x: 4, y: -5, z: 0} + - first: {x: -8, y: -2, 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 + - first: {x: -6, y: -2, 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 + - first: {x: -4, y: -2, 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 + - first: {x: -2, y: -2, 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 + - first: {x: 0, y: -2, 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 + - first: {x: 2, y: -2, 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 + - first: {x: 4, y: -2, 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 + - first: {x: 6, y: -2, 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 + - first: {x: 8, y: -2, 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 + - first: {x: 10, y: -2, 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 + - first: {x: -10, 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 + - first: {x: -8, 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 + - first: {x: -6, 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 + - first: {x: -4, 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 + - 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 + - first: {x: 0, 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 + - 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 + - first: {x: 4, 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 + - first: {x: 6, 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 + - first: {x: 8, 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 + - first: {x: 10, 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 + - first: {x: -10, y: 2, 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 + - first: {x: -8, y: 2, 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 + - first: {x: -6, y: 2, 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 + - first: {x: -4, y: 2, 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 + - first: {x: -2, y: 2, 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 + - first: {x: 0, y: 2, 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 + - first: {x: 2, y: 2, 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 + - first: {x: 4, y: 2, 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 + - first: {x: 6, y: 2, 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 + - first: {x: 8, y: 2, 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 + - first: {x: 10, y: 2, 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: 44 + m_Data: {fileID: 11400000, guid: a387250a316b97e43be83b85980101e1, type: 2} + m_TileSpriteArray: + - m_RefCount: 44 + m_Data: {fileID: 21300000, guid: ccca3e050cb082b45af0a099790463f6, type: 3} + m_TileMatrixArray: + - m_RefCount: 44 + 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: 44 + m_Data: {r: 1, g: 1, b: 1, a: 1} + m_TileObjectToInstantiateArray: [] + m_AnimationFrameRate: 1 + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_Origin: {x: -10, y: -4, z: 0} + m_Size: {x: 21, y: 7, 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 &364640801 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 364640805} + - component: {fileID: 364640804} + - component: {fileID: 364640803} + - component: {fileID: 364640802} + m_Layer: 0 + m_Name: Camera + m_TagString: MainCamera + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &364640802 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 364640801} + 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: 0 + m_Antialiasing: 0 + m_AntialiasingQuality: 2 + m_StopNaN: 0 + m_Dithering: 0 + m_ClearDepth: 1 + m_AllowXRRendering: 1 + m_RequiresDepthTexture: 0 + m_RequiresColorTexture: 0 + m_Version: 2 +--- !u!81 &364640803 +AudioListener: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 364640801} + m_Enabled: 1 +--- !u!20 &364640804 +Camera: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 364640801} + 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_SensorSize: {x: 36, y: 24} + m_LensShift: {x: 0, y: 0} + m_FocalLength: 50 + 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: 0 + m_CullingMask: + serializedVersion: 2 + m_Bits: 55 + 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 &364640805 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 364640801} + 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_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &449089078 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 449089079} + - component: {fileID: 449089081} + - component: {fileID: 449089080} + m_Layer: 0 + m_Name: Background + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &449089079 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 449089078} + 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: 1827197199} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!483693784 &449089080 +TilemapRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 449089078} + 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_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_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 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 + m_MaskInteraction: 0 +--- !u!1839735485 &449089081 +Tilemap: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 449089078} + m_Enabled: 1 + m_Tiles: + - first: {x: -10, y: -4, 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 + - first: {x: -9, y: -4, z: 0} second: serializedVersion: 2 m_TileIndex: 0 @@ -474,6 +1066,86 @@ Tilemap: m_TileObjectToInstantiateIndex: 65535 dummyAlignment: 0 m_AllTileFlags: 1073741825 + - first: {x: 5, y: -4, 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 + - first: {x: 6, y: -4, 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 + - first: {x: 7, y: -4, 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 + - first: {x: 8, y: -4, 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 + - first: {x: 9, y: -4, 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 + - first: {x: 10, y: -4, 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 + - first: {x: -10, y: -3, 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 + - first: {x: -9, y: -3, 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 - first: {x: -8, y: -3, z: 0} second: serializedVersion: 2 @@ -604,6 +1276,86 @@ Tilemap: m_TileObjectToInstantiateIndex: 65535 dummyAlignment: 0 m_AllTileFlags: 1073741825 + - first: {x: 5, y: -3, 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 + - first: {x: 6, y: -3, 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 + - first: {x: 7, y: -3, 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 + - first: {x: 8, y: -3, 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 + - first: {x: 9, y: -3, 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 + - first: {x: 10, y: -3, 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 + - first: {x: -10, y: -2, 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 + - first: {x: -9, y: -2, 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 - first: {x: -8, y: -2, z: 0} second: serializedVersion: 2 @@ -734,6 +1486,86 @@ Tilemap: m_TileObjectToInstantiateIndex: 65535 dummyAlignment: 0 m_AllTileFlags: 1073741825 + - first: {x: 5, y: -2, 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 + - first: {x: 6, y: -2, 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 + - first: {x: 7, y: -2, 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 + - first: {x: 8, y: -2, 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 + - first: {x: 9, y: -2, 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 + - first: {x: 10, y: -2, 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 + - first: {x: -10, y: -1, 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 + - first: {x: -9, y: -1, 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 - first: {x: -8, y: -1, z: 0} second: serializedVersion: 2 @@ -864,6 +1696,86 @@ Tilemap: m_TileObjectToInstantiateIndex: 65535 dummyAlignment: 0 m_AllTileFlags: 1073741825 + - first: {x: 5, y: -1, 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 + - first: {x: 6, y: -1, 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 + - first: {x: 7, y: -1, 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 + - first: {x: 8, y: -1, 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 + - first: {x: 9, y: -1, 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 + - first: {x: 10, y: -1, 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 + - first: {x: -10, 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 + - first: {x: -9, 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 - first: {x: -8, y: 0, z: 0} second: serializedVersion: 2 @@ -994,6 +1906,86 @@ Tilemap: m_TileObjectToInstantiateIndex: 65535 dummyAlignment: 0 m_AllTileFlags: 1073741825 + - first: {x: 5, 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 + - first: {x: 6, 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 + - first: {x: 7, 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 + - first: {x: 8, 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 + - first: {x: 9, 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 + - first: {x: 10, 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 + - first: {x: -10, y: 1, 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 + - first: {x: -9, y: 1, 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 - first: {x: -8, y: 1, z: 0} second: serializedVersion: 2 @@ -1124,15 +2116,285 @@ Tilemap: m_TileObjectToInstantiateIndex: 65535 dummyAlignment: 0 m_AllTileFlags: 1073741825 + - first: {x: 5, y: 1, 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 + - first: {x: 6, y: 1, 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 + - first: {x: 7, y: 1, 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 + - first: {x: 8, y: 1, 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 + - first: {x: 9, y: 1, 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 + - first: {x: 10, y: 1, 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 + - first: {x: -10, y: 2, 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 + - first: {x: -9, y: 2, 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 + - first: {x: -8, y: 2, 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 + - first: {x: -7, y: 2, 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 + - first: {x: -6, y: 2, 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 + - first: {x: -5, y: 2, 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 + - first: {x: -4, y: 2, 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 + - first: {x: -3, y: 2, 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 + - first: {x: -2, y: 2, 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 + - first: {x: -1, y: 2, 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 + - first: {x: 0, y: 2, 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 + - first: {x: 1, y: 2, 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 + - first: {x: 2, y: 2, 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 + - first: {x: 3, y: 2, 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 + - first: {x: 4, y: 2, 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 + - first: {x: 5, y: 2, 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 + - first: {x: 6, y: 2, 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 + - first: {x: 7, y: 2, 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 + - first: {x: 8, y: 2, 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 + - first: {x: 9, y: 2, 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 + - first: {x: 10, y: 2, 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: 91 + - m_RefCount: 147 m_Data: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} m_TileSpriteArray: - - m_RefCount: 91 + - m_RefCount: 147 m_Data: {fileID: 21300000, guid: 1f8a7d27b012449499d5316045662e1e, type: 3} m_TileMatrixArray: - - m_RefCount: 91 + - m_RefCount: 147 m_Data: e00: 1 e01: 0 @@ -1151,15 +2413,13 @@ Tilemap: e32: 0 e33: 1 m_TileColorArray: - - m_RefCount: 91 + - m_RefCount: 147 m_Data: {r: 1, g: 1, b: 1, a: 1} - m_TileObjectToInstantiateArray: - - m_RefCount: 0 - m_Data: {fileID: 0} + m_TileObjectToInstantiateArray: [] m_AnimationFrameRate: 1 m_Color: {r: 1, g: 1, b: 1, a: 1} - m_Origin: {x: -8, y: -5, z: 0} - m_Size: {x: 13, y: 7, z: 1} + m_Origin: {x: -10, y: -4, z: 0} + m_Size: {x: 21, y: 7, z: 1} m_TileAnchor: {x: 0.5, y: 0.5, z: 0} m_TileOrientation: 0 m_TileOrientationMatrix: @@ -1179,7 +2439,7 @@ Tilemap: e31: 0 e32: 0 e33: 1 ---- !u!1 &364640801 +--- !u!1 &991823372 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} @@ -1187,128 +2447,9 @@ GameObject: m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - - component: {fileID: 364640805} - - component: {fileID: 364640804} - - component: {fileID: 364640803} - - component: {fileID: 364640802} - m_Layer: 0 - m_Name: Camera - m_TagString: MainCamera - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!114 &364640802 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 364640801} - 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: 0 - m_Antialiasing: 0 - m_AntialiasingQuality: 2 - m_StopNaN: 0 - m_Dithering: 0 - m_ClearDepth: 1 - m_AllowXRRendering: 1 - m_RequiresDepthTexture: 0 - m_RequiresColorTexture: 0 - m_Version: 2 ---- !u!81 &364640803 -AudioListener: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 364640801} - m_Enabled: 1 ---- !u!20 &364640804 -Camera: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 364640801} - 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_SensorSize: {x: 36, y: 24} - m_LensShift: {x: 0, y: 0} - m_FocalLength: 50 - 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: 0 - m_CullingMask: - serializedVersion: 2 - m_Bits: 55 - 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 &364640805 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 364640801} - 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_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!1 &388196584 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 388196585} - - component: {fileID: 388196587} - - component: {fileID: 388196586} - - component: {fileID: 388196588} + - component: {fileID: 991823373} + - component: {fileID: 991823375} + - component: {fileID: 991823374} m_Layer: 6 m_Name: Spawners m_TagString: Untagged @@ -1316,13 +2457,13 @@ GameObject: m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 ---- !u!4 &388196585 +--- !u!4 &991823373 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 388196584} + m_GameObject: {fileID: 991823372} 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} @@ -1331,13 +2472,13 @@ Transform: m_Father: {fileID: 1827197199} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!483693784 &388196586 +--- !u!483693784 &991823374 TilemapRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 388196584} + m_GameObject: {fileID: 991823372} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 @@ -1380,16 +2521,16 @@ TilemapRenderer: m_Mode: 0 m_DetectChunkCullingBounds: 0 m_MaskInteraction: 0 ---- !u!1839735485 &388196587 +--- !u!1839735485 &991823375 Tilemap: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 388196584} + m_GameObject: {fileID: 991823372} m_Enabled: 1 m_Tiles: - - first: {x: -8, y: -5, z: 0} + - first: {x: -10, y: -4, z: 0} second: serializedVersion: 2 m_TileIndex: 0 @@ -1399,7 +2540,17 @@ Tilemap: m_TileObjectToInstantiateIndex: 65535 dummyAlignment: 0 m_AllTileFlags: 0 - - first: {x: -8, y: -3, z: 0} + - first: {x: 10, y: -4, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 1 + m_TileSpriteIndex: 1 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 0 + - first: {x: -10, y: -2, z: 0} second: serializedVersion: 2 m_TileIndex: 0 @@ -1409,7 +2560,17 @@ Tilemap: m_TileObjectToInstantiateIndex: 65535 dummyAlignment: 0 m_AllTileFlags: 0 - - first: {x: -8, y: -1, z: 0} + - first: {x: 10, y: -2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 1 + m_TileSpriteIndex: 1 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 0 + - first: {x: -10, y: 0, z: 0} second: serializedVersion: 2 m_TileIndex: 0 @@ -1419,7 +2580,17 @@ Tilemap: m_TileObjectToInstantiateIndex: 65535 dummyAlignment: 0 m_AllTileFlags: 0 - - first: {x: -8, y: 1, z: 0} + - first: {x: 10, y: 0, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 1 + m_TileSpriteIndex: 1 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 0 + - first: {x: -10, y: 2, z: 0} second: serializedVersion: 2 m_TileIndex: 0 @@ -1429,15 +2600,29 @@ Tilemap: m_TileObjectToInstantiateIndex: 65535 dummyAlignment: 0 m_AllTileFlags: 0 + - first: {x: 10, y: 2, z: 0} + second: + serializedVersion: 2 + m_TileIndex: 1 + m_TileSpriteIndex: 1 + m_TileMatrixIndex: 0 + m_TileColorIndex: 0 + m_TileObjectToInstantiateIndex: 65535 + dummyAlignment: 0 + m_AllTileFlags: 0 m_AnimatedTiles: {} m_TileAssetArray: - m_RefCount: 4 m_Data: {fileID: 11400000, guid: 4aaf448680c7f8a438a9a5861c622a55, type: 2} + - m_RefCount: 4 + m_Data: {fileID: 11400000, guid: 4002377ed7e87b34699f126f2b10c703, type: 2} m_TileSpriteArray: - m_RefCount: 4 m_Data: {fileID: 21300000, guid: 77a39e873655d3c4b93d0b7696397b83, type: 3} - m_TileMatrixArray: - m_RefCount: 4 + m_Data: {fileID: 21300000, guid: b85a4b2ec6433d04895612d791edc260, type: 3} + m_TileMatrixArray: + - m_RefCount: 8 m_Data: e00: 1 e01: 0 @@ -1456,457 +2641,13 @@ Tilemap: e32: 0 e33: 1 m_TileColorArray: - - m_RefCount: 4 + - m_RefCount: 8 m_Data: {r: 1, g: 1, b: 1, a: 1} - m_TileObjectToInstantiateArray: - - m_RefCount: 0 - m_Data: {fileID: 0} + m_TileObjectToInstantiateArray: [] m_AnimationFrameRate: 1 m_Color: {r: 1, g: 1, b: 1, a: 1} - m_Origin: {x: -8, y: -5, z: 0} - m_Size: {x: 8, y: 7, 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 &388196588 -TilemapCollider2D: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 388196584} - m_Enabled: 1 - m_Density: 1 - m_Material: {fileID: 0} - m_IsTrigger: 0 - m_UsedByEffector: 0 - m_UsedByComposite: 0 - m_Offset: {x: 0, y: 0} - m_MaximumTileChangeCount: 1000 - m_ExtrusionFactor: 0 ---- !u!1 &456843627 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 456843628} - - component: {fileID: 456843630} - - component: {fileID: 456843629} - m_Layer: 0 - m_Name: Entities - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &456843628 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 456843627} - 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: 1827197199} - m_RootOrder: 1 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!483693784 &456843629 -TilemapRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 456843627} - 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_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_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 1 - 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 - m_MaskInteraction: 0 ---- !u!1839735485 &456843630 -Tilemap: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 456843627} - m_Enabled: 1 - m_Tiles: - - first: {x: -8, y: -5, 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 - - first: {x: -6, y: -5, 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 - - first: {x: -4, y: -5, 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 - - first: {x: -2, y: -5, 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 - - first: {x: 0, y: -5, 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 - - first: {x: 2, y: -5, 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 - - first: {x: 4, y: -5, 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 - - first: {x: -8, y: -3, 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 - - first: {x: -6, y: -3, 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 - - first: {x: -4, y: -3, 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 - - first: {x: -2, y: -3, 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 - - first: {x: 0, y: -3, 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 - - first: {x: 2, y: -3, 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 - - first: {x: 4, y: -3, 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 - - first: {x: -8, y: -1, 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 - - first: {x: -6, y: -1, 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 - - first: {x: -4, y: -1, 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 - - first: {x: -2, y: -1, 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 - - first: {x: 0, y: -1, 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 - - first: {x: 2, y: -1, 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 - - first: {x: 4, y: -1, 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 - - first: {x: -8, y: 1, 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 - - first: {x: -6, y: 1, 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 - - first: {x: -4, y: 1, 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 - - first: {x: -2, y: 1, 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 - - first: {x: 0, y: 1, 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 - - first: {x: 2, y: 1, 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 - - first: {x: 4, y: 1, 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: 28 - m_Data: {fileID: 11400000, guid: a387250a316b97e43be83b85980101e1, type: 2} - m_TileSpriteArray: - - m_RefCount: 28 - m_Data: {fileID: 21300000, guid: ccca3e050cb082b45af0a099790463f6, type: 3} - m_TileMatrixArray: - - m_RefCount: 28 - 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: 28 - 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: -8, y: -5, z: 0} - m_Size: {x: 13, y: 7, z: 1} + m_Origin: {x: -10, y: -4, z: 0} + m_Size: {x: 21, y: 7, z: 1} m_TileAnchor: {x: 0.5, y: 0.5, z: 0} m_TileOrientation: 0 m_TileOrientationMatrix: @@ -1968,9 +2709,9 @@ Transform: m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: - - {fileID: 189138875} - - {fileID: 456843628} - - {fileID: 388196585} + - {fileID: 449089079} + - {fileID: 86093667} + - {fileID: 991823373} m_Father: {fileID: 0} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} @@ -1988,3 +2729,48 @@ MonoBehaviour: m_EditorClassIdentifier: _path: {fileID: 102900000, guid: c9341b1bdc1103b4e832cf62d29e5471, type: 3} _level: {fileID: 11400000, guid: e715669e1ed4b294c82d07ac011e89bb, type: 2} +--- !u!1 &2124900075 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2124900076} + - component: {fileID: 2124900077} + m_Layer: 0 + m_Name: LevelManager + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &2124900076 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2124900075} + 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_RootOrder: 2 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &2124900077 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2124900075} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: c8f415d45fd9659408ac8c5ce2e96aba, type: 3} + m_Name: + m_EditorClassIdentifier: + firstLevel: {fileID: 11400000, guid: e715669e1ed4b294c82d07ac011e89bb, type: 2} diff --git a/Assets/LevelEditor/Levels/Level.asset b/Assets/LevelEditor/Levels/Level.asset index da4cd03..61e1aa9 100644 --- a/Assets/LevelEditor/Levels/Level.asset +++ b/Assets/LevelEditor/Levels/Level.asset @@ -14,9 +14,35 @@ MonoBehaviour: m_EditorClassIdentifier: _data: - _key: Background - tiles: + _tiles: - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} - _position: {x: -8, y: -5, z: 0} + _position: {x: -10, y: -4, z: 0} + - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} + _position: {x: -10, y: -3, z: 0} + - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} + _position: {x: -10, y: -2, z: 0} + - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} + _position: {x: -10, y: -1, z: 0} + - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} + _position: {x: -10, y: 0, z: 0} + - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} + _position: {x: -10, y: 1, z: 0} + - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} + _position: {x: -10, y: 2, z: 0} + - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} + _position: {x: -9, y: -4, z: 0} + - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} + _position: {x: -9, y: -3, z: 0} + - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} + _position: {x: -9, y: -2, z: 0} + - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} + _position: {x: -9, y: -1, z: 0} + - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} + _position: {x: -9, y: 0, z: 0} + - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} + _position: {x: -9, y: 1, z: 0} + - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} + _position: {x: -9, y: 2, z: 0} - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} _position: {x: -8, y: -4, z: 0} - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} @@ -30,7 +56,7 @@ MonoBehaviour: - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} _position: {x: -8, y: 1, z: 0} - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} - _position: {x: -7, y: -5, z: 0} + _position: {x: -8, y: 2, z: 0} - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} _position: {x: -7, y: -4, z: 0} - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} @@ -44,7 +70,7 @@ MonoBehaviour: - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} _position: {x: -7, y: 1, z: 0} - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} - _position: {x: -6, y: -5, z: 0} + _position: {x: -7, y: 2, z: 0} - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} _position: {x: -6, y: -4, z: 0} - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} @@ -58,7 +84,7 @@ MonoBehaviour: - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} _position: {x: -6, y: 1, z: 0} - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} - _position: {x: -5, y: -5, z: 0} + _position: {x: -6, y: 2, z: 0} - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} _position: {x: -5, y: -4, z: 0} - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} @@ -72,7 +98,7 @@ MonoBehaviour: - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} _position: {x: -5, y: 1, z: 0} - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} - _position: {x: -4, y: -5, z: 0} + _position: {x: -5, y: 2, z: 0} - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} _position: {x: -4, y: -4, z: 0} - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} @@ -86,7 +112,7 @@ MonoBehaviour: - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} _position: {x: -4, y: 1, z: 0} - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} - _position: {x: -3, y: -5, z: 0} + _position: {x: -4, y: 2, z: 0} - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} _position: {x: -3, y: -4, z: 0} - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} @@ -100,7 +126,7 @@ MonoBehaviour: - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} _position: {x: -3, y: 1, z: 0} - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} - _position: {x: -2, y: -5, z: 0} + _position: {x: -3, y: 2, z: 0} - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} _position: {x: -2, y: -4, z: 0} - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} @@ -114,7 +140,7 @@ MonoBehaviour: - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} _position: {x: -2, y: 1, z: 0} - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} - _position: {x: -1, y: -5, z: 0} + _position: {x: -2, y: 2, z: 0} - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} _position: {x: -1, y: -4, z: 0} - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} @@ -128,7 +154,7 @@ MonoBehaviour: - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} _position: {x: -1, y: 1, z: 0} - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} - _position: {x: 0, y: -5, z: 0} + _position: {x: -1, y: 2, z: 0} - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} _position: {x: 0, y: -4, z: 0} - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} @@ -142,7 +168,7 @@ MonoBehaviour: - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} _position: {x: 0, y: 1, z: 0} - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} - _position: {x: 1, y: -5, z: 0} + _position: {x: 0, y: 2, z: 0} - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} _position: {x: 1, y: -4, z: 0} - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} @@ -156,7 +182,7 @@ MonoBehaviour: - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} _position: {x: 1, y: 1, z: 0} - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} - _position: {x: 2, y: -5, z: 0} + _position: {x: 1, y: 2, z: 0} - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} _position: {x: 2, y: -4, z: 0} - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} @@ -170,7 +196,7 @@ MonoBehaviour: - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} _position: {x: 2, y: 1, z: 0} - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} - _position: {x: 3, y: -5, z: 0} + _position: {x: 2, y: 2, z: 0} - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} _position: {x: 3, y: -4, z: 0} - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} @@ -184,7 +210,7 @@ MonoBehaviour: - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} _position: {x: 3, y: 1, z: 0} - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} - _position: {x: 4, y: -5, z: 0} + _position: {x: 3, y: 2, z: 0} - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} _position: {x: 4, y: -4, z: 0} - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} @@ -197,71 +223,212 @@ MonoBehaviour: _position: {x: 4, y: 0, z: 0} - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} _position: {x: 4, y: 1, z: 0} + - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} + _position: {x: 4, y: 2, z: 0} + - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} + _position: {x: 5, y: -4, z: 0} + - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} + _position: {x: 5, y: -3, z: 0} + - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} + _position: {x: 5, y: -2, z: 0} + - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} + _position: {x: 5, y: -1, z: 0} + - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} + _position: {x: 5, y: 0, z: 0} + - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} + _position: {x: 5, y: 1, z: 0} + - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} + _position: {x: 5, y: 2, z: 0} + - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} + _position: {x: 6, y: -4, z: 0} + - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} + _position: {x: 6, y: -3, z: 0} + - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} + _position: {x: 6, y: -2, z: 0} + - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} + _position: {x: 6, y: -1, z: 0} + - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} + _position: {x: 6, y: 0, z: 0} + - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} + _position: {x: 6, y: 1, z: 0} + - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} + _position: {x: 6, y: 2, z: 0} + - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} + _position: {x: 7, y: -4, z: 0} + - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} + _position: {x: 7, y: -3, z: 0} + - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} + _position: {x: 7, y: -2, z: 0} + - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} + _position: {x: 7, y: -1, z: 0} + - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} + _position: {x: 7, y: 0, z: 0} + - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} + _position: {x: 7, y: 1, z: 0} + - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} + _position: {x: 7, y: 2, z: 0} + - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} + _position: {x: 8, y: -4, z: 0} + - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} + _position: {x: 8, y: -3, z: 0} + - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} + _position: {x: 8, y: -2, z: 0} + - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} + _position: {x: 8, y: -1, z: 0} + - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} + _position: {x: 8, y: 0, z: 0} + - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} + _position: {x: 8, y: 1, z: 0} + - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} + _position: {x: 8, y: 2, z: 0} + - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} + _position: {x: 9, y: -4, z: 0} + - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} + _position: {x: 9, y: -3, z: 0} + - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} + _position: {x: 9, y: -2, z: 0} + - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} + _position: {x: 9, y: -1, z: 0} + - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} + _position: {x: 9, y: 0, z: 0} + - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} + _position: {x: 9, y: 1, z: 0} + - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} + _position: {x: 9, y: 2, z: 0} + - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} + _position: {x: 10, y: -4, z: 0} + - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} + _position: {x: 10, y: -3, z: 0} + - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} + _position: {x: 10, y: -2, z: 0} + - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} + _position: {x: 10, y: -1, z: 0} + - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} + _position: {x: 10, y: 0, z: 0} + - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} + _position: {x: 10, y: 1, z: 0} + - _tile: {fileID: 11400000, guid: ef5a154519b23a34aaded32e86bf7f2f, type: 2} + _position: {x: 10, y: 2, z: 0} + _isInvisible: 0 + _isCollidable: 0 + _isTrigger: 0 + _renderOrder: 0 + _renderLayer: Default - _key: Entities - tiles: + _tiles: - _tile: {fileID: 11400000, guid: a387250a316b97e43be83b85980101e1, type: 2} - _position: {x: -8, y: -5, z: 0} + _position: {x: -10, y: -4, z: 0} - _tile: {fileID: 11400000, guid: a387250a316b97e43be83b85980101e1, type: 2} - _position: {x: -8, y: -3, z: 0} + _position: {x: -10, y: -2, z: 0} - _tile: {fileID: 11400000, guid: a387250a316b97e43be83b85980101e1, type: 2} - _position: {x: -8, y: -1, z: 0} + _position: {x: -10, y: 0, z: 0} - _tile: {fileID: 11400000, guid: a387250a316b97e43be83b85980101e1, type: 2} - _position: {x: -8, y: 1, z: 0} + _position: {x: -10, y: 2, z: 0} - _tile: {fileID: 11400000, guid: a387250a316b97e43be83b85980101e1, type: 2} - _position: {x: -6, y: -5, z: 0} + _position: {x: -8, y: -4, z: 0} - _tile: {fileID: 11400000, guid: a387250a316b97e43be83b85980101e1, type: 2} - _position: {x: -6, y: -3, z: 0} + _position: {x: -8, y: -2, z: 0} - _tile: {fileID: 11400000, guid: a387250a316b97e43be83b85980101e1, type: 2} - _position: {x: -6, y: -1, z: 0} + _position: {x: -8, y: 0, z: 0} - _tile: {fileID: 11400000, guid: a387250a316b97e43be83b85980101e1, type: 2} - _position: {x: -6, y: 1, z: 0} + _position: {x: -8, y: 2, z: 0} - _tile: {fileID: 11400000, guid: a387250a316b97e43be83b85980101e1, type: 2} - _position: {x: -4, y: -5, z: 0} + _position: {x: -6, y: -4, z: 0} - _tile: {fileID: 11400000, guid: a387250a316b97e43be83b85980101e1, type: 2} - _position: {x: -4, y: -3, z: 0} + _position: {x: -6, y: -2, z: 0} - _tile: {fileID: 11400000, guid: a387250a316b97e43be83b85980101e1, type: 2} - _position: {x: -4, y: -1, z: 0} + _position: {x: -6, y: 0, z: 0} - _tile: {fileID: 11400000, guid: a387250a316b97e43be83b85980101e1, type: 2} - _position: {x: -4, y: 1, z: 0} + _position: {x: -6, y: 2, z: 0} - _tile: {fileID: 11400000, guid: a387250a316b97e43be83b85980101e1, type: 2} - _position: {x: -2, y: -5, z: 0} + _position: {x: -4, y: -4, z: 0} - _tile: {fileID: 11400000, guid: a387250a316b97e43be83b85980101e1, type: 2} - _position: {x: -2, y: -3, z: 0} + _position: {x: -4, y: -2, z: 0} - _tile: {fileID: 11400000, guid: a387250a316b97e43be83b85980101e1, type: 2} - _position: {x: -2, y: -1, z: 0} + _position: {x: -4, y: 0, z: 0} - _tile: {fileID: 11400000, guid: a387250a316b97e43be83b85980101e1, type: 2} - _position: {x: -2, y: 1, z: 0} + _position: {x: -4, y: 2, z: 0} - _tile: {fileID: 11400000, guid: a387250a316b97e43be83b85980101e1, type: 2} - _position: {x: 0, y: -5, z: 0} + _position: {x: -2, y: -4, z: 0} - _tile: {fileID: 11400000, guid: a387250a316b97e43be83b85980101e1, type: 2} - _position: {x: 0, y: -3, z: 0} + _position: {x: -2, y: -2, z: 0} - _tile: {fileID: 11400000, guid: a387250a316b97e43be83b85980101e1, type: 2} - _position: {x: 0, y: -1, z: 0} + _position: {x: -2, y: 0, z: 0} - _tile: {fileID: 11400000, guid: a387250a316b97e43be83b85980101e1, type: 2} - _position: {x: 0, y: 1, z: 0} + _position: {x: -2, y: 2, z: 0} - _tile: {fileID: 11400000, guid: a387250a316b97e43be83b85980101e1, type: 2} - _position: {x: 2, y: -5, z: 0} + _position: {x: 0, y: -4, z: 0} - _tile: {fileID: 11400000, guid: a387250a316b97e43be83b85980101e1, type: 2} - _position: {x: 2, y: -3, z: 0} + _position: {x: 0, y: -2, z: 0} - _tile: {fileID: 11400000, guid: a387250a316b97e43be83b85980101e1, type: 2} - _position: {x: 2, y: -1, z: 0} + _position: {x: 0, y: 0, z: 0} - _tile: {fileID: 11400000, guid: a387250a316b97e43be83b85980101e1, type: 2} - _position: {x: 2, y: 1, z: 0} + _position: {x: 0, y: 2, z: 0} - _tile: {fileID: 11400000, guid: a387250a316b97e43be83b85980101e1, type: 2} - _position: {x: 4, y: -5, z: 0} + _position: {x: 2, y: -4, z: 0} - _tile: {fileID: 11400000, guid: a387250a316b97e43be83b85980101e1, type: 2} - _position: {x: 4, y: -3, z: 0} + _position: {x: 2, y: -2, z: 0} - _tile: {fileID: 11400000, guid: a387250a316b97e43be83b85980101e1, type: 2} - _position: {x: 4, y: -1, z: 0} + _position: {x: 2, y: 0, z: 0} - _tile: {fileID: 11400000, guid: a387250a316b97e43be83b85980101e1, type: 2} - _position: {x: 4, y: 1, z: 0} + _position: {x: 2, y: 2, z: 0} + - _tile: {fileID: 11400000, guid: a387250a316b97e43be83b85980101e1, type: 2} + _position: {x: 4, y: -4, z: 0} + - _tile: {fileID: 11400000, guid: a387250a316b97e43be83b85980101e1, type: 2} + _position: {x: 4, y: -2, z: 0} + - _tile: {fileID: 11400000, guid: a387250a316b97e43be83b85980101e1, type: 2} + _position: {x: 4, y: 0, z: 0} + - _tile: {fileID: 11400000, guid: a387250a316b97e43be83b85980101e1, type: 2} + _position: {x: 4, y: 2, z: 0} + - _tile: {fileID: 11400000, guid: a387250a316b97e43be83b85980101e1, type: 2} + _position: {x: 6, y: -4, z: 0} + - _tile: {fileID: 11400000, guid: a387250a316b97e43be83b85980101e1, type: 2} + _position: {x: 6, y: -2, z: 0} + - _tile: {fileID: 11400000, guid: a387250a316b97e43be83b85980101e1, type: 2} + _position: {x: 6, y: 0, z: 0} + - _tile: {fileID: 11400000, guid: a387250a316b97e43be83b85980101e1, type: 2} + _position: {x: 6, y: 2, z: 0} + - _tile: {fileID: 11400000, guid: a387250a316b97e43be83b85980101e1, type: 2} + _position: {x: 8, y: -4, z: 0} + - _tile: {fileID: 11400000, guid: a387250a316b97e43be83b85980101e1, type: 2} + _position: {x: 8, y: -2, z: 0} + - _tile: {fileID: 11400000, guid: a387250a316b97e43be83b85980101e1, type: 2} + _position: {x: 8, y: 0, z: 0} + - _tile: {fileID: 11400000, guid: a387250a316b97e43be83b85980101e1, type: 2} + _position: {x: 8, y: 2, z: 0} + - _tile: {fileID: 11400000, guid: a387250a316b97e43be83b85980101e1, type: 2} + _position: {x: 10, y: -4, z: 0} + - _tile: {fileID: 11400000, guid: a387250a316b97e43be83b85980101e1, type: 2} + _position: {x: 10, y: -2, z: 0} + - _tile: {fileID: 11400000, guid: a387250a316b97e43be83b85980101e1, type: 2} + _position: {x: 10, y: 0, z: 0} + - _tile: {fileID: 11400000, guid: a387250a316b97e43be83b85980101e1, type: 2} + _position: {x: 10, y: 2, z: 0} + _isInvisible: 0 + _isCollidable: 0 + _isTrigger: 0 + _renderOrder: 0 + _renderLayer: Default - _key: Spawners - tiles: + _tiles: - _tile: {fileID: 11400000, guid: 4aaf448680c7f8a438a9a5861c622a55, type: 2} - _position: {x: -8, y: -5, z: 0} + _position: {x: -10, y: -4, z: 0} - _tile: {fileID: 11400000, guid: 4aaf448680c7f8a438a9a5861c622a55, type: 2} - _position: {x: -8, y: -3, z: 0} + _position: {x: -10, y: -2, z: 0} - _tile: {fileID: 11400000, guid: 4aaf448680c7f8a438a9a5861c622a55, type: 2} - _position: {x: -8, y: -1, z: 0} + _position: {x: -10, y: 0, z: 0} - _tile: {fileID: 11400000, guid: 4aaf448680c7f8a438a9a5861c622a55, type: 2} - _position: {x: -8, y: 1, z: 0} + _position: {x: -10, y: 2, z: 0} + - _tile: {fileID: 11400000, guid: 4002377ed7e87b34699f126f2b10c703, type: 2} + _position: {x: 10, y: -4, z: 0} + - _tile: {fileID: 11400000, guid: 4002377ed7e87b34699f126f2b10c703, type: 2} + _position: {x: 10, y: -2, z: 0} + - _tile: {fileID: 11400000, guid: 4002377ed7e87b34699f126f2b10c703, type: 2} + _position: {x: 10, y: 0, z: 0} + - _tile: {fileID: 11400000, guid: 4002377ed7e87b34699f126f2b10c703, type: 2} + _position: {x: 10, y: 2, z: 0} + _isInvisible: 1 + _isCollidable: 0 + _isTrigger: 0 + _renderOrder: 2 + _renderLayer: Default diff --git a/Assets/New Database.asset b/Assets/New Database.asset new file mode 100644 index 0000000..451bbe7 --- /dev/null +++ b/Assets/New Database.asset @@ -0,0 +1,31 @@ +%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: edb1aa3d6230b1e4c9a50056da756015, type: 3} + m_Name: New Database + m_EditorClassIdentifier: + _prefabs: + - {fileID: 6962989255644195630, guid: 6cd87b398e7a0e94580f4fcbe2fd310a, type: 3} + - {fileID: 6962989255644195630, guid: 377c7275c0001cc47a6b8926ac57d573, type: 3} + - {fileID: 6962989255644195630, guid: 869a03bba705e8d4485aa73daad773dc, type: 3} + - {fileID: 6962989255644195630, guid: 9b40c232eddfd1b469bea688e3c970c0, type: 3} + - {fileID: 4052934186652138539, guid: 8560e1f66d452b543a705c8a0f3e22fa, type: 3} + - {fileID: 3814095509541806390, guid: 9527f3a1482b90a48bb6c62acc70f986, type: 3} + _scriptableObjects: + - {fileID: 11400000, guid: e715669e1ed4b294c82d07ac011e89bb, type: 2} + - {fileID: 11400000, guid: a6e34739c9325da4cac4fbaea30d052c, type: 2} + - {fileID: 11400000, guid: d37561e153d6a6448a03839488fdec5e, type: 2} + - {fileID: 11400000, guid: 4002377ed7e87b34699f126f2b10c703, type: 2} + - {fileID: 11400000, guid: 4aaf448680c7f8a438a9a5861c622a55, type: 2} + _folders: + - {fileID: 102900000, guid: 0ca30b5ca281be24bb62d7e48cc2bec8, type: 3} + - {fileID: 102900000, guid: f3dee7994db941e47b9445cb464c69a9, type: 3} + - {fileID: 102900000, guid: 4f8284570682f8f4c954e446b35ea0ae, type: 3} diff --git a/Assets/Database.asset.meta b/Assets/New Database.asset.meta similarity index 79% rename from Assets/Database.asset.meta rename to Assets/New Database.asset.meta index 0b2a000..c5c7e57 100644 --- a/Assets/Database.asset.meta +++ b/Assets/New Database.asset.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: a4bf69f8ff62be443a8177430eb8e28a +guid: 8fac5b907c0463e4590e43f7fedee816 NativeFormatImporter: externalObjects: {} mainObjectFileID: 11400000 diff --git a/Assets/Scripts/Entity.cs b/Assets/Scripts/Entity.cs index 75d7689..8de99da 100644 --- a/Assets/Scripts/Entity.cs +++ b/Assets/Scripts/Entity.cs @@ -67,11 +67,9 @@ public class Entity : LevelObject #region [LevelManager code] public override bool Equals(ILevelObject other) { - if (!(other is Entity)) return false; - var otherEntity = other as Entity; - return otherEntity._hp == _hp - && otherEntity.Position == Position - && otherEntity.Name == Name + return other is Entity otherEntity + && base.Equals(otherEntity) + && otherEntity._hp == _hp && otherEntity._speed == _speed && otherEntity._attack_speed == _attack_speed && otherEntity._attack_damage == _attack_damage; @@ -79,7 +77,14 @@ public class Entity : LevelObject public override Dictionary ToDictionary() { - return Extensions.ToDictionary(this); + var dict = base.ToDictionary(); + + dict[nameof(_hp)] = _hp; + dict[nameof(_speed)] = _speed; + dict[nameof(_attack_speed)] = _attack_speed; + dict[nameof(_attack_damage)] = _attack_damage; + + return dict; } #endregion } diff --git a/Assets/Scripts/General/DatabaseSO.cs b/Assets/Scripts/General/Database.cs similarity index 90% rename from Assets/Scripts/General/DatabaseSO.cs rename to Assets/Scripts/General/Database.cs index ead338a..52b29b8 100644 --- a/Assets/Scripts/General/DatabaseSO.cs +++ b/Assets/Scripts/General/Database.cs @@ -8,7 +8,7 @@ using System; #if UNITY_EDITOR using UnityEditor; -[CustomEditor(typeof(DatabaseSO))] +[CustomEditor(typeof(Database))] public class DatabaseEditor : Editor { public override void OnInspectorGUI() @@ -17,7 +17,7 @@ public class DatabaseEditor : Editor if (GUILayout.Button("fetch assets")) { - var targ = target as DatabaseSO; + var targ = target as Database; @@ -54,9 +54,16 @@ public class DatabaseEditor : Editor } #endif -[Serializable] -public class Database : Singleton +[CreateAssetMenu(menuName = "Gather And Defend/Database")] +public class Database : ScriptableObject { + public static Database Instance + { + get; + private set; + } + + public const string TYPE = nameof(TYPE); [Serializable] public class DataList : IEnumerable where T : UnityEngine.Object { @@ -89,19 +96,13 @@ public class Database : Singleton public DataList Prefabs => _prefabs; public DataList ScriptableObjects => _scriptableObjects; - + public Database() { + if (!Instance) Instance = this; _prefabs = new List(); _scriptableObjects = new List(); } -} - -[CreateAssetMenu(menuName = "Gather And Defend/Database")] -public class DatabaseSO : ScriptableObject -{ - [SerializeField] - private Database database = Database.Instance; [Header("Editor section")] [SerializeField] private List _folders; diff --git a/Assets/Scripts/General/DatabaseSO.cs.meta b/Assets/Scripts/General/Database.cs.meta similarity index 61% rename from Assets/Scripts/General/DatabaseSO.cs.meta rename to Assets/Scripts/General/Database.cs.meta index aa51a53..cd94a48 100644 --- a/Assets/Scripts/General/DatabaseSO.cs.meta +++ b/Assets/Scripts/General/Database.cs.meta @@ -1,11 +1,11 @@ fileFormatVersion: 2 -guid: 8442e6f4be8799444b7bd9703a5c88dc +guid: edb1aa3d6230b1e4c9a50056da756015 MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 - icon: {fileID: 2800000, guid: b6a96c7c65795c94abf54a62adbf5c38, type: 3} + icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: diff --git a/Assets/Scripts/General/Extensions.cs b/Assets/Scripts/General/Extensions.cs index c0f56f0..e55c9b3 100644 --- a/Assets/Scripts/General/Extensions.cs +++ b/Assets/Scripts/General/Extensions.cs @@ -5,6 +5,14 @@ using UnityEngine; public static class Extensions { + public static T GetComponentInChildren(this Component obj, string name) where T : Component + { + foreach (var comp in obj.GetComponentsInChildren()) + { + if (comp.name == name) return comp; + } + return null; + } public enum LevelObjectType { GameObject, Tile } public static bool Approximately(this Vector3 vect, Vector3 other) { diff --git a/Assets/Scripts/General/SingletonSO.cs b/Assets/Scripts/General/SingletonSO.cs new file mode 100644 index 0000000..878889c --- /dev/null +++ b/Assets/Scripts/General/SingletonSO.cs @@ -0,0 +1,17 @@ +using UnityEngine; + +public class SingletonSO : ScriptableObject where T : SingletonSO +{ + private static T _instance; + public static T Instance + { + get + { + if (!_instance) + { + _instance = CreateInstance(); + } + return _instance; + } + } +} \ No newline at end of file diff --git a/Assets/Scripts/General/SingletonSO.cs.meta b/Assets/Scripts/General/SingletonSO.cs.meta new file mode 100644 index 0000000..2ed6595 --- /dev/null +++ b/Assets/Scripts/General/SingletonSO.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: d7329f36f451bd2479a760e1fc38e1a3 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/LevelManager/ILevelObject.cs b/Assets/Scripts/LevelManager/ILevelObject.cs index 22f7fb6..d6abab6 100644 --- a/Assets/Scripts/LevelManager/ILevelObject.cs +++ b/Assets/Scripts/LevelManager/ILevelObject.cs @@ -10,4 +10,6 @@ public interface ILevelObject void LevelDestroy(); bool Equals(ILevelObject other); Dictionary ToDictionary(); + void LoadDictionary(Dictionary dict); + void RemoveFromLevel(); } \ No newline at end of file diff --git a/Assets/Scripts/LevelManager/LevelManagerScript.cs b/Assets/Scripts/LevelManager/LevelManagerScript.cs index df4a11a..947164c 100644 --- a/Assets/Scripts/LevelManager/LevelManagerScript.cs +++ b/Assets/Scripts/LevelManager/LevelManagerScript.cs @@ -2,7 +2,33 @@ using System.Collections.Generic; using System.Linq; using Unity.Plastic.Newtonsoft.Json; using UnityEngine; +using UnityEngine.Tilemaps; +using GatherAndDefend.LevelEditor; +#region [custom inspector] +#if UNITY_EDITOR +using UnityEditor; + +[CustomEditor(typeof(LevelManagerScript))] +public class LevelManagerEditor : Editor +{ + public override void OnInspectorGUI() + { + DrawDefaultInspector(); + if (GUILayout.Button("Save")) + { + LevelManager.Instance.SaveLevel(); + } + if (GUILayout.Button("Load")) + { + LevelManager.Instance.LoadSave(); + } + } +} +#endif +#endregion + +#region [singleton level manager] public class LevelManager : Singleton { public delegate void LevelAction(ILevelObject levelObject); @@ -10,9 +36,11 @@ public class LevelManager : Singleton public event LevelAction Added; public event LevelAction Removed; - private readonly List toAdd; - private readonly List toRemove; - private readonly List levelObjects; + private readonly List _toAdd; + private readonly List _toRemove; + private readonly List _levelObjects; + + public Level _currentLevel; public Transform LevelTransform { @@ -20,88 +48,173 @@ public class LevelManager : Singleton } public LevelManager() { - toAdd = new List(); - toRemove = new List(); - levelObjects = new List(); + _toAdd = new List(); + _toRemove = new List(); + _levelObjects = new List(); var mgrScript = Object.FindObjectOfType(); if (!mgrScript) mgrScript = new GameObject(nameof(LevelManager)).AddComponent(); LevelTransform = mgrScript.transform; } + #region [~CRUD~] public void Add(ILevelObject levelObject) { - toAdd.Add(levelObject); + _toAdd.Add(levelObject); } public void Remove(ILevelObject levelObject) { - toRemove.Add(levelObject); + _toRemove.Add(levelObject); } public void Clear() { - toAdd.Clear(); - toRemove.Clear(); - levelObjects.Clear(); + _toAdd.Clear(); + _toRemove.Clear(); + _levelObjects.Clear(); } public T Get(LevelPredicate predicate = null) where T : ILevelObject { if (predicate == null) predicate = (generic) => true; - return (T)levelObjects.Find(levelObject => levelObject is T generic && predicate(generic)); + return (T)_levelObjects.Find(levelObject => levelObject is T generic && predicate(generic)); } public List GetAll(LevelPredicate predicate = null) where T : ILevelObject { if (predicate == null) predicate = (generic) => true; List ret = new(); - foreach (var levelObject in levelObjects) if (levelObject is T generic && predicate(generic)) ret.Add(generic); + foreach (var levelObject in _levelObjects) if (levelObject is T generic && predicate(generic)) ret.Add(generic); return ret; } - public int Count(LevelPredicate predicate = null) where T : ILevelObject { return GetAll(predicate).Count; } - public bool Has(LevelPredicate predicate = null) where T : ILevelObject { if (predicate == null) predicate = (generic) => true; - return levelObjects.Exists(levelObject => levelObject is T generic && predicate(generic)); + return _levelObjects.Exists(levelObject => levelObject is T generic && predicate(generic)); } + #endregion + #region [Level management] public void UpdateLevel() { - levelObjects.ForEach(levelObject => levelObject.LevelUpdate()); + _levelObjects.ForEach(levelObject => levelObject.LevelUpdate()); - var toAdd = new List(this.toAdd); + var toAdd = new List(this._toAdd); toAdd.ForEach(addedObject => { - this.toAdd.Remove(addedObject); - levelObjects.Add(addedObject); + this._toAdd.Remove(addedObject); + _levelObjects.Add(addedObject); Added?.Invoke(addedObject); addedObject.LevelStart(); }); - var toRemove = new List(this.toRemove); + var toRemove = new List(this._toRemove); toRemove.ForEach(removedObject => { - this.toRemove.Remove(removedObject); - levelObjects.Remove(removedObject); + this._toRemove.Remove(removedObject); + _levelObjects.Remove(removedObject); Removed?.Invoke(removedObject); removedObject.LevelDestroy(); }); toRemove.Clear(); } - void SaveLevel() - { - var list = levelObjects.Select(obj => obj.ToDictionary()).ToList(); - Debug.Log(JsonConvert.SerializeObject(list)); - } - void LoadLevel() - { + private string saved; + + public void ClearLevel() + { + foreach (var obj in _levelObjects) + { + obj.RemoveFromLevel(); + } + Clear(); } + public void SaveLevel() + { + var list = _levelObjects.Select(obj => obj.ToDictionary()).ToList(); + list.Add(new Dictionary() + { + {Database.TYPE, "Level" }, + {"Name", _currentLevel.name } + }); + saved = JsonConvert.SerializeObject(list); + + Debug.Log("game saved successfully"); + } + + public void LoadLevel(string levelName, bool clear = false) + { + if (clear) + { + ClearLevel(); + } + + //fetch level from database + _currentLevel = Database.Instance.ScriptableObjects[levelName] as Level; + + Grid grid = Object.FindObjectOfType(); + //create new grid if there is none + if (!grid) + { + grid = new GameObject("Grid").AddComponent(); + } + //remove all tilemaps if there is a grid + else + { + foreach (Transform child in grid.transform) + { + Object.Destroy(child.gameObject); + } + } + + //generate all tilemaps + foreach (TilemapData tilemapData in _currentLevel) + { + var tilemap = new GameObject(tilemapData.Key).AddComponent(); + tilemap.gameObject.AddComponent(); + tilemapData.LoadToTilemap(tilemap); + tilemap.transform.SetParent(grid.transform); + } + Debug.Log("level loaded successfully"); + } + public void LoadSave() + { + ClearLevel(); + + var dicts = JsonConvert.DeserializeObject>>(saved); + + //instantiate all prefabs + foreach (var dict in JsonConvert.DeserializeObject>>(saved)) + { + switch (dict[Database.TYPE].ToString()) + { + case nameof(Database.Prefabs): + CreatePrefab(dict); + break; + case nameof(Level): + LoadLevel(dict["Name"].ToString()); + break; + } + } + Debug.Log("game loaded successfully"); + } + private void CreatePrefab(Dictionary dict) + { + var name = dict["Name"].ToString(); + var prefab = Database.Instance.Prefabs[name]; + var instance = Object.Instantiate(prefab, LevelTransform); + var comp = instance.GetComponent(); + comp.LoadDictionary(dict); + } + #endregion } +#endregion + +#region [mono behaviour] public class LevelManagerScript : MonoBehaviour { + public Level firstLevel; private static LevelManagerScript _instance; void Awake() { @@ -109,9 +222,11 @@ public class LevelManagerScript : MonoBehaviour else Destroy(gameObject); DontDestroyOnLoad(gameObject); + LevelManager.Instance.LoadLevel(firstLevel.name, true); } void Update() { LevelManager.Instance.UpdateLevel(); } -} \ No newline at end of file +} +#endregion \ No newline at end of file diff --git a/Assets/Scripts/LevelManager/LevelObject.cs b/Assets/Scripts/LevelManager/LevelObject.cs index 022b9c1..c0a035f 100644 --- a/Assets/Scripts/LevelManager/LevelObject.cs +++ b/Assets/Scripts/LevelManager/LevelObject.cs @@ -8,9 +8,9 @@ using static Extensions; public abstract class LevelObject : MonoBehaviour, ILevelObject { [LevelSerialize] - public Vector3 Position => transform.position; + public Vector3 Position { get => transform.position; protected set => transform.position = value; } [LevelSerialize] - public string Name => name; + public string Name { get => name; protected set => name = value; } void Awake() { @@ -20,7 +20,7 @@ public abstract class LevelObject : MonoBehaviour, ILevelObject } public virtual void LevelStart() - { + { } public virtual void LevelDestroy() { @@ -31,11 +31,28 @@ public abstract class LevelObject : MonoBehaviour, ILevelObject public virtual bool Equals(ILevelObject other) { - if (!other.GetType().Equals(this.GetType())) return false; - - var otherObject = other as LevelObject; - return otherObject.Name == Name + return other is LevelObject otherObject + && otherObject.Name == Name && otherObject.Position == Position; } - public abstract Dictionary ToDictionary(); + public virtual Dictionary ToDictionary() + { + return new Dictionary() + { + {nameof(Name), Name }, + {nameof(Position), new float[]{Position.x, Position.y, Position.z } }, + {Database.TYPE, nameof(Database.Instance.Prefabs) } + }; + } + public virtual void LoadDictionary(Dictionary dict) + { + Name = dict[nameof(Name)].ToString(); + var p_array = (float[])dict[nameof(Position)]; + Position = new Vector3(p_array[0], p_array[1], p_array[2]); + } + + public void RemoveFromLevel() + { + Destroy(gameObject); + } } \ No newline at end of file diff --git a/Assets/Scripts/LevelManager/LevelTile.cs b/Assets/Scripts/LevelManager/LevelTile.cs index 8d319e5..9500fb5 100644 --- a/Assets/Scripts/LevelManager/LevelTile.cs +++ b/Assets/Scripts/LevelManager/LevelTile.cs @@ -14,21 +14,22 @@ public abstract class LevelTile : TileBase, ILevelObject [LevelSerialize] public Vector3 Position { get; protected set; } + private Tilemap _tilemap; [LevelSerialize] - public string Tilemap { get; protected set; } + public string Tilemap + { + get => _tilemap.name; + } [LevelSerialize] - public string Name => name; + public string Name { get => name; protected set => name = value; } public virtual void LevelStart() { } public virtual void LevelDestroy() { } public virtual void LevelUpdate() { } public virtual bool Equals(ILevelObject other) { - if (!other.GetType().Equals(GetType())) return false; - - var otherTile = other as LevelTile; - - return Name == otherTile.Name + return other is LevelTile otherTile + && Name == otherTile.Name && Position == otherTile.Position && Tilemap == otherTile.Tilemap; } @@ -46,7 +47,7 @@ public abstract class LevelTile : TileBase, ILevelObject var instance = Instantiate(this); instance.name = name; instance.Position = position; - instance.Tilemap = comp.name; + instance._tilemap = comp; //if tile already exists, dont add to level manager if (LevelManager.Instance.Has(tile => tile.Equals(instance))) @@ -64,5 +65,28 @@ public abstract class LevelTile : TileBase, ILevelObject tileData.color = Color.white; } - public abstract Dictionary ToDictionary(); + public virtual Dictionary ToDictionary() + { + return new Dictionary() + { + {nameof(Name), Name }, + {nameof(Position), new float[]{Position.x, Position.y, Position.z } }, + {nameof(Tilemap), Tilemap }, + {Database.TYPE, nameof(Database.Instance.Prefabs) } + }; + } + public virtual void LoadDictionary(Dictionary dict) + { + Name = dict[nameof(Name)].ToString(); + float[] pArray = (float[])dict[nameof(Position)]; + Position = new Vector3(pArray[0], pArray[1], pArray[2]); + + var tilemap = FindObjectOfType().GetComponentInChildren(Tilemap); + + } + + public void RemoveFromLevel() + { + _tilemap.SetTile(Vector3Int.RoundToInt(Position), null); + } } \ No newline at end of file diff --git a/Assets/Scripts/Tiles/ResourceTile.cs b/Assets/Scripts/Tiles/ResourceTile.cs index 1fca49a..6015696 100644 --- a/Assets/Scripts/Tiles/ResourceTile.cs +++ b/Assets/Scripts/Tiles/ResourceTile.cs @@ -1,7 +1,5 @@ -using System.Collections; using System.Collections.Generic; using UnityEngine; -using UnityEngine.Tilemaps; using static Extensions; [CreateAssetMenu(menuName = "Gather And Defend/Resource Tile")] @@ -16,21 +14,10 @@ public class ResourceTile : LevelTile [SerializeField, LevelSerialize] private float _yieldSpeed = 1; //resource per second - [LevelSerialize] private float _yieldCounter = 0; [LevelSerialize] public bool Occupied { get; set; } - public override void LevelDestroy() - { - //nothing - } - - public override void LevelStart() - { - //nothing - } - public override void LevelUpdate() { if (!Occupied) return; @@ -45,14 +32,27 @@ public class ResourceTile : LevelTile } public override bool Equals(ILevelObject other) { - return other is ResourceTile otherRes && - Position == otherRes.Position - && Tilemap == otherRes.Tilemap + return other is ResourceTile otherRes + && base.Equals(otherRes) && _yieldPrefab == otherRes._yieldPrefab - && _yieldCounter == otherRes._yieldCounter; + && _yieldSpeed == otherRes._yieldSpeed + && Occupied == otherRes.Occupied; } public override Dictionary ToDictionary() { - return Extensions.ToDictionary(this); + var dict = base.ToDictionary(); + + dict[nameof(YieldPrefabName)] = YieldPrefabName; + dict[nameof(_yieldSpeed)] = _yieldSpeed; + dict[nameof(Occupied)] = Occupied; + return dict; + } + public override void LoadDictionary(Dictionary dict) + { + base.LoadDictionary(dict); + var prefabName = dict[nameof(YieldPrefabName)].ToString(); + _yieldPrefab = Database.Instance.Prefabs[prefabName]; + _yieldSpeed = (float)dict[nameof(_yieldSpeed)]; + Occupied = (bool)dict[nameof(Occupied)]; } } \ No newline at end of file diff --git a/Assets/Scripts/Tiles/SpawnerTile.cs b/Assets/Scripts/Tiles/SpawnerTile.cs index 1ca7308..7cf91f8 100644 --- a/Assets/Scripts/Tiles/SpawnerTile.cs +++ b/Assets/Scripts/Tiles/SpawnerTile.cs @@ -13,21 +13,6 @@ public class SpawnerTile : LevelTile private float _spawnSpeed = 0; private float _spawnCounter = 0; - public override bool Equals(ILevelObject other) - { - return other is SpawnerTile spawner - && spawner.Position == Position - && spawner.Tilemap == Tilemap - && spawner._prefab == _prefab - && spawner._spawnOnStart == _spawnOnStart - && spawner._spawnSpeed == _spawnSpeed; - } - - public override void LevelDestroy() - { - //nothing - } - public override void LevelStart() { if (!_spawnOnStart) return; @@ -44,8 +29,31 @@ public class SpawnerTile : LevelTile var instance = Instantiate(_prefab, Position, Quaternion.identity); instance.transform.SetParent(LevelManager.Instance.LevelTransform); } + public override bool Equals(ILevelObject other) + { + return other is SpawnerTile spawner + && base.Equals(spawner) + && spawner._prefab == _prefab + && spawner._spawnOnStart == _spawnOnStart + && spawner._spawnSpeed == _spawnSpeed; + } public override Dictionary ToDictionary() { - return Extensions.ToDictionary(this); + var dict = base.ToDictionary(); + + dict[nameof(_prefab)] = _prefab.name; + dict[nameof(_spawnOnStart)] = _spawnOnStart; + dict[nameof(_spawnSpeed)] = _spawnSpeed; + + return dict; + } + public override void LoadDictionary(Dictionary dict) + { + base.LoadDictionary(dict); + + var prefabName = dict[nameof(_prefab)].ToString(); + _prefab = Database.Instance.Prefabs[prefabName]; + _spawnOnStart = (bool)dict[nameof(_spawnOnStart)]; + _spawnSpeed = (float)dict[nameof(_spawnSpeed)]; } } \ No newline at end of file diff --git a/Assets/test.txt b/Assets/test.txt new file mode 100644 index 0000000..28231c6 --- /dev/null +++ b/Assets/test.txt @@ -0,0 +1 @@ +[{"Name":"StickSpawner","Position":[-8.0,-5.0,0.0],"Tilemap":"Spawners","_prefab":"baseArcher","_spawnOnStart":true,"_spawnSpeed":0.0},{"Name":"StickSpawner","Position":[-8.0,-3.0,0.0],"Tilemap":"Spawners","_prefab":"baseArcher","_spawnOnStart":true,"_spawnSpeed":0.0},{"Name":"StickSpawner","Position":[-8.0,-1.0,0.0],"Tilemap":"Spawners","_prefab":"baseArcher","_spawnOnStart":true,"_spawnSpeed":0.0},{"Name":"StickSpawner","Position":[-8.0,1.0,0.0],"Tilemap":"Spawners","_prefab":"baseArcher","_spawnOnStart":true,"_spawnSpeed":0.0},{"Name":"baseArcher(Clone)","Position":[-8.0,-5.0,0.0],"_hp":100,"_speed":0.0,"_attack_speed":2.0,"_attack_damage":10},{"Name":"baseArcher(Clone)","Position":[-8.0,-3.0,0.0],"_hp":100,"_speed":0.0,"_attack_speed":2.0,"_attack_damage":10},{"Name":"baseArcher(Clone)","Position":[-8.0,-1.0,0.0],"_hp":100,"_speed":0.0,"_attack_speed":2.0,"_attack_damage":10},{"Name":"baseArcher(Clone)","Position":[-8.0,1.0,0.0],"_hp":100,"_speed":0.0,"_attack_speed":2.0,"_attack_damage":10}] \ No newline at end of file diff --git a/Assets/test.txt.meta b/Assets/test.txt.meta new file mode 100644 index 0000000..99da9ad --- /dev/null +++ b/Assets/test.txt.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 0e51df1fc98540b49abfd724a8df0eb6 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: