From 7e3beefb2f5c2f9159b5a396e6eab0e13e7473de Mon Sep 17 00:00:00 2001 From: Tom Bloor Date: Wed, 2 Oct 2019 23:48:41 +0100 Subject: [PATCH] Added Shooting and Pizza --- .../.idea/contentModel.xml | 6 +- .../.idea/indexLayout.xml | 2 +- Assets/Prefabs.meta | 8 + Assets/Prefabs/Pickups.meta | 8 + Assets/Prefabs/Pickups/pizza.prefab | 124 ++++ Assets/Prefabs/Pickups/pizza.prefab.meta | 7 + Assets/Scenes/Level01.unity | 680 +++++++++++++++++- Assets/Scripts/CameraController.cs | 10 +- Assets/Scripts/CollisionWallProjectile.cs | 14 + .../Scripts/CollisionWallProjectile.cs.meta | 11 + Assets/Scripts/PickupBounce.cs | 22 + Assets/Scripts/PickupBounce.cs.meta | 11 + Assets/Scripts/PickupType.cs | 4 + Assets/Scripts/PickupType.cs.meta | 3 + Assets/Scripts/PlayerController.cs | 36 +- Assets/Scripts/PlayerWeapon.cs | 42 ++ Assets/Scripts/PlayerWeapon.cs.meta | 11 + Assets/Sprites/bullet-testing.png | 3 + Assets/Sprites/bullet-testing.png.meta | 91 +++ Assets/Sprites/pickups.meta | 8 + Assets/Sprites/pickups/pizza.png | 3 + Assets/Sprites/pickups/pizza.png.meta | 91 +++ Assets/bullet-testing.prefab | 121 ++++ Assets/bullet-testing.prefab.meta | 7 + Assets/wall-testing.prefab | 13 + ProjectSettings/TagManager.asset | 4 +- 26 files changed, 1324 insertions(+), 16 deletions(-) create mode 100644 Assets/Prefabs.meta create mode 100644 Assets/Prefabs/Pickups.meta create mode 100644 Assets/Prefabs/Pickups/pizza.prefab create mode 100644 Assets/Prefabs/Pickups/pizza.prefab.meta create mode 100644 Assets/Scripts/CollisionWallProjectile.cs create mode 100644 Assets/Scripts/CollisionWallProjectile.cs.meta create mode 100644 Assets/Scripts/PickupBounce.cs create mode 100644 Assets/Scripts/PickupBounce.cs.meta create mode 100644 Assets/Scripts/PickupType.cs create mode 100644 Assets/Scripts/PickupType.cs.meta create mode 100644 Assets/Scripts/PlayerWeapon.cs create mode 100644 Assets/Scripts/PlayerWeapon.cs.meta create mode 100644 Assets/Sprites/bullet-testing.png create mode 100644 Assets/Sprites/bullet-testing.png.meta create mode 100644 Assets/Sprites/pickups.meta create mode 100644 Assets/Sprites/pickups/pizza.png create mode 100644 Assets/Sprites/pickups/pizza.png.meta create mode 100644 Assets/bullet-testing.prefab create mode 100644 Assets/bullet-testing.prefab.meta diff --git a/.idea/.idea.Devtober Apocalypse 2019/.idea/contentModel.xml b/.idea/.idea.Devtober Apocalypse 2019/.idea/contentModel.xml index 18d7ef3..bc2b3ba 100644 --- a/.idea/.idea.Devtober Apocalypse 2019/.idea/contentModel.xml +++ b/.idea/.idea.Devtober Apocalypse 2019/.idea/contentModel.xml @@ -1,4 +1,4 @@ - + @@ -8,7 +8,11 @@ + + + + diff --git a/.idea/.idea.Devtober Apocalypse 2019/.idea/indexLayout.xml b/.idea/.idea.Devtober Apocalypse 2019/.idea/indexLayout.xml index 4538cd4..160b62d 100644 --- a/.idea/.idea.Devtober Apocalypse 2019/.idea/indexLayout.xml +++ b/.idea/.idea.Devtober Apocalypse 2019/.idea/indexLayout.xml @@ -1,4 +1,4 @@ - + diff --git a/Assets/Prefabs.meta b/Assets/Prefabs.meta new file mode 100644 index 0000000..4675046 --- /dev/null +++ b/Assets/Prefabs.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: d973fc733ea2d14459ed1d6b29c2c7f2 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Prefabs/Pickups.meta b/Assets/Prefabs/Pickups.meta new file mode 100644 index 0000000..ff78556 --- /dev/null +++ b/Assets/Prefabs/Pickups.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 5fd7c2960395f804596e11d57e2842eb +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Prefabs/Pickups/pizza.prefab b/Assets/Prefabs/Pickups/pizza.prefab new file mode 100644 index 0000000..f730485 --- /dev/null +++ b/Assets/Prefabs/Pickups/pizza.prefab @@ -0,0 +1,124 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &7185915641230361858 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 7185915641230361916} + - component: {fileID: 7185915641230361917} + - component: {fileID: 7185915641230361919} + - component: {fileID: 6200319544780353047} + m_Layer: 0 + m_Name: pizza + m_TagString: Pickup + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &7185915641230361916 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7185915641230361858} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 2.206, y: 0.681, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!212 &7185915641230361917 +SpriteRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7185915641230361858} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + 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: 961b2e16cbfe62c4791a1daa9ecec796, 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.39, y: 0.44} + m_AdaptiveModeThreshold: 0.5 + m_SpriteTileMode: 0 + m_WasSpriteAssigned: 1 + m_MaskInteraction: 0 + m_SpriteSortPoint: 0 +--- !u!114 &7185915641230361919 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7185915641230361858} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 776990f0ee5b56a4da5ac3389b49b670, type: 3} + m_Name: + m_EditorClassIdentifier: + floatStrength: 0.1 + type: 1 +--- !u!61 &6200319544780353047 +BoxCollider2D: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7185915641230361858} + m_Enabled: 1 + m_Density: 1 + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_UsedByEffector: 0 + m_UsedByComposite: 0 + m_Offset: {x: 0, y: 0} + m_SpriteTilingProperty: + border: {x: 0, y: 0, z: 0, w: 0} + pivot: {x: 0.5, y: 0.5} + oldSize: {x: 0.39, y: 0.44} + newSize: {x: 0.39, y: 0.44} + adaptiveTilingThreshold: 0.5 + drawMode: 0 + adaptiveTiling: 0 + m_AutoTiling: 0 + serializedVersion: 2 + m_Size: {x: 0.39, y: 0.44} + m_EdgeRadius: 0 diff --git a/Assets/Prefabs/Pickups/pizza.prefab.meta b/Assets/Prefabs/Pickups/pizza.prefab.meta new file mode 100644 index 0000000..4f19496 --- /dev/null +++ b/Assets/Prefabs/Pickups/pizza.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 72cc02795b7b43d438003d83fb54daf3 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scenes/Level01.unity b/Assets/Scenes/Level01.unity index 48737e8..238ed9c 100644 --- a/Assets/Scenes/Level01.unity +++ b/Assets/Scenes/Level01.unity @@ -693,7 +693,7 @@ Transform: - {fileID: 1996942970} - {fileID: 1924543932} m_Father: {fileID: 0} - m_RootOrder: 2 + m_RootOrder: 8 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1001 &131721774 PrefabInstance: @@ -770,6 +770,75 @@ Transform: type: 3} m_PrefabInstance: {fileID: 1203834331} m_PrefabAsset: {fileID: 0} +--- !u!1001 &197386915 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 7185915641230361858, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_Name + value: pizza (5) + objectReference: {fileID: 0} + - target: {fileID: 7185915641230361916, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_LocalPosition.x + value: 4.932619 + objectReference: {fileID: 0} + - target: {fileID: 7185915641230361916, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_LocalPosition.y + value: 0.96192396 + objectReference: {fileID: 0} + - target: {fileID: 7185915641230361916, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7185915641230361916, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7185915641230361916, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7185915641230361916, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7185915641230361916, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7185915641230361916, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_RootOrder + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7185915641230361916, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7185915641230361916, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7185915641230361916, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 72cc02795b7b43d438003d83fb54daf3, type: 3} --- !u!1001 &202278862 PrefabInstance: m_ObjectHideFlags: 0 @@ -1751,6 +1820,83 @@ PrefabInstance: objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 3a62fb0083adba449ad20ea4e2634233, type: 3} +--- !u!1 &746361707 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 746361708} + - component: {fileID: 746361710} + - component: {fileID: 746361709} + m_Layer: 5 + m_Name: PlayerPosition + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &746361708 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 746361707} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 1965906123} + m_RootOrder: 2 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 522, y: -264} + m_SizeDelta: {x: 73.8, y: 20.4} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &746361709 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 746361707} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 0, b: 0.7803583, a: 1} + m_RaycastTarget: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_FontData: + m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} + m_FontSize: 14 + m_FontStyle: 0 + m_BestFit: 0 + m_MinSize: 10 + m_MaxSize: 40 + m_Alignment: 0 + m_AlignByGeometry: 0 + m_RichText: 1 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 0 + m_LineSpacing: 1 + m_Text: Player +--- !u!222 &746361710 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 746361707} + m_CullTransparentMesh: 0 --- !u!4 &754069117 stripped Transform: m_CorrespondingSourceObject: {fileID: 5064625949789858433, guid: 3a62fb0083adba449ad20ea4e2634233, @@ -2213,6 +2359,75 @@ Transform: type: 3} m_PrefabInstance: {fileID: 900114526} m_PrefabAsset: {fileID: 0} +--- !u!1001 &939898656 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 7185915641230361858, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_Name + value: pizza (1) + objectReference: {fileID: 0} + - target: {fileID: 7185915641230361916, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_LocalPosition.x + value: -5.356322 + objectReference: {fileID: 0} + - target: {fileID: 7185915641230361916, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_LocalPosition.y + value: 0.21363717 + objectReference: {fileID: 0} + - target: {fileID: 7185915641230361916, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7185915641230361916, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7185915641230361916, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7185915641230361916, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7185915641230361916, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7185915641230361916, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_RootOrder + value: 5 + objectReference: {fileID: 0} + - target: {fileID: 7185915641230361916, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7185915641230361916, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7185915641230361916, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 72cc02795b7b43d438003d83fb54daf3, type: 3} --- !u!1 &965714102 GameObject: m_ObjectHideFlags: 0 @@ -3087,6 +3302,83 @@ PrefabInstance: objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 3a62fb0083adba449ad20ea4e2634233, type: 3} +--- !u!1 &1181330404 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1181330405} + - component: {fileID: 1181330407} + - component: {fileID: 1181330406} + m_Layer: 5 + m_Name: MousePosition + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1181330405 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1181330404} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 1965906123} + m_RootOrder: 3 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 522, y: -284.40002} + m_SizeDelta: {x: 73.8, y: 20.4} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &1181330406 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1181330404} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 0, b: 0.7803583, a: 1} + m_RaycastTarget: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_FontData: + m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} + m_FontSize: 14 + m_FontStyle: 0 + m_BestFit: 0 + m_MinSize: 10 + m_MaxSize: 40 + m_Alignment: 0 + m_AlignByGeometry: 0 + m_RichText: 1 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 0 + m_LineSpacing: 1 + m_Text: Mouse +--- !u!222 &1181330407 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1181330404} + m_CullTransparentMesh: 0 --- !u!1001 &1203834331 PrefabInstance: m_ObjectHideFlags: 0 @@ -3358,7 +3650,7 @@ Transform: m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 4 + m_RootOrder: 10 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1001 &1287880615 PrefabInstance: @@ -3603,6 +3895,144 @@ PrefabInstance: objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 3a62fb0083adba449ad20ea4e2634233, type: 3} +--- !u!1001 &1445341259 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 7185915641230361858, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_Name + value: pizza (4) + objectReference: {fileID: 0} + - target: {fileID: 7185915641230361916, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_LocalPosition.x + value: 7.1507545 + objectReference: {fileID: 0} + - target: {fileID: 7185915641230361916, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_LocalPosition.y + value: -0.9087925 + objectReference: {fileID: 0} + - target: {fileID: 7185915641230361916, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7185915641230361916, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7185915641230361916, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7185915641230361916, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7185915641230361916, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7185915641230361916, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_RootOrder + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7185915641230361916, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7185915641230361916, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7185915641230361916, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 72cc02795b7b43d438003d83fb54daf3, type: 3} +--- !u!1001 &1483247611 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 7185915641230361858, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_Name + value: pizza (3) + objectReference: {fileID: 0} + - target: {fileID: 7185915641230361916, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_LocalPosition.x + value: -2.0692058 + objectReference: {fileID: 0} + - target: {fileID: 7185915641230361916, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_LocalPosition.y + value: -0.93551713 + objectReference: {fileID: 0} + - target: {fileID: 7185915641230361916, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7185915641230361916, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7185915641230361916, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7185915641230361916, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7185915641230361916, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7185915641230361916, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_RootOrder + value: 3 + objectReference: {fileID: 0} + - target: {fileID: 7185915641230361916, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7185915641230361916, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7185915641230361916, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 72cc02795b7b43d438003d83fb54daf3, type: 3} --- !u!1001 &1505046078 PrefabInstance: m_ObjectHideFlags: 0 @@ -3911,6 +4341,75 @@ Transform: type: 3} m_PrefabInstance: {fileID: 899012402} m_PrefabAsset: {fileID: 0} +--- !u!1001 &1639134856 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 7185915641230361858, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_Name + value: pizza (2) + objectReference: {fileID: 0} + - target: {fileID: 7185915641230361916, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_LocalPosition.x + value: -8.696887 + objectReference: {fileID: 0} + - target: {fileID: 7185915641230361916, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_LocalPosition.y + value: 1.1757197 + objectReference: {fileID: 0} + - target: {fileID: 7185915641230361916, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7185915641230361916, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7185915641230361916, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7185915641230361916, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7185915641230361916, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7185915641230361916, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_RootOrder + value: 4 + objectReference: {fileID: 0} + - target: {fileID: 7185915641230361916, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7185915641230361916, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7185915641230361916, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 72cc02795b7b43d438003d83fb54daf3, type: 3} --- !u!4 &1655818157 stripped Transform: m_CorrespondingSourceObject: {fileID: 5064625949789858433, guid: 3a62fb0083adba449ad20ea4e2634233, @@ -3927,12 +4426,13 @@ GameObject: m_Component: - component: {fileID: 1658863097} - component: {fileID: 1658863096} - - component: {fileID: 1658863095} - component: {fileID: 1658863094} - component: {fileID: 1658863098} + - component: {fileID: 1658863095} + - component: {fileID: 1658863099} m_Layer: 0 m_Name: player-testing - m_TagString: Untagged + m_TagString: Player m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 @@ -3974,6 +4474,7 @@ MonoBehaviour: speed: 10 runMultiplier: 1.5 movementType: {fileID: 1902661110} + pizzaCountDisplay: {fileID: 1770290537} --- !u!212 &1658863096 SpriteRenderer: m_ObjectHideFlags: 0 @@ -4035,7 +4536,7 @@ Transform: m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 3 + m_RootOrder: 9 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!61 &1658863098 BoxCollider2D: @@ -4063,6 +4564,22 @@ BoxCollider2D: serializedVersion: 2 m_Size: {x: 1, y: 1} m_EdgeRadius: 0 +--- !u!114 &1658863099 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1658863093} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: a89a27595e4353b43b0f1a9fb74fdb9a, type: 3} + m_Name: + m_EditorClassIdentifier: + sceneCamera: {fileID: 965714104} + bullet: {fileID: 6244070996435270729, guid: 7c404e7abc222314a94e0afa26a3e75c, type: 3} + attackSpeed: 0.5 + bulletSpeed: 600 --- !u!4 &1659665676 stripped Transform: m_CorrespondingSourceObject: {fileID: 5064625949789858433, guid: 3a62fb0083adba449ad20ea4e2634233, @@ -4282,6 +4799,83 @@ PrefabInstance: objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 3a62fb0083adba449ad20ea4e2634233, type: 3} +--- !u!1 &1770290536 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1770290539} + - component: {fileID: 1770290538} + - component: {fileID: 1770290537} + m_Layer: 5 + m_Name: PizzaCounter + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &1770290537 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1770290536} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 0, b: 0.7803583, a: 1} + m_RaycastTarget: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_FontData: + m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} + m_FontSize: 14 + m_FontStyle: 0 + m_BestFit: 0 + m_MinSize: 10 + m_MaxSize: 40 + m_Alignment: 0 + m_AlignByGeometry: 0 + m_RichText: 1 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 0 + m_LineSpacing: 1 + m_Text: Walking +--- !u!222 &1770290538 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1770290536} + m_CullTransparentMesh: 0 +--- !u!224 &1770290539 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1770290536} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 1965906123} + m_RootOrder: 4 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: -383.4, y: -277.65} + m_SizeDelta: {x: 160, y: 30} + m_Pivot: {x: 0.5, y: 0.5} --- !u!1001 &1775708115 PrefabInstance: m_ObjectHideFlags: 0 @@ -4449,7 +5043,7 @@ MonoBehaviour: m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 - m_Text: New Text + m_Text: Walking --- !u!222 &1902661111 CanvasRenderer: m_ObjectHideFlags: 0 @@ -4562,8 +5156,11 @@ RectTransform: m_Children: - {fileID: 1515687699} - {fileID: 1902661109} + - {fileID: 746361708} + - {fileID: 1181330405} + - {fileID: 1770290539} m_Father: {fileID: 0} - m_RootOrder: 1 + m_RootOrder: 7 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} @@ -4969,3 +5566,72 @@ PrefabInstance: objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 3a62fb0083adba449ad20ea4e2634233, type: 3} +--- !u!1001 &7185915639235738973 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 7185915641230361858, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_Name + value: pizza + objectReference: {fileID: 0} + - target: {fileID: 7185915641230361916, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_LocalPosition.x + value: 2.206 + objectReference: {fileID: 0} + - target: {fileID: 7185915641230361916, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_LocalPosition.y + value: 0.681 + objectReference: {fileID: 0} + - target: {fileID: 7185915641230361916, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7185915641230361916, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7185915641230361916, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7185915641230361916, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7185915641230361916, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7185915641230361916, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_RootOrder + value: 6 + objectReference: {fileID: 0} + - target: {fileID: 7185915641230361916, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7185915641230361916, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7185915641230361916, guid: 72cc02795b7b43d438003d83fb54daf3, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 72cc02795b7b43d438003d83fb54daf3, type: 3} diff --git a/Assets/Scripts/CameraController.cs b/Assets/Scripts/CameraController.cs index 4f56554..2d94647 100644 --- a/Assets/Scripts/CameraController.cs +++ b/Assets/Scripts/CameraController.cs @@ -3,15 +3,15 @@ public class CameraController : MonoBehaviour { public GameObject player; - private Vector3 offset; + private Vector3 _offset; - void Start() + private void Start() { - offset = transform.position - player.transform.position; + _offset = transform.position - player.transform.position; } - void LateUpdate() + private void LateUpdate() { - transform.position = player.transform.position + offset; + transform.position = player.transform.position + _offset; } } diff --git a/Assets/Scripts/CollisionWallProjectile.cs b/Assets/Scripts/CollisionWallProjectile.cs new file mode 100644 index 0000000..c64fa67 --- /dev/null +++ b/Assets/Scripts/CollisionWallProjectile.cs @@ -0,0 +1,14 @@ + +using System; +using UnityEngine; + +public class CollisionWallProjectile : MonoBehaviour +{ + private void OnCollisionEnter2D(Collision2D collision2D) + { + if (collision2D.gameObject.tag.Equals("Projectile")) + { + Destroy(collision2D.gameObject); + } + } +} diff --git a/Assets/Scripts/CollisionWallProjectile.cs.meta b/Assets/Scripts/CollisionWallProjectile.cs.meta new file mode 100644 index 0000000..5539ae6 --- /dev/null +++ b/Assets/Scripts/CollisionWallProjectile.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 8851f5d3616762c42a30d2d39968fec1 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/PickupBounce.cs b/Assets/Scripts/PickupBounce.cs new file mode 100644 index 0000000..c23a733 --- /dev/null +++ b/Assets/Scripts/PickupBounce.cs @@ -0,0 +1,22 @@ +using System; +using UnityEngine; + +public class PickupBounce : MonoBehaviour +{ + public float floatStrength = 0.1f; + public PlayerController.PickupType type; + private float _originalY; + + private void Start() + { + _originalY = transform.position.y; + } + + void FixedUpdate() + { + transform.position = new Vector2( + transform.position.x, + _originalY + ((float) Math.Sin(Time.time) * floatStrength) + ); + } +} \ No newline at end of file diff --git a/Assets/Scripts/PickupBounce.cs.meta b/Assets/Scripts/PickupBounce.cs.meta new file mode 100644 index 0000000..f55914c --- /dev/null +++ b/Assets/Scripts/PickupBounce.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 776990f0ee5b56a4da5ac3389b49b670 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/PickupType.cs b/Assets/Scripts/PickupType.cs new file mode 100644 index 0000000..764e9f9 --- /dev/null +++ b/Assets/Scripts/PickupType.cs @@ -0,0 +1,4 @@ +public enum PickupType +{ + PizzaPickup = 1 +} \ No newline at end of file diff --git a/Assets/Scripts/PickupType.cs.meta b/Assets/Scripts/PickupType.cs.meta new file mode 100644 index 0000000..2fc6aca --- /dev/null +++ b/Assets/Scripts/PickupType.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 3786f419564b4f3583e50b6b6a4fbfc0 +timeCreated: 1570054838 \ No newline at end of file diff --git a/Assets/Scripts/PlayerController.cs b/Assets/Scripts/PlayerController.cs index f141be1..f7e930e 100644 --- a/Assets/Scripts/PlayerController.cs +++ b/Assets/Scripts/PlayerController.cs @@ -1,13 +1,22 @@ -using UnityEngine; +using System; +using UnityEngine; using UnityEngine.UI; public class PlayerController : MonoBehaviour { + public enum PickupType + { + PizzaPickup = 1 + }; + public Rigidbody2D player; public float speed = 10f; public float runMultiplier = 1.5f; public Text movementType; + public Text pizzaCountDisplay; + private int _pizzaCount = 0; + private void Start() { movementType.text = "Walking"; @@ -32,4 +41,29 @@ public class PlayerController : MonoBehaviour player.velocity = movement * speed; } + + private void OnCollisionEnter2D(Collision2D other) + { + Debug.Log(other.gameObject.tag); + if (other.gameObject.tag.Equals("Pickup")) + { + Destroy(other.gameObject); + GivePickup(other.gameObject.GetComponent().type); + } + } + + private void GivePickup(PickupType type) + { + Debug.Log(type.ToString()); + switch (type) + { + case PickupType.PizzaPickup: + _pizzaCount++; + pizzaCountDisplay.text = $"Pizza Count: {_pizzaCount.ToString()}"; + break; + default: + Debug.LogWarning($"Unrecognised PickupType: {type.ToString()}"); + break; + } + } } \ No newline at end of file diff --git a/Assets/Scripts/PlayerWeapon.cs b/Assets/Scripts/PlayerWeapon.cs new file mode 100644 index 0000000..f0ec6bc --- /dev/null +++ b/Assets/Scripts/PlayerWeapon.cs @@ -0,0 +1,42 @@ +using System; +using UnityEngine; +using UnityEngine.UI; + +public class PlayerWeapon : MonoBehaviour +{ + // Copied and modified from https://answers.unity.com/questions/696001/how-to-make-bullet-shoot-in-same-direction-as-play.html + + public Camera sceneCamera; + public Rigidbody2D bullet; + public float attackSpeed = 0.5f; + public float bulletSpeed = 600; + + private Rigidbody2D _player; + private float _cooldown; + + private void Start() + { + _player = GetComponent(); + + } + + private void Update() + { + Vector2 mousePosition = sceneCamera.ScreenToWorldPoint(Input.mousePosition); + Vector2 playerPosition = _player.position; + + if (!(Time.time >= _cooldown) || !Input.GetMouseButton(0)) return; + Fire(playerPosition, mousePosition); + } + + private void Fire(Vector2 from, Vector2 towards) + { + Rigidbody2D firingBullet = Instantiate(bullet, _player.transform); + // TODO does it matter that GetComponent is expensive? + Physics2D.IgnoreCollision(firingBullet.GetComponent(), _player.GetComponent()); + Vector2 direction = towards - from; + firingBullet.AddForce(direction.normalized * bulletSpeed + _player.velocity); + + _cooldown = Time.time + attackSpeed; + } +} diff --git a/Assets/Scripts/PlayerWeapon.cs.meta b/Assets/Scripts/PlayerWeapon.cs.meta new file mode 100644 index 0000000..fb55aac --- /dev/null +++ b/Assets/Scripts/PlayerWeapon.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: a89a27595e4353b43b0f1a9fb74fdb9a +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Sprites/bullet-testing.png b/Assets/Sprites/bullet-testing.png new file mode 100644 index 0000000..e6674d2 --- /dev/null +++ b/Assets/Sprites/bullet-testing.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:19592b2cffb03dfd2631c8c29d1670f0a700e8aedcc8fd0e481b5bdc555a564a +size 304 diff --git a/Assets/Sprites/bullet-testing.png.meta b/Assets/Sprites/bullet-testing.png.meta new file mode 100644 index 0000000..d9fd61b --- /dev/null +++ b/Assets/Sprites/bullet-testing.png.meta @@ -0,0 +1,91 @@ +fileFormatVersion: 2 +guid: 2fa7adb610674af48bb868d9aa1dfca1 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 10 + 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 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: -1 + mipBias: -100 + 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: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 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 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 5e97eb03825dee720800000000000000 + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Sprites/pickups.meta b/Assets/Sprites/pickups.meta new file mode 100644 index 0000000..292d0dc --- /dev/null +++ b/Assets/Sprites/pickups.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 1e7b3fcc31460294c9c55557867d44f0 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Sprites/pickups/pizza.png b/Assets/Sprites/pickups/pizza.png new file mode 100644 index 0000000..d9d456a --- /dev/null +++ b/Assets/Sprites/pickups/pizza.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3d596158a39d44ae94167e6daddaf8a33486fd0be63f26b7e8877dc527471d51 +size 630 diff --git a/Assets/Sprites/pickups/pizza.png.meta b/Assets/Sprites/pickups/pizza.png.meta new file mode 100644 index 0000000..df9992e --- /dev/null +++ b/Assets/Sprites/pickups/pizza.png.meta @@ -0,0 +1,91 @@ +fileFormatVersion: 2 +guid: 961b2e16cbfe62c4791a1daa9ecec796 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 10 + 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 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: -1 + mipBias: -100 + 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: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 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 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 5e97eb03825dee720800000000000000 + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/bullet-testing.prefab b/Assets/bullet-testing.prefab new file mode 100644 index 0000000..4fc37c3 --- /dev/null +++ b/Assets/bullet-testing.prefab @@ -0,0 +1,121 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &4108446066110553420 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 975319316475090039} + - component: {fileID: 2414019498655829040} + - component: {fileID: 6244070996435270729} + - component: {fileID: 7577485387881536711} + m_Layer: 0 + m_Name: bullet-testing + m_TagString: Projectile + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &975319316475090039 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4108446066110553420} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!212 &2414019498655829040 +SpriteRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4108446066110553420} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + 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: 2fa7adb610674af48bb868d9aa1dfca1, 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.1, y: 0.1} + m_AdaptiveModeThreshold: 0.5 + m_SpriteTileMode: 0 + m_WasSpriteAssigned: 1 + m_MaskInteraction: 0 + m_SpriteSortPoint: 0 +--- !u!50 &6244070996435270729 +Rigidbody2D: + serializedVersion: 4 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4108446066110553420} + m_BodyType: 0 + m_Simulated: 1 + m_UseFullKinematicContacts: 0 + m_UseAutoMass: 0 + m_Mass: 1 + m_LinearDrag: 0 + m_AngularDrag: 0.05 + m_GravityScale: 0 + m_Material: {fileID: 0} + m_Interpolate: 0 + m_SleepingMode: 1 + m_CollisionDetection: 0 + m_Constraints: 0 +--- !u!58 &7577485387881536711 +CircleCollider2D: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4108446066110553420} + 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.05 diff --git a/Assets/bullet-testing.prefab.meta b/Assets/bullet-testing.prefab.meta new file mode 100644 index 0000000..3663991 --- /dev/null +++ b/Assets/bullet-testing.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 7c404e7abc222314a94e0afa26a3e75c +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/wall-testing.prefab b/Assets/wall-testing.prefab index 6398ff4..9c06dae 100644 --- a/Assets/wall-testing.prefab +++ b/Assets/wall-testing.prefab @@ -11,6 +11,7 @@ GameObject: - component: {fileID: 5064625949789858433} - component: {fileID: 8536214089394525523} - component: {fileID: 4317457422259149156} + - component: {fileID: 2808258016843424288} m_Layer: 0 m_Name: wall-testing m_TagString: Untagged @@ -107,3 +108,15 @@ BoxCollider2D: serializedVersion: 2 m_Size: {x: 1, y: 1} m_EdgeRadius: 0 +--- !u!114 &2808258016843424288 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8681226398974794901} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 8851f5d3616762c42a30d2d39968fec1, type: 3} + m_Name: + m_EditorClassIdentifier: diff --git a/ProjectSettings/TagManager.asset b/ProjectSettings/TagManager.asset index 8366eda..7d6ef28 100644 --- a/ProjectSettings/TagManager.asset +++ b/ProjectSettings/TagManager.asset @@ -3,7 +3,9 @@ --- !u!78 &1 TagManager: serializedVersion: 2 - tags: [] + tags: + - Projectile + - Pickup layers: - Default - TransparentFX