From cb6b10419df74342a6516e5c7f555160797546be Mon Sep 17 00:00:00 2001 From: Jacob Tomassi Date: Wed, 30 Oct 2019 14:41:59 -0400 Subject: [PATCH] Box movement push --- .../Scenes/ShootingWithRaycasts.unity | 412 ++++++++++++++++-- .../Let's Try Shooter/Scripts/RayViewer.cs | 22 + .../Scripts/RayViewer.cs.meta | 11 + .../Scripts/Raycastshooter.cs | 28 +- 4 files changed, 438 insertions(+), 35 deletions(-) create mode 100644 DMD2542-Project003-Raycasting-JacobTomassi/Assets/Let's Try Shooter/Scripts/RayViewer.cs create mode 100644 DMD2542-Project003-Raycasting-JacobTomassi/Assets/Let's Try Shooter/Scripts/RayViewer.cs.meta diff --git a/DMD2542-Project003-Raycasting-JacobTomassi/Assets/Let's Try Shooter/Scenes/ShootingWithRaycasts.unity b/DMD2542-Project003-Raycasting-JacobTomassi/Assets/Let's Try Shooter/Scenes/ShootingWithRaycasts.unity index cfe1e91..08a1d00 100644 --- a/DMD2542-Project003-Raycasting-JacobTomassi/Assets/Let's Try Shooter/Scenes/ShootingWithRaycasts.unity +++ b/DMD2542-Project003-Raycasting-JacobTomassi/Assets/Let's Try Shooter/Scenes/ShootingWithRaycasts.unity @@ -133,7 +133,6 @@ GameObject: - component: {fileID: 32200912} - component: {fileID: 32200914} - component: {fileID: 32200913} - - component: {fileID: 32200915} m_Layer: 2 m_Name: ShooterFPSWeapon m_TagString: Untagged @@ -150,7 +149,7 @@ Transform: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 32200911} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0.375, y: -0.19, z: 0.75} + m_LocalPosition: {x: 0.375, y: -0.19, z: 0.74} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1505249018} @@ -204,18 +203,6 @@ MeshFilter: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 32200911} m_Mesh: {fileID: 4300000, guid: 47509307932d1e140a2b4d9024d228e4, type: 3} ---- !u!114 &32200915 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 32200911} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: e2c98eb629597a3409f55d9ce0314608, type: 3} - m_Name: - m_EditorClassIdentifier: --- !u!1001 &44252152 PrefabInstance: m_ObjectHideFlags: 0 @@ -515,6 +502,108 @@ Transform: type: 3} m_PrefabInstance: {fileID: 226785588} m_PrefabAsset: {fileID: 0} +--- !u!1 &234746812 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 100002, guid: 5e9e851c0e142814dac026a256ba2ac0, + type: 3} + m_PrefabInstance: {fileID: 1120024110} + m_PrefabAsset: {fileID: 0} +--- !u!120 &234746813 +LineRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 234746812} + m_Enabled: 0 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 0 + m_LightProbeUsage: 0 + m_ReflectionProbeUsage: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 0} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_Positions: + - {x: 0, y: 0, z: 0} + - {x: 0, y: 0, z: 0} + m_Parameters: + serializedVersion: 3 + widthMultiplier: 0.17 + widthCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0.37440777 + value: 0.7209302 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + colorGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 1, g: 1, b: 1, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 3084 + ctime2: 65535 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 3 + m_NumAlphaKeys: 2 + numCornerVertices: 0 + numCapVertices: 0 + alignment: 0 + textureMode: 0 + shadowBias: 0.5 + generateLightingData: 0 + m_UseWorldSpace: 1 + m_Loop: 0 --- !u!1001 &313053378 PrefabInstance: m_ObjectHideFlags: 0 @@ -1047,6 +1136,105 @@ MeshFilter: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 678704856} m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!1 &779522262 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 779522266} + - component: {fileID: 779522265} + - component: {fileID: 779522264} + - component: {fileID: 779522263} + m_Layer: 5 + m_Name: Canvas + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &779522263 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 779522262} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: dc42784cf147c0c48a680349fa168899, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreReversedGraphics: 1 + m_BlockingObjects: 0 + m_BlockingMask: + serializedVersion: 2 + m_Bits: 4294967295 +--- !u!114 &779522264 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 779522262} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UiScaleMode: 0 + m_ReferencePixelsPerUnit: 100 + m_ScaleFactor: 1 + m_ReferenceResolution: {x: 800, y: 600} + m_ScreenMatchMode: 0 + m_MatchWidthOrHeight: 0 + m_PhysicalUnit: 3 + m_FallbackScreenDPI: 96 + m_DefaultSpriteDPI: 96 + m_DynamicPixelsPerUnit: 1 +--- !u!223 &779522265 +Canvas: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 779522262} + m_Enabled: 1 + serializedVersion: 3 + m_RenderMode: 0 + m_Camera: {fileID: 0} + m_PlaneDistance: 100 + m_PixelPerfect: 0 + m_ReceivesEvents: 1 + m_OverrideSorting: 0 + m_OverridePixelPerfect: 0 + m_SortingBucketNormalizedSize: 0 + m_AdditionalShaderChannelsFlag: 0 + m_SortingLayerID: 0 + m_SortingOrder: 0 + m_TargetDisplay: 0 +--- !u!224 &779522266 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 779522262} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 0, y: 0, z: 0} + m_Children: + - {fileID: 1875791525} + m_Father: {fileID: 0} + m_RootOrder: 3 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 0, y: 0} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0, y: 0} --- !u!1001 &819970917 PrefabInstance: m_ObjectHideFlags: 0 @@ -1110,6 +1298,72 @@ Transform: type: 3} m_PrefabInstance: {fileID: 819970917} m_PrefabAsset: {fileID: 0} +--- !u!1 &1017921362 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1017921365} + - component: {fileID: 1017921364} + - component: {fileID: 1017921363} + m_Layer: 0 + m_Name: EventSystem + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &1017921363 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1017921362} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4f231c4fb786f3946a6b90b886c48677, type: 3} + m_Name: + m_EditorClassIdentifier: + m_HorizontalAxis: Horizontal + m_VerticalAxis: Vertical + m_SubmitButton: Submit + m_CancelButton: Cancel + m_InputActionsPerSecond: 10 + m_RepeatDelay: 0.5 + m_ForceModuleActive: 0 +--- !u!114 &1017921364 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1017921362} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 76c392e42b5098c458856cdf6ecaaaa1, type: 3} + m_Name: + m_EditorClassIdentifier: + m_FirstSelected: {fileID: 0} + m_sendNavigationEvents: 1 + m_DragThreshold: 10 +--- !u!4 &1017921365 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1017921362} + 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: 2 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!4 &1051716045 Transform: m_ObjectHideFlags: 0 @@ -1221,8 +1475,8 @@ Transform: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1081367224} m_LocalRotation: {x: 0, y: 0.38268346, z: 0, w: 0.9238795} - m_LocalPosition: {x: 0.5, y: 2, z: 2} - m_LocalScale: {x: 0.24999994, y: 0.25, z: 0.25} + m_LocalPosition: {x: 0.5, y: 2.616, z: 2} + m_LocalScale: {x: 0.24999994, y: 2.019675, z: 0.25} m_Children: [] m_Father: {fileID: 1239709575} m_RootOrder: 0 @@ -1382,10 +1636,18 @@ PrefabInstance: propertyPath: reverbZoneMixCustomCurve.m_RotationOrder value: 0 objectReference: {fileID: 0} + - target: {fileID: 8200000, guid: 5e9e851c0e142814dac026a256ba2ac0, type: 3} + propertyPath: m_audioClip + value: + objectReference: {fileID: 8300000, guid: 81a6153000036344e98c354b326e080c, type: 3} - target: {fileID: 100002, guid: 5e9e851c0e142814dac026a256ba2ac0, type: 3} propertyPath: m_Layer value: 2 objectReference: {fileID: 0} + - target: {fileID: 100002, guid: 5e9e851c0e142814dac026a256ba2ac0, type: 3} + propertyPath: m_IsActive + value: 1 + objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 5e9e851c0e142814dac026a256ba2ac0, type: 3} --- !u!4 &1120024111 stripped @@ -1520,7 +1782,7 @@ Transform: m_GameObject: {fileID: 1180305466} m_LocalRotation: {x: 0, y: 0.38268346, z: 0, w: 0.9238795} m_LocalPosition: {x: -0.5, y: 2, z: 2} - m_LocalScale: {x: 0.25, y: 0.25, z: 0.25} + m_LocalScale: {x: 0.60555, y: 0.60555, z: 0.60555} m_Children: [] m_Father: {fileID: 1239709575} m_RootOrder: 2 @@ -1956,9 +2218,10 @@ GameObject: serializedVersion: 6 m_Component: - component: {fileID: 1505249018} - - component: {fileID: 1505249021} - - component: {fileID: 1505249019} - component: {fileID: 1505249020} + - component: {fileID: 1505249019} + - component: {fileID: 1505249022} + - component: {fileID: 1505249021} m_Layer: 2 m_Name: Gun m_TagString: Untagged @@ -1992,9 +2255,10 @@ MonoBehaviour: m_GameObject: {fileID: 1505249017} m_Enabled: 1 m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: e2c98eb629597a3409f55d9ce0314608, type: 3} + m_Script: {fileID: 11500000, guid: 8c774f323156fd543b6c97b950a41496, type: 3} m_Name: m_EditorClassIdentifier: + weaponRange: 50 --- !u!120 &1505249020 LineRenderer: m_ObjectHideFlags: 0 @@ -2002,7 +2266,7 @@ LineRenderer: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1505249017} - m_Enabled: 1 + m_Enabled: 0 m_CastShadows: 1 m_ReceiveShadows: 1 m_DynamicOccludee: 1 @@ -2012,7 +2276,7 @@ LineRenderer: m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: - - {fileID: 0} + - {fileID: 2100000, guid: ca64b3e2949a1ca4dad1099aaf227317, type: 2} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 @@ -2038,13 +2302,13 @@ LineRenderer: - {x: 0, y: 0, z: 1} m_Parameters: serializedVersion: 3 - widthMultiplier: 1 + widthMultiplier: 0.08 widthCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 - value: 1 + value: 0.9883721 inSlope: 0 outSlope: 0 tangentMode: 0 @@ -2102,7 +2366,7 @@ AudioSource: serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 8300000, guid: 81a6153000036344e98c354b326e080c, type: 3} - m_PlayOnAwake: 0 + m_PlayOnAwake: 1 m_Volume: 1 m_Pitch: 1 Loop: 0 @@ -2156,7 +2420,7 @@ AudioSource: outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 - m_RotationOrder: 0 + m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: @@ -2171,7 +2435,7 @@ AudioSource: outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 - m_RotationOrder: 0 + m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: @@ -2186,7 +2450,24 @@ AudioSource: outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 - m_RotationOrder: 0 + m_RotationOrder: 4 +--- !u!114 &1505249022 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1505249017} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: e2c98eb629597a3409f55d9ce0314608, type: 3} + m_Name: + m_EditorClassIdentifier: + gunDamage: 1 + fireRate: 0.01 + weaponRange: 50 + hitForce: 100 + gunEnd: {fileID: 1691794596} --- !u!1001 &1535492403 PrefabInstance: m_ObjectHideFlags: 0 @@ -2850,6 +3131,81 @@ MeshFilter: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1846077370} m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!1 &1875791524 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1875791525} + - component: {fileID: 1875791527} + - component: {fileID: 1875791526} + m_Layer: 5 + m_Name: Image + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1875791525 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1875791524} + 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: 779522266} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 5, y: 5} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &1875791526 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1875791524} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 0, b: 0, a: 1} + m_RaycastTarget: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, + Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + m_Sprite: {fileID: 0} + m_Type: 0 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!222 &1875791527 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1875791524} + m_CullTransparentMesh: 0 --- !u!1001 &1985178675 PrefabInstance: m_ObjectHideFlags: 0 diff --git a/DMD2542-Project003-Raycasting-JacobTomassi/Assets/Let's Try Shooter/Scripts/RayViewer.cs b/DMD2542-Project003-Raycasting-JacobTomassi/Assets/Let's Try Shooter/Scripts/RayViewer.cs new file mode 100644 index 0000000..a2cbcd9 --- /dev/null +++ b/DMD2542-Project003-Raycasting-JacobTomassi/Assets/Let's Try Shooter/Scripts/RayViewer.cs @@ -0,0 +1,22 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +public class RayViewer : MonoBehaviour +{ + public float weaponRange = 50f; + private Camera fpsCam; + + + void Start() + { + fpsCam = GetComponentInParent (); + } + + + void Update() + { + Vector3 lineOrigin = fpsCam.ViewportToWorldPoint(new Vector3(0.5f, 05f, 0)); + Debug.DrawRay(lineOrigin, fpsCam.transform.forward * weaponRange, Color.green); + } +} diff --git a/DMD2542-Project003-Raycasting-JacobTomassi/Assets/Let's Try Shooter/Scripts/RayViewer.cs.meta b/DMD2542-Project003-Raycasting-JacobTomassi/Assets/Let's Try Shooter/Scripts/RayViewer.cs.meta new file mode 100644 index 0000000..65bad0e --- /dev/null +++ b/DMD2542-Project003-Raycasting-JacobTomassi/Assets/Let's Try Shooter/Scripts/RayViewer.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 8c774f323156fd543b6c97b950a41496 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/DMD2542-Project003-Raycasting-JacobTomassi/Assets/Let's Try Shooter/Scripts/Raycastshooter.cs b/DMD2542-Project003-Raycasting-JacobTomassi/Assets/Let's Try Shooter/Scripts/Raycastshooter.cs index 8856805..51857b0 100644 --- a/DMD2542-Project003-Raycasting-JacobTomassi/Assets/Let's Try Shooter/Scripts/Raycastshooter.cs +++ b/DMD2542-Project003-Raycasting-JacobTomassi/Assets/Let's Try Shooter/Scripts/Raycastshooter.cs @@ -6,15 +6,18 @@ public class Raycastshooter : MonoBehaviour { - public int gundamage = 1; - public float fireRate = .05f; + public int gunDamage = 1; + public float fireRate = .25f; public float weaponRange = 50f; public float hitForce = 100f; public Transform gunEnd; private Camera fpsCam; private WaitForSeconds shotDuration = new WaitForSeconds(.07f); + private AudioSource gunAudio; private LineRenderer laserLine; + private float nextFire; + @@ -28,23 +31,34 @@ public class Raycastshooter : MonoBehaviour void Update() { - if (Input.GetButtonDown ("Firel") && Time.time > nextFire) + if (Input.GetButtonDown("Fire1") && Time.time > nextFire) { nextFire = Time.time + fireRate; - StartCoroutine(ShotEffect()); - Vector3 rayOrigin = fpsCam.ViewportToWorldPoint(new Vector3(0.5f, 0.5f, 0)); + StartCoroutine (ShotEffect()); + Vector3 rayOrigin = fpsCam.ViewportToWorldPoint (new Vector3(0.5f, 0.5f, 0.0f)); RaycastHit hit; laserLine.SetPosition(0, gunEnd.position); - if (Physics.Raycast(rayOrigin,fpsCam.transform.forward, out hit, weaponRange)) + if (Physics.Raycast (rayOrigin,fpsCam.transform.forward, out hit, weaponRange)) { laserLine.SetPosition(1, hit.point); + + ShootableBox health = hit.collider.GetComponent(); + + if (health != null) + { + health.Damage(gunDamage); + } + + if (hit.rigidbody != null) + { + hit.rigidbody.AddForce(-hit.normal * hitForce); + } } else { laserLine.SetPosition(1, rayOrigin + (fpsCam.transform.forward * weaponRange)); - } } }