diff --git a/.gitignore b/.gitignore index a92b102..0919f96 100644 --- a/.gitignore +++ b/.gitignore @@ -74,3 +74,4 @@ crashlytics-build.properties game_notes/.obsidian .idea/.idea.AsteroidGame/.idea/dictionaries +.idea diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 0000000..bf244ee --- /dev/null +++ b/.gitmodules @@ -0,0 +1,3 @@ +[submodule "Assets/CoreSystems"] + path = Assets/CoreSystems + url = https://gitea.strixhab.net/Stedd/GameDev.CoreSystems.git diff --git a/.idea/.idea.AsteroidGame/.idea/.gitignore b/.idea/.idea.AsteroidGame/.idea/.gitignore deleted file mode 100644 index a7928db..0000000 --- a/.idea/.idea.AsteroidGame/.idea/.gitignore +++ /dev/null @@ -1,13 +0,0 @@ -# Default ignored files -/shelf/ -/workspace.xml -# Rider ignored files -/projectSettingsUpdater.xml -/modules.xml -/.idea.AsteroidGame.iml -/contentModel.xml -# Editor-based HTTP Client requests -/httpRequests/ -# Datasource local storage ignored files -/dataSources/ -/dataSources.local.xml diff --git a/.idea/.idea.AsteroidGame/.idea/indexLayout.xml b/.idea/.idea.AsteroidGame/.idea/indexLayout.xml deleted file mode 100644 index 7b08163..0000000 --- a/.idea/.idea.AsteroidGame/.idea/indexLayout.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - \ No newline at end of file diff --git a/.idea/.idea.AsteroidGame/.idea/vcs.xml b/.idea/.idea.AsteroidGame/.idea/vcs.xml deleted file mode 100644 index 94a25f7..0000000 --- a/.idea/.idea.AsteroidGame/.idea/vcs.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/Assets/AssetPacks/Environment/Art/Materials/Blue_Mat.mat b/Assets/AssetPacks/Environment/Art/Materials/Blue_Mat.mat index da4dc7a..752750b 100644 --- a/Assets/AssetPacks/Environment/Art/Materials/Blue_Mat.mat +++ b/Assets/AssetPacks/Environment/Art/Materials/Blue_Mat.mat @@ -12,7 +12,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: da692e001514ec24dbc4cca1949ff7e8, type: 3} m_Name: m_EditorClassIdentifier: - version: 12 + version: 13 hdPluginSubTargetMaterialVersions: m_Keys: [] m_Values: @@ -25,6 +25,8 @@ Material: m_PrefabAsset: {fileID: 0} m_Name: Blue_Mat m_Shader: {fileID: 4800000, guid: 6e4ae4064600d784cac1e41a9e6f2e59, type: 3} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 m_ValidKeywords: - _DISABLE_SSR_TRANSPARENT - _NORMALMAP_TANGENT_SPACE @@ -40,6 +42,7 @@ Material: - TransparentBackface - RayTracingPrepass - MOTIONVECTORS + m_LockedProperties: m_SavedProperties: serializedVersion: 3 m_TexEnvs: @@ -151,6 +154,10 @@ Material: m_Texture: {fileID: 0} m_Scale: {x: 1, y: 1} m_Offset: {x: 0, y: 0} + - _TransmissionMaskMap: + 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} @@ -180,6 +187,8 @@ Material: - _AlphaCutoffPrepass: 0.5 - _AlphaCutoffShadow: 0.5 - _AlphaDstBlend: 0 + - _AlphaRemapMax: 1 + - _AlphaRemapMin: 0 - _AlphaSrcBlend: 1 - _AlphaToMask: 0 - _AlphaToMaskInspectorValue: 0 @@ -236,6 +245,8 @@ Material: - _Mode: 0 - _NormalMapSpace: 0 - _NormalScale: 1 + - _ObjectSpaceUVMapping: 0 + - _ObjectSpaceUVMappingEmissive: 0 - _OcclusionStrength: 1 - _OpaqueCullMode: 2 - _PPDLodThreshold: 5 @@ -262,9 +273,9 @@ Material: - _StencilRefGBuffer: 10 - _StencilRefMV: 40 - _StencilWriteMask: 6 - - _StencilWriteMaskDepth: 8 - - _StencilWriteMaskGBuffer: 14 - - _StencilWriteMaskMV: 40 + - _StencilWriteMaskDepth: 9 + - _StencilWriteMaskGBuffer: 15 + - _StencilWriteMaskMV: 41 - _SubsurfaceMask: 1 - _SupportDecals: 1 - _SurfaceType: 0 @@ -272,6 +283,7 @@ Material: - _TexWorldScaleEmissive: 1 - _Thickness: 1 - _TransmissionEnable: 1 + - _TransmissionMask: 1 - _TransparentBackfaceEnable: 0 - _TransparentCullMode: 2 - _TransparentDepthPostpassEnable: 0 diff --git a/Assets/AssetPacks/Environment/Art/Materials/GreyBlue_Mat.mat b/Assets/AssetPacks/Environment/Art/Materials/GreyBlue_Mat.mat index 9900f88..88d40a3 100644 --- a/Assets/AssetPacks/Environment/Art/Materials/GreyBlue_Mat.mat +++ b/Assets/AssetPacks/Environment/Art/Materials/GreyBlue_Mat.mat @@ -9,6 +9,8 @@ Material: m_PrefabAsset: {fileID: 0} m_Name: GreyBlue_Mat m_Shader: {fileID: 4800000, guid: 6e4ae4064600d784cac1e41a9e6f2e59, type: 3} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 m_ValidKeywords: - _DISABLE_SSR_TRANSPARENT - _NORMALMAP_TANGENT_SPACE @@ -24,6 +26,7 @@ Material: - TransparentBackface - RayTracingPrepass - MOTIONVECTORS + m_LockedProperties: m_SavedProperties: serializedVersion: 3 m_TexEnvs: @@ -135,6 +138,10 @@ Material: m_Texture: {fileID: 0} m_Scale: {x: 1, y: 1} m_Offset: {x: 0, y: 0} + - _TransmissionMaskMap: + 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} @@ -164,6 +171,8 @@ Material: - _AlphaCutoffPrepass: 0.5 - _AlphaCutoffShadow: 0.5 - _AlphaDstBlend: 0 + - _AlphaRemapMax: 1 + - _AlphaRemapMin: 0 - _AlphaSrcBlend: 1 - _AlphaToMask: 0 - _AlphaToMaskInspectorValue: 0 @@ -220,6 +229,8 @@ Material: - _Mode: 0 - _NormalMapSpace: 0 - _NormalScale: 1 + - _ObjectSpaceUVMapping: 0 + - _ObjectSpaceUVMappingEmissive: 0 - _OcclusionStrength: 1 - _OpaqueCullMode: 2 - _PPDLodThreshold: 5 @@ -246,9 +257,9 @@ Material: - _StencilRefGBuffer: 10 - _StencilRefMV: 40 - _StencilWriteMask: 6 - - _StencilWriteMaskDepth: 8 - - _StencilWriteMaskGBuffer: 14 - - _StencilWriteMaskMV: 40 + - _StencilWriteMaskDepth: 9 + - _StencilWriteMaskGBuffer: 15 + - _StencilWriteMaskMV: 41 - _SubsurfaceMask: 1 - _SupportDecals: 1 - _SurfaceType: 0 @@ -256,6 +267,7 @@ Material: - _TexWorldScaleEmissive: 1 - _Thickness: 1 - _TransmissionEnable: 1 + - _TransmissionMask: 1 - _TransparentBackfaceEnable: 0 - _TransparentCullMode: 2 - _TransparentDepthPostpassEnable: 0 @@ -303,7 +315,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: da692e001514ec24dbc4cca1949ff7e8, type: 3} m_Name: m_EditorClassIdentifier: - version: 12 + version: 13 hdPluginSubTargetMaterialVersions: m_Keys: [] m_Values: diff --git a/Assets/AssetPacks/Environment/Art/Materials/GridBlue_01_Mat.mat b/Assets/AssetPacks/Environment/Art/Materials/GridBlue_01_Mat.mat index 69e5bbf..5bbebb5 100644 --- a/Assets/AssetPacks/Environment/Art/Materials/GridBlue_01_Mat.mat +++ b/Assets/AssetPacks/Environment/Art/Materials/GridBlue_01_Mat.mat @@ -9,6 +9,8 @@ Material: m_PrefabAsset: {fileID: 0} m_Name: GridBlue_01_Mat m_Shader: {fileID: 4800000, guid: 6e4ae4064600d784cac1e41a9e6f2e59, type: 3} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 m_ValidKeywords: - _DISABLE_SSR_TRANSPARENT - _EMISSIVE_COLOR_MAP @@ -26,6 +28,7 @@ Material: - TransparentBackface - RayTracingPrepass - MOTIONVECTORS + m_LockedProperties: m_SavedProperties: serializedVersion: 3 m_TexEnvs: @@ -137,6 +140,10 @@ Material: m_Texture: {fileID: 0} m_Scale: {x: 1, y: 1} m_Offset: {x: 0, y: 0} + - _TransmissionMaskMap: + 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} @@ -166,6 +173,8 @@ Material: - _AlphaCutoffPrepass: 0.5 - _AlphaCutoffShadow: 0.5 - _AlphaDstBlend: 0 + - _AlphaRemapMax: 1 + - _AlphaRemapMin: 0 - _AlphaSrcBlend: 1 - _AlphaToMask: 0 - _AlphaToMaskInspectorValue: 0 @@ -222,6 +231,8 @@ Material: - _Mode: 0 - _NormalMapSpace: 0 - _NormalScale: 1 + - _ObjectSpaceUVMapping: 0 + - _ObjectSpaceUVMappingEmissive: 0 - _OcclusionStrength: 0 - _OpaqueCullMode: 2 - _PPDLodThreshold: 5 @@ -248,9 +259,9 @@ Material: - _StencilRefGBuffer: 10 - _StencilRefMV: 40 - _StencilWriteMask: 6 - - _StencilWriteMaskDepth: 8 - - _StencilWriteMaskGBuffer: 14 - - _StencilWriteMaskMV: 40 + - _StencilWriteMaskDepth: 9 + - _StencilWriteMaskGBuffer: 15 + - _StencilWriteMaskMV: 41 - _SubsurfaceMask: 1 - _SupportDecals: 1 - _SurfaceType: 0 @@ -258,6 +269,7 @@ Material: - _TexWorldScaleEmissive: 1 - _Thickness: 1 - _TransmissionEnable: 1 + - _TransmissionMask: 1 - _TransparentBackfaceEnable: 0 - _TransparentCullMode: 2 - _TransparentDepthPostpassEnable: 0 @@ -305,7 +317,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: da692e001514ec24dbc4cca1949ff7e8, type: 3} m_Name: m_EditorClassIdentifier: - version: 12 + version: 13 hdPluginSubTargetMaterialVersions: m_Keys: [] m_Values: diff --git a/Assets/AssetPacks/Environment/Art/Materials/GridOrange_01_Mat.mat b/Assets/AssetPacks/Environment/Art/Materials/GridOrange_01_Mat.mat index 474bb55..3fa31b0 100644 --- a/Assets/AssetPacks/Environment/Art/Materials/GridOrange_01_Mat.mat +++ b/Assets/AssetPacks/Environment/Art/Materials/GridOrange_01_Mat.mat @@ -12,7 +12,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: da692e001514ec24dbc4cca1949ff7e8, type: 3} m_Name: m_EditorClassIdentifier: - version: 12 + version: 13 hdPluginSubTargetMaterialVersions: m_Keys: [] m_Values: @@ -25,6 +25,8 @@ Material: m_PrefabAsset: {fileID: 0} m_Name: GridOrange_01_Mat m_Shader: {fileID: 4800000, guid: 6e4ae4064600d784cac1e41a9e6f2e59, type: 3} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 m_ValidKeywords: - _DISABLE_SSR_TRANSPARENT - _EMISSIVE_COLOR_MAP @@ -42,6 +44,7 @@ Material: - TransparentBackface - RayTracingPrepass - MOTIONVECTORS + m_LockedProperties: m_SavedProperties: serializedVersion: 3 m_TexEnvs: @@ -153,6 +156,10 @@ Material: m_Texture: {fileID: 0} m_Scale: {x: 1, y: 1} m_Offset: {x: 0, y: 0} + - _TransmissionMaskMap: + 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} @@ -182,6 +189,8 @@ Material: - _AlphaCutoffPrepass: 0.5 - _AlphaCutoffShadow: 0.5 - _AlphaDstBlend: 0 + - _AlphaRemapMax: 1 + - _AlphaRemapMin: 0 - _AlphaSrcBlend: 1 - _AlphaToMask: 0 - _AlphaToMaskInspectorValue: 0 @@ -238,6 +247,8 @@ Material: - _Mode: 0 - _NormalMapSpace: 0 - _NormalScale: 1 + - _ObjectSpaceUVMapping: 0 + - _ObjectSpaceUVMappingEmissive: 0 - _OcclusionStrength: 0 - _OpaqueCullMode: 2 - _PPDLodThreshold: 5 @@ -264,9 +275,9 @@ Material: - _StencilRefGBuffer: 10 - _StencilRefMV: 40 - _StencilWriteMask: 6 - - _StencilWriteMaskDepth: 8 - - _StencilWriteMaskGBuffer: 14 - - _StencilWriteMaskMV: 40 + - _StencilWriteMaskDepth: 9 + - _StencilWriteMaskGBuffer: 15 + - _StencilWriteMaskMV: 41 - _SubsurfaceMask: 1 - _SupportDecals: 1 - _SurfaceType: 0 @@ -274,6 +285,7 @@ Material: - _TexWorldScaleEmissive: 1 - _Thickness: 1 - _TransmissionEnable: 1 + - _TransmissionMask: 1 - _TransparentBackfaceEnable: 0 - _TransparentCullMode: 2 - _TransparentDepthPostpassEnable: 0 diff --git a/Assets/AssetPacks/Environment/Art/Materials/GridWhite_01_Mat.mat b/Assets/AssetPacks/Environment/Art/Materials/GridWhite_01_Mat.mat index ba9a9b1..bf10b89 100644 --- a/Assets/AssetPacks/Environment/Art/Materials/GridWhite_01_Mat.mat +++ b/Assets/AssetPacks/Environment/Art/Materials/GridWhite_01_Mat.mat @@ -12,7 +12,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: da692e001514ec24dbc4cca1949ff7e8, type: 3} m_Name: m_EditorClassIdentifier: - version: 12 + version: 13 hdPluginSubTargetMaterialVersions: m_Keys: [] m_Values: @@ -25,6 +25,8 @@ Material: m_PrefabAsset: {fileID: 0} m_Name: GridWhite_01_Mat m_Shader: {fileID: 4800000, guid: 6e4ae4064600d784cac1e41a9e6f2e59, type: 3} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 m_ValidKeywords: - _DISABLE_SSR_TRANSPARENT - _EMISSIVE_COLOR_MAP @@ -42,6 +44,7 @@ Material: - TransparentBackface - RayTracingPrepass - MOTIONVECTORS + m_LockedProperties: m_SavedProperties: serializedVersion: 3 m_TexEnvs: @@ -153,6 +156,10 @@ Material: m_Texture: {fileID: 0} m_Scale: {x: 1, y: 1} m_Offset: {x: 0, y: 0} + - _TransmissionMaskMap: + 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} @@ -182,6 +189,8 @@ Material: - _AlphaCutoffPrepass: 0.5 - _AlphaCutoffShadow: 0.5 - _AlphaDstBlend: 0 + - _AlphaRemapMax: 1 + - _AlphaRemapMin: 0 - _AlphaSrcBlend: 1 - _AlphaToMask: 0 - _AlphaToMaskInspectorValue: 0 @@ -238,6 +247,8 @@ Material: - _Mode: 0 - _NormalMapSpace: 0 - _NormalScale: 1 + - _ObjectSpaceUVMapping: 0 + - _ObjectSpaceUVMappingEmissive: 0 - _OcclusionStrength: 0 - _OpaqueCullMode: 2 - _PPDLodThreshold: 5 @@ -264,9 +275,9 @@ Material: - _StencilRefGBuffer: 10 - _StencilRefMV: 40 - _StencilWriteMask: 6 - - _StencilWriteMaskDepth: 8 - - _StencilWriteMaskGBuffer: 14 - - _StencilWriteMaskMV: 40 + - _StencilWriteMaskDepth: 9 + - _StencilWriteMaskGBuffer: 15 + - _StencilWriteMaskMV: 41 - _SubsurfaceMask: 1 - _SupportDecals: 1 - _SurfaceType: 0 @@ -274,6 +285,7 @@ Material: - _TexWorldScaleEmissive: 1 - _Thickness: 1 - _TransmissionEnable: 1 + - _TransmissionMask: 1 - _TransparentBackfaceEnable: 0 - _TransparentCullMode: 2 - _TransparentDepthPostpassEnable: 0 diff --git a/Assets/AssetPacks/Environment/Art/Materials/URP_HDRP_ShaderGraph/ShaderGraphGrid_01_Mat.mat b/Assets/AssetPacks/Environment/Art/Materials/URP_HDRP_ShaderGraph/ShaderGraphGrid_01_Mat.mat index e2d4470..6c7701a 100644 --- a/Assets/AssetPacks/Environment/Art/Materials/URP_HDRP_ShaderGraph/ShaderGraphGrid_01_Mat.mat +++ b/Assets/AssetPacks/Environment/Art/Materials/URP_HDRP_ShaderGraph/ShaderGraphGrid_01_Mat.mat @@ -9,6 +9,8 @@ Material: m_PrefabAsset: {fileID: 0} m_Name: ShaderGraphGrid_01_Mat m_Shader: {fileID: -6465566751694194690, guid: b8d7679189d4a5940af46004f3870920, type: 3} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 m_ValidKeywords: - _DISABLE_DECALS - _DISABLE_SSR_TRANSPARENT @@ -23,6 +25,7 @@ Material: - TransparentDepthPostpass - TransparentBackface - RayTracingPrepass + m_LockedProperties: m_SavedProperties: serializedVersion: 3 m_TexEnvs: @@ -174,7 +177,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: da692e001514ec24dbc4cca1949ff7e8, type: 3} m_Name: m_EditorClassIdentifier: - version: 12 + version: 13 hdPluginSubTargetMaterialVersions: m_Keys: [] m_Values: diff --git a/Assets/AsteroidGame.asmdef b/Assets/AsteroidGame.asmdef index fa942c3..8bf3aa0 100644 --- a/Assets/AsteroidGame.asmdef +++ b/Assets/AsteroidGame.asmdef @@ -7,7 +7,8 @@ "GUID:f008ecc6829887e478aeb5eb004eb01b", "GUID:17a5862fcd6383b4b97bad4dcb1e2e5d", "GUID:f26d68a0bdefa1043b120b820f55e190", - "GUID:eb3099ff524d60545a136315a154d67b" + "GUID:eb3099ff524d60545a136315a154d67b", + "GUID:5d38ea13ae8f69a4395d425d401a557a" ], "includePlatforms": [], "excludePlatforms": [], diff --git a/Assets/CoreSystems b/Assets/CoreSystems new file mode 160000 index 0000000..639357c --- /dev/null +++ b/Assets/CoreSystems @@ -0,0 +1 @@ +Subproject commit 639357ca9aa7ae6a32f5f97067d6d33005d9bdb1 diff --git a/Assets/Entities/Enemies/Scripts.meta b/Assets/CoreSystems.meta similarity index 77% rename from Assets/Entities/Enemies/Scripts.meta rename to Assets/CoreSystems.meta index e6385d4..7767e4d 100644 --- a/Assets/Entities/Enemies/Scripts.meta +++ b/Assets/CoreSystems.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 7e3f0ef7b0919344e82d2052fbe05143 +guid: 1ddd6c48e06694441adea0f979e2d194 folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/Assets/Entities/Enemies/AvailableEnemies.asset b/Assets/Entities/Enemies/AvailableEnemies.asset index 391cdb0..35367a8 100644 --- a/Assets/Entities/Enemies/AvailableEnemies.asset +++ b/Assets/Entities/Enemies/AvailableEnemies.asset @@ -12,4 +12,5 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 1260fd8b7346bdf41a685d24b968a231, type: 3} m_Name: AvailableEnemies m_EditorClassIdentifier: - _list: [] + _list: + - {fileID: 1411216412654489461, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} diff --git a/Assets/Entities/Enemies/Enemy.prefab b/Assets/Entities/Enemies/Enemy.prefab index afdef29..54ad472 100644 --- a/Assets/Entities/Enemies/Enemy.prefab +++ b/Assets/Entities/Enemies/Enemy.prefab @@ -23,6 +23,7 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 631532845000205954} + serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} @@ -31,8 +32,8 @@ Transform: - {fileID: 5355765884551595638} - {fileID: 91949040360545666} - {fileID: 8001059947964412310} + - {fileID: 2513054780709503419} m_Father: {fileID: 7780103704517281592} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &700493555145955010 GameObject: @@ -57,6 +58,7 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 700493555145955010} + serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} @@ -65,8 +67,55 @@ Transform: - {fileID: 1671077540319194627} - {fileID: 3955427233603104958} m_Father: {fileID: 3291032053430181389} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1312307913408260796 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4626427865743511805} + - component: {fileID: 4299120351774448665} + m_Layer: 0 + m_Name: Damageable + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &4626427865743511805 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1312307913408260796} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 5123077350175375293} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &4299120351774448665 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1312307913408260796} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: a845ca774f1a2d341b32451b100c0d1c, type: 3} + m_Name: + m_EditorClassIdentifier: + _activeDamageableRuntimeSet: {fileID: 11400000, guid: 8332d81762d09114eac45ca6f3b2c4af, type: 2} + k__BackingField: 10 + k__BackingField: 10 + k__BackingField: 0 --- !u!1 &1856154329861502355 GameObject: m_ObjectHideFlags: 0 @@ -92,13 +141,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1856154329861502355} + serializedVersion: 2 m_LocalRotation: {x: -0, y: -0, z: -0.7071068, w: 0.7071068} m_LocalPosition: {x: 0.341, y: 0, z: 0.587} m_LocalScale: {x: 0.24, y: 0.4597677, z: 0.19977282} m_ConstrainProportionsScale: 1 m_Children: [] m_Father: {fileID: 5355765884551595638} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: -90} --- !u!33 &4938033185760690219 MeshFilter: @@ -150,6 +199,40 @@ MeshRenderer: m_SortingLayer: 0 m_SortingOrder: 0 m_AdditionalVertexStreams: {fileID: 0} +--- !u!1 &1900887375425358919 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5123077350175375293} + m_Layer: 0 + m_Name: Functions + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &5123077350175375293 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1900887375425358919} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 4626427865743511805} + - {fileID: 3486364872742429245} + - {fileID: 5845428820912776804} + m_Father: {fileID: 2692714622321691895} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &3867128990362458971 GameObject: m_ObjectHideFlags: 0 @@ -175,13 +258,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 3867128990362458971} + serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0.536, y: 0.206, z: -0.193} m_LocalScale: {x: 0.1, y: 0.1, z: 0.1} m_ConstrainProportionsScale: 1 m_Children: [] m_Father: {fileID: 91949040360545666} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!33 &8811483340839899384 MeshFilter: @@ -257,13 +340,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 4192276824634724634} + serializedVersion: 2 m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 3291032053430181389} - m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!65 &5604178963170827772 BoxCollider: @@ -273,11 +356,50 @@ BoxCollider: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 4192276824634724634} m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 m_IsTrigger: 0 + m_ProvidesContacts: 0 m_Enabled: 1 - serializedVersion: 2 + serializedVersion: 3 m_Size: {x: 1.3168308, y: 1, z: 1.3902934} m_Center: {x: 0.15841538, y: 0, z: -0.0017904043} +--- !u!1 &4733920494088122715 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2513054780709503419} + m_Layer: 0 + m_Name: Ref:CenterPosition + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &2513054780709503419 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4733920494088122715} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 3291032053430181389} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &4921375452445824178 GameObject: m_ObjectHideFlags: 0 @@ -303,13 +425,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 4921375452445824178} + serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0.536, y: 0.206, z: 0.205} m_LocalScale: {x: 0.1, y: 0.1, z: 0.1} m_ConstrainProportionsScale: 1 m_Children: [] m_Father: {fileID: 91949040360545666} - m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!33 &274824493129163367 MeshFilter: @@ -361,6 +483,54 @@ MeshRenderer: m_SortingLayer: 0 m_SortingOrder: 0 m_AdditionalVertexStreams: {fileID: 0} +--- !u!1 &5367121395816538489 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 3486364872742429245} + - component: {fileID: 4816616723634589559} + m_Layer: 0 + m_Name: Targetable + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &3486364872742429245 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5367121395816538489} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 5123077350175375293} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &4816616723634589559 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5367121395816538489} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 8410932d22e18624787af61d3a4cd191, type: 3} + m_Name: + m_EditorClassIdentifier: + _activeTargetableRuntimeSet: {fileID: 11400000, guid: 85e03587d1a940f438ceac70a3d544d5, type: 2} + k__BackingField: {fileID: 0} + _centerPosition: {fileID: 2513054780709503419} + _basePosition: {fileID: 561887346552595101} --- !u!1 &5599539567497807159 GameObject: m_ObjectHideFlags: 0 @@ -371,6 +541,7 @@ GameObject: m_Component: - component: {fileID: 2692714622321691895} - component: {fileID: 1411216412654489461} + - component: {fileID: 103375416814990516} m_Layer: 0 m_Name: Enemy m_TagString: Enemy @@ -385,14 +556,15 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 5599539567497807159} + serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 0.5, y: 0.5, z: 0.5} m_ConstrainProportionsScale: 1 m_Children: - - {fileID: 191376514769192977} + - {fileID: 5123077350175375293} + - {fileID: 4114072049224310043} m_Father: {fileID: 0} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &1411216412654489461 MonoBehaviour: @@ -406,18 +578,68 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: a8e2a3a5a069cea4cbe59c093201d8dc, type: 3} m_Name: m_EditorClassIdentifier: - _health: 10 - _maxHealth: 0 - _isInvulnerable: 0 - _centerPosition: {fileID: 3291032053430181389} - _basePosition: {fileID: 2692714622321691895} + k__BackingField: {fileID: 4299120351774448665} + k__BackingField: {fileID: 4816616723634589559} _uiFriendlyName: Enemy _entityBaseSet: {fileID: 11400000, guid: c5542e77624472441a67b1f34e19a116, type: 2} _enemyBaseSet: {fileID: 11400000, guid: e5f25127d92be074aac6e7b745fae107, type: 2} - _targeterConfig: {fileID: 11400000, guid: d5813a38da3962d4498fc71ef33361b6, type: 2} - _targeter: {fileID: 0} - _target: {fileID: 0} - _navMeshAgent: {fileID: 0} + k__BackingField: {fileID: 2802974253471165353} + _navMeshAgent: {fileID: 103375416814990516} +--- !u!195 &103375416814990516 +NavMeshAgent: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5599539567497807159} + m_Enabled: 1 + m_AgentTypeID: 0 + m_Radius: 0.5 + m_Speed: 3.5 + m_Acceleration: 8 + avoidancePriority: 50 + m_AngularSpeed: 120 + m_StoppingDistance: 0 + m_AutoTraverseOffMeshLink: 1 + m_AutoBraking: 1 + m_AutoRepath: 1 + m_Height: 2 + m_BaseOffset: 0 + m_WalkableMask: 4294967295 + m_ObstacleAvoidanceType: 4 +--- !u!1 &6015068770338930083 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4114072049224310043} + m_Layer: 0 + m_Name: Rig + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &4114072049224310043 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6015068770338930083} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 191376514769192977} + - {fileID: 561887346552595101} + m_Father: {fileID: 2692714622321691895} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &6940800288144322101 GameObject: m_ObjectHideFlags: 0 @@ -441,14 +663,14 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 6940800288144322101} - m_LocalRotation: {x: 0, y: -0.7071068, z: 0, w: 0.7071068} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0.7071068, z: -0, w: 0.7071068} m_LocalPosition: {x: 0, y: 2.01, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: - {fileID: 7780103704517281592} - m_Father: {fileID: 2692714622321691895} - m_RootOrder: 0 + m_Father: {fileID: 4114072049224310043} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &7089677990206923544 GameObject: @@ -473,6 +695,7 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 7089677990206923544} + serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} @@ -480,7 +703,87 @@ Transform: m_Children: - {fileID: 3291032053430181389} m_Father: {fileID: 191376514769192977} - m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &7098420778236141238 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5845428820912776804} + - component: {fileID: 2802974253471165353} + m_Layer: 0 + m_Name: Targeter + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &5845428820912776804 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7098420778236141238} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 5123077350175375293} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &2802974253471165353 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7098420778236141238} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 28bcd65de1e3cf744a3ac9b53c030319, type: 3} + m_Name: + m_EditorClassIdentifier: + _targeterConfig: {fileID: 11400000, guid: d5813a38da3962d4498fc71ef33361b6, type: 2} + _range: 0 + _targetStrategy: 0 + _activeTargetable: {fileID: 0} + _targeterParent: {fileID: 4816616723634589559} + k__BackingField: {fileID: 0} +--- !u!1 &7670619634857166053 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 561887346552595101} + m_Layer: 0 + m_Name: Ref:BasePosition + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &561887346552595101 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7670619634857166053} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 4114072049224310043} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &8831453991117079309 GameObject: @@ -507,6 +810,7 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8831453991117079309} + serializedVersion: 2 m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} @@ -515,7 +819,6 @@ Transform: - {fileID: 7956298909069556562} - {fileID: 4518982824339893338} m_Father: {fileID: 3291032053430181389} - m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!33 &5128498621595353232 MeshFilter: @@ -592,13 +895,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8931538593362537433} + serializedVersion: 2 m_LocalRotation: {x: -0, y: -0, z: -0.7071068, w: 0.7071068} m_LocalPosition: {x: 0.34100002, y: 0, z: -0.603} m_LocalScale: {x: 0.24, y: 0.4597677, z: 0.19977282} m_ConstrainProportionsScale: 1 m_Children: [] m_Father: {fileID: 5355765884551595638} - m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: -90} --- !u!33 &6582230243926515993 MeshFilter: diff --git a/Assets/Entities/Enemies/EnemyTargeterConfiguration.asset b/Assets/Entities/Enemies/EnemyTargeterConfiguration.asset index 92129b5..8f3bd7d 100644 --- a/Assets/Entities/Enemies/EnemyTargeterConfiguration.asset +++ b/Assets/Entities/Enemies/EnemyTargeterConfiguration.asset @@ -12,6 +12,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 02781660543c12d4ebddaf334eb0d730, type: 3} m_Name: EnemyTargeterConfiguration m_EditorClassIdentifier: - _range: 0 + _maxRange: 30 + _minRange: 0.5 _selectedTargetStrategy: 0 - _activeEntities: {fileID: 0} + _activeEntities: {fileID: 11400000, guid: dda2fd5e970bbd642a5ceead1e82783c, type: 2} diff --git a/Assets/Entities/Enemies/Scripts/EnemyHealth.cs b/Assets/Entities/Enemies/Scripts/EnemyHealth.cs deleted file mode 100644 index 324e0e2..0000000 --- a/Assets/Entities/Enemies/Scripts/EnemyHealth.cs +++ /dev/null @@ -1,63 +0,0 @@ -using UnityEngine; - -namespace AsteroidGame.Entities.Enemies.Scripts -{ - public class EnemyHealth : MonoBehaviour - { - [Header("Assigned on start")] - // [SerializeField] EnemyHandler enemyHandler; - // [SerializeField] ScoreHandler scoreHandler; - - [Header("Parameters")] - [SerializeField] int _maxHealth = 5; - [SerializeField] int _difficultyRamp = 1; - - [SerializeField] int _wealthValue = 5; - - [Header("Stats")] - [SerializeField] int _currentHealth; - - #region Public - public int Health { get=> _currentHealth;} - #endregion - - void OnEnable() - { - // enemyHandler = FindObjectOfType(); - // scoreHandler = FindObjectOfType(); - _currentHealth = _maxHealth; - } - - private void OnParticleCollision(GameObject damager) - { - ProcessHitFrom(damager); - } - - private void ProcessHitFrom(GameObject damager) - { - // SpawnFX(damageVFX); - - // Debug.Log(damager.GetComponentInParent().GetDamage()); - _currentHealth -= damager.GetComponentInParent().Damage; - - //UpdateHealthText(health); - - if(_currentHealth <= 0) - { - ProcessDeathFrom(damager); - } - } - - private void ProcessDeathFrom(GameObject damager) - { - //damager.GetComponentInParent().UpdateScore(1f); - - // SpawnFX(deathFX); - // scoreHandler.ModifyWealth(wealthValue); - // enemyHandler.RemoveEnemy(gameObject); - // Destroy(gameObject); - gameObject.SetActive(false); - _maxHealth += _difficultyRamp; - } - } -} diff --git a/Assets/Entities/Enemies/Scripts/EnemyHealth.cs.meta b/Assets/Entities/Enemies/Scripts/EnemyHealth.cs.meta deleted file mode 100644 index a893b1c..0000000 --- a/Assets/Entities/Enemies/Scripts/EnemyHealth.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: ac0f42db9d6c21540a5ef3107e36946a -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Entities/Enemies/Scripts/EnemyMovement.cs b/Assets/Entities/Enemies/Scripts/EnemyMovement.cs deleted file mode 100644 index cf8b3fd..0000000 --- a/Assets/Entities/Enemies/Scripts/EnemyMovement.cs +++ /dev/null @@ -1,61 +0,0 @@ -using System.Collections; -using UnityEngine; - -namespace AsteroidGame.Entities.Enemies -{ - public class EnemyMovement : MonoBehaviour - { - [Header("Parameters")] - [SerializeField] [Range(0f, 5f)] float _speed = 1f; - [SerializeField] int _damage = 1; - - - // [SerializeField] EnemyHandler enemyHandler; - // [SerializeField] ScoreHandler scoreHandler; - - - Vector3 _startPosition; - Vector3 _endPosition; - float _travelPercent = 0f; - - private IEnumerator _followPath; - - void Awake() - { - // enemyHandler = FindObjectOfType(); - // scoreHandler = FindObjectOfType(); - - } - - void OnEnable() - { - // enemyHandler.AddEnemyToAllEnemies(gameObject); - } - - - void RecalculatePath() - { - if (_followPath != null) - { - //Debug.Log("Stopping Coroutine"); - StopCoroutine(_followPath); - - } - } - - void HandleReachedEndOfPath() - { - // scoreHandler.ModifyHealth(-damage); - // scoreHandler.ModifyWealth(-100); - // enemyHandler.RemoveEnemy(gameObject); - //Destroy(gameObject); - gameObject.SetActive(false); - } - - private Vector3 GetVector3(Vector2Int coord) - { - return new Vector3((float)coord.x, 0f, (float)coord.y) * 10f; - } - - } -} diff --git a/Assets/Entities/Enemies/Scripts/EnemyMovement.cs.meta b/Assets/Entities/Enemies/Scripts/EnemyMovement.cs.meta deleted file mode 100644 index d52ce13..0000000 --- a/Assets/Entities/Enemies/Scripts/EnemyMovement.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 8e691044df4c75f4cb07af0551efa2c6 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Entities/Entities.asmdef b/Assets/Entities/Entities.asmdef index 9e0932f..1414387 100644 --- a/Assets/Entities/Entities.asmdef +++ b/Assets/Entities/Entities.asmdef @@ -2,8 +2,7 @@ "name": "Entities", "rootNamespace": "AsteroidGame", "references": [ - "GUID:17a5862fcd6383b4b97bad4dcb1e2e5d", - "GUID:eb3099ff524d60545a136315a154d67b" + "GUID:5d38ea13ae8f69a4395d425d401a557a" ], "includePlatforms": [], "excludePlatforms": [], diff --git a/Assets/Entities/EntityBase.cs b/Assets/Entities/EntityBase.cs deleted file mode 100644 index b4ed7ca..0000000 --- a/Assets/Entities/EntityBase.cs +++ /dev/null @@ -1,76 +0,0 @@ -using AsteroidGame.Interfaces; -using UnityEngine; - -namespace AsteroidGame.Entities -{ - public class EntityBase : MonoBehaviour, IDamageable, ITargetable - { - [Header("Health")] - [SerializeField] protected int _health; - [SerializeField] protected int _maxHealth; - [SerializeField] protected bool _isInvulnerable; - - [Header("TargetPositions")] - [SerializeField] private Transform _centerPosition; - [SerializeField] private Transform _basePosition; - - [Header("UI")] - [SerializeField] protected string _uiFriendlyName; - - [Space] - [SerializeField] private SEntityBaseRuntimeSet _entityBaseSet; - - #region Props - - public bool IsInvulnerable => _isInvulnerable; - public string UiFriendlyName => _uiFriendlyName; - - #endregion - - protected virtual void OnEnable() - { - _entityBaseSet.Add(this); - } - - protected virtual void OnDisable() - { - _entityBaseSet.Remove(this); - } - - #region Methods - - public void ModifyHealth(int healthChange) - { - if (!_isInvulnerable) - { - _health += healthChange; - } - } - - #endregion - - #region Setters - - public void SetHealth(int newHealth) => _health = newHealth; - - public void SetMaxHealth(int newHealth) => _maxHealth = newHealth; - - public void SetInvulnerable(bool newState) => _isInvulnerable = newState; - - #endregion - - #region Getters - - public Vector3 GetCenterPosition() => _centerPosition.transform.position; - - public Vector3 GetBasePosition() => _basePosition.transform.position; - - public int GetHealth() => _health; - - public int GetMaxHealth() => _maxHealth; - - public float GetHealthFactor() => (float)_health / (float)_maxHealth; - - #endregion - } -} \ No newline at end of file diff --git a/Assets/Entities/RuntimeSet/ActiveDamageableEntities.asset b/Assets/Entities/RuntimeSet/ActiveDamageableEntities.asset new file mode 100644 index 0000000..0d7e803 --- /dev/null +++ b/Assets/Entities/RuntimeSet/ActiveDamageableEntities.asset @@ -0,0 +1,15 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !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: 9d4c8ce856b06db4c9a892b981e516e7, type: 3} + m_Name: ActiveDamageableEntities + m_EditorClassIdentifier: + _list: [] diff --git a/Assets/Interfaces.meta b/Assets/Entities/RuntimeSet/ActiveDamageableEntities.asset.meta similarity index 52% rename from Assets/Interfaces.meta rename to Assets/Entities/RuntimeSet/ActiveDamageableEntities.asset.meta index a3edc8b..9d3f389 100644 --- a/Assets/Interfaces.meta +++ b/Assets/Entities/RuntimeSet/ActiveDamageableEntities.asset.meta @@ -1,8 +1,8 @@ fileFormatVersion: 2 -guid: b20f0794cd5868b4eadf6614b8ab88b9 -folderAsset: yes -DefaultImporter: +guid: 8332d81762d09114eac45ca6f3b2c4af +NativeFormatImporter: externalObjects: {} + mainObjectFileID: 11400000 userData: assetBundleName: assetBundleVariant: diff --git a/Assets/Entities/RuntimeSet/ActivePowerStructures.asset b/Assets/Entities/RuntimeSet/ActivePowerStructures.asset new file mode 100644 index 0000000..f01ab89 --- /dev/null +++ b/Assets/Entities/RuntimeSet/ActivePowerStructures.asset @@ -0,0 +1,15 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !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: 3c46c7dedba14f3da958a2e6a3d3feaa, type: 3} + m_Name: ActivePowerStructures + m_EditorClassIdentifier: + _list: [] diff --git a/Assets/Interfaces/Interfaces.asmdef.meta b/Assets/Entities/RuntimeSet/ActivePowerStructures.asset.meta similarity index 52% rename from Assets/Interfaces/Interfaces.asmdef.meta rename to Assets/Entities/RuntimeSet/ActivePowerStructures.asset.meta index 19a6da9..665b2a4 100644 --- a/Assets/Interfaces/Interfaces.asmdef.meta +++ b/Assets/Entities/RuntimeSet/ActivePowerStructures.asset.meta @@ -1,7 +1,8 @@ fileFormatVersion: 2 -guid: 17a5862fcd6383b4b97bad4dcb1e2e5d -AssemblyDefinitionImporter: +guid: 127d26f1f3536e94da36af662f63fa0b +NativeFormatImporter: externalObjects: {} + mainObjectFileID: 11400000 userData: assetBundleName: assetBundleVariant: diff --git a/Assets/Entities/RuntimeSet/ActiveTargetableBuildings.asset b/Assets/Entities/RuntimeSet/ActiveTargetableBuildings.asset new file mode 100644 index 0000000..45c4446 --- /dev/null +++ b/Assets/Entities/RuntimeSet/ActiveTargetableBuildings.asset @@ -0,0 +1,15 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !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: 7d76ef79c960c1845a914468e30d036b, type: 3} + m_Name: ActiveTargetableBuildings + m_EditorClassIdentifier: + _list: [] diff --git a/Assets/Entities/Enemies/Drone.meta b/Assets/Entities/RuntimeSet/ActiveTargetableBuildings.asset.meta similarity index 52% rename from Assets/Entities/Enemies/Drone.meta rename to Assets/Entities/RuntimeSet/ActiveTargetableBuildings.asset.meta index 17a280a..a1284c1 100644 --- a/Assets/Entities/Enemies/Drone.meta +++ b/Assets/Entities/RuntimeSet/ActiveTargetableBuildings.asset.meta @@ -1,8 +1,8 @@ fileFormatVersion: 2 -guid: 22c766fdadc55c449b5311282a681a64 -folderAsset: yes -DefaultImporter: +guid: dda2fd5e970bbd642a5ceead1e82783c +NativeFormatImporter: externalObjects: {} + mainObjectFileID: 11400000 userData: assetBundleName: assetBundleVariant: diff --git a/Assets/Entities/RuntimeSet/ActiveTargetableEnemies.asset b/Assets/Entities/RuntimeSet/ActiveTargetableEnemies.asset new file mode 100644 index 0000000..6c761ad --- /dev/null +++ b/Assets/Entities/RuntimeSet/ActiveTargetableEnemies.asset @@ -0,0 +1,15 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !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: 7d76ef79c960c1845a914468e30d036b, type: 3} + m_Name: ActiveTargetableEnemies + m_EditorClassIdentifier: + _list: [] diff --git a/Assets/Entities/RuntimeSet/ActiveTargetableEnemies.asset.meta b/Assets/Entities/RuntimeSet/ActiveTargetableEnemies.asset.meta new file mode 100644 index 0000000..bc95ae3 --- /dev/null +++ b/Assets/Entities/RuntimeSet/ActiveTargetableEnemies.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 85e03587d1a940f438ceac70a3d544d5 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Entities/ScriptableObjects/SEnemyBaseRuntimeSet.cs b/Assets/Entities/ScriptableObjects/SEnemyBaseRuntimeSet.cs deleted file mode 100644 index c0d4478..0000000 --- a/Assets/Entities/ScriptableObjects/SEnemyBaseRuntimeSet.cs +++ /dev/null @@ -1,11 +0,0 @@ -using AsteroidGame.Entities.Enemies.Scripts; -using AsteroidGame.ScriptableObjects; -using UnityEngine; - -namespace AsteroidGame.Entities -{ - [CreateAssetMenu(fileName = "newEnemyBaseRuntimeSet", menuName = "RuntimeSet/EnemyBase")] - public class SEnemyBaseRuntimeSet : SRuntimeSet - { - } -} \ No newline at end of file diff --git a/Assets/Entities/ScriptableObjects/SEntityBaseRuntimeSet.cs b/Assets/Entities/ScriptableObjects/SEntityBaseRuntimeSet.cs deleted file mode 100644 index 371c740..0000000 --- a/Assets/Entities/ScriptableObjects/SEntityBaseRuntimeSet.cs +++ /dev/null @@ -1,10 +0,0 @@ -using AsteroidGame.ScriptableObjects; -using UnityEngine; - -namespace AsteroidGame.Entities -{ - [CreateAssetMenu(fileName = "newEntityBaseRuntimeSet", menuName = "RuntimeSet/EntityBase")] - public class SEntityBaseRuntimeSet : SRuntimeSet - { - } -} \ No newline at end of file diff --git a/Assets/Entities/ScriptableObjects/SStructureBaseRuntimeSet.cs b/Assets/Entities/ScriptableObjects/SStructureBaseRuntimeSet.cs deleted file mode 100644 index 4f43567..0000000 --- a/Assets/Entities/ScriptableObjects/SStructureBaseRuntimeSet.cs +++ /dev/null @@ -1,10 +0,0 @@ -using AsteroidGame.ScriptableObjects; -using UnityEngine; - -namespace AsteroidGame.Entities -{ - [CreateAssetMenu(fileName = "newStructureBaseRuntimeSet", menuName = "RuntimeSet/StructureBase")] - public class SStructureBaseRuntimeSet : SRuntimeSet - { - } -} \ No newline at end of file diff --git a/Assets/Entities/ScriptableObjects/STargeterConfig.cs b/Assets/Entities/ScriptableObjects/STargeterConfig.cs deleted file mode 100644 index 461c31f..0000000 --- a/Assets/Entities/ScriptableObjects/STargeterConfig.cs +++ /dev/null @@ -1,18 +0,0 @@ -using AsteroidGame.Interfaces; -using UnityEngine; - -namespace AsteroidGame.Entities -{ - [CreateAssetMenu(fileName = "newTargeterConfiguration", menuName = "Configuration/Targeter")] - public class STargeterConfig : ScriptableObject - { - public float _range; - public TargetStrategy _selectedTargetStrategy; - public SEntityBaseRuntimeSet _activeEntities; - public enum TargetStrategy - { - LowestRange, - LowestHealth - }; - } -} \ No newline at end of file diff --git a/Assets/Entities/ScriptableObjects/SEnemyBaseList.cs b/Assets/Entities/ScriptableObjects/SoEnemyBaseList.cs similarity index 59% rename from Assets/Entities/ScriptableObjects/SEnemyBaseList.cs rename to Assets/Entities/ScriptableObjects/SoEnemyBaseList.cs index 1737136..37b7d30 100644 --- a/Assets/Entities/ScriptableObjects/SEnemyBaseList.cs +++ b/Assets/Entities/ScriptableObjects/SoEnemyBaseList.cs @@ -1,11 +1,11 @@ using System.Collections.Generic; -using AsteroidGame.Entities.Enemies.Scripts; +using AsteroidGame.Entities; using UnityEngine; -namespace AsteroidGame.Entities +namespace AsteroidGame.ScriptableObjects { [CreateAssetMenu(fileName = "newEnemyList", menuName = "Enemies/EnemyList")] - public class SEnemyBaseList : ScriptableObject + public class SoEnemyBaseList : ScriptableObject { public List _list; } diff --git a/Assets/Entities/ScriptableObjects/SEnemyBaseList.cs.meta b/Assets/Entities/ScriptableObjects/SoEnemyBaseList.cs.meta similarity index 100% rename from Assets/Entities/ScriptableObjects/SEnemyBaseList.cs.meta rename to Assets/Entities/ScriptableObjects/SoEnemyBaseList.cs.meta diff --git a/Assets/Entities/ScriptableObjects/SoEnemyBaseRuntimeSet.cs b/Assets/Entities/ScriptableObjects/SoEnemyBaseRuntimeSet.cs new file mode 100644 index 0000000..1d778cb --- /dev/null +++ b/Assets/Entities/ScriptableObjects/SoEnemyBaseRuntimeSet.cs @@ -0,0 +1,11 @@ +using AsteroidGame.Entities; +using GameDev.CoreSystems; +using UnityEngine; + +namespace AsteroidGame.ScriptableObjects +{ + [CreateAssetMenu(fileName = "newEnemyBaseRuntimeSet", menuName = "RuntimeSet/EnemyBase")] + public class SoEnemyBaseRuntimeSet : SoRuntimeSet + { + } +} \ No newline at end of file diff --git a/Assets/Entities/ScriptableObjects/SEnemyBaseRuntimeSet.cs.meta b/Assets/Entities/ScriptableObjects/SoEnemyBaseRuntimeSet.cs.meta similarity index 100% rename from Assets/Entities/ScriptableObjects/SEnemyBaseRuntimeSet.cs.meta rename to Assets/Entities/ScriptableObjects/SoEnemyBaseRuntimeSet.cs.meta diff --git a/Assets/Entities/ScriptableObjects/SoEntityBaseRuntimeSet.cs b/Assets/Entities/ScriptableObjects/SoEntityBaseRuntimeSet.cs new file mode 100644 index 0000000..8b76909 --- /dev/null +++ b/Assets/Entities/ScriptableObjects/SoEntityBaseRuntimeSet.cs @@ -0,0 +1,11 @@ +using AsteroidGame.Entities; +using GameDev.CoreSystems; +using UnityEngine; + +namespace AsteroidGame.ScriptableObjects +{ + [CreateAssetMenu(fileName = "newEntityBaseRuntimeSet", menuName = "RuntimeSet/EntityBase")] + public class SoEntityBaseRuntimeSet : SoRuntimeSet + { + } +} \ No newline at end of file diff --git a/Assets/Entities/ScriptableObjects/SEntityBaseRuntimeSet.cs.meta b/Assets/Entities/ScriptableObjects/SoEntityBaseRuntimeSet.cs.meta similarity index 100% rename from Assets/Entities/ScriptableObjects/SEntityBaseRuntimeSet.cs.meta rename to Assets/Entities/ScriptableObjects/SoEntityBaseRuntimeSet.cs.meta diff --git a/Assets/Entities/ScriptableObjects/SoPowerBaseRuntimeSet.cs b/Assets/Entities/ScriptableObjects/SoPowerBaseRuntimeSet.cs new file mode 100644 index 0000000..dab8630 --- /dev/null +++ b/Assets/Entities/ScriptableObjects/SoPowerBaseRuntimeSet.cs @@ -0,0 +1,11 @@ +using AsteroidGame.Entities; +using GameDev.CoreSystems; +using UnityEngine; + +namespace AsteroidGame.ScriptableObjects +{ + [CreateAssetMenu(fileName = "newPowerBaseRuntimeSet", menuName = "RuntimeSet/PowerBase")] + public class SoPowerBaseRuntimeSet : SoRuntimeSet + { + } +} \ No newline at end of file diff --git a/Assets/Entities/ScriptableObjects/SoPowerBaseRuntimeSet.cs.meta b/Assets/Entities/ScriptableObjects/SoPowerBaseRuntimeSet.cs.meta new file mode 100644 index 0000000..c05d2f4 --- /dev/null +++ b/Assets/Entities/ScriptableObjects/SoPowerBaseRuntimeSet.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 3c46c7dedba14f3da958a2e6a3d3feaa +timeCreated: 1665006553 \ No newline at end of file diff --git a/Assets/Entities/ScriptableObjects/SoPowerConfig.cs b/Assets/Entities/ScriptableObjects/SoPowerConfig.cs new file mode 100644 index 0000000..03dacd5 --- /dev/null +++ b/Assets/Entities/ScriptableObjects/SoPowerConfig.cs @@ -0,0 +1,13 @@ +using UnityEngine; + +namespace AsteroidGame.ScriptableObjects +{ + [CreateAssetMenu(fileName = "newPowerConfiguration", menuName = "Configuration/Power")] + public class SoPowerConfig : ScriptableObject + { + public SoPowerBaseRuntimeSet _activePowerStructures; + public bool isGenerator; + public bool isConsumer; + public int maxPower; + } +} \ No newline at end of file diff --git a/Assets/Interfaces/IBuildable.cs.meta b/Assets/Entities/ScriptableObjects/SoPowerConfig.cs.meta similarity index 83% rename from Assets/Interfaces/IBuildable.cs.meta rename to Assets/Entities/ScriptableObjects/SoPowerConfig.cs.meta index 2cd13ee..ceb8c6e 100644 --- a/Assets/Interfaces/IBuildable.cs.meta +++ b/Assets/Entities/ScriptableObjects/SoPowerConfig.cs.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 99361805272d7f6419384097857e2bd6 +guid: 87159085b5778b14482ec38673729d95 MonoImporter: externalObjects: {} serializedVersion: 2 diff --git a/Assets/Entities/ScriptableObjects/SStructureBaseList.cs b/Assets/Entities/ScriptableObjects/SoStructureBaseList.cs similarity index 62% rename from Assets/Entities/ScriptableObjects/SStructureBaseList.cs rename to Assets/Entities/ScriptableObjects/SoStructureBaseList.cs index 6eb1d0d..42ea48c 100644 --- a/Assets/Entities/ScriptableObjects/SStructureBaseList.cs +++ b/Assets/Entities/ScriptableObjects/SoStructureBaseList.cs @@ -1,10 +1,11 @@ using System.Collections.Generic; +using AsteroidGame.Entities; using UnityEngine; -namespace AsteroidGame.Entities +namespace AsteroidGame.ScriptableObjects { [CreateAssetMenu(fileName = "newStructureList", menuName = "Structures/StructureList")] - public class SStructureBaseList : ScriptableObject + public class SoStructureBaseList : ScriptableObject { public List _structureList; } diff --git a/Assets/Entities/ScriptableObjects/SStructureBaseList.cs.meta b/Assets/Entities/ScriptableObjects/SoStructureBaseList.cs.meta similarity index 100% rename from Assets/Entities/ScriptableObjects/SStructureBaseList.cs.meta rename to Assets/Entities/ScriptableObjects/SoStructureBaseList.cs.meta diff --git a/Assets/Entities/ScriptableObjects/SoStructureBaseRuntimeSet.cs b/Assets/Entities/ScriptableObjects/SoStructureBaseRuntimeSet.cs new file mode 100644 index 0000000..0d01258 --- /dev/null +++ b/Assets/Entities/ScriptableObjects/SoStructureBaseRuntimeSet.cs @@ -0,0 +1,11 @@ +using AsteroidGame.Entities; +using GameDev.CoreSystems; +using UnityEngine; + +namespace AsteroidGame.ScriptableObjects +{ + [CreateAssetMenu(fileName = "newStructureBaseRuntimeSet", menuName = "RuntimeSet/StructureBase")] + public class SoStructureBaseRuntimeSet : SoRuntimeSet + { + } +} \ No newline at end of file diff --git a/Assets/Entities/ScriptableObjects/SStructureBaseRuntimeSet.cs.meta b/Assets/Entities/ScriptableObjects/SoStructureBaseRuntimeSet.cs.meta similarity index 100% rename from Assets/Entities/ScriptableObjects/SStructureBaseRuntimeSet.cs.meta rename to Assets/Entities/ScriptableObjects/SoStructureBaseRuntimeSet.cs.meta diff --git a/Assets/Entities/ScriptableObjects/SoTargeterConfig.cs b/Assets/Entities/ScriptableObjects/SoTargeterConfig.cs new file mode 100644 index 0000000..8951174 --- /dev/null +++ b/Assets/Entities/ScriptableObjects/SoTargeterConfig.cs @@ -0,0 +1,22 @@ +using GameDev.CoreSystems; +using UnityEngine; +using UnityEngine.Serialization; + +namespace AsteroidGame.ScriptableObjects +{ + [CreateAssetMenu(fileName = "newTargeterConfiguration", menuName = "Configuration/Targeter")] + public class SoTargeterConfig : ScriptableObject + { + [FormerlySerializedAs("_range")] + public float _maxRange; + public float _minRange; + public TargetStrategy _selectedTargetStrategy; + public SoTargetableRuntimeSet _activeEntities; + + public enum TargetStrategy + { + LowestRange, + LowestHealth + }; + } +} \ No newline at end of file diff --git a/Assets/Entities/ScriptableObjects/STargeterConfig.cs.meta b/Assets/Entities/ScriptableObjects/SoTargeterConfig.cs.meta similarity index 100% rename from Assets/Entities/ScriptableObjects/STargeterConfig.cs.meta rename to Assets/Entities/ScriptableObjects/SoTargeterConfig.cs.meta diff --git a/Assets/Entities/ScriptableObjects/SWeaponConfig.cs b/Assets/Entities/ScriptableObjects/SoWeaponConfig.cs similarity index 73% rename from Assets/Entities/ScriptableObjects/SWeaponConfig.cs rename to Assets/Entities/ScriptableObjects/SoWeaponConfig.cs index 29d4104..2b656d3 100644 --- a/Assets/Entities/ScriptableObjects/SWeaponConfig.cs +++ b/Assets/Entities/ScriptableObjects/SoWeaponConfig.cs @@ -1,9 +1,9 @@ -using AsteroidGame.Interfaces; +using GameDev.CoreSystems; using UnityEngine; -namespace AsteroidGame.Entities +namespace AsteroidGame.ScriptableObjects { - public class SWeaponConfig : ScriptableObject, IWeapon + public class SoWeaponConfig : ScriptableObject, IWeapon { [SerializeField] private float _fireRate; [SerializeField] private float _damage; diff --git a/Assets/Entities/ScriptableObjects/SWeaponConfig.cs.meta b/Assets/Entities/ScriptableObjects/SoWeaponConfig.cs.meta similarity index 100% rename from Assets/Entities/ScriptableObjects/SWeaponConfig.cs.meta rename to Assets/Entities/ScriptableObjects/SoWeaponConfig.cs.meta diff --git a/Assets/Entities/Scripts.meta b/Assets/Entities/Scripts.meta new file mode 100644 index 0000000..dabcc8a --- /dev/null +++ b/Assets/Entities/Scripts.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 087e96d3ceec42f9aba85753a4b8d15f +timeCreated: 1665005789 \ No newline at end of file diff --git a/Assets/Entities/Enemies/Scripts/EnemyBase.cs b/Assets/Entities/Scripts/EnemyBase.cs similarity index 51% rename from Assets/Entities/Enemies/Scripts/EnemyBase.cs rename to Assets/Entities/Scripts/EnemyBase.cs index e6fdd79..a9b800e 100644 --- a/Assets/Entities/Enemies/Scripts/EnemyBase.cs +++ b/Assets/Entities/Scripts/EnemyBase.cs @@ -1,4 +1,4 @@ -using System; +using AsteroidGame.ScriptableObjects; using UnityEngine; using UnityEngine.AI; @@ -6,35 +6,43 @@ namespace AsteroidGame.Entities { public class EnemyBase : EntityBase { - [SerializeField] private SEntityBaseRuntimeSet _enemyBaseSet; + [SerializeField] private SoEntityBaseRuntimeSet _enemyBaseSet; - [Header("Targeter")] - [SerializeField] private STargeterConfig _targeterConfig; - [SerializeField] private Targeter _targeter; - [SerializeField] private EntityBase _target; + [field: Header("Targeter")] + [field: SerializeField] public Targeter Targeter { get; set; } - [Header("NavMeshAgent")] + [field: Header("NavMeshAgent")] [SerializeField] private NavMeshAgent _navMeshAgent; protected override void OnEnable() { base.OnEnable(); - _enemyBaseSet.Add(this); - InitializeTargeter(); - InitializeNavMeshAgent(); - } - private void InitializeNavMeshAgent() - { - _navMeshAgent = gameObject.AddComponent(); - _navMeshAgent.speed = 0.1f; + _enemyBaseSet.Add(this); + + InitializeTargeter(); + + InitializeNavMeshAgent(); } private void InitializeTargeter() { - _targeter = gameObject.AddComponent(); - _targeter.SetParent(this); - _targeter.SetConfig(_targeterConfig); + if (Targeter != null) + { + Targeter = gameObject.GetComponentInChildren(); + } + + Targeter.SetParent(Targetable); + } + + private void InitializeNavMeshAgent() + { + if (_navMeshAgent != null) + { + _navMeshAgent = gameObject.GetComponentInChildren(); + } + + _navMeshAgent.speed = 0.1f; } protected override void OnDisable() @@ -45,11 +53,10 @@ namespace AsteroidGame.Entities private void Update() { - if (_targeter.FoundTarget()) - { - _target = _targeter.GetTarget(); - _navMeshAgent.SetDestination(_target.GetBasePosition()); - } + if (!Targeter.FoundTarget()) return; + + Targetable = Targeter.GetTarget(); + _navMeshAgent.SetDestination(Targetable.GetBasePosition()); } } } \ No newline at end of file diff --git a/Assets/Entities/Enemies/Scripts/EnemyBase.cs.meta b/Assets/Entities/Scripts/EnemyBase.cs.meta similarity index 100% rename from Assets/Entities/Enemies/Scripts/EnemyBase.cs.meta rename to Assets/Entities/Scripts/EnemyBase.cs.meta diff --git a/Assets/Entities/Scripts/EntityBase.cs b/Assets/Entities/Scripts/EntityBase.cs new file mode 100644 index 0000000..ba9f087 --- /dev/null +++ b/Assets/Entities/Scripts/EntityBase.cs @@ -0,0 +1,65 @@ +using AsteroidGame.ScriptableObjects; +using GameDev.CoreSystems; +using UnityEngine; + +namespace AsteroidGame.Entities +{ + public class EntityBase : MonoBehaviour + { + [field: Header("Damageable")] + [field: SerializeField] public Damageable Damageable { get; set; } + + [field: Header("Targetable")] + [field: SerializeField] public Targetable Targetable { get; set; } + + [Header("UI")] + [SerializeField] protected string _uiFriendlyName; + + [Space] + [SerializeField] private SoEntityBaseRuntimeSet _entityBaseSet; + + #region Props + + public string UiFriendlyName => _uiFriendlyName; + + #endregion + + private void Awake() + { + InitializeDamageable(); + + InitializeTargetable(); + + AssignDamageable(); + } + + protected virtual void OnEnable() + { + _entityBaseSet.Add(this); + } + + protected virtual void OnDisable() + { + _entityBaseSet.Remove(this); + } + + private void InitializeDamageable() + { + if (Damageable != null) return; + Damageable = gameObject.AddComponent(); + } + + private void InitializeTargetable() + { + if (Targetable != null) return; + Targetable = gameObject.AddComponent(); + } + + private void AssignDamageable() + { + if (Targetable.Damageable != null) return; + + Targetable.Damageable = Damageable; + } + } +} \ No newline at end of file diff --git a/Assets/Entities/EntityBase.cs.meta b/Assets/Entities/Scripts/EntityBase.cs.meta similarity index 100% rename from Assets/Entities/EntityBase.cs.meta rename to Assets/Entities/Scripts/EntityBase.cs.meta diff --git a/Assets/Entities/Scripts/PowerBase.cs b/Assets/Entities/Scripts/PowerBase.cs new file mode 100644 index 0000000..8feaa01 --- /dev/null +++ b/Assets/Entities/Scripts/PowerBase.cs @@ -0,0 +1,42 @@ +using AsteroidGame.ScriptableObjects; +using GameDev.CoreSystems; +using UnityEngine; + +namespace AsteroidGame.Entities +{ + public class PowerBase : MonoBehaviour, IPowerSystem + { + [Header("State")] + [SerializeField] protected bool _isGenerator = true; + [SerializeField] protected bool _isConsumer = true; + [SerializeField] protected int _maxPower; + [SerializeField] protected int _currentPower; + + public void SetConfig(SoPowerConfig config) + { + _isGenerator = config.isGenerator; + _isConsumer = config.isConsumer; + _maxPower = config.maxPower; + } + + #region Setters + + public void SetMaxPower(int newValue) => _maxPower = newValue; + + #endregion + + #region Getters + + public bool IsGenerator => _isGenerator; + + public bool IsConsumer => _isConsumer; + + public int GetMaxPower() => _maxPower; + + public int GetCurrentPower() => _currentPower; + + public float GetPowerFactor() => (float)_currentPower / _maxPower; + + #endregion + } +} \ No newline at end of file diff --git a/Assets/Entities/Scripts/PowerBase.cs.meta b/Assets/Entities/Scripts/PowerBase.cs.meta new file mode 100644 index 0000000..c45b37a --- /dev/null +++ b/Assets/Entities/Scripts/PowerBase.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 5aca1826fdd547e1afd4a67d55a0f25c +timeCreated: 1665006027 \ No newline at end of file diff --git a/Assets/Entities/Scripts/Targeter.cs b/Assets/Entities/Scripts/Targeter.cs new file mode 100644 index 0000000..15f63eb --- /dev/null +++ b/Assets/Entities/Scripts/Targeter.cs @@ -0,0 +1,86 @@ +using AsteroidGame.ScriptableObjects; +using GameDev.CoreSystems; +using UnityEngine; +using UnityEngine.Serialization; + +namespace AsteroidGame.Entities +{ + public class Targeter : MonoBehaviour + { + [SerializeField] private SoTargeterConfig _targeterConfig; + + [SerializeField] private float _range; + [SerializeField] private SoTargeterConfig.TargetStrategy _targetStrategy; + [FormerlySerializedAs("_activeEntities")] + [SerializeField] private SoTargetableRuntimeSet _activeTargetable; + [SerializeField] private Targetable _targeterParent; + [field: SerializeField] public Targetable TargetEntity { get; set; } + + private void OnEnable() + { + SetConfig(_targeterConfig); + } + + public void SetParent(Targetable newParent) => _targeterParent = newParent; + + public void SetConfig(SoTargeterConfig config) + { + _range = config._maxRange; + _targetStrategy = config._selectedTargetStrategy; + _activeTargetable = config._activeEntities; + } + + public Targetable GetTarget() + { + return TargetEntity; + } + + public bool FoundTarget() + { + var currentBestValue = Mathf.Infinity; + var targetFound = false; + + foreach (var targetEntity in _activeTargetable._list) + { + var distanceToTarget = + Vector3.Magnitude(targetEntity.GetCenterPosition() - _targeterParent.GetCenterPosition()); + + var withinRange = distanceToTarget < _range; + if (withinRange) + { + switch (_targetStrategy) + { + case SoTargeterConfig.TargetStrategy.LowestRange: + { + var isClosest = distanceToTarget < currentBestValue; + if (isClosest) + { + targetFound = true; + currentBestValue = distanceToTarget; + TargetEntity = targetEntity; + } + + break; + } + case SoTargeterConfig.TargetStrategy.LowestHealth: + { + float enemyHealth = targetEntity.Damageable.GetCurrentHealth(); + + var isLowestHealth = enemyHealth < currentBestValue; + if (isLowestHealth) + { + targetFound = true; + currentBestValue = enemyHealth; + TargetEntity = targetEntity; + } + + break; + } + } + } + } + + return targetFound; + } + } +} \ No newline at end of file diff --git a/Assets/Entities/Targeter.cs.meta b/Assets/Entities/Scripts/Targeter.cs.meta similarity index 100% rename from Assets/Entities/Targeter.cs.meta rename to Assets/Entities/Scripts/Targeter.cs.meta diff --git a/Assets/Entities/Structures/PowerPlant/PowerPlant.prefab b/Assets/Entities/Structures/PowerPlant/PowerPlant.prefab index 05a48e5..4380ff9 100644 --- a/Assets/Entities/Structures/PowerPlant/PowerPlant.prefab +++ b/Assets/Entities/Structures/PowerPlant/PowerPlant.prefab @@ -24,15 +24,15 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1134055636167264334} + serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: - - {fileID: 7701460482385480461} - - {fileID: 1841478903898566568} + - {fileID: 5262269693041317168} + - {fileID: 8823548950904274780} m_Father: {fileID: 0} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &5166195223278443568 MonoBehaviour: @@ -46,21 +46,65 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: b5b8b24a2cbe7294c90fb34afeca78e7, type: 3} m_Name: m_EditorClassIdentifier: - _health: 10 - _maxHealth: 0 - _isInvulnerable: 0 - _centerPosition: {fileID: 1841478903898566568} - _basePosition: {fileID: 493861824998956378} + k__BackingField: {fileID: 4803755810606958043} + k__BackingField: {fileID: 4098794156838288170} _uiFriendlyName: Power\nPlant _entityBaseSet: {fileID: 11400000, guid: c5542e77624472441a67b1f34e19a116, type: 2} _cost: 100 _buildPlacementBlocked: 0 _buildTimer: 0 - _isGenerator: 1 - _isConsumer: 0 - _maxPower: 100 - _currentPower: 0 _structureBaseSet: {fileID: 11400000, guid: 1925957d2bc2f0c4a9210131f2d2c4e5, type: 2} + _powerBaseSet: {fileID: 11400000, guid: 127d26f1f3536e94da36af662f63fa0b, type: 2} + _powerConfig: {fileID: 11400000, guid: 742a00ce6f6a8e04cae160bc40f09e24, type: 2} + _power: {fileID: 0} +--- !u!1 &1139200854042314162 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 705421445933726062} + - component: {fileID: 4098794156838288170} + m_Layer: 0 + m_Name: Targetable + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &705421445933726062 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1139200854042314162} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 5262269693041317168} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &4098794156838288170 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1139200854042314162} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 8410932d22e18624787af61d3a4cd191, type: 3} + m_Name: + m_EditorClassIdentifier: + _activeTargetableRuntimeSet: {fileID: 11400000, guid: dda2fd5e970bbd642a5ceead1e82783c, type: 2} + k__BackingField: {fileID: 0} + _centerPosition: {fileID: 4810890945869411434} + _basePosition: {fileID: 4377705888661834325} --- !u!1 &1863277996181035512 GameObject: m_ObjectHideFlags: 0 @@ -86,13 +130,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1863277996181035512} + serializedVersion: 2 m_LocalRotation: {x: -0, y: -0, z: -0.28822982, w: 0.95756125} m_LocalPosition: {x: 0.556, y: 0.30948326, z: 0} m_LocalScale: {x: 0.22924483, y: 0.41812927, z: 0.34} m_ConstrainProportionsScale: 1 m_Children: [] m_Father: {fileID: 7701460482385480461} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: -33.504} --- !u!33 &3492591049058222371 MeshFilter: @@ -144,6 +188,87 @@ MeshRenderer: m_SortingLayer: 0 m_SortingOrder: 0 m_AdditionalVertexStreams: {fileID: 0} +--- !u!1 &2456059784061569785 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5262269693041317168} + m_Layer: 0 + m_Name: Functions + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &5262269693041317168 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2456059784061569785} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 5508661882298666976} + - {fileID: 705421445933726062} + m_Father: {fileID: 493861824998956378} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &4141114696578461492 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5508661882298666976} + - component: {fileID: 4803755810606958043} + m_Layer: 0 + m_Name: Damageable + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &5508661882298666976 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4141114696578461492} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 5262269693041317168} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &4803755810606958043 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4141114696578461492} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: a845ca774f1a2d341b32451b100c0d1c, type: 3} + m_Name: + m_EditorClassIdentifier: + _activeDamageableRuntimeSet: {fileID: 11400000, guid: 8332d81762d09114eac45ca6f3b2c4af, type: 2} + k__BackingField: 10 + k__BackingField: 10 + k__BackingField: 0 --- !u!1 &5696605131341260023 GameObject: m_ObjectHideFlags: 0 @@ -169,13 +294,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 5696605131341260023} + serializedVersion: 2 m_LocalRotation: {x: -0.28822976, y: -0, z: -0, w: 0.95756125} m_LocalPosition: {x: 0, y: 0.30948326, z: -0.556} m_LocalScale: {x: 0.34, y: 0.4181292, z: 0.22924486} m_ConstrainProportionsScale: 1 m_Children: [] m_Father: {fileID: 7701460482385480461} - m_RootOrder: 2 m_LocalEulerAnglesHint: {x: -33.504, y: 0, z: 0} --- !u!33 &5703693206798415631 MeshFilter: @@ -253,13 +378,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 5716373424675870408} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 1.2132, z: 0} m_LocalScale: {x: 1.85, y: 2.601712, z: 1.85} m_ConstrainProportionsScale: 1 m_Children: [] - m_Father: {fileID: 493861824998956378} - m_RootOrder: 1 + m_Father: {fileID: 8823548950904274780} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!33 &1304836505922952958 MeshFilter: @@ -319,11 +444,50 @@ BoxCollider: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 5716373424675870408} m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 m_IsTrigger: 1 + m_ProvidesContacts: 0 m_Enabled: 1 - serializedVersion: 2 + serializedVersion: 3 m_Size: {x: 1, y: 1, z: 1} m_Center: {x: 0, y: 0, z: 0} +--- !u!1 &6555413761965443330 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4377705888661834325} + m_Layer: 0 + m_Name: Ref:BasePosition + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &4377705888661834325 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6555413761965443330} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 8823548950904274780} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &6620524653909535726 GameObject: m_ObjectHideFlags: 0 @@ -349,7 +513,8 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 6620524653909535726} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 1.2108, z: 0} m_LocalScale: {x: 1, y: 2.5856, z: 1} m_ConstrainProportionsScale: 0 @@ -358,8 +523,8 @@ Transform: - {fileID: 1754268235013326116} - {fileID: 4775041521610446741} - {fileID: 1159293590819248905} - m_Father: {fileID: 493861824998956378} - m_RootOrder: 0 + - {fileID: 4810890945869411434} + m_Father: {fileID: 8823548950904274780} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!33 &7914752025160220231 MeshFilter: @@ -411,6 +576,40 @@ MeshRenderer: m_SortingLayer: 0 m_SortingOrder: 0 m_AdditionalVertexStreams: {fileID: 0} +--- !u!1 &7370732990009067680 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 8823548950904274780} + m_Layer: 0 + m_Name: Rig + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &8823548950904274780 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7370732990009067680} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 7701460482385480461} + - {fileID: 1841478903898566568} + - {fileID: 4377705888661834325} + m_Father: {fileID: 493861824998956378} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &7575591860203478988 GameObject: m_ObjectHideFlags: 0 @@ -436,13 +635,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 7575591860203478988} + serializedVersion: 2 m_LocalRotation: {x: -0, y: -0, z: 0.2882297, w: 0.9575613} m_LocalPosition: {x: -0.556, y: 0.30948326, z: 0} m_LocalScale: {x: 0.2292449, y: 0.41812924, z: 0.34} m_ConstrainProportionsScale: 1 m_Children: [] m_Father: {fileID: 7701460482385480461} - m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 33.504} --- !u!33 &3078844436335607959 MeshFilter: @@ -519,13 +718,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 7795813068735269079} + serializedVersion: 2 m_LocalRotation: {x: 0.2882297, y: -0, z: -0, w: 0.9575613} m_LocalPosition: {x: 0, y: 0.30948326, z: 0.556} m_LocalScale: {x: 0.34, y: 0.41812924, z: 0.2292449} m_ConstrainProportionsScale: 1 m_Children: [] m_Father: {fileID: 7701460482385480461} - m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 33.504, y: 0, z: 0} --- !u!33 &81163167810301819 MeshFilter: @@ -577,3 +776,34 @@ MeshRenderer: m_SortingLayer: 0 m_SortingOrder: 0 m_AdditionalVertexStreams: {fileID: 0} +--- !u!1 &8647181050937376645 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4810890945869411434} + m_Layer: 0 + m_Name: Ref:CenterPosition + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &4810890945869411434 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8647181050937376645} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 7701460482385480461} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} diff --git a/Assets/Entities/Structures/PowerPlant/PowerplantPowerConfiguration.asset b/Assets/Entities/Structures/PowerPlant/PowerplantPowerConfiguration.asset new file mode 100644 index 0000000..341585f --- /dev/null +++ b/Assets/Entities/Structures/PowerPlant/PowerplantPowerConfiguration.asset @@ -0,0 +1,18 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !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: 87159085b5778b14482ec38673729d95, type: 3} + m_Name: PowerplantPowerConfiguration + m_EditorClassIdentifier: + _activePowerStructures: {fileID: 11400000, guid: 127d26f1f3536e94da36af662f63fa0b, type: 2} + isGenerator: 1 + isConsumer: 0 + maxPower: 100 diff --git a/Assets/Entities/Structures/PowerPlant/PowerplantPowerConfiguration.asset.meta b/Assets/Entities/Structures/PowerPlant/PowerplantPowerConfiguration.asset.meta new file mode 100644 index 0000000..3a1bb0c --- /dev/null +++ b/Assets/Entities/Structures/PowerPlant/PowerplantPowerConfiguration.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 742a00ce6f6a8e04cae160bc40f09e24 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Entities/Structures/Scripts/Disabler.cs b/Assets/Entities/Structures/Scripts/Disabler.cs index 34c7410..504c63c 100644 --- a/Assets/Entities/Structures/Scripts/Disabler.cs +++ b/Assets/Entities/Structures/Scripts/Disabler.cs @@ -1,3 +1,4 @@ +using AsteroidGame.ScriptableObjects; using UnityEngine; using UnityEngine.Serialization; @@ -6,7 +7,7 @@ namespace AsteroidGame.Entities public class Disabler : MonoBehaviour { [FormerlySerializedAs("Set")] - [SerializeField] private SStructureBaseRuntimeSet _set; + [SerializeField] private SoStructureBaseRuntimeSet _set; [ContextMenu("Disable All")] public void DisableAll() diff --git a/Assets/Entities/Structures/Scripts/StructureBase.cs b/Assets/Entities/Structures/Scripts/StructureBase.cs index a55c5af..17c2143 100644 --- a/Assets/Entities/Structures/Scripts/StructureBase.cs +++ b/Assets/Entities/Structures/Scripts/StructureBase.cs @@ -1,33 +1,27 @@ - -using AsteroidGame.Interfaces; +using AsteroidGame.ScriptableObjects; +using GameDev.CoreSystems; using UnityEngine; namespace AsteroidGame.Entities { - public class StructureBase : EntityBase, IBuildable, IPowerSystem + public class StructureBase : EntityBase, IBuildable { [Header("BuildParameters")] [SerializeField] protected int _cost; [SerializeField] private bool _buildPlacementBlocked; [SerializeField] protected float _buildTimer; - [Header("Power")] - [SerializeField] protected bool _isGenerator; - [SerializeField] protected bool _isConsumer; - [SerializeField] protected int _maxPower; - [SerializeField] protected int _currentPower; - [Header("Configuration")] - [SerializeField] private SEntityBaseRuntimeSet _structureBaseSet; - - #region Private + [SerializeField] private SoEntityBaseRuntimeSet _structureBaseSet; + [SerializeField] private SoPowerBaseRuntimeSet _powerBaseSet; - #endregion + [Header("Power")] + [SerializeField] private SoPowerConfig _powerConfig; + [SerializeField] private PowerBase _power; #region Publics - public bool IsGenerator => _isGenerator; - public bool IsConsumer => _isConsumer; + public PowerBase Power => _power; public bool BuildPlacementBlocked => _buildPlacementBlocked; #endregion @@ -35,17 +29,23 @@ namespace AsteroidGame.Entities protected override void OnEnable() { base.OnEnable(); - if (!_isConsumer && !_isGenerator) - { - Debug.LogWarning("Power consumer/generator not set!"); - } _structureBaseSet.Add(this); + InitializePower(); + } + + private void InitializePower() + { + _power = gameObject.AddComponent(); + _power.SetConfig(_powerConfig); + _powerBaseSet.Add(_power); + } protected override void OnDisable() { base.OnDisable(); _structureBaseSet.Remove(this); + _powerBaseSet.Remove(_power); } private void OnTriggerStay(Collider other) @@ -66,19 +66,12 @@ namespace AsteroidGame.Entities #region Setters - public void SetMaxPower(int newValue) => _maxPower = newValue; public int SetCost(int newCost) => _cost = newCost; #endregion #region Getters - public int GetMaxPower() => _maxPower; - - public int GetCurrentPower() => _currentPower; - - public float GetPowerFactor() => (float)_currentPower / _maxPower; - public int GetCost() => _cost; #endregion diff --git a/Assets/Entities/Structures/Turret/Turret.cs b/Assets/Entities/Structures/Turret/Turret.cs index bd57a4c..a9c6f01 100644 --- a/Assets/Entities/Structures/Turret/Turret.cs +++ b/Assets/Entities/Structures/Turret/Turret.cs @@ -1,5 +1,3 @@ -using System; -using AsteroidGame.Entities.Enemies.Scripts; using UnityEngine; namespace AsteroidGame.Entities @@ -19,10 +17,8 @@ namespace AsteroidGame.Entities [SerializeField] private Transform _turretHead; [SerializeField] private Transform _barrel; - [Header("Targeter")] - [SerializeField] private STargeterConfig _targeterConfig; - [SerializeField] private Targeter _targeter; - [SerializeField] private EntityBase _target; + [field: Header("Targeter")] + [field: SerializeField] public Targeter Targeter { get; set; } #region Publics @@ -42,18 +38,13 @@ namespace AsteroidGame.Entities private void InitializeTargeter() { - _targeter = gameObject.AddComponent(); - _targeter.SetParent(this); - _targeter.SetConfig(_targeterConfig); + Targeter.SetParent(Targetable); } private void Update() { - if (_targeter.FoundTarget()) - { - _target = _targeter.GetTarget(); - _turretHead.transform.LookAt(_target.GetCenterPosition()); - } + if (!Targeter.FoundTarget()) return; + _turretHead.transform.LookAt(Targeter.GetTarget().GetCenterPosition()); } } } \ No newline at end of file diff --git a/Assets/Entities/Structures/Turret/Turret.prefab b/Assets/Entities/Structures/Turret/Turret.prefab index 0132361..7d1faae 100644 --- a/Assets/Entities/Structures/Turret/Turret.prefab +++ b/Assets/Entities/Structures/Turret/Turret.prefab @@ -1,5 +1,118 @@ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: +--- !u!1 &258812495471396799 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5898541643653152293} + m_Layer: 0 + m_Name: Functions + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &5898541643653152293 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 258812495471396799} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 6280290603549554065} + - {fileID: 1742443095838507103} + - {fileID: 989884077484375908} + m_Father: {fileID: 8324879816836607384} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1118725470430693759 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1742443095838507103} + - component: {fileID: 3738931345656042189} + m_Layer: 0 + m_Name: Targetable + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1742443095838507103 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1118725470430693759} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 5898541643653152293} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &3738931345656042189 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1118725470430693759} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 8410932d22e18624787af61d3a4cd191, type: 3} + m_Name: + m_EditorClassIdentifier: + _activeTargetableRuntimeSet: {fileID: 11400000, guid: dda2fd5e970bbd642a5ceead1e82783c, type: 2} + k__BackingField: {fileID: 0} + _centerPosition: {fileID: 6894291031605712785} + _basePosition: {fileID: 9116849480152445015} +--- !u!1 &1413342146147867861 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 9116849480152445015} + m_Layer: 0 + m_Name: Ref:BasePosition + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &9116849480152445015 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1413342146147867861} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 914060668543750284} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &1664455431739434982 GameObject: m_ObjectHideFlags: 0 @@ -25,13 +138,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1664455431739434982} + serializedVersion: 2 m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: -1.079, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 5103935544653627402} - m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!33 &8859758648044048825 MeshFilter: @@ -108,13 +221,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 4124039516271301344} - m_LocalRotation: {x: 0, y: -0, z: -0, w: 1} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 1, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] - m_Father: {fileID: 8324879816836607384} - m_RootOrder: 1 + m_Father: {fileID: 914060668543750284} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!33 &1304876018251197107 MeshFilter: @@ -166,6 +279,54 @@ MeshRenderer: m_SortingLayer: 0 m_SortingOrder: 0 m_AdditionalVertexStreams: {fileID: 0} +--- !u!1 &4179579253724962159 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 6280290603549554065} + - component: {fileID: 3620345197547817675} + m_Layer: 0 + m_Name: Damageable + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &6280290603549554065 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4179579253724962159} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 5898541643653152293} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &3620345197547817675 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4179579253724962159} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: a845ca774f1a2d341b32451b100c0d1c, type: 3} + m_Name: + m_EditorClassIdentifier: + _activeDamageableRuntimeSet: {fileID: 11400000, guid: 8332d81762d09114eac45ca6f3b2c4af, type: 2} + k__BackingField: 10 + k__BackingField: 10 + k__BackingField: 0 --- !u!1 &5103935544653627403 GameObject: m_ObjectHideFlags: 0 @@ -189,6 +350,7 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 5103935544653627403} + serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} @@ -199,7 +361,6 @@ Transform: - {fileID: 1987518899328085188} - {fileID: 6648276078230438600} m_Father: {fileID: 5103935544759496321} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &5103935544759496322 GameObject: @@ -224,14 +385,15 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 5103935544759496322} + serializedVersion: 2 m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 2.079, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: - {fileID: 5103935544653627402} - m_Father: {fileID: 8324879816836607384} - m_RootOrder: 3 + - {fileID: 6894291031605712785} + m_Father: {fileID: 914060668543750284} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &5103935545559248080 GameObject: @@ -256,6 +418,7 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 5103935545559248080} + serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} @@ -263,7 +426,6 @@ Transform: m_Children: - {fileID: 2391693866166879097} m_Father: {fileID: 5103935544653627402} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &5357542139584026431 GameObject: @@ -290,13 +452,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 5357542139584026431} + serializedVersion: 2 m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: -1.079, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 5103935544653627402} - m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!33 &775574265991703308 MeshFilter: @@ -373,13 +535,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 5596001871688408902} + serializedVersion: 2 m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: -1.079, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 5103935545559248087} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!33 &723672318811111496 MeshFilter: @@ -456,13 +618,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 5789912094253160437} + serializedVersion: 2 m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 1, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] - m_Father: {fileID: 8324879816836607384} - m_RootOrder: 0 + m_Father: {fileID: 914060668543750284} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!33 &5270923650227924917 MeshFilter: @@ -514,6 +676,37 @@ MeshRenderer: m_SortingLayer: 0 m_SortingOrder: 0 m_AdditionalVertexStreams: {fileID: 0} +--- !u!1 &6108461410568607280 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 6894291031605712785} + m_Layer: 0 + m_Name: Ref:CenterPosition + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &6894291031605712785 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6108461410568607280} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 5103935544759496321} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &6567584540310777777 GameObject: m_ObjectHideFlags: 0 @@ -539,13 +732,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 6567584540310777777} + serializedVersion: 2 m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: -1.079, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 5103935544653627402} - m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!33 &5589015655606442813 MeshFilter: @@ -597,6 +790,56 @@ MeshRenderer: m_SortingLayer: 0 m_SortingOrder: 0 m_AdditionalVertexStreams: {fileID: 0} +--- !u!1 &7318577146850956278 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 989884077484375908} + - component: {fileID: 310569669314672228} + m_Layer: 0 + m_Name: Targeter + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &989884077484375908 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7318577146850956278} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 5898541643653152293} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &310569669314672228 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7318577146850956278} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 28bcd65de1e3cf744a3ac9b53c030319, type: 3} + m_Name: + m_EditorClassIdentifier: + _targeterConfig: {fileID: 11400000, guid: 9df40bc219ab8f04cb4e86558bc0df86, type: 2} + _range: 0 + _targetStrategy: 0 + _activeTargetable: {fileID: 0} + _targeterParent: {fileID: 0} + k__BackingField: {fileID: 0} --- !u!1 &8385032484663529878 GameObject: m_ObjectHideFlags: 0 @@ -623,13 +866,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8385032484663529878} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 1.55, z: 0} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 1.5500001, z: 0} m_LocalScale: {x: 4.75, y: 3, z: 4.75} m_ConstrainProportionsScale: 0 m_Children: [] - m_Father: {fileID: 8324879816836607384} - m_RootOrder: 2 + m_Father: {fileID: 914060668543750284} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!33 &3888725377378342825 MeshFilter: @@ -689,11 +932,55 @@ BoxCollider: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8385032484663529878} m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 m_IsTrigger: 1 + m_ProvidesContacts: 0 m_Enabled: 1 - serializedVersion: 2 + serializedVersion: 3 m_Size: {x: 1, y: 1.0236204, z: 1} m_Center: {x: 0, y: 0, z: 0} +--- !u!1 &8401904230309918259 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 914060668543750284} + m_Layer: 0 + m_Name: Rig + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &914060668543750284 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8401904230309918259} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 3853332211859768904} + - {fileID: 8338452631907263897} + - {fileID: 2545305406868440440} + - {fileID: 5103935544759496321} + - {fileID: 9116849480152445015} + m_Father: {fileID: 8324879816836607384} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &8704396752535238434 GameObject: m_ObjectHideFlags: 0 @@ -718,17 +1005,15 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8704396752535238434} + serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 0.3, y: 0.3, z: 0.3} m_ConstrainProportionsScale: 1 m_Children: - - {fileID: 3853332211859768904} - - {fileID: 8338452631907263897} - - {fileID: 2545305406868440440} - - {fileID: 5103935544759496321} + - {fileID: 5898541643653152293} + - {fileID: 914060668543750284} m_Father: {fileID: 0} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &8787361557661825162 MonoBehaviour: @@ -742,22 +1027,17 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d3a16cf44e28f02409c23498ed14acf5, type: 3} m_Name: m_EditorClassIdentifier: - _health: 10 - _maxHealth: 0 - _isInvulnerable: 0 - _centerPosition: {fileID: 5103935544759496321} - _basePosition: {fileID: 8324879816836607384} + k__BackingField: {fileID: 3620345197547817675} + k__BackingField: {fileID: 3738931345656042189} _uiFriendlyName: Turret _entityBaseSet: {fileID: 11400000, guid: c5542e77624472441a67b1f34e19a116, type: 2} _cost: 10 _buildPlacementBlocked: 0 _buildTimer: 0 - _isGenerator: 0 - _isConsumer: 1 - _maxPower: 10 - _currentPower: 0 _structureBaseSet: {fileID: 11400000, guid: 1925957d2bc2f0c4a9210131f2d2c4e5, type: 2} - _weaponRange: 10 + _powerBaseSet: {fileID: 11400000, guid: 127d26f1f3536e94da36af662f63fa0b, type: 2} + _powerConfig: {fileID: 11400000, guid: 9dc2a0f5f29a11a4d9cabe19e18bdd42, type: 2} + _power: {fileID: 0} _damage: 1 _fireRate: 1 _projectileSpeed: 5 @@ -765,6 +1045,4 @@ MonoBehaviour: _damageDealt: 0 _turretHead: {fileID: 5103935544653627402} _barrel: {fileID: 5103935545559248087} - _targeterConfig: {fileID: 11400000, guid: 9df40bc219ab8f04cb4e86558bc0df86, type: 2} - _targeter: {fileID: 0} - _targetEnemy: {fileID: 0} + k__BackingField: {fileID: 310569669314672228} diff --git a/Assets/Entities/Structures/Turret/TurretPowerConfiguration.asset b/Assets/Entities/Structures/Turret/TurretPowerConfiguration.asset new file mode 100644 index 0000000..25e6019 --- /dev/null +++ b/Assets/Entities/Structures/Turret/TurretPowerConfiguration.asset @@ -0,0 +1,18 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !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: 87159085b5778b14482ec38673729d95, type: 3} + m_Name: TurretPowerConfiguration + m_EditorClassIdentifier: + _activePowerStructures: {fileID: 11400000, guid: 127d26f1f3536e94da36af662f63fa0b, type: 2} + isGenerator: 0 + isConsumer: 1 + maxPower: 10 diff --git a/Assets/Entities/Structures/Turret/TurretPowerConfiguration.asset.meta b/Assets/Entities/Structures/Turret/TurretPowerConfiguration.asset.meta new file mode 100644 index 0000000..710fddb --- /dev/null +++ b/Assets/Entities/Structures/Turret/TurretPowerConfiguration.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 9dc2a0f5f29a11a4d9cabe19e18bdd42 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Entities/Structures/Turret/TurretStandardTargeterConfiguration.asset b/Assets/Entities/Structures/Turret/TurretStandardTargeterConfiguration.asset index e30cd39..1148d54 100644 --- a/Assets/Entities/Structures/Turret/TurretStandardTargeterConfiguration.asset +++ b/Assets/Entities/Structures/Turret/TurretStandardTargeterConfiguration.asset @@ -12,6 +12,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 02781660543c12d4ebddaf334eb0d730, type: 3} m_Name: TurretStandardTargeterConfiguration m_EditorClassIdentifier: - _range: 15 + _maxRange: 15 + _minRange: 0.5 _selectedTargetStrategy: 0 - _activeEntities: {fileID: 11400000, guid: e5f25127d92be074aac6e7b745fae107, type: 2} + _activeEntities: {fileID: 11400000, guid: 85e03587d1a940f438ceac70a3d544d5, type: 2} diff --git a/Assets/Entities/Targeter.cs b/Assets/Entities/Targeter.cs deleted file mode 100644 index 2885c8d..0000000 --- a/Assets/Entities/Targeter.cs +++ /dev/null @@ -1,75 +0,0 @@ -using UnityEngine; - -namespace AsteroidGame.Entities -{ - public class Targeter : MonoBehaviour - { - [SerializeField] private float _range; - [SerializeField] private STargeterConfig.TargetStrategy _targetStrategy; - [SerializeField] private SEntityBaseRuntimeSet _activeEntities; - [SerializeField] private EntityBase _targeterParent; - [SerializeField] private EntityBase _targetEntity; - - public void SetParent(EntityBase newParent) => _targeterParent = newParent; - - public void SetConfig(STargeterConfig config) - { - _range = config._range; - _targetStrategy = config._selectedTargetStrategy; - _activeEntities = config._activeEntities; - } - - public EntityBase GetTarget() - { - return _targetEntity; - } - - public bool FoundTarget() - { - float currentBestValue = Mathf.Infinity; - var targetFound = false; - - foreach (EntityBase targetEntity in _activeEntities._list) - { - float distanceToTarget = - Vector3.Magnitude(targetEntity.GetCenterPosition() - _targeterParent.GetCenterPosition()); - - bool withinRange = distanceToTarget < _range; - if (withinRange) - { - switch (_targetStrategy) - { - case STargeterConfig.TargetStrategy.LowestRange: - { - bool isClosest = distanceToTarget < currentBestValue; - if (isClosest) - { - targetFound = true; - currentBestValue = distanceToTarget; - _targetEntity = targetEntity; - } - - break; - } - case STargeterConfig.TargetStrategy.LowestHealth: - { - float enemyHealth = targetEntity.GetHealth(); - - bool isLowestHealth = enemyHealth < currentBestValue; - if (isLowestHealth) - { - targetFound = true; - currentBestValue = enemyHealth; - _targetEntity = targetEntity; - } - - break; - } - } - } - } - - return targetFound; - } - } -} \ No newline at end of file diff --git a/Assets/Handlers/BuildingHandler.cs b/Assets/Handlers/BuildingHandler.cs index df96d9c..bef7e1b 100644 --- a/Assets/Handlers/BuildingHandler.cs +++ b/Assets/Handlers/BuildingHandler.cs @@ -1,4 +1,5 @@ using AsteroidGame.Entities; +using AsteroidGame.ScriptableObjects; using UnityEngine; using UnityEngine.InputSystem; using UnityEngine.Serialization; @@ -16,11 +17,13 @@ namespace AsteroidGame.Handlers [SerializeField] private bool _isBuilding; [SerializeField] private int _buildingSelector; + [FormerlySerializedAs("_availableSStructures")] [FormerlySerializedAs("_availableStructures")] [Header("Structures")] - [SerializeField] private SStructureBaseList _availableSStructures; + [SerializeField] private SoStructureBaseList _availableSoStructures; #region Private + private Color _colorCurrent; private Camera _camera; private Vector3 _tempVec; @@ -34,14 +37,9 @@ namespace AsteroidGame.Handlers protected override void OnEnable() { base.OnEnable(); - // for (int i = 0; i < _availableStructuresObject._structureList.Count; i++) - // { - // _availableStructures.Add(i, _availableStructuresObject._structureList[i]); - // } _camera = Camera.main; _buildPlane = new Plane(Vector3.up, Vector3.zero); - //_activeStructures.Clear(); } private void Update() @@ -107,7 +105,8 @@ namespace AsteroidGame.Handlers private void SpawnGhostStructure() { - _ghostStructure = Instantiate(_availableSStructures._structureList[_buildingSelector], GetPlanePoint(), Quaternion.identity, + _ghostStructure = Instantiate(_availableSoStructures._structureList[_buildingSelector], GetPlanePoint(), + Quaternion.identity, transform); _ghostStructure.name = "GhostStructure"; @@ -131,10 +130,9 @@ namespace AsteroidGame.Handlers private void SpawnStructure() { - _tempStructure = Instantiate(_availableSStructures._structureList[_buildingSelector], GetPlanePoint(), Quaternion.identity, + _tempStructure = Instantiate(_availableSoStructures._structureList[_buildingSelector], GetPlanePoint(), + Quaternion.identity, transform); - // _activeStructures.Add(_tempStructure); - // _buildingLists[0].Add(_tempStructure); } #region Getters @@ -151,16 +149,6 @@ namespace AsteroidGame.Handlers return Vector3.zero; } - // public List GetAvailableStructures() - // { - // return _availableStructures._structureList; - // } - - // public List GetActiveStructures() - // { - // return _activeStructures; - // } - #endregion #region Setters diff --git a/Assets/Handlers/EnemyHandler.cs b/Assets/Handlers/EnemyHandler.cs index ed2e6a7..2f77c78 100644 --- a/Assets/Handlers/EnemyHandler.cs +++ b/Assets/Handlers/EnemyHandler.cs @@ -1,4 +1,4 @@ -using AsteroidGame.Entities; +using AsteroidGame.ScriptableObjects; using UnityEngine; namespace AsteroidGame.Handlers @@ -10,9 +10,9 @@ namespace AsteroidGame.Handlers [SerializeField] private int _objectPoolSize = 15; [Header("Configuration")] - [SerializeField] private SEnemyBaseList _availableEnemies; + [SerializeField] private SoEnemyBaseList _availableEnemies; [Header("Lists")] - [SerializeField] private SEnemyBaseRuntimeSet _activeEnemies; + [SerializeField] private SoEntityBaseRuntimeSet _activeEnemies; } } \ No newline at end of file diff --git a/Assets/Handlers/EnemyHandler.prefab b/Assets/Handlers/EnemyHandler.prefab index 64e155d..81be6a2 100644 --- a/Assets/Handlers/EnemyHandler.prefab +++ b/Assets/Handlers/EnemyHandler.prefab @@ -47,4 +47,4 @@ MonoBehaviour: _spawnRate: 60 _objectPoolSize: 15 _availableEnemies: {fileID: 11400000, guid: 00c435d92e1df55499826c91b4f1e62f, type: 2} - _activeEnemies: {fileID: 11400000, guid: 5f6dc84d75dbd9a459e519de42279066, type: 2} + _activeEnemies: {fileID: 11400000, guid: e5f25127d92be074aac6e7b745fae107, type: 2} diff --git a/Assets/Handlers/PowerHandler.cs b/Assets/Handlers/PowerHandler.cs index dc3e9f4..5fcf96a 100644 --- a/Assets/Handlers/PowerHandler.cs +++ b/Assets/Handlers/PowerHandler.cs @@ -1,5 +1,5 @@ using System; -using AsteroidGame.Entities; +using AsteroidGame.ScriptableObjects; using UnityEngine; namespace AsteroidGame.Handlers @@ -13,14 +13,15 @@ namespace AsteroidGame.Handlers [SerializeField] private float _powerFactor; [Header("Connections")] - [SerializeField] private SStructureBaseRuntimeSet _activeStructures; + [SerializeField] private SoPowerBaseRuntimeSet _activePowerStructures; + private void Update() { _powerConsumption = 0; _powerConsumptionPeak = 0; _powerCapacity = 0; - foreach (var structure in _activeStructures._list) + foreach (var structure in _activePowerStructures._list) { if (structure.IsConsumer) { @@ -43,7 +44,7 @@ namespace AsteroidGame.Handlers _powerFactor = 0; } } - + public int GetMaxPower() { throw new NotImplementedException(); diff --git a/Assets/Handlers/PowerHandler.prefab b/Assets/Handlers/PowerHandler.prefab index 7ea268e..cb7a2c0 100644 --- a/Assets/Handlers/PowerHandler.prefab +++ b/Assets/Handlers/PowerHandler.prefab @@ -45,6 +45,7 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: _powerConsumption: 0 + _powerConsumptionPeak: 0 _powerCapacity: 0 _powerFactor: 0 - _activeStructures: {fileID: 11400000, guid: bccdf438a1004a444bc24492728d6fbd, type: 2} + _activePowerStructures: {fileID: 11400000, guid: 127d26f1f3536e94da36af662f63fa0b, type: 2} diff --git a/Assets/InputSystem/CameraControllActions.cs b/Assets/InputSystem/CameraControllActions.cs index f98e0e7..dfcb260 100644 --- a/Assets/InputSystem/CameraControllActions.cs +++ b/Assets/InputSystem/CameraControllActions.cs @@ -1,7 +1,7 @@ //------------------------------------------------------------------------------ // // This code was auto-generated by com.unity.inputsystem:InputActionCodeGenerator -// version 1.3.0 +// version 1.7.0 // from Assets/InputSystem/CameraControllActions.inputactions // // Changes to this file may cause incorrect behavior and will be lost if @@ -15,15 +15,12 @@ using System.Collections.Generic; using UnityEngine.InputSystem; using UnityEngine.InputSystem.Utilities; -namespace InputSystem +public partial class @CameraControllActions: IInputActionCollection2, IDisposable { - public partial class @CameraControllActions : IInputActionCollection2, IDisposable + public InputActionAsset asset { get; } + public @CameraControllActions() { - public InputActionAsset asset { get; } - - public @CameraControllActions() - { - asset = InputActionAsset.FromJson(@"{ + asset = InputActionAsset.FromJson(@"{ ""name"": ""CameraControllActions"", ""maps"": [ { @@ -141,149 +138,134 @@ namespace InputSystem ], ""controlSchemes"": [] }"); - // Camera - m_Camera = asset.FindActionMap("Camera", throwIfNotFound: true); - m_Camera_Movement = m_Camera.FindAction("Movement", throwIfNotFound: true); - m_Camera_RotateCamera = m_Camera.FindAction("RotateCamera", throwIfNotFound: true); - m_Camera_ZoomCamera = m_Camera.FindAction("ZoomCamera", throwIfNotFound: true); - } - - public void Dispose() - { - UnityEngine.Object.Destroy(asset); - } - - public InputBinding? bindingMask - { - get => asset.bindingMask; - set => asset.bindingMask = value; - } - - public ReadOnlyArray? devices - { - get => asset.devices; - set => asset.devices = value; - } - - public ReadOnlyArray controlSchemes => asset.controlSchemes; - - public bool Contains(InputAction action) - { - return asset.Contains(action); - } - - public IEnumerator GetEnumerator() - { - return asset.GetEnumerator(); - } - - IEnumerator IEnumerable.GetEnumerator() - { - return GetEnumerator(); - } - - public void Enable() - { - asset.Enable(); - } - - public void Disable() - { - asset.Disable(); - } - - public IEnumerable bindings => asset.bindings; - - public InputAction FindAction(string actionNameOrId, bool throwIfNotFound = false) - { - return asset.FindAction(actionNameOrId, throwIfNotFound); - } - - public int FindBinding(InputBinding bindingMask, out InputAction action) - { - return asset.FindBinding(bindingMask, out action); - } - // Camera - private readonly InputActionMap m_Camera; - private ICameraActions m_CameraActionsCallbackInterface; - private readonly InputAction m_Camera_Movement; - private readonly InputAction m_Camera_RotateCamera; - private readonly InputAction m_Camera_ZoomCamera; + m_Camera = asset.FindActionMap("Camera", throwIfNotFound: true); + m_Camera_Movement = m_Camera.FindAction("Movement", throwIfNotFound: true); + m_Camera_RotateCamera = m_Camera.FindAction("RotateCamera", throwIfNotFound: true); + m_Camera_ZoomCamera = m_Camera.FindAction("ZoomCamera", throwIfNotFound: true); + } - public struct CameraActions + public void Dispose() + { + UnityEngine.Object.Destroy(asset); + } + + public InputBinding? bindingMask + { + get => asset.bindingMask; + set => asset.bindingMask = value; + } + + public ReadOnlyArray? devices + { + get => asset.devices; + set => asset.devices = value; + } + + public ReadOnlyArray controlSchemes => asset.controlSchemes; + + public bool Contains(InputAction action) + { + return asset.Contains(action); + } + + public IEnumerator GetEnumerator() + { + return asset.GetEnumerator(); + } + + IEnumerator IEnumerable.GetEnumerator() + { + return GetEnumerator(); + } + + public void Enable() + { + asset.Enable(); + } + + public void Disable() + { + asset.Disable(); + } + + public IEnumerable bindings => asset.bindings; + + public InputAction FindAction(string actionNameOrId, bool throwIfNotFound = false) + { + return asset.FindAction(actionNameOrId, throwIfNotFound); + } + + public int FindBinding(InputBinding bindingMask, out InputAction action) + { + return asset.FindBinding(bindingMask, out action); + } + + // Camera + private readonly InputActionMap m_Camera; + private List m_CameraActionsCallbackInterfaces = new List(); + private readonly InputAction m_Camera_Movement; + private readonly InputAction m_Camera_RotateCamera; + private readonly InputAction m_Camera_ZoomCamera; + public struct CameraActions + { + private @CameraControllActions m_Wrapper; + public CameraActions(@CameraControllActions wrapper) { m_Wrapper = wrapper; } + public InputAction @Movement => m_Wrapper.m_Camera_Movement; + public InputAction @RotateCamera => m_Wrapper.m_Camera_RotateCamera; + public InputAction @ZoomCamera => m_Wrapper.m_Camera_ZoomCamera; + public InputActionMap Get() { return m_Wrapper.m_Camera; } + public void Enable() { Get().Enable(); } + public void Disable() { Get().Disable(); } + public bool enabled => Get().enabled; + public static implicit operator InputActionMap(CameraActions set) { return set.Get(); } + public void AddCallbacks(ICameraActions instance) { - private @CameraControllActions m_Wrapper; - - public CameraActions(@CameraControllActions wrapper) - { - m_Wrapper = wrapper; - } - - public InputAction @Movement => m_Wrapper.m_Camera_Movement; - public InputAction @RotateCamera => m_Wrapper.m_Camera_RotateCamera; - public InputAction @ZoomCamera => m_Wrapper.m_Camera_ZoomCamera; - - public InputActionMap Get() - { - return m_Wrapper.m_Camera; - } - - public void Enable() - { - Get().Enable(); - } - - public void Disable() - { - Get().Disable(); - } - - public bool enabled => Get().enabled; - - public static implicit operator InputActionMap(CameraActions set) - { - return set.Get(); - } - - public void SetCallbacks(ICameraActions instance) - { - if (m_Wrapper.m_CameraActionsCallbackInterface != null) - { - @Movement.started -= m_Wrapper.m_CameraActionsCallbackInterface.OnMovement; - @Movement.performed -= m_Wrapper.m_CameraActionsCallbackInterface.OnMovement; - @Movement.canceled -= m_Wrapper.m_CameraActionsCallbackInterface.OnMovement; - @RotateCamera.started -= m_Wrapper.m_CameraActionsCallbackInterface.OnRotateCamera; - @RotateCamera.performed -= m_Wrapper.m_CameraActionsCallbackInterface.OnRotateCamera; - @RotateCamera.canceled -= m_Wrapper.m_CameraActionsCallbackInterface.OnRotateCamera; - @ZoomCamera.started -= m_Wrapper.m_CameraActionsCallbackInterface.OnZoomCamera; - @ZoomCamera.performed -= m_Wrapper.m_CameraActionsCallbackInterface.OnZoomCamera; - @ZoomCamera.canceled -= m_Wrapper.m_CameraActionsCallbackInterface.OnZoomCamera; - } - - m_Wrapper.m_CameraActionsCallbackInterface = instance; - if (instance != null) - { - @Movement.started += instance.OnMovement; - @Movement.performed += instance.OnMovement; - @Movement.canceled += instance.OnMovement; - @RotateCamera.started += instance.OnRotateCamera; - @RotateCamera.performed += instance.OnRotateCamera; - @RotateCamera.canceled += instance.OnRotateCamera; - @ZoomCamera.started += instance.OnZoomCamera; - @ZoomCamera.performed += instance.OnZoomCamera; - @ZoomCamera.canceled += instance.OnZoomCamera; - } - } + if (instance == null || m_Wrapper.m_CameraActionsCallbackInterfaces.Contains(instance)) return; + m_Wrapper.m_CameraActionsCallbackInterfaces.Add(instance); + @Movement.started += instance.OnMovement; + @Movement.performed += instance.OnMovement; + @Movement.canceled += instance.OnMovement; + @RotateCamera.started += instance.OnRotateCamera; + @RotateCamera.performed += instance.OnRotateCamera; + @RotateCamera.canceled += instance.OnRotateCamera; + @ZoomCamera.started += instance.OnZoomCamera; + @ZoomCamera.performed += instance.OnZoomCamera; + @ZoomCamera.canceled += instance.OnZoomCamera; } - public CameraActions @Camera => new CameraActions(this); - - public interface ICameraActions + private void UnregisterCallbacks(ICameraActions instance) { - void OnMovement(InputAction.CallbackContext context); - void OnRotateCamera(InputAction.CallbackContext context); - void OnZoomCamera(InputAction.CallbackContext context); + @Movement.started -= instance.OnMovement; + @Movement.performed -= instance.OnMovement; + @Movement.canceled -= instance.OnMovement; + @RotateCamera.started -= instance.OnRotateCamera; + @RotateCamera.performed -= instance.OnRotateCamera; + @RotateCamera.canceled -= instance.OnRotateCamera; + @ZoomCamera.started -= instance.OnZoomCamera; + @ZoomCamera.performed -= instance.OnZoomCamera; + @ZoomCamera.canceled -= instance.OnZoomCamera; + } + + public void RemoveCallbacks(ICameraActions instance) + { + if (m_Wrapper.m_CameraActionsCallbackInterfaces.Remove(instance)) + UnregisterCallbacks(instance); + } + + public void SetCallbacks(ICameraActions instance) + { + foreach (var item in m_Wrapper.m_CameraActionsCallbackInterfaces) + UnregisterCallbacks(item); + m_Wrapper.m_CameraActionsCallbackInterfaces.Clear(); + AddCallbacks(instance); } } -} \ No newline at end of file + public CameraActions @Camera => new CameraActions(this); + public interface ICameraActions + { + void OnMovement(InputAction.CallbackContext context); + void OnRotateCamera(InputAction.CallbackContext context); + void OnZoomCamera(InputAction.CallbackContext context); + } +} diff --git a/Assets/InputSystem/HandlerControls.cs b/Assets/InputSystem/HandlerControls.cs index 13b18d2..12a6697 100644 --- a/Assets/InputSystem/HandlerControls.cs +++ b/Assets/InputSystem/HandlerControls.cs @@ -1,7 +1,7 @@ //------------------------------------------------------------------------------ // // This code was auto-generated by com.unity.inputsystem:InputActionCodeGenerator -// version 1.3.0 +// version 1.7.0 // from Assets/InputSystem/HandlerControls.inputactions // // Changes to this file may cause incorrect behavior and will be lost if @@ -17,7 +17,7 @@ using UnityEngine.InputSystem.Utilities; namespace AsteroidGame { - public partial class @HandlerControls : IInputActionCollection2, IDisposable + public partial class @HandlerControls: IInputActionCollection2, IDisposable { public InputActionAsset asset { get; } public @HandlerControls() @@ -964,12 +964,14 @@ namespace AsteroidGame { asset.Disable(); } + public IEnumerable bindings => asset.bindings; public InputAction FindAction(string actionNameOrId, bool throwIfNotFound = false) { return asset.FindAction(actionNameOrId, throwIfNotFound); } + public int FindBinding(InputBinding bindingMask, out InputAction action) { return asset.FindBinding(bindingMask, out action); @@ -977,7 +979,7 @@ namespace AsteroidGame // Player private readonly InputActionMap m_Player; - private IPlayerActions m_PlayerActionsCallbackInterface; + private List m_PlayerActionsCallbackInterfaces = new List(); private readonly InputAction m_Player_Move; private readonly InputAction m_Player_Look; private readonly InputAction m_Player_LeftClick; @@ -997,52 +999,65 @@ namespace AsteroidGame public void Disable() { Get().Disable(); } public bool enabled => Get().enabled; public static implicit operator InputActionMap(PlayerActions set) { return set.Get(); } + public void AddCallbacks(IPlayerActions instance) + { + if (instance == null || m_Wrapper.m_PlayerActionsCallbackInterfaces.Contains(instance)) return; + m_Wrapper.m_PlayerActionsCallbackInterfaces.Add(instance); + @Move.started += instance.OnMove; + @Move.performed += instance.OnMove; + @Move.canceled += instance.OnMove; + @Look.started += instance.OnLook; + @Look.performed += instance.OnLook; + @Look.canceled += instance.OnLook; + @LeftClick.started += instance.OnLeftClick; + @LeftClick.performed += instance.OnLeftClick; + @LeftClick.canceled += instance.OnLeftClick; + @Build.started += instance.OnBuild; + @Build.performed += instance.OnBuild; + @Build.canceled += instance.OnBuild; + @RightClick.started += instance.OnRightClick; + @RightClick.performed += instance.OnRightClick; + @RightClick.canceled += instance.OnRightClick; + } + + private void UnregisterCallbacks(IPlayerActions instance) + { + @Move.started -= instance.OnMove; + @Move.performed -= instance.OnMove; + @Move.canceled -= instance.OnMove; + @Look.started -= instance.OnLook; + @Look.performed -= instance.OnLook; + @Look.canceled -= instance.OnLook; + @LeftClick.started -= instance.OnLeftClick; + @LeftClick.performed -= instance.OnLeftClick; + @LeftClick.canceled -= instance.OnLeftClick; + @Build.started -= instance.OnBuild; + @Build.performed -= instance.OnBuild; + @Build.canceled -= instance.OnBuild; + @RightClick.started -= instance.OnRightClick; + @RightClick.performed -= instance.OnRightClick; + @RightClick.canceled -= instance.OnRightClick; + } + + public void RemoveCallbacks(IPlayerActions instance) + { + if (m_Wrapper.m_PlayerActionsCallbackInterfaces.Remove(instance)) + UnregisterCallbacks(instance); + } + public void SetCallbacks(IPlayerActions instance) { - if (m_Wrapper.m_PlayerActionsCallbackInterface != null) - { - @Move.started -= m_Wrapper.m_PlayerActionsCallbackInterface.OnMove; - @Move.performed -= m_Wrapper.m_PlayerActionsCallbackInterface.OnMove; - @Move.canceled -= m_Wrapper.m_PlayerActionsCallbackInterface.OnMove; - @Look.started -= m_Wrapper.m_PlayerActionsCallbackInterface.OnLook; - @Look.performed -= m_Wrapper.m_PlayerActionsCallbackInterface.OnLook; - @Look.canceled -= m_Wrapper.m_PlayerActionsCallbackInterface.OnLook; - @LeftClick.started -= m_Wrapper.m_PlayerActionsCallbackInterface.OnLeftClick; - @LeftClick.performed -= m_Wrapper.m_PlayerActionsCallbackInterface.OnLeftClick; - @LeftClick.canceled -= m_Wrapper.m_PlayerActionsCallbackInterface.OnLeftClick; - @Build.started -= m_Wrapper.m_PlayerActionsCallbackInterface.OnBuild; - @Build.performed -= m_Wrapper.m_PlayerActionsCallbackInterface.OnBuild; - @Build.canceled -= m_Wrapper.m_PlayerActionsCallbackInterface.OnBuild; - @RightClick.started -= m_Wrapper.m_PlayerActionsCallbackInterface.OnRightClick; - @RightClick.performed -= m_Wrapper.m_PlayerActionsCallbackInterface.OnRightClick; - @RightClick.canceled -= m_Wrapper.m_PlayerActionsCallbackInterface.OnRightClick; - } - m_Wrapper.m_PlayerActionsCallbackInterface = instance; - if (instance != null) - { - @Move.started += instance.OnMove; - @Move.performed += instance.OnMove; - @Move.canceled += instance.OnMove; - @Look.started += instance.OnLook; - @Look.performed += instance.OnLook; - @Look.canceled += instance.OnLook; - @LeftClick.started += instance.OnLeftClick; - @LeftClick.performed += instance.OnLeftClick; - @LeftClick.canceled += instance.OnLeftClick; - @Build.started += instance.OnBuild; - @Build.performed += instance.OnBuild; - @Build.canceled += instance.OnBuild; - @RightClick.started += instance.OnRightClick; - @RightClick.performed += instance.OnRightClick; - @RightClick.canceled += instance.OnRightClick; - } + foreach (var item in m_Wrapper.m_PlayerActionsCallbackInterfaces) + UnregisterCallbacks(item); + m_Wrapper.m_PlayerActionsCallbackInterfaces.Clear(); + AddCallbacks(instance); } } public PlayerActions @Player => new PlayerActions(this); // UI private readonly InputActionMap m_UI; - private IUIActions m_UIActionsCallbackInterface; + private List m_UIActionsCallbackInterfaces = new List(); private readonly InputAction m_UI_Navigate; private readonly InputAction m_UI_Submit; private readonly InputAction m_UI_Cancel; @@ -1072,75 +1087,88 @@ namespace AsteroidGame public void Disable() { Get().Disable(); } public bool enabled => Get().enabled; public static implicit operator InputActionMap(UIActions set) { return set.Get(); } + public void AddCallbacks(IUIActions instance) + { + if (instance == null || m_Wrapper.m_UIActionsCallbackInterfaces.Contains(instance)) return; + m_Wrapper.m_UIActionsCallbackInterfaces.Add(instance); + @Navigate.started += instance.OnNavigate; + @Navigate.performed += instance.OnNavigate; + @Navigate.canceled += instance.OnNavigate; + @Submit.started += instance.OnSubmit; + @Submit.performed += instance.OnSubmit; + @Submit.canceled += instance.OnSubmit; + @Cancel.started += instance.OnCancel; + @Cancel.performed += instance.OnCancel; + @Cancel.canceled += instance.OnCancel; + @Point.started += instance.OnPoint; + @Point.performed += instance.OnPoint; + @Point.canceled += instance.OnPoint; + @Click.started += instance.OnClick; + @Click.performed += instance.OnClick; + @Click.canceled += instance.OnClick; + @ScrollWheel.started += instance.OnScrollWheel; + @ScrollWheel.performed += instance.OnScrollWheel; + @ScrollWheel.canceled += instance.OnScrollWheel; + @MiddleClick.started += instance.OnMiddleClick; + @MiddleClick.performed += instance.OnMiddleClick; + @MiddleClick.canceled += instance.OnMiddleClick; + @RightClick.started += instance.OnRightClick; + @RightClick.performed += instance.OnRightClick; + @RightClick.canceled += instance.OnRightClick; + @TrackedDevicePosition.started += instance.OnTrackedDevicePosition; + @TrackedDevicePosition.performed += instance.OnTrackedDevicePosition; + @TrackedDevicePosition.canceled += instance.OnTrackedDevicePosition; + @TrackedDeviceOrientation.started += instance.OnTrackedDeviceOrientation; + @TrackedDeviceOrientation.performed += instance.OnTrackedDeviceOrientation; + @TrackedDeviceOrientation.canceled += instance.OnTrackedDeviceOrientation; + } + + private void UnregisterCallbacks(IUIActions instance) + { + @Navigate.started -= instance.OnNavigate; + @Navigate.performed -= instance.OnNavigate; + @Navigate.canceled -= instance.OnNavigate; + @Submit.started -= instance.OnSubmit; + @Submit.performed -= instance.OnSubmit; + @Submit.canceled -= instance.OnSubmit; + @Cancel.started -= instance.OnCancel; + @Cancel.performed -= instance.OnCancel; + @Cancel.canceled -= instance.OnCancel; + @Point.started -= instance.OnPoint; + @Point.performed -= instance.OnPoint; + @Point.canceled -= instance.OnPoint; + @Click.started -= instance.OnClick; + @Click.performed -= instance.OnClick; + @Click.canceled -= instance.OnClick; + @ScrollWheel.started -= instance.OnScrollWheel; + @ScrollWheel.performed -= instance.OnScrollWheel; + @ScrollWheel.canceled -= instance.OnScrollWheel; + @MiddleClick.started -= instance.OnMiddleClick; + @MiddleClick.performed -= instance.OnMiddleClick; + @MiddleClick.canceled -= instance.OnMiddleClick; + @RightClick.started -= instance.OnRightClick; + @RightClick.performed -= instance.OnRightClick; + @RightClick.canceled -= instance.OnRightClick; + @TrackedDevicePosition.started -= instance.OnTrackedDevicePosition; + @TrackedDevicePosition.performed -= instance.OnTrackedDevicePosition; + @TrackedDevicePosition.canceled -= instance.OnTrackedDevicePosition; + @TrackedDeviceOrientation.started -= instance.OnTrackedDeviceOrientation; + @TrackedDeviceOrientation.performed -= instance.OnTrackedDeviceOrientation; + @TrackedDeviceOrientation.canceled -= instance.OnTrackedDeviceOrientation; + } + + public void RemoveCallbacks(IUIActions instance) + { + if (m_Wrapper.m_UIActionsCallbackInterfaces.Remove(instance)) + UnregisterCallbacks(instance); + } + public void SetCallbacks(IUIActions instance) { - if (m_Wrapper.m_UIActionsCallbackInterface != null) - { - @Navigate.started -= m_Wrapper.m_UIActionsCallbackInterface.OnNavigate; - @Navigate.performed -= m_Wrapper.m_UIActionsCallbackInterface.OnNavigate; - @Navigate.canceled -= m_Wrapper.m_UIActionsCallbackInterface.OnNavigate; - @Submit.started -= m_Wrapper.m_UIActionsCallbackInterface.OnSubmit; - @Submit.performed -= m_Wrapper.m_UIActionsCallbackInterface.OnSubmit; - @Submit.canceled -= m_Wrapper.m_UIActionsCallbackInterface.OnSubmit; - @Cancel.started -= m_Wrapper.m_UIActionsCallbackInterface.OnCancel; - @Cancel.performed -= m_Wrapper.m_UIActionsCallbackInterface.OnCancel; - @Cancel.canceled -= m_Wrapper.m_UIActionsCallbackInterface.OnCancel; - @Point.started -= m_Wrapper.m_UIActionsCallbackInterface.OnPoint; - @Point.performed -= m_Wrapper.m_UIActionsCallbackInterface.OnPoint; - @Point.canceled -= m_Wrapper.m_UIActionsCallbackInterface.OnPoint; - @Click.started -= m_Wrapper.m_UIActionsCallbackInterface.OnClick; - @Click.performed -= m_Wrapper.m_UIActionsCallbackInterface.OnClick; - @Click.canceled -= m_Wrapper.m_UIActionsCallbackInterface.OnClick; - @ScrollWheel.started -= m_Wrapper.m_UIActionsCallbackInterface.OnScrollWheel; - @ScrollWheel.performed -= m_Wrapper.m_UIActionsCallbackInterface.OnScrollWheel; - @ScrollWheel.canceled -= m_Wrapper.m_UIActionsCallbackInterface.OnScrollWheel; - @MiddleClick.started -= m_Wrapper.m_UIActionsCallbackInterface.OnMiddleClick; - @MiddleClick.performed -= m_Wrapper.m_UIActionsCallbackInterface.OnMiddleClick; - @MiddleClick.canceled -= m_Wrapper.m_UIActionsCallbackInterface.OnMiddleClick; - @RightClick.started -= m_Wrapper.m_UIActionsCallbackInterface.OnRightClick; - @RightClick.performed -= m_Wrapper.m_UIActionsCallbackInterface.OnRightClick; - @RightClick.canceled -= m_Wrapper.m_UIActionsCallbackInterface.OnRightClick; - @TrackedDevicePosition.started -= m_Wrapper.m_UIActionsCallbackInterface.OnTrackedDevicePosition; - @TrackedDevicePosition.performed -= m_Wrapper.m_UIActionsCallbackInterface.OnTrackedDevicePosition; - @TrackedDevicePosition.canceled -= m_Wrapper.m_UIActionsCallbackInterface.OnTrackedDevicePosition; - @TrackedDeviceOrientation.started -= m_Wrapper.m_UIActionsCallbackInterface.OnTrackedDeviceOrientation; - @TrackedDeviceOrientation.performed -= m_Wrapper.m_UIActionsCallbackInterface.OnTrackedDeviceOrientation; - @TrackedDeviceOrientation.canceled -= m_Wrapper.m_UIActionsCallbackInterface.OnTrackedDeviceOrientation; - } - m_Wrapper.m_UIActionsCallbackInterface = instance; - if (instance != null) - { - @Navigate.started += instance.OnNavigate; - @Navigate.performed += instance.OnNavigate; - @Navigate.canceled += instance.OnNavigate; - @Submit.started += instance.OnSubmit; - @Submit.performed += instance.OnSubmit; - @Submit.canceled += instance.OnSubmit; - @Cancel.started += instance.OnCancel; - @Cancel.performed += instance.OnCancel; - @Cancel.canceled += instance.OnCancel; - @Point.started += instance.OnPoint; - @Point.performed += instance.OnPoint; - @Point.canceled += instance.OnPoint; - @Click.started += instance.OnClick; - @Click.performed += instance.OnClick; - @Click.canceled += instance.OnClick; - @ScrollWheel.started += instance.OnScrollWheel; - @ScrollWheel.performed += instance.OnScrollWheel; - @ScrollWheel.canceled += instance.OnScrollWheel; - @MiddleClick.started += instance.OnMiddleClick; - @MiddleClick.performed += instance.OnMiddleClick; - @MiddleClick.canceled += instance.OnMiddleClick; - @RightClick.started += instance.OnRightClick; - @RightClick.performed += instance.OnRightClick; - @RightClick.canceled += instance.OnRightClick; - @TrackedDevicePosition.started += instance.OnTrackedDevicePosition; - @TrackedDevicePosition.performed += instance.OnTrackedDevicePosition; - @TrackedDevicePosition.canceled += instance.OnTrackedDevicePosition; - @TrackedDeviceOrientation.started += instance.OnTrackedDeviceOrientation; - @TrackedDeviceOrientation.performed += instance.OnTrackedDeviceOrientation; - @TrackedDeviceOrientation.canceled += instance.OnTrackedDeviceOrientation; - } + foreach (var item in m_Wrapper.m_UIActionsCallbackInterfaces) + UnregisterCallbacks(item); + m_Wrapper.m_UIActionsCallbackInterfaces.Clear(); + AddCallbacks(instance); } } public UIActions @UI => new UIActions(this); diff --git a/Assets/Interfaces/IBuildable.cs b/Assets/Interfaces/IBuildable.cs deleted file mode 100644 index 64d55fb..0000000 --- a/Assets/Interfaces/IBuildable.cs +++ /dev/null @@ -1,8 +0,0 @@ -namespace AsteroidGame.Interfaces -{ - public interface IBuildable - { - public int GetCost(); - public int SetCost(int newCost); - } -} \ No newline at end of file diff --git a/Assets/Interfaces/IDamageable.cs b/Assets/Interfaces/IDamageable.cs deleted file mode 100644 index 28e12f5..0000000 --- a/Assets/Interfaces/IDamageable.cs +++ /dev/null @@ -1,31 +0,0 @@ -namespace AsteroidGame.Interfaces -{ - public interface IDamageable - { - public void ModifyHealth(int healthChange); - - #region PublicProperties - - public bool IsInvulnerable { get; } - - #endregion - - #region Setters - public void SetHealth(int newHealth); - - public void SetMaxHealth(int newHealth); - - public void SetInvulnerable (bool newState); - - #endregion - - #region Getters - public int GetHealth(); - - public int GetMaxHealth(); - - public float GetHealthFactor(); - - #endregion - } -} diff --git a/Assets/Interfaces/IDamageable.cs.meta b/Assets/Interfaces/IDamageable.cs.meta deleted file mode 100644 index c2af229..0000000 --- a/Assets/Interfaces/IDamageable.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: d0290b6d2e8462547a0d40b67a1076e3 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Interfaces/IPowerSystem.cs b/Assets/Interfaces/IPowerSystem.cs deleted file mode 100644 index 7eb0331..0000000 --- a/Assets/Interfaces/IPowerSystem.cs +++ /dev/null @@ -1,17 +0,0 @@ -namespace AsteroidGame.Interfaces -{ - public interface IPowerSystem - { - public bool IsGenerator { get; } - - public bool IsConsumer { get; } - - public void SetMaxPower(int newValue); - - public int GetMaxPower(); - - public int GetCurrentPower(); - - public float GetPowerFactor(); - } -} diff --git a/Assets/Interfaces/IPowerSystem.cs.meta b/Assets/Interfaces/IPowerSystem.cs.meta deleted file mode 100644 index 16813a0..0000000 --- a/Assets/Interfaces/IPowerSystem.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: c3e9b410a74a04f4ab85e908d2a684a8 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Interfaces/ITargetable.cs b/Assets/Interfaces/ITargetable.cs deleted file mode 100644 index 397d4db..0000000 --- a/Assets/Interfaces/ITargetable.cs +++ /dev/null @@ -1,11 +0,0 @@ -using UnityEngine; - -namespace AsteroidGame.Interfaces -{ - public interface ITargetable - { - public Vector3 GetCenterPosition(); - - public Vector3 GetBasePosition(); - } -} diff --git a/Assets/Interfaces/ITargetable.cs.meta b/Assets/Interfaces/ITargetable.cs.meta deleted file mode 100644 index 6d6d937..0000000 --- a/Assets/Interfaces/ITargetable.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 3d338501124dcf349b3852a83d20dbe4 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Interfaces/IWeapon.cs b/Assets/Interfaces/IWeapon.cs deleted file mode 100644 index 9aee191..0000000 --- a/Assets/Interfaces/IWeapon.cs +++ /dev/null @@ -1,8 +0,0 @@ -namespace AsteroidGame.Interfaces -{ - public interface IWeapon - { - public float FireRate { get; set; } - public float Damage { get; set; } - } -} \ No newline at end of file diff --git a/Assets/Interfaces/IWeapon.cs.meta b/Assets/Interfaces/IWeapon.cs.meta deleted file mode 100644 index 3c7920f..0000000 --- a/Assets/Interfaces/IWeapon.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: a4d06a75a5a64c83aa191a8610f5080f -timeCreated: 1664621279 \ No newline at end of file diff --git a/Assets/Interfaces/Interfaces.asmdef b/Assets/Interfaces/Interfaces.asmdef deleted file mode 100644 index 2bb5daf..0000000 --- a/Assets/Interfaces/Interfaces.asmdef +++ /dev/null @@ -1,14 +0,0 @@ -{ - "name": "Interfaces", - "rootNamespace": "AsteroidGame", - "references": [], - "includePlatforms": [], - "excludePlatforms": [], - "allowUnsafeCode": false, - "overrideReferences": false, - "precompiledReferences": [], - "autoReferenced": true, - "defineConstraints": [], - "versionDefines": [], - "noEngineReferences": false -} \ No newline at end of file diff --git a/Assets/Materials/ColliderIndicator.mat b/Assets/Materials/ColliderIndicator.mat index 75fcde9..551e8f0 100644 --- a/Assets/Materials/ColliderIndicator.mat +++ b/Assets/Materials/ColliderIndicator.mat @@ -12,7 +12,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: da692e001514ec24dbc4cca1949ff7e8, type: 3} m_Name: m_EditorClassIdentifier: - version: 12 + version: 13 hdPluginSubTargetMaterialVersions: m_Keys: [] m_Values: @@ -25,6 +25,8 @@ Material: m_PrefabAsset: {fileID: 0} m_Name: ColliderIndicator m_Shader: {fileID: 4800000, guid: 6e4ae4064600d784cac1e41a9e6f2e59, type: 3} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 m_ValidKeywords: - _DISABLE_SSR_TRANSPARENT - _ENABLE_FOG_ON_TRANSPARENT @@ -43,6 +45,7 @@ Material: - TransparentBackface - RayTracingPrepass - MOTIONVECTORS + m_LockedProperties: m_SavedProperties: serializedVersion: 3 m_TexEnvs: @@ -122,6 +125,10 @@ Material: m_Texture: {fileID: 0} m_Scale: {x: 1, y: 1} m_Offset: {x: 0, y: 0} + - _TransmissionMaskMap: + 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} @@ -151,6 +158,8 @@ Material: - _AlphaCutoffPrepass: 0.5 - _AlphaCutoffShadow: 0.5 - _AlphaDstBlend: 10 + - _AlphaRemapMax: 1 + - _AlphaRemapMin: 0 - _AlphaSrcBlend: 1 - _AlphaToMask: 0 - _AlphaToMaskInspectorValue: 0 @@ -201,6 +210,8 @@ Material: - _MetallicRemapMin: 0 - _NormalMapSpace: 0 - _NormalScale: 1 + - _ObjectSpaceUVMapping: 0 + - _ObjectSpaceUVMappingEmissive: 0 - _OpaqueCullMode: 2 - _PPDLodThreshold: 5 - _PPDMaxSamples: 15 @@ -223,9 +234,9 @@ Material: - _StencilRefGBuffer: 2 - _StencilRefMV: 32 - _StencilWriteMask: 6 - - _StencilWriteMaskDepth: 8 - - _StencilWriteMaskGBuffer: 14 - - _StencilWriteMaskMV: 40 + - _StencilWriteMaskDepth: 9 + - _StencilWriteMaskGBuffer: 15 + - _StencilWriteMaskMV: 41 - _SubsurfaceMask: 1 - _SupportDecals: 1 - _SurfaceType: 1 @@ -233,6 +244,7 @@ Material: - _TexWorldScaleEmissive: 1 - _Thickness: 1 - _TransmissionEnable: 1 + - _TransmissionMask: 1 - _TransparentBackfaceEnable: 0 - _TransparentCullMode: 2 - _TransparentDepthPostpassEnable: 0 diff --git a/Assets/Materials/GhostMaterial.mat b/Assets/Materials/GhostMaterial.mat index 6b6966c..25effb1 100644 --- a/Assets/Materials/GhostMaterial.mat +++ b/Assets/Materials/GhostMaterial.mat @@ -9,6 +9,8 @@ Material: m_PrefabAsset: {fileID: 0} m_Name: GhostMaterial m_Shader: {fileID: 4800000, guid: 6e4ae4064600d784cac1e41a9e6f2e59, type: 3} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 m_ValidKeywords: - _DISABLE_SSR_TRANSPARENT - _ENABLE_FOG_ON_TRANSPARENT @@ -27,6 +29,7 @@ Material: - TransparentBackface - RayTracingPrepass - MOTIONVECTORS + m_LockedProperties: m_SavedProperties: serializedVersion: 3 m_TexEnvs: @@ -106,6 +109,10 @@ Material: m_Texture: {fileID: 0} m_Scale: {x: 1, y: 1} m_Offset: {x: 0, y: 0} + - _TransmissionMaskMap: + 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} @@ -135,6 +142,8 @@ Material: - _AlphaCutoffPrepass: 0.5 - _AlphaCutoffShadow: 0.5 - _AlphaDstBlend: 10 + - _AlphaRemapMax: 1 + - _AlphaRemapMin: 0 - _AlphaSrcBlend: 1 - _AlphaToMask: 0 - _AlphaToMaskInspectorValue: 0 @@ -185,6 +194,8 @@ Material: - _MetallicRemapMin: 0 - _NormalMapSpace: 0 - _NormalScale: 1 + - _ObjectSpaceUVMapping: 0 + - _ObjectSpaceUVMappingEmissive: 0 - _OpaqueCullMode: 2 - _PPDLodThreshold: 5 - _PPDMaxSamples: 15 @@ -207,9 +218,9 @@ Material: - _StencilRefGBuffer: 2 - _StencilRefMV: 32 - _StencilWriteMask: 6 - - _StencilWriteMaskDepth: 8 - - _StencilWriteMaskGBuffer: 14 - - _StencilWriteMaskMV: 40 + - _StencilWriteMaskDepth: 9 + - _StencilWriteMaskGBuffer: 15 + - _StencilWriteMaskMV: 41 - _SubsurfaceMask: 1 - _SupportDecals: 1 - _SurfaceType: 1 @@ -217,6 +228,7 @@ Material: - _TexWorldScaleEmissive: 1 - _Thickness: 1 - _TransmissionEnable: 1 + - _TransmissionMask: 1 - _TransparentBackfaceEnable: 0 - _TransparentCullMode: 2 - _TransparentDepthPostpassEnable: 0 @@ -263,7 +275,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: da692e001514ec24dbc4cca1949ff7e8, type: 3} m_Name: m_EditorClassIdentifier: - version: 12 + version: 13 hdPluginSubTargetMaterialVersions: m_Keys: [] m_Values: diff --git a/Assets/Materials/Opaque_Blue.mat b/Assets/Materials/Opaque_Blue.mat index 745392d..49f5d3e 100644 --- a/Assets/Materials/Opaque_Blue.mat +++ b/Assets/Materials/Opaque_Blue.mat @@ -12,7 +12,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: da692e001514ec24dbc4cca1949ff7e8, type: 3} m_Name: m_EditorClassIdentifier: - version: 12 + version: 13 hdPluginSubTargetMaterialVersions: m_Keys: [] m_Values: @@ -25,6 +25,8 @@ Material: m_PrefabAsset: {fileID: 0} m_Name: Opaque_Blue m_Shader: {fileID: 4800000, guid: 6e4ae4064600d784cac1e41a9e6f2e59, type: 3} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 m_ValidKeywords: - _DISABLE_SSR_TRANSPARENT - _NORMALMAP_TANGENT_SPACE @@ -40,6 +42,7 @@ Material: - TransparentBackface - RayTracingPrepass - MOTIONVECTORS + m_LockedProperties: m_SavedProperties: serializedVersion: 3 m_TexEnvs: @@ -119,6 +122,10 @@ Material: m_Texture: {fileID: 0} m_Scale: {x: 1, y: 1} m_Offset: {x: 0, y: 0} + - _TransmissionMaskMap: + 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} @@ -148,6 +155,8 @@ Material: - _AlphaCutoffPrepass: 0.5 - _AlphaCutoffShadow: 0.5 - _AlphaDstBlend: 0 + - _AlphaRemapMax: 1 + - _AlphaRemapMin: 0 - _AlphaSrcBlend: 1 - _AlphaToMask: 0 - _AlphaToMaskInspectorValue: 0 @@ -198,6 +207,8 @@ Material: - _MetallicRemapMin: 0 - _NormalMapSpace: 0 - _NormalScale: 1 + - _ObjectSpaceUVMapping: 0 + - _ObjectSpaceUVMappingEmissive: 0 - _OpaqueCullMode: 2 - _PPDLodThreshold: 5 - _PPDMaxSamples: 15 @@ -220,9 +231,9 @@ Material: - _StencilRefGBuffer: 10 - _StencilRefMV: 40 - _StencilWriteMask: 6 - - _StencilWriteMaskDepth: 8 - - _StencilWriteMaskGBuffer: 14 - - _StencilWriteMaskMV: 40 + - _StencilWriteMaskDepth: 9 + - _StencilWriteMaskGBuffer: 15 + - _StencilWriteMaskMV: 41 - _SubsurfaceMask: 1 - _SupportDecals: 1 - _SurfaceType: 0 @@ -230,6 +241,7 @@ Material: - _TexWorldScaleEmissive: 1 - _Thickness: 1 - _TransmissionEnable: 1 + - _TransmissionMask: 1 - _TransparentBackfaceEnable: 0 - _TransparentCullMode: 2 - _TransparentDepthPostpassEnable: 0 diff --git a/Assets/Materials/Opaque_Gray.mat b/Assets/Materials/Opaque_Gray.mat index 640bcb8..172a3cf 100644 --- a/Assets/Materials/Opaque_Gray.mat +++ b/Assets/Materials/Opaque_Gray.mat @@ -9,6 +9,8 @@ Material: m_PrefabAsset: {fileID: 0} m_Name: Opaque_Gray m_Shader: {fileID: 4800000, guid: 6e4ae4064600d784cac1e41a9e6f2e59, type: 3} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 m_ValidKeywords: - _DISABLE_SSR_TRANSPARENT - _NORMALMAP_TANGENT_SPACE @@ -24,6 +26,7 @@ Material: - TransparentBackface - RayTracingPrepass - MOTIONVECTORS + m_LockedProperties: m_SavedProperties: serializedVersion: 3 m_TexEnvs: @@ -135,6 +138,10 @@ Material: m_Texture: {fileID: 0} m_Scale: {x: 1, y: 1} m_Offset: {x: 0, y: 0} + - _TransmissionMaskMap: + 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} @@ -164,6 +171,8 @@ Material: - _AlphaCutoffPrepass: 0.5 - _AlphaCutoffShadow: 0.5 - _AlphaDstBlend: 0 + - _AlphaRemapMax: 1 + - _AlphaRemapMin: 0 - _AlphaSrcBlend: 1 - _AlphaToMask: 0 - _AlphaToMaskInspectorValue: 0 @@ -220,6 +229,8 @@ Material: - _Mode: 0 - _NormalMapSpace: 0 - _NormalScale: 1.24 + - _ObjectSpaceUVMapping: 0 + - _ObjectSpaceUVMappingEmissive: 0 - _OcclusionStrength: 1 - _OpaqueCullMode: 2 - _PPDLodThreshold: 5 @@ -246,9 +257,9 @@ Material: - _StencilRefGBuffer: 10 - _StencilRefMV: 40 - _StencilWriteMask: 6 - - _StencilWriteMaskDepth: 8 - - _StencilWriteMaskGBuffer: 14 - - _StencilWriteMaskMV: 40 + - _StencilWriteMaskDepth: 9 + - _StencilWriteMaskGBuffer: 15 + - _StencilWriteMaskMV: 41 - _SubsurfaceMask: 1 - _SupportDecals: 1 - _SurfaceType: 0 @@ -256,6 +267,7 @@ Material: - _TexWorldScaleEmissive: 1 - _Thickness: 1 - _TransmissionEnable: 1 + - _TransmissionMask: 1 - _TransparentBackfaceEnable: 0 - _TransparentCullMode: 2 - _TransparentDepthPostpassEnable: 0 @@ -303,7 +315,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: da692e001514ec24dbc4cca1949ff7e8, type: 3} m_Name: m_EditorClassIdentifier: - version: 12 + version: 13 hdPluginSubTargetMaterialVersions: m_Keys: [] m_Values: diff --git a/Assets/Materials/Opaque_Red.mat b/Assets/Materials/Opaque_Red.mat index 9865554..4f0ab4a 100644 --- a/Assets/Materials/Opaque_Red.mat +++ b/Assets/Materials/Opaque_Red.mat @@ -12,7 +12,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: da692e001514ec24dbc4cca1949ff7e8, type: 3} m_Name: m_EditorClassIdentifier: - version: 12 + version: 13 hdPluginSubTargetMaterialVersions: m_Keys: [] m_Values: @@ -25,6 +25,8 @@ Material: m_PrefabAsset: {fileID: 0} m_Name: Opaque_Red m_Shader: {fileID: 4800000, guid: 6e4ae4064600d784cac1e41a9e6f2e59, type: 3} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 m_ValidKeywords: - _DISABLE_SSR_TRANSPARENT - _NORMALMAP_TANGENT_SPACE @@ -40,6 +42,7 @@ Material: - TransparentBackface - RayTracingPrepass - MOTIONVECTORS + m_LockedProperties: m_SavedProperties: serializedVersion: 3 m_TexEnvs: @@ -119,6 +122,10 @@ Material: m_Texture: {fileID: 0} m_Scale: {x: 1, y: 1} m_Offset: {x: 0, y: 0} + - _TransmissionMaskMap: + 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} @@ -148,6 +155,8 @@ Material: - _AlphaCutoffPrepass: 0.5 - _AlphaCutoffShadow: 0.5 - _AlphaDstBlend: 0 + - _AlphaRemapMax: 1 + - _AlphaRemapMin: 0 - _AlphaSrcBlend: 1 - _AlphaToMask: 0 - _AlphaToMaskInspectorValue: 0 @@ -198,6 +207,8 @@ Material: - _MetallicRemapMin: 0 - _NormalMapSpace: 0 - _NormalScale: 1 + - _ObjectSpaceUVMapping: 0 + - _ObjectSpaceUVMappingEmissive: 0 - _OpaqueCullMode: 2 - _PPDLodThreshold: 5 - _PPDMaxSamples: 15 @@ -220,9 +231,9 @@ Material: - _StencilRefGBuffer: 10 - _StencilRefMV: 40 - _StencilWriteMask: 6 - - _StencilWriteMaskDepth: 8 - - _StencilWriteMaskGBuffer: 14 - - _StencilWriteMaskMV: 40 + - _StencilWriteMaskDepth: 9 + - _StencilWriteMaskGBuffer: 15 + - _StencilWriteMaskMV: 41 - _SubsurfaceMask: 1 - _SupportDecals: 1 - _SurfaceType: 0 @@ -230,6 +241,7 @@ Material: - _TexWorldScaleEmissive: 1 - _Thickness: 1 - _TransmissionEnable: 1 + - _TransmissionMask: 1 - _TransparentBackfaceEnable: 0 - _TransparentCullMode: 2 - _TransparentDepthPostpassEnable: 0 diff --git a/Assets/Materials/Transparent_Green.mat b/Assets/Materials/Transparent_Green.mat index 611c253..7fb8f49 100644 --- a/Assets/Materials/Transparent_Green.mat +++ b/Assets/Materials/Transparent_Green.mat @@ -12,7 +12,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: da692e001514ec24dbc4cca1949ff7e8, type: 3} m_Name: m_EditorClassIdentifier: - version: 12 + version: 13 hdPluginSubTargetMaterialVersions: m_Keys: [] m_Values: @@ -25,6 +25,8 @@ Material: m_PrefabAsset: {fileID: 0} m_Name: Transparent_Green m_Shader: {fileID: 4800000, guid: 6e4ae4064600d784cac1e41a9e6f2e59, type: 3} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 m_ValidKeywords: - _DISABLE_SSR_TRANSPARENT - _ENABLE_FOG_ON_TRANSPARENT @@ -43,6 +45,7 @@ Material: - TransparentBackface - RayTracingPrepass - MOTIONVECTORS + m_LockedProperties: m_SavedProperties: serializedVersion: 3 m_TexEnvs: @@ -122,6 +125,10 @@ Material: m_Texture: {fileID: 0} m_Scale: {x: 1, y: 1} m_Offset: {x: 0, y: 0} + - _TransmissionMaskMap: + 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} @@ -151,6 +158,8 @@ Material: - _AlphaCutoffPrepass: 0.5 - _AlphaCutoffShadow: 0.5 - _AlphaDstBlend: 10 + - _AlphaRemapMax: 1 + - _AlphaRemapMin: 0 - _AlphaSrcBlend: 1 - _AlphaToMask: 0 - _AlphaToMaskInspectorValue: 0 @@ -201,6 +210,8 @@ Material: - _MetallicRemapMin: 0 - _NormalMapSpace: 0 - _NormalScale: 1 + - _ObjectSpaceUVMapping: 0 + - _ObjectSpaceUVMappingEmissive: 0 - _OpaqueCullMode: 2 - _PPDLodThreshold: 5 - _PPDMaxSamples: 15 @@ -223,9 +234,9 @@ Material: - _StencilRefGBuffer: 2 - _StencilRefMV: 32 - _StencilWriteMask: 6 - - _StencilWriteMaskDepth: 8 - - _StencilWriteMaskGBuffer: 14 - - _StencilWriteMaskMV: 40 + - _StencilWriteMaskDepth: 9 + - _StencilWriteMaskGBuffer: 15 + - _StencilWriteMaskMV: 41 - _SubsurfaceMask: 1 - _SupportDecals: 1 - _SurfaceType: 1 @@ -233,6 +244,7 @@ Material: - _TexWorldScaleEmissive: 1 - _Thickness: 1 - _TransmissionEnable: 1 + - _TransmissionMask: 1 - _TransparentBackfaceEnable: 0 - _TransparentCullMode: 2 - _TransparentDepthPostpassEnable: 0 diff --git a/Assets/Packages/HDRPDefaultResources/DefaultSettingsVolumeProfile.asset b/Assets/Packages/HDRPDefaultResources/DefaultSettingsVolumeProfile.asset index fd16943..f2dec16 100644 --- a/Assets/Packages/HDRPDefaultResources/DefaultSettingsVolumeProfile.asset +++ b/Assets/Packages/HDRPDefaultResources/DefaultSettingsVolumeProfile.asset @@ -46,6 +46,24 @@ MonoBehaviour: m_SampleCount: m_OverrideState: 1 m_Value: 8 +--- !u!114 &-1793858814174886103 +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: 7a7ff42a8c5be6646ad3975f3a54c1eb, type: 3} + m_Name: DiffusionProfileList + m_EditorClassIdentifier: + active: 1 + diffusionProfiles: + m_OverrideState: 1 + m_Value: + - {fileID: 11400000, guid: eceab268f6a04e749af041e5e365872a, type: 2} + - {fileID: 11400000, guid: 3370ac1ab02538142af9851e66038745, type: 2} --- !u!114 &-1016694868962581565 MonoBehaviour: m_ObjectHideFlags: 3 @@ -117,6 +135,7 @@ MonoBehaviour: - {fileID: 1932259527246508038} - {fileID: 448115243408767295} - {fileID: -7089757308646879465} + - {fileID: -1793858814174886103} --- !u!114 &448115243408767295 MonoBehaviour: m_ObjectHideFlags: 3 @@ -143,10 +162,10 @@ MonoBehaviour: m_OverrideState: 0 m_Value: 1 upperHemisphereLuxValue: - m_OverrideState: 0 + m_OverrideState: 1 m_Value: 0.4660715 upperHemisphereLuxColor: - m_OverrideState: 0 + m_OverrideState: 1 m_Value: {x: 0.18750614, y: 0.29181972, z: 0.5} desiredLuxValue: m_OverrideState: 0 @@ -511,6 +530,9 @@ MonoBehaviour: m_Value: serializedVersion: 2 m_Bits: 4294967295 + specularOcclusion: + m_OverrideState: 0 + m_Value: 0.5 occluderMotionRejection: m_OverrideState: 0 m_Value: 1 @@ -560,6 +582,9 @@ MonoBehaviour: mode: m_OverrideState: 1 m_Value: 2 + useFullACES: + m_OverrideState: 0 + m_Value: 0 toeStrength: m_OverrideState: 0 m_Value: 0 @@ -584,6 +609,33 @@ MonoBehaviour: lutContribution: m_OverrideState: 0 m_Value: 1 + neutralHDRRangeReductionMode: + m_OverrideState: 0 + m_Value: 2 + acesPreset: + m_OverrideState: 0 + m_Value: 3 + fallbackMode: + m_OverrideState: 0 + m_Value: 1 + hueShiftAmount: + m_OverrideState: 0 + m_Value: 0 + detectPaperWhite: + m_OverrideState: 0 + m_Value: 0 + paperWhite: + m_OverrideState: 0 + m_Value: 300 + detectBrightnessLimits: + m_OverrideState: 0 + m_Value: 1 + minNits: + m_OverrideState: 0 + m_Value: 0.005 + maxNits: + m_OverrideState: 0 + m_Value: 1000 --- !u!114 &7686318427622180703 MonoBehaviour: m_ObjectHideFlags: 3 diff --git a/Assets/Scenes/Playground 1.unity b/Assets/Scenes/Playground 1.unity index 4802c2e..b3e149a 100644 --- a/Assets/Scenes/Playground 1.unity +++ b/Assets/Scenes/Playground 1.unity @@ -38,7 +38,7 @@ RenderSettings: m_ReflectionIntensity: 1 m_CustomReflection: {fileID: 0} m_Sun: {fileID: 0} - m_IndirectSpecularColor: {r: 262.3369, g: 325.0498, b: 430.21924, a: 1} + m_IndirectSpecularColor: {r: 262.33694, g: 325.04984, b: 430.2193, a: 1} m_UseRadianceAmbientProbe: 0 --- !u!157 &3 LightmapSettings: @@ -104,7 +104,7 @@ NavMeshSettings: serializedVersion: 2 m_ObjectHideFlags: 0 m_BuildSettings: - serializedVersion: 2 + serializedVersion: 3 agentTypeID: 0 agentRadius: 0.5 agentHeight: 2 @@ -117,12 +117,12 @@ NavMeshSettings: cellSize: 0.16666667 manualTileSize: 0 tileSize: 256 - accuratePlacement: 0 + buildHeightMesh: 0 maxJobWorkers: 0 preserveTilesOutsideBounds: 0 debug: m_Flags: 0 - m_NavMeshData: {fileID: 23800000, guid: b015bab8bed002c438c2a5abb0deec18, type: 2} + m_NavMeshData: {fileID: 0} --- !u!1 &38176945 GameObject: m_ObjectHideFlags: 0 @@ -146,6 +146,7 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 38176945} + serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} @@ -155,7 +156,6 @@ Transform: - {fileID: 1158682046} - {fileID: 624469242} m_Father: {fileID: 0} - m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &95533810 GameObject: @@ -227,13 +227,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 95533810} + serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 4 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &157782260 GameObject: @@ -258,8 +258,9 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 157782260} + serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: -4.6326556, y: 0.98203504, z: 6.9309382} + m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: @@ -269,13 +270,7 @@ Transform: - {fileID: 1421503444} - {fileID: 1494435109} m_Father: {fileID: 0} - m_RootOrder: 5 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!1 &208658293 stripped -GameObject: - m_CorrespondingSourceObject: {fileID: 5599539567497807159, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} - m_PrefabInstance: {fileID: 1715656625} - m_PrefabAsset: {fileID: 0} --- !u!4 &624469242 stripped Transform: m_CorrespondingSourceObject: {fileID: 5263199550015624126, guid: 2e352ad6389b4234083764d15d4e6a5f, type: 3} @@ -303,12 +298,13 @@ GameObject: - component: {fileID: 1089364669} - component: {fileID: 1089364668} - component: {fileID: 1089364667} + - component: {fileID: 1089364670} m_Layer: 0 m_Name: Cube m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 - m_StaticEditorFlags: 2147483647 + m_StaticEditorFlags: 2147483639 m_IsActive: 1 --- !u!4 &1089364666 Transform: @@ -317,13 +313,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1089364665} + serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: -11.3755, y: 1.3935, z: 3.9827} m_LocalScale: {x: 6.1543775, y: 3.7869, z: 5.7455} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 1702078697} - m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!65 &1089364667 BoxCollider: @@ -333,9 +329,17 @@ BoxCollider: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1089364665} m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 m_IsTrigger: 0 + m_ProvidesContacts: 0 m_Enabled: 1 - serializedVersion: 2 + serializedVersion: 3 m_Size: {x: 1, y: 1, z: 1} m_Center: {x: 0, y: 0, z: 0} --- !u!23 &1089364668 @@ -388,6 +392,25 @@ MeshFilter: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1089364665} m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!114 &1089364670 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1089364665} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 1e3fdca004f2d45fe8abbed571a8abd5, type: 3} + m_Name: + m_EditorClassIdentifier: + m_OverrideArea: 0 + m_Area: 0 + m_OverrideGenerateLinks: 1 + m_GenerateLinks: 1 + m_IgnoreFromBuild: 0 + m_ApplyToChildren: 1 + m_AffectedAgents: ffffffff --- !u!4 &1158682046 stripped Transform: m_CorrespondingSourceObject: {fileID: 664620742648054780, guid: 3a89f87af6ee84a459d98a4c296dd1be, type: 3} @@ -398,8 +421,13 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 0} m_Modifications: + - target: {fileID: 8083988910449603036, guid: c2b4fe01faa847f4b976b5539477e1ec, type: 3} + propertyPath: m_Version + value: 9 + objectReference: {fileID: 0} - target: {fileID: 8083988910661828845, guid: c2b4fe01faa847f4b976b5539477e1ec, type: 3} propertyPath: m_Name value: CameraRigBase @@ -449,6 +477,9 @@ PrefabInstance: value: 0 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: c2b4fe01faa847f4b976b5539477e1ec, type: 3} --- !u!1 &1402420031 GameObject: @@ -462,12 +493,13 @@ GameObject: - component: {fileID: 1402420035} - component: {fileID: 1402420034} - component: {fileID: 1402420033} + - component: {fileID: 1402420036} m_Layer: 0 m_Name: Plane m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 - m_StaticEditorFlags: 2147483647 + m_StaticEditorFlags: 2147483639 m_IsActive: 1 --- !u!4 &1402420032 Transform: @@ -476,13 +508,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1402420031} + serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 5.32, y: 5.32, z: 5.32} m_ConstrainProportionsScale: 1 m_Children: [] m_Father: {fileID: 1702078697} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!64 &1402420033 MeshCollider: @@ -492,9 +524,17 @@ MeshCollider: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1402420031} m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 m_IsTrigger: 0 + m_ProvidesContacts: 0 m_Enabled: 1 - serializedVersion: 4 + serializedVersion: 5 m_Convex: 0 m_CookingOptions: 30 m_Mesh: {fileID: 10209, guid: 0000000000000000e000000000000000, type: 0} @@ -548,11 +588,31 @@ MeshFilter: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1402420031} m_Mesh: {fileID: 10209, guid: 0000000000000000e000000000000000, type: 0} +--- !u!114 &1402420036 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1402420031} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 1e3fdca004f2d45fe8abbed571a8abd5, type: 3} + m_Name: + m_EditorClassIdentifier: + m_OverrideArea: 0 + m_Area: 0 + m_OverrideGenerateLinks: 1 + m_GenerateLinks: 1 + m_IgnoreFromBuild: 0 + m_ApplyToChildren: 1 + m_AffectedAgents: ffffffff --- !u!1001 &1421503443 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 157782261} m_Modifications: - target: {fileID: 2692714622321691895, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} @@ -561,7 +621,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 2692714622321691895, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} propertyPath: m_LocalPosition.x - value: 5.96 + value: 7.64 objectReference: {fileID: 0} - target: {fileID: 2692714622321691895, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} propertyPath: m_LocalPosition.y @@ -569,7 +629,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 2692714622321691895, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} propertyPath: m_LocalPosition.z - value: -1.35 + value: 7.63 objectReference: {fileID: 0} - target: {fileID: 2692714622321691895, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} propertyPath: m_LocalRotation.w @@ -603,7 +663,14 @@ PrefabInstance: propertyPath: m_Name value: Enemy (1) objectReference: {fileID: 0} + - target: {fileID: 5599539567497807159, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} + propertyPath: m_IsActive + value: 1 + objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} --- !u!4 &1421503444 stripped Transform: @@ -615,8 +682,13 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 157782261} m_Modifications: + - target: {fileID: 191376514769192977, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: -90 + objectReference: {fileID: 0} - target: {fileID: 1411216412654489461, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} propertyPath: _health value: 2 @@ -627,7 +699,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 2692714622321691895, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} propertyPath: m_LocalPosition.x - value: 4.51 + value: 0.3400004 objectReference: {fileID: 0} - target: {fileID: 2692714622321691895, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} propertyPath: m_LocalPosition.y @@ -635,7 +707,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 2692714622321691895, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} propertyPath: m_LocalPosition.z - value: 1.03 + value: 9.68 objectReference: {fileID: 0} - target: {fileID: 2692714622321691895, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} propertyPath: m_LocalRotation.w @@ -669,7 +741,14 @@ PrefabInstance: propertyPath: m_Name value: Enemy (2) objectReference: {fileID: 0} + - target: {fileID: 5599539567497807159, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} + propertyPath: m_IsActive + value: 1 + objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} --- !u!4 &1494435109 stripped Transform: @@ -685,12 +764,14 @@ GameObject: serializedVersion: 6 m_Component: - component: {fileID: 1702078697} + - component: {fileID: 1702078698} + - component: {fileID: 1702078699} m_Layer: 0 m_Name: Environment m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 + m_StaticEditorFlags: 2147483639 m_IsActive: 1 --- !u!4 &1702078697 Transform: @@ -699,6 +780,7 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1702078696} + serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} @@ -706,27 +788,71 @@ Transform: m_Children: - {fileID: 1402420032} - {fileID: 1089364666} + - {fileID: 1813727660} + - {fileID: 1779908011} m_Father: {fileID: 0} - m_RootOrder: 6 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &1702078698 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1702078696} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 1e3fdca004f2d45fe8abbed571a8abd5, type: 3} + m_Name: + m_EditorClassIdentifier: + m_OverrideArea: 0 + m_Area: 0 + m_OverrideGenerateLinks: 1 + m_GenerateLinks: 1 + m_IgnoreFromBuild: 0 + m_ApplyToChildren: 1 + m_AffectedAgents: ffffffff +--- !u!114 &1702078699 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1702078696} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 7a5ac11cc976e418e8d13136b07e1f52, type: 3} + m_Name: + m_EditorClassIdentifier: + m_AgentTypeID: 0 + m_CollectObjects: 3 + m_Size: {x: 10, y: 10, z: 10} + m_Center: {x: 0, y: 2, z: 0} + m_LayerMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_UseGeometry: 0 + m_DefaultArea: 0 + m_GenerateLinks: 0 + m_IgnoreNavMeshAgent: 1 + m_IgnoreNavMeshObstacle: 1 + m_OverrideTileSize: 0 + m_TileSize: 256 + m_OverrideVoxelSize: 0 + m_VoxelSize: 0.16666667 + m_MinRegionArea: 2 + m_NavMeshData: {fileID: 23800000, guid: bc0ea04d2588f6b4086c3f0383e36c02, type: 2} + m_BuildHeightMesh: 0 --- !u!1001 &1715656625 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 157782261} m_Modifications: - - target: {fileID: 1411216412654489461, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} - propertyPath: _entityBaseSet - value: - objectReference: {fileID: 11400000, guid: e5f25127d92be074aac6e7b745fae107, type: 2} - - target: {fileID: 2692714622321691895, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} - propertyPath: m_RootOrder - value: 1 - objectReference: {fileID: 0} - target: {fileID: 2692714622321691895, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} propertyPath: m_LocalPosition.x - value: -1.8 + value: -18.15 objectReference: {fileID: 0} - target: {fileID: 2692714622321691895, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} propertyPath: m_LocalPosition.y @@ -734,7 +860,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 2692714622321691895, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} propertyPath: m_LocalPosition.z - value: 2.38 + value: 9.04 objectReference: {fileID: 0} - target: {fileID: 2692714622321691895, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} propertyPath: m_LocalRotation.w @@ -769,34 +895,265 @@ PrefabInstance: value: Enemy objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} --- !u!4 &1715656626 stripped Transform: m_CorrespondingSourceObject: {fileID: 2692714622321691895, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} m_PrefabInstance: {fileID: 1715656625} m_PrefabAsset: {fileID: 0} ---- !u!195 &1715656628 -NavMeshAgent: +--- !u!1 &1779908010 +GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 208658293} + serializedVersion: 6 + m_Component: + - component: {fileID: 1779908011} + - component: {fileID: 1779908014} + - component: {fileID: 1779908013} + - component: {fileID: 1779908012} + - component: {fileID: 1779908015} + m_Layer: 0 + m_Name: Cube (2) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 2147483639 + m_IsActive: 1 +--- !u!4 &1779908011 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1779908010} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: 0.42212784, z: -0, w: 0.9065364} + m_LocalPosition: {x: 5.39, y: 0.6702, z: 4.91} + m_LocalScale: {x: 9.746384, y: 2.3403041, z: 1.8018664} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1702078697} + m_LocalEulerAnglesHint: {x: 0, y: 49.938, z: 0} +--- !u!65 &1779908012 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1779908010} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 m_Enabled: 1 - m_AgentTypeID: 0 - m_Radius: 0.5 - m_Speed: 3.5 - m_Acceleration: 8 - avoidancePriority: 50 - m_AngularSpeed: 120 - m_StoppingDistance: 0 - m_AutoTraverseOffMeshLink: 1 - m_AutoBraking: 1 - m_AutoRepath: 1 - m_Height: 2 - m_BaseOffset: 0 - m_WalkableMask: 4294967295 - m_ObstacleAvoidanceType: 4 + serializedVersion: 3 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!23 &1779908013 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1779908010} + 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: 73c176f402d2c2f4d929aa5da7585d17, 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 &1779908014 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1779908010} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!114 &1779908015 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1779908010} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 1e3fdca004f2d45fe8abbed571a8abd5, type: 3} + m_Name: + m_EditorClassIdentifier: + m_OverrideArea: 0 + m_Area: 0 + m_OverrideGenerateLinks: 1 + m_GenerateLinks: 1 + m_IgnoreFromBuild: 0 + m_ApplyToChildren: 1 + m_AffectedAgents: ffffffff +--- !u!1 &1813727659 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1813727660} + - component: {fileID: 1813727663} + - component: {fileID: 1813727662} + - component: {fileID: 1813727661} + - component: {fileID: 1813727664} + m_Layer: 0 + m_Name: Cube (1) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 2147483639 + m_IsActive: 1 +--- !u!4 &1813727660 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1813727659} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -1.4706, y: 0.6702, z: 6.79} + m_LocalScale: {x: 9.746384, y: 2.3403041, z: 1.8018664} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1702078697} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!65 &1813727661 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1813727659} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!23 &1813727662 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1813727659} + 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: 73c176f402d2c2f4d929aa5da7585d17, 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 &1813727663 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1813727659} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!114 &1813727664 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1813727659} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 1e3fdca004f2d45fe8abbed571a8abd5, type: 3} + m_Name: + m_EditorClassIdentifier: + m_OverrideArea: 0 + m_Area: 0 + m_OverrideGenerateLinks: 1 + m_GenerateLinks: 1 + m_IgnoreFromBuild: 0 + m_ApplyToChildren: 1 + m_AffectedAgents: ffffffff --- !u!1 &2047541735 GameObject: m_ObjectHideFlags: 0 @@ -884,13 +1241,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2047541735} + serializedVersion: 2 m_LocalRotation: {x: 0.40821788, y: -0.23456968, z: 0.10938163, w: 0.8754261} m_LocalPosition: {x: 0, y: 3, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 50, y: -30, z: 0} --- !u!114 &2047541738 MonoBehaviour: @@ -1024,31 +1381,20 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 157782261} m_Modifications: - - target: {fileID: 3252872069634226352, guid: 534f8d15e0c83c646887bebfda2bdfd6, type: 3} - propertyPath: m_Enabled - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 4256226406833302537, guid: 534f8d15e0c83c646887bebfda2bdfd6, type: 3} - propertyPath: m_IsTrigger - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 8324879816836607384, guid: 534f8d15e0c83c646887bebfda2bdfd6, type: 3} - propertyPath: m_RootOrder - value: 0 - objectReference: {fileID: 0} - target: {fileID: 8324879816836607384, guid: 534f8d15e0c83c646887bebfda2bdfd6, type: 3} propertyPath: m_LocalPosition.x - value: 4.6326556 + value: -3.33 objectReference: {fileID: 0} - target: {fileID: 8324879816836607384, guid: 534f8d15e0c83c646887bebfda2bdfd6, type: 3} propertyPath: m_LocalPosition.y - value: -0.98203504 + value: 0 objectReference: {fileID: 0} - target: {fileID: 8324879816836607384, guid: 534f8d15e0c83c646887bebfda2bdfd6, type: 3} propertyPath: m_LocalPosition.z - value: -2.8909383 + value: 3.21 objectReference: {fileID: 0} - target: {fileID: 8324879816836607384, guid: 534f8d15e0c83c646887bebfda2bdfd6, type: 3} propertyPath: m_LocalRotation.w @@ -1078,22 +1424,21 @@ PrefabInstance: propertyPath: m_LocalEulerAnglesHint.z value: 0 objectReference: {fileID: 0} - - target: {fileID: 8385032484663529878, guid: 534f8d15e0c83c646887bebfda2bdfd6, type: 3} - propertyPath: m_IsActive - value: 1 - objectReference: {fileID: 0} - target: {fileID: 8704396752535238434, guid: 534f8d15e0c83c646887bebfda2bdfd6, type: 3} propertyPath: m_Name value: Turret objectReference: {fileID: 0} - m_RemovedComponents: - - {fileID: 1344974744014620977, guid: 534f8d15e0c83c646887bebfda2bdfd6, type: 3} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 534f8d15e0c83c646887bebfda2bdfd6, type: 3} --- !u!1001 &664620741625697858 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 38176946} m_Modifications: - target: {fileID: 664620742648054780, guid: 3a89f87af6ee84a459d98a4c296dd1be, type: 3} @@ -1157,12 +1502,16 @@ PrefabInstance: value: BuildingHandler objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 3a89f87af6ee84a459d98a4c296dd1be, type: 3} --- !u!1001 &3627079579018641133 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 0} m_Modifications: - target: {fileID: 3627079578080913704, guid: 1170a91b91039d6429d389468bd72c6f, type: 3} @@ -1214,12 +1563,16 @@ PrefabInstance: value: 0 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 1170a91b91039d6429d389468bd72c6f, type: 3} --- !u!1001 &5200388200885062254 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 38176946} m_Modifications: - target: {fileID: 5200388201450229074, guid: 07826307af1971948b98dd42d1e9457a, type: 3} @@ -1271,12 +1624,16 @@ PrefabInstance: value: EnemyHandler objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 07826307af1971948b98dd42d1e9457a, type: 3} --- !u!1001 &5263199549561108292 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 38176946} m_Modifications: - target: {fileID: 5263199550015624125, guid: 2e352ad6389b4234083764d15d4e6a5f, type: 3} @@ -1328,21 +1685,21 @@ PrefabInstance: value: 0 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 2e352ad6389b4234083764d15d4e6a5f, type: 3} --- !u!1001 &8451896670512076735 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 157782261} m_Modifications: - - target: {fileID: 493861824998956378, guid: 57a75520298c47140a928041b05d7f3c, type: 3} - propertyPath: m_RootOrder - value: 2 - objectReference: {fileID: 0} - target: {fileID: 493861824998956378, guid: 57a75520298c47140a928041b05d7f3c, type: 3} propertyPath: m_LocalPosition.x - value: -0.07734442 + value: 2.05 objectReference: {fileID: 0} - target: {fileID: 493861824998956378, guid: 57a75520298c47140a928041b05d7f3c, type: 3} propertyPath: m_LocalPosition.y @@ -1350,7 +1707,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 493861824998956378, guid: 57a75520298c47140a928041b05d7f3c, type: 3} propertyPath: m_LocalPosition.z - value: -5.2709384 + value: 2.96 objectReference: {fileID: 0} - target: {fileID: 493861824998956378, guid: 57a75520298c47140a928041b05d7f3c, type: 3} propertyPath: m_LocalRotation.w @@ -1385,4 +1742,18 @@ PrefabInstance: value: PowerPlant objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 57a75520298c47140a928041b05d7f3c, type: 3} +--- !u!1660057539 &9223372036854775807 +SceneRoots: + m_ObjectHideFlags: 0 + m_Roots: + - {fileID: 2047541737} + - {fileID: 38176946} + - {fileID: 1191794244} + - {fileID: 3627079579018641133} + - {fileID: 95533813} + - {fileID: 157782261} + - {fileID: 1702078697} diff --git a/Assets/Scenes/Playground 1/NavMesh-Environment.asset b/Assets/Scenes/Playground 1/NavMesh-Environment.asset new file mode 100644 index 0000000..88a65b5 Binary files /dev/null and b/Assets/Scenes/Playground 1/NavMesh-Environment.asset differ diff --git a/Assets/Scenes/Playground 1/NavMesh-Environment.asset.meta b/Assets/Scenes/Playground 1/NavMesh-Environment.asset.meta new file mode 100644 index 0000000..74f2c48 --- /dev/null +++ b/Assets/Scenes/Playground 1/NavMesh-Environment.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: bc0ea04d2588f6b4086c3f0383e36c02 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 23800000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scenes/Playground 1/NavMesh.asset b/Assets/Scenes/Playground 1/NavMesh-Navigation.asset similarity index 84% rename from Assets/Scenes/Playground 1/NavMesh.asset rename to Assets/Scenes/Playground 1/NavMesh-Navigation.asset index 20b87cb..5d9374d 100644 Binary files a/Assets/Scenes/Playground 1/NavMesh.asset and b/Assets/Scenes/Playground 1/NavMesh-Navigation.asset differ diff --git a/Assets/Scenes/Playground 1/NavMesh.asset.meta b/Assets/Scenes/Playground 1/NavMesh-Navigation.asset.meta similarity index 100% rename from Assets/Scenes/Playground 1/NavMesh.asset.meta rename to Assets/Scenes/Playground 1/NavMesh-Navigation.asset.meta diff --git a/Assets/ScriptableObjects.meta b/Assets/ScriptableObjects.meta deleted file mode 100644 index e8e6906..0000000 --- a/Assets/ScriptableObjects.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 4b8bc87700fc5a44b88c1b13c4bdb3cf -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/ScriptableObjects/SRuntimeSet.cs b/Assets/ScriptableObjects/SRuntimeSet.cs deleted file mode 100644 index 9a6cb87..0000000 --- a/Assets/ScriptableObjects/SRuntimeSet.cs +++ /dev/null @@ -1,20 +0,0 @@ -using System.Collections.Generic; -using UnityEngine; - -namespace AsteroidGame.ScriptableObjects -{ - public abstract class SRuntimeSet : ScriptableObject - { - public List _list; - - public void Add(T component) - { - _list.Add(component); - } - - public void Remove(T component) - { - _list.Remove(component); - } - } -} \ No newline at end of file diff --git a/Assets/ScriptableObjects/SRuntimeSet.cs.meta b/Assets/ScriptableObjects/SRuntimeSet.cs.meta deleted file mode 100644 index 483e99a..0000000 --- a/Assets/ScriptableObjects/SRuntimeSet.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 1e81b384c7f010b4fa3c1b8f293a4c42 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/ScriptableObjects/ScriptableObjects.asmdef b/Assets/ScriptableObjects/ScriptableObjects.asmdef deleted file mode 100644 index 35574c9..0000000 --- a/Assets/ScriptableObjects/ScriptableObjects.asmdef +++ /dev/null @@ -1,14 +0,0 @@ -{ - "name": "ScriptableObjects", - "rootNamespace": "AsteroidGame", - "references": [], - "includePlatforms": [], - "excludePlatforms": [], - "allowUnsafeCode": false, - "overrideReferences": false, - "precompiledReferences": [], - "autoReferenced": true, - "defineConstraints": [], - "versionDefines": [], - "noEngineReferences": false -} \ No newline at end of file diff --git a/Assets/ScriptableObjects/ScriptableObjects.asmdef.meta b/Assets/ScriptableObjects/ScriptableObjects.asmdef.meta deleted file mode 100644 index 7c9b25d..0000000 --- a/Assets/ScriptableObjects/ScriptableObjects.asmdef.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: eb3099ff524d60545a136315a154d67b -AssemblyDefinitionImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Scripts/CameraController.cs b/Assets/Scripts/CameraController.cs index f87b33d..0fb4396 100644 --- a/Assets/Scripts/CameraController.cs +++ b/Assets/Scripts/CameraController.cs @@ -1,4 +1,3 @@ -using InputSystem; using UnityEngine; using UnityEngine.InputSystem; diff --git a/Assets/UI/BuildMenuUiController.cs b/Assets/UI/BuildMenuUiController.cs index 1e8b3a1..c9fbdd1 100644 --- a/Assets/UI/BuildMenuUiController.cs +++ b/Assets/UI/BuildMenuUiController.cs @@ -3,15 +3,17 @@ using AsteroidGame.Entities; using UnityEngine; using UnityEngine.UIElements; using AsteroidGame.Handlers; +using AsteroidGame.ScriptableObjects; using UnityEngine.Serialization; namespace AsteroidGame.UI { public class BuildMenuUiController : MonoBehaviour { + [FormerlySerializedAs("_availableSStructuresObject")] [FormerlySerializedAs("_availableStructuresObject")] [Header("Structures")] - [SerializeField] private SStructureBaseList _availableSStructuresObject; + [SerializeField] private SoStructureBaseList _availableSoStructuresObject; private VisualElement _mRoot; private VisualElement _mSlotContainer; @@ -20,7 +22,7 @@ namespace AsteroidGame.UI private void OnEnable() { - _buildings = _availableSStructuresObject._structureList; + _buildings = _availableSoStructuresObject._structureList; _buildingHandler = FindObjectOfType(); //Store the root from the UI Document component diff --git a/Entities.csproj.DotSettings b/Entities.csproj.DotSettings index 80d98ab..4abec3d 100644 --- a/Entities.csproj.DotSettings +++ b/Entities.csproj.DotSettings @@ -2,6 +2,7 @@ True True True + True True True True diff --git a/Packages/manifest.json b/Packages/manifest.json index a9c4ced..3e245bd 100644 --- a/Packages/manifest.json +++ b/Packages/manifest.json @@ -1,19 +1,18 @@ { "dependencies": { - "com.unity.collab-proxy": "1.17.2", + "com.unity.ai.navigation": "1.1.5", "com.unity.feature.development": "1.0.1", - "com.unity.ide.rider": "3.0.15", - "com.unity.ide.visualstudio": "2.0.16", + "com.unity.ide.rider": "3.0.25", + "com.unity.ide.visualstudio": "2.0.21", "com.unity.ide.vscode": "1.2.5", - "com.unity.inputsystem": "1.4.2", - "com.unity.render-pipelines.high-definition": "12.1.7", - "com.unity.test-framework": "1.1.31", + "com.unity.inputsystem": "1.7.0", + "com.unity.render-pipelines.high-definition": "14.0.8", + "com.unity.test-framework": "1.1.33", "com.unity.textmeshpro": "3.0.6", - "com.unity.timeline": "1.6.4", + "com.unity.timeline": "1.7.5", "com.unity.ugui": "1.0.0", "com.unity.ui": "2.0.0", "com.unity.ui.builder": "2.0.0", - "com.unity.visualscripting": "1.7.8", "com.unity.modules.ai": "1.0.0", "com.unity.modules.androidjni": "1.0.0", "com.unity.modules.animation": "1.0.0", diff --git a/Packages/packages-lock.json b/Packages/packages-lock.json index 2ab3c5f..dd8058e 100644 --- a/Packages/packages-lock.json +++ b/Packages/packages-lock.json @@ -1,7 +1,16 @@ { "dependencies": { + "com.unity.ai.navigation": { + "version": "1.1.5", + "depth": 0, + "source": "registry", + "dependencies": { + "com.unity.modules.ai": "1.0.0" + }, + "url": "https://packages.unity.com" + }, "com.unity.burst": { - "version": "1.6.6", + "version": "1.8.8", "depth": 1, "source": "registry", "dependencies": { @@ -9,15 +18,6 @@ }, "url": "https://packages.unity.com" }, - "com.unity.collab-proxy": { - "version": "1.17.2", - "depth": 0, - "source": "registry", - "dependencies": { - "com.unity.services.core": "1.0.1" - }, - "url": "https://packages.unity.com" - }, "com.unity.editorcoroutines": { "version": "1.0.0", "depth": 1, @@ -37,17 +37,17 @@ "depth": 0, "source": "builtin", "dependencies": { - "com.unity.ide.visualstudio": "2.0.16", - "com.unity.ide.rider": "3.0.15", + "com.unity.ide.visualstudio": "2.0.18", + "com.unity.ide.rider": "3.0.24", "com.unity.ide.vscode": "1.2.5", "com.unity.editorcoroutines": "1.0.0", - "com.unity.performance.profile-analyzer": "1.1.1", - "com.unity.test-framework": "1.1.31", - "com.unity.testtools.codecoverage": "1.0.1" + "com.unity.performance.profile-analyzer": "1.2.2", + "com.unity.test-framework": "1.1.33", + "com.unity.testtools.codecoverage": "1.2.4" } }, "com.unity.ide.rider": { - "version": "3.0.15", + "version": "3.0.25", "depth": 0, "source": "registry", "dependencies": { @@ -56,7 +56,7 @@ "url": "https://packages.unity.com" }, "com.unity.ide.visualstudio": { - "version": "2.0.16", + "version": "2.0.21", "depth": 0, "source": "registry", "dependencies": { @@ -72,7 +72,7 @@ "url": "https://packages.unity.com" }, "com.unity.inputsystem": { - "version": "1.4.2", + "version": "1.7.0", "depth": 0, "source": "registry", "dependencies": { @@ -87,91 +87,74 @@ "dependencies": {}, "url": "https://packages.unity.com" }, - "com.unity.nuget.newtonsoft-json": { - "version": "3.0.2", - "depth": 2, - "source": "registry", - "dependencies": {}, - "url": "https://packages.unity.com" - }, "com.unity.performance.profile-analyzer": { - "version": "1.1.1", + "version": "1.2.2", "depth": 1, "source": "registry", "dependencies": {}, "url": "https://packages.unity.com" }, "com.unity.render-pipelines.core": { - "version": "12.1.7", + "version": "14.0.8", "depth": 1, "source": "builtin", "dependencies": { "com.unity.ugui": "1.0.0", "com.unity.modules.physics": "1.0.0", + "com.unity.modules.terrain": "1.0.0", "com.unity.modules.jsonserialize": "1.0.0" } }, "com.unity.render-pipelines.high-definition": { - "version": "12.1.7", + "version": "14.0.8", "depth": 0, "source": "builtin", "dependencies": { "com.unity.mathematics": "1.2.4", - "com.unity.burst": "1.6.0", + "com.unity.burst": "1.8.4", "com.unity.modules.video": "1.0.0", "com.unity.modules.animation": "1.0.0", "com.unity.modules.imageconversion": "1.0.0", "com.unity.modules.terrain": "1.0.0", - "com.unity.render-pipelines.core": "12.1.7", - "com.unity.shadergraph": "12.1.7", - "com.unity.visualeffectgraph": "12.1.7", - "com.unity.render-pipelines.high-definition-config": "12.1.7" + "com.unity.render-pipelines.core": "14.0.8", + "com.unity.shadergraph": "14.0.8", + "com.unity.visualeffectgraph": "14.0.8", + "com.unity.render-pipelines.high-definition-config": "14.0.8" } }, "com.unity.render-pipelines.high-definition-config": { - "version": "12.1.7", + "version": "14.0.8", "depth": 1, "source": "builtin", "dependencies": { - "com.unity.render-pipelines.core": "12.1.7" + "com.unity.render-pipelines.core": "14.0.8" } }, "com.unity.searcher": { - "version": "4.9.1", + "version": "4.9.2", "depth": 2, "source": "registry", "dependencies": {}, "url": "https://packages.unity.com" }, - "com.unity.services.core": { - "version": "1.4.2", - "depth": 1, - "source": "registry", - "dependencies": { - "com.unity.modules.unitywebrequest": "1.0.0", - "com.unity.nuget.newtonsoft-json": "3.0.2", - "com.unity.modules.androidjni": "1.0.0" - }, - "url": "https://packages.unity.com" - }, "com.unity.settings-manager": { - "version": "1.0.3", + "version": "2.0.1", "depth": 2, "source": "registry", "dependencies": {}, "url": "https://packages.unity.com" }, "com.unity.shadergraph": { - "version": "12.1.7", + "version": "14.0.8", "depth": 1, "source": "builtin", "dependencies": { - "com.unity.render-pipelines.core": "12.1.7", - "com.unity.searcher": "4.9.1" + "com.unity.render-pipelines.core": "14.0.8", + "com.unity.searcher": "4.9.2" } }, "com.unity.test-framework": { - "version": "1.1.31", + "version": "1.1.33", "depth": 0, "source": "registry", "dependencies": { @@ -182,7 +165,7 @@ "url": "https://packages.unity.com" }, "com.unity.testtools.codecoverage": { - "version": "1.0.1", + "version": "1.2.4", "depth": 1, "source": "registry", "dependencies": { @@ -201,7 +184,7 @@ "url": "https://packages.unity.com" }, "com.unity.timeline": { - "version": "1.6.4", + "version": "1.7.5", "depth": 0, "source": "registry", "dependencies": { @@ -234,24 +217,14 @@ "dependencies": {} }, "com.unity.visualeffectgraph": { - "version": "12.1.7", + "version": "14.0.8", "depth": 1, "source": "builtin", "dependencies": { - "com.unity.shadergraph": "12.1.7", - "com.unity.render-pipelines.core": "12.1.7" + "com.unity.shadergraph": "14.0.8", + "com.unity.render-pipelines.core": "14.0.8" } }, - "com.unity.visualscripting": { - "version": "1.7.8", - "depth": 0, - "source": "registry", - "dependencies": { - "com.unity.ugui": "1.0.0", - "com.unity.modules.jsonserialize": "1.0.0" - }, - "url": "https://packages.unity.com" - }, "com.unity.modules.ai": { "version": "1.0.0", "depth": 0, @@ -384,17 +357,6 @@ "version": "1.0.0", "depth": 0, "source": "builtin", - "dependencies": { - "com.unity.modules.ui": "1.0.0", - "com.unity.modules.imgui": "1.0.0", - "com.unity.modules.jsonserialize": "1.0.0", - "com.unity.modules.uielementsnative": "1.0.0" - } - }, - "com.unity.modules.uielementsnative": { - "version": "1.0.0", - "depth": 1, - "source": "builtin", "dependencies": { "com.unity.modules.ui": "1.0.0", "com.unity.modules.imgui": "1.0.0", diff --git a/ProjectSettings/BurstAotSettings_StandaloneWindows.json b/ProjectSettings/BurstAotSettings_StandaloneWindows.json new file mode 100644 index 0000000..58cf25f --- /dev/null +++ b/ProjectSettings/BurstAotSettings_StandaloneWindows.json @@ -0,0 +1,18 @@ +{ + "MonoBehaviour": { + "Version": 4, + "EnableBurstCompilation": true, + "EnableOptimisations": true, + "EnableSafetyChecks": false, + "EnableDebugInAllBuilds": false, + "DebugDataKind": 1, + "EnableArmv9SecurityFeatures": false, + "CpuMinTargetX32": 0, + "CpuMaxTargetX32": 0, + "CpuMinTargetX64": 0, + "CpuMaxTargetX64": 0, + "CpuTargetsX32": 6, + "CpuTargetsX64": 72, + "OptimizeFor": 0 + } +} diff --git a/ProjectSettings/CommonBurstAotSettings.json b/ProjectSettings/CommonBurstAotSettings.json new file mode 100644 index 0000000..0293daf --- /dev/null +++ b/ProjectSettings/CommonBurstAotSettings.json @@ -0,0 +1,6 @@ +{ + "MonoBehaviour": { + "Version": 4, + "DisabledWarnings": "" + } +} diff --git a/ProjectSettings/HDRPProjectSettings.asset b/ProjectSettings/HDRPProjectSettings.asset index 06c298f..6fb2e80 100644 --- a/ProjectSettings/HDRPProjectSettings.asset +++ b/ProjectSettings/HDRPProjectSettings.asset @@ -14,7 +14,7 @@ MonoBehaviour: m_EditorClassIdentifier: m_ProjectSettingFolderPath: HDRPDefaultResources m_WizardPopupAtStart: 0 - m_LastMaterialVersion: 12 + m_LastMaterialVersion: 13 m_HDShaderGraphLastSeenVersion: 0 m_PluginMaterialVersions: m_Keys: [] diff --git a/ProjectSettings/Packages/com.unity.testtools.codecoverage/Settings.json b/ProjectSettings/Packages/com.unity.testtools.codecoverage/Settings.json index ad11087..3c7b4c1 100644 --- a/ProjectSettings/Packages/com.unity.testtools.codecoverage/Settings.json +++ b/ProjectSettings/Packages/com.unity.testtools.codecoverage/Settings.json @@ -1,6 +1,4 @@ { - "m_Name": "Settings", - "m_Path": "ProjectSettings/Packages/com.unity.testtools.codecoverage/Settings.json", "m_Dictionary": { "m_DictionaryValues": [] } diff --git a/ProjectSettings/ProjectSettings.asset b/ProjectSettings/ProjectSettings.asset index be3711b..f49a8f9 100644 --- a/ProjectSettings/ProjectSettings.asset +++ b/ProjectSettings/ProjectSettings.asset @@ -3,7 +3,7 @@ --- !u!129 &1 PlayerSettings: m_ObjectHideFlags: 0 - serializedVersion: 23 + serializedVersion: 26 productGUID: d003377464fe2f043a1d84fa3cee25a6 AndroidProfiler: 0 AndroidFilterTouchesWhenObscured: 0 @@ -48,14 +48,15 @@ PlayerSettings: defaultScreenHeightWeb: 600 m_StereoRenderingPath: 0 m_ActiveColorSpace: 1 + m_SpriteBatchVertexThreshold: 300 m_MTRendering: 1 mipStripping: 0 numberOfMipsStripped: 0 + numberOfMipsStrippedPerMipmapLimitGroup: {} m_StackTraceTypes: 010000000100000001000000010000000100000001000000 iosShowActivityIndicatorOnLoading: -1 androidShowActivityIndicatorOnLoading: -1 iosUseCustomAppBackgroundBehavior: 0 - iosAllowHTTPDownload: 1 allowedAutorotateToPortrait: 1 allowedAutorotateToPortraitUpsideDown: 1 allowedAutorotateToLandscapeRight: 1 @@ -85,6 +86,7 @@ PlayerSettings: hideHomeButton: 0 submitAnalytics: 1 usePlayerLog: 1 + dedicatedServerOptimizations: 0 bakeCollisionMeshes: 0 forceSingleInstance: 0 useFlipModelSwapchain: 1 @@ -119,8 +121,12 @@ PlayerSettings: switchNVNShaderPoolsGranularity: 33554432 switchNVNDefaultPoolsGranularity: 16777216 switchNVNOtherPoolsGranularity: 16777216 + switchGpuScratchPoolGranularity: 2097152 + switchAllowGpuScratchShrinking: 0 switchNVNMaxPublicTextureIDCount: 0 switchNVNMaxPublicSamplerIDCount: 0 + switchNVNGraphicsFirmwareMemory: 32 + switchMaxWorkerMultiple: 8 stadiaPresentMode: 0 stadiaTargetFramerate: 0 vulkanNumSwapchainBuffers: 3 @@ -128,12 +134,7 @@ PlayerSettings: vulkanEnablePreTransform: 1 vulkanEnableLateAcquireNextImage: 0 vulkanEnableCommandBufferRecycling: 1 - m_SupportedAspectRatios: - 4:3: 1 - 5:4: 1 - 16:10: 1 - 16:9: 1 - Others: 1 + loadStoreDebugModeEnabled: 0 bundleVersion: 0.1 preloadedAssets: [] metroInputSource: 0 @@ -147,7 +148,7 @@ PlayerSettings: enableFrameTimingStats: 0 enableOpenGLProfilerGPURecorders: 1 useHDRDisplay: 0 - D3DHDRBitDepth: 0 + hdrBitDepth: 0 m_ColorGamuts: 00000000 targetPixelDensity: 30 resolutionScalingMode: 0 @@ -157,6 +158,7 @@ PlayerSettings: applicationIdentifier: {} buildNumber: Standalone: 0 + VisionOS: 0 iPhone: 0 tvOS: 0 overrideDefaultApplicationIdentifier: 0 @@ -174,12 +176,15 @@ PlayerSettings: APKExpansionFiles: 0 keepLoadedShadersAlive: 0 StripUnusedMeshComponents: 1 + strictShaderVariantMatching: 0 VertexChannelCompressionMask: 4054 iPhoneSdkVersion: 988 - iOSTargetOSVersionString: 11.0 + iOSTargetOSVersionString: 12.0 tvOSSdkVersion: 0 tvOSRequireExtendedGameController: 0 - tvOSTargetOSVersionString: 11.0 + tvOSTargetOSVersionString: 12.0 + VisionOSSdkVersion: 0 + VisionOSTargetOSVersionString: 1.0 uIPrerenderedIcon: 0 uIRequiresPersistentWiFi: 0 uIRequiresFullScreen: 1 @@ -227,8 +232,10 @@ PlayerSettings: appleDeveloperTeamID: iOSManualSigningProvisioningProfileID: tvOSManualSigningProvisioningProfileID: + VisionOSManualSigningProvisioningProfileID: iOSManualSigningProvisioningProfileType: 0 tvOSManualSigningProvisioningProfileType: 0 + VisionOSManualSigningProvisioningProfileType: 0 appleEnableAutomaticSigning: 0 iOSRequireARKit: 0 iOSAutomaticallyDetectAndAddCapabilities: 1 @@ -243,6 +250,7 @@ PlayerSettings: useCustomLauncherGradleManifest: 0 useCustomBaseGradleTemplate: 0 useCustomGradlePropertiesTemplate: 0 + useCustomGradleSettingsTemplate: 0 useCustomProguardFile: 0 AndroidTargetArchitectures: 1 AndroidTargetDevices: 0 @@ -250,6 +258,7 @@ PlayerSettings: androidSplashScreen: {fileID: 0} AndroidKeystoreName: AndroidKeyaliasName: + AndroidEnableArmv9SecurityFeatures: 0 AndroidBuildApkPerCpuArchitecture: 0 AndroidTVCompatibility: 0 AndroidIsGame: 1 @@ -263,7 +272,6 @@ PlayerSettings: banner: {fileID: 0} androidGamepadSupportLevel: 0 chromeosInputEmulation: 1 - AndroidMinifyWithR8: 0 AndroidMinifyRelease: 0 AndroidMinifyDebug: 0 AndroidValidateAppBundleSize: 1 @@ -286,6 +294,7 @@ PlayerSettings: - m_BuildTarget: WebGL m_StaticBatching: 0 m_DynamicBatching: 0 + m_BuildTargetShaderSettings: [] m_BuildTargetGraphicsJobs: - m_BuildTarget: MacStandaloneSupport m_GraphicsJobs: 0 @@ -337,6 +346,8 @@ PlayerSettings: m_Devices: - Oculus - OpenVR + m_DefaultShaderChunkSizeInMB: 16 + m_DefaultShaderChunkCount: 0 openGLRequireES31: 0 openGLRequireES31AEP: 0 openGLRequireES32: 0 @@ -358,7 +369,21 @@ PlayerSettings: m_EncodingQuality: 2 - m_BuildTarget: Windows Store Apps m_EncodingQuality: 2 + m_BuildTargetGroupHDRCubemapEncodingQuality: + - m_BuildTarget: Android + m_EncodingQuality: 2 + - m_BuildTarget: iPhone + m_EncodingQuality: 1 + - m_BuildTarget: tvOS + m_EncodingQuality: 1 + - m_BuildTarget: Standalone + m_EncodingQuality: 2 + - m_BuildTarget: Lumin + m_EncodingQuality: 1 + - m_BuildTarget: Windows Store Apps + m_EncodingQuality: 2 m_BuildTargetGroupLightmapSettings: [] + m_BuildTargetGroupLoadStoreDebugModeSettings: [] m_BuildTargetNormalMapEncoding: - m_BuildTarget: Android m_Encoding: 1 @@ -379,6 +404,7 @@ PlayerSettings: locationUsageDescription: microphoneUsageDescription: bluetoothUsageDescription: + macOSTargetOSVersion: 10.13.0 switchNMETAOverride: switchNetLibKey: switchSocketMemoryPoolSize: 6144 @@ -386,10 +412,12 @@ PlayerSettings: switchSocketConcurrencyLimit: 14 switchScreenResolutionBehavior: 2 switchUseCPUProfiler: 0 + switchEnableFileSystemTrace: 0 switchUseGOLDLinker: 0 switchLTOSetting: 0 switchApplicationID: 0x01004b9000490000 switchNSODependencies: + switchCompilerFlags: switchTitleNames_0: switchTitleNames_1: switchTitleNames_2: @@ -463,7 +491,6 @@ PlayerSettings: switchReleaseVersion: 0 switchDisplayVersion: 1.0.0 switchStartupUserAccount: 0 - switchTouchScreenUsage: 0 switchSupportedLanguagesMask: 0 switchLogoType: 0 switchApplicationErrorCodeCategory: @@ -505,6 +532,7 @@ PlayerSettings: switchNativeFsCacheSize: 32 switchIsHoldTypeHorizontal: 0 switchSupportedNpadCount: 8 + switchEnableTouchScreen: 1 switchSocketConfigEnabled: 0 switchTcpInitialSendBufferSize: 32 switchTcpInitialReceiveBufferSize: 64 @@ -517,6 +545,7 @@ PlayerSettings: switchNetworkInterfaceManagerInitializeEnabled: 1 switchPlayerConnectionEnabled: 1 switchUseNewStyleFilepaths: 0 + switchUseLegacyFmodPriorities: 0 switchUseMicroSleepForYield: 1 switchEnableRamDiskSupport: 0 switchMicroSleepForYieldTime: 25 @@ -604,6 +633,7 @@ PlayerSettings: webGLMemorySize: 16 webGLExceptionSupport: 1 webGLNameFilesAsHashes: 0 + webGLShowDiagnostics: 0 webGLDataCaching: 1 webGLDebugSymbols: 0 webGLEmscriptenArgs: @@ -616,21 +646,41 @@ PlayerSettings: webGLLinkerTarget: 1 webGLThreadsSupport: 0 webGLDecompressionFallback: 0 + webGLInitialMemorySize: 32 + webGLMaximumMemorySize: 2048 + webGLMemoryGrowthMode: 2 + webGLMemoryLinearGrowthStep: 16 + webGLMemoryGeometricGrowthStep: 0.2 + webGLMemoryGeometricGrowthCap: 96 + webGLPowerPreference: 2 scriptingDefineSymbols: {} additionalCompilerArguments: {} platformArchitecture: {} scriptingBackend: {} il2cppCompilerConfiguration: {} - managedStrippingLevel: {} + il2cppCodeGeneration: {} + managedStrippingLevel: + EmbeddedLinux: 1 + GameCoreScarlett: 1 + GameCoreXboxOne: 1 + Nintendo Switch: 1 + PS4: 1 + PS5: 1 + QNX: 1 + Stadia: 1 + VisionOS: 1 + WebGL: 1 + Windows Store Apps: 1 + XboxOne: 1 + iPhone: 1 + tvOS: 1 incrementalIl2cppBuild: {} suppressCommonWarnings: 1 allowUnsafeCode: 0 useDeterministicCompilation: 1 - enableRoslynAnalyzers: 1 additionalIl2CppArgs: scriptingRuntimeVersion: 1 gcIncremental: 1 - assemblyVersionValidation: 1 gcWBarrierValidation: 0 apiCompatibilityLevelPerPlatform: {} m_RenderingPath: 1 @@ -703,8 +753,14 @@ PlayerSettings: luminVersion: m_VersionCode: 1 m_VersionName: + hmiPlayerDataPath: + hmiForceSRGBBlit: 1 + embeddedLinuxEnableGamepadInput: 1 + hmiLogStartupTiming: 0 + hmiCpuConfiguration: apiCompatibilityLevel: 6 activeInputHandler: 1 + windowsGamepadBackendHint: 0 cloudProjectId: framebufferDepthMemorylessMode: 0 qualitySettingsNames: [] @@ -712,6 +768,7 @@ PlayerSettings: organizationId: cloudEnabled: 0 legacyClampBlendShapeWeights: 0 - playerDataPath: - forceSRGBBlit: 1 + hmiLoadingImage: {fileID: 0} + platformRequiresReadableAssets: 0 virtualTexturingSupportEnabled: 0 + insecureHttpOption: 0 diff --git a/ProjectSettings/ProjectVersion.txt b/ProjectSettings/ProjectVersion.txt index 8ea1b85..88bb9cf 100644 --- a/ProjectSettings/ProjectVersion.txt +++ b/ProjectSettings/ProjectVersion.txt @@ -1,2 +1,2 @@ -m_EditorVersion: 2021.3.11f1 -m_EditorVersionWithRevision: 2021.3.11f1 (0a5ca18544bf) +m_EditorVersion: 2022.3.10f1 +m_EditorVersionWithRevision: 2022.3.10f1 (ff3792e53c62) diff --git a/ProjectSettings/QualitySettings.asset b/ProjectSettings/QualitySettings.asset index 0505fe1..9549fd2 100644 --- a/ProjectSettings/QualitySettings.asset +++ b/ProjectSettings/QualitySettings.asset @@ -6,7 +6,7 @@ QualitySettings: serializedVersion: 5 m_CurrentQuality: 5 m_QualitySettings: - - serializedVersion: 2 + - serializedVersion: 3 name: Very Low pixelLightCount: 0 shadows: 0 @@ -19,16 +19,20 @@ QualitySettings: shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} shadowmaskMode: 0 skinWeights: 1 - textureQuality: 1 + globalTextureMipmapLimit: 1 + textureMipmapLimitSettings: [] anisotropicTextures: 0 antiAliasing: 0 softParticles: 0 softVegetation: 0 realtimeReflectionProbes: 0 billboardsFaceCameraPosition: 0 + useLegacyDetailDistribution: 1 vSyncCount: 0 + realtimeGICPUUsage: 25 lodBias: 0.3 maximumLODLevel: 0 + enableLODCrossFade: 1 streamingMipmapsActive: 0 streamingMipmapsAddAllCameras: 1 streamingMipmapsMemoryBudget: 512 @@ -41,8 +45,17 @@ QualitySettings: asyncUploadPersistentBuffer: 1 resolutionScalingFixedDPIFactor: 1 customRenderPipeline: {fileID: 0} + terrainQualityOverrides: 0 + terrainPixelError: 1 + terrainDetailDensityScale: 1 + terrainBasemapDistance: 1000 + terrainDetailDistance: 80 + terrainTreeDistance: 5000 + terrainBillboardStart: 50 + terrainFadeLength: 5 + terrainMaxTrees: 50 excludedTargetPlatforms: [] - - serializedVersion: 2 + - serializedVersion: 3 name: Low pixelLightCount: 0 shadows: 0 @@ -55,16 +68,20 @@ QualitySettings: shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} shadowmaskMode: 0 skinWeights: 2 - textureQuality: 0 + globalTextureMipmapLimit: 0 + textureMipmapLimitSettings: [] anisotropicTextures: 0 antiAliasing: 0 softParticles: 0 softVegetation: 0 realtimeReflectionProbes: 0 billboardsFaceCameraPosition: 0 + useLegacyDetailDistribution: 1 vSyncCount: 0 + realtimeGICPUUsage: 25 lodBias: 0.4 maximumLODLevel: 0 + enableLODCrossFade: 1 streamingMipmapsActive: 0 streamingMipmapsAddAllCameras: 1 streamingMipmapsMemoryBudget: 512 @@ -77,8 +94,17 @@ QualitySettings: asyncUploadPersistentBuffer: 1 resolutionScalingFixedDPIFactor: 1 customRenderPipeline: {fileID: 0} + terrainQualityOverrides: 0 + terrainPixelError: 1 + terrainDetailDensityScale: 1 + terrainBasemapDistance: 1000 + terrainDetailDistance: 80 + terrainTreeDistance: 5000 + terrainBillboardStart: 50 + terrainFadeLength: 5 + terrainMaxTrees: 50 excludedTargetPlatforms: [] - - serializedVersion: 2 + - serializedVersion: 3 name: Medium pixelLightCount: 1 shadows: 1 @@ -91,16 +117,20 @@ QualitySettings: shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} shadowmaskMode: 0 skinWeights: 2 - textureQuality: 0 + globalTextureMipmapLimit: 0 + textureMipmapLimitSettings: [] anisotropicTextures: 1 antiAliasing: 0 softParticles: 0 softVegetation: 0 realtimeReflectionProbes: 0 billboardsFaceCameraPosition: 0 + useLegacyDetailDistribution: 1 vSyncCount: 1 + realtimeGICPUUsage: 25 lodBias: 0.7 maximumLODLevel: 0 + enableLODCrossFade: 1 streamingMipmapsActive: 0 streamingMipmapsAddAllCameras: 1 streamingMipmapsMemoryBudget: 512 @@ -113,8 +143,17 @@ QualitySettings: asyncUploadPersistentBuffer: 1 resolutionScalingFixedDPIFactor: 1 customRenderPipeline: {fileID: 0} + terrainQualityOverrides: 0 + terrainPixelError: 1 + terrainDetailDensityScale: 1 + terrainBasemapDistance: 1000 + terrainDetailDistance: 80 + terrainTreeDistance: 5000 + terrainBillboardStart: 50 + terrainFadeLength: 5 + terrainMaxTrees: 50 excludedTargetPlatforms: [] - - serializedVersion: 2 + - serializedVersion: 3 name: High pixelLightCount: 2 shadows: 2 @@ -127,16 +166,20 @@ QualitySettings: shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} shadowmaskMode: 1 skinWeights: 2 - textureQuality: 0 + globalTextureMipmapLimit: 0 + textureMipmapLimitSettings: [] anisotropicTextures: 1 antiAliasing: 0 softParticles: 0 softVegetation: 1 realtimeReflectionProbes: 1 billboardsFaceCameraPosition: 1 + useLegacyDetailDistribution: 1 vSyncCount: 1 + realtimeGICPUUsage: 50 lodBias: 1 maximumLODLevel: 0 + enableLODCrossFade: 1 streamingMipmapsActive: 0 streamingMipmapsAddAllCameras: 1 streamingMipmapsMemoryBudget: 512 @@ -149,8 +192,17 @@ QualitySettings: asyncUploadPersistentBuffer: 1 resolutionScalingFixedDPIFactor: 1 customRenderPipeline: {fileID: 0} + terrainQualityOverrides: 0 + terrainPixelError: 1 + terrainDetailDensityScale: 1 + terrainBasemapDistance: 1000 + terrainDetailDistance: 80 + terrainTreeDistance: 5000 + terrainBillboardStart: 50 + terrainFadeLength: 5 + terrainMaxTrees: 50 excludedTargetPlatforms: [] - - serializedVersion: 2 + - serializedVersion: 3 name: Very High pixelLightCount: 3 shadows: 2 @@ -163,16 +215,20 @@ QualitySettings: shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} shadowmaskMode: 1 skinWeights: 4 - textureQuality: 0 + globalTextureMipmapLimit: 0 + textureMipmapLimitSettings: [] anisotropicTextures: 2 antiAliasing: 2 softParticles: 1 softVegetation: 1 realtimeReflectionProbes: 1 billboardsFaceCameraPosition: 1 + useLegacyDetailDistribution: 1 vSyncCount: 1 + realtimeGICPUUsage: 50 lodBias: 1.5 maximumLODLevel: 0 + enableLODCrossFade: 1 streamingMipmapsActive: 0 streamingMipmapsAddAllCameras: 1 streamingMipmapsMemoryBudget: 512 @@ -185,8 +241,17 @@ QualitySettings: asyncUploadPersistentBuffer: 1 resolutionScalingFixedDPIFactor: 1 customRenderPipeline: {fileID: 0} + terrainQualityOverrides: 0 + terrainPixelError: 1 + terrainDetailDensityScale: 1 + terrainBasemapDistance: 1000 + terrainDetailDistance: 80 + terrainTreeDistance: 5000 + terrainBillboardStart: 50 + terrainFadeLength: 5 + terrainMaxTrees: 50 excludedTargetPlatforms: [] - - serializedVersion: 2 + - serializedVersion: 3 name: Ultra pixelLightCount: 4 shadows: 2 @@ -199,16 +264,20 @@ QualitySettings: shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} shadowmaskMode: 1 skinWeights: 4 - textureQuality: 0 + globalTextureMipmapLimit: 0 + textureMipmapLimitSettings: [] anisotropicTextures: 2 antiAliasing: 2 softParticles: 1 softVegetation: 1 realtimeReflectionProbes: 1 billboardsFaceCameraPosition: 1 + useLegacyDetailDistribution: 1 vSyncCount: 1 + realtimeGICPUUsage: 100 lodBias: 1 maximumLODLevel: 0 + enableLODCrossFade: 1 streamingMipmapsActive: 0 streamingMipmapsAddAllCameras: 1 streamingMipmapsMemoryBudget: 512 @@ -221,7 +290,17 @@ QualitySettings: asyncUploadPersistentBuffer: 1 resolutionScalingFixedDPIFactor: 1 customRenderPipeline: {fileID: 0} + terrainQualityOverrides: 0 + terrainPixelError: 1 + terrainDetailDensityScale: 1 + terrainBasemapDistance: 1000 + terrainDetailDistance: 80 + terrainTreeDistance: 5000 + terrainBillboardStart: 50 + terrainFadeLength: 5 + terrainMaxTrees: 50 excludedTargetPlatforms: [] + m_TextureMipmapLimitGroupNames: [] m_PerPlatformDefaultQuality: Android: 2 Lumin: 5 diff --git a/ProjectSettings/VFXManager.asset b/ProjectSettings/VFXManager.asset index b004c5e..87823a9 100644 --- a/ProjectSettings/VFXManager.asset +++ b/ProjectSettings/VFXManager.asset @@ -10,6 +10,8 @@ VFXManager: m_RenderPipeSettingsPath: m_FixedTimeStep: 0.016666668 m_MaxDeltaTime: 0.05 - m_CompiledVersion: 4 - m_RuntimeVersion: 22 + m_MaxScrubTime: 30 + m_CompiledVersion: 7 + m_RuntimeVersion: 35 m_RuntimeResources: {fileID: 11400000, guid: bc10b42afe3813544bffd38ae2cd893d, type: 2} + m_BatchEmptyLifetime: 300 diff --git a/ProjectSettings/boot.config b/ProjectSettings/boot.config deleted file mode 100644 index e69de29..0000000