diff --git a/Assets/Items/Raygun.prefab b/Assets/Items/Raygun.prefab index 8cfdca6..e264dda 100644 --- a/Assets/Items/Raygun.prefab +++ b/Assets/Items/Raygun.prefab @@ -13,7 +13,7 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: RenderTextureToCopy: {fileID: 8400000, guid: f3187e94a6fef04428cc361250daa902, type: 2} - Camera: {fileID: 0} + Camera: {fileID: 5303140867699747777} Renderer: {fileID: 494450782322855662} MaterialIndex: 1 --- !u!1 &4140220380674628973 @@ -173,6 +173,112 @@ Transform: m_Father: {fileID: 4677107243738498813} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &4534568328487320986 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4290797009576046412} + - component: {fileID: 5303140867699747777} + - component: {fileID: 8736749728779310898} + m_Layer: 0 + m_Name: ScopeCamera + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &4290797009576046412 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4534568328487320986} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 50, y: 50, z: 50} + m_Children: [] + m_Father: {fileID: 4677107243738498813} + m_RootOrder: 2 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!20 &5303140867699747777 +Camera: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4534568328487320986} + m_Enabled: 1 + serializedVersion: 2 + m_ClearFlags: 1 + m_BackGroundColor: {r: 0.19215687, g: 0.3019608, b: 0.4745098, a: 0} + m_projectionMatrixMode: 1 + m_GateFitMode: 2 + m_FOVAxisMode: 0 + m_SensorSize: {x: 36, y: 24} + m_LensShift: {x: 0, y: 0} + m_FocalLength: 50 + m_NormalizedViewPortRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 1 + height: 1 + near clip plane: 1.5 + far clip plane: 1000 + field of view: 3 + orthographic: 0 + orthographic size: 5 + m_Depth: 0 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RenderingPath: -1 + m_TargetTexture: {fileID: 0} + m_TargetDisplay: 0 + m_TargetEye: 3 + m_HDR: 1 + m_AllowMSAA: 1 + m_AllowDynamicResolution: 0 + m_ForceIntoRT: 0 + m_OcclusionCulling: 1 + m_StereoConvergence: 10 + m_StereoSeparation: 0.022 +--- !u!114 &8736749728779310898 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4534568328487320986} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: a79441f348de89743a2939f4d699eac1, type: 3} + m_Name: + m_EditorClassIdentifier: + m_RenderShadows: 1 + m_RequiresDepthTextureOption: 2 + m_RequiresOpaqueTextureOption: 2 + m_CameraType: 0 + m_Cameras: [] + m_RendererIndex: -1 + m_VolumeLayerMask: + serializedVersion: 2 + m_Bits: 1 + m_VolumeTrigger: {fileID: 0} + m_RenderPostProcessing: 0 + m_Antialiasing: 0 + m_AntialiasingQuality: 2 + m_StopNaN: 0 + m_Dithering: 0 + m_ClearDepth: 1 + m_RequiresDepthTexture: 0 + m_RequiresColorTexture: 0 + m_Version: 2 --- !u!1 &5022353220472231776 GameObject: m_ObjectHideFlags: 0 @@ -203,6 +309,7 @@ Transform: m_Children: - {fileID: 1605033999665909937} - {fileID: 264070833573311472} + - {fileID: 4290797009576046412} m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} @@ -218,10 +325,12 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 65eee2dbd7da6664dbbe31e2c926fdba, type: 3} m_Name: m_EditorClassIdentifier: + Holder: {fileID: 0} RaygunCooldown: 1 Handle: {fileID: 1605033999665909937} LaserPrefab: {fileID: 8009551885746485900, guid: 5c99da0361d098646b319a35fcc80095, type: 3} RaygunAnimator: {fileID: 823779526010534736} + ScopeCamera: {fileID: 4290797009576046412} BulletSourcePoint: {fileID: 9048980524933835922} BulletHitLayer: serializedVersion: 2 @@ -272,7 +381,7 @@ Animator: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 6228136265624521654} - m_Enabled: 0 + m_Enabled: 1 m_Avatar: {fileID: 0} m_Controller: {fileID: 9100000, guid: 8468d9a1f10314a4c998349493611489, type: 2} m_CullingMode: 0 diff --git a/Assets/Items/TestGun2.prefab b/Assets/Items/Teevee.prefab similarity index 92% rename from Assets/Items/TestGun2.prefab rename to Assets/Items/Teevee.prefab index ea8d454..7d813d5 100644 --- a/Assets/Items/TestGun2.prefab +++ b/Assets/Items/Teevee.prefab @@ -168,7 +168,7 @@ GameObject: - component: {fileID: 4677107243738498813} - component: {fileID: 5603130069753505478} m_Layer: 0 - m_Name: TestGun2 + m_Name: Teevee m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 @@ -181,15 +181,15 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 5022353220472231776} - m_LocalRotation: {x: 0, y: 0.7071068, z: 0, w: 0.7071068} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 0.75, y: 0.75, z: 0.75} + 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: 90, z: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &5603130069753505478 MonoBehaviour: m_ObjectHideFlags: 0 @@ -202,9 +202,12 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 65eee2dbd7da6664dbbe31e2c926fdba, type: 3} m_Name: m_EditorClassIdentifier: + Holder: {fileID: 0} RaygunCooldown: 1 + Handle: {fileID: 1605033999665909937} LaserPrefab: {fileID: 8009551885746485900, guid: 5c99da0361d098646b319a35fcc80095, type: 3} RaygunAnimator: {fileID: 823779526010534736} + ScopeCamera: {fileID: 0} BulletSourcePoint: {fileID: 9048980524933835922} BulletHitLayer: serializedVersion: 2 @@ -290,7 +293,7 @@ Transform: 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_LocalPosition: {x: 0, y: 0.121, z: 0.1} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 606707962148492301} @@ -310,7 +313,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: -8679921383154817045, guid: 6a5fc221f07cc47409a6118dbbb9258a, type: 3} propertyPath: m_LocalPosition.y - value: 0.445 + value: 0 objectReference: {fileID: 0} - target: {fileID: -8679921383154817045, guid: 6a5fc221f07cc47409a6118dbbb9258a, type: 3} propertyPath: m_LocalPosition.z @@ -318,19 +321,19 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: -8679921383154817045, guid: 6a5fc221f07cc47409a6118dbbb9258a, type: 3} propertyPath: m_LocalRotation.x - value: -0.27051878 + value: -0.5 objectReference: {fileID: 0} - target: {fileID: -8679921383154817045, guid: 6a5fc221f07cc47409a6118dbbb9258a, type: 3} propertyPath: m_LocalRotation.y - value: 0.6533145 + value: -0.5 objectReference: {fileID: 0} - target: {fileID: -8679921383154817045, guid: 6a5fc221f07cc47409a6118dbbb9258a, type: 3} propertyPath: m_LocalRotation.z - value: 0.653314 + value: -0.5 objectReference: {fileID: 0} - target: {fileID: -8679921383154817045, guid: 6a5fc221f07cc47409a6118dbbb9258a, type: 3} propertyPath: m_LocalRotation.w - value: 0.27051932 + value: 0.5 objectReference: {fileID: 0} - target: {fileID: -8679921383154817045, guid: 6a5fc221f07cc47409a6118dbbb9258a, type: 3} propertyPath: m_RootOrder @@ -346,7 +349,19 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: -8679921383154817045, guid: 6a5fc221f07cc47409a6118dbbb9258a, type: 3} propertyPath: m_LocalEulerAnglesHint.z - value: 135.014 + value: -90 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 6a5fc221f07cc47409a6118dbbb9258a, type: 3} + propertyPath: m_LocalScale.x + value: 15 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 6a5fc221f07cc47409a6118dbbb9258a, type: 3} + propertyPath: m_LocalScale.y + value: 15 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 6a5fc221f07cc47409a6118dbbb9258a, type: 3} + propertyPath: m_LocalScale.z + value: 15 objectReference: {fileID: 0} - target: {fileID: -7511558181221131132, guid: 6a5fc221f07cc47409a6118dbbb9258a, type: 3} propertyPath: m_Materials.Array.data[1] diff --git a/Assets/Items/TestGun2.prefab.meta b/Assets/Items/Teevee.prefab.meta similarity index 100% rename from Assets/Items/TestGun2.prefab.meta rename to Assets/Items/Teevee.prefab.meta diff --git a/Assets/Items/Teevee/CoverMat.mat b/Assets/Items/Teevee/CoverMat.mat index 8e85152..b85be1a 100644 --- a/Assets/Items/Teevee/CoverMat.mat +++ b/Assets/Items/Teevee/CoverMat.mat @@ -72,11 +72,11 @@ Material: - _GlossMapScale: 0 - _Glossiness: 0 - _GlossyReflections: 0 - - _Metallic: 0 + - _Metallic: 0.127 - _OcclusionStrength: 1 - _QueueOffset: 0 - _ReceiveShadows: 1 - - _Smoothness: 0.5 + - _Smoothness: 0.167 - _SmoothnessTextureChannel: 0 - _SpecularHighlights: 1 - _SrcBlend: 1 @@ -84,7 +84,7 @@ Material: - _WorkflowMode: 1 - _ZWrite: 1 m_Colors: - - _BaseColor: {r: 1, g: 1, b: 1, a: 1} + - _BaseColor: {r: 0.5377358, g: 0.22067462, b: 0.22067462, a: 1} - _Color: {r: 1, g: 1, b: 1, a: 1} - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} - _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1} diff --git a/Assets/Items/Teevee/Materials.meta b/Assets/Items/Teevee/Materials.meta new file mode 100644 index 0000000..847a817 --- /dev/null +++ b/Assets/Items/Teevee/Materials.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: ed22667a32f327244b96e7a4ab041629 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Items/Teevee/Materials/Screen.mat b/Assets/Items/Teevee/Materials/Screen.mat new file mode 100644 index 0000000..ddd7457 --- /dev/null +++ b/Assets/Items/Teevee/Materials/Screen.mat @@ -0,0 +1,90 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &-1496660237054161333 +MonoBehaviour: + m_ObjectHideFlags: 11 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} + m_Name: + m_EditorClassIdentifier: + version: 2 +--- !u!21 &2100000 +Material: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Screen + m_Shader: {fileID: 4800000, guid: 933532a4fcc9baf4fa0491de14d08ed7, type: 3} + m_ShaderKeywords: + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BaseMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 2800000, guid: 28bcb516f60341645b2f1a7710ab1341, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _SpecGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: + - _AlphaClip: 0 + - _Blend: 0 + - _BumpScale: 1 + - _Cull: 2 + - _Cutoff: 0.5 + - _DstBlend: 0 + - _EnvironmentReflections: 1 + - _GlossMapScale: 0 + - _Glossiness: 0 + - _GlossyReflections: 0 + - _Metallic: 0 + - _OcclusionStrength: 1 + - _QueueOffset: 0 + - _ReceiveShadows: 1 + - _Smoothness: 0.5 + - _SmoothnessTextureChannel: 0 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _Surface: 0 + - _WorkflowMode: 1 + - _ZWrite: 1 + m_Colors: + - _BaseColor: {r: 1, g: 1, b: 1, a: 1} + - _Color: {r: 1, g: 1, b: 1, a: 1} + - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} + - _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1} + m_BuildTextureStacks: [] diff --git a/Assets/Items/Teevee/Materials/Screen.mat.meta b/Assets/Items/Teevee/Materials/Screen.mat.meta new file mode 100644 index 0000000..92f5473 --- /dev/null +++ b/Assets/Items/Teevee/Materials/Screen.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 6152ce75f940dfb48a71f5c4e42bb2e2 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Items/Teevee/Screen.png b/Assets/Items/Teevee/Screen.png new file mode 100644 index 0000000..bc11366 Binary files /dev/null and b/Assets/Items/Teevee/Screen.png differ diff --git a/Assets/Items/Teevee/Screen.png.meta b/Assets/Items/Teevee/Screen.png.meta new file mode 100644 index 0000000..e70458a --- /dev/null +++ b/Assets/Items/Teevee/Screen.png.meta @@ -0,0 +1,118 @@ +fileFormatVersion: 2 +guid: 28bcb516f60341645b2f1a7710ab1341 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 11 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: -1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 64 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Windows Store Apps + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 5e97eb03825dee720800000000000000 + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Items/Teevee/ScreenMat.mat b/Assets/Items/Teevee/ScreenMat.mat index 8b390c7..de27457 100644 --- a/Assets/Items/Teevee/ScreenMat.mat +++ b/Assets/Items/Teevee/ScreenMat.mat @@ -34,7 +34,7 @@ Material: serializedVersion: 3 m_TexEnvs: - _BaseMap: - m_Texture: {fileID: 0} + m_Texture: {fileID: 2800000, guid: 28bcb516f60341645b2f1a7710ab1341, type: 3} m_Scale: {x: 1, y: 1} m_Offset: {x: 0, y: 0} - _BumpMap: @@ -46,7 +46,7 @@ Material: m_Scale: {x: 1, y: 1} m_Offset: {x: 0, y: 0} - _MainTex: - m_Texture: {fileID: 0} + m_Texture: {fileID: 2800000, guid: 28bcb516f60341645b2f1a7710ab1341, type: 3} m_Scale: {x: 1, y: 1} m_Offset: {x: 0, y: 0} - _MetallicGlossMap: diff --git a/Assets/Items/Teevee/TeeveeMat.mat b/Assets/Items/Teevee/TeeveeMat.mat index 02a5577..84a36ef 100644 --- a/Assets/Items/Teevee/TeeveeMat.mat +++ b/Assets/Items/Teevee/TeeveeMat.mat @@ -72,11 +72,11 @@ Material: - _GlossMapScale: 0 - _Glossiness: 0 - _GlossyReflections: 0 - - _Metallic: 0 + - _Metallic: 0.445 - _OcclusionStrength: 1 - _QueueOffset: 0 - _ReceiveShadows: 1 - - _Smoothness: 0.5 + - _Smoothness: 1 - _SmoothnessTextureChannel: 0 - _SpecularHighlights: 1 - _SrcBlend: 1 @@ -84,7 +84,7 @@ Material: - _WorkflowMode: 1 - _ZWrite: 1 m_Colors: - - _BaseColor: {r: 1, g: 1, b: 1, a: 1} + - _BaseColor: {r: 0.8962264, g: 0.8962264, b: 0.8962264, a: 1} - _Color: {r: 1, g: 1, b: 1, a: 1} - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} - _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1} diff --git a/Assets/Items/Teevee/Telly.fbx b/Assets/Items/Teevee/Telly.fbx index 8751976..05b5a91 100644 Binary files a/Assets/Items/Teevee/Telly.fbx and b/Assets/Items/Teevee/Telly.fbx differ diff --git a/Assets/Player/Player.prefab b/Assets/Player/Player.prefab index 37200a1..79be213 100644 --- a/Assets/Player/Player.prefab +++ b/Assets/Player/Player.prefab @@ -279,7 +279,6 @@ MonoBehaviour: HeadCollider: {fileID: 7391558913556166742} Ragdolling: 0 GunGluedToHand: 1 - Gun: {fileID: 1499532377406584238} --- !u!114 &6585337033203946896 MonoBehaviour: m_ObjectHideFlags: 0 @@ -1217,10 +1216,9 @@ Transform: 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: - - {fileID: 1865991757674780053} + m_Children: [] m_Father: {fileID: 4833458671639168932} - m_RootOrder: 1 + m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!54 &5638940586892031826 Rigidbody: @@ -1327,112 +1325,6 @@ CharacterJoint: m_EnablePreprocessing: 0 m_MassScale: 1 m_ConnectedMassScale: 1 ---- !u!1 &7376043460032831961 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 4219995598675074942} - - component: {fileID: 8440773692779321063} - - component: {fileID: 2016770580725278479} - m_Layer: 0 - m_Name: ScopeCamera - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &4219995598675074942 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 7376043460032831961} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 50, y: 50, z: 50} - m_Children: [] - m_Father: {fileID: 4833458671639168932} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!20 &8440773692779321063 -Camera: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 7376043460032831961} - m_Enabled: 1 - serializedVersion: 2 - m_ClearFlags: 1 - m_BackGroundColor: {r: 0.19215687, g: 0.3019608, b: 0.4745098, a: 0} - m_projectionMatrixMode: 1 - m_GateFitMode: 2 - m_FOVAxisMode: 0 - m_SensorSize: {x: 36, y: 24} - m_LensShift: {x: 0, y: 0} - m_FocalLength: 50 - m_NormalizedViewPortRect: - serializedVersion: 2 - x: 0 - y: 0 - width: 1 - height: 1 - near clip plane: 1.5 - far clip plane: 1000 - field of view: 3 - orthographic: 0 - orthographic size: 5 - m_Depth: 0 - m_CullingMask: - serializedVersion: 2 - m_Bits: 4294967295 - m_RenderingPath: -1 - m_TargetTexture: {fileID: 0} - m_TargetDisplay: 0 - m_TargetEye: 3 - m_HDR: 1 - m_AllowMSAA: 1 - m_AllowDynamicResolution: 0 - m_ForceIntoRT: 0 - m_OcclusionCulling: 1 - m_StereoConvergence: 10 - m_StereoSeparation: 0.022 ---- !u!114 &2016770580725278479 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 7376043460032831961} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: a79441f348de89743a2939f4d699eac1, type: 3} - m_Name: - m_EditorClassIdentifier: - m_RenderShadows: 1 - m_RequiresDepthTextureOption: 2 - m_RequiresOpaqueTextureOption: 2 - m_CameraType: 0 - m_Cameras: [] - m_RendererIndex: -1 - m_VolumeLayerMask: - serializedVersion: 2 - m_Bits: 1 - m_VolumeTrigger: {fileID: 0} - m_RenderPostProcessing: 0 - m_Antialiasing: 0 - m_AntialiasingQuality: 2 - m_StopNaN: 0 - m_Dithering: 0 - m_ClearDepth: 1 - m_RequiresDepthTexture: 0 - m_RequiresColorTexture: 0 - m_Version: 2 --- !u!1 &7391558912582364398 GameObject: m_ObjectHideFlags: 0 @@ -1567,8 +1459,13 @@ MonoBehaviour: MoveStyles: - {fileID: 11400000, guid: 550df8ac62d76a64a8c621ea6b32398f, type: 2} - {fileID: 11400000, guid: 2d9739d3745581a41ae0ed6a569766d5, type: 2} - Gun: {fileID: 1499532377406584238} SoldierProceduralAnimator: {fileID: 8393781323051440261} + ItemRoot: {fileID: 7302109350035064781} + PossibleItems: + - {fileID: 5022353220472231776, guid: 5e86b3797a8a43e48abf11dc89da8b00, type: 3} + - {fileID: 5022353220472231776, guid: b19fafdda1bd1f947b8806693d78dc1c, type: 3} + CurrentItemIdx: 0 + CurrentItem: {fileID: 0} DisabledOnDeath: - {fileID: 7391558912582364398} - {fileID: 7391558913556166741} @@ -2050,7 +1947,6 @@ Transform: m_LocalPosition: {x: 0, y: 1.6, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - - {fileID: 4219995598675074942} - {fileID: 7302109350035064781} m_Father: {fileID: 7391558912774766616} m_RootOrder: 4 @@ -2906,29 +2802,14 @@ PrefabInstance: objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: e18005d630710ec40b4e791ef3ee97c7, type: 3} ---- !u!1 &4058563969374220487 stripped -GameObject: - m_CorrespondingSourceObject: {fileID: 2122496377756791796, 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 &2909126165159328361 stripped +--- !u!1 &4058563969374220487 stripped GameObject: - m_CorrespondingSourceObject: {fileID: 970877069575420250, 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 &378181050955954659 stripped -GameObject: - m_CorrespondingSourceObject: {fileID: 2313131607479007952, guid: e18005d630710ec40b4e791ef3ee97c7, type: 3} + m_CorrespondingSourceObject: {fileID: 2122496377756791796, guid: e18005d630710ec40b4e791ef3ee97c7, type: 3} m_PrefabInstance: {fileID: 2676956051575718707} m_PrefabAsset: {fileID: 0} --- !u!1 &8020497713614398660 stripped @@ -2936,16 +2817,46 @@ GameObject: m_CorrespondingSourceObject: {fileID: 5361814037758830583, 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 &378181050955954659 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 2313131607479007952, 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 &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!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!4 &2498596356784760024 stripped Transform: m_CorrespondingSourceObject: {fileID: -8679921383154817045, guid: e18005d630710ec40b4e791ef3ee97c7, type: 3} @@ -2956,21 +2867,6 @@ GameObject: m_CorrespondingSourceObject: {fileID: -1682754096888168729, 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 &6953174386727810892 stripped -GameObject: - m_CorrespondingSourceObject: {fileID: 4996979199693665407, 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!1001 &4574503883554023504 PrefabInstance: m_ObjectHideFlags: 0 @@ -3689,31 +3585,6 @@ GameObject: m_CorrespondingSourceObject: {fileID: -2502122241363620377, 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 &4420112016416942592 stripped -GameObject: - m_CorrespondingSourceObject: {fileID: 156644665701319248, 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!4 &4103164600241655739 stripped -Transform: - m_CorrespondingSourceObject: {fileID: -8679921383154817045, 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} @@ -3729,14 +3600,19 @@ GameObject: m_CorrespondingSourceObject: {fileID: 9070741543337286203, 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 &3404627525641887855 stripped GameObject: m_CorrespondingSourceObject: {fileID: 1172147262814881855, guid: bb45094e64c7170458884eea0a4f4c68, type: 3} m_PrefabInstance: {fileID: 4574503883554023504} m_PrefabAsset: {fileID: 0} ---- !u!1 &8134722540108977799 stripped +--- !u!1 &439248789966776954 stripped GameObject: - m_CorrespondingSourceObject: {fileID: -3485874040580669737, guid: bb45094e64c7170458884eea0a4f4c68, type: 3} + m_CorrespondingSourceObject: {fileID: -5088115977802186198, guid: bb45094e64c7170458884eea0a4f4c68, type: 3} m_PrefabInstance: {fileID: 4574503883554023504} m_PrefabAsset: {fileID: 0} --- !u!95 &7931246460515997121 stripped @@ -3744,73 +3620,28 @@ Animator: m_CorrespondingSourceObject: {fileID: 5866666021909216657, 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} +--- !u!4 &4103164600241655739 stripped +Transform: + m_CorrespondingSourceObject: {fileID: -8679921383154817045, guid: bb45094e64c7170458884eea0a4f4c68, type: 3} m_PrefabInstance: {fileID: 4574503883554023504} m_PrefabAsset: {fileID: 0} ---- !u!1001 &6416848661152764776 -PrefabInstance: - m_ObjectHideFlags: 0 - serializedVersion: 2 - m_Modification: - m_TransformParent: {fileID: 7302109350035064781} - m_Modifications: - - target: {fileID: 3010079138158606711, guid: 5e86b3797a8a43e48abf11dc89da8b00, type: 3} - propertyPath: Camera - value: - objectReference: {fileID: 8440773692779321063} - - target: {fileID: 4677107243738498813, guid: 5e86b3797a8a43e48abf11dc89da8b00, type: 3} - propertyPath: m_LocalRotation.x - value: -0 - objectReference: {fileID: 0} - - target: {fileID: 4677107243738498813, guid: 5e86b3797a8a43e48abf11dc89da8b00, type: 3} - propertyPath: m_LocalRotation.y - value: -0 - objectReference: {fileID: 0} - - target: {fileID: 4677107243738498813, guid: 5e86b3797a8a43e48abf11dc89da8b00, type: 3} - propertyPath: m_LocalRotation.z - value: -0 - objectReference: {fileID: 0} - - target: {fileID: 4677107243738498813, guid: 5e86b3797a8a43e48abf11dc89da8b00, type: 3} - propertyPath: m_LocalRotation.w - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 4677107243738498813, guid: 5e86b3797a8a43e48abf11dc89da8b00, type: 3} - propertyPath: m_RootOrder - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 4677107243738498813, guid: 5e86b3797a8a43e48abf11dc89da8b00, type: 3} - propertyPath: m_LocalEulerAnglesHint.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 4677107243738498813, guid: 5e86b3797a8a43e48abf11dc89da8b00, type: 3} - propertyPath: m_LocalEulerAnglesHint.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 4677107243738498813, guid: 5e86b3797a8a43e48abf11dc89da8b00, type: 3} - propertyPath: m_LocalEulerAnglesHint.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 5022353220472231776, guid: 5e86b3797a8a43e48abf11dc89da8b00, type: 3} - propertyPath: m_Name - value: Gun - objectReference: {fileID: 0} - m_RemovedComponents: [] - m_SourcePrefab: {fileID: 100100000, guid: 5e86b3797a8a43e48abf11dc89da8b00, type: 3} ---- !u!4 &1865991757674780053 stripped -Transform: - m_CorrespondingSourceObject: {fileID: 4677107243738498813, guid: 5e86b3797a8a43e48abf11dc89da8b00, type: 3} - m_PrefabInstance: {fileID: 6416848661152764776} +--- !u!1 &8167146500820978587 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: -3590372263194287157, guid: bb45094e64c7170458884eea0a4f4c68, type: 3} + m_PrefabInstance: {fileID: 4574503883554023504} m_PrefabAsset: {fileID: 0} ---- !u!114 &1499532377406584238 stripped -MonoBehaviour: - m_CorrespondingSourceObject: {fileID: 5603130069753505478, guid: 5e86b3797a8a43e48abf11dc89da8b00, type: 3} - m_PrefabInstance: {fileID: 6416848661152764776} +--- !u!1 &5143876166499415354 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 8654052703341272426, 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 +GameObject: + m_CorrespondingSourceObject: {fileID: -3485874040580669737, guid: bb45094e64c7170458884eea0a4f4c68, type: 3} + m_PrefabInstance: {fileID: 4574503883554023504} 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: diff --git a/Assets/Scripts/Animation/SoldierProceduralAnimator.cs b/Assets/Scripts/Animation/SoldierProceduralAnimator.cs index 75736d1..4ab9c59 100644 --- a/Assets/Scripts/Animation/SoldierProceduralAnimator.cs +++ b/Assets/Scripts/Animation/SoldierProceduralAnimator.cs @@ -48,6 +48,12 @@ namespace NeonTea.Quakeball.Animation { Animator.enabled = true; } + public void OnItemSwitched() { + if (GunGluedToHand) { + Player.CurrentItem.transform.parent = Animator.transform; + } + } + private void Awake() { foreach (Animator animator in Soldiers) { animator.gameObject.SetActive(false); @@ -58,9 +64,6 @@ namespace NeonTea.Quakeball.Animation { Torso = TransformUtil.FindChildWithName(Animator.transform, "RIBS"); BehindHand = TransformUtil.FindChildWithName(Animator.transform, "HAND.R"); FrontHand = TransformUtil.FindChildWithName(Animator.transform, "HAND.L"); - if (GunGluedToHand) { - Player.Gun.transform.parent = Animator.transform; - } AddRigidbodyToRagdoll(Animator.transform); StopRagdoll(); } @@ -100,11 +103,11 @@ namespace NeonTea.Quakeball.Animation { HeadCollider.position = Head.position; HeadCollider.eulerAngles = Head.eulerAngles; - if (GunGluedToHand) { - Vector3 GunOffset = Player.Gun.RightHandAnchor.position - Player.Gun.transform.position; + if (GunGluedToHand && Player.CurrentItem != null) { + Vector3 GunOffset = Player.CurrentItem.RightHandAnchor.position - Player.CurrentItem.transform.position; Vector3 GunDirection = (FrontHand.position - BehindHand.position).normalized; - Player.Gun.transform.position = BehindHand.position - GunOffset; - Player.Gun.transform.LookAt(Player.Gun.transform.position + GunDirection); + Player.CurrentItem.transform.position = BehindHand.position - GunOffset; + Player.CurrentItem.transform.LookAt(Player.CurrentItem.transform.position + GunDirection); } } } diff --git a/Assets/Scripts/Items/Item.cs b/Assets/Scripts/Items/Item.cs index b34a4e7..23d6998 100644 --- a/Assets/Scripts/Items/Item.cs +++ b/Assets/Scripts/Items/Item.cs @@ -8,10 +8,11 @@ namespace NeonTea.Quakeball.Items { public abstract float Cooldown { get; } public abstract Animator Animator { get; } public abstract Transform RightHandAnchor { get; } + public Player Holder; public abstract void Shoot(Player source); - public abstract void OnSwitched(); - public abstract void OnSwitchedOut(); + public abstract void Switched(); + public abstract void SwitchedOut(); } } \ No newline at end of file diff --git a/Assets/Scripts/Items/Raygun.cs b/Assets/Scripts/Items/Raygun.cs index f038368..fa53ea4 100644 --- a/Assets/Scripts/Items/Raygun.cs +++ b/Assets/Scripts/Items/Raygun.cs @@ -19,6 +19,7 @@ namespace NeonTea.Quakeball.Items { [Header("Visuals")] public GameObject LaserPrefab; public Animator RaygunAnimator; + public Transform ScopeCamera; [Header("Shooting details")] public Transform BulletSourcePoint; @@ -68,14 +69,19 @@ namespace NeonTea.Quakeball.Items { GunShotAudioSource.PlayOneShot(RaygunClip); } + public override void Switched() { + } + + public override void SwitchedOut() { + GameObject.Destroy(this.gameObject); + } + + private void Start() { + ScopeCamera.transform.localPosition = -Holder.ItemRoot.transform.localPosition; + } + 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/Players/LocalPlayer.cs b/Assets/Scripts/Players/LocalPlayer.cs index 6d4dc44..4f410b8 100644 --- a/Assets/Scripts/Players/LocalPlayer.cs +++ b/Assets/Scripts/Players/LocalPlayer.cs @@ -18,6 +18,7 @@ namespace NeonTea.Quakeball.Players { private InputAction CrouchAction; private InputAction JumpAction; private InputAction ShootAction; + private InputAction SwitchUpAction; private float PreviousPlayerUpdate = -1; private float PreviousPlayerFullSync = -1; @@ -52,7 +53,15 @@ namespace NeonTea.Quakeball.Players { Networking.Net.Singleton.Instance.LocalPlayerAction(PlayerAction.Shoot, shootData); } Player.Shoot(); - }; + };/* + ShootAction = new InputAction("Shoot", binding: "/leftButton"); + ShootAction.performed += _ => { + if (Networking.Net.Singleton.Instance != null) { + ShootData shootData = new ShootData(Player.Pitch, Player.Yaw, Player.CreateSyncPacket()); + Networking.Net.Singleton.Instance.LocalPlayerAction(PlayerAction.Shoot, shootData); + } + Player.Shoot(); + };*/ Terminal.Singleton.RegisterCommand("tp", args => { if (args.Length != 3) { diff --git a/Assets/Scripts/Players/Player.cs b/Assets/Scripts/Players/Player.cs index 51a71d2..5bfdbb2 100644 --- a/Assets/Scripts/Players/Player.cs +++ b/Assets/Scripts/Players/Player.cs @@ -20,10 +20,15 @@ namespace NeonTea.Quakeball.Players { public float PingBias; public MoveStyle[] MoveStyles; - public Item Gun; public SoldierProceduralAnimator SoldierProceduralAnimator; + [Header("Item related")] + public Transform ItemRoot; + public GameObject[] PossibleItems; + public int CurrentItemIdx; + public Item CurrentItem; + [Tooltip("GameObjects that are disabled on death and re-enabled on respawn.")] public GameObject[] DisabledOnDeath; @@ -155,8 +160,8 @@ namespace NeonTea.Quakeball.Players { if (Time.time < next) { return; } - NextAllowedShot = Time.time + Gun.Cooldown; - Gun.Shoot(this); + NextAllowedShot = Time.time + CurrentItem.Cooldown; + CurrentItem.Shoot(this); } public void Hit(ulong sourceUid) { @@ -214,6 +219,20 @@ namespace NeonTea.Quakeball.Players { return CharacterController.isGrounded && Vector3.Dot(GravitationalVelocity, Vector3.down) >= 0; } + public void SwitchItem(int index) { + if (CurrentItem != null) { + CurrentItem.SwitchedOut(); + } + GameObject obj = GameObject.Instantiate(PossibleItems[index]); + Vector3 localPos = obj.transform.localPosition; + obj.transform.parent = ItemRoot.transform; + obj.transform.localPosition = localPos; + CurrentItem = obj.GetComponent(); + CurrentItem.Holder = this; + CurrentItem.Switched(); + SoldierProceduralAnimator.OnItemSwitched(); + } + /// The normal of the ground below the player. If there is no ground, it's Vector3.up by default. private Vector3 GroundCast() { RaycastHit hit; @@ -228,6 +247,10 @@ namespace NeonTea.Quakeball.Players { } } + private void Start() { + SwitchItem(CurrentItemIdx); + } + private void Awake() { CharacterController = GetComponent(); FeetPosition = transform.position + CharacterController.center - Vector3.up * (CharacterController.height / 2 + CharacterController.skinWidth / 2); @@ -302,7 +325,7 @@ namespace NeonTea.Quakeball.Players { float TargetBobbiness = Grounded ? GroundVelocity.magnitude / MoveStyle.TargetVelocity : 0; - Gun.Animator.SetLayerWeight(1, Mathf.Lerp(Gun.Animator.GetLayerWeight(1), TargetBobbiness, 10f * Time.deltaTime)); + CurrentItem.Animator.SetLayerWeight(1, Mathf.Lerp(CurrentItem.Animator.GetLayerWeight(1), TargetBobbiness, 10f * Time.deltaTime)); } } } diff --git a/Assets/Unity/RegularPrefabEnvironment.unity b/Assets/Unity/RegularPrefabEnvironment.unity index 625f2a6..0278c0c 100644 --- a/Assets/Unity/RegularPrefabEnvironment.unity +++ b/Assets/Unity/RegularPrefabEnvironment.unity @@ -474,12 +474,104 @@ Transform: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1211757860} m_LocalRotation: {x: 0.40821788, y: -0.23456968, z: 0.10938163, w: 0.8754261} - m_LocalPosition: {x: 0, y: 3, z: 0} + m_LocalPosition: {x: -0.89, y: 3, z: -3.51} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 50, y: -30, z: 0} +--- !u!1 &1463089170 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1463089172} + - component: {fileID: 1463089171} + m_Layer: 0 + m_Name: Point Light + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!108 &1463089171 +Light: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1463089170} + m_Enabled: 1 + serializedVersion: 10 + m_Type: 2 + m_Shape: 0 + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_Intensity: 1 + m_Range: 30 + m_SpotAngle: 30 + m_InnerSpotAngle: 21.80208 + m_CookieSize: 10 + m_Shadows: + m_Type: 0 + m_Resolution: -1 + m_CustomResolution: -1 + m_Strength: 1 + m_Bias: 0.05 + m_NormalBias: 0.4 + m_NearPlane: 0.2 + m_CullingMatrixOverride: + e00: 1 + e01: 0 + e02: 0 + e03: 0 + e10: 0 + e11: 1 + e12: 0 + e13: 0 + e20: 0 + e21: 0 + e22: 1 + e23: 0 + e30: 0 + e31: 0 + e32: 0 + e33: 1 + m_UseCullingMatrixOverride: 0 + m_Cookie: {fileID: 0} + m_DrawHalo: 0 + m_Flare: {fileID: 0} + m_RenderMode: 0 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RenderingLayerMask: 1 + m_Lightmapping: 4 + m_LightShadowCasterMode: 0 + m_AreaSize: {x: 1, y: 1} + m_BounceIntensity: 1 + m_ColorTemperature: 6570 + m_UseColorTemperature: 0 + m_BoundingSphereOverride: {x: 0, y: 0, z: 0, w: 0} + m_UseBoundingSphereOverride: 0 + m_ShadowRadius: 0 + m_ShadowAngle: 0 +--- !u!4 &1463089172 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1463089170} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -0.07, y: 0.678, z: 3.69} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 6 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &1901699669 GameObject: m_ObjectHideFlags: 0 diff --git a/RawAssets/McGuffin/Telly.blend b/RawAssets/McGuffin/Telly.blend index c37280c..e9b4375 100644 Binary files a/RawAssets/McGuffin/Telly.blend and b/RawAssets/McGuffin/Telly.blend differ