From 15ab77cd910c6b6facd75b52fe559437fe9a6f26 Mon Sep 17 00:00:00 2001 From: teascade Date: Fri, 14 Aug 2020 17:47:14 +0300 Subject: [PATCH] Move Raygun to it's own prefab, create item, and rename Sniper to Raygun --- .../Items/{SniperRifle.meta => Raygun.meta} | 0 Assets/Items/Raygun.prefab | 399 +++++++++++++ Assets/Items/Raygun.prefab.meta | 7 + Assets/Items/{SniperRifle => Raygun}/Gear.png | Bin .../{SniperRifle => Raygun}/Gear.png.meta | 0 .../GunAnimatorController.controller | 2 +- .../GunAnimatorController.controller.meta | 0 .../{SniperRifle => Raygun}/GunIdle.anim | 0 .../{SniperRifle => Raygun}/GunIdle.anim.meta | 0 .../{SniperRifle => Raygun}/GunShot.anim | 0 .../{SniperRifle => Raygun}/GunShot.anim.meta | 0 .../{SniperRifle => Raygun}/GunWalk.anim | 0 .../{SniperRifle => Raygun}/GunWalk.anim.meta | 0 .../{SniperRifle => Raygun}/Laser.prefab | 0 .../{SniperRifle => Raygun}/Laser.prefab.meta | 0 .../{SniperRifle => Raygun}/LaserFast.mp3 | Bin .../LaserFast.mp3.meta | 0 .../{SniperRifle => Raygun}/LaserShot.ogg | Bin .../LaserShot.ogg.meta | 0 .../LaserWithRecovery.mp3 | Bin .../LaserWithRecovery.mp3.meta | 0 .../LaserWithRecoveryEdited.ogg | Bin .../LaserWithRecoveryEdited.ogg.meta | 0 .../SniperRifle.fbx => Raygun/Raygun.fbx} | Bin .../Raygun.fbx.meta} | 0 .../RifleMetal.mat => Raygun/RaygunMat.mat} | 2 +- .../RaygunMat.mat.meta} | 0 .../Items/{SniperRifle => Raygun}/Scope.mat | 0 .../{SniperRifle => Raygun}/Scope.mat.meta | 0 .../ScopeRenderTexture.renderTexture | 0 .../ScopeRenderTexture.renderTexture.meta | 0 .../ScopeShader.shadergraph | 0 .../ScopeShader.shadergraph.meta | 0 .../ShootLaserTrail.mat | 0 .../ShootLaserTrail.mat.meta | 0 Assets/Player/Player.prefab | 556 +++++------------- Assets/Scripts/Items.meta | 8 + Assets/Scripts/Items/Item.cs | 16 + Assets/Scripts/Items/Item.cs.meta | 11 + Assets/Scripts/Items/Raygun.cs | 79 +++ Assets/Scripts/Items/Raygun.cs.meta | 11 + Assets/Scripts/Players/Player.cs | 63 +- 42 files changed, 692 insertions(+), 462 deletions(-) rename Assets/Items/{SniperRifle.meta => Raygun.meta} (100%) create mode 100644 Assets/Items/Raygun.prefab create mode 100644 Assets/Items/Raygun.prefab.meta rename Assets/Items/{SniperRifle => Raygun}/Gear.png (100%) rename Assets/Items/{SniperRifle => Raygun}/Gear.png.meta (100%) rename Assets/Items/{SniperRifle => Raygun}/GunAnimatorController.controller (99%) rename Assets/Items/{SniperRifle => Raygun}/GunAnimatorController.controller.meta (100%) rename Assets/Items/{SniperRifle => Raygun}/GunIdle.anim (100%) rename Assets/Items/{SniperRifle => Raygun}/GunIdle.anim.meta (100%) rename Assets/Items/{SniperRifle => Raygun}/GunShot.anim (100%) rename Assets/Items/{SniperRifle => Raygun}/GunShot.anim.meta (100%) rename Assets/Items/{SniperRifle => Raygun}/GunWalk.anim (100%) rename Assets/Items/{SniperRifle => Raygun}/GunWalk.anim.meta (100%) rename Assets/Items/{SniperRifle => Raygun}/Laser.prefab (100%) rename Assets/Items/{SniperRifle => Raygun}/Laser.prefab.meta (100%) rename Assets/Items/{SniperRifle => Raygun}/LaserFast.mp3 (100%) rename Assets/Items/{SniperRifle => Raygun}/LaserFast.mp3.meta (100%) rename Assets/Items/{SniperRifle => Raygun}/LaserShot.ogg (100%) rename Assets/Items/{SniperRifle => Raygun}/LaserShot.ogg.meta (100%) rename Assets/Items/{SniperRifle => Raygun}/LaserWithRecovery.mp3 (100%) rename Assets/Items/{SniperRifle => Raygun}/LaserWithRecovery.mp3.meta (100%) rename Assets/Items/{SniperRifle => Raygun}/LaserWithRecoveryEdited.ogg (100%) rename Assets/Items/{SniperRifle => Raygun}/LaserWithRecoveryEdited.ogg.meta (100%) rename Assets/Items/{SniperRifle/SniperRifle.fbx => Raygun/Raygun.fbx} (100%) rename Assets/Items/{SniperRifle/SniperRifle.fbx.meta => Raygun/Raygun.fbx.meta} (100%) rename Assets/Items/{SniperRifle/RifleMetal.mat => Raygun/RaygunMat.mat} (99%) rename Assets/Items/{SniperRifle/RifleMetal.mat.meta => Raygun/RaygunMat.mat.meta} (100%) rename Assets/Items/{SniperRifle => Raygun}/Scope.mat (100%) rename Assets/Items/{SniperRifle => Raygun}/Scope.mat.meta (100%) rename Assets/Items/{SniperRifle => Raygun}/ScopeRenderTexture.renderTexture (100%) rename Assets/Items/{SniperRifle => Raygun}/ScopeRenderTexture.renderTexture.meta (100%) rename Assets/Items/{SniperRifle => Raygun}/ScopeShader.shadergraph (100%) rename Assets/Items/{SniperRifle => Raygun}/ScopeShader.shadergraph.meta (100%) rename Assets/Items/{SniperRifle => Raygun}/ShootLaserTrail.mat (100%) rename Assets/Items/{SniperRifle => Raygun}/ShootLaserTrail.mat.meta (100%) create mode 100644 Assets/Scripts/Items.meta create mode 100644 Assets/Scripts/Items/Item.cs create mode 100644 Assets/Scripts/Items/Item.cs.meta create mode 100644 Assets/Scripts/Items/Raygun.cs create mode 100644 Assets/Scripts/Items/Raygun.cs.meta diff --git a/Assets/Items/SniperRifle.meta b/Assets/Items/Raygun.meta similarity index 100% rename from Assets/Items/SniperRifle.meta rename to Assets/Items/Raygun.meta diff --git a/Assets/Items/Raygun.prefab b/Assets/Items/Raygun.prefab new file mode 100644 index 0000000..07d64a7 --- /dev/null +++ b/Assets/Items/Raygun.prefab @@ -0,0 +1,399 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &3010079138158606711 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2151691675794878267} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 114f8f02ec9ed22488ee2bc97f60f6f3, type: 3} + m_Name: + m_EditorClassIdentifier: + RenderTextureToCopy: {fileID: 8400000, guid: f3187e94a6fef04428cc361250daa902, type: 2} + Camera: {fileID: 0} + Renderer: {fileID: 494450782322855662} + MaterialIndex: 1 +--- !u!1 &4140220380674628973 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 606707962148492301} + - component: {fileID: 7648489415013749098} + m_Layer: 0 + m_Name: GunshotSfx + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &606707962148492301 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4140220380674628973} + 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: 9048980524933835922} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!82 &7648489415013749098 +AudioSource: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4140220380674628973} + m_Enabled: 1 + serializedVersion: 4 + OutputAudioMixerGroup: {fileID: -1410552352759146441, guid: ff7bf5284859d9f45a64971a67bb173a, type: 2} + m_audioClip: {fileID: 0} + m_PlayOnAwake: 0 + m_Volume: 1 + m_Pitch: 1 + Loop: 0 + Mute: 0 + Spatialize: 0 + SpatializePostEffects: 0 + Priority: 128 + DopplerLevel: 0 + MinDistance: 2 + MaxDistance: 1000 + Pan2D: 0 + rolloffMode: 0 + BypassEffects: 0 + BypassListenerEffects: 0 + BypassReverbZones: 0 + rolloffCustomCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + panLevelCustomCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + spreadCustomCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + reverbZoneMixCustomCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 +--- !u!1 &4278392104837948798 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1605033999665909937} + m_Layer: 0 + m_Name: GunHandle + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1605033999665909937 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4278392104837948798} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0.112, z: -0.173} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 4677107243738498813} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &5022353220472231776 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4677107243738498813} + - component: {fileID: 5603130069753505478} + m_Layer: 0 + m_Name: Raygun + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &4677107243738498813 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5022353220472231776} + 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: + - {fileID: 1605033999665909937} + - {fileID: 264070833573311472} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &5603130069753505478 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5022353220472231776} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 65eee2dbd7da6664dbbe31e2c926fdba, type: 3} + m_Name: + m_EditorClassIdentifier: + RaygunCooldown: 1 + LaserPrefab: {fileID: 8009551885746485900, guid: 5c99da0361d098646b319a35fcc80095, type: 3} + RaygunAnimator: {fileID: 823779526010534736} + BulletSourcePoint: {fileID: 9048980524933835922} + BulletHitLayer: + serializedVersion: 2 + m_Bits: 768 + BulletPassLayer: + serializedVersion: 2 + m_Bits: 8192 + GunShotAudioSource: {fileID: 7648489415013749098} + RaygunClip: {fileID: 8300000, guid: 643f2f841d3577649b254780ae82bfcf, type: 3} +--- !u!1 &6228136265624521654 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 264070833573311472} + - component: {fileID: 823779526010534736} + m_Layer: 0 + m_Name: GunAnimator + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &264070833573311472 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6228136265624521654} + 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: + - {fileID: 1627919879214167425} + - {fileID: 9048980524933835922} + m_Father: {fileID: 4677107243738498813} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!95 &823779526010534736 +Animator: + serializedVersion: 3 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6228136265624521654} + m_Enabled: 0 + m_Avatar: {fileID: 0} + m_Controller: {fileID: 9100000, guid: 8468d9a1f10314a4c998349493611489, type: 2} + m_CullingMode: 0 + m_UpdateMode: 0 + m_ApplyRootMotion: 0 + m_LinearVelocityBlending: 0 + m_WarningMessage: + m_HasTransformHierarchy: 1 + m_AllowConstantClipSamplingOptimization: 1 + m_KeepAnimatorControllerStateOnDisable: 0 +--- !u!1 &6649619388343910146 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 9048980524933835922} + m_Layer: 0 + m_Name: GunShootPoint + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &9048980524933835922 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6649619388343910146} + m_LocalRotation: {x: -0.000000014901156, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0.121, z: 0.7509999} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 606707962148492301} + m_Father: {fileID: 264070833573311472} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1001 &1233196832275173994 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 264070833573311472} + m_Modifications: + - target: {fileID: -8679921383154817045, guid: 4f2bbe1f3791622448504110deb9f847, type: 3} + propertyPath: m_LocalPosition.x + value: -0.00030055165 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 4f2bbe1f3791622448504110deb9f847, type: 3} + propertyPath: m_LocalPosition.y + value: -0.048959285 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 4f2bbe1f3791622448504110deb9f847, type: 3} + propertyPath: m_LocalPosition.z + value: -0.00051991054 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 4f2bbe1f3791622448504110deb9f847, type: 3} + propertyPath: m_LocalRotation.x + value: 0.0021719388 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 4f2bbe1f3791622448504110deb9f847, type: 3} + propertyPath: m_LocalRotation.y + value: 0.7071036 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 4f2bbe1f3791622448504110deb9f847, type: 3} + propertyPath: m_LocalRotation.z + value: 0.7071033 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 4f2bbe1f3791622448504110deb9f847, type: 3} + propertyPath: m_LocalRotation.w + value: 0.002171528 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 4f2bbe1f3791622448504110deb9f847, type: 3} + propertyPath: m_RootOrder + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 4f2bbe1f3791622448504110deb9f847, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: -90 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 4f2bbe1f3791622448504110deb9f847, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 4f2bbe1f3791622448504110deb9f847, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 180 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 4f2bbe1f3791622448504110deb9f847, type: 3} + propertyPath: m_LocalScale.x + value: 50 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 4f2bbe1f3791622448504110deb9f847, type: 3} + propertyPath: m_LocalScale.y + value: 50 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 4f2bbe1f3791622448504110deb9f847, type: 3} + propertyPath: m_LocalScale.z + value: 50 + objectReference: {fileID: 0} + - target: {fileID: 919132149155446097, guid: 4f2bbe1f3791622448504110deb9f847, type: 3} + propertyPath: m_Name + value: Raygun + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 4f2bbe1f3791622448504110deb9f847, type: 3} +--- !u!1 &2151691675794878267 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 919132149155446097, guid: 4f2bbe1f3791622448504110deb9f847, type: 3} + m_PrefabInstance: {fileID: 1233196832275173994} + m_PrefabAsset: {fileID: 0} +--- !u!4 &1627919879214167425 stripped +Transform: + m_CorrespondingSourceObject: {fileID: -8679921383154817045, guid: 4f2bbe1f3791622448504110deb9f847, type: 3} + m_PrefabInstance: {fileID: 1233196832275173994} + m_PrefabAsset: {fileID: 0} +--- !u!23 &494450782322855662 stripped +MeshRenderer: + m_CorrespondingSourceObject: {fileID: -7511558181221131132, guid: 4f2bbe1f3791622448504110deb9f847, type: 3} + m_PrefabInstance: {fileID: 1233196832275173994} + m_PrefabAsset: {fileID: 0} diff --git a/Assets/Items/Raygun.prefab.meta b/Assets/Items/Raygun.prefab.meta new file mode 100644 index 0000000..22f4fd1 --- /dev/null +++ b/Assets/Items/Raygun.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 5e86b3797a8a43e48abf11dc89da8b00 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Items/SniperRifle/Gear.png b/Assets/Items/Raygun/Gear.png similarity index 100% rename from Assets/Items/SniperRifle/Gear.png rename to Assets/Items/Raygun/Gear.png diff --git a/Assets/Items/SniperRifle/Gear.png.meta b/Assets/Items/Raygun/Gear.png.meta similarity index 100% rename from Assets/Items/SniperRifle/Gear.png.meta rename to Assets/Items/Raygun/Gear.png.meta diff --git a/Assets/Items/SniperRifle/GunAnimatorController.controller b/Assets/Items/Raygun/GunAnimatorController.controller similarity index 99% rename from Assets/Items/SniperRifle/GunAnimatorController.controller rename to Assets/Items/Raygun/GunAnimatorController.controller index 9bc67ad..fdc0083 100644 --- a/Assets/Items/SniperRifle/GunAnimatorController.controller +++ b/Assets/Items/Raygun/GunAnimatorController.controller @@ -163,7 +163,7 @@ AnimatorController: m_DefaultFloat: 0 m_DefaultInt: 0 m_DefaultBool: 0 - m_Controller: {fileID: 0} + m_Controller: {fileID: 9100000} m_AnimatorLayers: - serializedVersion: 5 m_Name: BaseLayer diff --git a/Assets/Items/SniperRifle/GunAnimatorController.controller.meta b/Assets/Items/Raygun/GunAnimatorController.controller.meta similarity index 100% rename from Assets/Items/SniperRifle/GunAnimatorController.controller.meta rename to Assets/Items/Raygun/GunAnimatorController.controller.meta diff --git a/Assets/Items/SniperRifle/GunIdle.anim b/Assets/Items/Raygun/GunIdle.anim similarity index 100% rename from Assets/Items/SniperRifle/GunIdle.anim rename to Assets/Items/Raygun/GunIdle.anim diff --git a/Assets/Items/SniperRifle/GunIdle.anim.meta b/Assets/Items/Raygun/GunIdle.anim.meta similarity index 100% rename from Assets/Items/SniperRifle/GunIdle.anim.meta rename to Assets/Items/Raygun/GunIdle.anim.meta diff --git a/Assets/Items/SniperRifle/GunShot.anim b/Assets/Items/Raygun/GunShot.anim similarity index 100% rename from Assets/Items/SniperRifle/GunShot.anim rename to Assets/Items/Raygun/GunShot.anim diff --git a/Assets/Items/SniperRifle/GunShot.anim.meta b/Assets/Items/Raygun/GunShot.anim.meta similarity index 100% rename from Assets/Items/SniperRifle/GunShot.anim.meta rename to Assets/Items/Raygun/GunShot.anim.meta diff --git a/Assets/Items/SniperRifle/GunWalk.anim b/Assets/Items/Raygun/GunWalk.anim similarity index 100% rename from Assets/Items/SniperRifle/GunWalk.anim rename to Assets/Items/Raygun/GunWalk.anim diff --git a/Assets/Items/SniperRifle/GunWalk.anim.meta b/Assets/Items/Raygun/GunWalk.anim.meta similarity index 100% rename from Assets/Items/SniperRifle/GunWalk.anim.meta rename to Assets/Items/Raygun/GunWalk.anim.meta diff --git a/Assets/Items/SniperRifle/Laser.prefab b/Assets/Items/Raygun/Laser.prefab similarity index 100% rename from Assets/Items/SniperRifle/Laser.prefab rename to Assets/Items/Raygun/Laser.prefab diff --git a/Assets/Items/SniperRifle/Laser.prefab.meta b/Assets/Items/Raygun/Laser.prefab.meta similarity index 100% rename from Assets/Items/SniperRifle/Laser.prefab.meta rename to Assets/Items/Raygun/Laser.prefab.meta diff --git a/Assets/Items/SniperRifle/LaserFast.mp3 b/Assets/Items/Raygun/LaserFast.mp3 similarity index 100% rename from Assets/Items/SniperRifle/LaserFast.mp3 rename to Assets/Items/Raygun/LaserFast.mp3 diff --git a/Assets/Items/SniperRifle/LaserFast.mp3.meta b/Assets/Items/Raygun/LaserFast.mp3.meta similarity index 100% rename from Assets/Items/SniperRifle/LaserFast.mp3.meta rename to Assets/Items/Raygun/LaserFast.mp3.meta diff --git a/Assets/Items/SniperRifle/LaserShot.ogg b/Assets/Items/Raygun/LaserShot.ogg similarity index 100% rename from Assets/Items/SniperRifle/LaserShot.ogg rename to Assets/Items/Raygun/LaserShot.ogg diff --git a/Assets/Items/SniperRifle/LaserShot.ogg.meta b/Assets/Items/Raygun/LaserShot.ogg.meta similarity index 100% rename from Assets/Items/SniperRifle/LaserShot.ogg.meta rename to Assets/Items/Raygun/LaserShot.ogg.meta diff --git a/Assets/Items/SniperRifle/LaserWithRecovery.mp3 b/Assets/Items/Raygun/LaserWithRecovery.mp3 similarity index 100% rename from Assets/Items/SniperRifle/LaserWithRecovery.mp3 rename to Assets/Items/Raygun/LaserWithRecovery.mp3 diff --git a/Assets/Items/SniperRifle/LaserWithRecovery.mp3.meta b/Assets/Items/Raygun/LaserWithRecovery.mp3.meta similarity index 100% rename from Assets/Items/SniperRifle/LaserWithRecovery.mp3.meta rename to Assets/Items/Raygun/LaserWithRecovery.mp3.meta diff --git a/Assets/Items/SniperRifle/LaserWithRecoveryEdited.ogg b/Assets/Items/Raygun/LaserWithRecoveryEdited.ogg similarity index 100% rename from Assets/Items/SniperRifle/LaserWithRecoveryEdited.ogg rename to Assets/Items/Raygun/LaserWithRecoveryEdited.ogg diff --git a/Assets/Items/SniperRifle/LaserWithRecoveryEdited.ogg.meta b/Assets/Items/Raygun/LaserWithRecoveryEdited.ogg.meta similarity index 100% rename from Assets/Items/SniperRifle/LaserWithRecoveryEdited.ogg.meta rename to Assets/Items/Raygun/LaserWithRecoveryEdited.ogg.meta diff --git a/Assets/Items/SniperRifle/SniperRifle.fbx b/Assets/Items/Raygun/Raygun.fbx similarity index 100% rename from Assets/Items/SniperRifle/SniperRifle.fbx rename to Assets/Items/Raygun/Raygun.fbx diff --git a/Assets/Items/SniperRifle/SniperRifle.fbx.meta b/Assets/Items/Raygun/Raygun.fbx.meta similarity index 100% rename from Assets/Items/SniperRifle/SniperRifle.fbx.meta rename to Assets/Items/Raygun/Raygun.fbx.meta diff --git a/Assets/Items/SniperRifle/RifleMetal.mat b/Assets/Items/Raygun/RaygunMat.mat similarity index 99% rename from Assets/Items/SniperRifle/RifleMetal.mat rename to Assets/Items/Raygun/RaygunMat.mat index a373d22..6ac7eab 100644 --- a/Assets/Items/SniperRifle/RifleMetal.mat +++ b/Assets/Items/Raygun/RaygunMat.mat @@ -7,7 +7,7 @@ Material: m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_Name: RifleMetal + m_Name: RaygunMat m_Shader: {fileID: 4800000, guid: 650dd9526735d5b46b79224bc6e94025, type: 3} m_ShaderKeywords: m_LightmapFlags: 4 diff --git a/Assets/Items/SniperRifle/RifleMetal.mat.meta b/Assets/Items/Raygun/RaygunMat.mat.meta similarity index 100% rename from Assets/Items/SniperRifle/RifleMetal.mat.meta rename to Assets/Items/Raygun/RaygunMat.mat.meta diff --git a/Assets/Items/SniperRifle/Scope.mat b/Assets/Items/Raygun/Scope.mat similarity index 100% rename from Assets/Items/SniperRifle/Scope.mat rename to Assets/Items/Raygun/Scope.mat diff --git a/Assets/Items/SniperRifle/Scope.mat.meta b/Assets/Items/Raygun/Scope.mat.meta similarity index 100% rename from Assets/Items/SniperRifle/Scope.mat.meta rename to Assets/Items/Raygun/Scope.mat.meta diff --git a/Assets/Items/SniperRifle/ScopeRenderTexture.renderTexture b/Assets/Items/Raygun/ScopeRenderTexture.renderTexture similarity index 100% rename from Assets/Items/SniperRifle/ScopeRenderTexture.renderTexture rename to Assets/Items/Raygun/ScopeRenderTexture.renderTexture diff --git a/Assets/Items/SniperRifle/ScopeRenderTexture.renderTexture.meta b/Assets/Items/Raygun/ScopeRenderTexture.renderTexture.meta similarity index 100% rename from Assets/Items/SniperRifle/ScopeRenderTexture.renderTexture.meta rename to Assets/Items/Raygun/ScopeRenderTexture.renderTexture.meta diff --git a/Assets/Items/SniperRifle/ScopeShader.shadergraph b/Assets/Items/Raygun/ScopeShader.shadergraph similarity index 100% rename from Assets/Items/SniperRifle/ScopeShader.shadergraph rename to Assets/Items/Raygun/ScopeShader.shadergraph diff --git a/Assets/Items/SniperRifle/ScopeShader.shadergraph.meta b/Assets/Items/Raygun/ScopeShader.shadergraph.meta similarity index 100% rename from Assets/Items/SniperRifle/ScopeShader.shadergraph.meta rename to Assets/Items/Raygun/ScopeShader.shadergraph.meta diff --git a/Assets/Items/SniperRifle/ShootLaserTrail.mat b/Assets/Items/Raygun/ShootLaserTrail.mat similarity index 100% rename from Assets/Items/SniperRifle/ShootLaserTrail.mat rename to Assets/Items/Raygun/ShootLaserTrail.mat diff --git a/Assets/Items/SniperRifle/ShootLaserTrail.mat.meta b/Assets/Items/Raygun/ShootLaserTrail.mat.meta similarity index 100% rename from Assets/Items/SniperRifle/ShootLaserTrail.mat.meta rename to Assets/Items/Raygun/ShootLaserTrail.mat.meta diff --git a/Assets/Player/Player.prefab b/Assets/Player/Player.prefab index fa07d4a..3a6c37e 100644 --- a/Assets/Player/Player.prefab +++ b/Assets/Player/Player.prefab @@ -75,37 +75,6 @@ CharacterJoint: m_EnablePreprocessing: 0 m_MassScale: 1 m_ConnectedMassScale: 1 ---- !u!1 &379718841342258282 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 2637233632139837434} - m_Layer: 0 - m_Name: GunShootPoint - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &2637233632139837434 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 379718841342258282} - m_LocalRotation: {x: -0.000000014901156, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0.121, z: 0.7509999} - m_LocalScale: {x: 1, y: 1, z: 1} - m_Children: - - {fileID: 5865459614374463333} - m_Father: {fileID: 6532210512705233048} - m_RootOrder: 1 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!54 &8868938323945612026 Rigidbody: m_ObjectHideFlags: 0 @@ -181,58 +150,6 @@ CharacterJoint: m_EnablePreprocessing: 0 m_MassScale: 1 m_ConnectedMassScale: 1 ---- !u!1 &1108995136692721886 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 6532210512705233048} - - component: {fileID: 5936763286718212152} - m_Layer: 0 - m_Name: GunAnimator - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &6532210512705233048 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1108995136692721886} - 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: - - {fileID: 5736092089644017385} - - {fileID: 2637233632139837434} - m_Father: {fileID: 1865991757674780053} - m_RootOrder: 1 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!95 &5936763286718212152 -Animator: - serializedVersion: 3 - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1108995136692721886} - m_Enabled: 0 - m_Avatar: {fileID: 0} - m_Controller: {fileID: 9100000, guid: 8468d9a1f10314a4c998349493611489, type: 2} - m_CullingMode: 0 - m_UpdateMode: 0 - m_ApplyRootMotion: 0 - m_LinearVelocityBlending: 0 - m_WarningMessage: - m_HasTransformHierarchy: 1 - m_AllowConstantClipSamplingOptimization: 1 - m_KeepAnimatorControllerStateOnDisable: 0 --- !u!54 &1617471945994730930 Rigidbody: m_ObjectHideFlags: 0 @@ -377,38 +294,6 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: Speed: 10 ---- !u!1 &2071588178488902664 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1865991757674780053} - m_Layer: 0 - m_Name: Gun - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &1865991757674780053 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 2071588178488902664} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0.15, y: -0.27100003, z: 0.309} - m_LocalScale: {x: 1, y: 1, z: 1} - m_Children: - - {fileID: 5713660789478474713} - - {fileID: 6532210512705233048} - m_Father: {fileID: 4833458671639168932} - m_RootOrder: 1 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!54 &3034403183751315802 Rigidbody: m_ObjectHideFlags: 0 @@ -933,22 +818,6 @@ CharacterJoint: m_EnablePreprocessing: 0 m_MassScale: 1 m_ConnectedMassScale: 1 ---- !u!114 &8126968570320153119 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 4958852355926309971} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 114f8f02ec9ed22488ee2bc97f60f6f3, type: 3} - m_Name: - m_EditorClassIdentifier: - RenderTextureToCopy: {fileID: 8400000, guid: f3187e94a6fef04428cc361250daa902, type: 2} - Camera: {fileID: 8440773692779321063} - Renderer: {fileID: 6904472884974394758} - MaterialIndex: 1 --- !u!54 &6926105415076449191 Rigidbody: m_ObjectHideFlags: 0 @@ -1323,7 +1192,7 @@ CharacterJoint: m_EnablePreprocessing: 0 m_MassScale: 1 m_ConnectedMassScale: 1 ---- !u!1 &6951373490603822597 +--- !u!1 &6689431852042077044 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} @@ -1331,125 +1200,29 @@ GameObject: m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - - component: {fileID: 5865459614374463333} - - component: {fileID: 3686721060470342146} + - component: {fileID: 7302109350035064781} m_Layer: 0 - m_Name: GunshotSfx + m_Name: ItemRoot m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 ---- !u!4 &5865459614374463333 +--- !u!4 &7302109350035064781 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 6951373490603822597} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} + m_GameObject: {fileID: 6689431852042077044} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0.15, y: -0.271, z: 0.309} m_LocalScale: {x: 1, y: 1, z: 1} - m_Children: [] - m_Father: {fileID: 2637233632139837434} - m_RootOrder: 0 + m_Children: + - {fileID: 1865991757674780053} + m_Father: {fileID: 4833458671639168932} + m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!82 &3686721060470342146 -AudioSource: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 6951373490603822597} - m_Enabled: 1 - serializedVersion: 4 - OutputAudioMixerGroup: {fileID: -1410552352759146441, guid: ff7bf5284859d9f45a64971a67bb173a, type: 2} - m_audioClip: {fileID: 0} - m_PlayOnAwake: 0 - m_Volume: 1 - m_Pitch: 1 - Loop: 0 - Mute: 0 - Spatialize: 0 - SpatializePostEffects: 0 - Priority: 128 - DopplerLevel: 0 - MinDistance: 2 - MaxDistance: 1000 - Pan2D: 0 - rolloffMode: 0 - BypassEffects: 0 - BypassListenerEffects: 0 - BypassReverbZones: 0 - rolloffCustomCurve: - serializedVersion: 2 - m_Curve: - - serializedVersion: 3 - time: 0 - value: 1 - inSlope: 0 - outSlope: 0 - tangentMode: 0 - weightedMode: 0 - inWeight: 0.33333334 - outWeight: 0.33333334 - - serializedVersion: 3 - time: 1 - value: 0 - inSlope: 0 - outSlope: 0 - tangentMode: 0 - weightedMode: 0 - inWeight: 0.33333334 - outWeight: 0.33333334 - m_PreInfinity: 2 - m_PostInfinity: 2 - m_RotationOrder: 4 - panLevelCustomCurve: - serializedVersion: 2 - m_Curve: - - serializedVersion: 3 - time: 0 - value: 1 - inSlope: 0 - outSlope: 0 - tangentMode: 0 - weightedMode: 0 - inWeight: 0.33333334 - outWeight: 0.33333334 - m_PreInfinity: 2 - m_PostInfinity: 2 - m_RotationOrder: 4 - spreadCustomCurve: - serializedVersion: 2 - m_Curve: - - serializedVersion: 3 - time: 0 - value: 0 - inSlope: 0 - outSlope: 0 - tangentMode: 0 - weightedMode: 0 - inWeight: 0.33333334 - outWeight: 0.33333334 - m_PreInfinity: 2 - m_PostInfinity: 2 - m_RotationOrder: 4 - reverbZoneMixCustomCurve: - serializedVersion: 2 - m_Curve: - - serializedVersion: 3 - time: 0 - value: 1 - inSlope: 0 - outSlope: 0 - tangentMode: 0 - weightedMode: 0 - inWeight: 0.33333334 - outWeight: 0.33333334 - m_PreInfinity: 2 - m_PostInfinity: 2 - m_RotationOrder: 4 --- !u!54 &5638940586892031826 Rigidbody: m_ObjectHideFlags: 0 @@ -1555,36 +1328,6 @@ CharacterJoint: m_EnablePreprocessing: 0 m_MassScale: 1 m_ConnectedMassScale: 1 ---- !u!1 &7084970559242515990 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 5713660789478474713} - m_Layer: 0 - m_Name: GunHandle - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &5713660789478474713 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 7084970559242515990} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0.112, z: -0.173} - m_LocalScale: {x: 1, y: 1, z: 1} - m_Children: [] - m_Father: {fileID: 1865991757674780053} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &7376043460032831961 GameObject: m_ObjectHideFlags: 0 @@ -1825,8 +1568,7 @@ MonoBehaviour: MoveStyles: - {fileID: 11400000, guid: 550df8ac62d76a64a8c621ea6b32398f, type: 2} - {fileID: 11400000, guid: 2d9739d3745581a41ae0ed6a569766d5, type: 2} - Gun: {fileID: 1865991757674780053} - GunAnimator: {fileID: 5936763286718212152} + Gun: {fileID: 1499532377406584238} SoldierProceduralAnimator: {fileID: 8393781323051440261} DisabledOnDeath: - {fileID: 7391558912582364398} @@ -1844,10 +1586,7 @@ MonoBehaviour: Lerpables: - {fileID: 6585337033203946896} Lean: 0 - LaserPrefab: {fileID: 8009551885746485900, guid: 5c99da0361d098646b319a35fcc80095, type: 3} Splatter: {fileID: 5204970423912589616} - GunShotAudioSource: {fileID: 3686721060470342146} - RaygunClip: {fileID: 8300000, guid: 643f2f841d3577649b254780ae82bfcf, type: 3} HitAudioSource: {fileID: 8513157977701802929} LocalHitAudioSource: {fileID: 8513157977701802929} Pitch: 0 @@ -2321,7 +2060,7 @@ Transform: m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 4219995598675074942} - - {fileID: 1865991757674780053} + - {fileID: 7302109350035064781} m_Father: {fileID: 7391558912774766616} m_RootOrder: 4 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} @@ -3176,71 +2915,71 @@ PrefabInstance: objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: e18005d630710ec40b4e791ef3ee97c7, type: 3} ---- !u!1 &4604321914683741605 stripped -GameObject: - m_CorrespondingSourceObject: {fileID: 1928564536991127190, guid: e18005d630710ec40b4e791ef3ee97c7, type: 3} - m_PrefabInstance: {fileID: 2676956051575718707} - m_PrefabAsset: {fileID: 0} ---- !u!1 &2909126165159328361 stripped -GameObject: - m_CorrespondingSourceObject: {fileID: 970877069575420250, guid: e18005d630710ec40b4e791ef3ee97c7, type: 3} - m_PrefabInstance: {fileID: 2676956051575718707} - m_PrefabAsset: {fileID: 0} ---- !u!1 &2976767849567766614 stripped -GameObject: - m_CorrespondingSourceObject: {fileID: -8328862363880354971, guid: e18005d630710ec40b4e791ef3ee97c7, type: 3} - m_PrefabInstance: {fileID: 2676956051575718707} - m_PrefabAsset: {fileID: 0} ---- !u!1 &6953174386727810892 stripped -GameObject: - m_CorrespondingSourceObject: {fileID: 4996979199693665407, guid: e18005d630710ec40b4e791ef3ee97c7, type: 3} - m_PrefabInstance: {fileID: 2676956051575718707} - m_PrefabAsset: {fileID: 0} ---- !u!95 &8380320334439546530 stripped -Animator: - m_CorrespondingSourceObject: {fileID: 5866666021909216657, guid: e18005d630710ec40b4e791ef3ee97c7, type: 3} - m_PrefabInstance: {fileID: 2676956051575718707} - m_PrefabAsset: {fileID: 0} --- !u!1 &378181050955954659 stripped GameObject: m_CorrespondingSourceObject: {fileID: 2313131607479007952, guid: e18005d630710ec40b4e791ef3ee97c7, type: 3} m_PrefabInstance: {fileID: 2676956051575718707} m_PrefabAsset: {fileID: 0} ---- !u!4 &2498596356784760024 stripped -Transform: - m_CorrespondingSourceObject: {fileID: -8679921383154817045, guid: e18005d630710ec40b4e791ef3ee97c7, type: 3} - m_PrefabInstance: {fileID: 2676956051575718707} - m_PrefabAsset: {fileID: 0} --- !u!1 &5585551264296828372 stripped GameObject: m_CorrespondingSourceObject: {fileID: -1682754096888168729, guid: e18005d630710ec40b4e791ef3ee97c7, type: 3} m_PrefabInstance: {fileID: 2676956051575718707} m_PrefabAsset: {fileID: 0} ---- !u!1 &8020497713614398660 stripped -GameObject: - m_CorrespondingSourceObject: {fileID: 5361814037758830583, guid: e18005d630710ec40b4e791ef3ee97c7, type: 3} - m_PrefabInstance: {fileID: 2676956051575718707} - m_PrefabAsset: {fileID: 0} --- !u!1 &4058563969374220487 stripped GameObject: m_CorrespondingSourceObject: {fileID: 2122496377756791796, guid: e18005d630710ec40b4e791ef3ee97c7, type: 3} m_PrefabInstance: {fileID: 2676956051575718707} m_PrefabAsset: {fileID: 0} ---- !u!1 &5615618764339399952 stripped -GameObject: - m_CorrespondingSourceObject: {fileID: -1672846623409500637, guid: e18005d630710ec40b4e791ef3ee97c7, type: 3} - m_PrefabInstance: {fileID: 2676956051575718707} - m_PrefabAsset: {fileID: 0} --- !u!1 &8744249650485362980 stripped GameObject: m_CorrespondingSourceObject: {fileID: 6665228367387902487, guid: e18005d630710ec40b4e791ef3ee97c7, type: 3} m_PrefabInstance: {fileID: 2676956051575718707} m_PrefabAsset: {fileID: 0} +--- !u!1 &4604321914683741605 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 1928564536991127190, guid: e18005d630710ec40b4e791ef3ee97c7, type: 3} + m_PrefabInstance: {fileID: 2676956051575718707} + m_PrefabAsset: {fileID: 0} --- !u!1 &5591340088261064748 stripped GameObject: m_CorrespondingSourceObject: {fileID: -1675871812770890977, guid: e18005d630710ec40b4e791ef3ee97c7, type: 3} m_PrefabInstance: {fileID: 2676956051575718707} m_PrefabAsset: {fileID: 0} +--- !u!1 &6953174386727810892 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 4996979199693665407, guid: e18005d630710ec40b4e791ef3ee97c7, type: 3} + m_PrefabInstance: {fileID: 2676956051575718707} + m_PrefabAsset: {fileID: 0} +--- !u!1 &5615618764339399952 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: -1672846623409500637, guid: e18005d630710ec40b4e791ef3ee97c7, type: 3} + m_PrefabInstance: {fileID: 2676956051575718707} + m_PrefabAsset: {fileID: 0} +--- !u!1 &2976767849567766614 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: -8328862363880354971, guid: e18005d630710ec40b4e791ef3ee97c7, type: 3} + m_PrefabInstance: {fileID: 2676956051575718707} + m_PrefabAsset: {fileID: 0} +--- !u!95 &8380320334439546530 stripped +Animator: + m_CorrespondingSourceObject: {fileID: 5866666021909216657, guid: e18005d630710ec40b4e791ef3ee97c7, type: 3} + m_PrefabInstance: {fileID: 2676956051575718707} + m_PrefabAsset: {fileID: 0} +--- !u!4 &2498596356784760024 stripped +Transform: + m_CorrespondingSourceObject: {fileID: -8679921383154817045, guid: e18005d630710ec40b4e791ef3ee97c7, type: 3} + m_PrefabInstance: {fileID: 2676956051575718707} + m_PrefabAsset: {fileID: 0} +--- !u!1 &2909126165159328361 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 970877069575420250, guid: e18005d630710ec40b4e791ef3ee97c7, type: 3} + m_PrefabInstance: {fileID: 2676956051575718707} + m_PrefabAsset: {fileID: 0} +--- !u!1 &8020497713614398660 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 5361814037758830583, guid: e18005d630710ec40b4e791ef3ee97c7, type: 3} + m_PrefabInstance: {fileID: 2676956051575718707} + m_PrefabAsset: {fileID: 0} --- !u!1001 &4574503883554023504 PrefabInstance: m_ObjectHideFlags: 0 @@ -3954,49 +3693,9 @@ PrefabInstance: objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: bb45094e64c7170458884eea0a4f4c68, type: 3} ---- !u!1 &4420112016416942592 stripped +--- !u!1 &4799245472480801387 stripped GameObject: - m_CorrespondingSourceObject: {fileID: 156644665701319248, guid: bb45094e64c7170458884eea0a4f4c68, type: 3} - m_PrefabInstance: {fileID: 4574503883554023504} - m_PrefabAsset: {fileID: 0} ---- !u!1 &5143876166499415354 stripped -GameObject: - m_CorrespondingSourceObject: {fileID: 8654052703341272426, guid: bb45094e64c7170458884eea0a4f4c68, type: 3} - m_PrefabInstance: {fileID: 4574503883554023504} - m_PrefabAsset: {fileID: 0} ---- !u!1 &8167146500820978587 stripped -GameObject: - m_CorrespondingSourceObject: {fileID: -3590372263194287157, guid: bb45094e64c7170458884eea0a4f4c68, type: 3} - m_PrefabInstance: {fileID: 4574503883554023504} - m_PrefabAsset: {fileID: 0} ---- !u!1 &7861152345155936203 stripped -GameObject: - m_CorrespondingSourceObject: {fileID: -3286630041556977765, guid: bb45094e64c7170458884eea0a4f4c68, type: 3} - m_PrefabInstance: {fileID: 4574503883554023504} - m_PrefabAsset: {fileID: 0} ---- !u!1 &1328534562678190810 stripped -GameObject: - m_CorrespondingSourceObject: {fileID: 3248221432074918538, guid: bb45094e64c7170458884eea0a4f4c68, type: 3} - m_PrefabInstance: {fileID: 4574503883554023504} - m_PrefabAsset: {fileID: 0} ---- !u!1 &7078895688717378999 stripped -GameObject: - m_CorrespondingSourceObject: {fileID: -2502122241363620377, guid: bb45094e64c7170458884eea0a4f4c68, type: 3} - m_PrefabInstance: {fileID: 4574503883554023504} - m_PrefabAsset: {fileID: 0} ---- !u!1 &3404627525641887855 stripped -GameObject: - m_CorrespondingSourceObject: {fileID: 1172147262814881855, guid: bb45094e64c7170458884eea0a4f4c68, type: 3} - m_PrefabInstance: {fileID: 4574503883554023504} - m_PrefabAsset: {fileID: 0} ---- !u!1 &439248789966776954 stripped -GameObject: - m_CorrespondingSourceObject: {fileID: -5088115977802186198, guid: bb45094e64c7170458884eea0a4f4c68, type: 3} - m_PrefabInstance: {fileID: 4574503883554023504} - m_PrefabAsset: {fileID: 0} ---- !u!4 &4103164600241655739 stripped -Transform: - m_CorrespondingSourceObject: {fileID: -8679921383154817045, guid: bb45094e64c7170458884eea0a4f4c68, type: 3} + m_CorrespondingSourceObject: {fileID: 9070741543337286203, guid: bb45094e64c7170458884eea0a4f4c68, type: 3} m_PrefabInstance: {fileID: 4574503883554023504} m_PrefabAsset: {fileID: 0} --- !u!1 &5077275728796870648 stripped @@ -4004,14 +3703,54 @@ GameObject: m_CorrespondingSourceObject: {fileID: 8722905492793823144, guid: bb45094e64c7170458884eea0a4f4c68, type: 3} m_PrefabInstance: {fileID: 4574503883554023504} m_PrefabAsset: {fileID: 0} +--- !u!1 &439248789966776954 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: -5088115977802186198, guid: bb45094e64c7170458884eea0a4f4c68, type: 3} + m_PrefabInstance: {fileID: 4574503883554023504} + m_PrefabAsset: {fileID: 0} +--- !u!1 &7861152345155936203 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: -3286630041556977765, guid: bb45094e64c7170458884eea0a4f4c68, type: 3} + m_PrefabInstance: {fileID: 4574503883554023504} + m_PrefabAsset: {fileID: 0} --- !u!95 &7931246460515997121 stripped Animator: m_CorrespondingSourceObject: {fileID: 5866666021909216657, guid: bb45094e64c7170458884eea0a4f4c68, type: 3} m_PrefabInstance: {fileID: 4574503883554023504} m_PrefabAsset: {fileID: 0} ---- !u!1 &4799245472480801387 stripped +--- !u!1 &5143876166499415354 stripped GameObject: - m_CorrespondingSourceObject: {fileID: 9070741543337286203, guid: bb45094e64c7170458884eea0a4f4c68, type: 3} + m_CorrespondingSourceObject: {fileID: 8654052703341272426, guid: bb45094e64c7170458884eea0a4f4c68, type: 3} + m_PrefabInstance: {fileID: 4574503883554023504} + m_PrefabAsset: {fileID: 0} +--- !u!4 &4103164600241655739 stripped +Transform: + m_CorrespondingSourceObject: {fileID: -8679921383154817045, guid: bb45094e64c7170458884eea0a4f4c68, type: 3} + m_PrefabInstance: {fileID: 4574503883554023504} + m_PrefabAsset: {fileID: 0} +--- !u!1 &7078895688717378999 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: -2502122241363620377, guid: bb45094e64c7170458884eea0a4f4c68, type: 3} + m_PrefabInstance: {fileID: 4574503883554023504} + m_PrefabAsset: {fileID: 0} +--- !u!1 &1328534562678190810 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 3248221432074918538, guid: bb45094e64c7170458884eea0a4f4c68, type: 3} + m_PrefabInstance: {fileID: 4574503883554023504} + m_PrefabAsset: {fileID: 0} +--- !u!1 &8167146500820978587 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: -3590372263194287157, guid: bb45094e64c7170458884eea0a4f4c68, type: 3} + m_PrefabInstance: {fileID: 4574503883554023504} + m_PrefabAsset: {fileID: 0} +--- !u!1 &3404627525641887855 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 1172147262814881855, guid: bb45094e64c7170458884eea0a4f4c68, type: 3} + m_PrefabInstance: {fileID: 4574503883554023504} + m_PrefabAsset: {fileID: 0} +--- !u!1 &4420112016416942592 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 156644665701319248, guid: bb45094e64c7170458884eea0a4f4c68, type: 3} m_PrefabInstance: {fileID: 4574503883554023504} m_PrefabAsset: {fileID: 0} --- !u!1 &8134722540108977799 stripped @@ -4019,87 +3758,90 @@ GameObject: m_CorrespondingSourceObject: {fileID: -3485874040580669737, guid: bb45094e64c7170458884eea0a4f4c68, type: 3} m_PrefabInstance: {fileID: 4574503883554023504} m_PrefabAsset: {fileID: 0} ---- !u!1001 &5192659304772370690 +--- !u!1001 &6416848661152764776 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: - m_TransformParent: {fileID: 6532210512705233048} + m_TransformParent: {fileID: 7302109350035064781} m_Modifications: - - target: {fileID: -8679921383154817045, guid: 4f2bbe1f3791622448504110deb9f847, type: 3} + - target: {fileID: 3010079138158606711, guid: 5e86b3797a8a43e48abf11dc89da8b00, type: 3} + propertyPath: Camera + value: + objectReference: {fileID: 8440773692779321063} + - target: {fileID: 4677107243738498813, guid: 5e86b3797a8a43e48abf11dc89da8b00, type: 3} propertyPath: m_LocalPosition.x - value: -0.00030055165 + value: 0 objectReference: {fileID: 0} - - target: {fileID: -8679921383154817045, guid: 4f2bbe1f3791622448504110deb9f847, type: 3} + - target: {fileID: 4677107243738498813, guid: 5e86b3797a8a43e48abf11dc89da8b00, type: 3} propertyPath: m_LocalPosition.y - value: -0.048959285 + value: 0 objectReference: {fileID: 0} - - target: {fileID: -8679921383154817045, guid: 4f2bbe1f3791622448504110deb9f847, type: 3} + - target: {fileID: 4677107243738498813, guid: 5e86b3797a8a43e48abf11dc89da8b00, type: 3} propertyPath: m_LocalPosition.z - value: -0.00051991054 + value: 0 objectReference: {fileID: 0} - - target: {fileID: -8679921383154817045, guid: 4f2bbe1f3791622448504110deb9f847, type: 3} + - target: {fileID: 4677107243738498813, guid: 5e86b3797a8a43e48abf11dc89da8b00, type: 3} propertyPath: m_LocalRotation.x - value: 0.0021719388 + value: -0 objectReference: {fileID: 0} - - target: {fileID: -8679921383154817045, guid: 4f2bbe1f3791622448504110deb9f847, type: 3} + - target: {fileID: 4677107243738498813, guid: 5e86b3797a8a43e48abf11dc89da8b00, type: 3} propertyPath: m_LocalRotation.y - value: 0.7071036 + value: -0 objectReference: {fileID: 0} - - target: {fileID: -8679921383154817045, guid: 4f2bbe1f3791622448504110deb9f847, type: 3} + - target: {fileID: 4677107243738498813, guid: 5e86b3797a8a43e48abf11dc89da8b00, type: 3} propertyPath: m_LocalRotation.z - value: 0.7071033 + value: -0 objectReference: {fileID: 0} - - target: {fileID: -8679921383154817045, guid: 4f2bbe1f3791622448504110deb9f847, type: 3} + - target: {fileID: 4677107243738498813, guid: 5e86b3797a8a43e48abf11dc89da8b00, type: 3} propertyPath: m_LocalRotation.w - value: 0.002171528 + value: 1 objectReference: {fileID: 0} - - target: {fileID: -8679921383154817045, guid: 4f2bbe1f3791622448504110deb9f847, type: 3} + - target: {fileID: 4677107243738498813, guid: 5e86b3797a8a43e48abf11dc89da8b00, type: 3} propertyPath: m_RootOrder value: 0 objectReference: {fileID: 0} - - target: {fileID: -8679921383154817045, guid: 4f2bbe1f3791622448504110deb9f847, type: 3} + - target: {fileID: 4677107243738498813, guid: 5e86b3797a8a43e48abf11dc89da8b00, type: 3} propertyPath: m_LocalEulerAnglesHint.x - value: -90 + value: 0 objectReference: {fileID: 0} - - target: {fileID: -8679921383154817045, guid: 4f2bbe1f3791622448504110deb9f847, type: 3} + - target: {fileID: 4677107243738498813, guid: 5e86b3797a8a43e48abf11dc89da8b00, type: 3} propertyPath: m_LocalEulerAnglesHint.y value: 0 objectReference: {fileID: 0} - - target: {fileID: -8679921383154817045, guid: 4f2bbe1f3791622448504110deb9f847, type: 3} + - target: {fileID: 4677107243738498813, guid: 5e86b3797a8a43e48abf11dc89da8b00, type: 3} propertyPath: m_LocalEulerAnglesHint.z - value: 180 + value: 0 objectReference: {fileID: 0} - - target: {fileID: -8679921383154817045, guid: 4f2bbe1f3791622448504110deb9f847, type: 3} - propertyPath: m_LocalScale.x - value: 50 - objectReference: {fileID: 0} - - target: {fileID: -8679921383154817045, guid: 4f2bbe1f3791622448504110deb9f847, type: 3} - propertyPath: m_LocalScale.y - value: 50 - objectReference: {fileID: 0} - - target: {fileID: -8679921383154817045, guid: 4f2bbe1f3791622448504110deb9f847, type: 3} - propertyPath: m_LocalScale.z - value: 50 - objectReference: {fileID: 0} - - target: {fileID: 919132149155446097, guid: 4f2bbe1f3791622448504110deb9f847, type: 3} + - target: {fileID: 5022353220472231776, guid: 5e86b3797a8a43e48abf11dc89da8b00, type: 3} propertyPath: m_Name - value: SniperRifle + value: Gun objectReference: {fileID: 0} m_RemovedComponents: [] - m_SourcePrefab: {fileID: 100100000, guid: 4f2bbe1f3791622448504110deb9f847, type: 3} ---- !u!1 &4958852355926309971 stripped -GameObject: - m_CorrespondingSourceObject: {fileID: 919132149155446097, guid: 4f2bbe1f3791622448504110deb9f847, type: 3} - m_PrefabInstance: {fileID: 5192659304772370690} - m_PrefabAsset: {fileID: 0} ---- !u!4 &5736092089644017385 stripped + m_SourcePrefab: {fileID: 100100000, guid: 5e86b3797a8a43e48abf11dc89da8b00, type: 3} +--- !u!4 &1865991757674780053 stripped Transform: - m_CorrespondingSourceObject: {fileID: -8679921383154817045, guid: 4f2bbe1f3791622448504110deb9f847, type: 3} - m_PrefabInstance: {fileID: 5192659304772370690} + m_CorrespondingSourceObject: {fileID: 4677107243738498813, guid: 5e86b3797a8a43e48abf11dc89da8b00, type: 3} + m_PrefabInstance: {fileID: 6416848661152764776} m_PrefabAsset: {fileID: 0} ---- !u!23 &6904472884974394758 stripped -MeshRenderer: - m_CorrespondingSourceObject: {fileID: -7511558181221131132, guid: 4f2bbe1f3791622448504110deb9f847, type: 3} - m_PrefabInstance: {fileID: 5192659304772370690} +--- !u!114 &1499532377406584238 stripped +MonoBehaviour: + m_CorrespondingSourceObject: {fileID: 5603130069753505478, guid: 5e86b3797a8a43e48abf11dc89da8b00, type: 3} + m_PrefabInstance: {fileID: 6416848661152764776} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 65eee2dbd7da6664dbbe31e2c926fdba, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!4 &5713660789478474713 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 1605033999665909937, guid: 5e86b3797a8a43e48abf11dc89da8b00, type: 3} + m_PrefabInstance: {fileID: 6416848661152764776} + m_PrefabAsset: {fileID: 0} +--- !u!4 &2637233632139837434 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 9048980524933835922, guid: 5e86b3797a8a43e48abf11dc89da8b00, type: 3} + m_PrefabInstance: {fileID: 6416848661152764776} m_PrefabAsset: {fileID: 0} diff --git a/Assets/Scripts/Items.meta b/Assets/Scripts/Items.meta new file mode 100644 index 0000000..64254e1 --- /dev/null +++ b/Assets/Scripts/Items.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 70f9a21c98c62f94dbfcbcc39ab9a0e6 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/Items/Item.cs b/Assets/Scripts/Items/Item.cs new file mode 100644 index 0000000..a009b8f --- /dev/null +++ b/Assets/Scripts/Items/Item.cs @@ -0,0 +1,16 @@ + +using UnityEngine; +using NeonTea.Quakeball.Players; + +namespace NeonTea.Quakeball.Items { + public abstract class Item : MonoBehaviour { + + public abstract float Cooldown { get; } + public abstract Animator Animator { get; } + + public abstract void Shoot(Player source); + public abstract void OnSwitched(); + public abstract void OnSwitchedOut(); + + } +} \ No newline at end of file diff --git a/Assets/Scripts/Items/Item.cs.meta b/Assets/Scripts/Items/Item.cs.meta new file mode 100644 index 0000000..de0d704 --- /dev/null +++ b/Assets/Scripts/Items/Item.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 9b933458da41ec84abb94ed9394c1dd1 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/Items/Raygun.cs b/Assets/Scripts/Items/Raygun.cs new file mode 100644 index 0000000..be95a89 --- /dev/null +++ b/Assets/Scripts/Items/Raygun.cs @@ -0,0 +1,79 @@ + +using UnityEngine; +using NeonTea.Quakeball.Players; +using NeonTea.Quakeball.Audio; +using NeonTea.Quakeball.Combat; +using NeonTea.Quakeball.Networking; +using NeonTea.Quakeball.Networking.Instances; + +namespace NeonTea.Quakeball.Items { + public class Raygun : Item { + + public override float Cooldown => RaygunCooldown; + public override Animator Animator => RaygunAnimator; + + public float RaygunCooldown = 1; + + [Header("Visuals")] + public GameObject LaserPrefab; + public Animator RaygunAnimator; + + [Header("Shooting details")] + public Transform BulletSourcePoint; + public LayerMask BulletHitLayer; + public LayerMask BulletPassLayer; + + [Header("Audio")] + public AudioSource GunShotAudioSource; + public AudioClip RaygunClip; + + public override void Shoot(Player source) { + Vector3 GunPoint = BulletSourcePoint.position; + Vector3 ShotDelta = source.CameraRoot.forward * 1000f; + + Vector3 From = source.CameraRoot.position; + Vector3 Direction = source.CameraRoot.forward; + RaycastHit[] Hits = Physics.RaycastAll(From, Direction, 1000f, BulletHitLayer | BulletPassLayer); + System.Array.Sort(Hits, (a, b) => { return a.distance.CompareTo(b.distance); }); + foreach (RaycastHit Hit in Hits) { + ShotDelta = Hit.point - GunPoint; + Player Player = Hit.rigidbody != null ? Hit.rigidbody.GetComponent() : null; + if (Player == source) { + continue; + } + if (((1 << Hit.collider.gameObject.layer) & BulletPassLayer) != 0) { + ImpactSound ImpactSound = Hit.collider.GetComponent(); + if (ImpactSound != null) { + ImpactSound.PlayAt(Hit.point); + } + continue; + } + if (Player != null) { + if (Net.Singleton.Instance is Server) { + ((Server)Net.Singleton.Instance).SendHit(Player.NetId, Player.NetId); + Player.Hit(Player.NetId); + } + } + break; + } + + RaygunAnimator.SetBool("Shot", true); + GameObject LaserEffect = Instantiate(LaserPrefab); + Laser Laser = LaserEffect.GetComponent(); + Laser.From = GunPoint; + Laser.To = GunPoint + ShotDelta; + + GunShotAudioSource.PlayOneShot(RaygunClip); + } + + private void LateUpdate() { + RaygunAnimator.SetBool("Shot", false); + } + + public override void OnSwitched() { + } + + public override void OnSwitchedOut() { + } + } +} \ No newline at end of file diff --git a/Assets/Scripts/Items/Raygun.cs.meta b/Assets/Scripts/Items/Raygun.cs.meta new file mode 100644 index 0000000..6ff7506 --- /dev/null +++ b/Assets/Scripts/Items/Raygun.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 65eee2dbd7da6664dbbe31e2c926fdba +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/Players/Player.cs b/Assets/Scripts/Players/Player.cs index 9d4a401..51a71d2 100644 --- a/Assets/Scripts/Players/Player.cs +++ b/Assets/Scripts/Players/Player.cs @@ -7,6 +7,7 @@ using NeonTea.Quakeball.Combat; using NeonTea.Quakeball.Interface; using NeonTea.Quakeball.Animation; using NeonTea.Quakeball.Audio; +using NeonTea.Quakeball.Items; namespace NeonTea.Quakeball.Players { /// The central glue class for players (both local and remote). @@ -19,8 +20,7 @@ namespace NeonTea.Quakeball.Players { public float PingBias; public MoveStyle[] MoveStyles; - public Transform Gun; - public Animator GunAnimator; + public Item Gun; public SoldierProceduralAnimator SoldierProceduralAnimator; @@ -30,22 +30,15 @@ namespace NeonTea.Quakeball.Players { [Header("Shooting")] [Tooltip("For raycasting the shoot target.")] public Transform CameraRoot; - public Transform BulletSourcePoint; - public LayerMask BulletHitLayer; - public LayerMask BulletPassLayer; - public float Cooldown; [Header("Visuals")] public float LerpedDesyncDistance; public DesyncLerper[] Lerpables; public float Lean; - public GameObject LaserPrefab; public ParticleSystem Splatter; [Header("Audio")] - public AudioSource GunShotAudioSource; - public AudioClip RaygunClip; public AudioSource HitAudioSource; public AudioSource LocalHitAudioSource; @@ -96,7 +89,7 @@ namespace NeonTea.Quakeball.Players { private CharacterController CharacterController; private Vector3 FeetPosition; - private float LastShot; + private float NextAllowedShot; private float TimeofDeath; /// Creates a PlayerUpdatePckt representing this Player's current status, for sending to other peers. @@ -154,51 +147,16 @@ namespace NeonTea.Quakeball.Players { } public void Shoot() { - float delta = Time.time - LastShot; + float next = NextAllowedShot; if (Net.Singleton.Instance is Server) { float ping = ((Server)Net.Singleton.Instance).Players[NetId].Ping; - delta += ping; + next -= ping; } - if (delta < Cooldown) { + if (Time.time < next) { return; } - LastShot = Time.time; - Vector3 GunPoint = BulletSourcePoint.position; - Vector3 ShotDelta = CameraRoot.forward * 1000f; - - Vector3 From = CameraRoot.position; - Vector3 Direction = CameraRoot.forward; - RaycastHit[] Hits = Physics.RaycastAll(From, Direction, 1000f, BulletHitLayer | BulletPassLayer); - System.Array.Sort(Hits, (a, b) => { return a.distance.CompareTo(b.distance); }); - foreach (RaycastHit Hit in Hits) { - ShotDelta = Hit.point - GunPoint; - Player Player = Hit.rigidbody != null ? Hit.rigidbody.GetComponent() : null; - if (Player == this) { - continue; - } - if (((1 << Hit.collider.gameObject.layer) & BulletPassLayer) != 0) { - ImpactSound ImpactSound = Hit.collider.GetComponent(); - if (ImpactSound != null) { - ImpactSound.PlayAt(Hit.point); - } - continue; - } - if (Player != null) { - if (Net.Singleton.Instance is Server) { - ((Server)Net.Singleton.Instance).SendHit(NetId, Player.NetId); - Player.Hit(NetId); - } - } - break; - } - - GunAnimator.SetBool("Shot", true); - GameObject LaserEffect = Instantiate(LaserPrefab); - Laser Laser = LaserEffect.GetComponent(); - Laser.From = GunPoint; - Laser.To = GunPoint + ShotDelta; - - GunShotAudioSource.PlayOneShot(RaygunClip); + NextAllowedShot = Time.time + Gun.Cooldown; + Gun.Shoot(this); } public void Hit(ulong sourceUid) { @@ -276,7 +234,6 @@ namespace NeonTea.Quakeball.Players { if (GameObject.FindObjectOfType() == null) { Debug.LogWarning("Player.Awake: There is no PhysicsSyncer in this scene! Some code will not work as expected."); } - LastShot = Time.time - Cooldown; } private void Update() { @@ -292,7 +249,6 @@ namespace NeonTea.Quakeball.Players { } private void LateUpdate() { - GunAnimator.SetBool("Shot", false); UpdateMovement(); } @@ -345,7 +301,8 @@ namespace NeonTea.Quakeball.Players { } float TargetBobbiness = Grounded ? GroundVelocity.magnitude / MoveStyle.TargetVelocity : 0; - GunAnimator.SetLayerWeight(1, Mathf.Lerp(GunAnimator.GetLayerWeight(1), TargetBobbiness, 10f * Time.deltaTime)); + + Gun.Animator.SetLayerWeight(1, Mathf.Lerp(Gun.Animator.GetLayerWeight(1), TargetBobbiness, 10f * Time.deltaTime)); } } }