From 5dca8234250f43bf87ddb93e0fe72f1804d2aa84 Mon Sep 17 00:00:00 2001 From: Amaan Shawkath Date: Sun, 24 Apr 2022 15:41:14 +0100 Subject: [PATCH] adding infinite waves and spawning pickups --- Assets/Scenes/Main - amaan.unity | 183 +++++++++++++ Assets/Scenes/Main.unity | 417 +++++++++++++++++++---------- Assets/Scripts/Core/GameManager.cs | 33 ++- Assets/Scripts/Core/UIManager.cs | 2 +- 4 files changed, 484 insertions(+), 151 deletions(-) diff --git a/Assets/Scenes/Main - amaan.unity b/Assets/Scenes/Main - amaan.unity index c20c4e6..1b04531 100644 --- a/Assets/Scenes/Main - amaan.unity +++ b/Assets/Scenes/Main - amaan.unity @@ -510,6 +510,7 @@ MonoBehaviour: scoreLabel: {fileID: 71873946} waveLabel: {fileID: 1089069509} restartButton: {fileID: 145060169} + scoreboardButton: {fileID: 0} --- !u!4 &286668900 Transform: m_ObjectHideFlags: 0 @@ -1137,6 +1138,7 @@ RectTransform: - {fileID: 145060168} - {fileID: 71873945} - {fileID: 1089069507} + - {fileID: 1512537867} m_Father: {fileID: 0} m_RootOrder: 7 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} @@ -6390,6 +6392,82 @@ Transform: m_Father: {fileID: 0} m_RootOrder: 4 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1221216105 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1221216106} + - component: {fileID: 1221216108} + - component: {fileID: 1221216107} + m_Layer: 5 + m_Name: Image + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1221216106 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1221216105} + 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: 1512537867} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 100, y: 100} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &1221216107 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1221216105} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 0} + m_Type: 0 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!222 &1221216108 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1221216105} + m_CullTransparentMesh: 1 --- !u!1 &1307309471 GameObject: m_ObjectHideFlags: 0 @@ -6527,6 +6605,111 @@ CanvasRenderer: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1307309471} m_CullTransparentMesh: 1 +--- !u!1 &1512537866 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1512537867} + - component: {fileID: 1512537870} + - component: {fileID: 1512537869} + - component: {fileID: 1512537868} + m_Layer: 5 + m_Name: PlayerState + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1512537867 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1512537866} + 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: 1221216106} + m_Father: {fileID: 920563117} + m_RootOrder: 5 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 0} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 103.1085} + m_Pivot: {x: 0.5, y: 0} +--- !u!114 &1512537868 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1512537866} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: cc0ea63e9c40f754fa7cee70f7496f9e, type: 3} + m_Name: + m_EditorClassIdentifier: + moods: + - mood: 0 + image: {fileID: 21300000, guid: 0f9897b3c2438be49a6eb91b747a1fbb, type: 3} + health: 100 + - mood: 1 + image: {fileID: 21300000, guid: ab2077818ea2a9f47b614ebb1b78cbcb, type: 3} + health: 70 + - mood: 2 + image: {fileID: 21300000, guid: b4f8bf618b886fa41baa5cd64e903a59, type: 3} + health: 50 + - mood: 3 + image: {fileID: 21300000, guid: 219465e0dcb387342bd72ab99876a7de, type: 3} + health: 10 + moodHolder: {fileID: 1221216107} + player: {fileID: 1153618773} +--- !u!114 &1512537869 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1512537866} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 0, g: 0, b: 0, a: 0.392} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 10907, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 1 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!222 &1512537870 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1512537866} + m_CullTransparentMesh: 1 --- !u!1 &1713396533 GameObject: m_ObjectHideFlags: 0 diff --git a/Assets/Scenes/Main.unity b/Assets/Scenes/Main.unity index f0f44fc..e8ca064 100644 --- a/Assets/Scenes/Main.unity +++ b/Assets/Scenes/Main.unity @@ -293,8 +293,8 @@ Camera: m_GameObject: {fileID: 85715037} m_Enabled: 1 serializedVersion: 2 - m_ClearFlags: 1 - m_BackGroundColor: {r: 0.19215687, g: 0.3019608, b: 0.4745098, a: 0} + m_ClearFlags: 2 + m_BackGroundColor: {r: 0.12902144, g: 0.026432894, b: 0.16981131, a: 0} m_projectionMatrixMode: 1 m_GateFitMode: 2 m_FOVAxisMode: 0 @@ -340,7 +340,7 @@ Transform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 5 + m_RootOrder: 4 m_LocalEulerAnglesHint: {x: 90, y: 0, z: 0} --- !u!1 &145060167 GameObject: @@ -508,7 +508,7 @@ MonoBehaviour: playerHealthLabel: {fileID: 1307309473} gameOverLabel: {fileID: 733797117} scoreLabel: {fileID: 71873946} - waveLabel: {fileID: 0} + waveLabel: {fileID: 1210934954} restartButton: {fileID: 145060169} scoreboardButton: {fileID: 1214927756} --- !u!4 &286668900 @@ -524,7 +524,7 @@ Transform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 9 + m_RootOrder: 8 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1001 &346639411 PrefabInstance: @@ -537,6 +537,10 @@ PrefabInstance: propertyPath: m_Name value: Extinguisher objectReference: {fileID: 0} + - target: {fileID: 5132736053105504304, guid: aa520f25e9cc9644fad9fb11be3f9d25, type: 3} + propertyPath: m_IsActive + value: 0 + objectReference: {fileID: 0} - target: {fileID: 5132736053105504309, guid: aa520f25e9cc9644fad9fb11be3f9d25, type: 3} propertyPath: m_RootOrder value: 1 @@ -812,6 +816,37 @@ Transform: m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 50, y: -30, z: 0} +--- !u!1 &612955135 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 612955136} + m_Layer: 0 + m_Name: enemy_holder + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &612955136 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 612955135} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 363.55103, y: 437.60477, z: 46.816406} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 13 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &733797115 GameObject: m_ObjectHideFlags: 0 @@ -966,7 +1001,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 4616776388382335742, guid: c6b0d13b6229fd44d8fb78d64fddbb88, type: 3} propertyPath: m_RootOrder - value: 11 + value: 10 objectReference: {fileID: 0} - target: {fileID: 4616776388382335742, guid: c6b0d13b6229fd44d8fb78d64fddbb88, type: 3} propertyPath: m_LocalPosition.x @@ -1242,8 +1277,9 @@ RectTransform: - {fileID: 145060168} - {fileID: 71873945} - {fileID: 1214927755} + - {fileID: 1210934952} m_Father: {fileID: 0} - m_RootOrder: 7 + m_RootOrder: 6 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} @@ -6105,8 +6141,6 @@ GameObject: serializedVersion: 6 m_Component: - component: {fileID: 1153618777} - - component: {fileID: 1153618776} - - component: {fileID: 1153618775} - component: {fileID: 1153618774} - component: {fileID: 1153618773} - component: {fileID: 1153618778} @@ -6131,7 +6165,7 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: health: 100 - speed: 10 + speed: 5 trail: {fileID: 985706847} rotationSpeed: 200 direction: 0 @@ -6150,56 +6184,6 @@ BoxCollider: serializedVersion: 2 m_Size: {x: 1, y: 1, z: 1} m_Center: {x: 0, y: 0, z: 0} ---- !u!23 &1153618775 -MeshRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1153618772} - m_Enabled: 1 - m_CastShadows: 1 - m_ReceiveShadows: 1 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - m_MotionVectors: 1 - m_LightProbeUsage: 1 - m_ReflectionProbeUsage: 1 - m_RayTracingMode: 2 - m_RayTraceProcedural: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0} - 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: 3 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 0 - m_AdditionalVertexStreams: {fileID: 0} ---- !u!33 &1153618776 -MeshFilter: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1153618772} - m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} --- !u!4 &1153618777 Transform: m_ObjectHideFlags: 0 @@ -6213,8 +6197,9 @@ Transform: m_ConstrainProportionsScale: 0 m_Children: - {fileID: 985706850} + - {fileID: 1966979454} m_Father: {fileID: 0} - m_RootOrder: 6 + m_RootOrder: 5 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &1153618778 MonoBehaviour: @@ -6262,7 +6247,7 @@ Rigidbody: m_Interpolate: 0 m_Constraints: 0 m_CollisionDetection: 0 ---- !u!1 &1195272192 +--- !u!1 &1210934951 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} @@ -6270,96 +6255,133 @@ GameObject: m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - - component: {fileID: 1195272196} - - component: {fileID: 1195272195} - - component: {fileID: 1195272194} - - component: {fileID: 1195272193} - m_Layer: 0 - m_Name: Plane + - component: {fileID: 1210934952} + - component: {fileID: 1210934953} + - component: {fileID: 1210934954} + m_Layer: 5 + m_Name: Wave m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 ---- !u!64 &1195272193 -MeshCollider: +--- !u!224 &1210934952 +RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1195272192} - m_Material: {fileID: 0} - m_IsTrigger: 0 - m_Enabled: 1 - serializedVersion: 4 - m_Convex: 0 - m_CookingOptions: 30 - m_Mesh: {fileID: 10209, guid: 0000000000000000e000000000000000, type: 0} ---- !u!23 &1195272194 -MeshRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1195272192} - m_Enabled: 1 - m_CastShadows: 1 - m_ReceiveShadows: 1 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - m_MotionVectors: 1 - m_LightProbeUsage: 1 - m_ReflectionProbeUsage: 1 - m_RayTracingMode: 2 - m_RayTraceProcedural: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 2100000, guid: 671a54aed03aa184a867efb01293adc7, 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: 3 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 0 - m_AdditionalVertexStreams: {fileID: 0} ---- !u!33 &1195272195 -MeshFilter: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1195272192} - m_Mesh: {fileID: 10209, guid: 0000000000000000e000000000000000, type: 0} ---- !u!4 &1195272196 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1195272192} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_GameObject: {fileID: 1210934951} + 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: 4 + m_Father: {fileID: 920563117} + m_RootOrder: 5 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 1} + m_AnchorMax: {x: 0, y: 1} + m_AnchoredPosition: {x: 0, y: -102} + m_SizeDelta: {x: 200, y: 50} + m_Pivot: {x: 0, y: 1} +--- !u!222 &1210934953 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1210934951} + m_CullTransparentMesh: 1 +--- !u!114 &1210934954 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1210934951} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_text: Wave + m_isRightToLeft: 0 + m_fontAsset: {fileID: 11400000, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} + m_sharedMaterial: {fileID: 2180264, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} + m_fontSharedMaterials: [] + m_fontMaterial: {fileID: 0} + m_fontMaterials: [] + m_fontColor32: + serializedVersion: 2 + rgba: 4294967295 + m_fontColor: {r: 1, g: 1, b: 1, a: 1} + m_enableVertexGradient: 0 + m_colorMode: 3 + m_fontColorGradient: + topLeft: {r: 1, g: 1, b: 1, a: 1} + topRight: {r: 1, g: 1, b: 1, a: 1} + bottomLeft: {r: 1, g: 1, b: 1, a: 1} + bottomRight: {r: 1, g: 1, b: 1, a: 1} + m_fontColorGradientPreset: {fileID: 0} + m_spriteAsset: {fileID: 0} + m_tintAllSprites: 0 + m_StyleSheet: {fileID: 0} + m_TextStyleHashCode: -1183493901 + m_overrideHtmlColors: 0 + m_faceColor: + serializedVersion: 2 + rgba: 4294967295 + m_fontSize: 36 + m_fontSizeBase: 36 + m_fontWeight: 400 + m_enableAutoSizing: 0 + m_fontSizeMin: 18 + m_fontSizeMax: 72 + m_fontStyle: 0 + m_HorizontalAlignment: 1 + m_VerticalAlignment: 256 + m_textAlignment: 65535 + m_characterSpacing: 0 + m_wordSpacing: 0 + m_lineSpacing: 0 + m_lineSpacingMax: 0 + m_paragraphSpacing: 0 + m_charWidthMaxAdj: 0 + m_enableWordWrapping: 1 + m_wordWrappingRatios: 0.4 + m_overflowMode: 0 + m_linkedTextComponent: {fileID: 0} + parentLinkedComponent: {fileID: 0} + m_enableKerning: 1 + m_enableExtraPadding: 0 + checkPaddingRequired: 0 + m_isRichText: 1 + m_parseCtrlCharacters: 1 + m_isOrthographic: 1 + m_isCullingEnabled: 0 + m_horizontalMapping: 0 + m_verticalMapping: 0 + m_uvLineOffset: 0 + m_geometrySortingOrder: 0 + m_IsTextObjectScaleStatic: 0 + m_VertexBufferAutoSizeReduction: 0 + m_useMaxVisibleDescender: 1 + m_pageToDisplay: 1 + m_margin: {x: 0, y: 0, z: 0, w: 0} + m_isUsingLegacyAnimationComponent: 0 + m_isVolumetricText: 0 + m_hasFontAssetChanged: 0 + m_baseMaterial: {fileID: 0} + m_maskOffset: {x: 0, y: 0, z: 0, w: 0} --- !u!1 &1214927754 GameObject: m_ObjectHideFlags: 0 @@ -6552,7 +6574,7 @@ MonoBehaviour: m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] - m_text: 'Helth + m_text: 'Health ' m_isRightToLeft: 0 @@ -6730,7 +6752,7 @@ Transform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 8 + m_RootOrder: 7 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &1902502761 MonoBehaviour: @@ -6760,6 +6782,90 @@ MonoBehaviour: m_TrackedDeviceOrientationAction: {fileID: 1025543830046995696, guid: ca9f5fa95ffab41fb9a615ab714db018, type: 3} m_DeselectOnBackgroundClick: 1 m_PointerBehavior: 0 +--- !u!1 &1966979453 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1966979454} + - component: {fileID: 1966979455} + m_Layer: 3 + m_Name: bike + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1966979454 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1966979453} + m_LocalRotation: {x: 0.7071068, y: 0, z: 0, w: 0.7071068} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 0.6, y: 0.6, z: 0.6} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1153618777} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 90, y: 0, z: 0} +--- !u!212 &1966979455 +SpriteRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1966979453} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} + 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_Sprite: {fileID: 21300000, guid: 88549f39e5cf1df4e981a7ce6e242bb6, type: 3} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_FlipX: 0 + m_FlipY: 0 + m_DrawMode: 0 + m_Size: {x: 3, y: 5} + m_AdaptiveModeThreshold: 0.5 + m_SpriteTileMode: 0 + m_WasSpriteAssigned: 1 + m_MaskInteraction: 0 + m_SpriteSortPoint: 0 --- !u!1 &2006521495 GameObject: m_ObjectHideFlags: 0 @@ -6777,7 +6883,7 @@ GameObject: m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 - m_IsActive: 1 + m_IsActive: 0 --- !u!114 &2006521496 MonoBehaviour: m_ObjectHideFlags: 0 @@ -6807,7 +6913,7 @@ Transform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 12 + m_RootOrder: 11 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!65 &2006521498 BoxCollider: @@ -6858,11 +6964,28 @@ MonoBehaviour: userInterfaceManager: {fileID: 0} musicManager: {fileID: 0} player: {fileID: 0} - pickups: [] + pickups: + - {fileID: 7939944331332505904, guid: bf9774e8d9a471646a052a48d53734e7, type: 3} + - {fileID: 5132736053105504304, guid: aa520f25e9cc9644fad9fb11be3f9d25, type: 3} + - {fileID: 448384805825873017, guid: 094d0ee7d7045c448bbe8a9a53e6b036, type: 3} + - {fileID: 7515728833028880720, guid: 1438786204748de429da37ca2ec9374c, type: 3} pickupDelay: 0 scoreMultiplier: 1.2 - waves: [] - enemyHolder: {fileID: 0} + overallWave: 0 + waves: + - enemies: + - {fileID: 2006521496} + - {fileID: 2006521496} + - enemies: + - {fileID: 2006521496} + - {fileID: 2006521496} + - {fileID: 2006521496} + - enemies: + - {fileID: 2006521496} + - {fileID: 2006521496} + - {fileID: 2006521496} + - {fileID: 2006521496} + enemyHolder: {fileID: 612955135} --- !u!4 &2036477790 Transform: m_ObjectHideFlags: 0 @@ -6895,7 +7018,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 6172981237138491607, guid: 0678182139845e7448149b383c283783, type: 3} propertyPath: m_RootOrder - value: 13 + value: 12 objectReference: {fileID: 0} - target: {fileID: 6172981237138491607, guid: 0678182139845e7448149b383c283783, type: 3} propertyPath: m_LocalPosition.x @@ -6956,7 +7079,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 4703034693337767938, guid: 33f16864f90b0494399efa097fdcb39f, type: 3} propertyPath: m_RootOrder - value: 10 + value: 9 objectReference: {fileID: 0} - target: {fileID: 4703034693337767938, guid: 33f16864f90b0494399efa097fdcb39f, type: 3} propertyPath: m_LocalPosition.x diff --git a/Assets/Scripts/Core/GameManager.cs b/Assets/Scripts/Core/GameManager.cs index aa07050..6e8fc44 100644 --- a/Assets/Scripts/Core/GameManager.cs +++ b/Assets/Scripts/Core/GameManager.cs @@ -26,10 +26,14 @@ public class GameManager : MonoBehaviour public float pickupDelay; public float scoreMultiplier; + public int overallWave = 0; + public List waves; public GameObject enemyHolder; private Wave currentWave; + private float SPAWN_DROP_TIME = 10; + private float lastSpawnTime = 0; // Start is called before the first frame update void Start() @@ -44,11 +48,20 @@ public class GameManager : MonoBehaviour // Update is called once per frame void Update() { - + if (Time.time - lastSpawnTime > SPAWN_DROP_TIME) + { + lastSpawnTime = Time.time; + SpawnPickup(); + } } public void StartWave() { + if (wave >= waves.Count) + { + wave = 0; + } + Wave current = waves[wave]; if (current != null) { @@ -71,7 +84,8 @@ public class GameManager : MonoBehaviour Vector3 spawnPos = new Vector3(spawnX, player.gameObject.transform.position.y, spawnZ); - Instantiate(currentWave.enemies[i].gameObject, spawnPos, Quaternion.identity, enemyHolder.transform); + GameObject obj = Instantiate(currentWave.enemies[i].gameObject, spawnPos, Quaternion.identity, enemyHolder.transform); + obj.SetActive(true); } } } @@ -86,11 +100,22 @@ public class GameManager : MonoBehaviour { // wave over... start next wave wave++; + overallWave++; StartWave(); - } } + public void SpawnPickup() + { + GameObject pickup = pickups[Random.Range(0, pickups.Length)]; + + float spawnZ = Random.Range(Camera.main.ScreenToWorldPoint(new Vector2(0, 0)).z, Camera.main.ScreenToWorldPoint(new Vector2(0, Screen.height)).z); + float spawnX = Random.Range(Camera.main.ScreenToWorldPoint(new Vector2(0, 0)).x, Camera.main.ScreenToWorldPoint(new Vector2(Screen.width, 0)).x); + + GameObject ins = Instantiate(pickup); + ins.transform.position = new Vector3(spawnX, player.transform.position.y, spawnZ); + } + public void PlayerDed() { @@ -109,6 +134,8 @@ public class GameManager : MonoBehaviour public void RestartGame() { + Destroy(gameObject); + //get active scene and reload it SceneManager.LoadScene(SceneManager.GetActiveScene().name); diff --git a/Assets/Scripts/Core/UIManager.cs b/Assets/Scripts/Core/UIManager.cs index 2c87b13..d337ca3 100644 --- a/Assets/Scripts/Core/UIManager.cs +++ b/Assets/Scripts/Core/UIManager.cs @@ -29,7 +29,7 @@ public class UIManager : MonoBehaviour scoreLabel.text = "Score: " + Mathf.Round(gameManager.score).ToString(); - waveLabel.text = "Wave: " + (gameManager.wave + 1).ToString(); + waveLabel.text = "Wave: " + (gameManager.overallWave + 1).ToString(); if (gameManager.player.health <= 0) {