diff --git a/Assets/Animation/PlayerAC.controller b/Assets/Animation/PlayerAC.controller index 6b59b7251656466bce38ca957b5e2fbeb29c439d..39dc336160527e128d6f8f124ed998dce9dd1986 100644 --- a/Assets/Animation/PlayerAC.controller +++ b/Assets/Animation/PlayerAC.controller @@ -66,13 +66,13 @@ AnimatorController: m_DefaultFloat: 0 m_DefaultInt: 0 m_DefaultBool: 0 - m_Controller: {fileID: 9100000} + m_Controller: {fileID: 0} - m_Name: Die m_Type: 4 m_DefaultFloat: 0 m_DefaultInt: 0 m_DefaultBool: 0 - m_Controller: {fileID: 9100000} + m_Controller: {fileID: 0} m_AnimatorLayers: - serializedVersion: 5 m_Name: Base Layer diff --git a/Assets/BowShooting.cs b/Assets/BowShooting.cs new file mode 100644 index 0000000000000000000000000000000000000000..12dbb2e11de9614143e0fb15dde28ffb813a117d --- /dev/null +++ b/Assets/BowShooting.cs @@ -0,0 +1,54 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; +using UnityEngine.UI; +using TMPro; +public class BowShooting : MonoBehaviour +{ + public TMP_Text firePowerText; + public Bow bow; + public float maxPower; + private float firePowerSpeed; + public float rotationspeed; + public float minRotation; + public float maxRotation; + public float angle; + private bool fire; + + void Start() + { + firePowerSpeed = 5; + bow.Reload(); + } + + void Update() + { + var mouseX = Input.GetAxis("Mouse X"); + var mouseY = Input.GetAxis("Mouse Y"); + if (Input.GetButtonDown("Fire1")) + { + firePowerSpeed = 5; + Debug.Log(bow.CanShoot()); + fire = true; + } + if (fire && firePowerSpeed < maxPower) + { + firePowerSpeed += Time.deltaTime * firePowerSpeed; + } + if (fire && Input.GetButtonUp("Fire1")) + { + bow.Shoot(firePowerSpeed); + firePowerSpeed = 0; + fire = false; + } + + if (fire) + { + firePowerText.text = "Fire Power: " + firePowerSpeed.ToString("F0"); + } + else + { + firePowerText.text = "Fire Power: 0"; + } + } +} diff --git a/Assets/Scripts/Weapons/BowArrow.cs.meta b/Assets/BowShooting.cs.meta similarity index 83% rename from Assets/Scripts/Weapons/BowArrow.cs.meta rename to Assets/BowShooting.cs.meta index c6c39b1a89360ce4d150492e2a62a749cc92d355..4563b42c314999620ce99d9c35ebd6fed434481d 100644 --- a/Assets/Scripts/Weapons/BowArrow.cs.meta +++ b/Assets/BowShooting.cs.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: d2f7906b9415c334c905e7c2ba9656dd +guid: 38752377bbdcf8e4398fd1991659fe8e MonoImporter: externalObjects: {} serializedVersion: 2 diff --git a/Assets/Prefabs/Arrow.prefab b/Assets/Prefabs/Arrow.prefab new file mode 100644 index 0000000000000000000000000000000000000000..d767e7a6f91305f90fa2f0da19d43368d0e8ec0c --- /dev/null +++ b/Assets/Prefabs/Arrow.prefab @@ -0,0 +1,147 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &1296394632763501573 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1296394632763501574} + - component: {fileID: 1296394632763501569} + - component: {fileID: 1296394632763501568} + - component: {fileID: 1296394632763501575} + - component: {fileID: 3552934484598700885} + - component: {fileID: 5421094194298167727} + - component: {fileID: 4596486912613088293} + m_Layer: 0 + m_Name: Arrow + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1296394632763501574 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1296394632763501573} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 5.41, y: 1.2783, z: 0.39} + m_LocalScale: {x: -0.22059587, y: -0.069385, z: 3.0713413} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &1296394632763501569 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1296394632763501573} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!23 &1296394632763501568 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1296394632763501573} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0} + - {fileID: 15303, guid: 0000000000000000f000000000000000, type: 0} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!65 &1296394632763501575 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1296394632763501573} + m_Material: {fileID: 0} + m_IsTrigger: 1 + m_Enabled: 1 + serializedVersion: 2 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!54 &3552934484598700885 +Rigidbody: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1296394632763501573} + serializedVersion: 2 + m_Mass: 1 + m_Drag: 0 + m_AngularDrag: 0.05 + m_UseGravity: 1 + m_IsKinematic: 1 + m_Interpolate: 0 + m_Constraints: 0 + m_CollisionDetection: 3 +--- !u!114 &5421094194298167727 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1296394632763501573} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: da348a6d25867504f8136c70a27824c8, type: 3} + m_Name: + m_EditorClassIdentifier: + damage: 50 + torque: 5 + rb: {fileID: 3552934484598700885} +--- !u!65 &4596486912613088293 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1296394632763501573} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 0 + serializedVersion: 2 + m_Size: {x: 0.99999994, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} diff --git a/Assets/Prefabs/Arrow.prefab.meta b/Assets/Prefabs/Arrow.prefab.meta new file mode 100644 index 0000000000000000000000000000000000000000..a9a0a503d970cd0f3e299b330bc5af8f9a304560 --- /dev/null +++ b/Assets/Prefabs/Arrow.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: d30cbd661c68d9a4eae6f5ca6069e3ee +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scenes/Level_01.unity b/Assets/Scenes/Level_01.unity index 7ff0cd00424446d90eac288241e44f29bfd4c73d..c124181e4ddef1f233ff22cd9702c4411ce2d960 100644 --- a/Assets/Scenes/Level_01.unity +++ b/Assets/Scenes/Level_01.unity @@ -968,7 +968,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 919132149155446097, guid: abb0f8985aeba6042ab01fe6fafae663, type: 3} propertyPath: m_IsActive - value: 0 + value: 1 objectReference: {fileID: 0} - target: {fileID: 919132149155446097, guid: abb0f8985aeba6042ab01fe6fafae663, type: 3} propertyPath: m_TagString @@ -976,6 +976,11 @@ PrefabInstance: objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: abb0f8985aeba6042ab01fe6fafae663, type: 3} +--- !u!4 &118742021 stripped +Transform: + m_CorrespondingSourceObject: {fileID: -8679921383154817045, guid: abb0f8985aeba6042ab01fe6fafae663, type: 3} + m_PrefabInstance: {fileID: 118742020} + m_PrefabAsset: {fileID: 0} --- !u!1 &139768531 GameObject: m_ObjectHideFlags: 0 @@ -1228,6 +1233,107 @@ PrefabInstance: objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 751f7137cfffd4a16b1a4c191e687d64, type: 3} +--- !u!1 &181341723 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 181341724} + - component: {fileID: 181341727} + - component: {fileID: 181341726} + - component: {fileID: 181341725} + m_Layer: 5 + m_Name: Canvas + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &181341724 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 181341723} + 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_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 522733788} + m_Father: {fileID: 118742021} + m_RootOrder: 1 + 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!114 &181341725 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 181341723} + 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 &181341726 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 181341723} + 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 + m_PresetInfoIsWorld: 0 +--- !u!223 &181341727 +Canvas: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 181341723} + 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: 25 + m_SortingLayerID: 0 + m_SortingOrder: 0 + m_TargetDisplay: 0 --- !u!1001 &192429830 PrefabInstance: m_ObjectHideFlags: 0 @@ -8010,6 +8116,141 @@ PrefabInstance: objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: c0134381ae00c4c55871549e355e5943, type: 3} +--- !u!1 &522733787 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 522733788} + - component: {fileID: 522733790} + - component: {fileID: 522733789} + m_Layer: 5 + m_Name: Text (TMP) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &522733788 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 522733787} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 181341724} + 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: 381, y: -235} + m_SizeDelta: {x: 200, y: 50} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &522733789 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 522733787} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_text: 'Power : 0' + m_isRightToLeft: 0 + m_fontAsset: {fileID: 11400000, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} + m_sharedMaterial: {fileID: 2180264, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} + m_fontSharedMaterials: [] + m_fontMaterial: {fileID: 0} + m_fontMaterials: [] + m_fontColor32: + serializedVersion: 2 + rgba: 4294967295 + m_fontColor: {r: 1, g: 1, b: 1, a: 1} + m_enableVertexGradient: 0 + m_colorMode: 3 + m_fontColorGradient: + topLeft: {r: 1, g: 1, b: 1, a: 1} + topRight: {r: 1, g: 1, b: 1, a: 1} + bottomLeft: {r: 1, g: 1, b: 1, a: 1} + bottomRight: {r: 1, g: 1, b: 1, a: 1} + m_fontColorGradientPreset: {fileID: 0} + m_spriteAsset: {fileID: 0} + m_tintAllSprites: 0 + m_StyleSheet: {fileID: 0} + m_TextStyleHashCode: -1183493901 + m_overrideHtmlColors: 0 + m_faceColor: + serializedVersion: 2 + rgba: 4294967295 + m_fontSize: 36 + m_fontSizeBase: 36 + m_fontWeight: 400 + m_enableAutoSizing: 0 + m_fontSizeMin: 18 + m_fontSizeMax: 72 + m_fontStyle: 0 + m_HorizontalAlignment: 1 + m_VerticalAlignment: 256 + m_textAlignment: 65535 + m_characterSpacing: 0 + m_wordSpacing: 0 + m_lineSpacing: 0 + m_lineSpacingMax: 0 + m_paragraphSpacing: 0 + m_charWidthMaxAdj: 0 + m_enableWordWrapping: 1 + m_wordWrappingRatios: 0.4 + m_overflowMode: 0 + m_linkedTextComponent: {fileID: 0} + parentLinkedComponent: {fileID: 0} + m_enableKerning: 1 + m_enableExtraPadding: 0 + checkPaddingRequired: 0 + m_isRichText: 1 + m_parseCtrlCharacters: 1 + m_isOrthographic: 1 + m_isCullingEnabled: 0 + m_horizontalMapping: 0 + m_verticalMapping: 0 + m_uvLineOffset: 0 + m_geometrySortingOrder: 0 + m_IsTextObjectScaleStatic: 0 + m_VertexBufferAutoSizeReduction: 0 + m_useMaxVisibleDescender: 1 + m_pageToDisplay: 1 + m_margin: {x: 0, y: 0, z: 0, w: 0} + m_isUsingLegacyAnimationComponent: 0 + m_isVolumetricText: 0 + m_hasFontAssetChanged: 0 + m_baseMaterial: {fileID: 0} + m_maskOffset: {x: 0, y: 0, z: 0, w: 0} +--- !u!222 &522733790 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 522733787} + m_CullTransparentMesh: 1 --- !u!1 &548907749 GameObject: m_ObjectHideFlags: 0 @@ -9012,6 +9253,37 @@ CanvasRenderer: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 687750042} m_CullTransparentMesh: 1 +--- !u!1 &703166366 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 703166367} + m_Layer: 0 + m_Name: SpawnPoint + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &703166367 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 703166366} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 118742021} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1001 &712265981 PrefabInstance: m_ObjectHideFlags: 0 @@ -9976,10 +10248,18 @@ PrefabInstance: m_Modification: m_TransformParent: {fileID: 0} m_Modifications: + - target: {fileID: 100002, guid: f1d84cc28597f5641a3d9cbc4df7e306, type: 3} + propertyPath: m_IsActive + value: 0 + objectReference: {fileID: 0} - target: {fileID: 100002, guid: f1d84cc28597f5641a3d9cbc4df7e306, type: 3} propertyPath: m_TagString value: Rifle objectReference: {fileID: 0} + - target: {fileID: 100006, guid: f1d84cc28597f5641a3d9cbc4df7e306, type: 3} + propertyPath: m_IsActive + value: 0 + objectReference: {fileID: 0} - target: {fileID: 100006, guid: f1d84cc28597f5641a3d9cbc4df7e306, type: 3} propertyPath: m_TagString value: PlayerWeapon @@ -16462,13 +16742,15 @@ GameObject: - component: {fileID: 1493232825} - component: {fileID: 1493232824} - component: {fileID: 1493232823} + - component: {fileID: 1493232830} + - component: {fileID: 1493232829} m_Layer: 0 m_Name: CrossbowEnd m_TagString: PlayerWeapon m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 - m_IsActive: 0 + m_IsActive: 1 --- !u!4 &1493232822 Transform: m_ObjectHideFlags: 0 @@ -16491,7 +16773,7 @@ MonoBehaviour: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1493232821} - m_Enabled: 1 + m_Enabled: 0 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 27c63be2a8918c741863160b9d9da122, type: 3} m_Name: @@ -21608,6 +21890,40 @@ ParticleSystem: m_PostInfinity: 2 m_RotationOrder: 4 vectorLabel1_3: W +--- !u!114 &1493232829 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1493232821} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: b94516f3ae4722a49bc7b0b72c821256, type: 3} + m_Name: + m_EditorClassIdentifier: + arrowPrefab: {fileID: 5421094194298167727, guid: d30cbd661c68d9a4eae6f5ca6069e3ee, type: 3} + arrowSpawn: {fileID: 703166367} + Reloading: 0 +--- !u!114 &1493232830 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1493232821} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 38752377bbdcf8e4398fd1991659fe8e, type: 3} + m_Name: + m_EditorClassIdentifier: + firePowerText: {fileID: 522733789} + bow: {fileID: 1493232829} + maxPower: 50 + rotationspeed: 5 + minRotation: -50 + maxRotation: 50 + angle: 15 --- !u!1 &1500555570 GameObject: m_ObjectHideFlags: 0 @@ -23565,7 +23881,6 @@ MonoBehaviour: m_EditorClassIdentifier: warningText: {fileID: 1970749372} playerHealth: {fileID: 624092170} - scoreboard: {fileID: 1788874781} --- !u!114 &1939156178 MonoBehaviour: m_ObjectHideFlags: 0 diff --git a/Assets/Scripts/Quest/QuestManager.cs b/Assets/Scripts/Quest/QuestManager.cs index 5416a5bdbe611c95e56973d7eee50198322f5fee..0828f52ed40650f9b2bfcaf81b4599dbf1b5f08f 100644 --- a/Assets/Scripts/Quest/QuestManager.cs +++ b/Assets/Scripts/Quest/QuestManager.cs @@ -48,7 +48,7 @@ public class QuestManager : MonoBehaviour anim = GetComponent<Animator>(); timeProgress.text = "00:00:00"; time = 0f; - + questItems.Add(new QuestItem( "Kill 5 Zombunnies and 4 Zombears", new List<string> { "Kill 5 Zombunnies", "Kill 4 Zombears" }, diff --git a/Assets/Scripts/Weapons/Arrow.cs b/Assets/Scripts/Weapons/Arrow.cs new file mode 100644 index 0000000000000000000000000000000000000000..c45bb01cf4b94510e02d34e46b0de33bb159bdb1 --- /dev/null +++ b/Assets/Scripts/Weapons/Arrow.cs @@ -0,0 +1,40 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +public class Arrow : MonoBehaviour +{ + // Start is called before the first frame update + [SerializeField] + private int damage; + + [SerializeField] + private float torque; + + public Rigidbody rb; + private bool didHit; + + public void Fly(Vector3 force){ + rb.isKinematic = false; + rb.AddForce(force, ForceMode.Impulse); + rb.AddTorque(transform.right * torque); + transform.parent = null; + } + + void OnTriggerEnter(Collider other){ + if (didHit) return; + if (other.gameObject.tag == "Player") return; + didHit = true; + Debug.Log("Hit something"); + Debug.Log(other.gameObject.tag); + if (other.gameObject.tag == "Enemy"){ + Debug.Log("Hit enemy"); + other.GetComponent<EnemyHealth>().TakeDamage(damage, transform.position); + } + + rb.velocity = Vector3.zero; + rb.angularVelocity = Vector3.zero; + rb.isKinematic = true; + transform.parent = other.transform; + } +} diff --git a/Assets/Scripts/Weapons/Arrow.cs.meta b/Assets/Scripts/Weapons/Arrow.cs.meta new file mode 100644 index 0000000000000000000000000000000000000000..7cb55076d5d38fc28dc6943605d4cc6984d6bdf3 --- /dev/null +++ b/Assets/Scripts/Weapons/Arrow.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: da348a6d25867504f8136c70a27824c8 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/Weapons/Bow.cs b/Assets/Scripts/Weapons/Bow.cs new file mode 100644 index 0000000000000000000000000000000000000000..b76eb5da6db96906c9be215936b163f9beb2029d --- /dev/null +++ b/Assets/Scripts/Weapons/Bow.cs @@ -0,0 +1,42 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +public class Bow : MonoBehaviour +{ + // Start is called before the first frame update + private float timeBtwShots = 1f; + public Arrow arrowPrefab; + public Transform arrowSpawn; + private Arrow arrow; + + public bool Reloading; + + public void Reload() + { + if (Reloading) return; + StartCoroutine(ReloadCoroutine()); + } + + private IEnumerator ReloadCoroutine() + { + yield return new WaitForSeconds(timeBtwShots); + arrow = Instantiate(arrowPrefab, arrowSpawn); + arrow.transform.localPosition = Vector3.zero; + Reloading = false; + } + + public void Shoot(float power) + { + if (Reloading || arrow==null) return; + var force = arrowSpawn.TransformDirection(Vector3.forward * power); + arrow.Fly(force); + arrow = null; + Reload(); + } + + public bool CanShoot() + { + return (arrow != null && !Reloading); + } +} diff --git a/Assets/Scripts/Weapons/Bow.cs.meta b/Assets/Scripts/Weapons/Bow.cs.meta new file mode 100644 index 0000000000000000000000000000000000000000..5051a762e7832084ecf3bc66c4e4b2b50e873a31 --- /dev/null +++ b/Assets/Scripts/Weapons/Bow.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: b94516f3ae4722a49bc7b0b72c821256 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/Weapons/BowArrow.cs b/Assets/Scripts/Weapons/BowArrow.cs deleted file mode 100644 index 25300ae370868348b93b5a57fa11717926846e86..0000000000000000000000000000000000000000 --- a/Assets/Scripts/Weapons/BowArrow.cs +++ /dev/null @@ -1,18 +0,0 @@ -using System.Collections; -using System.Collections.Generic; -using UnityEngine; - -public class BowArrow : MonoBehaviour -{ - // Start is called before the first frame update - void Start() - { - - } - - // Update is called once per frame - void Update() - { - - } -}