From 3e1b55b036f16ea72823fea53a8db4f52a60bcb1 Mon Sep 17 00:00:00 2001 From: sebastianhampel1 Date: Thu, 1 Jun 2023 14:25:46 -0400 Subject: [PATCH] namespacing and multiplayer lobby --- Assets/Materials/Basic/TwoSidedCold.mat | 268 +++ Assets/Materials/Basic/TwoSidedCold.mat.meta | 8 + .../Models/WorldEnviornment/Cryopod.fbx.meta | 4 +- .../WorldEnviornment/TwoWindowWalls.fbx | 3 + .../WorldEnviornment/TwoWindowWalls.fbx.meta | 106 ++ Assets/Prefabs/LevelPrefabs/Cryopod.prefab | 2 +- Assets/Prefabs/Volumes/FirstTestVolume.asset | 6 +- .../MultiplayerScenes/StylizedLobbyScene.meta | 8 + .../StylizedLobbyScene.unity | 1493 +++++++++++++++++ .../StylizedLobbyScene.unity.meta | 7 + .../VolumeOne Profile.asset | 226 +++ .../VolumeOne Profile.asset.meta | 8 + Assets/Scripts/DGemItem.cs | 2 +- Assets/Scripts/Enemies/AI/AIStateMachine.cs | 4 +- .../Enemies/AI/SkinlessMonsterAnimator.cs | 235 +-- .../Enemies/AI/SkinlessMonsterComponent.cs | 16 +- Assets/Scripts/Enemies/DummyComponent.cs | 31 +- Assets/Scripts/Enemies/MonsterComponent.cs | 36 +- Assets/Scripts/Enemies/SwarmAnimator.cs | 107 +- Assets/Scripts/Game/InGameManager.cs | 3 + Assets/Scripts/Game/InGameMenuManager.cs | 83 +- Assets/Scripts/Game/Optimizer.cs | 2 + Assets/Scripts/GemItem.cs | 2 +- Assets/Scripts/Item/DoorInteractable.cs | 2 +- Assets/Scripts/Item/Pistol/PistolComponent.cs | 6 +- Assets/Scripts/Item/SpecialItemCycler.cs | 2 +- .../BasicLevelProgressionSystem.cs | 4 +- .../Levels/Level0Scripts/LevelZeroSpecial.cs | 4 +- Assets/Scripts/Player/CameraController.cs | 92 +- Assets/Scripts/Player/CameraShift.cs | 99 +- .../Player/NoiseVisibilitySettingsManager.cs | 105 +- Assets/Scripts/Player/PlayerAim.cs | 37 +- .../Player/PlayerAnimationController.cs | 186 +- Assets/Scripts/Player/PlayerComponent.cs | 165 +- .../Player/PlayerInteractionHandler.cs | 10 +- .../Player/PlayerMovementController.cs | 286 ++-- Assets/Scripts/Player/StatsOutputScreen.cs | 89 +- 37 files changed, 2962 insertions(+), 785 deletions(-) create mode 100644 Assets/Materials/Basic/TwoSidedCold.mat create mode 100644 Assets/Materials/Basic/TwoSidedCold.mat.meta create mode 100644 Assets/Models/WorldEnviornment/TwoWindowWalls.fbx create mode 100644 Assets/Models/WorldEnviornment/TwoWindowWalls.fbx.meta create mode 100644 Assets/Scenes/Experimentation/MultiplayerScenes/StylizedLobbyScene.meta create mode 100644 Assets/Scenes/Experimentation/MultiplayerScenes/StylizedLobbyScene.unity create mode 100644 Assets/Scenes/Experimentation/MultiplayerScenes/StylizedLobbyScene.unity.meta create mode 100644 Assets/Scenes/Experimentation/MultiplayerScenes/StylizedLobbyScene/VolumeOne Profile.asset create mode 100644 Assets/Scenes/Experimentation/MultiplayerScenes/StylizedLobbyScene/VolumeOne Profile.asset.meta diff --git a/Assets/Materials/Basic/TwoSidedCold.mat b/Assets/Materials/Basic/TwoSidedCold.mat new file mode 100644 index 0000000..cd93076 --- /dev/null +++ b/Assets/Materials/Basic/TwoSidedCold.mat @@ -0,0 +1,268 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &-6018244971025479954 +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: da692e001514ec24dbc4cca1949ff7e8, type: 3} + m_Name: + m_EditorClassIdentifier: + version: 12 + hdPluginSubTargetMaterialVersions: + m_Keys: [] + m_Values: +--- !u!21 &2100000 +Material: + serializedVersion: 8 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: TwoSidedCold + m_Shader: {fileID: 4800000, guid: 6e4ae4064600d784cac1e41a9e6f2e59, type: 3} + m_ValidKeywords: + - _DISABLE_SSR_TRANSPARENT + - _DOUBLESIDED_ON + - _NORMALMAP + - _NORMALMAP_TANGENT_SPACE + m_InvalidKeywords: [] + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 1 + m_CustomRenderQueue: 2225 + stringTagMap: {} + disabledShaderPasses: + - TransparentDepthPrepass + - TransparentDepthPostpass + - TransparentBackface + - RayTracingPrepass + - MOTIONVECTORS + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _AnisotropyMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _BaseColorMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _BentNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _BentNormalMapOS: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _CoatMaskMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissiveColorMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _HeightMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _IridescenceMaskMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _IridescenceThicknessMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MaskMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _NormalMap: + m_Texture: {fileID: 2800000, guid: e5d7857b4e6de39418d36ee49f68c66c, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _NormalMapOS: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _SpecularColorMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _SubsurfaceMaskMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _TangentMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _TangentMapOS: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ThicknessMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _TransmittanceColorMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - unity_Lightmaps: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - unity_LightmapsInd: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - unity_ShadowMasks: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Ints: [] + m_Floats: + - _AORemapMax: 1 + - _AORemapMin: 0 + - _ATDistance: 1 + - _AddPrecomputedVelocity: 0 + - _AlbedoAffectEmissive: 0 + - _AlphaCutoff: 0.5 + - _AlphaCutoffEnable: 0 + - _AlphaCutoffPostpass: 0.5 + - _AlphaCutoffPrepass: 0.5 + - _AlphaCutoffShadow: 0.5 + - _AlphaDstBlend: 0 + - _AlphaSrcBlend: 1 + - _AlphaToMask: 0 + - _AlphaToMaskInspectorValue: 0 + - _Anisotropy: 0 + - _BlendMode: 0 + - _CoatMask: 0 + - _CullMode: 0 + - _CullModeForward: 0 + - _Cutoff: 0.5 + - _DepthOffsetEnable: 0 + - _DetailAlbedoScale: 1 + - _DetailNormalScale: 1 + - _DetailSmoothnessScale: 1 + - _DiffusionProfile: 0 + - _DiffusionProfileHash: 0 + - _DisplacementLockObjectScale: 1 + - _DisplacementLockTilingScale: 1 + - _DisplacementMode: 0 + - _DoubleSidedEnable: 1 + - _DoubleSidedGIMode: 0 + - _DoubleSidedNormalMode: 1 + - _DstBlend: 0 + - _EmissiveColorMode: 1 + - _EmissiveExposureWeight: 1 + - _EmissiveIntensity: 1 + - _EmissiveIntensityUnit: 0 + - _EnableBlendModePreserveSpecularLighting: 1 + - _EnableFogOnTransparent: 1 + - _EnableGeometricSpecularAA: 0 + - _EnergyConservingSpecularColor: 1 + - _HeightAmplitude: 0.02 + - _HeightCenter: 0.5 + - _HeightMapParametrization: 0 + - _HeightMax: 1 + - _HeightMin: -1 + - _HeightOffset: 0 + - _HeightPoMAmplitude: 2 + - _HeightTessAmplitude: 2 + - _HeightTessCenter: 0.5 + - _InvTilingScale: 1 + - _Ior: 1.5 + - _IridescenceMask: 1 + - _IridescenceThickness: 1 + - _LinkDetailsWithBase: 1 + - _MaterialID: 1 + - _Metallic: 0.634 + - _MetallicRemapMax: 1 + - _MetallicRemapMin: 0 + - _NormalMapSpace: 0 + - _NormalScale: 0.69 + - _OpaqueCullMode: 2 + - _PPDLodThreshold: 5 + - _PPDMaxSamples: 15 + - _PPDMinSamples: 5 + - _PPDPrimitiveLength: 1 + - _PPDPrimitiveWidth: 1 + - _RayTracing: 0 + - _ReceivesSSR: 1 + - _ReceivesSSRTransparent: 0 + - _RefractionModel: 0 + - _Smoothness: 0.707 + - _SmoothnessRemapMax: 1 + - _SmoothnessRemapMin: 0 + - _SpecularAAScreenSpaceVariance: 0.1 + - _SpecularAAThreshold: 0.2 + - _SpecularOcclusionMode: 1 + - _SrcBlend: 1 + - _StencilRef: 0 + - _StencilRefDepth: 8 + - _StencilRefGBuffer: 10 + - _StencilRefMV: 40 + - _StencilWriteMask: 6 + - _StencilWriteMaskDepth: 8 + - _StencilWriteMaskGBuffer: 14 + - _StencilWriteMaskMV: 40 + - _SubsurfaceMask: 1 + - _SupportDecals: 1 + - _SurfaceType: 0 + - _TexWorldScale: 1 + - _TexWorldScaleEmissive: 1 + - _Thickness: 1 + - _TransmissionEnable: 1 + - _TransparentBackfaceEnable: 0 + - _TransparentCullMode: 2 + - _TransparentDepthPostpassEnable: 0 + - _TransparentDepthPrepassEnable: 0 + - _TransparentSortPriority: 0 + - _TransparentWritingMotionVec: 0 + - _TransparentZWrite: 0 + - _UVBase: 0 + - _UVDetail: 0 + - _UVEmissive: 0 + - _UseEmissiveIntensity: 0 + - _UseShadowThreshold: 0 + - _ZTestDepthEqualForOpaque: 3 + - _ZTestGBuffer: 4 + - _ZTestTransparent: 4 + - _ZWrite: 1 + m_Colors: + - _BaseColor: {r: 0.71132076, g: 0.8888575, b: 1, a: 1} + - _BaseColorMap_MipInfo: {r: 0, g: 0, b: 0, a: 0} + - _Color: {r: 0.71132076, g: 0.8888575, b: 1, a: 1} + - _DiffusionProfileAsset: {r: 0, g: 0, b: 0, a: 0} + - _DoubleSidedConstants: {r: 1, g: 1, b: -1, a: 0} + - _EmissionColor: {r: 1, g: 1, b: 1, a: 1} + - _EmissiveColor: {r: 0, g: 0, b: 0, a: 1} + - _EmissiveColorLDR: {r: 0, g: 0, b: 0, a: 1} + - _InvPrimScale: {r: 1, g: 1, b: 0, a: 0} + - _IridescenceThicknessRemap: {r: 0, g: 1, b: 0, a: 0} + - _SpecularColor: {r: 1, g: 1, b: 1, a: 1} + - _ThicknessRemap: {r: 0, g: 1, b: 0, a: 0} + - _TransmittanceColor: {r: 1, g: 1, b: 1, a: 1} + - _UVDetailsMappingMask: {r: 1, g: 0, b: 0, a: 0} + - _UVMappingMask: {r: 1, g: 0, b: 0, a: 0} + - _UVMappingMaskEmissive: {r: 1, g: 0, b: 0, a: 0} + m_BuildTextureStacks: [] diff --git a/Assets/Materials/Basic/TwoSidedCold.mat.meta b/Assets/Materials/Basic/TwoSidedCold.mat.meta new file mode 100644 index 0000000..94657ee --- /dev/null +++ b/Assets/Materials/Basic/TwoSidedCold.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 6510f454e38068c4392825f2f7689ef1 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Models/WorldEnviornment/Cryopod.fbx.meta b/Assets/Models/WorldEnviornment/Cryopod.fbx.meta index 996070d..386a8d6 100644 --- a/Assets/Models/WorldEnviornment/Cryopod.fbx.meta +++ b/Assets/Models/WorldEnviornment/Cryopod.fbx.meta @@ -69,9 +69,9 @@ ModelImporter: useFileScale: 1 tangentSpace: normalSmoothAngle: 60 - normalImportMode: 0 + normalImportMode: 1 tangentImportMode: 3 - normalCalculationMode: 4 + normalCalculationMode: 3 legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 blendShapeNormalImportMode: 1 normalSmoothingSource: 0 diff --git a/Assets/Models/WorldEnviornment/TwoWindowWalls.fbx b/Assets/Models/WorldEnviornment/TwoWindowWalls.fbx new file mode 100644 index 0000000..9b00e30 --- /dev/null +++ b/Assets/Models/WorldEnviornment/TwoWindowWalls.fbx @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2337a046b226e96dfdadbecf78efd0e1b0454e8d58951181075913e1705e3668 +size 43404 diff --git a/Assets/Models/WorldEnviornment/TwoWindowWalls.fbx.meta b/Assets/Models/WorldEnviornment/TwoWindowWalls.fbx.meta new file mode 100644 index 0000000..b8c2009 --- /dev/null +++ b/Assets/Models/WorldEnviornment/TwoWindowWalls.fbx.meta @@ -0,0 +1,106 @@ +fileFormatVersion: 2 +guid: 5554e2a3b56d46d46a640a8d60d3897b +ModelImporter: + serializedVersion: 21300 + internalIDToNameTable: [] + externalObjects: {} + materials: + materialImportMode: 2 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + removeConstantScaleCurves: 1 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 0 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + sortHierarchyByName: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + nodeNameCollisionStrategy: 1 + fileIdsGeneration: 2 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + keepQuads: 0 + weldVertices: 1 + bakeAxisConversion: 0 + preserveHierarchy: 0 + skinWeightsMode: 0 + maxBonesPerVertex: 4 + minBoneWeight: 0.001 + optimizeBones: 1 + meshOptimizationFlags: -1 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVMarginMethod: 1 + secondaryUVMinLightmapResolution: 40 + secondaryUVMinObjectScale: 1 + secondaryUVPackMargin: 4 + useFileScale: 1 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + referencedClips: [] + importAnimation: 1 + humanDescription: + serializedVersion: 3 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + globalScale: 1 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + autoGenerateAvatarMappingIfUnspecified: 1 + animationType: 2 + humanoidOversampling: 1 + avatarSetup: 0 + addHumanoidExtraRootOnlyWhenUsingAvatar: 1 + remapMaterialsIfMaterialImportModeIsNone: 0 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Prefabs/LevelPrefabs/Cryopod.prefab b/Assets/Prefabs/LevelPrefabs/Cryopod.prefab index d153b46..cda0946 100644 --- a/Assets/Prefabs/LevelPrefabs/Cryopod.prefab +++ b/Assets/Prefabs/LevelPrefabs/Cryopod.prefab @@ -63,7 +63,7 @@ MeshRenderer: m_RendererPriority: 0 m_Materials: - {fileID: 2100000, guid: 6106523363fe51244a25535b75eb736d, type: 2} - - {fileID: -6922793697723135513, guid: c038a760050b2c644a3947a794190aac, type: 3} + - {fileID: 2100000, guid: 6510f454e38068c4392825f2f7689ef1, type: 2} - {fileID: 2100000, guid: 6106523363fe51244a25535b75eb736d, type: 2} - {fileID: 2100000, guid: 4f7af3243dccb2443a3b363fb4b73602, type: 2} - {fileID: -6629797300637803691, guid: c038a760050b2c644a3947a794190aac, type: 3} diff --git a/Assets/Prefabs/Volumes/FirstTestVolume.asset b/Assets/Prefabs/Volumes/FirstTestVolume.asset index e68e6c9..1e83b48 100644 --- a/Assets/Prefabs/Volumes/FirstTestVolume.asset +++ b/Assets/Prefabs/Volumes/FirstTestVolume.asset @@ -12,7 +12,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d877ec3e844f2ca46830012e8e79319b, type: 3} m_Name: PhysicallyBasedSky m_EditorClassIdentifier: - active: 0 + active: 1 rotation: m_OverrideState: 0 m_Value: 0 @@ -207,7 +207,7 @@ MonoBehaviour: active: 1 skyType: m_OverrideState: 1 - m_Value: 1 + m_Value: 4 cloudType: m_OverrideState: 1 m_Value: 0 @@ -342,7 +342,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 59b6606ef2548734bb6d11b9d160bc7e, type: 3} m_Name: HDRISky m_EditorClassIdentifier: - active: 1 + active: 0 rotation: m_OverrideState: 0 m_Value: 0 diff --git a/Assets/Scenes/Experimentation/MultiplayerScenes/StylizedLobbyScene.meta b/Assets/Scenes/Experimentation/MultiplayerScenes/StylizedLobbyScene.meta new file mode 100644 index 0000000..ccb52fc --- /dev/null +++ b/Assets/Scenes/Experimentation/MultiplayerScenes/StylizedLobbyScene.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 4d8206c39423b0f4888ba27b45e50c5d +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scenes/Experimentation/MultiplayerScenes/StylizedLobbyScene.unity b/Assets/Scenes/Experimentation/MultiplayerScenes/StylizedLobbyScene.unity new file mode 100644 index 0000000..011f361 --- /dev/null +++ b/Assets/Scenes/Experimentation/MultiplayerScenes/StylizedLobbyScene.unity @@ -0,0 +1,1493 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!29 &1 +OcclusionCullingSettings: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_OcclusionBakeSettings: + smallestOccluder: 5 + smallestHole: 0.25 + backfaceThreshold: 100 + m_SceneGUID: 00000000000000000000000000000000 + m_OcclusionCullingData: {fileID: 0} +--- !u!104 &2 +RenderSettings: + m_ObjectHideFlags: 0 + serializedVersion: 9 + m_Fog: 0 + m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} + m_FogMode: 3 + m_FogDensity: 0.01 + m_LinearFogStart: 0 + m_LinearFogEnd: 300 + m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} + m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} + m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} + m_AmbientIntensity: 1 + m_AmbientMode: 0 + m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} + m_SkyboxMaterial: {fileID: 0} + m_HaloStrength: 0.5 + m_FlareStrength: 1 + m_FlareFadeSpeed: 3 + m_HaloTexture: {fileID: 0} + m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} + m_DefaultReflectionMode: 0 + m_DefaultReflectionResolution: 128 + m_ReflectionBounces: 1 + m_ReflectionIntensity: 1 + m_CustomReflection: {fileID: 0} + m_Sun: {fileID: 0} + m_IndirectSpecularColor: {r: 0.010425299, g: 0.008907616, b: 0.009156868, a: 1} + m_UseRadianceAmbientProbe: 0 +--- !u!157 &3 +LightmapSettings: + m_ObjectHideFlags: 0 + serializedVersion: 12 + m_GIWorkflowMode: 1 + m_GISettings: + serializedVersion: 2 + m_BounceScale: 1 + m_IndirectOutputScale: 1 + m_AlbedoBoost: 1 + m_EnvironmentLightingMode: 0 + m_EnableBakedLightmaps: 1 + m_EnableRealtimeLightmaps: 0 + m_LightmapEditorSettings: + serializedVersion: 12 + m_Resolution: 2 + m_BakeResolution: 40 + m_AtlasSize: 1024 + m_AO: 0 + m_AOMaxDistance: 1 + m_CompAOExponent: 1 + m_CompAOExponentDirect: 0 + m_ExtractAmbientOcclusion: 0 + m_Padding: 2 + m_LightmapParameters: {fileID: 0} + m_LightmapsBakeMode: 1 + m_TextureCompression: 1 + m_FinalGather: 0 + m_FinalGatherFiltering: 1 + m_FinalGatherRayCount: 256 + m_ReflectionCompression: 2 + m_MixedBakeMode: 2 + m_BakeBackend: 1 + m_PVRSampling: 1 + m_PVRDirectSampleCount: 32 + m_PVRSampleCount: 512 + m_PVRBounces: 2 + m_PVREnvironmentSampleCount: 256 + m_PVREnvironmentReferencePointCount: 2048 + m_PVRFilteringMode: 1 + m_PVRDenoiserTypeDirect: 1 + m_PVRDenoiserTypeIndirect: 1 + m_PVRDenoiserTypeAO: 1 + m_PVRFilterTypeDirect: 0 + m_PVRFilterTypeIndirect: 0 + m_PVRFilterTypeAO: 0 + m_PVREnvironmentMIS: 1 + m_PVRCulling: 1 + m_PVRFilteringGaussRadiusDirect: 1 + m_PVRFilteringGaussRadiusIndirect: 5 + m_PVRFilteringGaussRadiusAO: 2 + m_PVRFilteringAtrousPositionSigmaDirect: 0.5 + m_PVRFilteringAtrousPositionSigmaIndirect: 2 + m_PVRFilteringAtrousPositionSigmaAO: 1 + m_ExportTrainingData: 0 + m_TrainingDataDestination: TrainingData + m_LightProbeSampleCountMultiplier: 4 + m_LightingDataAsset: {fileID: 0} + m_LightingSettings: {fileID: 0} +--- !u!196 &4 +NavMeshSettings: + serializedVersion: 2 + m_ObjectHideFlags: 0 + m_BuildSettings: + serializedVersion: 2 + agentTypeID: 0 + agentRadius: 0.5 + agentHeight: 2 + agentSlope: 45 + agentClimb: 0.4 + ledgeDropHeight: 0 + maxJumpAcrossDistance: 0 + minRegionArea: 2 + manualCellSize: 0 + cellSize: 0.16666667 + manualTileSize: 0 + tileSize: 256 + accuratePlacement: 0 + maxJobWorkers: 0 + preserveTilesOutsideBounds: 0 + debug: + m_Flags: 0 + m_NavMeshData: {fileID: 0} +--- !u!1001 &283318320 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 33566411, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_LocalPosition.x + value: 0.0041 + objectReference: {fileID: 0} + - target: {fileID: 33566411, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_LocalPosition.z + value: 0.0483 + objectReference: {fileID: 0} + - target: {fileID: 33566412, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_Intensity + value: 166.25027 + objectReference: {fileID: 0} + - target: {fileID: 33566413, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_Intensity + value: 776.5278 + objectReference: {fileID: 0} + - target: {fileID: 33566413, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_AreaSize.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 33566413, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_AreaSize.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 6960644867054158483, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_RootOrder + value: 5 + objectReference: {fileID: 0} + - target: {fileID: 6960644867054158483, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_LocalScale.y + value: 80 + objectReference: {fileID: 0} + - target: {fileID: 6960644867054158483, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6960644867054158483, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_LocalPosition.y + value: 1.77 + objectReference: {fileID: 0} + - target: {fileID: 6960644867054158483, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_LocalPosition.z + value: -2.7548988 + objectReference: {fileID: 0} + - target: {fileID: 6960644867054158483, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_LocalRotation.w + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 6960644867054158483, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_LocalRotation.x + value: -0.5 + objectReference: {fileID: 0} + - target: {fileID: 6960644867054158483, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_LocalRotation.y + value: -0.5 + objectReference: {fileID: 0} + - target: {fileID: 6960644867054158483, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_LocalRotation.z + value: -0.5 + objectReference: {fileID: 0} + - target: {fileID: 6960644867054158483, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: -90 + objectReference: {fileID: 0} + - target: {fileID: 6960644867054158483, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6960644867054158483, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: -90 + objectReference: {fileID: 0} + - target: {fileID: 7769550536203343913, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_Name + value: Cryopod (1) + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 231880aae7c09254dac056505dfab7f9, type: 3} +--- !u!1001 &312362760 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 8086752637240226563, guid: d434b10738197414b8cd18b6a1c3895a, type: 3} + propertyPath: m_RootOrder + value: 12 + objectReference: {fileID: 0} + - target: {fileID: 8086752637240226563, guid: d434b10738197414b8cd18b6a1c3895a, type: 3} + propertyPath: m_LocalPosition.x + value: 2.25 + objectReference: {fileID: 0} + - target: {fileID: 8086752637240226563, guid: d434b10738197414b8cd18b6a1c3895a, type: 3} + propertyPath: m_LocalPosition.y + value: 5.76 + objectReference: {fileID: 0} + - target: {fileID: 8086752637240226563, guid: d434b10738197414b8cd18b6a1c3895a, type: 3} + propertyPath: m_LocalPosition.z + value: -2.53 + objectReference: {fileID: 0} + - target: {fileID: 8086752637240226563, guid: d434b10738197414b8cd18b6a1c3895a, type: 3} + propertyPath: m_LocalRotation.w + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8086752637240226563, guid: d434b10738197414b8cd18b6a1c3895a, type: 3} + propertyPath: m_LocalRotation.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 8086752637240226563, guid: d434b10738197414b8cd18b6a1c3895a, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8086752637240226563, guid: d434b10738197414b8cd18b6a1c3895a, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8086752637240226563, guid: d434b10738197414b8cd18b6a1c3895a, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 180 + objectReference: {fileID: 0} + - target: {fileID: 8086752637240226563, guid: d434b10738197414b8cd18b6a1c3895a, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8086752637240226563, guid: d434b10738197414b8cd18b6a1c3895a, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8895235990039849401, guid: d434b10738197414b8cd18b6a1c3895a, type: 3} + propertyPath: m_Name + value: CeilLight (2) + objectReference: {fileID: 0} + - target: {fileID: 8895235990039849401, guid: d434b10738197414b8cd18b6a1c3895a, type: 3} + propertyPath: m_IsActive + value: 1 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: d434b10738197414b8cd18b6a1c3895a, type: 3} +--- !u!1001 &361856476 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 8086752637240226563, guid: d434b10738197414b8cd18b6a1c3895a, type: 3} + propertyPath: m_RootOrder + value: 13 + objectReference: {fileID: 0} + - target: {fileID: 8086752637240226563, guid: d434b10738197414b8cd18b6a1c3895a, type: 3} + propertyPath: m_LocalPosition.x + value: 4.5 + objectReference: {fileID: 0} + - target: {fileID: 8086752637240226563, guid: d434b10738197414b8cd18b6a1c3895a, type: 3} + propertyPath: m_LocalPosition.y + value: 5.76 + objectReference: {fileID: 0} + - target: {fileID: 8086752637240226563, guid: d434b10738197414b8cd18b6a1c3895a, type: 3} + propertyPath: m_LocalPosition.z + value: -2.53 + objectReference: {fileID: 0} + - target: {fileID: 8086752637240226563, guid: d434b10738197414b8cd18b6a1c3895a, type: 3} + propertyPath: m_LocalRotation.w + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8086752637240226563, guid: d434b10738197414b8cd18b6a1c3895a, type: 3} + propertyPath: m_LocalRotation.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 8086752637240226563, guid: d434b10738197414b8cd18b6a1c3895a, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8086752637240226563, guid: d434b10738197414b8cd18b6a1c3895a, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8086752637240226563, guid: d434b10738197414b8cd18b6a1c3895a, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 180 + objectReference: {fileID: 0} + - target: {fileID: 8086752637240226563, guid: d434b10738197414b8cd18b6a1c3895a, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8086752637240226563, guid: d434b10738197414b8cd18b6a1c3895a, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8895235990039849401, guid: d434b10738197414b8cd18b6a1c3895a, type: 3} + propertyPath: m_Name + value: CeilLight (3) + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: d434b10738197414b8cd18b6a1c3895a, type: 3} +--- !u!1 &527269037 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 527269041} + - component: {fileID: 527269040} + - component: {fileID: 527269039} + - component: {fileID: 527269038} + m_Layer: 0 + m_Name: Floor (1) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!64 &527269038 +MeshCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 527269037} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 4 + m_Convex: 0 + m_CookingOptions: 30 + m_Mesh: {fileID: 10209, guid: 0000000000000000e000000000000000, type: 0} +--- !u!23 &527269039 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 527269037} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 257 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 6106523363fe51244a25535b75eb736d, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &527269040 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 527269037} + m_Mesh: {fileID: 10209, guid: 0000000000000000e000000000000000, type: 0} +--- !u!4 &527269041 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 527269037} + m_LocalRotation: {x: 0, y: 0, z: 1, w: 0} + m_LocalPosition: {x: 0, y: 5.76, z: -10.46} + m_LocalScale: {x: 2, y: 2, z: 2} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 9 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 180} +--- !u!1 &809476871 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 809476874} + - component: {fileID: 809476873} + - component: {fileID: 809476872} + m_Layer: 0 + m_Name: Directional Light + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &809476872 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 809476871} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 7a68c43fe1f2a47cfa234b5eeaa98012, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Intensity: 0.121173225 + m_EnableSpotReflector: 1 + m_LuxAtDistance: 1 + m_InnerSpotPercent: 0 + m_SpotIESCutoffPercent: 100 + m_LightDimmer: 1 + m_VolumetricDimmer: 1 + m_LightUnit: 2 + m_FadeDistance: 10000 + m_VolumetricFadeDistance: 10000 + m_AffectDiffuse: 1 + m_AffectSpecular: 1 + m_NonLightmappedOnly: 0 + m_ShapeWidth: 0.5 + m_ShapeHeight: 0.5 + m_AspectRatio: 1 + m_ShapeRadius: 0.025 + m_SoftnessScale: 1 + m_UseCustomSpotLightShadowCone: 0 + m_CustomSpotLightShadowCone: 30 + m_MaxSmoothness: 0.99 + m_ApplyRangeAttenuation: 1 + m_DisplayAreaLightEmissiveMesh: 0 + m_AreaLightCookie: {fileID: 0} + m_IESPoint: {fileID: 0} + m_IESSpot: {fileID: 0} + m_IncludeForRayTracing: 1 + m_AreaLightShadowCone: 120 + m_UseScreenSpaceShadows: 0 + m_InteractsWithSky: 1 + m_AngularDiameter: 0.5 + m_FlareSize: 2 + m_FlareTint: {r: 1, g: 1, b: 1, a: 1} + m_FlareFalloff: 4 + m_SurfaceTexture: {fileID: 0} + m_SurfaceTint: {r: 1, g: 1, b: 1, a: 1} + m_Distance: 1.5e+11 + m_UseRayTracedShadows: 0 + m_NumRayTracingSamples: 4 + m_FilterTracedShadow: 1 + m_FilterSizeTraced: 16 + m_SunLightConeAngle: 0.5 + m_LightShadowRadius: 0.5 + m_SemiTransparentShadow: 0 + m_ColorShadow: 1 + m_DistanceBasedFiltering: 0 + m_EvsmExponent: 15 + m_EvsmLightLeakBias: 0 + m_EvsmVarianceBias: 0.00001 + m_EvsmBlurPasses: 0 + m_LightlayersMask: 1 + m_LinkShadowLayers: 1 + m_ShadowNearPlane: 0.1 + m_BlockerSampleCount: 24 + m_FilterSampleCount: 16 + m_MinFilterSize: 0.1 + m_KernelSize: 5 + m_LightAngle: 1 + m_MaxDepthBias: 0.001 + m_ShadowResolution: + m_Override: 512 + m_UseOverride: 1 + m_Level: 0 + m_ShadowDimmer: 1 + m_VolumetricShadowDimmer: 1 + m_ShadowFadeDistance: 10000 + m_UseContactShadow: + m_Override: 0 + m_UseOverride: 1 + m_Level: 0 + m_RayTracedContactShadow: 0 + m_ShadowTint: {r: 0, g: 0, b: 0, a: 1} + m_PenumbraTint: 0 + m_NormalBias: 0.75 + m_SlopeBias: 0.5 + m_ShadowUpdateMode: 0 + m_AlwaysDrawDynamicShadows: 0 + m_UpdateShadowOnLightMovement: 0 + m_CachedShadowTranslationThreshold: 0.01 + m_CachedShadowAngularThreshold: 0.5 + m_BarnDoorAngle: 90 + m_BarnDoorLength: 0.05 + m_preserveCachedShadow: 0 + m_OnDemandShadowRenderOnPlacement: 1 + m_ShadowCascadeRatios: + - 0.05 + - 0.2 + - 0.3 + m_ShadowCascadeBorders: + - 0.2 + - 0.2 + - 0.2 + - 0.2 + m_ShadowAlgorithm: 0 + m_ShadowVariant: 0 + m_ShadowPrecision: 0 + useOldInspector: 0 + useVolumetric: 1 + featuresFoldout: 1 + m_AreaLightEmissiveMeshShadowCastingMode: 0 + m_AreaLightEmissiveMeshMotionVectorGenerationMode: 0 + m_AreaLightEmissiveMeshLayer: -1 + m_Version: 11 + m_ObsoleteShadowResolutionTier: 1 + m_ObsoleteUseShadowQualitySettings: 0 + m_ObsoleteCustomShadowResolution: 512 + m_ObsoleteContactShadows: 0 + m_PointlightHDType: 0 + m_SpotLightShape: 0 + m_AreaLightShape: 0 +--- !u!108 &809476873 +Light: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 809476871} + m_Enabled: 1 + serializedVersion: 10 + m_Type: 1 + m_Shape: 0 + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_Intensity: 0.121173225 + m_Range: 10 + 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: 2 + m_AreaSize: {x: 0.5, y: 0.5} + m_BounceIntensity: 1 + m_ColorTemperature: 6570 + m_UseColorTemperature: 1 + m_BoundingSphereOverride: {x: 0, y: 0, z: 0, w: 0} + m_UseBoundingSphereOverride: 0 + m_UseViewFrustumForShadowCasterCull: 1 + m_ShadowRadius: 0 + m_ShadowAngle: 0 +--- !u!4 &809476874 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 809476871} + m_LocalRotation: {x: 0.40821788, y: -0.23456968, z: 0.10938163, w: 0.8754261} + m_LocalPosition: {x: -1.8573, y: 4.1779976, z: -0.694046} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 8 + m_LocalEulerAnglesHint: {x: 50, y: -30, z: 0} +--- !u!1 &1055848585 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1055848586} + m_Layer: 0 + m_Name: GameObject + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1055848586 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1055848585} + m_LocalRotation: {x: 0, y: 0.7071068, z: 0, w: 0.7071068} + m_LocalPosition: {x: 0.97, y: 2.66, z: -0.99} + m_LocalScale: {x: 0.37, y: 0.37, z: 0.37} + m_ConstrainProportionsScale: 1 + m_Children: + - {fileID: 1138118845} + m_Father: {fileID: 0} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 90, z: 0} +--- !u!1001 &1073158888 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 33566411, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_LocalPosition.x + value: 0.0041 + objectReference: {fileID: 0} + - target: {fileID: 33566411, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_LocalPosition.z + value: 0.0483 + objectReference: {fileID: 0} + - target: {fileID: 33566412, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_Intensity + value: 166.25027 + objectReference: {fileID: 0} + - target: {fileID: 33566413, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_Intensity + value: 776.5278 + objectReference: {fileID: 0} + - target: {fileID: 33566413, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_AreaSize.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 33566413, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_AreaSize.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 6960644867054158483, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_RootOrder + value: 7 + objectReference: {fileID: 0} + - target: {fileID: 6960644867054158483, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_LocalScale.y + value: 80 + objectReference: {fileID: 0} + - target: {fileID: 6960644867054158483, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_LocalPosition.x + value: 4.5 + objectReference: {fileID: 0} + - target: {fileID: 6960644867054158483, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_LocalPosition.y + value: 1.77 + objectReference: {fileID: 0} + - target: {fileID: 6960644867054158483, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_LocalPosition.z + value: -2.7548988 + objectReference: {fileID: 0} + - target: {fileID: 6960644867054158483, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_LocalRotation.w + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 6960644867054158483, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_LocalRotation.x + value: -0.5 + objectReference: {fileID: 0} + - target: {fileID: 6960644867054158483, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_LocalRotation.y + value: -0.5 + objectReference: {fileID: 0} + - target: {fileID: 6960644867054158483, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_LocalRotation.z + value: -0.5 + objectReference: {fileID: 0} + - target: {fileID: 6960644867054158483, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: -90 + objectReference: {fileID: 0} + - target: {fileID: 6960644867054158483, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6960644867054158483, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: -90 + objectReference: {fileID: 0} + - target: {fileID: 7769550536203343913, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_Name + value: Cryopod (3) + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 231880aae7c09254dac056505dfab7f9, type: 3} +--- !u!1001 &1138118844 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 1055848586} + m_Modifications: + - target: {fileID: -8679921383154817045, guid: 5554e2a3b56d46d46a640a8d60d3897b, type: 3} + propertyPath: m_RootOrder + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 5554e2a3b56d46d46a640a8d60d3897b, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 5554e2a3b56d46d46a640a8d60d3897b, type: 3} + propertyPath: m_LocalPosition.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 5554e2a3b56d46d46a640a8d60d3897b, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 5554e2a3b56d46d46a640a8d60d3897b, type: 3} + propertyPath: m_LocalRotation.w + value: 0.7071067 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 5554e2a3b56d46d46a640a8d60d3897b, type: 3} + propertyPath: m_LocalRotation.x + value: -0.7071068 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 5554e2a3b56d46d46a640a8d60d3897b, type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 5554e2a3b56d46d46a640a8d60d3897b, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 5554e2a3b56d46d46a640a8d60d3897b, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 5554e2a3b56d46d46a640a8d60d3897b, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 5554e2a3b56d46d46a640a8d60d3897b, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -7511558181221131132, guid: 5554e2a3b56d46d46a640a8d60d3897b, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: e1fe5134720cba140901cf75d1d6080f, type: 2} + - target: {fileID: -7511558181221131132, guid: 5554e2a3b56d46d46a640a8d60d3897b, type: 3} + propertyPath: m_Materials.Array.data[1] + value: + objectReference: {fileID: 2100000, guid: 4a66a32842fae9144992865383b2c4d2, type: 2} + - target: {fileID: 919132149155446097, guid: 5554e2a3b56d46d46a640a8d60d3897b, type: 3} + propertyPath: m_Name + value: TwoWindowWalls + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 5554e2a3b56d46d46a640a8d60d3897b, type: 3} +--- !u!4 &1138118845 stripped +Transform: + m_CorrespondingSourceObject: {fileID: -8679921383154817045, guid: 5554e2a3b56d46d46a640a8d60d3897b, type: 3} + m_PrefabInstance: {fileID: 1138118844} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &1359210190 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 33566411, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_LocalPosition.x + value: 0.0041 + objectReference: {fileID: 0} + - target: {fileID: 33566411, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_LocalPosition.z + value: 0.0483 + objectReference: {fileID: 0} + - target: {fileID: 33566412, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_Intensity + value: 166.25027 + objectReference: {fileID: 0} + - target: {fileID: 33566413, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_Intensity + value: 776.5278 + objectReference: {fileID: 0} + - target: {fileID: 33566413, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_AreaSize.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 33566413, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_AreaSize.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 6960644867054158483, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_RootOrder + value: 6 + objectReference: {fileID: 0} + - target: {fileID: 6960644867054158483, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_LocalScale.y + value: 80 + objectReference: {fileID: 0} + - target: {fileID: 6960644867054158483, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_LocalPosition.x + value: 2.25 + objectReference: {fileID: 0} + - target: {fileID: 6960644867054158483, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_LocalPosition.y + value: 1.77 + objectReference: {fileID: 0} + - target: {fileID: 6960644867054158483, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_LocalPosition.z + value: -2.7548988 + objectReference: {fileID: 0} + - target: {fileID: 6960644867054158483, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_LocalRotation.w + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 6960644867054158483, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_LocalRotation.x + value: -0.5 + objectReference: {fileID: 0} + - target: {fileID: 6960644867054158483, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_LocalRotation.y + value: -0.5 + objectReference: {fileID: 0} + - target: {fileID: 6960644867054158483, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_LocalRotation.z + value: -0.5 + objectReference: {fileID: 0} + - target: {fileID: 6960644867054158483, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: -90 + objectReference: {fileID: 0} + - target: {fileID: 6960644867054158483, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6960644867054158483, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: -90 + objectReference: {fileID: 0} + - target: {fileID: 7769550536203343913, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_Name + value: Cryopod (2) + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 231880aae7c09254dac056505dfab7f9, type: 3} +--- !u!1 &1397598461 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1397598464} + - component: {fileID: 1397598463} + - component: {fileID: 1397598462} + - component: {fileID: 1397598465} + m_Layer: 0 + m_Name: Main Camera + m_TagString: MainCamera + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!81 &1397598462 +AudioListener: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1397598461} + m_Enabled: 1 +--- !u!20 &1397598463 +Camera: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1397598461} + 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: 0.3 + far clip plane: 1000 + field of view: 40 + orthographic: 0 + orthographic size: 5 + m_Depth: -1 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RenderingPath: -1 + m_TargetTexture: {fileID: 0} + m_TargetDisplay: 0 + m_TargetEye: 3 + m_HDR: 0 + m_AllowMSAA: 0 + m_AllowDynamicResolution: 0 + m_ForceIntoRT: 0 + m_OcclusionCulling: 1 + m_StereoConvergence: 10 + m_StereoSeparation: 0.022 +--- !u!4 &1397598464 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1397598461} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0.79, y: 2.5, z: -13.21} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &1397598465 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1397598461} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 23c1ce4fb46143f46bc5cb5224c934f6, type: 3} + m_Name: + m_EditorClassIdentifier: + clearColorMode: 0 + backgroundColorHDR: {r: 0.025, g: 0.07, b: 0.19, a: 0} + clearDepth: 1 + volumeLayerMask: + serializedVersion: 2 + m_Bits: 1 + volumeAnchorOverride: {fileID: 0} + antialiasing: 0 + SMAAQuality: 2 + dithering: 0 + stopNaNs: 0 + taaSharpenStrength: 0.5 + TAAQuality: 1 + taaHistorySharpening: 0.35 + taaAntiFlicker: 0.5 + taaMotionVectorRejection: 0 + taaAntiHistoryRinging: 0 + taaBaseBlendFactor: 0.875 + taaJitterScale: 1 + physicalParameters: + m_Iso: 200 + m_ShutterSpeed: 0.005 + m_Aperture: 16 + m_FocusDistance: 10 + m_BladeCount: 5 + m_Curvature: {x: 2, y: 11} + m_BarrelClipping: 0.25 + m_Anamorphism: 0 + flipYMode: 0 + xrRendering: 1 + fullscreenPassthrough: 0 + allowDynamicResolution: 0 + customRenderingSettings: 0 + invertFaceCulling: 0 + probeLayerMask: + serializedVersion: 2 + m_Bits: 4294967295 + hasPersistentHistory: 0 + allowDeepLearningSuperSampling: 1 + deepLearningSuperSamplingUseCustomQualitySettings: 0 + deepLearningSuperSamplingQuality: 0 + deepLearningSuperSamplingUseCustomAttributes: 0 + deepLearningSuperSamplingUseOptimalSettings: 1 + deepLearningSuperSamplingSharpening: 0 + exposureTarget: {fileID: 0} + materialMipBias: 0 + m_RenderingPathCustomFrameSettings: + bitDatas: + data1: 72198260625768269 + data2: 13763000477350330392 + lodBias: 1 + lodBiasMode: 0 + lodBiasQualityLevel: 0 + maximumLODLevel: 0 + maximumLODLevelMode: 0 + maximumLODLevelQualityLevel: 0 + sssQualityMode: 0 + sssQualityLevel: 0 + sssCustomSampleBudget: 20 + msaaMode: 1 + materialQuality: 0 + renderingPathCustomFrameSettingsOverrideMask: + mask: + data1: 0 + data2: 0 + defaultFrameSettings: 0 + m_Version: 8 + m_ObsoleteRenderingPath: 0 + m_ObsoleteFrameSettings: + overrides: 0 + enableShadow: 0 + enableContactShadows: 0 + enableShadowMask: 0 + enableSSR: 0 + enableSSAO: 0 + enableSubsurfaceScattering: 0 + enableTransmission: 0 + enableAtmosphericScattering: 0 + enableVolumetrics: 0 + enableReprojectionForVolumetrics: 0 + enableLightLayers: 0 + enableExposureControl: 1 + diffuseGlobalDimmer: 0 + specularGlobalDimmer: 0 + shaderLitMode: 0 + enableDepthPrepassWithDeferredRendering: 0 + enableTransparentPrepass: 0 + enableMotionVectors: 0 + enableObjectMotionVectors: 0 + enableDecals: 0 + enableRoughRefraction: 0 + enableTransparentPostpass: 0 + enableDistortion: 0 + enablePostprocess: 0 + enableOpaqueObjects: 0 + enableTransparentObjects: 0 + enableRealtimePlanarReflection: 0 + enableMSAA: 0 + enableAsyncCompute: 0 + runLightListAsync: 0 + runSSRAsync: 0 + runSSAOAsync: 0 + runContactShadowsAsync: 0 + runVolumeVoxelizationAsync: 0 + lightLoopSettings: + overrides: 0 + enableDeferredTileAndCluster: 0 + enableComputeLightEvaluation: 0 + enableComputeLightVariants: 0 + enableComputeMaterialVariants: 0 + enableFptlForForwardOpaque: 0 + enableBigTilePrepass: 0 + isFptlEnabled: 0 +--- !u!1001 &1468242784 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 8086752637240226563, guid: d434b10738197414b8cd18b6a1c3895a, type: 3} + propertyPath: m_RootOrder + value: 10 + objectReference: {fileID: 0} + - target: {fileID: 8086752637240226563, guid: d434b10738197414b8cd18b6a1c3895a, type: 3} + propertyPath: m_LocalPosition.x + value: -2.25 + objectReference: {fileID: 0} + - target: {fileID: 8086752637240226563, guid: d434b10738197414b8cd18b6a1c3895a, type: 3} + propertyPath: m_LocalPosition.y + value: 5.76 + objectReference: {fileID: 0} + - target: {fileID: 8086752637240226563, guid: d434b10738197414b8cd18b6a1c3895a, type: 3} + propertyPath: m_LocalPosition.z + value: -2.53 + objectReference: {fileID: 0} + - target: {fileID: 8086752637240226563, guid: d434b10738197414b8cd18b6a1c3895a, type: 3} + propertyPath: m_LocalRotation.w + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8086752637240226563, guid: d434b10738197414b8cd18b6a1c3895a, type: 3} + propertyPath: m_LocalRotation.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 8086752637240226563, guid: d434b10738197414b8cd18b6a1c3895a, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8086752637240226563, guid: d434b10738197414b8cd18b6a1c3895a, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8086752637240226563, guid: d434b10738197414b8cd18b6a1c3895a, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 180 + objectReference: {fileID: 0} + - target: {fileID: 8086752637240226563, guid: d434b10738197414b8cd18b6a1c3895a, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8086752637240226563, guid: d434b10738197414b8cd18b6a1c3895a, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8895235990039849401, guid: d434b10738197414b8cd18b6a1c3895a, type: 3} + propertyPath: m_Name + value: CeilLight + objectReference: {fileID: 0} + - target: {fileID: 8895235990039849401, guid: d434b10738197414b8cd18b6a1c3895a, type: 3} + propertyPath: m_IsActive + value: 1 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: d434b10738197414b8cd18b6a1c3895a, type: 3} +--- !u!1001 &1924711287 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 33566410, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_IsActive + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 33566411, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_LocalPosition.x + value: 0.0041 + objectReference: {fileID: 0} + - target: {fileID: 33566411, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_LocalPosition.z + value: 0.0483 + objectReference: {fileID: 0} + - target: {fileID: 33566412, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_Intensity + value: 166.25027 + objectReference: {fileID: 0} + - target: {fileID: 33566413, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_Intensity + value: 776.5278 + objectReference: {fileID: 0} + - target: {fileID: 33566413, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_AreaSize.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 33566413, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_AreaSize.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 6960644867054158483, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_RootOrder + value: 4 + objectReference: {fileID: 0} + - target: {fileID: 6960644867054158483, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_LocalScale.y + value: 80 + objectReference: {fileID: 0} + - target: {fileID: 6960644867054158483, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_LocalPosition.x + value: -2.25 + objectReference: {fileID: 0} + - target: {fileID: 6960644867054158483, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_LocalPosition.y + value: 1.77 + objectReference: {fileID: 0} + - target: {fileID: 6960644867054158483, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_LocalPosition.z + value: -2.7548988 + objectReference: {fileID: 0} + - target: {fileID: 6960644867054158483, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_LocalRotation.w + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 6960644867054158483, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_LocalRotation.x + value: -0.5 + objectReference: {fileID: 0} + - target: {fileID: 6960644867054158483, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_LocalRotation.y + value: -0.5 + objectReference: {fileID: 0} + - target: {fileID: 6960644867054158483, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_LocalRotation.z + value: -0.5 + objectReference: {fileID: 0} + - target: {fileID: 6960644867054158483, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: -90 + objectReference: {fileID: 0} + - target: {fileID: 6960644867054158483, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6960644867054158483, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: -90 + objectReference: {fileID: 0} + - target: {fileID: 7769550536203343913, guid: 231880aae7c09254dac056505dfab7f9, type: 3} + propertyPath: m_Name + value: Cryopod + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 231880aae7c09254dac056505dfab7f9, type: 3} +--- !u!1001 &1937667734 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 8086752637240226563, guid: d434b10738197414b8cd18b6a1c3895a, type: 3} + propertyPath: m_RootOrder + value: 11 + objectReference: {fileID: 0} + - target: {fileID: 8086752637240226563, guid: d434b10738197414b8cd18b6a1c3895a, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8086752637240226563, guid: d434b10738197414b8cd18b6a1c3895a, type: 3} + propertyPath: m_LocalPosition.y + value: 5.76 + objectReference: {fileID: 0} + - target: {fileID: 8086752637240226563, guid: d434b10738197414b8cd18b6a1c3895a, type: 3} + propertyPath: m_LocalPosition.z + value: -2.53 + objectReference: {fileID: 0} + - target: {fileID: 8086752637240226563, guid: d434b10738197414b8cd18b6a1c3895a, type: 3} + propertyPath: m_LocalRotation.w + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8086752637240226563, guid: d434b10738197414b8cd18b6a1c3895a, type: 3} + propertyPath: m_LocalRotation.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 8086752637240226563, guid: d434b10738197414b8cd18b6a1c3895a, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8086752637240226563, guid: d434b10738197414b8cd18b6a1c3895a, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8086752637240226563, guid: d434b10738197414b8cd18b6a1c3895a, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 180 + objectReference: {fileID: 0} + - target: {fileID: 8086752637240226563, guid: d434b10738197414b8cd18b6a1c3895a, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8086752637240226563, guid: d434b10738197414b8cd18b6a1c3895a, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8895235990039849401, guid: d434b10738197414b8cd18b6a1c3895a, type: 3} + propertyPath: m_Name + value: CeilLight (1) + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: d434b10738197414b8cd18b6a1c3895a, type: 3} +--- !u!1 &1992251127 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1992251131} + - component: {fileID: 1992251130} + - component: {fileID: 1992251129} + - component: {fileID: 1992251128} + m_Layer: 0 + m_Name: Floor + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!64 &1992251128 +MeshCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1992251127} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 4 + m_Convex: 0 + m_CookingOptions: 30 + m_Mesh: {fileID: 10209, guid: 0000000000000000e000000000000000, type: 0} +--- !u!23 &1992251129 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1992251127} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 257 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 6106523363fe51244a25535b75eb736d, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &1992251130 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1992251127} + m_Mesh: {fileID: 10209, guid: 0000000000000000e000000000000000, type: 0} +--- !u!4 &1992251131 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1992251127} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: -10.46} + m_LocalScale: {x: 2, y: 2, z: 2} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 2 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &2062417809 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2062417812} + - component: {fileID: 2062417811} + - component: {fileID: 2062417810} + m_Layer: 0 + m_Name: VolumeOne + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &2062417810 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2062417809} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 172515602e62fb746b5d573b38a5fe58, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IsGlobal: 0 + priority: 0 + blendDistance: 1 + weight: 1 + sharedProfile: {fileID: 11400000, guid: d85510b2e610444489e9f26418e66f55, type: 2} +--- !u!65 &2062417811 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2062417809} + m_Material: {fileID: 0} + m_IsTrigger: 1 + m_Enabled: 1 + serializedVersion: 2 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!4 &2062417812 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2062417809} + m_LocalRotation: {x: 0.0020212915, y: -0.00023971793, z: -0.00017131417, w: 0.9999979} + m_LocalPosition: {x: -0.07932709, y: 1.2312082, z: 0.019855574} + m_LocalScale: {x: 50, y: 50, z: 384.81} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 3 + m_LocalEulerAnglesHint: {x: 0.232, y: -0.028, z: -0.02} diff --git a/Assets/Scenes/Experimentation/MultiplayerScenes/StylizedLobbyScene.unity.meta b/Assets/Scenes/Experimentation/MultiplayerScenes/StylizedLobbyScene.unity.meta new file mode 100644 index 0000000..d79ca9e --- /dev/null +++ b/Assets/Scenes/Experimentation/MultiplayerScenes/StylizedLobbyScene.unity.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: e0543d9968729644ba772e12b0f7f922 +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scenes/Experimentation/MultiplayerScenes/StylizedLobbyScene/VolumeOne Profile.asset b/Assets/Scenes/Experimentation/MultiplayerScenes/StylizedLobbyScene/VolumeOne Profile.asset new file mode 100644 index 0000000..60697dd --- /dev/null +++ b/Assets/Scenes/Experimentation/MultiplayerScenes/StylizedLobbyScene/VolumeOne Profile.asset @@ -0,0 +1,226 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &-5499605880065426175 +MonoBehaviour: + m_ObjectHideFlags: 3 + 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: 953beb541740ddc499d005ee80c9ff29, type: 3} + m_Name: Fog + m_EditorClassIdentifier: + active: 1 + quality: + m_OverrideState: 0 + m_Value: 1 + enabled: + m_OverrideState: 1 + m_Value: 1 + colorMode: + m_OverrideState: 0 + m_Value: 1 + color: + m_OverrideState: 0 + m_Value: {r: 0.5, g: 0.5, b: 0.5, a: 1} + tint: + m_OverrideState: 0 + m_Value: {r: 1, g: 1, b: 1, a: 1} + maxFogDistance: + m_OverrideState: 0 + m_Value: 5000 + mipFogMaxMip: + m_OverrideState: 0 + m_Value: 0.5 + mipFogNear: + m_OverrideState: 0 + m_Value: 0 + mipFogFar: + m_OverrideState: 0 + m_Value: 1000 + baseHeight: + m_OverrideState: 1 + m_Value: -35.7 + maximumHeight: + m_OverrideState: 1 + m_Value: 168.9 + meanFreePath: + m_OverrideState: 1 + m_Value: 21.8 + enableVolumetricFog: + m_OverrideState: 1 + m_Value: 1 + albedo: + m_OverrideState: 1 + m_Value: {r: 0.8011926, g: 0.9716981, b: 0.9681743, a: 1} + globalLightProbeDimmer: + m_OverrideState: 0 + m_Value: 1 + depthExtent: + m_OverrideState: 1 + m_Value: 21.3 + denoisingMode: + m_OverrideState: 0 + m_Value: 2 + anisotropy: + m_OverrideState: 0 + m_Value: 0 + sliceDistributionUniformity: + m_OverrideState: 0 + m_Value: 0.75 + m_FogControlMode: + m_OverrideState: 0 + m_Value: 0 + screenResolutionPercentage: + m_OverrideState: 0 + m_Value: 12.5 + volumeSliceCount: + m_OverrideState: 0 + m_Value: 64 + m_VolumetricFogBudget: + m_OverrideState: 0 + m_Value: 0.33 + m_ResolutionDepthRatio: + m_OverrideState: 0 + m_Value: 0.666 + directionalLightsOnly: + m_OverrideState: 0 + m_Value: 0 +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + 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: d7fd9488000d3734a9e00ee676215985, type: 3} + m_Name: VolumeOne Profile + m_EditorClassIdentifier: + components: + - {fileID: 3832449337003281083} + - {fileID: -5499605880065426175} +--- !u!114 &3832449337003281083 +MonoBehaviour: + m_ObjectHideFlags: 3 + 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: 59b6606ef2548734bb6d11b9d160bc7e, type: 3} + m_Name: HDRISky + m_EditorClassIdentifier: + active: 1 + rotation: + m_OverrideState: 1 + m_Value: 0 + skyIntensityMode: + m_OverrideState: 1 + m_Value: 0 + exposure: + m_OverrideState: 1 + m_Value: 0.36 + multiplier: + m_OverrideState: 0 + m_Value: 1 + upperHemisphereLuxValue: + m_OverrideState: 1 + m_Value: 0.0191773 + upperHemisphereLuxColor: + m_OverrideState: 1 + m_Value: {x: 0.5, y: 0.43328354, z: 0.44211176} + desiredLuxValue: + m_OverrideState: 0 + m_Value: 20000 + updateMode: + m_OverrideState: 0 + m_Value: 0 + updatePeriod: + m_OverrideState: 0 + m_Value: 0 + includeSunInBaking: + m_OverrideState: 0 + m_Value: 0 + hdriSky: + m_OverrideState: 1 + m_Value: {fileID: 8900000, guid: 1ec218402610c07499cad676b00bd8d7, type: 3} + distortionMode: + m_OverrideState: 0 + m_Value: 0 + flowmap: + m_OverrideState: 0 + m_Value: {fileID: 0} + upperHemisphereOnly: + m_OverrideState: 0 + m_Value: 1 + scrollOrientation: + m_OverrideState: 0 + m_Value: + mode: 1 + customValue: 0 + additiveValue: 0 + multiplyValue: 1 + scrollSpeed: + m_OverrideState: 1 + m_Value: + mode: 1 + customValue: 100 + additiveValue: 0 + multiplyValue: 1 + enableBackplate: + m_OverrideState: 0 + m_Value: 0 + backplateType: + m_OverrideState: 0 + m_Value: 0 + groundLevel: + m_OverrideState: 0 + m_Value: 0 + scale: + m_OverrideState: 0 + m_Value: {x: 32, y: 32} + projectionDistance: + m_OverrideState: 0 + m_Value: 16 + plateRotation: + m_OverrideState: 0 + m_Value: 0 + plateTexRotation: + m_OverrideState: 0 + m_Value: 0 + plateTexOffset: + m_OverrideState: 0 + m_Value: {x: 0, y: 0} + blendAmount: + m_OverrideState: 0 + m_Value: 0 + shadowTint: + m_OverrideState: 0 + m_Value: {r: 0.5, g: 0.5, b: 0.5, a: 1} + pointLightShadow: + m_OverrideState: 0 + m_Value: 0 + dirLightShadow: + m_OverrideState: 0 + m_Value: 0 + rectLightShadow: + m_OverrideState: 0 + m_Value: 0 + m_SkyVersion: 1 + enableDistortion: + m_OverrideState: 0 + m_Value: 0 + procedural: + m_OverrideState: 0 + m_Value: 1 + scrollDirection: + m_OverrideState: 0 + m_Value: 0 + m_ObsoleteScrollSpeed: + m_OverrideState: 0 + m_Value: 1 diff --git a/Assets/Scenes/Experimentation/MultiplayerScenes/StylizedLobbyScene/VolumeOne Profile.asset.meta b/Assets/Scenes/Experimentation/MultiplayerScenes/StylizedLobbyScene/VolumeOne Profile.asset.meta new file mode 100644 index 0000000..777c9c7 --- /dev/null +++ b/Assets/Scenes/Experimentation/MultiplayerScenes/StylizedLobbyScene/VolumeOne Profile.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: d85510b2e610444489e9f26418e66f55 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/DGemItem.cs b/Assets/Scripts/DGemItem.cs index b108d45..318fe4f 100644 --- a/Assets/Scripts/DGemItem.cs +++ b/Assets/Scripts/DGemItem.cs @@ -19,7 +19,7 @@ public class DGemItem : MonoBehaviour { if (collision.gameObject.CompareTag("Player")) { - collision.gameObject.GetComponent().SetSpeed(decSpeed); + collision.gameObject.GetComponent().SetSpeed(decSpeed); Destroy(gameObject); } } diff --git a/Assets/Scripts/Enemies/AI/AIStateMachine.cs b/Assets/Scripts/Enemies/AI/AIStateMachine.cs index 2f963d8..24a6f4b 100644 --- a/Assets/Scripts/Enemies/AI/AIStateMachine.cs +++ b/Assets/Scripts/Enemies/AI/AIStateMachine.cs @@ -1,6 +1,6 @@ using UnityEngine; using System; -using EnemyAI; + /* # Enemy System ## States @@ -32,7 +32,7 @@ using EnemyAI; */ class AIStateMachine : MonoBehaviour{ [SerializeField] - private EnemyState state; + private EnemyAI.EnemyState state; diff --git a/Assets/Scripts/Enemies/AI/SkinlessMonsterAnimator.cs b/Assets/Scripts/Enemies/AI/SkinlessMonsterAnimator.cs index 564f91a..02aae1c 100644 --- a/Assets/Scripts/Enemies/AI/SkinlessMonsterAnimator.cs +++ b/Assets/Scripts/Enemies/AI/SkinlessMonsterAnimator.cs @@ -2,130 +2,133 @@ using System.Collections; using System.Collections.Generic; using UnityEngine; -public class SkinlessMonsterAnimator : MonoBehaviour -{ - [SerializeField] private Animator animator; - - [SerializeField] [Tooltip("This is the object with the skin dissolve material")] - private GameObject modelObject; - - [SerializeField] private List objectsThatFallOnDeath = new(); - - [SerializeField] private float deathSpeed = 5f; - - [SerializeField] private float fastDeathduration = 1f; - - [SerializeField] private float deathDuration = 5f; - - private float curDeathSpeed = 5f; - - private Material dissolveMaterial; - private bool isAlive = true; - - private float speed; - public bool IsRunning { get; private set; } - - - // Start is called before the first frame update - private void Start() +namespace Enemy { + public class SkinlessMonsterAnimator : MonoBehaviour { - dissolveMaterial = modelObject.GetComponent().materials[0]; - curDeathSpeed = deathSpeed; - } + [SerializeField] private Animator animator; - // Update is called once per frame - private void Update() - { - if (isAlive) + [SerializeField] + [Tooltip("This is the object with the skin dissolve material")] + private GameObject modelObject; + + [SerializeField] private List objectsThatFallOnDeath = new(); + + [SerializeField] private float deathSpeed = 5f; + + [SerializeField] private float fastDeathduration = 1f; + + [SerializeField] private float deathDuration = 5f; + + private float curDeathSpeed = 5f; + + private Material dissolveMaterial; + private bool isAlive = true; + + private float speed; + public bool IsRunning { get; private set; } + + + // Start is called before the first frame update + private void Start() { - animator.SetFloat("Speed", speed); - } - else - { - var quantity = dissolveMaterial.GetFloat("_DissolveQuantity"); - quantity = Mathf.Lerp(quantity, -2, Time.deltaTime * curDeathSpeed); - dissolveMaterial.SetFloat("_DissolveQuantity", quantity); - } - } - - public void StartMoving() - { - if (isAlive) - { - IsRunning = true; - speed = 1; - } - } - - public void StopMoving() - { - if (isAlive) - { - speed = 0; - IsRunning = false; - } - } - - public void Attack() - { - if (isAlive) animator.SetTrigger("Attack"); - } - - - /// - /// 0,1,2,3 - /// - /// - public void SetAttackType(int attackType) - { - animator.SetInteger("AttackIndex", attackType); - } - - public void InLight() - { - if (isAlive) - animator.SetBool("InLight", true); - } - - public void NotInLight() - { - if (isAlive) - animator.SetBool("InLight", false); - } - - public void AttackScream() - { - if (isAlive) - animator.SetTrigger("AttackScream"); - } - - public void Kill(bool fast = false) - { - //animator.speed = 0; - InLight(); - - - isAlive = false; - foreach (var obj in objectsThatFallOnDeath) - { - obj.AddComponent(); - if (obj.GetComponent() != null) obj.GetComponent().enabled = false; + dissolveMaterial = modelObject.GetComponent().materials[0]; + curDeathSpeed = deathSpeed; } - var dur = deathDuration; - if (fast) + // Update is called once per frame + private void Update() { - dur = fastDeathduration; - curDeathSpeed = deathSpeed * (deathDuration / fastDeathduration); + if (isAlive) + { + animator.SetFloat("Speed", speed); + } + else + { + var quantity = dissolveMaterial.GetFloat("_DissolveQuantity"); + quantity = Mathf.Lerp(quantity, -2, Time.deltaTime * curDeathSpeed); + dissolveMaterial.SetFloat("_DissolveQuantity", quantity); + } } - StartCoroutine(destroyAfterSeconds(dur)); - } + public void StartMoving() + { + if (isAlive) + { + IsRunning = true; + speed = 1; + } + } + + public void StopMoving() + { + if (isAlive) + { + speed = 0; + IsRunning = false; + } + } + + public void Attack() + { + if (isAlive) animator.SetTrigger("Attack"); + } - private IEnumerator destroyAfterSeconds(float duration) - { - yield return new WaitForSeconds(duration); - Destroy(gameObject); + /// + /// 0,1,2,3 + /// + /// + public void SetAttackType(int attackType) + { + animator.SetInteger("AttackIndex", attackType); + } + + public void InLight() + { + if (isAlive) + animator.SetBool("InLight", true); + } + + public void NotInLight() + { + if (isAlive) + animator.SetBool("InLight", false); + } + + public void AttackScream() + { + if (isAlive) + animator.SetTrigger("AttackScream"); + } + + public void Kill(bool fast = false) + { + //animator.speed = 0; + InLight(); + + + isAlive = false; + foreach (var obj in objectsThatFallOnDeath) + { + obj.AddComponent(); + if (obj.GetComponent() != null) obj.GetComponent().enabled = false; + } + + var dur = deathDuration; + if (fast) + { + dur = fastDeathduration; + curDeathSpeed = deathSpeed * (deathDuration / fastDeathduration); + } + + StartCoroutine(destroyAfterSeconds(dur)); + } + + + private IEnumerator destroyAfterSeconds(float duration) + { + yield return new WaitForSeconds(duration); + Destroy(gameObject); + } } -} \ No newline at end of file +} diff --git a/Assets/Scripts/Enemies/AI/SkinlessMonsterComponent.cs b/Assets/Scripts/Enemies/AI/SkinlessMonsterComponent.cs index 197bff9..9a8aa4b 100644 --- a/Assets/Scripts/Enemies/AI/SkinlessMonsterComponent.cs +++ b/Assets/Scripts/Enemies/AI/SkinlessMonsterComponent.cs @@ -5,7 +5,7 @@ public class SkinlessMonsterComponent : MonoBehaviour { [SerializeField] private NavMeshAgent agent; - [SerializeField] private SkinlessMonsterAnimator animator; + [SerializeField] private Enemy.SkinlessMonsterAnimator animator; [SerializeField] private float atTargetDistance = 2; @@ -32,12 +32,12 @@ public class SkinlessMonsterComponent : MonoBehaviour private bool isAlive = true; - private InGameManager manager; + private Game.InGameManager manager; private Vector3 oppositeVector; - private PlayerComponent player; + private Player.PlayerComponent player; private TargetInformation target; private GameObject targetObject; @@ -46,12 +46,12 @@ public class SkinlessMonsterComponent : MonoBehaviour private void Awake() { //Find active player rn. - var players = FindObjectsOfType(); + var players = FindObjectsOfType(); foreach (var p in players) if (p.isActiveAndEnabled) player = p; - manager = FindObjectOfType(); + manager = FindObjectOfType(); } private void Start() @@ -61,7 +61,7 @@ public class SkinlessMonsterComponent : MonoBehaviour targetObject = new GameObject(); targetObject.name = "Enemy Target"; - if (player == null) player = FindObjectOfType(); + if (player == null) player = FindObjectOfType(); } private void Update() @@ -236,10 +236,10 @@ public class SkinlessMonsterComponent : MonoBehaviour { var hitObject = hit.transform.gameObject; - if (hitObject.GetComponent() != null) + if (hitObject.GetComponent() != null) //hit player return angleToPosition <= visibilityConeLimit || !withAngle; - if (hitObject.GetComponentInParent() != null) + if (hitObject.GetComponentInParent() != null) //also hit player return angleToPosition <= visibilityConeLimit || !withAngle; } diff --git a/Assets/Scripts/Enemies/DummyComponent.cs b/Assets/Scripts/Enemies/DummyComponent.cs index 5dcec3e..aa2b7dd 100644 --- a/Assets/Scripts/Enemies/DummyComponent.cs +++ b/Assets/Scripts/Enemies/DummyComponent.cs @@ -1,22 +1,25 @@ using UnityEngine; -public class DummyComponent : MonoBehaviour +namespace Enemy { - private Animator anim; - - // Start is called before the first frame update - private void Start() + public class DummyComponent : MonoBehaviour { - anim = GetComponentInParent(); - } + private Animator anim; - // Update is called once per frame - private void Update() - { - } + // Start is called before the first frame update + private void Start() + { + anim = GetComponentInParent(); + } - private void OnCollisionEnter(Collision collision) - { - if (collision.gameObject.GetComponent() != null) anim.Play("DummyFall"); + // Update is called once per frame + private void Update() + { + } + + private void OnCollisionEnter(Collision collision) + { + if (collision.gameObject.GetComponent() != null) anim.Play("DummyFall"); + } } } \ No newline at end of file diff --git a/Assets/Scripts/Enemies/MonsterComponent.cs b/Assets/Scripts/Enemies/MonsterComponent.cs index 4d90cb3..79da74c 100644 --- a/Assets/Scripts/Enemies/MonsterComponent.cs +++ b/Assets/Scripts/Enemies/MonsterComponent.cs @@ -1,22 +1,24 @@ using UnityEngine; -public class MonsterComponent : MonoBehaviour -{ - [SerializeField] private float attackDamage = 1f; - - [SerializeField] private bool shakeCameraOnHit = true; - - public float AttackDamage => attackDamage; - - public bool ShakeCameraOnHit => shakeCameraOnHit; - - // Start is called before the first frame update - private void Start() +namespace Enemy { + public class MonsterComponent : MonoBehaviour { - } + [SerializeField] private float attackDamage = 1f; - // Update is called once per frame - private void Update() - { + [SerializeField] private bool shakeCameraOnHit = true; + + public float AttackDamage => attackDamage; + + public bool ShakeCameraOnHit => shakeCameraOnHit; + + // Start is called before the first frame update + private void Start() + { + } + + // Update is called once per frame + private void Update() + { + } } -} \ No newline at end of file +} diff --git a/Assets/Scripts/Enemies/SwarmAnimator.cs b/Assets/Scripts/Enemies/SwarmAnimator.cs index 50164a2..bc47d83 100644 --- a/Assets/Scripts/Enemies/SwarmAnimator.cs +++ b/Assets/Scripts/Enemies/SwarmAnimator.cs @@ -1,62 +1,65 @@ using UnityEngine; using UnityEngine.VFX; -[ExecuteAlways] -public class SwarmAnimator : MonoBehaviour +namespace Enemy { - [SerializeField] private VisualEffect vfx; - - [SerializeField] private Rigidbody rb; - //[SerializeField] - //private string parameterName = "DeltaVector"; - - [SerializeField] private Vector3 avoidancePosDefault; - - [SerializeField] private float explodeDuration = 1.0f; - - private Vector3 currentPosition; - private float dur; - private bool isExploding; - private Vector3 previousPosition; - - // Start is called before the first frame update - private void Start() + [ExecuteAlways] + public class SwarmAnimator : MonoBehaviour { - } + [SerializeField] private VisualEffect vfx; - // Update is called once per frame - private void Update() - { - previousPosition = currentPosition; - currentPosition = transform.position; - var velocity = currentPosition - previousPosition; - vfx.SetVector3("DeltaVector", velocity); + [SerializeField] private Rigidbody rb; + //[SerializeField] + //private string parameterName = "DeltaVector"; - if (Input.GetKeyDown(KeyCode.Space)) Explode(); - if (isExploding) + [SerializeField] private Vector3 avoidancePosDefault; + + [SerializeField] private float explodeDuration = 1.0f; + + private Vector3 currentPosition; + private float dur; + private bool isExploding; + private Vector3 previousPosition; + + // Start is called before the first frame update + private void Start() { - if (dur > explodeDuration) StopExplode(); - dur += Time.deltaTime; + } + + // Update is called once per frame + private void Update() + { + previousPosition = currentPosition; + currentPosition = transform.position; + var velocity = currentPosition - previousPosition; + vfx.SetVector3("DeltaVector", velocity); + + if (Input.GetKeyDown(KeyCode.Space)) Explode(); + if (isExploding) + { + if (dur > explodeDuration) StopExplode(); + dur += Time.deltaTime; + } + } + + private void FixedUpdate() + { + } + + private void Explode() + { + vfx.SetVector3("Avoid", transform.position); + isExploding = true; + dur = 0; + + //Wait a sec then stop. + } + + private void StopExplode() + { + vfx.SetVector3("Avoid", avoidancePosDefault); + isExploding = false; + vfx.Stop(); } } - - private void FixedUpdate() - { - } - - private void Explode() - { - vfx.SetVector3("Avoid", transform.position); - isExploding = true; - dur = 0; - - //Wait a sec then stop. - } - - private void StopExplode() - { - vfx.SetVector3("Avoid", avoidancePosDefault); - isExploding = false; - vfx.Stop(); - } -} \ No newline at end of file +} diff --git a/Assets/Scripts/Game/InGameManager.cs b/Assets/Scripts/Game/InGameManager.cs index 466a44f..2336bae 100644 --- a/Assets/Scripts/Game/InGameManager.cs +++ b/Assets/Scripts/Game/InGameManager.cs @@ -4,6 +4,8 @@ using UnityEngine; using UnityEngine.Rendering; using UnityEngine.SceneManagement; +namespace Game +{ public class InGameManager : MonoBehaviour { [SerializeField] private Volume gameVolume; @@ -128,4 +130,5 @@ public class InGameManager : MonoBehaviour { SceneManager.LoadScene(0); } +} } \ No newline at end of file diff --git a/Assets/Scripts/Game/InGameMenuManager.cs b/Assets/Scripts/Game/InGameMenuManager.cs index d25b294..6d95f4b 100644 --- a/Assets/Scripts/Game/InGameMenuManager.cs +++ b/Assets/Scripts/Game/InGameMenuManager.cs @@ -1,52 +1,55 @@ using UnityEngine; using UnityEngine.UI; -public class InGameMenuManager : MonoBehaviour +namespace Game { - [SerializeField] private Button settingsButton; - - [SerializeField] private Button returnToMenuButton; - - [SerializeField] private Scrollbar sensitivitySlider; - - [SerializeField] private Scrollbar volumeSlider; - - private InGameManager gameManager; - private Animator menuAnimator; - private PlayerComponent player; - - // Start is called before the first frame update - private void Start() + public class InGameMenuManager : MonoBehaviour { - menuAnimator = GetComponent(); - settingsButton.onClick.AddListener(SettingsClicked); - returnToMenuButton.onClick.AddListener(SettingsUnClicked); - player = FindObjectOfType(typeof(PlayerComponent)) as PlayerComponent; - gameManager = FindObjectOfType(); - } + [SerializeField] private Button settingsButton; - // Update is called once per frame - private void Update() - { - } + [SerializeField] private Button returnToMenuButton; - private void SettingsClicked() - { - menuAnimator.SetBool("SettingsOpen", true); - } + [SerializeField] private Scrollbar sensitivitySlider; - private void SettingsUnClicked() - { - menuAnimator.SetBool("SettingsOpen", false); - } + [SerializeField] private Scrollbar volumeSlider; - public void UpdateSensitivity() - { - player.SetSensitivity(sensitivitySlider.value * 4f); - } + private InGameManager gameManager; + private Animator menuAnimator; + private Player.PlayerComponent player; - public void UpdateVolume() - { - gameManager.SetVolume(volumeSlider.value * 2); + // Start is called before the first frame update + private void Start() + { + menuAnimator = GetComponent(); + settingsButton.onClick.AddListener(SettingsClicked); + returnToMenuButton.onClick.AddListener(SettingsUnClicked); + player = FindObjectOfType(typeof(Player.PlayerComponent)) as Player.PlayerComponent; + gameManager = FindObjectOfType(); + } + + // Update is called once per frame + private void Update() + { + } + + private void SettingsClicked() + { + menuAnimator.SetBool("SettingsOpen", true); + } + + private void SettingsUnClicked() + { + menuAnimator.SetBool("SettingsOpen", false); + } + + public void UpdateSensitivity() + { + player.SetSensitivity(sensitivitySlider.value * 4f); + } + + public void UpdateVolume() + { + gameManager.SetVolume(volumeSlider.value * 2); + } } } \ No newline at end of file diff --git a/Assets/Scripts/Game/Optimizer.cs b/Assets/Scripts/Game/Optimizer.cs index 925fb3a..1aea355 100644 --- a/Assets/Scripts/Game/Optimizer.cs +++ b/Assets/Scripts/Game/Optimizer.cs @@ -1,5 +1,6 @@ using UnityEngine; +namespace Game { /// /// Attach this behavior to a master room collider. Enables everything in this room OnTriggerEnter of [tag] /// disables everything in this room OnTriggerExit of [tag] @@ -36,4 +37,5 @@ public class Optimizer : MonoBehaviour { foreach (var go in references) go.SetActive(false); } +} } \ No newline at end of file diff --git a/Assets/Scripts/GemItem.cs b/Assets/Scripts/GemItem.cs index b97b012..b58c080 100644 --- a/Assets/Scripts/GemItem.cs +++ b/Assets/Scripts/GemItem.cs @@ -19,7 +19,7 @@ public class GemItem : MonoBehaviour { if (collision.gameObject.CompareTag("Player")) { - collision.gameObject.GetComponent().SetSpeed(instantSpeed); + collision.gameObject.GetComponent().SetSpeed(instantSpeed); Destroy(gameObject); } } diff --git a/Assets/Scripts/Item/DoorInteractable.cs b/Assets/Scripts/Item/DoorInteractable.cs index 1e2c03d..ce0de65 100644 --- a/Assets/Scripts/Item/DoorInteractable.cs +++ b/Assets/Scripts/Item/DoorInteractable.cs @@ -44,7 +44,7 @@ public class DoorInteractable : HeavyItemReceiver //print("DIST:" + dist); if (dist <= minAttractDist) { - var _i = PlayerInteractionHandler.instance.Inventory; + var _i = Player.PlayerInteractionHandler.instance.Inventory; Interact(ref _i, ref item); return true; } diff --git a/Assets/Scripts/Item/Pistol/PistolComponent.cs b/Assets/Scripts/Item/Pistol/PistolComponent.cs index 580c835..09566e0 100644 --- a/Assets/Scripts/Item/Pistol/PistolComponent.cs +++ b/Assets/Scripts/Item/Pistol/PistolComponent.cs @@ -62,7 +62,7 @@ public class PistolComponent : MonoBehaviour { if (shootLight.gameObject.activeSelf && timeSinceLightDuration > shootLightDuration) shootLight.gameObject.SetActive(false); - if (aimMode == AimMode.CAMERA) targetObject.gameObject.transform.position = PlayerAim.active.targetPosition; + if (aimMode == AimMode.CAMERA) targetObject.gameObject.transform.position = Player.PlayerAim.active.targetPosition; if (IsEnabled && aimMode != AimMode.CAMERA) { var ray = new Ray(transform.position, transform.up); @@ -144,7 +144,7 @@ public class PistolComponent : MonoBehaviour if (offsetWithTargetBall || aimMode == AimMode.MODIFIED) { var ballCamVector = targetObject.transform.position - - GetComponentInParent().cam.transform.position; + GetComponentInParent().cam.transform.position; var r = new Ray(); r.origin = targetObject.transform.position; r.direction = ballCamVector.normalized; @@ -157,7 +157,7 @@ public class PistolComponent : MonoBehaviour } else if (aimMode == AimMode.CAMERA) { - var target = PlayerAim.active.targetPosition; + var target = Player.PlayerAim.active.targetPosition; var lv = target - pRigid.transform.position; launchVector = lv.normalized; diff --git a/Assets/Scripts/Item/SpecialItemCycler.cs b/Assets/Scripts/Item/SpecialItemCycler.cs index 0e219e6..6117b0a 100644 --- a/Assets/Scripts/Item/SpecialItemCycler.cs +++ b/Assets/Scripts/Item/SpecialItemCycler.cs @@ -18,7 +18,7 @@ public class SpecialItemCycler : MonoBehaviour [SerializeField] private List shootableItems = new(); - [SerializeField] private PlayerInteractionHandler interactionHandler; + [SerializeField] private Player.PlayerInteractionHandler interactionHandler; [SerializeField] private PistolComponent pistol; diff --git a/Assets/Scripts/Levels/Level0Scripts/BasicLevelProgressionSystem.cs b/Assets/Scripts/Levels/Level0Scripts/BasicLevelProgressionSystem.cs index 098a323..58d72a0 100644 --- a/Assets/Scripts/Levels/Level0Scripts/BasicLevelProgressionSystem.cs +++ b/Assets/Scripts/Levels/Level0Scripts/BasicLevelProgressionSystem.cs @@ -25,7 +25,7 @@ public class BasicLevelProgressionSystem : MonoBehaviour [SerializeField] private WaypointMarker marker; - [SerializeField] private PlayerComponent player; + [SerializeField] private Player.PlayerComponent player; //[SerializeField] //private float minDist = 3; @@ -82,7 +82,7 @@ public class BasicLevelProgressionSystem : MonoBehaviour private void OnTriggerEnter(Collider other) { - if (other.gameObject.GetComponentInParent() != null) ProgressCurrentIfCollide(); + if (other.gameObject.GetComponentInParent() != null) ProgressCurrentIfCollide(); } private void ProgressCurrentIfCollide() diff --git a/Assets/Scripts/Levels/Level0Scripts/LevelZeroSpecial.cs b/Assets/Scripts/Levels/Level0Scripts/LevelZeroSpecial.cs index 11369de..72303cd 100644 --- a/Assets/Scripts/Levels/Level0Scripts/LevelZeroSpecial.cs +++ b/Assets/Scripts/Levels/Level0Scripts/LevelZeroSpecial.cs @@ -25,13 +25,13 @@ public class LevelZeroSpecial : MonoBehaviour [SerializeField] private GameObject exitCollider; - [SerializeField] private PlayerComponent player; + [SerializeField] private Player.PlayerComponent player; [SerializeField] private WaypointMarker marker2Ref; [SerializeField] private WaypointMarker marker3Ref; - [SerializeField] private Optimizer finalRoomOptimizer; + [SerializeField] private Game.Optimizer finalRoomOptimizer; private int countPowered; private bool isEnabled; diff --git a/Assets/Scripts/Player/CameraController.cs b/Assets/Scripts/Player/CameraController.cs index 20af92a..c4d0308 100644 --- a/Assets/Scripts/Player/CameraController.cs +++ b/Assets/Scripts/Player/CameraController.cs @@ -1,49 +1,51 @@ using UnityEngine; - -public class CameraController : MonoBehaviour +namespace Player { - //private float mouseX = 0; - //private float mouseY; - [SerializeField] private Camera cam; - - - [SerializeField] private Transform target; - - private Vector3 offset; - public Vector3 Forward { get; private set; } = Vector3.zero; - - public Vector3 Right { get; private set; } = Vector3.zero; - - //private float originalDist = 0; - //private float newDist = 0; - //[SerializeField] - // private bool isChild = false; - - - // Start is called before the first frame update - private void Start() + public class CameraController : MonoBehaviour { + //private float mouseX = 0; + //private float mouseY; + [SerializeField] private Camera cam; + + + [SerializeField] private Transform target; + + private Vector3 offset; + public Vector3 Forward { get; private set; } = Vector3.zero; + + public Vector3 Right { get; private set; } = Vector3.zero; + + //private float originalDist = 0; + //private float newDist = 0; + //[SerializeField] + // private bool isChild = false; + + + // Start is called before the first frame update + private void Start() + { + } + + // Update is called once per frame + private void Update() + { + GetMouseLook(); + //if(target!=null&&!isChild) + //transform.position = target.transform.position+offset; + Forward = new Vector3(cam.transform.forward.x, target.transform.forward.y, cam.transform.forward.z); + Right = new Vector3(cam.transform.right.x, target.transform.right.y, cam.transform.right.z); + } + + private void GetMouseLook() + { + //mouseX = Input.GetAxis("Mouse X"); + //mouseY = Input.GetAxis("Mouse Y"); + + //transform.Rotate(0, mouseX * Time.deltaTime * 180f, 0); + //cam.transform.parent.parent.transform.Rotate(mouseY * Time.deltaTime * 180f, 0, 0); + + //Cursor.visible = false; + //Cursor.lockState = CursorLockMode.Locked; + } } - - // Update is called once per frame - private void Update() - { - GetMouseLook(); - //if(target!=null&&!isChild) - //transform.position = target.transform.position+offset; - Forward = new Vector3(cam.transform.forward.x, target.transform.forward.y, cam.transform.forward.z); - Right = new Vector3(cam.transform.right.x, target.transform.right.y, cam.transform.right.z); - } - - private void GetMouseLook() - { - //mouseX = Input.GetAxis("Mouse X"); - //mouseY = Input.GetAxis("Mouse Y"); - - //transform.Rotate(0, mouseX * Time.deltaTime * 180f, 0); - //cam.transform.parent.parent.transform.Rotate(mouseY * Time.deltaTime * 180f, 0, 0); - - //Cursor.visible = false; - //Cursor.lockState = CursorLockMode.Locked; - } -} \ No newline at end of file +} diff --git a/Assets/Scripts/Player/CameraShift.cs b/Assets/Scripts/Player/CameraShift.cs index 59a6cd5..d7c5fdb 100644 --- a/Assets/Scripts/Player/CameraShift.cs +++ b/Assets/Scripts/Player/CameraShift.cs @@ -1,62 +1,65 @@ using Cinemachine; using UnityEngine; -public class CameraShift : MonoBehaviour +namespace Player { - public static CameraShift active; - - [SerializeField] private Camera childCam; - - [SerializeField] private Transform offset; - - [SerializeField] private float cameraSpeed = 5f; - - [SerializeField] private CinemachineFreeLook freelook; - - [SerializeField] private float initRadius = 3f; - - [SerializeField] private float aimingRadius = 2f; - - private bool isCenter = true; - private Vector3 targetOffset; - - // Start is called before the first frame update - private void Start() + public class CameraShift : MonoBehaviour { - targetOffset = Vector3.zero; - } + public static CameraShift active; - // Update is called once per frame - private void Update() - { - active = this; - if (isCenter) + [SerializeField] private Camera childCam; + + [SerializeField] private Transform offset; + + [SerializeField] private float cameraSpeed = 5f; + + [SerializeField] private CinemachineFreeLook freelook; + + [SerializeField] private float initRadius = 3f; + + [SerializeField] private float aimingRadius = 2f; + + private bool isCenter = true; + private Vector3 targetOffset; + + // Start is called before the first frame update + private void Start() { targetOffset = Vector3.zero; - freelook.m_Orbits[1].m_Radius = - Mathf.Lerp(freelook.m_Orbits[1].m_Radius, initRadius, Time.deltaTime * cameraSpeed); } - else + + // Update is called once per frame + private void Update() { - targetOffset = offset.localPosition; - freelook.m_Orbits[1].m_Radius = - Mathf.Lerp(freelook.m_Orbits[1].m_Radius, aimingRadius, Time.deltaTime * cameraSpeed); + active = this; + if (isCenter) + { + targetOffset = Vector3.zero; + freelook.m_Orbits[1].m_Radius = + Mathf.Lerp(freelook.m_Orbits[1].m_Radius, initRadius, Time.deltaTime * cameraSpeed); + } + else + { + targetOffset = offset.localPosition; + freelook.m_Orbits[1].m_Radius = + Mathf.Lerp(freelook.m_Orbits[1].m_Radius, aimingRadius, Time.deltaTime * cameraSpeed); + } + + childCam.transform.localPosition = + Vector3.Lerp(childCam.transform.localPosition, targetOffset, Time.deltaTime * cameraSpeed); + } + //[SerializeField] + //private PlayerMovementController movementController; + + + public void ToggleCenter() + { + isCenter = !isCenter; } - childCam.transform.localPosition = - Vector3.Lerp(childCam.transform.localPosition, targetOffset, Time.deltaTime * cameraSpeed); - } - //[SerializeField] - //private PlayerMovementController movementController; - - - public void ToggleCenter() - { - isCenter = !isCenter; - } - - public void SetCenter(bool isCenter) - { - this.isCenter = isCenter; + public void SetCenter(bool isCenter) + { + this.isCenter = isCenter; + } } } \ No newline at end of file diff --git a/Assets/Scripts/Player/NoiseVisibilitySettingsManager.cs b/Assets/Scripts/Player/NoiseVisibilitySettingsManager.cs index 0ebf54e..c996f05 100644 --- a/Assets/Scripts/Player/NoiseVisibilitySettingsManager.cs +++ b/Assets/Scripts/Player/NoiseVisibilitySettingsManager.cs @@ -1,62 +1,65 @@ using UnityEngine; -public class NoiseVisibilitySettingsManager : MonoBehaviour +namespace Player { - [SerializeField] private float sneakNoiseDistance = 5f; - - [SerializeField] private float runNoiseDistance = 10f; - - [SerializeField] private float shootNoiseDistance = 30f; - - [SerializeField] private float standNoiseDistance; - - [SerializeField] private float shootNoiseDuration = 2f; - - private bool isRunning; - private bool isSneaking; - - private float timeSinceLastShot; - - public float SneakNoiseDistance => sneakNoiseDistance; - public float RunNoiseDistance => runNoiseDistance; - public float ShootNoiseDistance => shootNoiseDistance; - public float StandNoiseDistance => standNoiseDistance; - - public float NoiseDistance { get; private set; } - - - // Start is called before the first frame update - private void Start() + public class NoiseVisibilitySettingsManager : MonoBehaviour { - } + [SerializeField] private float sneakNoiseDistance = 5f; - // Update is called once per frame - private void Update() - { - if (timeSinceLastShot > 0) - NoiseDistance = shootNoiseDistance; - else if (isRunning) - NoiseDistance = runNoiseDistance; - else if (isSneaking) - NoiseDistance = sneakNoiseDistance; - else - NoiseDistance = standNoiseDistance; + [SerializeField] private float runNoiseDistance = 10f; - timeSinceLastShot -= Time.deltaTime; - } + [SerializeField] private float shootNoiseDistance = 30f; - public void ShotFired() - { - timeSinceLastShot = shootNoiseDuration; - } + [SerializeField] private float standNoiseDistance; - public void SetRunning(bool isRunning) - { - this.isRunning = isRunning; - } + [SerializeField] private float shootNoiseDuration = 2f; - public void SetSneaking(bool isSneaking) - { - this.isSneaking = isSneaking; + private bool isRunning; + private bool isSneaking; + + private float timeSinceLastShot; + + public float SneakNoiseDistance => sneakNoiseDistance; + public float RunNoiseDistance => runNoiseDistance; + public float ShootNoiseDistance => shootNoiseDistance; + public float StandNoiseDistance => standNoiseDistance; + + public float NoiseDistance { get; private set; } + + + // Start is called before the first frame update + private void Start() + { + } + + // Update is called once per frame + private void Update() + { + if (timeSinceLastShot > 0) + NoiseDistance = shootNoiseDistance; + else if (isRunning) + NoiseDistance = runNoiseDistance; + else if (isSneaking) + NoiseDistance = sneakNoiseDistance; + else + NoiseDistance = standNoiseDistance; + + timeSinceLastShot -= Time.deltaTime; + } + + public void ShotFired() + { + timeSinceLastShot = shootNoiseDuration; + } + + public void SetRunning(bool isRunning) + { + this.isRunning = isRunning; + } + + public void SetSneaking(bool isSneaking) + { + this.isSneaking = isSneaking; + } } } \ No newline at end of file diff --git a/Assets/Scripts/Player/PlayerAim.cs b/Assets/Scripts/Player/PlayerAim.cs index dc82ed6..29449b1 100644 --- a/Assets/Scripts/Player/PlayerAim.cs +++ b/Assets/Scripts/Player/PlayerAim.cs @@ -1,24 +1,27 @@ using UnityEngine; -public class PlayerAim : MonoBehaviour +namespace Player { - public static PlayerAim active; - public Vector3 targetPosition; - - private Camera cam; - - // Start is called before the first frame update - private void Start() + public class PlayerAim : MonoBehaviour { - active = this; - cam = GetComponent(); - } + public static PlayerAim active; + public Vector3 targetPosition; - // Update is called once per frame - private void Update() - { - var r = new Ray(cam.transform.position, cam.transform.forward); - RaycastHit hit; - if (Physics.Raycast(r, out hit)) targetPosition = hit.point; + private Camera cam; + + // Start is called before the first frame update + private void Start() + { + active = this; + cam = GetComponent(); + } + + // Update is called once per frame + private void Update() + { + var r = new Ray(cam.transform.position, cam.transform.forward); + RaycastHit hit; + if (Physics.Raycast(r, out hit)) targetPosition = hit.point; + } } } \ No newline at end of file diff --git a/Assets/Scripts/Player/PlayerAnimationController.cs b/Assets/Scripts/Player/PlayerAnimationController.cs index 6bc99a0..f68411e 100644 --- a/Assets/Scripts/Player/PlayerAnimationController.cs +++ b/Assets/Scripts/Player/PlayerAnimationController.cs @@ -1,116 +1,120 @@ using UnityEngine; -public class PlayerAnimationController : MonoBehaviour +namespace Player { - [SerializeField] private Animator animController; - [SerializeField] private string runningParameter; - - [SerializeField] private string runningSpeedParameter; - - [SerializeField] private string sideStepSpeedParameter; - - //private bool movementInterrupt = false; - [SerializeField] private PlayerInteractionHandler interactionHandler; - - [SerializeField] private PlayerMovementController movement; - - //private float verticalAiming = 0; - [SerializeField] private Camera hiddenCam; - - private bool isRunning; - - private float runningSpeed; - private float sideStepSpeed; - - // Start is called before the first frame update - private void Start() + public class PlayerAnimationController : MonoBehaviour { - } + [SerializeField] private Animator animController; - // Update is called once per frame - private void Update() - { - animController.SetBool("IsCarrying", interactionHandler.IsCarrying); - animController.SetBool("HasGun", interactionHandler.GunEnabled); + [SerializeField] private string runningParameter; - if (interactionHandler.GunEnabled && !interactionHandler.isDead && movement.AllowRotation) + [SerializeField] private string runningSpeedParameter; + + [SerializeField] private string sideStepSpeedParameter; + + //private bool movementInterrupt = false; + [SerializeField] private PlayerInteractionHandler interactionHandler; + + [SerializeField] private PlayerMovementController movement; + + //private float verticalAiming = 0; + [SerializeField] private Camera hiddenCam; + + private bool isRunning; + + private float runningSpeed; + private float sideStepSpeed; + + // Start is called before the first frame update + private void Start() { - if (hiddenCam.transform.localEulerAngles.x < 90) + } + + // Update is called once per frame + private void Update() + { + animController.SetBool("IsCarrying", interactionHandler.IsCarrying); + animController.SetBool("HasGun", interactionHandler.GunEnabled); + + if (interactionHandler.GunEnabled && !interactionHandler.isDead && movement.AllowRotation) { - //DOWN - var target = Mathf.Lerp(animController.GetLayerWeight(3), hiddenCam.transform.localEulerAngles.x / 70f, - Time.deltaTime * 10f); - animController.SetLayerWeight(3, target); - animController.SetLayerWeight(2, 0); + if (hiddenCam.transform.localEulerAngles.x < 90) + { + //DOWN + var target = Mathf.Lerp(animController.GetLayerWeight(3), hiddenCam.transform.localEulerAngles.x / 70f, + Time.deltaTime * 10f); + animController.SetLayerWeight(3, target); + animController.SetLayerWeight(2, 0); + } + else + { + //UP + animController.SetLayerWeight(3, 0); + var target = Mathf.Lerp(animController.GetLayerWeight(2), + (360f - hiddenCam.transform.localEulerAngles.x) / (360f - 300f), Time.deltaTime * 10); + animController.SetLayerWeight(2, target); + } } else { - //UP - animController.SetLayerWeight(3, 0); - var target = Mathf.Lerp(animController.GetLayerWeight(2), - (360f - hiddenCam.transform.localEulerAngles.x) / (360f - 300f), Time.deltaTime * 10); - animController.SetLayerWeight(2, target); + animController.SetLayerWeight(2, Mathf.Lerp(animController.GetLayerWeight(2), 0, Time.deltaTime * 10)); + animController.SetLayerWeight(3, Mathf.Lerp(animController.GetLayerWeight(3), 0, Time.deltaTime * 10)); + } + + //print("carrying:" + interactionHandler.IsCarrying + " running:"+animController.GetBool(runningParameter)+" running speed:" + animController.GetFloat(runningSpeedParameter)); + } + + public void Animate(Vector2 movement, bool jump, bool isMoving) + { + animController.SetFloat(runningSpeedParameter, movement.magnitude); + animController.SetBool(runningParameter, isMoving); + + if (this.movement.IsAiming) + { + animController.SetFloat("StrafingSpeed", movement.x); + float dir = 0; + if (movement.x > 0) + dir = 1; + else if (movement.x < 0) dir = -1; + animController.SetFloat("StrafingDirection", dir); + } + else + { + animController.SetFloat("StrafingSpeed", 0); + animController.SetFloat("StrafingDirection", 1); } } - else + + public void Animate(PlayerQuickAnimationType animation) { - animController.SetLayerWeight(2, Mathf.Lerp(animController.GetLayerWeight(2), 0, Time.deltaTime * 10)); - animController.SetLayerWeight(3, Mathf.Lerp(animController.GetLayerWeight(3), 0, Time.deltaTime * 10)); + switch (animation) + { + case PlayerQuickAnimationType.Grab: + print("grabbing..."); + break; + case PlayerQuickAnimationType.Shoot: + print("shooting..."); + break; + } } - //print("carrying:" + interactionHandler.IsCarrying + " running:"+animController.GetBool(runningParameter)+" running speed:" + animController.GetFloat(runningSpeedParameter)); + public void Hit(bool isDead) + { + animController.SetTrigger("WasHit"); + animController.SetBool("IsDead", isDead); + } } - public void Animate(Vector2 movement, bool jump, bool isMoving) + public enum PlayerAnimationType { - animController.SetFloat(runningSpeedParameter, movement.magnitude); - animController.SetBool(runningParameter, isMoving); - - if (this.movement.IsAiming) - { - animController.SetFloat("StrafingSpeed", movement.x); - float dir = 0; - if (movement.x > 0) - dir = 1; - else if (movement.x < 0) dir = -1; - animController.SetFloat("StrafingDirection", dir); - } - else - { - animController.SetFloat("StrafingSpeed", 0); - animController.SetFloat("StrafingDirection", 1); - } + Movement, + Action } - public void Animate(PlayerQuickAnimationType animation) + public enum PlayerQuickAnimationType { - switch (animation) - { - case PlayerQuickAnimationType.Grab: - print("grabbing..."); - break; - case PlayerQuickAnimationType.Shoot: - print("shooting..."); - break; - } + Grab, + Shoot } - - public void Hit(bool isDead) - { - animController.SetTrigger("WasHit"); - animController.SetBool("IsDead", isDead); - } -} - -public enum PlayerAnimationType -{ - Movement, - Action -} - -public enum PlayerQuickAnimationType -{ - Grab, - Shoot } \ No newline at end of file diff --git a/Assets/Scripts/Player/PlayerComponent.cs b/Assets/Scripts/Player/PlayerComponent.cs index fe2c239..205ee53 100644 --- a/Assets/Scripts/Player/PlayerComponent.cs +++ b/Assets/Scripts/Player/PlayerComponent.cs @@ -1,104 +1,107 @@ using Cinemachine; using UnityEngine; -public class PlayerComponent : MonoBehaviour +namespace Player { - [SerializeField] private float health = 5f; - - [SerializeField] private float maxHealth = 5f; - - [SerializeField] private float stamina = 20f; - - [SerializeField] private float maxStamina = 20f; - - [SerializeField] private NoiseVisibilitySettingsManager noiseManager; - [SerializeField] private PlayerMovementController movementController; - - [SerializeField] private PlayerAnimationController animationController; - - [HideInInspector] public FlareRegister flareRegister; - - [SerializeField] private CinemachineFreeLook cameraFreeLook; - - [SerializeField] private float knockbackDuration = 1f; - - [SerializeField] private float knockbackDistance = 5f; - - [SerializeField] private StatsOutputScreen statsOutput; - - private CinemachineBasicMultiChannelPerlin perlin; - private float shakeTimer; - - public NoiseVisibilitySettingsManager NoiseManager => noiseManager; - public PlayerMovementController MovementController => movementController; - - [HideInInspector] public bool IsAlive => health > 0; - - private void Awake() + public class PlayerComponent : MonoBehaviour { - flareRegister = FindObjectOfType(); - } + [SerializeField] private float health = 5f; - // Start is called before the first frame update - private void Start() - { - perlin = cameraFreeLook.GetRig(1).GetCinemachineComponent(); - } + [SerializeField] private float maxHealth = 5f; - // Update is called once per frame - private void Update() - { - NoiseManager.SetRunning(MovementController.IsRunning); - statsOutput.health = health; - statsOutput.stamina = 20f; - statsOutput.oxygen = 100f; + [SerializeField] private float stamina = 20f; - if (shakeTimer > 0) + [SerializeField] private float maxStamina = 20f; + + [SerializeField] private NoiseVisibilitySettingsManager noiseManager; + [SerializeField] private PlayerMovementController movementController; + + [SerializeField] private PlayerAnimationController animationController; + + [HideInInspector] public FlareRegister flareRegister; + + [SerializeField] private CinemachineFreeLook cameraFreeLook; + + [SerializeField] private float knockbackDuration = 1f; + + [SerializeField] private float knockbackDistance = 5f; + + [SerializeField] private StatsOutputScreen statsOutput; + + private CinemachineBasicMultiChannelPerlin perlin; + private float shakeTimer; + + public NoiseVisibilitySettingsManager NoiseManager => noiseManager; + public PlayerMovementController MovementController => movementController; + + [HideInInspector] public bool IsAlive => health > 0; + + private void Awake() { - shakeTimer -= Time.deltaTime; - - // perlin.m_AmplitudeGain = 0; - perlin.m_AmplitudeGain = Mathf.Lerp(perlin.m_AmplitudeGain, 0, .1f); - if (shakeTimer <= 0f) perlin.m_AmplitudeGain = 0; + flareRegister = FindObjectOfType(); } - if (!IsAlive) + // Start is called before the first frame update + private void Start() { - PlayerInteractionHandler.instance.isDead = true; - movementController.isDead = true; + perlin = cameraFreeLook.GetRig(1).GetCinemachineComponent(); } - } - private void OnTriggerEnter(Collider other) - { - if (other.CompareTag("Damaging")) + // Update is called once per frame + private void Update() { - print("HIT!"); - var monster = other.GetComponentInParent(); + NoiseManager.SetRunning(MovementController.IsRunning); + statsOutput.health = health; + statsOutput.stamina = 20f; + statsOutput.oxygen = 100f; - Damage(monster.AttackDamage, monster.ShakeCameraOnHit); - animationController.Hit(health <= 0); - movementController.PhysicalForceMove((transform.position - monster.transform.position) * knockbackDistance); - movementController.LockMovement(knockbackDuration); + if (shakeTimer > 0) + { + shakeTimer -= Time.deltaTime; + + // perlin.m_AmplitudeGain = 0; + perlin.m_AmplitudeGain = Mathf.Lerp(perlin.m_AmplitudeGain, 0, .1f); + if (shakeTimer <= 0f) perlin.m_AmplitudeGain = 0; + } + + if (!IsAlive) + { + PlayerInteractionHandler.instance.isDead = true; + movementController.isDead = true; + } + } + + private void OnTriggerEnter(Collider other) + { + if (other.CompareTag("Damaging")) + { + print("HIT!"); + var monster = other.GetComponentInParent(); + + Damage(monster.AttackDamage, monster.ShakeCameraOnHit); + animationController.Hit(health <= 0); + movementController.PhysicalForceMove((transform.position - monster.transform.position) * knockbackDistance); + movementController.LockMovement(knockbackDuration); + } } - } - public void ShakeCamera(float intensity, float time) - { - var perlin = cameraFreeLook.GetRig(1).GetCinemachineComponent(); - perlin.m_AmplitudeGain = intensity; - shakeTimer = time; - } + public void ShakeCamera(float intensity, float time) + { + var perlin = cameraFreeLook.GetRig(1).GetCinemachineComponent(); + perlin.m_AmplitudeGain = intensity; + shakeTimer = time; + } - public void SetSensitivity(float magnitude) - { - movementController.SetSensitivity(magnitude); - } + public void SetSensitivity(float magnitude) + { + movementController.SetSensitivity(magnitude); + } - public void Damage(float damage, bool applyShake = false) - { - health -= damage; - if (applyShake) ShakeCamera(15, 5); + public void Damage(float damage, bool applyShake = false) + { + health -= damage; + if (applyShake) ShakeCamera(15, 5); + } } } \ No newline at end of file diff --git a/Assets/Scripts/Player/PlayerInteractionHandler.cs b/Assets/Scripts/Player/PlayerInteractionHandler.cs index 7c53187..24fec00 100644 --- a/Assets/Scripts/Player/PlayerInteractionHandler.cs +++ b/Assets/Scripts/Player/PlayerInteractionHandler.cs @@ -1,6 +1,10 @@ using System.Collections.Generic; using UnityEngine; +namespace Player +{ + + [RequireComponent(typeof(Collider))] public class PlayerInteractionHandler : MonoBehaviour { @@ -36,7 +40,7 @@ public class PlayerInteractionHandler : MonoBehaviour private ItemSelector itemSelector; private readonly List itemsInRange = new(); - private InGameManager manager; + private Game.InGameManager manager; private Material selMaterial; private TempInventory tempInvent; public Inventory Inventory => invent; @@ -58,7 +62,7 @@ public class PlayerInteractionHandler : MonoBehaviour itemSelector = ItemSelector.instance; pistol.gameObject.SetActive(GunEnabled); flashlightEnabled = flashlight.gameObject.activeSelf; - manager = FindObjectOfType(); + manager = FindObjectOfType(); } // Update is called once per frame @@ -313,4 +317,6 @@ internal class AxisIsDown { return down; } +} + } \ No newline at end of file diff --git a/Assets/Scripts/Player/PlayerMovementController.cs b/Assets/Scripts/Player/PlayerMovementController.cs index 7c74ec9..df1f7d7 100644 --- a/Assets/Scripts/Player/PlayerMovementController.cs +++ b/Assets/Scripts/Player/PlayerMovementController.cs @@ -2,162 +2,166 @@ using System.Collections; using Cinemachine; using UnityEngine; -public class PlayerMovementController : MonoBehaviour +namespace Player { - [SerializeField] private PlayerAnimationController animcontroller; - [SerializeField] private CharacterController ccontroller; - - [SerializeField] private CameraController cameraController; - - [SerializeField] private float speed = 1f; - - [SerializeField] private float sideSpeed = 0.5f; - - [SerializeField] private float animatedRotationSpeed = 5f; - - [SerializeField] public Camera cam; - - [HideInInspector] public bool AllowRotation; - - [HideInInspector] public bool IsAiming; - - [SerializeField] private NoiseVisibilitySettingsManager noiseSettings; - - [SerializeField] private CinemachineFreeLook freelook; - - [SerializeField] private string mouseXAxis = "Mouse X"; - - [SerializeField] private string mouseYAxis = "Mouse Y"; - - public bool isDead; - private CharacterControllerForce ccForceAddon; - private float initXSensitivity = 250f; - - private float initYSensitivity = 10f; - //private float mouseX = 0; - - private bool isSneaking = false; - - - private Vector3 lookingDirectionVector; - - private InGameManager manager; - - private bool movementLocked; - - private float x; - private float y; - public bool IsRunning { get; private set; } - - - public float NoiseDistance => noiseSettings.NoiseDistance; - - - // Start is called before the first frame update - private void Start() + public class PlayerMovementController : MonoBehaviour { - ccForceAddon = ccontroller.gameObject.GetComponent(); - manager = FindObjectOfType(); - initXSensitivity = freelook.m_XAxis.m_MaxSpeed; - initYSensitivity = freelook.m_YAxis.m_MaxSpeed; - } + [SerializeField] private PlayerAnimationController animcontroller; - // Update is called once per frame - private void Update() - { - if (isDead) return; - AllowRotation = IsAiming || IsRunning; - IsAiming = Input.GetMouseButton(1) || Input.GetAxis("Aim") > 0.5f; - GetMovementOld(); - MovePlayer(); + [SerializeField] private CharacterController ccontroller; - animcontroller.Animate(new Vector2(x, y), false, IsRunning); + [SerializeField] private CameraController cameraController; - lookingDirectionVector = (cameraController.Forward * y + cameraController.Right * x).normalized; - if ((IsRunning && !Input.GetMouseButtonDown(1)) || AllowRotation) + [SerializeField] private float speed = 1f; + + [SerializeField] private float sideSpeed = 0.5f; + + [SerializeField] private float animatedRotationSpeed = 5f; + + [SerializeField] public Camera cam; + + [HideInInspector] public bool AllowRotation; + + [HideInInspector] public bool IsAiming; + + [SerializeField] private NoiseVisibilitySettingsManager noiseSettings; + + [SerializeField] private CinemachineFreeLook freelook; + + [SerializeField] private string mouseXAxis = "Mouse X"; + + [SerializeField] private string mouseYAxis = "Mouse Y"; + + public bool isDead; + private CharacterControllerForce ccForceAddon; + private float initXSensitivity = 250f; + + private float initYSensitivity = 10f; + //private float mouseX = 0; + + private bool isSneaking = false; + + + private Vector3 lookingDirectionVector; + + private Game.InGameManager manager; + + private bool movementLocked; + + private float x; + private float y; + public bool IsRunning { get; private set; } + + + public float NoiseDistance => noiseSettings.NoiseDistance; + + + // Start is called before the first frame update + private void Start() + { + ccForceAddon = ccontroller.gameObject.GetComponent(); + manager = FindObjectOfType(); + initXSensitivity = freelook.m_XAxis.m_MaxSpeed; + initYSensitivity = freelook.m_YAxis.m_MaxSpeed; + } + + // Update is called once per frame + private void Update() + { + if (isDead) return; + AllowRotation = IsAiming || IsRunning; + IsAiming = Input.GetMouseButton(1) || Input.GetAxis("Aim") > 0.5f; + GetMovementOld(); + MovePlayer(); + + animcontroller.Animate(new Vector2(x, y), false, IsRunning); + + lookingDirectionVector = (cameraController.Forward * y + cameraController.Right * x).normalized; + if ((IsRunning && !Input.GetMouseButtonDown(1)) || AllowRotation) + { + if ((AllowRotation && x == 0 && y == 0) || (IsAiming && PlayerInteractionHandler.instance.GunEnabled)) + lookingDirectionVector = cameraController.Forward.normalized; + SlowLookAt(lookingDirectionVector); + } + + + freelook.m_XAxis.m_InputAxisName = !manager.IsPaused ? mouseXAxis : ""; + freelook.m_YAxis.m_InputAxisName = !manager.IsPaused ? mouseYAxis : ""; + } + + private void GetMovementOld() + { + x = Input.GetAxis("Horizontal"); + y = Input.GetAxis("Vertical"); + if (movementLocked || manager.IsPaused) + { + x = 0; + y = 0; + } + + IsRunning = Mathf.Abs(y) > 0.1f || Mathf.Abs(x) > 0.1f; + } + + public void SetSensitivity(float sensitivity) + { + freelook.m_XAxis.m_MaxSpeed = initXSensitivity * sensitivity; + freelook.m_YAxis.m_MaxSpeed = initYSensitivity * sensitivity; + } + + private void MovePlayer() + { + var movement = Vector3.zero; + //movement += transform.forward * Mathf.Abs(y) * Time.deltaTime * speed;//+(transform.right*x*Time.deltaTime*speed); + movement += cam.transform.forward * y * Time.deltaTime * speed; + + //movement += transform.forward * Mathf.Abs(x) * Time.deltaTime * speed; + + if (!IsAiming) + movement += cam.transform.right * x * Time.deltaTime * speed; + else + movement += cam.transform.right * x * Time.deltaTime * sideSpeed; + + + movement += Vector3.down * Time.deltaTime * 9.8f; + ccontroller.Move(movement); + } + + public void SetSpeed(float speed) + { + this.speed = speed; + } + + private void GetJumpOld() { - if ((AllowRotation && x == 0 && y == 0) || (IsAiming && PlayerInteractionHandler.instance.GunEnabled)) - lookingDirectionVector = cameraController.Forward.normalized; - SlowLookAt(lookingDirectionVector); } - freelook.m_XAxis.m_InputAxisName = !manager.IsPaused ? mouseXAxis : ""; - freelook.m_YAxis.m_InputAxisName = !manager.IsPaused ? mouseYAxis : ""; - } - - private void GetMovementOld() - { - x = Input.GetAxis("Horizontal"); - y = Input.GetAxis("Vertical"); - if (movementLocked || manager.IsPaused) + private void SlowLookAt(Vector3 targetVector) { - x = 0; - y = 0; + var relativePos = targetVector; + var toRotation = Quaternion.LookRotation(relativePos); + + transform.rotation = Quaternion.Lerp(transform.rotation, toRotation, animatedRotationSpeed * Time.deltaTime); } - IsRunning = Mathf.Abs(y) > 0.1f || Mathf.Abs(x) > 0.1f; - } - public void SetSensitivity(float sensitivity) - { - freelook.m_XAxis.m_MaxSpeed = initXSensitivity * sensitivity; - freelook.m_YAxis.m_MaxSpeed = initYSensitivity * sensitivity; - } + public void PhysicalForceMove(Vector3 vector) + { + ccontroller.Move(vector); + ccForceAddon.AddImpact(vector, vector.magnitude); + } - private void MovePlayer() - { - var movement = Vector3.zero; - //movement += transform.forward * Mathf.Abs(y) * Time.deltaTime * speed;//+(transform.right*x*Time.deltaTime*speed); - movement += cam.transform.forward * y * Time.deltaTime * speed; + public void LockMovement(float duration) + { + StartCoroutine(lockMovement(duration)); + } - //movement += transform.forward * Mathf.Abs(x) * Time.deltaTime * speed; - - if (!IsAiming) - movement += cam.transform.right * x * Time.deltaTime * speed; - else - movement += cam.transform.right * x * Time.deltaTime * sideSpeed; - - - movement += Vector3.down * Time.deltaTime * 9.8f; - ccontroller.Move(movement); - } - - public void SetSpeed(float speed) - { - this.speed = speed; - } - - private void GetJumpOld() - { - } - - - private void SlowLookAt(Vector3 targetVector) - { - var relativePos = targetVector; - var toRotation = Quaternion.LookRotation(relativePos); - - transform.rotation = Quaternion.Lerp(transform.rotation, toRotation, animatedRotationSpeed * Time.deltaTime); - } - - - public void PhysicalForceMove(Vector3 vector) - { - ccontroller.Move(vector); - ccForceAddon.AddImpact(vector, vector.magnitude); - } - - public void LockMovement(float duration) - { - StartCoroutine(lockMovement(duration)); - } - - private IEnumerator lockMovement(float duration) - { - movementLocked = true; - yield return new WaitForSeconds(duration); - movementLocked = false; + private IEnumerator lockMovement(float duration) + { + movementLocked = true; + yield return new WaitForSeconds(duration); + movementLocked = false; + } } } \ No newline at end of file diff --git a/Assets/Scripts/Player/StatsOutputScreen.cs b/Assets/Scripts/Player/StatsOutputScreen.cs index cf77c2c..f0b7416 100644 --- a/Assets/Scripts/Player/StatsOutputScreen.cs +++ b/Assets/Scripts/Player/StatsOutputScreen.cs @@ -1,49 +1,52 @@ using TMPro; using UnityEngine; -public class StatsOutputScreen : MonoBehaviour +namespace Player { - [SerializeField] private TMP_Text healthText; - - [SerializeField] private TMP_Text staminaText; - - [SerializeField] private TMP_Text oxygenText; - - [HideInInspector] public float health; - - [HideInInspector] public float stamina; - - [HideInInspector] public float oxygen; - - private Color initColor; - - // Start is called before the first frame update - private void Start() + public class StatsOutputScreen : MonoBehaviour { - initColor = healthText.color; - InvokeRepeating("ToggleColor", 0.5f, 0.5f); + [SerializeField] private TMP_Text healthText; + + [SerializeField] private TMP_Text staminaText; + + [SerializeField] private TMP_Text oxygenText; + + [HideInInspector] public float health; + + [HideInInspector] public float stamina; + + [HideInInspector] public float oxygen; + + private Color initColor; + + // Start is called before the first frame update + private void Start() + { + initColor = healthText.color; + InvokeRepeating("ToggleColor", 0.5f, 0.5f); + } + + // Update is called once per frame + private void Update() + { + healthText.text = "Health:" + health; + + if (health <= 1) + //Dark Red + healthText.color = new Color(50, 0, 0); + else if (health <= 3) + healthText.color = Color.red; + else + healthText.color = initColor; + + staminaText.text = "Stamina:" + stamina; + oxygenText.text = "Oxygen:" + oxygen; + } + + private void ToggleColor() + { + if (health <= 1) + healthText.gameObject.SetActive(!healthText.gameObject.activeSelf); + } } - - // Update is called once per frame - private void Update() - { - healthText.text = "Health:" + health; - - if (health <= 1) - //Dark Red - healthText.color = new Color(50, 0, 0); - else if (health <= 3) - healthText.color = Color.red; - else - healthText.color = initColor; - - staminaText.text = "Stamina:" + stamina; - oxygenText.text = "Oxygen:" + oxygen; - } - - private void ToggleColor() - { - if (health <= 1) - healthText.gameObject.SetActive(!healthText.gameObject.activeSelf); - } -} \ No newline at end of file +}