From 9b1c4f14b06c1bb8f2e3226b0f0440389bf16566 Mon Sep 17 00:00:00 2001 From: Ashby Issac Date: Fri, 23 Jan 2026 12:46:59 +0530 Subject: [PATCH] Bug fixes for safe mode edge cases. --- .../Tile/{Tile (1).prefab => SafeTile.prefab} | 230 +-- Assets/Prefabs/Tile/SafeTile.prefab.meta | 7 + Assets/Prefabs/Tile/Tile.prefab | 47 + ...{Tile (1).prefab.meta => Tile.prefab.meta} | 0 Assets/Scenes/Game.unity | 1240 ++++++++--------- Assets/Scripts/Gameplay/GameplayManager.cs | 173 ++- Assets/Scripts/Gameplay/Player/PlayerPawn.cs | 10 + Assets/Scripts/Tile/SafeTile.cs | 89 ++ Assets/Scripts/Tile/SafeTile.cs.meta | 11 + Assets/Scripts/Tile/Tile.cs | 102 +- Assets/Scripts/Tile/TilesManager.cs | 14 +- 11 files changed, 1041 insertions(+), 882 deletions(-) rename Assets/Prefabs/Tile/{Tile (1).prefab => SafeTile.prefab} (62%) create mode 100644 Assets/Prefabs/Tile/SafeTile.prefab.meta create mode 100644 Assets/Prefabs/Tile/Tile.prefab rename Assets/Prefabs/Tile/{Tile (1).prefab.meta => Tile.prefab.meta} (100%) create mode 100644 Assets/Scripts/Tile/SafeTile.cs create mode 100644 Assets/Scripts/Tile/SafeTile.cs.meta diff --git a/Assets/Prefabs/Tile/Tile (1).prefab b/Assets/Prefabs/Tile/SafeTile.prefab similarity index 62% rename from Assets/Prefabs/Tile/Tile (1).prefab rename to Assets/Prefabs/Tile/SafeTile.prefab index f079fc6..6fad481 100644 --- a/Assets/Prefabs/Tile/Tile (1).prefab +++ b/Assets/Prefabs/Tile/SafeTile.prefab @@ -1,6 +1,6 @@ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: ---- !u!1 &340880580 +--- !u!1 &141183527 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} @@ -8,7 +8,7 @@ GameObject: m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - - component: {fileID: 340880581} + - component: {fileID: 141183528} m_Layer: 0 m_Name: Placement (1) m_TagString: Untagged @@ -16,22 +16,22 @@ GameObject: m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 ---- !u!4 &340880581 +--- !u!4 &141183528 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 340880580} + m_GameObject: {fileID: 141183527} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: -0.93, y: 0, z: -0.73} - m_LocalScale: {x: 0.74999994, y: 0.74999994, z: 0.74999994} - m_ConstrainProportionsScale: 1 + m_LocalPosition: {x: -1.06, y: 0, z: -1.03} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 m_Children: [] - m_Father: {fileID: 2960581183699728426} - m_RootOrder: 1 + m_Father: {fileID: 1216908670} + m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!1 &489080435 +--- !u!1 &165064736 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} @@ -39,38 +39,7 @@ GameObject: m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - - component: {fileID: 489080436} - m_Layer: 0 - m_Name: Placement (3) - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &489080436 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 489080435} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: -0.93, y: 0, z: 0.97} - m_LocalScale: {x: 0.74999994, y: 0.74999994, z: 0.74999994} - m_ConstrainProportionsScale: 1 - m_Children: [] - m_Father: {fileID: 2960581183699728426} - m_RootOrder: 3 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!1 &575231063 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 575231064} + - component: {fileID: 165064737} m_Layer: 0 m_Name: Placement (4) m_TagString: Untagged @@ -78,22 +47,22 @@ GameObject: m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 ---- !u!4 &575231064 +--- !u!4 &165064737 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 575231063} + m_GameObject: {fileID: 165064736} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0.8, y: 0, z: -0.73} - m_LocalScale: {x: 0.74999994, y: 0.74999994, z: 0.74999994} - m_ConstrainProportionsScale: 1 + m_LocalPosition: {x: 0.89, y: 0, z: -0.92} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 m_Children: [] - m_Father: {fileID: 2960581183699728426} - m_RootOrder: 4 + m_Father: {fileID: 1216908670} + m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!1 &1493812672 +--- !u!1 &172566720 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} @@ -101,7 +70,7 @@ GameObject: m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - - component: {fileID: 1493812673} + - component: {fileID: 172566721} m_Layer: 0 m_Name: Placement (2) m_TagString: Untagged @@ -109,19 +78,116 @@ GameObject: m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 ---- !u!4 &1493812673 +--- !u!4 &172566721 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1493812672} + m_GameObject: {fileID: 172566720} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0.8, y: 0, z: 0.97} - m_LocalScale: {x: 0.74999994, y: 0.74999994, z: 0.74999994} - m_ConstrainProportionsScale: 1 + m_LocalPosition: {x: 0.88, y: 0, z: 1.12} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1216908670} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1216908669 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1216908670} + m_Layer: 0 + m_Name: Placements + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1216908670 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1216908669} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 141183528} + - {fileID: 172566721} + - {fileID: 1619171259} + - {fileID: 165064737} + m_Father: {fileID: 2960581183699728426} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1221159069 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1221159070} + m_Layer: 0 + m_Name: CenteredPoint + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1221159070 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1221159069} + 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: 2960581183699728426} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1619171258 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1619171259} + m_Layer: 0 + m_Name: Placement (3) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1619171259 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1619171258} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -1.09, y: 0, z: 1.26} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1216908670} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &2960581183699728427 @@ -133,9 +199,9 @@ GameObject: serializedVersion: 6 m_Component: - component: {fileID: 2960581183699728426} - - component: {fileID: 2960581183699728421} + - component: {fileID: 5376650559335035371} m_Layer: 0 - m_Name: Tile (1) + m_Name: SafeTile m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 @@ -153,15 +219,12 @@ Transform: m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: - - {fileID: 4090225931849457574} - - {fileID: 340880581} - - {fileID: 1493812673} - - {fileID: 489080436} - - {fileID: 575231064} + - {fileID: 1221159070} + - {fileID: 1216908670} m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!114 &2960581183699728421 +--- !u!114 &5376650559335035371 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} @@ -170,38 +233,13 @@ MonoBehaviour: m_GameObject: {fileID: 2960581183699728427} m_Enabled: 1 m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: be69a8cfb3b2940308cbac570565e629, type: 3} + m_Script: {fileID: 11500000, guid: 114033ff484fb492290f3118615ad4d8, type: 3} m_Name: m_EditorClassIdentifier: isSafeZone: 1 ---- !u!1 &7673046030148000875 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 4090225931849457574} - m_Layer: 0 - m_Name: CenterPlacement - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &4090225931849457574 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 7673046030148000875} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 1, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 2960581183699728426} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + centerPlacementPoint: {fileID: 1221159070} + placementPoints: + - {fileID: 141183528} + - {fileID: 172566721} + - {fileID: 1619171259} + - {fileID: 165064737} diff --git a/Assets/Prefabs/Tile/SafeTile.prefab.meta b/Assets/Prefabs/Tile/SafeTile.prefab.meta new file mode 100644 index 0000000..806ea47 --- /dev/null +++ b/Assets/Prefabs/Tile/SafeTile.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 13346690e7c8b414cb171f800c32ec57 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Prefabs/Tile/Tile.prefab b/Assets/Prefabs/Tile/Tile.prefab new file mode 100644 index 0000000..4171d8f --- /dev/null +++ b/Assets/Prefabs/Tile/Tile.prefab @@ -0,0 +1,47 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &2960581183699728427 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2960581183699728426} + - component: {fileID: 2960581183699728421} + m_Layer: 0 + m_Name: Tile + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &2960581183699728426 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2960581183699728427} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 18.83, y: 0, z: -3.42} + 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!114 &2960581183699728421 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2960581183699728427} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: be69a8cfb3b2940308cbac570565e629, type: 3} + m_Name: + m_EditorClassIdentifier: + isSafeZone: 0 diff --git a/Assets/Prefabs/Tile/Tile (1).prefab.meta b/Assets/Prefabs/Tile/Tile.prefab.meta similarity index 100% rename from Assets/Prefabs/Tile/Tile (1).prefab.meta rename to Assets/Prefabs/Tile/Tile.prefab.meta diff --git a/Assets/Scenes/Game.unity b/Assets/Scenes/Game.unity index 72ba135..1762a60 100644 --- a/Assets/Scenes/Game.unity +++ b/Assets/Scenes/Game.unity @@ -319,83 +319,6 @@ Transform: m_CorrespondingSourceObject: {fileID: 2960581183699728426, guid: 094ea6ce63e654b22964fec2f6344c8a, type: 3} m_PrefabInstance: {fileID: 77922092} m_PrefabAsset: {fileID: 0} ---- !u!1001 &78677764 -PrefabInstance: - m_ObjectHideFlags: 0 - serializedVersion: 2 - m_Modification: - m_TransformParent: {fileID: 868479585} - m_Modifications: - - target: {fileID: 2960581183699728421, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: isSafeZone - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_RootOrder - value: 12 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalPosition.x - value: -3.87 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalPosition.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalPosition.z - value: -19.45 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalRotation.w - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalRotation.x - value: -0 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalRotation.y - value: -0 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalRotation.z - value: -0 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalEulerAnglesHint.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalEulerAnglesHint.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalEulerAnglesHint.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728427, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_Name - value: Tile (13) - objectReference: {fileID: 0} - m_RemovedComponents: [] - m_SourcePrefab: {fileID: 100100000, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} ---- !u!4 &78677765 stripped -Transform: - m_CorrespondingSourceObject: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - m_PrefabInstance: {fileID: 78677764} - m_PrefabAsset: {fileID: 0} ---- !u!114 &78677766 stripped -MonoBehaviour: - m_CorrespondingSourceObject: {fileID: 2960581183699728421, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - m_PrefabInstance: {fileID: 78677764} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 0} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: be69a8cfb3b2940308cbac570565e629, type: 3} - m_Name: - m_EditorClassIdentifier: --- !u!1001 &101156877 PrefabInstance: m_ObjectHideFlags: 0 @@ -469,83 +392,6 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: be69a8cfb3b2940308cbac570565e629, type: 3} m_Name: m_EditorClassIdentifier: ---- !u!1001 &101689198 -PrefabInstance: - m_ObjectHideFlags: 0 - serializedVersion: 2 - m_Modification: - m_TransformParent: {fileID: 868479585} - m_Modifications: - - target: {fileID: 2960581183699728421, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: isSafeZone - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_RootOrder - value: 8 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalPosition.x - value: 3.78 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalPosition.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalPosition.z - value: -19.67 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalRotation.w - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalRotation.x - value: -0 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalRotation.y - value: -0 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalRotation.z - value: -0 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalEulerAnglesHint.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalEulerAnglesHint.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalEulerAnglesHint.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728427, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_Name - value: Tile (9) - objectReference: {fileID: 0} - m_RemovedComponents: [] - m_SourcePrefab: {fileID: 100100000, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} ---- !u!4 &101689199 stripped -Transform: - m_CorrespondingSourceObject: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - m_PrefabInstance: {fileID: 101689198} - m_PrefabAsset: {fileID: 0} ---- !u!114 &101689200 stripped -MonoBehaviour: - m_CorrespondingSourceObject: {fileID: 2960581183699728421, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - m_PrefabInstance: {fileID: 101689198} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 0} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: be69a8cfb3b2940308cbac570565e629, type: 3} - m_Name: - m_EditorClassIdentifier: --- !u!1 &102349499 GameObject: m_ObjectHideFlags: 0 @@ -1111,6 +957,79 @@ Transform: m_CorrespondingSourceObject: {fileID: 2960581183699728426, guid: 094ea6ce63e654b22964fec2f6344c8a, type: 3} m_PrefabInstance: {fileID: 184681510} m_PrefabAsset: {fileID: 0} +--- !u!1001 &209365733 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 868479585} + m_Modifications: + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_RootOrder + value: 36 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalPosition.x + value: 4 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalPosition.z + value: 20.58 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728427, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_Name + value: SafeTile (37) + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} +--- !u!4 &209365734 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + m_PrefabInstance: {fileID: 209365733} + m_PrefabAsset: {fileID: 0} +--- !u!114 &209365735 stripped +MonoBehaviour: + m_CorrespondingSourceObject: {fileID: 5376650559335035371, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + m_PrefabInstance: {fileID: 209365733} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 114033ff484fb492290f3118615ad4d8, type: 3} + m_Name: + m_EditorClassIdentifier: --- !u!1 &241691679 GameObject: m_ObjectHideFlags: 0 @@ -1294,7 +1213,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7993275380040288456, guid: 9ae10e3fa7db64f47af31a5f0ebbecdc, type: 3} propertyPath: m_IsActive - value: 0 + value: 1 objectReference: {fileID: 0} - target: {fileID: 7993275380040288459, guid: 9ae10e3fa7db64f47af31a5f0ebbecdc, type: 3} propertyPath: m_RootOrder @@ -1347,6 +1266,79 @@ Transform: m_CorrespondingSourceObject: {fileID: 7993275380040288459, guid: 9ae10e3fa7db64f47af31a5f0ebbecdc, type: 3} m_PrefabInstance: {fileID: 285587083} m_PrefabAsset: {fileID: 0} +--- !u!1001 &320946490 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 868479585} + m_Modifications: + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_RootOrder + value: 12 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalPosition.x + value: -3.87 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalPosition.z + value: -19.45 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728427, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_Name + value: SafeTile (13) + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} +--- !u!4 &320946491 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + m_PrefabInstance: {fileID: 320946490} + m_PrefabAsset: {fileID: 0} +--- !u!114 &320946492 stripped +MonoBehaviour: + m_CorrespondingSourceObject: {fileID: 5376650559335035371, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + m_PrefabInstance: {fileID: 320946490} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 114033ff484fb492290f3118615ad4d8, type: 3} + m_Name: + m_EditorClassIdentifier: --- !u!1001 &332604772 PrefabInstance: m_ObjectHideFlags: 0 @@ -1360,7 +1352,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7993275380040288456, guid: 9ae10e3fa7db64f47af31a5f0ebbecdc, type: 3} propertyPath: m_IsActive - value: 0 + value: 1 objectReference: {fileID: 0} - target: {fileID: 7993275380040288459, guid: 9ae10e3fa7db64f47af31a5f0ebbecdc, type: 3} propertyPath: m_RootOrder @@ -2115,7 +2107,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7993275380040288456, guid: 195e8a45a36974637bff1dab6791e632, type: 3} propertyPath: m_IsActive - value: 0 + value: 1 objectReference: {fileID: 0} - target: {fileID: 7993275380040288459, guid: 195e8a45a36974637bff1dab6791e632, type: 3} propertyPath: m_RootOrder @@ -2300,7 +2292,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7993275380040288456, guid: 195e8a45a36974637bff1dab6791e632, type: 3} propertyPath: m_IsActive - value: 0 + value: 1 objectReference: {fileID: 0} - target: {fileID: 7993275380040288459, guid: 195e8a45a36974637bff1dab6791e632, type: 3} propertyPath: m_RootOrder @@ -2448,83 +2440,6 @@ Transform: m_Father: {fileID: 0} m_RootOrder: 12 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!1001 &588510567 -PrefabInstance: - m_ObjectHideFlags: 0 - serializedVersion: 2 - m_Modification: - m_TransformParent: {fileID: 868479585} - m_Modifications: - - target: {fileID: 2960581183699728421, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: isSafeZone - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_RootOrder - value: 24 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalPosition.x - value: -18.5 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalPosition.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalPosition.z - value: 4.17 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalRotation.w - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalRotation.x - value: -0 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalRotation.y - value: -0 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalRotation.z - value: -0 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalEulerAnglesHint.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalEulerAnglesHint.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalEulerAnglesHint.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728427, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_Name - value: Tile (25) - objectReference: {fileID: 0} - m_RemovedComponents: [] - m_SourcePrefab: {fileID: 100100000, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} ---- !u!4 &588510568 stripped -Transform: - m_CorrespondingSourceObject: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - m_PrefabInstance: {fileID: 588510567} - m_PrefabAsset: {fileID: 0} ---- !u!114 &588510569 stripped -MonoBehaviour: - m_CorrespondingSourceObject: {fileID: 2960581183699728421, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - m_PrefabInstance: {fileID: 588510567} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 0} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: be69a8cfb3b2940308cbac570565e629, type: 3} - m_Name: - m_EditorClassIdentifier: --- !u!1001 &589480314 PrefabInstance: m_ObjectHideFlags: 0 @@ -2753,6 +2668,152 @@ Transform: m_Father: {fileID: 0} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1001 &633028659 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 868479585} + m_Modifications: + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_RootOrder + value: 31 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalPosition.x + value: -3.57 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalPosition.z + value: 17.51 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728427, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_Name + value: SafeTile (32) + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} +--- !u!4 &633028660 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + m_PrefabInstance: {fileID: 633028659} + m_PrefabAsset: {fileID: 0} +--- !u!114 &633028661 stripped +MonoBehaviour: + m_CorrespondingSourceObject: {fileID: 5376650559335035371, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + m_PrefabInstance: {fileID: 633028659} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 114033ff484fb492290f3118615ad4d8, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!1001 &685821224 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 868479585} + m_Modifications: + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_RootOrder + value: 8 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalPosition.x + value: 3.78 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalPosition.z + value: -19.67 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728427, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_Name + value: SafeTile (9) + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} +--- !u!4 &685821225 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + m_PrefabInstance: {fileID: 685821224} + m_PrefabAsset: {fileID: 0} +--- !u!114 &685821226 stripped +MonoBehaviour: + m_CorrespondingSourceObject: {fileID: 5376650559335035371, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + m_PrefabInstance: {fileID: 685821224} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 114033ff484fb492290f3118615ad4d8, type: 3} + m_Name: + m_EditorClassIdentifier: --- !u!1 &705507993 GameObject: m_ObjectHideFlags: 0 @@ -3284,7 +3345,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7993275380040288456, guid: 195e8a45a36974637bff1dab6791e632, type: 3} propertyPath: m_IsActive - value: 0 + value: 1 objectReference: {fileID: 0} - target: {fileID: 7993275380040288459, guid: 195e8a45a36974637bff1dab6791e632, type: 3} propertyPath: m_RootOrder @@ -3427,7 +3488,7 @@ Transform: m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: - - {fileID: 1111717751} + - {fileID: 1783132120} - {fileID: 574642923} - {fileID: 2104728855} - {fileID: 1967942859} @@ -3435,42 +3496,42 @@ Transform: - {fileID: 592417911} - {fileID: 422715582} - {fileID: 1150102938} - - {fileID: 101689199} + - {fileID: 685821225} - {fileID: 101156878} - {fileID: 987559891} - {fileID: 2140650221} - - {fileID: 78677765} + - {fileID: 320946491} - {fileID: 1189037852} - {fileID: 392842369} - {fileID: 1603574048} - {fileID: 1161887154} - {fileID: 885830940} - {fileID: 1521635478} - - {fileID: 1113264821} + - {fileID: 1357001625} - {fileID: 2028020625} - {fileID: 1155878567} - {fileID: 1097540418} - {fileID: 980422151} - - {fileID: 588510568} + - {fileID: 2053009712} - {fileID: 1467637301} - {fileID: 1299632836} - {fileID: 752268679} - {fileID: 972663953} - {fileID: 2022458187} - {fileID: 333337581} - - {fileID: 1675545742} + - {fileID: 633028660} - {fileID: 1079000208} - {fileID: 2070027127} - {fileID: 154086394} - {fileID: 508018014} - - {fileID: 1057001765} + - {fileID: 209365734} - {fileID: 130985509} - {fileID: 1235999367} - {fileID: 1175256389} - {fileID: 1178589473} - {fileID: 5889602} - {fileID: 177256213} - - {fileID: 1934520237} + - {fileID: 1615634420} - {fileID: 819908558} - {fileID: 2090781613} - {fileID: 707424673} @@ -3809,7 +3870,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 7993275380040288456, guid: 9ae10e3fa7db64f47af31a5f0ebbecdc, type: 3} propertyPath: m_IsActive - value: 0 + value: 1 objectReference: {fileID: 0} - target: {fileID: 7993275380040288459, guid: 9ae10e3fa7db64f47af31a5f0ebbecdc, type: 3} propertyPath: m_RootOrder @@ -4611,83 +4672,6 @@ Transform: m_CorrespondingSourceObject: {fileID: 2960581183699728426, guid: 094ea6ce63e654b22964fec2f6344c8a, type: 3} m_PrefabInstance: {fileID: 1041368837} m_PrefabAsset: {fileID: 0} ---- !u!1001 &1057001764 -PrefabInstance: - m_ObjectHideFlags: 0 - serializedVersion: 2 - m_Modification: - m_TransformParent: {fileID: 868479585} - m_Modifications: - - target: {fileID: 2960581183699728421, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: isSafeZone - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_RootOrder - value: 36 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalPosition.x - value: 4 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalPosition.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalPosition.z - value: 20.58 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalRotation.w - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalRotation.x - value: -0 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalRotation.y - value: -0 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalRotation.z - value: -0 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalEulerAnglesHint.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalEulerAnglesHint.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalEulerAnglesHint.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728427, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_Name - value: Tile (37) - objectReference: {fileID: 0} - m_RemovedComponents: [] - m_SourcePrefab: {fileID: 100100000, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} ---- !u!4 &1057001765 stripped -Transform: - m_CorrespondingSourceObject: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - m_PrefabInstance: {fileID: 1057001764} - m_PrefabAsset: {fileID: 0} ---- !u!114 &1057001766 stripped -MonoBehaviour: - m_CorrespondingSourceObject: {fileID: 2960581183699728421, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - m_PrefabInstance: {fileID: 1057001764} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 0} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: be69a8cfb3b2940308cbac570565e629, type: 3} - m_Name: - m_EditorClassIdentifier: --- !u!1 &1070491403 GameObject: m_ObjectHideFlags: 0 @@ -5037,99 +5021,6 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 21bc1be624c3645a2a713aa5171fc9aa, type: 3} m_Name: m_EditorClassIdentifier: ---- !u!4 &1111717751 stripped -Transform: - m_CorrespondingSourceObject: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - m_PrefabInstance: {fileID: 2960581184744312669} - m_PrefabAsset: {fileID: 0} ---- !u!114 &1111717752 stripped -MonoBehaviour: - m_CorrespondingSourceObject: {fileID: 2960581183699728421, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - m_PrefabInstance: {fileID: 2960581184744312669} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 0} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: be69a8cfb3b2940308cbac570565e629, type: 3} - m_Name: - m_EditorClassIdentifier: ---- !u!1001 &1113264820 -PrefabInstance: - m_ObjectHideFlags: 0 - serializedVersion: 2 - m_Modification: - m_TransformParent: {fileID: 868479585} - m_Modifications: - - target: {fileID: 2960581183699728421, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: isSafeZone - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_RootOrder - value: 19 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalPosition.x - value: -15.03 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalPosition.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalPosition.z - value: -3.48 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalRotation.w - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalRotation.x - value: -0 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalRotation.y - value: -0 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalRotation.z - value: -0 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalEulerAnglesHint.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalEulerAnglesHint.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalEulerAnglesHint.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728427, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_Name - value: Tile (20) - objectReference: {fileID: 0} - m_RemovedComponents: [] - m_SourcePrefab: {fileID: 100100000, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} ---- !u!4 &1113264821 stripped -Transform: - m_CorrespondingSourceObject: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - m_PrefabInstance: {fileID: 1113264820} - m_PrefabAsset: {fileID: 0} ---- !u!114 &1113264822 stripped -MonoBehaviour: - m_CorrespondingSourceObject: {fileID: 2960581183699728421, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - m_PrefabInstance: {fileID: 1113264820} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 0} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: be69a8cfb3b2940308cbac570565e629, type: 3} - m_Name: - m_EditorClassIdentifier: --- !u!1001 &1118588830 PrefabInstance: m_ObjectHideFlags: 0 @@ -6159,6 +6050,79 @@ Transform: m_Father: {fileID: 0} m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1001 &1357001624 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 868479585} + m_Modifications: + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_RootOrder + value: 19 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalPosition.x + value: -15.03 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalPosition.z + value: -3.48 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728427, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_Name + value: SafeTile (20) + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} +--- !u!4 &1357001625 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + m_PrefabInstance: {fileID: 1357001624} + m_PrefabAsset: {fileID: 0} +--- !u!114 &1357001626 stripped +MonoBehaviour: + m_CorrespondingSourceObject: {fileID: 5376650559335035371, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + m_PrefabInstance: {fileID: 1357001624} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 114033ff484fb492290f3118615ad4d8, type: 3} + m_Name: + m_EditorClassIdentifier: --- !u!1 &1373272157 GameObject: m_ObjectHideFlags: 0 @@ -6707,6 +6671,79 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: be69a8cfb3b2940308cbac570565e629, type: 3} m_Name: m_EditorClassIdentifier: +--- !u!1001 &1615634419 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 868479585} + m_Modifications: + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_RootOrder + value: 43 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalPosition.x + value: 15.16 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalPosition.z + value: 4.01 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728427, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_Name + value: SafeTile (44) + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} +--- !u!4 &1615634420 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + m_PrefabInstance: {fileID: 1615634419} + m_PrefabAsset: {fileID: 0} +--- !u!114 &1615634421 stripped +MonoBehaviour: + m_CorrespondingSourceObject: {fileID: 5376650559335035371, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + m_PrefabInstance: {fileID: 1615634419} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 114033ff484fb492290f3118615ad4d8, type: 3} + m_Name: + m_EditorClassIdentifier: --- !u!1001 &1665297693 PrefabInstance: m_ObjectHideFlags: 0 @@ -6769,83 +6806,6 @@ Transform: m_CorrespondingSourceObject: {fileID: 7993275380040288459, guid: 28a2e17f2aa28459099c180350293bf6, type: 3} m_PrefabInstance: {fileID: 1665297693} m_PrefabAsset: {fileID: 0} ---- !u!1001 &1675545741 -PrefabInstance: - m_ObjectHideFlags: 0 - serializedVersion: 2 - m_Modification: - m_TransformParent: {fileID: 868479585} - m_Modifications: - - target: {fileID: 2960581183699728421, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: isSafeZone - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_RootOrder - value: 31 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalPosition.x - value: -3.57 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalPosition.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalPosition.z - value: 17.51 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalRotation.w - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalRotation.x - value: -0 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalRotation.y - value: -0 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalRotation.z - value: -0 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalEulerAnglesHint.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalEulerAnglesHint.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalEulerAnglesHint.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728427, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_Name - value: Tile (32) - objectReference: {fileID: 0} - m_RemovedComponents: [] - m_SourcePrefab: {fileID: 100100000, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} ---- !u!4 &1675545742 stripped -Transform: - m_CorrespondingSourceObject: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - m_PrefabInstance: {fileID: 1675545741} - m_PrefabAsset: {fileID: 0} ---- !u!114 &1675545743 stripped -MonoBehaviour: - m_CorrespondingSourceObject: {fileID: 2960581183699728421, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - m_PrefabInstance: {fileID: 1675545741} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 0} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: be69a8cfb3b2940308cbac570565e629, type: 3} - m_Name: - m_EditorClassIdentifier: --- !u!1001 &1691461916 PrefabInstance: m_ObjectHideFlags: 0 @@ -7133,6 +7093,79 @@ Transform: m_Father: {fileID: 1251876827} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1001 &1783132119 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 868479585} + m_Modifications: + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_RootOrder + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalPosition.x + value: 18.83 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalPosition.z + value: -3.42 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728427, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_Name + value: SafeTile (1) + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} +--- !u!4 &1783132120 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + m_PrefabInstance: {fileID: 1783132119} + m_PrefabAsset: {fileID: 0} +--- !u!114 &1783132121 stripped +MonoBehaviour: + m_CorrespondingSourceObject: {fileID: 5376650559335035371, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + m_PrefabInstance: {fileID: 1783132119} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 114033ff484fb492290f3118615ad4d8, type: 3} + m_Name: + m_EditorClassIdentifier: --- !u!1 &1795608036 GameObject: m_ObjectHideFlags: 0 @@ -7300,83 +7333,6 @@ Transform: m_CorrespondingSourceObject: {fileID: 7993275380040288459, guid: 81ea53750af48479785425335304fdc7, type: 3} m_PrefabInstance: {fileID: 1900156992} m_PrefabAsset: {fileID: 0} ---- !u!1001 &1934520236 -PrefabInstance: - m_ObjectHideFlags: 0 - serializedVersion: 2 - m_Modification: - m_TransformParent: {fileID: 868479585} - m_Modifications: - - target: {fileID: 2960581183699728421, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: isSafeZone - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_RootOrder - value: 43 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalPosition.x - value: 15.16 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalPosition.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalPosition.z - value: 4.01 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalRotation.w - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalRotation.x - value: -0 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalRotation.y - value: -0 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalRotation.z - value: -0 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalEulerAnglesHint.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalEulerAnglesHint.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalEulerAnglesHint.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728427, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_Name - value: Tile (44) - objectReference: {fileID: 0} - m_RemovedComponents: [] - m_SourcePrefab: {fileID: 100100000, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} ---- !u!4 &1934520237 stripped -Transform: - m_CorrespondingSourceObject: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - m_PrefabInstance: {fileID: 1934520236} - m_PrefabAsset: {fileID: 0} ---- !u!114 &1934520238 stripped -MonoBehaviour: - m_CorrespondingSourceObject: {fileID: 2960581183699728421, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - m_PrefabInstance: {fileID: 1934520236} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 0} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: be69a8cfb3b2940308cbac570565e629, type: 3} - m_Name: - m_EditorClassIdentifier: --- !u!1 &1934858462 GameObject: m_ObjectHideFlags: 0 @@ -7457,7 +7413,7 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: generalTiles: - - {fileID: 1111717752} + - {fileID: 1783132121} - {fileID: 574642924} - {fileID: 2104728856} - {fileID: 1967942860} @@ -7465,42 +7421,42 @@ MonoBehaviour: - {fileID: 592417912} - {fileID: 422715583} - {fileID: 1150102939} - - {fileID: 101689200} + - {fileID: 685821226} - {fileID: 101156879} - {fileID: 987559892} - {fileID: 2140650222} - - {fileID: 78677766} + - {fileID: 320946492} - {fileID: 1189037853} - {fileID: 392842370} - {fileID: 1603574049} - {fileID: 1161887155} - {fileID: 885830941} - {fileID: 1521635479} - - {fileID: 1113264822} + - {fileID: 1357001626} - {fileID: 2028020626} - {fileID: 1155878568} - {fileID: 1097540419} - {fileID: 980422152} - - {fileID: 588510569} + - {fileID: 2053009713} - {fileID: 1467637302} - {fileID: 1299632837} - {fileID: 752268680} - {fileID: 972663954} - {fileID: 2022458188} - {fileID: 333337582} - - {fileID: 1675545743} + - {fileID: 633028661} - {fileID: 1079000209} - {fileID: 2070027128} - {fileID: 154086395} - {fileID: 508018015} - - {fileID: 1057001766} + - {fileID: 209365735} - {fileID: 130985510} - {fileID: 1235999368} - {fileID: 1175256390} - {fileID: 1178589474} - {fileID: 5889603} - {fileID: 177256214} - - {fileID: 1934520238} + - {fileID: 1615634421} - {fileID: 819908559} - {fileID: 2090781614} - {fileID: 707424674} @@ -7892,6 +7848,79 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: be69a8cfb3b2940308cbac570565e629, type: 3} m_Name: m_EditorClassIdentifier: +--- !u!1001 &2053009711 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 868479585} + m_Modifications: + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_RootOrder + value: 24 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalPosition.x + value: -18.5 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalPosition.z + value: 4.17 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2960581183699728427, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + propertyPath: m_Name + value: SafeTile (25) + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} +--- !u!4 &2053009712 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 2960581183699728426, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + m_PrefabInstance: {fileID: 2053009711} + m_PrefabAsset: {fileID: 0} +--- !u!114 &2053009713 stripped +MonoBehaviour: + m_CorrespondingSourceObject: {fileID: 5376650559335035371, guid: 13346690e7c8b414cb171f800c32ec57, type: 3} + m_PrefabInstance: {fileID: 2053009711} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 114033ff484fb492290f3118615ad4d8, type: 3} + m_Name: + m_EditorClassIdentifier: --- !u!1001 &2070027126 PrefabInstance: m_ObjectHideFlags: 0 @@ -8184,60 +8213,3 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: be69a8cfb3b2940308cbac570565e629, type: 3} m_Name: m_EditorClassIdentifier: ---- !u!1001 &2960581184744312669 -PrefabInstance: - m_ObjectHideFlags: 0 - serializedVersion: 2 - m_Modification: - m_TransformParent: {fileID: 868479585} - m_Modifications: - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_RootOrder - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalPosition.x - value: 18.83 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalPosition.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalPosition.z - value: -3.42 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalRotation.w - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalRotation.x - value: -0 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalRotation.y - value: -0 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalRotation.z - value: -0 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalEulerAnglesHint.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalEulerAnglesHint.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728426, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_LocalEulerAnglesHint.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 2960581183699728427, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} - propertyPath: m_Name - value: Tile (1) - objectReference: {fileID: 0} - m_RemovedComponents: [] - m_SourcePrefab: {fileID: 100100000, guid: bc986262997c641d9b5bcff22bd100c1, type: 3} diff --git a/Assets/Scripts/Gameplay/GameplayManager.cs b/Assets/Scripts/Gameplay/GameplayManager.cs index 3bb80c2..c14be1d 100644 --- a/Assets/Scripts/Gameplay/GameplayManager.cs +++ b/Assets/Scripts/Gameplay/GameplayManager.cs @@ -19,7 +19,7 @@ public class PlayerGameData public int startIndex; public int endIndex; public Transform playersParent; - public List playerPawns; + public List playerPawnsDict; public int totalPawnsFinished = 0; } @@ -62,7 +62,7 @@ public class GameplayManager : MonoBehaviour, IBase, IBootLoader, IDataLoader CanRollDice = true; InitCurrentGamePlayerInfo( - new List { PlayerTypes.Player1, PlayerTypes.Player3 }); + new List { PlayerTypes.Player1, PlayerTypes.Player2, PlayerTypes.Player3, PlayerTypes.Player4 }); } // TODO :: Call based on 2P/3P/4P @@ -81,13 +81,18 @@ public class GameplayManager : MonoBehaviour, IBase, IBootLoader, IDataLoader else { playerGameDatasDict.Add(playerGameData.playerType, playerGameData); + playerGameDatasDict[playerGameData.playerType].playerPawnsDict = new List(); + PlayerPawn playerPawn = null; + int indexer = 0; - playerGameDatasDict[playerGameData.playerType].playerPawns = new List(); foreach (Transform playerPawnChild in playerGameData.playersParent) { if (!playerPawnChild.gameObject.activeInHierarchy) continue; - - playerGameDatasDict[playerGameData.playerType].playerPawns.Add(playerPawnChild.GetComponent()); + + playerPawn = playerPawnChild.GetComponent(); + indexer++; + playerPawn.InitId(indexer); + playerGameDatasDict[playerGameData.playerType].playerPawnsDict.Add(playerPawn); } } } @@ -95,7 +100,7 @@ public class GameplayManager : MonoBehaviour, IBase, IBootLoader, IDataLoader public void EnablePlayerSelectionStates(bool state) { - foreach (PlayerPawn playerPawn in playerGameDatasDict[currentPlayerTypeTurn].playerPawns) + foreach (var playerPawn in playerGameDatasDict[currentPlayerTypeTurn].playerPawnsDict) { if (playerPawn.GetPlayerState() == PlayerState.InFinishingPath) continue; @@ -120,7 +125,7 @@ public class GameplayManager : MonoBehaviour, IBase, IBootLoader, IDataLoader CanRollDiceAgain = true; bool AreAllPawnsInFinishingPath = false; - foreach (var pawn in playerGameDatasDict[currentPlayerTypeTurn].playerPawns) + foreach (var pawn in playerGameDatasDict[currentPlayerTypeTurn].playerPawnsDict) { if (pawn.GetPlayerState() == PlayerState.InFinishingPath && pawn.GetPlayerState() != PlayerState.HasFinished) { @@ -141,7 +146,7 @@ public class GameplayManager : MonoBehaviour, IBase, IBootLoader, IDataLoader else // if there are any other pawns that are in safe or moving state { // for player's logic - IEnumerable availPlayers = playerGameDatasDict[currentPlayerTypeTurn].playerPawns.Select(pawn => pawn) + IEnumerable availPlayers = playerGameDatasDict[currentPlayerTypeTurn].playerPawnsDict.Select(pawn => pawn) .Where(pawn => pawn.GetPlayerState() == PlayerState.InSafeZone || pawn.GetPlayerState() == PlayerState.Moving || pawn.GetPlayerState() == PlayerState.InFinishingPath); @@ -187,8 +192,10 @@ public class GameplayManager : MonoBehaviour, IBase, IBootLoader, IDataLoader if (playerPawn.GetPlayerState() == PlayerState.InHome) { + Tile targetTile = tilesManager.RetrieveTileBasedOnIndex(playerGameData.startIndex); + playerPawn.MoveToTile( - tilesManager.RetrieveTileBasedOnIndex(playerGameData.startIndex).transform.position, + GetPositionInsideSafeZone(playerPawn, targetTile), onComplete: () => { CanRollDice = true; @@ -220,7 +227,7 @@ public class GameplayManager : MonoBehaviour, IBase, IBootLoader, IDataLoader Tile currentSittingTile = tilesManager.RetrieveTileBasedOnIndex(playerPawn.CurrentTileIndex); if (currentSittingTile.IsSafeZone) { - currentSittingTile.UpdateSafeZonePlayerData(currentPlayerTypeTurn); + ((SafeTile)currentSittingTile).UpdateSafeZonePlayerData(currentPlayerTypeTurn, playerPawn); } MoveThroughTiles(playerPawn, nextTileIdx, targetIndex: targetIdx); @@ -274,71 +281,32 @@ public class GameplayManager : MonoBehaviour, IBase, IBootLoader, IDataLoader private void MoveThroughTiles(PlayerPawn playerPawn, int index, int targetIndex) { - Debug.Log($"Tile Index :: nextIndex: {index}, targetIndex: {targetIndex}"); - Tile nextTile = tilesManager.RetrieveTileBasedOnIndex(index); - Vector3 targetPosition = tilesManager.RetrieveTileBasedOnIndex(index).CenterPlacementPosition; + Vector3 targetPosition = nextTile.CenterPlacementPosition; - if (index == targetIndex) // is next index the targetIndex + Debug.Log($"Tile Index :: nextIndex: {index}, targetIndex: {targetIndex}, nextTileName: {nextTile.name}"); + + if (index == targetIndex) // if the target index is the safe zone only then apply the logic for rearranging pawns { Tile targetTile = tilesManager.RetrieveTileBasedOnIndex(targetIndex); if (targetTile.IsSafeZone) { - if (targetTile.PlayerTypesCount == 1) - { - if (!targetTile.ContainsPlayerType(currentPlayerTypeTurn)) // means it is a new player type, the second one - { - PlayerTypes initialPlayerType = targetTile.GetFirstPlayerType(); - var playerPawnsCount = targetTile.GetPlayerPawnsCountInTile(initialPlayerType); - - // rearrange already existing player from center position to it's saved transform - for (int idx = 0; idx < playerPawnsCount; idx++) - { - targetTile.IterateAndGetPlayerPawn(initialPlayerType, idx).MoveToTileSubPosition(targetTile.GetPlacementPoint(initialPlayerType).position); - } - - targetTile.InitPlayerPawn(playerPawn, currentPlayerTypeTurn); - targetPosition = targetTile.GetPlacementPoint(currentPlayerTypeTurn).position; - } - else - { - targetPosition = targetTile.CenterPlacementPosition; - } - } - else - { - // TODO :: Check the data if it's consistent - if (!targetTile.ContainsPlayerType(currentPlayerTypeTurn)) - { - targetTile.InitPlayerPawn(playerPawn, currentPlayerTypeTurn); - targetPosition = targetTile.GetPlacementPoint(currentPlayerTypeTurn).position; - } - else - { - targetPosition = targetTile.GetPlacementPoint(currentPlayerTypeTurn).position; - } - } - - // TODO :: Introduce a swapping mechanism - } - else - { - // TODO :: Move code to onComplete callback - if (targetTile.PlayerPawn != null) // TODO :: Improve this logic, use a collection - { - // TODO :: send this pawn back to base - } + targetPosition = GetPositionInsideSafeZone(playerPawn, targetTile); } } + Debug.Log($"tile targetPosition: {targetPosition}"); + playerPawn.MoveToTile( targetPosition, onComplete: () => { diceRolledValue--; + Debug.Log($"DiceRolledValue: {diceRolledValue}"); if (diceRolledValue > 0) { int nextTileIndex = GetNextGeneralTileIndex(playerPawn); + Debug.Log($"currentTileIndex: {playerPawn.CurrentTileIndex}, nextTileIndex: {nextTileIndex}, targetIndex: {targetIndex}"); if (playerPawn.GetPlayerState() == PlayerState.InFinishingPath || index == playerGameDatasDict[currentPlayerTypeTurn].endIndex) { @@ -349,14 +317,29 @@ public class GameplayManager : MonoBehaviour, IBase, IBootLoader, IDataLoader else if (nextTileIndex <= targetIndex) { if (nextTileIndex == 0) - targetIndex = targetIndex - playerPawn.CurrentTileIndex; + targetIndex = (targetIndex - playerPawn.CurrentTileIndex) - 1; MoveThroughTiles(playerPawn, nextTileIndex, targetIndex); } } else { - nextTile.InitPlayerPawn(playerPawn, currentPlayerTypeTurn); + // TODO :: Improve this logic, use a collection + if (!nextTile.IsSafeZone) + { + if (nextTile.PlayerPawn != null) + { + // TODO :: Send existing pawn back to base. + // means there's already a pawn there, move him back to the base. + } + + nextTile.InitPlayerPawn(playerPawn, currentPlayerTypeTurn); + } + // else + // { + // ((SafeTile)nextTile).InitPlayerPawn(playerPawn, currentPlayerTypeTurn); + // } + SwitchPlayer(playerPawn); CanRollDice = true; } @@ -364,6 +347,74 @@ public class GameplayManager : MonoBehaviour, IBase, IBootLoader, IDataLoader index); } + private Vector3 GetPositionInsideSafeZone(PlayerPawn playerPawn, Tile targetTile) + { + Vector3 targetPosition; + SafeTile targetSafeTile = (SafeTile)targetTile; + Debug.Log($"targetSafeTile.PlayerTypesCount: {targetSafeTile.PlayerTypesCount}"); + if (targetSafeTile.PlayerTypesCount == 1) + { + Debug.Log($"targetSafeTile.ContainsPlayerType(currentPlayerTypeTurn): {targetSafeTile.ContainsPlayerType(currentPlayerTypeTurn)}"); + if (!targetSafeTile.ContainsPlayerType(currentPlayerTypeTurn)) // means it is a new player type, the second one + { + Debug.Log($"Logging data"); + PlayerTypes initialPlayerType = targetSafeTile.GetFirstPlayerType(); + Debug.Log($"initialPlayerType: {initialPlayerType}"); + int playerPawnsCount = targetSafeTile.GetPlayerPawnsCountInTile(initialPlayerType); + Debug.Log($"playerPawnsCount: {playerPawnsCount}"); + + // rearrange already existing player from center position to it's saved transform + var playerPawns = targetSafeTile.GetPlayerPawns(initialPlayerType); + Debug.Log($"playerPawns: {playerPawns.Count}"); + foreach (var pawn in playerPawns) + { + Debug.Log($"Getting placement data"); + var placementPoint = targetSafeTile.GetPlacementPoint(initialPlayerType); + Debug.Log($"PlacementPoint: {placementPoint.name}"); + pawn.MoveToTileSubPosition(placementPoint.position); + } + // for (int idx = 0; idx < playerPawnsCount; idx++) + // { + // targetSafeTile.IterateAndGetPlayerPawn(initialPlayerType, idx).MoveToTileSubPosition(targetSafeTile.GetPlacementPoint(initialPlayerType).position); + // } + + targetSafeTile.InitPlayerPawn(playerPawn, currentPlayerTypeTurn); + targetPosition = targetSafeTile.GetPlacementPoint(currentPlayerTypeTurn).position; + } + else + { + targetSafeTile.InitPlayerPawn(playerPawn, currentPlayerTypeTurn); + targetPosition = targetTile.CenterPlacementPosition; + } + } + else + { + // TODO :: Check the data if it's consistent + Debug.Log($"targetSafeTile.ContainsPlayerType(currentPlayerTypeTurn): {targetSafeTile.ContainsPlayerType(currentPlayerTypeTurn)}"); + if (!targetSafeTile.ContainsPlayerType(currentPlayerTypeTurn)) + { + Debug.Log($"targetSafeTile.PlayerTypesCount: {targetSafeTile.PlayerTypesCount}"); + if (targetSafeTile.PlayerTypesCount < 1) // he is the only player that is being added to the safe zone + { + targetSafeTile.InitPlayerPawn(playerPawn, currentPlayerTypeTurn); + targetPosition = targetTile.CenterPlacementPosition; + } + else + { + targetSafeTile.InitPlayerPawn(playerPawn, currentPlayerTypeTurn); + targetPosition = targetSafeTile.GetPlacementPoint(currentPlayerTypeTurn).position; + } + } + else + { + targetSafeTile.InitPlayerPawn(playerPawn, currentPlayerTypeTurn); + targetPosition = targetSafeTile.GetPlacementPoint(currentPlayerTypeTurn).position; + } + } + + return targetPosition; + } + private void MoveThroughFinishingPath(PlayerPawn playerPawn, int index, int targetIndex) { playerPawn.SetPlayerState(PlayerState.InFinishingPath); @@ -391,7 +442,7 @@ public class GameplayManager : MonoBehaviour, IBase, IBootLoader, IDataLoader playerPawn.SetPlayerState(PlayerState.HasFinished); playerGameDatasDict[currentPlayerTypeTurn].totalPawnsFinished++; - if (playerGameDatasDict[currentPlayerTypeTurn].totalPawnsFinished == playerGameDatasDict[currentPlayerTypeTurn].playerPawns.Count) + if (playerGameDatasDict[currentPlayerTypeTurn].totalPawnsFinished == playerGameDatasDict[currentPlayerTypeTurn].playerPawnsDict.Count) { CanRollDiceAgain = false; diff --git a/Assets/Scripts/Gameplay/Player/PlayerPawn.cs b/Assets/Scripts/Gameplay/Player/PlayerPawn.cs index a07a045..eba2146 100644 --- a/Assets/Scripts/Gameplay/Player/PlayerPawn.cs +++ b/Assets/Scripts/Gameplay/Player/PlayerPawn.cs @@ -21,6 +21,11 @@ public class PlayerPawn : MonoBehaviour get; private set; } + public int PlayerId + { + get; private set; + } + private GameplayManager gameplayManager; public void SetPlayerSelectionState(bool state) @@ -73,4 +78,9 @@ public class PlayerPawn : MonoBehaviour { gameplayManager = gameplayManager ?? InterfaceManager.Instance.GetInterfaceInstance(); } + + public void InitId(int id) + { + PlayerId = id; + } } diff --git a/Assets/Scripts/Tile/SafeTile.cs b/Assets/Scripts/Tile/SafeTile.cs new file mode 100644 index 0000000..939c93e --- /dev/null +++ b/Assets/Scripts/Tile/SafeTile.cs @@ -0,0 +1,89 @@ +using UnityEngine; +using System.Linq; +using System.Collections.Generic; + +public class SafeTile : Tile +{ + [SerializeField] private Transform centerPlacementPoint; + [SerializeField] private Transform[] placementPoints; + + protected Queue placementQueue = new Queue(); + protected Dictionary playerTypesDict = new Dictionary(); + + public int PlayerTypesCount => playerTypesDict.Count; + public bool HasMoreThanOnePlayerType => playerTypesDict.Count > 1; + public List GetPlayerPawns(PlayerTypes playerType) => playerTypesDict[playerType].playerPawns.Values.ToList(); + + public bool ContainsPlayerType(PlayerTypes playerType) => playerTypesDict.ContainsKey(playerType); + + private void Awake() + { + foreach (var placement in placementPoints) + { + placementQueue.Enqueue(placement); + } + } + + public override void InitPlayerPawn(PlayerPawn playerPawn, PlayerTypes playerType) + { + // PlayerPawn = playerPawn; + if (!playerTypesDict.ContainsKey(playerType)) + { + playerTypesDict.Add( + playerType, + new PlayerTileData { playerCount = 1, + playerPawns = new Dictionary() + }); + + playerTypesDict[playerType].playerPawns.Add(playerPawn.PlayerId, playerPawn); + playerTypesDict[playerType].commonPlacementTransform = placementQueue.Dequeue(); + + Debug.Log($"targetSafeTile. Adding player {playerType} {playerTypesDict[playerType].playerCount} tileName: {name}"); + } + else + { + playerTypesDict[playerType].playerCount++; + Debug.Log($"targetSafeTile. Adding player {playerType} {playerTypesDict[playerType].playerCount}, tileName: {name}"); + playerTypesDict[playerType].playerPawns.Add(playerPawn.PlayerId, playerPawn); + } + } + + public void UpdateSafeZonePlayerData(PlayerTypes playerType, PlayerPawn playerPawn) + { + if (playerTypesDict.ContainsKey(playerType)) + { + if (playerTypesDict[playerType].playerCount > 0) + { + Debug.Log($"targetSafeTile. Removing player {playerType} {playerTypesDict[playerType].playerCount}, tileName: {name}"); + playerTypesDict[playerType].playerCount--; + Debug.Log($"targetSafeTile. Removing player {playerType} after: {playerTypesDict[playerType].playerCount}"); + playerTypesDict[playerType].playerPawns.Remove(playerPawn.PlayerId); + + if (playerTypesDict[playerType].playerCount == 0) + { + placementQueue.Enqueue(playerTypesDict[playerType].commonPlacementTransform); + playerTypesDict.Remove(playerType); + Debug.Log($"targetSafeTile. Removing player {playerType}"); + lastOccupiedIndex--; + } + } + } + } + + public PlayerTypes GetFirstPlayerType() => playerTypesDict.Keys.FirstOrDefault(); + + public int GetPlayerPawnsCountInTile(PlayerTypes playerType) + { + return playerTypesDict[playerType].playerPawns.Count; + } + + public PlayerPawn IterateAndGetPlayerPawn(PlayerTypes playerType, int index) + { + return playerTypesDict[playerType].playerPawns[index + 1]; + } + + public Transform GetPlacementPoint(PlayerTypes playerType) + { + return playerTypesDict[playerType].commonPlacementTransform; + } +} diff --git a/Assets/Scripts/Tile/SafeTile.cs.meta b/Assets/Scripts/Tile/SafeTile.cs.meta new file mode 100644 index 0000000..cd827bc --- /dev/null +++ b/Assets/Scripts/Tile/SafeTile.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 114033ff484fb492290f3118615ad4d8 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/Tile/Tile.cs b/Assets/Scripts/Tile/Tile.cs index 50ca995..fd84884 100644 --- a/Assets/Scripts/Tile/Tile.cs +++ b/Assets/Scripts/Tile/Tile.cs @@ -1,106 +1,38 @@ -using System.Collections.Generic; -using System.Linq; using UnityEngine; +using System.Collections.Generic; + +[System.Serializable] +public class PlayerPlacementData +{ + public PlayerPawn pawn; + +} [System.Serializable] public class PlayerTileData { public int playerCount; - public Transform placementTransform; - public List playerPawns; + public Transform commonPlacementTransform; + public Dictionary playerPawns; } public class Tile : MonoBehaviour { - [SerializeField] private bool isSafeZone = false; - [SerializeField] private Transform centerPlacementPoint; - [SerializeField] private Transform[] placementPoints; + [SerializeField] protected bool isSafeZone = false; - private int lastOccupiedIndex = 0; + public bool IsSafeZone => isSafeZone; + + public Vector3 CenterPlacementPosition => transform.position; + + protected int lastOccupiedIndex = 0; public PlayerPawn PlayerPawn // Change implementation { get; private set; } - private Queue placementQueue = new Queue(); - private Dictionary playerTypesDict; - - public int PlayerTypesCount => playerTypesDict.Count; - public bool HasMoreThanOnePlayerType => playerTypesDict.Count > 1; - public bool IsSafeZone => isSafeZone; - - public Vector3 CenterPlacementPosition => centerPlacementPoint.position; - - public bool ContainsPlayerType(PlayerTypes playerType) => playerTypesDict.ContainsKey(playerType); - - public void Init(int playerTypesCount) - { - if (isSafeZone) - { - playerTypesDict = new Dictionary(); - foreach (var placement in placementPoints) - { - placementQueue.Enqueue(placement); - } - } - } - - public void InitPlayerPawn(PlayerPawn playerPawn, PlayerTypes playerType) + public virtual void InitPlayerPawn(PlayerPawn playerPawn, PlayerTypes playerType) { PlayerPawn = playerPawn; - if (isSafeZone) - { - if (!playerTypesDict.ContainsKey(playerType)) - { - playerTypesDict.Add( - playerType, - new PlayerTileData { playerCount = 1, placementTransform = placementQueue.Dequeue(), // TODO :: Change indexing logic - playerPawns = new List { playerPawn } - }); - } - else - { - playerTypesDict[playerType].playerCount++; - playerTypesDict[playerType].playerPawns.Add(playerPawn); - } - } - } - - public void UpdateSafeZonePlayerData(PlayerTypes playerType) - { - if (!IsSafeZone) return; - - if (playerTypesDict.ContainsKey(playerType)) - { - if (playerTypesDict[playerType].playerCount > 0) - { - playerTypesDict[playerType].playerCount--; - playerTypesDict[playerType].playerPawns.RemoveAt(playerTypesDict[playerType].playerPawns.Count - 1); - if (playerTypesDict[playerType].playerCount == 0) - { - placementQueue.Enqueue(playerTypesDict[playerType].placementTransform); - playerTypesDict.Remove(playerType); - lastOccupiedIndex--; - } - } - } - } - - public PlayerTypes GetFirstPlayerType() => playerTypesDict.Keys.FirstOrDefault(); - - public int GetPlayerPawnsCountInTile(PlayerTypes playerType) - { - return playerTypesDict[playerType].playerPawns.Count; - } - - public PlayerPawn IterateAndGetPlayerPawn(PlayerTypes playerType, int index) - { - return playerTypesDict[playerType].playerPawns[index]; - } - - public Transform GetPlacementPoint(PlayerTypes playerType) - { - return playerTypesDict[playerType].placementTransform; } } diff --git a/Assets/Scripts/Tile/TilesManager.cs b/Assets/Scripts/Tile/TilesManager.cs index af6d5dd..935455b 100644 --- a/Assets/Scripts/Tile/TilesManager.cs +++ b/Assets/Scripts/Tile/TilesManager.cs @@ -38,11 +38,6 @@ public class TilesManager : MonoBehaviour, IBootLoader, IDataLoader, IBase finishingTileDataPairs[tileData.playerType].Add(child); } } - - foreach (var tile in generalTiles) - { - tile.Init(gameplayManager.PlayerTypesCollection.Count); - } } public int GetFinishingTileDataLength(PlayerTypes playerType) => finishingTileDataPairs[playerType].Count; @@ -52,7 +47,14 @@ public class TilesManager : MonoBehaviour, IBootLoader, IDataLoader, IBase public Tile RetrieveTileBasedOnIndex(int index) { Debug.Log($"RetrieveTileBasedOnIndex: Index: {index}"); - return index == generalTiles.Length ? generalTiles[0] : generalTiles[index]; + + Tile tile = index == generalTiles.Length ? generalTiles[0] : generalTiles[index]; + // if (tile.IsSafeZone) + // { + // return (SafeTile)tile; + // } + + return tile; } public Transform RetrievePositionForFinishingTile(PlayerTypes playerType, int index)