From 7d9ea6ed2968ce2f03dc2841af49763fb52d1858 Mon Sep 17 00:00:00 2001 From: Kandyimov Yaroslav Date: Wed, 21 Apr 2021 00:31:13 +0300 Subject: [PATCH 1/5] Refactorig --- .vsconfig | 6 + Assets/Group1/Prefabs.meta | 8 + Assets/Group1/Scenes/KillAllEnemies.unity | 177 +++++++- Assets/Group1/Scripts/Enemy.cs | 31 ++ .../{GameController.cs.meta => Enemy.cs.meta} | 2 +- Assets/Group1/Scripts/EnemyMover.cs | 22 + .../Scripts/{e.cs.meta => EnemyMover.cs.meta} | 0 Assets/Group1/Scripts/Game.cs | 46 +++ Assets/Group1/Scripts/Game.cs.meta | 11 + Assets/Group1/Scripts/GameController.cs | 38 -- Assets/Group1/Scripts/GameOverScreen.cs | 31 ++ Assets/Group1/Scripts/GameOverScreen.cs.meta | 11 + Assets/Group1/Scripts/NewBehaviourScript1.cs | 65 --- Assets/Group1/Scripts/Player.cs | 5 + Assets/Group1/Scripts/Player.cs.meta | 11 + Assets/Group1/Scripts/PlayerMover.cs | 14 + ...ourScript1.cs.meta => PlayerMover.cs.meta} | 0 Assets/Group1/Scripts/e.cs | 22 - Assets/Group1/Sprites.meta | 8 + Assets/Group1/{ => Sprites}/Player.png | Bin Assets/Group1/{ => Sprites}/Player.png.meta | 0 Assets/Group1/{ => Sprites}/enemy.png | Bin Assets/Group1/{ => Sprites}/enemy.png.meta | 0 Logs/Packages-Update.log | 25 ++ Packages/manifest.json | 21 +- Packages/packages-lock.json | 382 ++++++++++++++++++ ProjectSettings/EditorSettings.asset | 20 +- ProjectSettings/PackageManagerSettings.asset | 38 ++ ProjectSettings/ProjectVersion.txt | 3 +- ProjectSettings/XRSettings.asset | 10 + 30 files changed, 850 insertions(+), 157 deletions(-) create mode 100644 .vsconfig create mode 100644 Assets/Group1/Prefabs.meta create mode 100644 Assets/Group1/Scripts/Enemy.cs rename Assets/Group1/Scripts/{GameController.cs.meta => Enemy.cs.meta} (83%) create mode 100644 Assets/Group1/Scripts/EnemyMover.cs rename Assets/Group1/Scripts/{e.cs.meta => EnemyMover.cs.meta} (100%) create mode 100644 Assets/Group1/Scripts/Game.cs create mode 100644 Assets/Group1/Scripts/Game.cs.meta delete mode 100644 Assets/Group1/Scripts/GameController.cs create mode 100644 Assets/Group1/Scripts/GameOverScreen.cs create mode 100644 Assets/Group1/Scripts/GameOverScreen.cs.meta delete mode 100644 Assets/Group1/Scripts/NewBehaviourScript1.cs create mode 100644 Assets/Group1/Scripts/Player.cs create mode 100644 Assets/Group1/Scripts/Player.cs.meta create mode 100644 Assets/Group1/Scripts/PlayerMover.cs rename Assets/Group1/Scripts/{NewBehaviourScript1.cs.meta => PlayerMover.cs.meta} (100%) delete mode 100644 Assets/Group1/Scripts/e.cs create mode 100644 Assets/Group1/Sprites.meta rename Assets/Group1/{ => Sprites}/Player.png (100%) rename Assets/Group1/{ => Sprites}/Player.png.meta (100%) rename Assets/Group1/{ => Sprites}/enemy.png (100%) rename Assets/Group1/{ => Sprites}/enemy.png.meta (100%) create mode 100644 Logs/Packages-Update.log create mode 100644 Packages/packages-lock.json create mode 100644 ProjectSettings/PackageManagerSettings.asset create mode 100644 ProjectSettings/XRSettings.asset diff --git a/.vsconfig b/.vsconfig new file mode 100644 index 00000000..1586a483 --- /dev/null +++ b/.vsconfig @@ -0,0 +1,6 @@ +{ + "version": "1.0", + "components": [ + "Microsoft.VisualStudio.Workload.ManagedGame" + ] +} diff --git a/Assets/Group1/Prefabs.meta b/Assets/Group1/Prefabs.meta new file mode 100644 index 00000000..58b9be14 --- /dev/null +++ b/Assets/Group1/Prefabs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: e22791a87333a034ea90ab7a9fd26b5c +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Group1/Scenes/KillAllEnemies.unity b/Assets/Group1/Scenes/KillAllEnemies.unity index 21adfb9b..1b8896b7 100644 --- a/Assets/Group1/Scenes/KillAllEnemies.unity +++ b/Assets/Group1/Scenes/KillAllEnemies.unity @@ -38,7 +38,7 @@ RenderSettings: m_ReflectionIntensity: 1 m_CustomReflection: {fileID: 0} m_Sun: {fileID: 170076734} - m_IndirectSpecularColor: {r: 0.44657898, g: 0.4964133, b: 0.5748178, a: 1} + m_IndirectSpecularColor: {r: 0.44657874, g: 0.49641258, b: 0.5748172, a: 1} m_UseRadianceAmbientProbe: 0 --- !u!157 &3 LightmapSettings: @@ -54,7 +54,7 @@ LightmapSettings: m_EnableBakedLightmaps: 1 m_EnableRealtimeLightmaps: 0 m_LightmapEditorSettings: - serializedVersion: 10 + serializedVersion: 12 m_Resolution: 2 m_BakeResolution: 10 m_AtlasSize: 512 @@ -62,6 +62,7 @@ LightmapSettings: m_AOMaxDistance: 1 m_CompAOExponent: 1 m_CompAOExponentDirect: 0 + m_ExtractAmbientOcclusion: 0 m_Padding: 2 m_LightmapParameters: {fileID: 0} m_LightmapsBakeMode: 1 @@ -76,10 +77,16 @@ LightmapSettings: m_PVRDirectSampleCount: 32 m_PVRSampleCount: 256 m_PVRBounces: 2 + m_PVREnvironmentSampleCount: 256 + m_PVREnvironmentReferencePointCount: 2048 + m_PVRFilteringMode: 2 + m_PVRDenoiserTypeDirect: 0 + m_PVRDenoiserTypeIndirect: 0 + m_PVRDenoiserTypeAO: 0 m_PVRFilterTypeDirect: 0 m_PVRFilterTypeIndirect: 0 m_PVRFilterTypeAO: 0 - m_PVRFilteringMode: 1 + m_PVREnvironmentMIS: 0 m_PVRCulling: 1 m_PVRFilteringGaussRadiusDirect: 1 m_PVRFilteringGaussRadiusIndirect: 5 @@ -87,7 +94,9 @@ LightmapSettings: m_PVRFilteringAtrousPositionSigmaDirect: 0.5 m_PVRFilteringAtrousPositionSigmaIndirect: 2 m_PVRFilteringAtrousPositionSigmaAO: 1 - m_ShowResolutionOverlay: 1 + m_ExportTrainingData: 0 + m_TrainingDataDestination: TrainingData + m_LightProbeSampleCountMultiplier: 4 m_LightingDataAsset: {fileID: 0} m_UseShadowmask: 1 --- !u!196 &4 @@ -123,6 +132,7 @@ GameObject: - component: {fileID: 141422279} - component: {fileID: 141422278} - component: {fileID: 141422277} + - component: {fileID: 141422276} m_Layer: 0 m_Name: enemy m_TagString: Enemy @@ -130,6 +140,19 @@ GameObject: m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 +--- !u!114 &141422276 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 141422275} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: b9c1c9ed4b3212741be80d3f6aa54b30, type: 3} + m_Name: + m_EditorClassIdentifier: + _deathRange: 0.5 --- !u!114 &141422277 MonoBehaviour: m_ObjectHideFlags: 0 @@ -142,6 +165,8 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 65f7df4705b7dae48944a39b48934484, type: 3} m_Name: m_EditorClassIdentifier: + _distance: 4 + _speed: 2 --- !u!212 &141422278 SpriteRenderer: m_ObjectHideFlags: 0 @@ -156,6 +181,7 @@ SpriteRenderer: m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 + m_RayTracingMode: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -167,6 +193,7 @@ SpriteRenderer: m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 + m_ReceiveGI: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 @@ -229,12 +256,14 @@ Light: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 170076733} m_Enabled: 1 - serializedVersion: 8 + serializedVersion: 10 m_Type: 1 + m_Shape: 0 m_Color: {r: 1, g: 0.95686275, b: 0.8392157, a: 1} m_Intensity: 1 m_Range: 10 m_SpotAngle: 30 + m_InnerSpotAngle: 21.80208 m_CookieSize: 10 m_Shadows: m_Type: 2 @@ -244,6 +273,24 @@ Light: m_Bias: 0.05 m_NormalBias: 0.4 m_NearPlane: 0.2 + m_CullingMatrixOverride: + e00: 1 + e01: 0 + e02: 0 + e03: 0 + e10: 0 + e11: 1 + e12: 0 + e13: 0 + e20: 0 + e21: 0 + e22: 1 + e23: 0 + e30: 0 + e31: 0 + e32: 0 + e33: 1 + m_UseCullingMatrixOverride: 0 m_Cookie: {fileID: 0} m_DrawHalo: 0 m_Flare: {fileID: 0} @@ -251,12 +298,15 @@ Light: m_CullingMask: serializedVersion: 2 m_Bits: 4294967295 + m_RenderingLayerMask: 1 m_Lightmapping: 1 m_LightShadowCasterMode: 0 m_AreaSize: {x: 1, y: 1} m_BounceIntensity: 1 m_ColorTemperature: 6570 m_UseColorTemperature: 0 + m_BoundingSphereOverride: {x: 0, y: 0, z: 0, w: 0} + m_UseBoundingSphereOverride: 0 m_ShadowRadius: 0 m_ShadowAngle: 0 --- !u!4 &170076735 @@ -312,9 +362,10 @@ Camera: m_ClearFlags: 1 m_BackGroundColor: {r: 0.19215687, g: 0.3019608, b: 0.4745098, a: 0} m_projectionMatrixMode: 1 + m_GateFitMode: 2 + m_FOVAxisMode: 0 m_SensorSize: {x: 36, y: 24} m_LensShift: {x: 0, y: 0} - m_GateFitMode: 2 m_FocalLength: 50 m_NormalizedViewPortRect: serializedVersion: 2 @@ -365,16 +416,16 @@ MonoBehaviour: m_GameObject: {fileID: 534669902} m_Enabled: 1 m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: cd6d0074e725a114e850d2e604fe4b0d, type: 3} + m_Script: {fileID: 11500000, guid: 9a4e13cb3001f934aad603209e9cb358, type: 3} m_Name: m_EditorClassIdentifier: - go: {fileID: 1054253062} - a: {fileID: 1761935009} - B: - - {fileID: 2083640146} - - {fileID: 1754708960} - - {fileID: 141422275} - - {fileID: 1578050036} + _gameOverScreen: {fileID: 1054253065} + _player: {fileID: 1761935013} + _enemies: + - {fileID: 2083640149} + - {fileID: 1754708961} + - {fileID: 141422276} + - {fileID: 1578050037} --- !u!1 &1054253062 GameObject: m_ObjectHideFlags: 0 @@ -385,13 +436,14 @@ GameObject: m_Component: - component: {fileID: 1054253064} - component: {fileID: 1054253063} + - component: {fileID: 1054253065} m_Layer: 0 - m_Name: New Sprite + m_Name: GameOverScreen m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 - m_IsActive: 0 + m_IsActive: 1 --- !u!212 &1054253063 SpriteRenderer: m_ObjectHideFlags: 0 @@ -406,6 +458,7 @@ SpriteRenderer: m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 + m_RayTracingMode: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -417,6 +470,7 @@ SpriteRenderer: m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 + m_ReceiveGI: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 @@ -430,7 +484,7 @@ SpriteRenderer: m_SortingLayer: 0 m_SortingOrder: 100 m_Sprite: {fileID: 21300000, guid: c393ddce902166c4fb0e2130d216d549, type: 3} - m_Color: {r: 0, g: 0, b: 0, a: 1} + m_Color: {r: 0, g: 0, b: 0, a: 0} m_FlipX: 0 m_FlipY: 0 m_DrawMode: 0 @@ -454,6 +508,20 @@ Transform: m_Father: {fileID: 0} m_RootOrder: 7 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &1054253065 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1054253062} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: b93015075b140a94c8356aadc7f5a467, type: 3} + m_Name: + m_EditorClassIdentifier: + _game: {fileID: 534669906} + _targetColor: {r: 0, g: 0, b: 0, a: 1} --- !u!1 &1578050036 GameObject: m_ObjectHideFlags: 0 @@ -465,6 +533,7 @@ GameObject: - component: {fileID: 1578050040} - component: {fileID: 1578050039} - component: {fileID: 1578050038} + - component: {fileID: 1578050037} m_Layer: 0 m_Name: enemy m_TagString: Enemy @@ -472,6 +541,19 @@ GameObject: m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 +--- !u!114 &1578050037 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1578050036} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: b9c1c9ed4b3212741be80d3f6aa54b30, type: 3} + m_Name: + m_EditorClassIdentifier: + _deathRange: 0.5 --- !u!114 &1578050038 MonoBehaviour: m_ObjectHideFlags: 0 @@ -484,6 +566,8 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 65f7df4705b7dae48944a39b48934484, type: 3} m_Name: m_EditorClassIdentifier: + _distance: 4 + _speed: 2 --- !u!212 &1578050039 SpriteRenderer: m_ObjectHideFlags: 0 @@ -498,6 +582,7 @@ SpriteRenderer: m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 + m_RayTracingMode: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -509,6 +594,7 @@ SpriteRenderer: m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 + m_ReceiveGI: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 @@ -557,6 +643,7 @@ GameObject: - component: {fileID: 1754708964} - component: {fileID: 1754708963} - component: {fileID: 1754708962} + - component: {fileID: 1754708961} m_Layer: 0 m_Name: enemy m_TagString: Enemy @@ -564,6 +651,19 @@ GameObject: m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 +--- !u!114 &1754708961 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1754708960} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: b9c1c9ed4b3212741be80d3f6aa54b30, type: 3} + m_Name: + m_EditorClassIdentifier: + _deathRange: 0.5 --- !u!114 &1754708962 MonoBehaviour: m_ObjectHideFlags: 0 @@ -576,6 +676,8 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 65f7df4705b7dae48944a39b48934484, type: 3} m_Name: m_EditorClassIdentifier: + _distance: 4 + _speed: 2 --- !u!212 &1754708963 SpriteRenderer: m_ObjectHideFlags: 0 @@ -590,6 +692,7 @@ SpriteRenderer: m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 + m_RayTracingMode: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -601,6 +704,7 @@ SpriteRenderer: m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 + m_ReceiveGI: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 @@ -649,8 +753,9 @@ GameObject: - component: {fileID: 1761935011} - component: {fileID: 1761935010} - component: {fileID: 1761935012} + - component: {fileID: 1761935013} m_Layer: 0 - m_Name: New Sprite (1) + m_Name: Player m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 @@ -670,6 +775,7 @@ SpriteRenderer: m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 + m_RayTracingMode: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -681,6 +787,7 @@ SpriteRenderer: m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 + m_ReceiveGI: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 @@ -730,9 +837,19 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: dede9e7d6741aea4cb07b98da83cc6a8, type: 3} m_Name: m_EditorClassIdentifier: - spEed: 4 - timer: 0 - time: 0 + _speed: 2 +--- !u!114 &1761935013 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1761935009} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 38e82f04c582b4048b677715acb22b9f, type: 3} + m_Name: + m_EditorClassIdentifier: --- !u!1 &2083640146 GameObject: m_ObjectHideFlags: 0 @@ -744,6 +861,7 @@ GameObject: - component: {fileID: 2083640148} - component: {fileID: 2083640147} - component: {fileID: 2083640150} + - component: {fileID: 2083640149} m_Layer: 0 m_Name: enemy m_TagString: Enemy @@ -765,6 +883,7 @@ SpriteRenderer: m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 + m_RayTracingMode: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: @@ -776,6 +895,7 @@ SpriteRenderer: m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 + m_ReceiveGI: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 @@ -813,6 +933,19 @@ Transform: m_Father: {fileID: 0} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &2083640149 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2083640146} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: b9c1c9ed4b3212741be80d3f6aa54b30, type: 3} + m_Name: + m_EditorClassIdentifier: + _deathRange: 0.5 --- !u!114 &2083640150 MonoBehaviour: m_ObjectHideFlags: 0 @@ -825,3 +958,5 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 65f7df4705b7dae48944a39b48934484, type: 3} m_Name: m_EditorClassIdentifier: + _distance: 4 + _speed: 2 diff --git a/Assets/Group1/Scripts/Enemy.cs b/Assets/Group1/Scripts/Enemy.cs new file mode 100644 index 00000000..2de95758 --- /dev/null +++ b/Assets/Group1/Scripts/Enemy.cs @@ -0,0 +1,31 @@ +using UnityEngine; +using UnityEngine.Events; + +public class Enemy : MonoBehaviour +{ + [SerializeField] private float _deathRange; + + public event UnityAction EnemyDyed; + + private Player _player; + + private void Update() + { + if (Vector3.Distance(_player.transform.position, transform.position) < _deathRange) + { + Die(); + } + } + + public void Init(Player player) + { + _player = player; + } + + private void Die() + { + EnemyDyed?.Invoke(); + + Destroy(gameObject); + } +} diff --git a/Assets/Group1/Scripts/GameController.cs.meta b/Assets/Group1/Scripts/Enemy.cs.meta similarity index 83% rename from Assets/Group1/Scripts/GameController.cs.meta rename to Assets/Group1/Scripts/Enemy.cs.meta index e9cd6afe..07c2eb77 100644 --- a/Assets/Group1/Scripts/GameController.cs.meta +++ b/Assets/Group1/Scripts/Enemy.cs.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: cd6d0074e725a114e850d2e604fe4b0d +guid: b9c1c9ed4b3212741be80d3f6aa54b30 MonoImporter: externalObjects: {} serializedVersion: 2 diff --git a/Assets/Group1/Scripts/EnemyMover.cs b/Assets/Group1/Scripts/EnemyMover.cs new file mode 100644 index 00000000..60994b8e --- /dev/null +++ b/Assets/Group1/Scripts/EnemyMover.cs @@ -0,0 +1,22 @@ +using UnityEngine; + +public class EnemyMover : MonoBehaviour +{ + [SerializeField] private int _distance; + [SerializeField] private float _speed; + + private Vector3 _targetPoint; + + private void Start() + { + _targetPoint = Random.insideUnitCircle * _distance; + } + + private void Update() + { + transform.position = Vector3.MoveTowards(transform.position, _targetPoint, _speed * Time.deltaTime); + + if (transform.position == _targetPoint) + _targetPoint = Random.insideUnitCircle * _distance; + } +} diff --git a/Assets/Group1/Scripts/e.cs.meta b/Assets/Group1/Scripts/EnemyMover.cs.meta similarity index 100% rename from Assets/Group1/Scripts/e.cs.meta rename to Assets/Group1/Scripts/EnemyMover.cs.meta diff --git a/Assets/Group1/Scripts/Game.cs b/Assets/Group1/Scripts/Game.cs new file mode 100644 index 00000000..72d54c57 --- /dev/null +++ b/Assets/Group1/Scripts/Game.cs @@ -0,0 +1,46 @@ +using System.Collections.Generic; +using UnityEngine; +using UnityEngine.Events; + +public class Game : MonoBehaviour +{ + [SerializeField] private GameOverScreen _gameOverScreen; + [SerializeField] private Player _player; + [SerializeField] private List _enemies; + + private int _dyedEnemiesCount; + + public event UnityAction AllEnemyDied; + + private void OnEnable() + { + foreach (var enemy in _enemies) + { + enemy.EnemyDyed += OnEnemyDyed; + } + } + + private void OnDisable() + { + foreach (var enemy in _enemies) + { + enemy.EnemyDyed -= OnEnemyDyed; + } + } + + private void Start() + { + foreach (var enemy in _enemies) + { + enemy.Init(_player); + } + } + + private void OnEnemyDyed() + { + _dyedEnemiesCount++; + + if (_dyedEnemiesCount >= _enemies.Count) + AllEnemyDied?.Invoke(); + } +} diff --git a/Assets/Group1/Scripts/Game.cs.meta b/Assets/Group1/Scripts/Game.cs.meta new file mode 100644 index 00000000..659d99e5 --- /dev/null +++ b/Assets/Group1/Scripts/Game.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 9a4e13cb3001f934aad603209e9cb358 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Group1/Scripts/GameController.cs b/Assets/Group1/Scripts/GameController.cs deleted file mode 100644 index 6afe5356..00000000 --- a/Assets/Group1/Scripts/GameController.cs +++ /dev/null @@ -1,38 +0,0 @@ -using System.Collections; -using System.Collections.Generic; -using UnityEngine; - -public class GameController : MonoBehaviour -{ - public static GameController controller; - - public GameObject go; - public GameObject a; - public GameObject[] B; - - // Start is called before the first frame update - void Start() - { - controller = this; - } - - public void End() - { - go.SetActive(true); - } - - // Update is called once per frame - void Update(){ - foreach (var b in B) - { - if (b == null) - continue; - - if (Vector3.Distance(a.gameObject.gameObject.GetComponent().position, b.gameObject.gameObject.transform.position) < 0.2f) - { - a.SendMessage("SendMEssage", b); - } - - } - } -} diff --git a/Assets/Group1/Scripts/GameOverScreen.cs b/Assets/Group1/Scripts/GameOverScreen.cs new file mode 100644 index 00000000..ea8d9e6f --- /dev/null +++ b/Assets/Group1/Scripts/GameOverScreen.cs @@ -0,0 +1,31 @@ +using UnityEngine; + +[RequireComponent(typeof(SpriteRenderer))] +public class GameOverScreen : MonoBehaviour +{ + [SerializeField] private Game _game; + [SerializeField] private Color _targetColor; + + private SpriteRenderer _spriteRenderer; + + private void Awake() + { + _spriteRenderer = GetComponent(); + } + + private void OnEnable() + { + _game.AllEnemyDied += OnAllEnemyDied; + } + + private void OnDisable() + { + _game.AllEnemyDied -= OnAllEnemyDied; + } + + private void OnAllEnemyDied() + { + Time.timeScale = 0; + _spriteRenderer.color = _targetColor; + } +} diff --git a/Assets/Group1/Scripts/GameOverScreen.cs.meta b/Assets/Group1/Scripts/GameOverScreen.cs.meta new file mode 100644 index 00000000..fcfcb480 --- /dev/null +++ b/Assets/Group1/Scripts/GameOverScreen.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: b93015075b140a94c8356aadc7f5a467 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Group1/Scripts/NewBehaviourScript1.cs b/Assets/Group1/Scripts/NewBehaviourScript1.cs deleted file mode 100644 index 14bd7c3f..00000000 --- a/Assets/Group1/Scripts/NewBehaviourScript1.cs +++ /dev/null @@ -1,65 +0,0 @@ -using UnityEngine; -using System.Collections; - -public class NewBehaviourScript1 : MonoBehaviour -{ - public float spEed; - public bool timer; - public float time; - // Use this for initialization - - - void Start() - { - } - // Update is called once per frame - void Update(){ - if (timer) - { - time -= Time.deltaTime; - if(time < 0) - { - timer = false; - spEed /= 2; - } - } - - GameObject[] result = GameObject.FindGameObjectsWithTag("Enemy"); - - if(result.Length == 0) - { - GameController.controller.End(); - enabled = false; - } - - if (Input.GetKey(KeyCode.W)) - transform.Translate(0, spEed * Time.deltaTime, 0); - - if (Input.GetKey(KeyCode.S)) - transform.Translate(0, -spEed * Time.deltaTime, 0); - - if (Input.GetKey(KeyCode.A)) - transform.Translate(-spEed * Time.deltaTime, 0, 0); - - if (Input.GetKey(KeyCode.D)) - transform.Translate(spEed * Time.deltaTime, 0, 0); - } - - public void SendMEssage(GameObject b) - { - - - if(b.name == "enemy") - { - Destroy(b); - }if(b.name == "speed") - { - spEed *= 2; - timer = true; - time = 2; - - - - } - } -} diff --git a/Assets/Group1/Scripts/Player.cs b/Assets/Group1/Scripts/Player.cs new file mode 100644 index 00000000..6733a4fd --- /dev/null +++ b/Assets/Group1/Scripts/Player.cs @@ -0,0 +1,5 @@ +using UnityEngine; + +public class Player : MonoBehaviour +{ +} diff --git a/Assets/Group1/Scripts/Player.cs.meta b/Assets/Group1/Scripts/Player.cs.meta new file mode 100644 index 00000000..e428101e --- /dev/null +++ b/Assets/Group1/Scripts/Player.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 38e82f04c582b4048b677715acb22b9f +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Group1/Scripts/PlayerMover.cs b/Assets/Group1/Scripts/PlayerMover.cs new file mode 100644 index 00000000..e44ddc30 --- /dev/null +++ b/Assets/Group1/Scripts/PlayerMover.cs @@ -0,0 +1,14 @@ +using UnityEngine; + +public class PlayerMover : MonoBehaviour +{ + [SerializeField] private float _speed; + + private void Update() + { + float deltaX = Input.GetAxis("Horizontal") * _speed * Time.deltaTime; + float deltaY = Input.GetAxis("Vertical") * _speed * Time.deltaTime; + + transform.Translate(deltaX, deltaY, 0); + } +} diff --git a/Assets/Group1/Scripts/NewBehaviourScript1.cs.meta b/Assets/Group1/Scripts/PlayerMover.cs.meta similarity index 100% rename from Assets/Group1/Scripts/NewBehaviourScript1.cs.meta rename to Assets/Group1/Scripts/PlayerMover.cs.meta diff --git a/Assets/Group1/Scripts/e.cs b/Assets/Group1/Scripts/e.cs deleted file mode 100644 index 048ebf2d..00000000 --- a/Assets/Group1/Scripts/e.cs +++ /dev/null @@ -1,22 +0,0 @@ -using System.Collections; -using System.Collections.Generic; -using UnityEngine; - -public class e : MonoBehaviour -{ - private Vector3 Target; - - // Start is called before the first frame update - void Start() - { - Target = Random.insideUnitCircle * 4; - } - - // Update is called once per frame - void Update() - { - transform.position = Vector3.MoveTowards(transform.position, Target, 2 * Time.deltaTime); - if (transform.position == Target) - Target = Random.insideUnitCircle * 4 ; - } -} diff --git a/Assets/Group1/Sprites.meta b/Assets/Group1/Sprites.meta new file mode 100644 index 00000000..71b60a4d --- /dev/null +++ b/Assets/Group1/Sprites.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 615a6ae31f2d3fc44ac56886b6635d7a +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Group1/Player.png b/Assets/Group1/Sprites/Player.png similarity index 100% rename from Assets/Group1/Player.png rename to Assets/Group1/Sprites/Player.png diff --git a/Assets/Group1/Player.png.meta b/Assets/Group1/Sprites/Player.png.meta similarity index 100% rename from Assets/Group1/Player.png.meta rename to Assets/Group1/Sprites/Player.png.meta diff --git a/Assets/Group1/enemy.png b/Assets/Group1/Sprites/enemy.png similarity index 100% rename from Assets/Group1/enemy.png rename to Assets/Group1/Sprites/enemy.png diff --git a/Assets/Group1/enemy.png.meta b/Assets/Group1/Sprites/enemy.png.meta similarity index 100% rename from Assets/Group1/enemy.png.meta rename to Assets/Group1/Sprites/enemy.png.meta diff --git a/Logs/Packages-Update.log b/Logs/Packages-Update.log new file mode 100644 index 00000000..ff6d466c --- /dev/null +++ b/Logs/Packages-Update.log @@ -0,0 +1,25 @@ + +=== Sun Apr 18 19:16:42 2021 + +Packages were changed. +Update Mode: updateDependencies + +The following packages were added: + com.unity.2d.sprite@1.0.0 + com.unity.2d.tilemap@1.0.0 + com.unity.ide.rider@1.1.4 + com.unity.ide.vscode@1.2.3 + com.unity.modules.androidjni@1.0.0 + com.unity.multiplayer-hlapi@1.0.8 + com.unity.test-framework@1.1.22 + com.unity.timeline@1.2.18 + com.unity.ugui@1.0.0 + com.unity.xr.legacyinputhelpers@2.1.7 +The following packages were updated: + com.unity.ads from version 2.0.8 to 3.6.1 + com.unity.analytics from version 3.2.2 to 3.3.5 + com.unity.collab-proxy from version 1.2.15 to 1.2.16 + com.unity.purchasing from version 2.0.3 to 2.2.2 + com.unity.textmeshpro from version 1.3.0 to 2.0.1 +The following packages were removed: + com.unity.package-manager-ui@2.0.7 diff --git a/Packages/manifest.json b/Packages/manifest.json index 8392bea1..8ad41972 100644 --- a/Packages/manifest.json +++ b/Packages/manifest.json @@ -1,12 +1,21 @@ { "dependencies": { - "com.unity.ads": "2.0.8", - "com.unity.analytics": "3.2.2", - "com.unity.collab-proxy": "1.2.15", - "com.unity.package-manager-ui": "2.0.7", - "com.unity.purchasing": "2.0.3", - "com.unity.textmeshpro": "1.3.0", + "com.unity.2d.sprite": "1.0.0", + "com.unity.2d.tilemap": "1.0.0", + "com.unity.ads": "3.6.1", + "com.unity.analytics": "3.3.5", + "com.unity.collab-proxy": "1.2.16", + "com.unity.ide.rider": "1.1.4", + "com.unity.ide.vscode": "1.2.3", + "com.unity.multiplayer-hlapi": "1.0.8", + "com.unity.purchasing": "2.2.2", + "com.unity.test-framework": "1.1.22", + "com.unity.textmeshpro": "2.0.1", + "com.unity.timeline": "1.2.18", + "com.unity.ugui": "1.0.0", + "com.unity.xr.legacyinputhelpers": "2.1.7", "com.unity.modules.ai": "1.0.0", + "com.unity.modules.androidjni": "1.0.0", "com.unity.modules.animation": "1.0.0", "com.unity.modules.assetbundle": "1.0.0", "com.unity.modules.audio": "1.0.0", diff --git a/Packages/packages-lock.json b/Packages/packages-lock.json new file mode 100644 index 00000000..91ced278 --- /dev/null +++ b/Packages/packages-lock.json @@ -0,0 +1,382 @@ +{ + "dependencies": { + "com.unity.2d.sprite": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": {} + }, + "com.unity.2d.tilemap": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": {} + }, + "com.unity.ads": { + "version": "3.6.1", + "depth": 0, + "source": "registry", + "dependencies": { + "com.unity.ugui": "1.0.0" + }, + "url": "https://packages.unity.com" + }, + "com.unity.analytics": { + "version": "3.3.5", + "depth": 0, + "source": "registry", + "dependencies": { + "com.unity.ugui": "1.0.0" + }, + "url": "https://packages.unity.com" + }, + "com.unity.collab-proxy": { + "version": "1.2.16", + "depth": 0, + "source": "registry", + "dependencies": {}, + "url": "https://packages.unity.com" + }, + "com.unity.ext.nunit": { + "version": "1.0.6", + "depth": 1, + "source": "registry", + "dependencies": {}, + "url": "https://packages.unity.com" + }, + "com.unity.ide.rider": { + "version": "1.1.4", + "depth": 0, + "source": "registry", + "dependencies": { + "com.unity.test-framework": "1.1.1" + }, + "url": "https://packages.unity.com" + }, + "com.unity.ide.vscode": { + "version": "1.2.3", + "depth": 0, + "source": "registry", + "dependencies": {}, + "url": "https://packages.unity.com" + }, + "com.unity.multiplayer-hlapi": { + "version": "1.0.8", + "depth": 0, + "source": "registry", + "dependencies": { + "nuget.mono-cecil": "0.1.6-preview" + }, + "url": "https://packages.unity.com" + }, + "com.unity.purchasing": { + "version": "2.2.2", + "depth": 0, + "source": "registry", + "dependencies": { + "com.unity.ugui": "1.0.0" + }, + "url": "https://packages.unity.com" + }, + "com.unity.test-framework": { + "version": "1.1.22", + "depth": 0, + "source": "registry", + "dependencies": { + "com.unity.ext.nunit": "1.0.6", + "com.unity.modules.imgui": "1.0.0", + "com.unity.modules.jsonserialize": "1.0.0" + }, + "url": "https://packages.unity.com" + }, + "com.unity.textmeshpro": { + "version": "2.0.1", + "depth": 0, + "source": "registry", + "dependencies": { + "com.unity.ugui": "1.0.0" + }, + "url": "https://packages.unity.com" + }, + "com.unity.timeline": { + "version": "1.2.18", + "depth": 0, + "source": "registry", + "dependencies": { + "com.unity.modules.director": "1.0.0", + "com.unity.modules.animation": "1.0.0", + "com.unity.modules.audio": "1.0.0", + "com.unity.modules.particlesystem": "1.0.0" + }, + "url": "https://packages.unity.com" + }, + "com.unity.ugui": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": { + "com.unity.modules.ui": "1.0.0", + "com.unity.modules.imgui": "1.0.0" + } + }, + "com.unity.xr.legacyinputhelpers": { + "version": "2.1.7", + "depth": 0, + "source": "registry", + "dependencies": { + "com.unity.modules.vr": "1.0.0", + "com.unity.modules.xr": "1.0.0" + }, + "url": "https://packages.unity.com" + }, + "nuget.mono-cecil": { + "version": "0.1.6-preview", + "depth": 1, + "source": "registry", + "dependencies": {}, + "url": "https://packages.unity.com" + }, + "com.unity.modules.ai": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": {} + }, + "com.unity.modules.androidjni": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": {} + }, + "com.unity.modules.animation": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": {} + }, + "com.unity.modules.assetbundle": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": {} + }, + "com.unity.modules.audio": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": {} + }, + "com.unity.modules.cloth": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": { + "com.unity.modules.physics": "1.0.0" + } + }, + "com.unity.modules.director": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": { + "com.unity.modules.audio": "1.0.0", + "com.unity.modules.animation": "1.0.0" + } + }, + "com.unity.modules.imageconversion": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": {} + }, + "com.unity.modules.imgui": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": {} + }, + "com.unity.modules.jsonserialize": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": {} + }, + "com.unity.modules.particlesystem": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": {} + }, + "com.unity.modules.physics": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": {} + }, + "com.unity.modules.physics2d": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": {} + }, + "com.unity.modules.screencapture": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": { + "com.unity.modules.imageconversion": "1.0.0" + } + }, + "com.unity.modules.subsystems": { + "version": "1.0.0", + "depth": 1, + "source": "builtin", + "dependencies": { + "com.unity.modules.jsonserialize": "1.0.0" + } + }, + "com.unity.modules.terrain": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": {} + }, + "com.unity.modules.terrainphysics": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": { + "com.unity.modules.physics": "1.0.0", + "com.unity.modules.terrain": "1.0.0" + } + }, + "com.unity.modules.tilemap": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": { + "com.unity.modules.physics2d": "1.0.0" + } + }, + "com.unity.modules.ui": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": {} + }, + "com.unity.modules.uielements": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": { + "com.unity.modules.imgui": "1.0.0", + "com.unity.modules.jsonserialize": "1.0.0" + } + }, + "com.unity.modules.umbra": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": {} + }, + "com.unity.modules.unityanalytics": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": { + "com.unity.modules.unitywebrequest": "1.0.0", + "com.unity.modules.jsonserialize": "1.0.0" + } + }, + "com.unity.modules.unitywebrequest": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": {} + }, + "com.unity.modules.unitywebrequestassetbundle": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": { + "com.unity.modules.assetbundle": "1.0.0", + "com.unity.modules.unitywebrequest": "1.0.0" + } + }, + "com.unity.modules.unitywebrequestaudio": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": { + "com.unity.modules.unitywebrequest": "1.0.0", + "com.unity.modules.audio": "1.0.0" + } + }, + "com.unity.modules.unitywebrequesttexture": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": { + "com.unity.modules.unitywebrequest": "1.0.0", + "com.unity.modules.imageconversion": "1.0.0" + } + }, + "com.unity.modules.unitywebrequestwww": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": { + "com.unity.modules.unitywebrequest": "1.0.0", + "com.unity.modules.unitywebrequestassetbundle": "1.0.0", + "com.unity.modules.unitywebrequestaudio": "1.0.0", + "com.unity.modules.audio": "1.0.0", + "com.unity.modules.assetbundle": "1.0.0", + "com.unity.modules.imageconversion": "1.0.0" + } + }, + "com.unity.modules.vehicles": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": { + "com.unity.modules.physics": "1.0.0" + } + }, + "com.unity.modules.video": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": { + "com.unity.modules.audio": "1.0.0", + "com.unity.modules.ui": "1.0.0", + "com.unity.modules.unitywebrequest": "1.0.0" + } + }, + "com.unity.modules.vr": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": { + "com.unity.modules.jsonserialize": "1.0.0", + "com.unity.modules.physics": "1.0.0", + "com.unity.modules.xr": "1.0.0" + } + }, + "com.unity.modules.wind": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": {} + }, + "com.unity.modules.xr": { + "version": "1.0.0", + "depth": 0, + "source": "builtin", + "dependencies": { + "com.unity.modules.physics": "1.0.0", + "com.unity.modules.jsonserialize": "1.0.0", + "com.unity.modules.subsystems": "1.0.0" + } + } + } +} diff --git a/ProjectSettings/EditorSettings.asset b/ProjectSettings/EditorSettings.asset index 29dea529..5162e19f 100644 --- a/ProjectSettings/EditorSettings.asset +++ b/ProjectSettings/EditorSettings.asset @@ -3,19 +3,33 @@ --- !u!159 &1 EditorSettings: m_ObjectHideFlags: 0 - serializedVersion: 7 + serializedVersion: 9 m_ExternalVersionControlSupport: Visible Meta Files m_SerializationMode: 2 m_LineEndingsForNewScripts: 2 m_DefaultBehaviorMode: 0 + m_PrefabRegularEnvironment: {fileID: 0} + m_PrefabUIEnvironment: {fileID: 0} m_SpritePackerMode: 0 m_SpritePackerPaddingPower: 1 m_EtcTextureCompressorBehavior: 1 m_EtcTextureFastCompressor: 1 m_EtcTextureNormalCompressor: 2 m_EtcTextureBestCompressor: 4 - m_ProjectGenerationIncludedExtensions: txt;xml;fnt;cd + m_ProjectGenerationIncludedExtensions: txt;xml;fnt;cd;asmref m_ProjectGenerationRootNamespace: - m_UserGeneratedProjectSuffix: m_CollabEditorSettings: inProgressEnabled: 1 + m_EnableTextureStreamingInEditMode: 1 + m_EnableTextureStreamingInPlayMode: 1 + m_AsyncShaderCompilation: 1 + m_EnterPlayModeOptionsEnabled: 0 + m_EnterPlayModeOptions: 3 + m_ShowLightmapResolutionOverlay: 1 + m_UseLegacyProbeSampleCount: 1 + m_AssetPipelineMode: 1 + m_CacheServerMode: 0 + m_CacheServerEndpoint: + m_CacheServerNamespacePrefix: default + m_CacheServerEnableDownload: 1 + m_CacheServerEnableUpload: 1 diff --git a/ProjectSettings/PackageManagerSettings.asset b/ProjectSettings/PackageManagerSettings.asset new file mode 100644 index 00000000..6920e3ad --- /dev/null +++ b/ProjectSettings/PackageManagerSettings.asset @@ -0,0 +1,38 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &1 +MonoBehaviour: + m_ObjectHideFlags: 61 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 13964, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_ScopedRegistriesSettingsExpanded: 1 + oneTimeWarningShown: 0 + m_Registries: + - m_Id: main + m_Name: + m_Url: https://packages.unity.com + m_Scopes: [] + m_IsDefault: 1 + m_UserSelectedRegistryName: + m_UserAddingNewScopedRegistry: 0 + m_RegistryInfoDraft: + m_ErrorMessage: + m_Original: + m_Id: + m_Name: + m_Url: + m_Scopes: [] + m_IsDefault: 0 + m_Modified: 0 + m_Name: + m_Url: + m_Scopes: + - + m_SelectedScopeIndex: 0 diff --git a/ProjectSettings/ProjectVersion.txt b/ProjectSettings/ProjectVersion.txt index 6dfd6c14..c1369e47 100644 --- a/ProjectSettings/ProjectVersion.txt +++ b/ProjectSettings/ProjectVersion.txt @@ -1 +1,2 @@ -m_EditorVersion: 2018.3.14f1 +m_EditorVersion: 2019.4.21f1 +m_EditorVersionWithRevision: 2019.4.21f1 (b76dac84db26) diff --git a/ProjectSettings/XRSettings.asset b/ProjectSettings/XRSettings.asset new file mode 100644 index 00000000..482590c1 --- /dev/null +++ b/ProjectSettings/XRSettings.asset @@ -0,0 +1,10 @@ +{ + "m_SettingKeys": [ + "VR Device Disabled", + "VR Device User Alert" + ], + "m_SettingValues": [ + "False", + "False" + ] +} \ No newline at end of file From 7ef3b03511bb1dbf56011ba22499e677ac0b3976 Mon Sep 17 00:00:00 2001 From: Kandyimov Yaroslav Date: Thu, 22 Apr 2021 22:08:01 +0300 Subject: [PATCH 2/5] =?UTF-8?q?=D0=9F=D1=80=D0=B0=D0=B2=D0=BA=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Assets/Group1/Scripts/Enemy.cs | 10 ++-------- Assets/Group1/Scripts/EnemyMover.cs | 15 ++++++++++----- Assets/Group1/Scripts/Game.cs | 18 +++++------------- Assets/Group1/Scripts/PlayerMover.cs | 9 +++++++-- 4 files changed, 24 insertions(+), 28 deletions(-) diff --git a/Assets/Group1/Scripts/Enemy.cs b/Assets/Group1/Scripts/Enemy.cs index 2de95758..6b8b4a53 100644 --- a/Assets/Group1/Scripts/Enemy.cs +++ b/Assets/Group1/Scripts/Enemy.cs @@ -3,11 +3,10 @@ public class Enemy : MonoBehaviour { - [SerializeField] private float _deathRange; - public event UnityAction EnemyDyed; - private Player _player; + [SerializeField] private float _deathRange; + [SerializeField] private Player _player; private void Update() { @@ -17,11 +16,6 @@ private void Update() } } - public void Init(Player player) - { - _player = player; - } - private void Die() { EnemyDyed?.Invoke(); diff --git a/Assets/Group1/Scripts/EnemyMover.cs b/Assets/Group1/Scripts/EnemyMover.cs index 60994b8e..d2485d8e 100644 --- a/Assets/Group1/Scripts/EnemyMover.cs +++ b/Assets/Group1/Scripts/EnemyMover.cs @@ -5,18 +5,23 @@ public class EnemyMover : MonoBehaviour [SerializeField] private int _distance; [SerializeField] private float _speed; - private Vector3 _targetPoint; + private Vector3 _target; private void Start() { - _targetPoint = Random.insideUnitCircle * _distance; + SetRandomTarget(); } private void Update() { - transform.position = Vector3.MoveTowards(transform.position, _targetPoint, _speed * Time.deltaTime); + transform.position = Vector3.MoveTowards(transform.position, _target, _speed * Time.deltaTime); - if (transform.position == _targetPoint) - _targetPoint = Random.insideUnitCircle * _distance; + if (transform.position == _target) + SetRandomTarget(); + } + + private void SetRandomTarget() + { + _target = Random.insideUnitCircle * _distance; } } diff --git a/Assets/Group1/Scripts/Game.cs b/Assets/Group1/Scripts/Game.cs index 72d54c57..f2842e16 100644 --- a/Assets/Group1/Scripts/Game.cs +++ b/Assets/Group1/Scripts/Game.cs @@ -4,13 +4,13 @@ public class Game : MonoBehaviour { + public event UnityAction AllEnemyDied; + [SerializeField] private GameOverScreen _gameOverScreen; [SerializeField] private Player _player; [SerializeField] private List _enemies; - private int _dyedEnemiesCount; - - public event UnityAction AllEnemyDied; + private int _diedEnemies; private void OnEnable() { @@ -28,19 +28,11 @@ private void OnDisable() } } - private void Start() - { - foreach (var enemy in _enemies) - { - enemy.Init(_player); - } - } - private void OnEnemyDyed() { - _dyedEnemiesCount++; + _diedEnemies++; - if (_dyedEnemiesCount >= _enemies.Count) + if (_diedEnemies >= _enemies.Count) AllEnemyDied?.Invoke(); } } diff --git a/Assets/Group1/Scripts/PlayerMover.cs b/Assets/Group1/Scripts/PlayerMover.cs index e44ddc30..35189d35 100644 --- a/Assets/Group1/Scripts/PlayerMover.cs +++ b/Assets/Group1/Scripts/PlayerMover.cs @@ -6,9 +6,14 @@ public class PlayerMover : MonoBehaviour private void Update() { - float deltaX = Input.GetAxis("Horizontal") * _speed * Time.deltaTime; - float deltaY = Input.GetAxis("Vertical") * _speed * Time.deltaTime; + float deltaX = GetAxis("Horizontal"); + float deltaY = GetAxis("Vertical"); transform.Translate(deltaX, deltaY, 0); } + + private float GetAxis(string axis) + { + return Input.GetAxis(axis) * _speed * Time.deltaTime; + } } From e420b00cd4ace3d80d870b73545aba5ab4e77c80 Mon Sep 17 00:00:00 2001 From: Kandyimov Yaroslav Date: Tue, 18 May 2021 00:11:44 +0300 Subject: [PATCH 3/5] =?UTF-8?q?=D0=9F=D1=80=D0=B0=D0=B2=D0=BA=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Assets/Group1/Scenes/KillAllEnemies.unity | 15 +++++++--- Assets/Group1/Scripts/Enemy.cs | 4 +-- Assets/Group1/Scripts/EnemyMover.cs | 10 +++---- Assets/Group1/Scripts/Game.cs | 8 +++-- Assets/Group1/Scripts/PlayerMover.cs | 36 ++++++++++++++++++++++- 5 files changed, 58 insertions(+), 15 deletions(-) diff --git a/Assets/Group1/Scenes/KillAllEnemies.unity b/Assets/Group1/Scenes/KillAllEnemies.unity index 1b8896b7..822a4196 100644 --- a/Assets/Group1/Scenes/KillAllEnemies.unity +++ b/Assets/Group1/Scenes/KillAllEnemies.unity @@ -153,6 +153,7 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: _deathRange: 0.5 + _player: {fileID: 1761935013} --- !u!114 &141422277 MonoBehaviour: m_ObjectHideFlags: 0 @@ -165,7 +166,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 65f7df4705b7dae48944a39b48934484, type: 3} m_Name: m_EditorClassIdentifier: - _distance: 4 + _radius: 4 _speed: 2 --- !u!212 &141422278 SpriteRenderer: @@ -421,6 +422,7 @@ MonoBehaviour: m_EditorClassIdentifier: _gameOverScreen: {fileID: 1054253065} _player: {fileID: 1761935013} + _playerMover: {fileID: 1761935012} _enemies: - {fileID: 2083640149} - {fileID: 1754708961} @@ -554,6 +556,7 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: _deathRange: 0.5 + _player: {fileID: 1761935013} --- !u!114 &1578050038 MonoBehaviour: m_ObjectHideFlags: 0 @@ -566,7 +569,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 65f7df4705b7dae48944a39b48934484, type: 3} m_Name: m_EditorClassIdentifier: - _distance: 4 + _radius: 4 _speed: 2 --- !u!212 &1578050039 SpriteRenderer: @@ -664,6 +667,7 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: _deathRange: 0.5 + _player: {fileID: 1761935013} --- !u!114 &1754708962 MonoBehaviour: m_ObjectHideFlags: 0 @@ -676,7 +680,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 65f7df4705b7dae48944a39b48934484, type: 3} m_Name: m_EditorClassIdentifier: - _distance: 4 + _radius: 4 _speed: 2 --- !u!212 &1754708963 SpriteRenderer: @@ -838,6 +842,8 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: _speed: 2 + _speedModifier: 5 + _maxBoostedSpeedTime: 2 --- !u!114 &1761935013 MonoBehaviour: m_ObjectHideFlags: 0 @@ -946,6 +952,7 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: _deathRange: 0.5 + _player: {fileID: 1761935013} --- !u!114 &2083640150 MonoBehaviour: m_ObjectHideFlags: 0 @@ -958,5 +965,5 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 65f7df4705b7dae48944a39b48934484, type: 3} m_Name: m_EditorClassIdentifier: - _distance: 4 + _radius: 4 _speed: 2 diff --git a/Assets/Group1/Scripts/Enemy.cs b/Assets/Group1/Scripts/Enemy.cs index 6b8b4a53..5cd38e93 100644 --- a/Assets/Group1/Scripts/Enemy.cs +++ b/Assets/Group1/Scripts/Enemy.cs @@ -3,7 +3,7 @@ public class Enemy : MonoBehaviour { - public event UnityAction EnemyDyed; + public event UnityAction Dyed; [SerializeField] private float _deathRange; [SerializeField] private Player _player; @@ -18,7 +18,7 @@ private void Update() private void Die() { - EnemyDyed?.Invoke(); + Dyed?.Invoke(); Destroy(gameObject); } diff --git a/Assets/Group1/Scripts/EnemyMover.cs b/Assets/Group1/Scripts/EnemyMover.cs index d2485d8e..ab2bc9b6 100644 --- a/Assets/Group1/Scripts/EnemyMover.cs +++ b/Assets/Group1/Scripts/EnemyMover.cs @@ -2,14 +2,14 @@ public class EnemyMover : MonoBehaviour { - [SerializeField] private int _distance; + [SerializeField] private int _radius; [SerializeField] private float _speed; private Vector3 _target; private void Start() { - SetRandomTarget(); + ChangeTarget(); } private void Update() @@ -17,11 +17,11 @@ private void Update() transform.position = Vector3.MoveTowards(transform.position, _target, _speed * Time.deltaTime); if (transform.position == _target) - SetRandomTarget(); + ChangeTarget(); } - private void SetRandomTarget() + private void ChangeTarget() { - _target = Random.insideUnitCircle * _distance; + _target = Random.insideUnitCircle * _radius; } } diff --git a/Assets/Group1/Scripts/Game.cs b/Assets/Group1/Scripts/Game.cs index f2842e16..c976b0c9 100644 --- a/Assets/Group1/Scripts/Game.cs +++ b/Assets/Group1/Scripts/Game.cs @@ -8,6 +8,7 @@ public class Game : MonoBehaviour [SerializeField] private GameOverScreen _gameOverScreen; [SerializeField] private Player _player; + [SerializeField] private PlayerMover _playerMover; [SerializeField] private List _enemies; private int _diedEnemies; @@ -16,7 +17,7 @@ private void OnEnable() { foreach (var enemy in _enemies) { - enemy.EnemyDyed += OnEnemyDyed; + enemy.Dyed += OnDyed; } } @@ -24,13 +25,14 @@ private void OnDisable() { foreach (var enemy in _enemies) { - enemy.EnemyDyed -= OnEnemyDyed; + enemy.Dyed -= OnDyed; } } - private void OnEnemyDyed() + private void OnDyed() { _diedEnemies++; + _playerMover.IncreaseSpeed(); if (_diedEnemies >= _enemies.Count) AllEnemyDied?.Invoke(); diff --git a/Assets/Group1/Scripts/PlayerMover.cs b/Assets/Group1/Scripts/PlayerMover.cs index 35189d35..00e38d34 100644 --- a/Assets/Group1/Scripts/PlayerMover.cs +++ b/Assets/Group1/Scripts/PlayerMover.cs @@ -1,8 +1,12 @@ -using UnityEngine; +using System.Collections; +using UnityEngine; public class PlayerMover : MonoBehaviour { [SerializeField] private float _speed; + [SerializeField] private float _maxBoostedSpeedTime; + + private bool _speedIncreased; private void Update() { @@ -12,8 +16,38 @@ private void Update() transform.Translate(deltaX, deltaY, 0); } + public void IncreaseSpeed() + { + if(_speedIncreased) + return; + + _speedIncreased = true; + _speed += _speed; + + StartCoroutine(ResetSpeed()); + } + private float GetAxis(string axis) { return Input.GetAxis(axis) * _speed * Time.deltaTime; } + + private IEnumerator ResetSpeed() + { + var boostedSpeedTime = _maxBoostedSpeedTime; + + while (_speedIncreased) + { + boostedSpeedTime -= Time.deltaTime; + + if (boostedSpeedTime <= 0) + { + boostedSpeedTime = _maxBoostedSpeedTime; + _speed -= _speed; + _speedIncreased = false; + } + + yield return null; + } + } } From 3a57a5ab2fc8138bc5684dc3959751bdfe3551b1 Mon Sep 17 00:00:00 2001 From: Kandyimov Yaroslav Date: Thu, 3 Jun 2021 12:49:09 +0300 Subject: [PATCH 4/5] =?UTF-8?q?=D0=9F=D1=80=D0=B0=D0=B2=D0=BA=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Assets/Group1/Scenes/KillAllEnemies.unity | 7 +--- Assets/Group1/Scripts/Booster.cs | 3 ++ Assets/Group1/Scripts/Booster.cs.meta | 11 ++++++ Assets/Group1/Scripts/Enemy.cs | 22 +++--------- Assets/Group1/Scripts/EnemyMover.cs | 6 ++-- Assets/Group1/Scripts/Game.cs | 41 +++++++++++++++++++---- Assets/Group1/Scripts/GameOverScreen.cs | 4 +-- Assets/Group1/Scripts/PlayerMover.cs | 17 ++-------- Assets/Group1/Scripts/SceneUnits.cs | 8 +++++ Assets/Group1/Scripts/SceneUnits.cs.meta | 11 ++++++ 10 files changed, 81 insertions(+), 49 deletions(-) create mode 100644 Assets/Group1/Scripts/Booster.cs create mode 100644 Assets/Group1/Scripts/Booster.cs.meta create mode 100644 Assets/Group1/Scripts/SceneUnits.cs create mode 100644 Assets/Group1/Scripts/SceneUnits.cs.meta diff --git a/Assets/Group1/Scenes/KillAllEnemies.unity b/Assets/Group1/Scenes/KillAllEnemies.unity index 822a4196..3393ed0b 100644 --- a/Assets/Group1/Scenes/KillAllEnemies.unity +++ b/Assets/Group1/Scenes/KillAllEnemies.unity @@ -153,7 +153,6 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: _deathRange: 0.5 - _player: {fileID: 1761935013} --- !u!114 &141422277 MonoBehaviour: m_ObjectHideFlags: 0 @@ -523,7 +522,7 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: _game: {fileID: 534669906} - _targetColor: {r: 0, g: 0, b: 0, a: 1} + _targetAlpha: {r: 0, g: 0, b: 0, a: 0} --- !u!1 &1578050036 GameObject: m_ObjectHideFlags: 0 @@ -556,7 +555,6 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: _deathRange: 0.5 - _player: {fileID: 1761935013} --- !u!114 &1578050038 MonoBehaviour: m_ObjectHideFlags: 0 @@ -667,7 +665,6 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: _deathRange: 0.5 - _player: {fileID: 1761935013} --- !u!114 &1754708962 MonoBehaviour: m_ObjectHideFlags: 0 @@ -842,7 +839,6 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: _speed: 2 - _speedModifier: 5 _maxBoostedSpeedTime: 2 --- !u!114 &1761935013 MonoBehaviour: @@ -952,7 +948,6 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: _deathRange: 0.5 - _player: {fileID: 1761935013} --- !u!114 &2083640150 MonoBehaviour: m_ObjectHideFlags: 0 diff --git a/Assets/Group1/Scripts/Booster.cs b/Assets/Group1/Scripts/Booster.cs new file mode 100644 index 00000000..5f363e9e --- /dev/null +++ b/Assets/Group1/Scripts/Booster.cs @@ -0,0 +1,3 @@ +public class Booster : SceneUnits +{ +} diff --git a/Assets/Group1/Scripts/Booster.cs.meta b/Assets/Group1/Scripts/Booster.cs.meta new file mode 100644 index 00000000..fc74808f --- /dev/null +++ b/Assets/Group1/Scripts/Booster.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: fa1fa7b9b1d80f94ea69f95d5ac751ca +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Group1/Scripts/Enemy.cs b/Assets/Group1/Scripts/Enemy.cs index 5cd38e93..84ca3a3d 100644 --- a/Assets/Group1/Scripts/Enemy.cs +++ b/Assets/Group1/Scripts/Enemy.cs @@ -1,24 +1,12 @@ -using UnityEngine; -using UnityEngine.Events; +using UnityEngine.Events; -public class Enemy : MonoBehaviour +public class Enemy : SceneUnits { - public event UnityAction Dyed; + public event UnityAction Died; - [SerializeField] private float _deathRange; - [SerializeField] private Player _player; - - private void Update() - { - if (Vector3.Distance(_player.transform.position, transform.position) < _deathRange) - { - Die(); - } - } - - private void Die() + public void Die() { - Dyed?.Invoke(); + Died?.Invoke(); Destroy(gameObject); } diff --git a/Assets/Group1/Scripts/EnemyMover.cs b/Assets/Group1/Scripts/EnemyMover.cs index ab2bc9b6..35fe1461 100644 --- a/Assets/Group1/Scripts/EnemyMover.cs +++ b/Assets/Group1/Scripts/EnemyMover.cs @@ -9,7 +9,7 @@ public class EnemyMover : MonoBehaviour private void Start() { - ChangeTarget(); + AssignRandomTarget(); } private void Update() @@ -17,10 +17,10 @@ private void Update() transform.position = Vector3.MoveTowards(transform.position, _target, _speed * Time.deltaTime); if (transform.position == _target) - ChangeTarget(); + AssignRandomTarget(); } - private void ChangeTarget() + private void AssignRandomTarget() { _target = Random.insideUnitCircle * _radius; } diff --git a/Assets/Group1/Scripts/Game.cs b/Assets/Group1/Scripts/Game.cs index c976b0c9..72d80b6c 100644 --- a/Assets/Group1/Scripts/Game.cs +++ b/Assets/Group1/Scripts/Game.cs @@ -1,23 +1,26 @@ -using System.Collections.Generic; +using System; +using System.Collections.Generic; using UnityEngine; using UnityEngine.Events; +using Object = UnityEngine.Object; public class Game : MonoBehaviour { - public event UnityAction AllEnemyDied; - [SerializeField] private GameOverScreen _gameOverScreen; [SerializeField] private Player _player; [SerializeField] private PlayerMover _playerMover; [SerializeField] private List _enemies; + [SerializeField] private List _boosters; private int _diedEnemies; + public event UnityAction AllEnemyDied; + private void OnEnable() { foreach (var enemy in _enemies) { - enemy.Dyed += OnDyed; + enemy.Died += OnDied; } } @@ -25,14 +28,38 @@ private void OnDisable() { foreach (var enemy in _enemies) { - enemy.Dyed -= OnDyed; + enemy.Died -= OnDied; } } - private void OnDyed() + private void Update() + { + KillEnemy(); + + AbsorbBooster(); + } + + private void KillEnemy() + { + foreach (var enemy in _enemies) + CallByDistance(enemy, () => enemy.Die()); + } + + private void AbsorbBooster() + { + foreach (var booster in _boosters) + CallByDistance(booster, () => _playerMover.IncreaseSpeed()); + } + + private void CallByDistance(SceneUnits unit, Action callback) + { + if (Vector3.Distance(_player.transform.position, unit.transform.position) < unit.Range) + callback?.Invoke(); + } + + private void OnDied() { _diedEnemies++; - _playerMover.IncreaseSpeed(); if (_diedEnemies >= _enemies.Count) AllEnemyDied?.Invoke(); diff --git a/Assets/Group1/Scripts/GameOverScreen.cs b/Assets/Group1/Scripts/GameOverScreen.cs index ea8d9e6f..41ba3bf2 100644 --- a/Assets/Group1/Scripts/GameOverScreen.cs +++ b/Assets/Group1/Scripts/GameOverScreen.cs @@ -4,7 +4,7 @@ public class GameOverScreen : MonoBehaviour { [SerializeField] private Game _game; - [SerializeField] private Color _targetColor; + [SerializeField] private Color _targetAlpha; private SpriteRenderer _spriteRenderer; @@ -26,6 +26,6 @@ private void OnDisable() private void OnAllEnemyDied() { Time.timeScale = 0; - _spriteRenderer.color = _targetColor; + _spriteRenderer.color = _targetAlpha; } } diff --git a/Assets/Group1/Scripts/PlayerMover.cs b/Assets/Group1/Scripts/PlayerMover.cs index 00e38d34..7cc1ecf7 100644 --- a/Assets/Group1/Scripts/PlayerMover.cs +++ b/Assets/Group1/Scripts/PlayerMover.cs @@ -34,20 +34,9 @@ private float GetAxis(string axis) private IEnumerator ResetSpeed() { - var boostedSpeedTime = _maxBoostedSpeedTime; + yield return new WaitForSeconds(_maxBoostedSpeedTime); - while (_speedIncreased) - { - boostedSpeedTime -= Time.deltaTime; - - if (boostedSpeedTime <= 0) - { - boostedSpeedTime = _maxBoostedSpeedTime; - _speed -= _speed; - _speedIncreased = false; - } - - yield return null; - } + _speed -= _speed; + _speedIncreased = false; } } diff --git a/Assets/Group1/Scripts/SceneUnits.cs b/Assets/Group1/Scripts/SceneUnits.cs new file mode 100644 index 00000000..f7918107 --- /dev/null +++ b/Assets/Group1/Scripts/SceneUnits.cs @@ -0,0 +1,8 @@ +using UnityEngine; + +public abstract class SceneUnits : MonoBehaviour +{ + [SerializeField] private float _range; + + public float Range => _range; +} diff --git a/Assets/Group1/Scripts/SceneUnits.cs.meta b/Assets/Group1/Scripts/SceneUnits.cs.meta new file mode 100644 index 00000000..5f906f3c --- /dev/null +++ b/Assets/Group1/Scripts/SceneUnits.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 2c7d5d9a643583340a468accd10379f4 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: From d4b575bd2de3cc742cf62fbdab7d9846251fb529 Mon Sep 17 00:00:00 2001 From: Kandyimov Yaroslav Date: Mon, 26 Jul 2021 17:11:28 +0300 Subject: [PATCH 5/5] =?UTF-8?q?=D0=9F=D1=80=D0=B0=D0=B2=D0=BA=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Assets/Group1/Scenes/KillAllEnemies.unity | 9 +++++---- Assets/Group1/Scripts/Booster.cs | 4 +++- .../{SceneUnits.cs => CollectedObjects.cs} | 2 +- ...Units.cs.meta => CollectedObjects.cs.meta} | 0 .../Group1/Scripts/{Game.cs => Collector.cs} | 19 +++++++++---------- .../{Game.cs.meta => Collector.cs.meta} | 0 Assets/Group1/Scripts/Enemy.cs | 5 +++-- Assets/Group1/Scripts/EnemyMover.cs | 6 +++--- Assets/Group1/Scripts/GameOverScreen.cs | 6 +++--- Assets/Group1/Scripts/PlayerMover.cs | 18 +++++++----------- 10 files changed, 34 insertions(+), 35 deletions(-) rename Assets/Group1/Scripts/{SceneUnits.cs => CollectedObjects.cs} (68%) rename Assets/Group1/Scripts/{SceneUnits.cs.meta => CollectedObjects.cs.meta} (100%) rename Assets/Group1/Scripts/{Game.cs => Collector.cs} (68%) rename Assets/Group1/Scripts/{Game.cs.meta => Collector.cs.meta} (100%) diff --git a/Assets/Group1/Scenes/KillAllEnemies.unity b/Assets/Group1/Scenes/KillAllEnemies.unity index 3393ed0b..e6749f13 100644 --- a/Assets/Group1/Scenes/KillAllEnemies.unity +++ b/Assets/Group1/Scenes/KillAllEnemies.unity @@ -152,7 +152,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: b9c1c9ed4b3212741be80d3f6aa54b30, type: 3} m_Name: m_EditorClassIdentifier: - _deathRange: 0.5 + _range: 0.1 --- !u!114 &141422277 MonoBehaviour: m_ObjectHideFlags: 0 @@ -427,6 +427,7 @@ MonoBehaviour: - {fileID: 1754708961} - {fileID: 141422276} - {fileID: 1578050037} + _boosters: [] --- !u!1 &1054253062 GameObject: m_ObjectHideFlags: 0 @@ -554,7 +555,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: b9c1c9ed4b3212741be80d3f6aa54b30, type: 3} m_Name: m_EditorClassIdentifier: - _deathRange: 0.5 + _range: 0.1 --- !u!114 &1578050038 MonoBehaviour: m_ObjectHideFlags: 0 @@ -664,7 +665,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: b9c1c9ed4b3212741be80d3f6aa54b30, type: 3} m_Name: m_EditorClassIdentifier: - _deathRange: 0.5 + _range: 0.1 --- !u!114 &1754708962 MonoBehaviour: m_ObjectHideFlags: 0 @@ -947,7 +948,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: b9c1c9ed4b3212741be80d3f6aa54b30, type: 3} m_Name: m_EditorClassIdentifier: - _deathRange: 0.5 + _range: 0.1 --- !u!114 &2083640150 MonoBehaviour: m_ObjectHideFlags: 0 diff --git a/Assets/Group1/Scripts/Booster.cs b/Assets/Group1/Scripts/Booster.cs index 5f363e9e..5878a96c 100644 --- a/Assets/Group1/Scripts/Booster.cs +++ b/Assets/Group1/Scripts/Booster.cs @@ -1,3 +1,5 @@ -public class Booster : SceneUnits +using UnityEngine; + +public class Booster : CollectedObjects { } diff --git a/Assets/Group1/Scripts/SceneUnits.cs b/Assets/Group1/Scripts/CollectedObjects.cs similarity index 68% rename from Assets/Group1/Scripts/SceneUnits.cs rename to Assets/Group1/Scripts/CollectedObjects.cs index f7918107..22a368ee 100644 --- a/Assets/Group1/Scripts/SceneUnits.cs +++ b/Assets/Group1/Scripts/CollectedObjects.cs @@ -1,6 +1,6 @@ using UnityEngine; -public abstract class SceneUnits : MonoBehaviour +public class CollectedObjects : MonoBehaviour { [SerializeField] private float _range; diff --git a/Assets/Group1/Scripts/SceneUnits.cs.meta b/Assets/Group1/Scripts/CollectedObjects.cs.meta similarity index 100% rename from Assets/Group1/Scripts/SceneUnits.cs.meta rename to Assets/Group1/Scripts/CollectedObjects.cs.meta diff --git a/Assets/Group1/Scripts/Game.cs b/Assets/Group1/Scripts/Collector.cs similarity index 68% rename from Assets/Group1/Scripts/Game.cs rename to Assets/Group1/Scripts/Collector.cs index 72d80b6c..07fbe8a6 100644 --- a/Assets/Group1/Scripts/Game.cs +++ b/Assets/Group1/Scripts/Collector.cs @@ -2,9 +2,8 @@ using System.Collections.Generic; using UnityEngine; using UnityEngine.Events; -using Object = UnityEngine.Object; -public class Game : MonoBehaviour +public class Collector : MonoBehaviour { [SerializeField] private GameOverScreen _gameOverScreen; [SerializeField] private Player _player; @@ -34,26 +33,26 @@ private void OnDisable() private void Update() { - KillEnemy(); + DestroyEnemy(); - AbsorbBooster(); + CollectBooster(); } - private void KillEnemy() + private void DestroyEnemy() { foreach (var enemy in _enemies) - CallByDistance(enemy, () => enemy.Die()); + CallByRange(enemy, () => enemy.Die()); } - private void AbsorbBooster() + private void CollectBooster() { foreach (var booster in _boosters) - CallByDistance(booster, () => _playerMover.IncreaseSpeed()); + CallByRange(booster, () => _playerMover.IncreaseSpeed()); } - private void CallByDistance(SceneUnits unit, Action callback) + private void CallByRange(CollectedObjects collectedObjects, Action callback) { - if (Vector3.Distance(_player.transform.position, unit.transform.position) < unit.Range) + if (Vector3.Distance(_player.transform.position, collectedObjects.transform.position) < collectedObjects.Range) callback?.Invoke(); } diff --git a/Assets/Group1/Scripts/Game.cs.meta b/Assets/Group1/Scripts/Collector.cs.meta similarity index 100% rename from Assets/Group1/Scripts/Game.cs.meta rename to Assets/Group1/Scripts/Collector.cs.meta diff --git a/Assets/Group1/Scripts/Enemy.cs b/Assets/Group1/Scripts/Enemy.cs index 84ca3a3d..e1337857 100644 --- a/Assets/Group1/Scripts/Enemy.cs +++ b/Assets/Group1/Scripts/Enemy.cs @@ -1,6 +1,7 @@ -using UnityEngine.Events; +using UnityEngine; +using UnityEngine.Events; -public class Enemy : SceneUnits +public class Enemy : CollectedObjects { public event UnityAction Died; diff --git a/Assets/Group1/Scripts/EnemyMover.cs b/Assets/Group1/Scripts/EnemyMover.cs index 35fe1461..a91f8a56 100644 --- a/Assets/Group1/Scripts/EnemyMover.cs +++ b/Assets/Group1/Scripts/EnemyMover.cs @@ -9,7 +9,7 @@ public class EnemyMover : MonoBehaviour private void Start() { - AssignRandomTarget(); + PasteRandomTarget(); } private void Update() @@ -17,10 +17,10 @@ private void Update() transform.position = Vector3.MoveTowards(transform.position, _target, _speed * Time.deltaTime); if (transform.position == _target) - AssignRandomTarget(); + PasteRandomTarget(); } - private void AssignRandomTarget() + private void PasteRandomTarget() { _target = Random.insideUnitCircle * _radius; } diff --git a/Assets/Group1/Scripts/GameOverScreen.cs b/Assets/Group1/Scripts/GameOverScreen.cs index 41ba3bf2..26ac3892 100644 --- a/Assets/Group1/Scripts/GameOverScreen.cs +++ b/Assets/Group1/Scripts/GameOverScreen.cs @@ -3,7 +3,7 @@ [RequireComponent(typeof(SpriteRenderer))] public class GameOverScreen : MonoBehaviour { - [SerializeField] private Game _game; + [SerializeField] private Collector _collector; [SerializeField] private Color _targetAlpha; private SpriteRenderer _spriteRenderer; @@ -15,12 +15,12 @@ private void Awake() private void OnEnable() { - _game.AllEnemyDied += OnAllEnemyDied; + _collector.AllEnemyDied += OnAllEnemyDied; } private void OnDisable() { - _game.AllEnemyDied -= OnAllEnemyDied; + _collector.AllEnemyDied -= OnAllEnemyDied; } private void OnAllEnemyDied() diff --git a/Assets/Group1/Scripts/PlayerMover.cs b/Assets/Group1/Scripts/PlayerMover.cs index 7cc1ecf7..3f63f2ae 100644 --- a/Assets/Group1/Scripts/PlayerMover.cs +++ b/Assets/Group1/Scripts/PlayerMover.cs @@ -6,37 +6,33 @@ public class PlayerMover : MonoBehaviour [SerializeField] private float _speed; [SerializeField] private float _maxBoostedSpeedTime; - private bool _speedIncreased; + private const string Horizontal = "Horizontal"; + private const string Vertical = "Vertical"; private void Update() { - float deltaX = GetAxis("Horizontal"); - float deltaY = GetAxis("Vertical"); + float deltaX = GetDirection(Horizontal); + float deltaY = GetDirection(Vertical); transform.Translate(deltaX, deltaY, 0); } public void IncreaseSpeed() { - if(_speedIncreased) - return; - - _speedIncreased = true; - _speed += _speed; - StartCoroutine(ResetSpeed()); } - private float GetAxis(string axis) + private float GetDirection(string axis) { return Input.GetAxis(axis) * _speed * Time.deltaTime; } private IEnumerator ResetSpeed() { + _speed += _speed; + yield return new WaitForSeconds(_maxBoostedSpeedTime); _speed -= _speed; - _speedIncreased = false; } }