From 58d16dec85dbbb83c7ba503e735585f922bf67b9 Mon Sep 17 00:00:00 2001 From: Neil Kollack Date: Fri, 15 Apr 2022 00:32:41 -0500 Subject: feat: escape sequence --- Assets/Materials/Boulder.physicMaterial | 14 ++ Assets/Materials/Boulder.physicMaterial.meta | 8 + Assets/Prefabs/BoobyTrapSpawnPoint.prefab | 33 ++++ Assets/Prefabs/BoobyTrapSpawnPoint.prefab.meta | 7 + Assets/Prefabs/Boulder.prefab | 157 +++++++++++++++++ Assets/Prefabs/Boulder.prefab.meta | 7 + Assets/Prefabs/Treasure.prefab | 118 +++++++++++++ Assets/Prefabs/Treasure.prefab.meta | 7 + Assets/Scenes/Jungle.unity | 234 ++++++++++--------------- Assets/Scripts/Actors/Player.cs | 1 + Assets/Scripts/BoobyTrap.cs | 15 +- Assets/Scripts/Boulder.cs | 45 +++++ Assets/Scripts/Boulder.cs.meta | 11 ++ Assets/Scripts/LevelController.cs | 17 ++ Assets/Scripts/LevelController.cs.meta | 11 ++ Assets/Sprites/boulder.png | Bin 0 -> 2851 bytes Assets/Sprites/boulder.png.meta | 122 +++++++++++++ 17 files changed, 659 insertions(+), 148 deletions(-) create mode 100644 Assets/Materials/Boulder.physicMaterial create mode 100644 Assets/Materials/Boulder.physicMaterial.meta create mode 100644 Assets/Prefabs/BoobyTrapSpawnPoint.prefab create mode 100644 Assets/Prefabs/BoobyTrapSpawnPoint.prefab.meta create mode 100644 Assets/Prefabs/Boulder.prefab create mode 100644 Assets/Prefabs/Boulder.prefab.meta create mode 100644 Assets/Prefabs/Treasure.prefab create mode 100644 Assets/Prefabs/Treasure.prefab.meta create mode 100644 Assets/Scripts/Boulder.cs create mode 100644 Assets/Scripts/Boulder.cs.meta create mode 100644 Assets/Scripts/LevelController.cs create mode 100644 Assets/Scripts/LevelController.cs.meta create mode 100644 Assets/Sprites/boulder.png create mode 100644 Assets/Sprites/boulder.png.meta diff --git a/Assets/Materials/Boulder.physicMaterial b/Assets/Materials/Boulder.physicMaterial new file mode 100644 index 0000000..25597b1 --- /dev/null +++ b/Assets/Materials/Boulder.physicMaterial @@ -0,0 +1,14 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!134 &13400000 +PhysicMaterial: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Boulder + dynamicFriction: 0.6 + staticFriction: 0.6 + bounciness: 0 + frictionCombine: 0 + bounceCombine: 0 diff --git a/Assets/Materials/Boulder.physicMaterial.meta b/Assets/Materials/Boulder.physicMaterial.meta new file mode 100644 index 0000000..dcfc1af --- /dev/null +++ b/Assets/Materials/Boulder.physicMaterial.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 714252d45e70fcb4ba37a7705319c2a7 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 13400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Prefabs/BoobyTrapSpawnPoint.prefab b/Assets/Prefabs/BoobyTrapSpawnPoint.prefab new file mode 100644 index 0000000..3dfb57e --- /dev/null +++ b/Assets/Prefabs/BoobyTrapSpawnPoint.prefab @@ -0,0 +1,33 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &4457831989902087284 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4457831989902087285} + m_Layer: 0 + m_Name: BoobyTrapSpawnPoint + m_TagString: Untagged + m_Icon: {fileID: 3936346786652291628, guid: 0000000000000000d000000000000000, type: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &4457831989902087285 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4457831989902087284} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 478, y: 40.75, z: 0} + 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} diff --git a/Assets/Prefabs/BoobyTrapSpawnPoint.prefab.meta b/Assets/Prefabs/BoobyTrapSpawnPoint.prefab.meta new file mode 100644 index 0000000..c29bdb0 --- /dev/null +++ b/Assets/Prefabs/BoobyTrapSpawnPoint.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 809b04c0b3e6e5b44b57498f12c5210a +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Prefabs/Boulder.prefab b/Assets/Prefabs/Boulder.prefab new file mode 100644 index 0000000..f291057 --- /dev/null +++ b/Assets/Prefabs/Boulder.prefab @@ -0,0 +1,157 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &7977680014098188665 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 7977680014098188645} + - component: {fileID: 7977680014098188644} + - component: {fileID: 7977680014098188667} + - component: {fileID: 7977680014098188666} + - component: {fileID: 7977680014098188646} + - component: {fileID: 7071841513841830746} + m_Layer: 10 + m_Name: Boulder + m_TagString: Enemy + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &7977680014098188645 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7977680014098188665} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -78.79, y: -4.2054057, z: -0.10407122} + m_LocalScale: {x: 10, y: 10, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!212 &7977680014098188644 +SpriteRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7977680014098188665} + 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: 648d147b41e0c5740bd0d01c60f6e07f, type: 3} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_FlipX: 0 + m_FlipY: 0 + m_DrawMode: 0 + m_Size: {x: 1, y: 1} + m_AdaptiveModeThreshold: 0.5 + m_SpriteTileMode: 0 + m_WasSpriteAssigned: 1 + m_MaskInteraction: 0 + m_SpriteSortPoint: 0 +--- !u!58 &7977680014098188667 +CircleCollider2D: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7977680014098188665} + m_Enabled: 1 + m_Density: 1 + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_UsedByEffector: 0 + m_UsedByComposite: 0 + m_Offset: {x: 0, y: 0} + serializedVersion: 2 + m_Radius: 0.5 +--- !u!50 &7977680014098188666 +Rigidbody2D: + serializedVersion: 4 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7977680014098188665} + m_BodyType: 0 + m_Simulated: 1 + m_UseFullKinematicContacts: 0 + m_UseAutoMass: 0 + m_Mass: 1 + m_LinearDrag: 0 + m_AngularDrag: 0.05 + m_GravityScale: 5 + m_Material: {fileID: 0} + m_Interpolate: 0 + m_SleepingMode: 1 + m_CollisionDetection: 0 + m_Constraints: 0 +--- !u!114 &7977680014098188646 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7977680014098188665} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 760b14f92dafdd34381066ba181a1f93, type: 3} + m_Name: + m_EditorClassIdentifier: + speed: 22 + maxSpeed: 10 +--- !u!58 &7071841513841830746 +CircleCollider2D: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7977680014098188665} + m_Enabled: 1 + m_Density: 1 + m_Material: {fileID: 0} + m_IsTrigger: 1 + m_UsedByEffector: 0 + m_UsedByComposite: 0 + m_Offset: {x: 0, y: 0} + serializedVersion: 2 + m_Radius: 0.55 diff --git a/Assets/Prefabs/Boulder.prefab.meta b/Assets/Prefabs/Boulder.prefab.meta new file mode 100644 index 0000000..0231156 --- /dev/null +++ b/Assets/Prefabs/Boulder.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: df7113e464c04124d85510ce7a86023f +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Prefabs/Treasure.prefab b/Assets/Prefabs/Treasure.prefab new file mode 100644 index 0000000..a75de04 --- /dev/null +++ b/Assets/Prefabs/Treasure.prefab @@ -0,0 +1,118 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &4788021209095683739 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4788021209095683717} + - component: {fileID: 4788021209095683716} + - component: {fileID: 4788021209095683719} + - component: {fileID: 4788021209095683718} + m_Layer: 0 + m_Name: Treasure + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &4788021209095683717 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4788021209095683739} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 511, y: 34.75, z: 1} + m_LocalScale: {x: 3, y: 3, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!212 &4788021209095683716 +SpriteRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4788021209095683739} + 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: -492098402, guid: 54c37f1eaf80b5644aa7b2ab490d9045, type: 3} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_FlipX: 0 + m_FlipY: 0 + m_DrawMode: 0 + m_Size: {x: 0.5, y: 0.71875} + m_AdaptiveModeThreshold: 0.5 + m_SpriteTileMode: 0 + m_WasSpriteAssigned: 1 + m_MaskInteraction: 0 + m_SpriteSortPoint: 0 +--- !u!70 &4788021209095683719 +CapsuleCollider2D: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4788021209095683739} + m_Enabled: 1 + m_Density: 1 + m_Material: {fileID: 0} + m_IsTrigger: 1 + m_UsedByEffector: 0 + m_UsedByComposite: 0 + m_Offset: {x: 0, y: 0} + m_Size: {x: 0.5, y: 0.71875} + m_Direction: 0 +--- !u!114 &4788021209095683718 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4788021209095683739} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 042e1a970c0394244831fbd869ab4c75, type: 3} + m_Name: + m_EditorClassIdentifier: + boobyTrap: {fileID: 7977680014098188665, guid: df7113e464c04124d85510ce7a86023f, type: 3} + spawnPoint: {fileID: 4457831989902087284, guid: 809b04c0b3e6e5b44b57498f12c5210a, type: 3} diff --git a/Assets/Prefabs/Treasure.prefab.meta b/Assets/Prefabs/Treasure.prefab.meta new file mode 100644 index 0000000..90e9036 --- /dev/null +++ b/Assets/Prefabs/Treasure.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: f7f57f82eafa6be46b71b71e9117b9bf +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scenes/Jungle.unity b/Assets/Scenes/Jungle.unity index a948155..5f3f615 100644 --- a/Assets/Scenes/Jungle.unity +++ b/Assets/Scenes/Jungle.unity @@ -3038,37 +3038,6 @@ Transform: m_CorrespondingSourceObject: {fileID: 2894666046278553864, guid: 8f6c22559c50b594496aaea2c749a6a4, type: 3} m_PrefabInstance: {fileID: 413676159} m_PrefabAsset: {fileID: 0} ---- !u!1 &432252850 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 432252851} - m_Layer: 0 - m_Name: BoobyTrapSpawnPoint - m_TagString: Untagged - m_Icon: {fileID: 3936346786652291628, guid: 0000000000000000d000000000000000, type: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &432252851 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 432252850} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 478, y: 61, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 0} - m_RootOrder: 7 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1001 &433709214 PrefabInstance: m_ObjectHideFlags: 0 @@ -3399,6 +3368,7 @@ GameObject: - component: {fileID: 519420032} - component: {fileID: 519420031} - component: {fileID: 519420029} + - component: {fileID: 519420033} m_Layer: 0 m_Name: Main Camera m_TagString: MainCamera @@ -3472,6 +3442,19 @@ Transform: m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &519420033 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 519420028} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 37b6adf04336a564cb72facb6e18b968, type: 3} + m_Name: + m_EditorClassIdentifier: + treasure: {fileID: 4788021209095683739, guid: f7f57f82eafa6be46b71b71e9117b9bf, type: 3} --- !u!1 &544966461 GameObject: m_ObjectHideFlags: 0 @@ -10990,120 +10973,6 @@ Transform: m_CorrespondingSourceObject: {fileID: 5267721061292888517, guid: 47596d04057f55146bb75d8cea49ccdb, type: 3} m_PrefabInstance: {fileID: 808576702} m_PrefabAsset: {fileID: 0} ---- !u!1 &813538383 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 813538385} - - component: {fileID: 813538384} - - component: {fileID: 813538387} - - component: {fileID: 813538386} - m_Layer: 0 - m_Name: Treasure - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!212 &813538384 -SpriteRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 813538383} - 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: -492098402, guid: 54c37f1eaf80b5644aa7b2ab490d9045, type: 3} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_FlipX: 0 - m_FlipY: 0 - m_DrawMode: 0 - m_Size: {x: 0.5, y: 0.71875} - m_AdaptiveModeThreshold: 0.5 - m_SpriteTileMode: 0 - m_WasSpriteAssigned: 1 - m_MaskInteraction: 0 - m_SpriteSortPoint: 0 ---- !u!4 &813538385 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 813538383} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 511, y: 34.75, z: 1} - m_LocalScale: {x: 3, y: 3, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 0} - m_RootOrder: 6 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!114 &813538386 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 813538383} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 042e1a970c0394244831fbd869ab4c75, type: 3} - m_Name: - m_EditorClassIdentifier: ---- !u!70 &813538387 -CapsuleCollider2D: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 813538383} - m_Enabled: 1 - m_Density: 1 - m_Material: {fileID: 0} - m_IsTrigger: 1 - m_UsedByEffector: 0 - m_UsedByComposite: 0 - m_Offset: {x: 0, y: 0} - m_Size: {x: 0.5, y: 0.71875} - m_Direction: 0 --- !u!1001 &814781393 PrefabInstance: m_ObjectHideFlags: 0 @@ -324923,7 +324792,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 3218036852510780957, guid: 5634fecaf16a6234cbecd102e2675311, type: 3} propertyPath: m_LocalPosition.y - value: -73.5 + value: -86.75 objectReference: {fileID: 0} - target: {fileID: 3218036852510780957, guid: 5634fecaf16a6234cbecd102e2675311, type: 3} propertyPath: m_LocalPosition.z @@ -324957,12 +324826,77 @@ PrefabInstance: propertyPath: m_LocalEulerAnglesHint.z value: 0 objectReference: {fileID: 0} + - target: {fileID: 3218036852510780958, guid: 5634fecaf16a6234cbecd102e2675311, type: 3} + propertyPath: m_Size.x + value: 123.91608 + objectReference: {fileID: 0} + - target: {fileID: 3218036852510780958, guid: 5634fecaf16a6234cbecd102e2675311, type: 3} + propertyPath: m_Offset.x + value: -20.458038 + objectReference: {fileID: 0} - target: {fileID: 3218036852510780959, guid: 5634fecaf16a6234cbecd102e2675311, type: 3} propertyPath: m_Name value: BottomlessPit objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 5634fecaf16a6234cbecd102e2675311, type: 3} +--- !u!1001 &4788021208292696788 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 4788021209095683717, guid: f7f57f82eafa6be46b71b71e9117b9bf, type: 3} + propertyPath: m_RootOrder + value: 6 + objectReference: {fileID: 0} + - target: {fileID: 4788021209095683717, guid: f7f57f82eafa6be46b71b71e9117b9bf, type: 3} + propertyPath: m_LocalPosition.x + value: 511 + objectReference: {fileID: 0} + - target: {fileID: 4788021209095683717, guid: f7f57f82eafa6be46b71b71e9117b9bf, type: 3} + propertyPath: m_LocalPosition.y + value: 34.75 + objectReference: {fileID: 0} + - target: {fileID: 4788021209095683717, guid: f7f57f82eafa6be46b71b71e9117b9bf, type: 3} + propertyPath: m_LocalPosition.z + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4788021209095683717, guid: f7f57f82eafa6be46b71b71e9117b9bf, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4788021209095683717, guid: f7f57f82eafa6be46b71b71e9117b9bf, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4788021209095683717, guid: f7f57f82eafa6be46b71b71e9117b9bf, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4788021209095683717, guid: f7f57f82eafa6be46b71b71e9117b9bf, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4788021209095683717, guid: f7f57f82eafa6be46b71b71e9117b9bf, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4788021209095683717, guid: f7f57f82eafa6be46b71b71e9117b9bf, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4788021209095683717, guid: f7f57f82eafa6be46b71b71e9117b9bf, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4788021209095683739, guid: f7f57f82eafa6be46b71b71e9117b9bf, type: 3} + propertyPath: m_Name + value: Treasure + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: f7f57f82eafa6be46b71b71e9117b9bf, type: 3} --- !u!1001 &6691474245549666830 PrefabInstance: m_ObjectHideFlags: 0 @@ -325018,5 +324952,13 @@ PrefabInstance: propertyPath: m_Name value: Player objectReference: {fileID: 0} + - target: {fileID: 6634715301000360765, guid: b2169aaeb9a0e4542b1fb9d601bcc4b2, type: 3} + propertyPath: m_SpriteTilingProperty.oldSize.x + value: 1.125 + objectReference: {fileID: 0} + - target: {fileID: 6634715301000360765, guid: b2169aaeb9a0e4542b1fb9d601bcc4b2, type: 3} + propertyPath: m_SpriteTilingProperty.oldSize.y + value: 2.75 + objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: b2169aaeb9a0e4542b1fb9d601bcc4b2, type: 3} diff --git a/Assets/Scripts/Actors/Player.cs b/Assets/Scripts/Actors/Player.cs index 3537aa7..1b2155a 100644 --- a/Assets/Scripts/Actors/Player.cs +++ b/Assets/Scripts/Actors/Player.cs @@ -57,6 +57,7 @@ namespace MontanaJohns.Actors { if(health <= 0) { + MainCamera.GetComponent().ResetLevel(); ResetStats(); health = stats.maxHealth; transform.position = spawnPoint; diff --git a/Assets/Scripts/BoobyTrap.cs b/Assets/Scripts/BoobyTrap.cs index 72fc6ce..2ce736c 100644 --- a/Assets/Scripts/BoobyTrap.cs +++ b/Assets/Scripts/BoobyTrap.cs @@ -5,12 +5,23 @@ using UnityEngine; public class BoobyTrap : MonoBehaviour { + [SerializeField] GameObject boobyTrap; + [SerializeField] GameObject spawnPoint; + + bool triggered; + + private void Start() + { + Instantiate(spawnPoint); + } + private void OnTriggerEnter2D(Collider2D collision) { - if (collision.gameObject.tag == "Player") + if (collision.gameObject.tag == "Player" && !triggered) { + triggered = true; gameObject.GetComponent().sprite = null; - //TODO spawn the boulder + Instantiate(boobyTrap, spawnPoint.transform.position, Quaternion.identity); } } } diff --git a/Assets/Scripts/Boulder.cs b/Assets/Scripts/Boulder.cs new file mode 100644 index 0000000..5aa2beb --- /dev/null +++ b/Assets/Scripts/Boulder.cs @@ -0,0 +1,45 @@ +using MontanaJohns.Actors; +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +public class Boulder : MonoBehaviour +{ + [SerializeField] float speed; + [SerializeField] float maxSpeed; + + private GameObject player; + private Rigidbody2D rb; + + // Start is called before the first frame update + void Start() + { + player = GameObject.FindGameObjectWithTag("Player"); + rb = transform.GetComponent(); + + } + + // Update is called once per frame + void Update() + { + if (player.transform.position.x < transform.position.x) + { + transform.Rotate(0, 0, 1); + } + else + { + transform.Rotate(0, 0, -1); + } + transform.position = Vector2.MoveTowards(transform.position, new Vector2(player.transform.position.x, 0), speed * Time.deltaTime); + if(rb.velocity.x >= maxSpeed) + rb.velocity = new Vector2(maxSpeed, rb.velocity.y); + } + + private void OnTriggerEnter2D(Collider2D collision) + { + if (collision.gameObject.tag == "Player") + { + collision.GetComponent().TakeDamage(999); + } + } +} diff --git a/Assets/Scripts/Boulder.cs.meta b/Assets/Scripts/Boulder.cs.meta new file mode 100644 index 0000000..d053a76 --- /dev/null +++ b/Assets/Scripts/Boulder.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 760b14f92dafdd34381066ba181a1f93 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/LevelController.cs b/Assets/Scripts/LevelController.cs new file mode 100644 index 0000000..6d91d71 --- /dev/null +++ b/Assets/Scripts/LevelController.cs @@ -0,0 +1,17 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +public class LevelController : MonoBehaviour +{ + [SerializeField] GameObject treasure; + // Start is called before the first frame update + + public void ResetLevel() + { + Destroy(GameObject.Find("Boulder(Clone)")); + Destroy(GameObject.Find("BoobyTrapSpawnPoint(Clone)")); + Destroy(GameObject.Find("Treasure")); + Instantiate(treasure); + } +} diff --git a/Assets/Scripts/LevelController.cs.meta b/Assets/Scripts/LevelController.cs.meta new file mode 100644 index 0000000..b672ba6 --- /dev/null +++ b/Assets/Scripts/LevelController.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 37b6adf04336a564cb72facb6e18b968 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Sprites/boulder.png b/Assets/Sprites/boulder.png new file mode 100644 index 0000000..f6b8017 Binary files /dev/null and b/Assets/Sprites/boulder.png differ diff --git a/Assets/Sprites/boulder.png.meta b/Assets/Sprites/boulder.png.meta new file mode 100644 index 0000000..87698ef --- /dev/null +++ b/Assets/Sprites/boulder.png.meta @@ -0,0 +1,122 @@ +fileFormatVersion: 2 +guid: 648d147b41e0c5740bd0d01c60f6e07f +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 11 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + ignoreMasterTextureLimit: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: 1 + mipBias: 0 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 256 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Server + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 5e97eb03825dee720800000000000000 + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + nameFileIdTable: {} + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: -- cgit v1.2.3-70-g09d2