Merge branch 'Dev/Composition'

This commit is contained in:
Stedd 2023-10-08 16:54:30 +02:00
commit 208c745911
121 changed files with 2612 additions and 1267 deletions

1
.gitignore vendored
View File

@ -74,3 +74,4 @@ crashlytics-build.properties
game_notes/.obsidian
.idea/.idea.AsteroidGame/.idea/dictionaries
.idea

3
.gitmodules vendored Normal file
View File

@ -0,0 +1,3 @@
[submodule "Assets/CoreSystems"]
path = Assets/CoreSystems
url = https://gitea.strixhab.net/Stedd/GameDev.CoreSystems.git

View File

@ -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

View File

@ -1,8 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="UserContentModel">
<attachedFolders />
<explicitIncludes />
<explicitExcludes />
</component>
</project>

View File

@ -1,6 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="VcsDirectoryMappings">
<mapping directory="$PROJECT_DIR$" vcs="Git" />
</component>
</project>

View File

@ -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

View File

@ -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:

View File

@ -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:

View File

@ -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

View File

@ -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

View File

@ -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:

View File

@ -7,7 +7,8 @@
"GUID:f008ecc6829887e478aeb5eb004eb01b",
"GUID:17a5862fcd6383b4b97bad4dcb1e2e5d",
"GUID:f26d68a0bdefa1043b120b820f55e190",
"GUID:eb3099ff524d60545a136315a154d67b"
"GUID:eb3099ff524d60545a136315a154d67b",
"GUID:5d38ea13ae8f69a4395d425d401a557a"
],
"includePlatforms": [],
"excludePlatforms": [],

1
Assets/CoreSystems Submodule

@ -0,0 +1 @@
Subproject commit 639357ca9aa7ae6a32f5f97067d6d33005d9bdb1

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 7e3f0ef7b0919344e82d2052fbe05143
guid: 1ddd6c48e06694441adea0f979e2d194
folderAsset: yes
DefaultImporter:
externalObjects: {}

View File

@ -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}

View File

@ -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}
<CurrentHealth>k__BackingField: 10
<MaxHealth>k__BackingField: 10
<IsInvulnerable>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}
<Damageable>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}
<Damageable>k__BackingField: {fileID: 4299120351774448665}
<Targetable>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}
<Targeter>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}
<TargetEntity>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:

View File

@ -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}

View File

@ -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<EnemyHandler>();
// scoreHandler = FindObjectOfType<ScoreHandler>();
_currentHealth = _maxHealth;
}
private void OnParticleCollision(GameObject damager)
{
ProcessHitFrom(damager);
}
private void ProcessHitFrom(GameObject damager)
{
// SpawnFX(damageVFX);
// Debug.Log(damager.GetComponentInParent<Tower>().GetDamage());
_currentHealth -= damager.GetComponentInParent<Turret>().Damage;
//UpdateHealthText(health);
if(_currentHealth <= 0)
{
ProcessDeathFrom(damager);
}
}
private void ProcessDeathFrom(GameObject damager)
{
//damager.GetComponentInParent<Turret>().UpdateScore(1f);
// SpawnFX(deathFX);
// scoreHandler.ModifyWealth(wealthValue);
// enemyHandler.RemoveEnemy(gameObject);
// Destroy(gameObject);
gameObject.SetActive(false);
_maxHealth += _difficultyRamp;
}
}
}

View File

@ -1,11 +0,0 @@
fileFormatVersion: 2
guid: ac0f42db9d6c21540a5ef3107e36946a
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -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<EnemyHandler>();
// scoreHandler = FindObjectOfType<ScoreHandler>();
}
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;
}
}
}

View File

@ -1,11 +0,0 @@
fileFormatVersion: 2
guid: 8e691044df4c75f4cb07af0551efa2c6
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -2,8 +2,7 @@
"name": "Entities",
"rootNamespace": "AsteroidGame",
"references": [
"GUID:17a5862fcd6383b4b97bad4dcb1e2e5d",
"GUID:eb3099ff524d60545a136315a154d67b"
"GUID:5d38ea13ae8f69a4395d425d401a557a"
],
"includePlatforms": [],
"excludePlatforms": [],

View File

@ -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
}
}

View File

@ -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: []

View File

@ -1,8 +1,8 @@
fileFormatVersion: 2
guid: b20f0794cd5868b4eadf6614b8ab88b9
folderAsset: yes
DefaultImporter:
guid: 8332d81762d09114eac45ca6f3b2c4af
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@ -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: []

View File

@ -1,7 +1,8 @@
fileFormatVersion: 2
guid: 17a5862fcd6383b4b97bad4dcb1e2e5d
AssemblyDefinitionImporter:
guid: 127d26f1f3536e94da36af662f63fa0b
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@ -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: []

View File

@ -1,8 +1,8 @@
fileFormatVersion: 2
guid: 22c766fdadc55c449b5311282a681a64
folderAsset: yes
DefaultImporter:
guid: dda2fd5e970bbd642a5ceead1e82783c
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@ -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: []

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 85e03587d1a940f438ceac70a3d544d5
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@ -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<EnemyBase>
{
}
}

View File

@ -1,10 +0,0 @@
using AsteroidGame.ScriptableObjects;
using UnityEngine;
namespace AsteroidGame.Entities
{
[CreateAssetMenu(fileName = "newEntityBaseRuntimeSet", menuName = "RuntimeSet/EntityBase")]
public class SEntityBaseRuntimeSet : SRuntimeSet<EntityBase>
{
}
}

View File

@ -1,10 +0,0 @@
using AsteroidGame.ScriptableObjects;
using UnityEngine;
namespace AsteroidGame.Entities
{
[CreateAssetMenu(fileName = "newStructureBaseRuntimeSet", menuName = "RuntimeSet/StructureBase")]
public class SStructureBaseRuntimeSet : SRuntimeSet<StructureBase>
{
}
}

View File

@ -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
};
}
}

View File

@ -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<EnemyBase> _list;
}

View File

@ -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<EnemyBase>
{
}
}

View File

@ -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<EntityBase>
{
}
}

View File

@ -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<PowerBase>
{
}
}

View File

@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: 3c46c7dedba14f3da958a2e6a3d3feaa
timeCreated: 1665006553

View File

@ -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;
}
}

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 99361805272d7f6419384097857e2bd6
guid: 87159085b5778b14482ec38673729d95
MonoImporter:
externalObjects: {}
serializedVersion: 2

View File

@ -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<StructureBase> _structureList;
}

View File

@ -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<StructureBase>
{
}
}

View File

@ -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
};
}
}

View File

@ -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;

View File

@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: 087e96d3ceec42f9aba85753a4b8d15f
timeCreated: 1665005789

View File

@ -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>();
_navMeshAgent.speed = 0.1f;
_enemyBaseSet.Add(this);
InitializeTargeter();
InitializeNavMeshAgent();
}
private void InitializeTargeter()
{
_targeter = gameObject.AddComponent<Targeter>();
_targeter.SetParent(this);
_targeter.SetConfig(_targeterConfig);
if (Targeter != null)
{
Targeter = gameObject.GetComponentInChildren<Targeter>();
}
Targeter.SetParent(Targetable);
}
private void InitializeNavMeshAgent()
{
if (_navMeshAgent != null)
{
_navMeshAgent = gameObject.GetComponentInChildren<NavMeshAgent>();
}
_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());
}
}
}

View File

@ -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<Damageable>();
}
private void InitializeTargetable()
{
if (Targetable != null) return;
Targetable = gameObject.AddComponent<Targetable>();
}
private void AssignDamageable()
{
if (Targetable.Damageable != null) return;
Targetable.Damageable = Damageable;
}
}
}

View File

@ -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
}
}

View File

@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: 5aca1826fdd547e1afd4a67d55a0f25c
timeCreated: 1665006027

View File

@ -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;
}
}
}

View File

@ -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}
<Damageable>k__BackingField: {fileID: 4803755810606958043}
<Targetable>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}
<Damageable>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}
<CurrentHealth>k__BackingField: 10
<MaxHealth>k__BackingField: 10
<IsInvulnerable>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}

View File

@ -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

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 742a00ce6f6a8e04cae160bc40f09e24
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@ -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()

View File

@ -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<PowerBase>();
_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

View File

@ -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>();
_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());
}
}
}

View File

@ -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}
<Damageable>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}
<CurrentHealth>k__BackingField: 10
<MaxHealth>k__BackingField: 10
<IsInvulnerable>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}
<TargetEntity>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}
<Damageable>k__BackingField: {fileID: 3620345197547817675}
<Targetable>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}
<Targeter>k__BackingField: {fileID: 310569669314672228}

View File

@ -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

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 9dc2a0f5f29a11a4d9cabe19e18bdd42
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@ -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}

View File

@ -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;
}
}
}

View File

@ -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<StructureBase> GetAvailableStructures()
// {
// return _availableStructures._structureList;
// }
// public List<StructureBase> GetActiveStructures()
// {
// return _activeStructures;
// }
#endregion
#region Setters

View File

@ -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;
}
}

View File

@ -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}

View File

@ -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();

View File

@ -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}

View File

@ -1,7 +1,7 @@
//------------------------------------------------------------------------------
// <auto-generated>
// 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<InputDevice>? devices
{
get => asset.devices;
set => asset.devices = value;
}
public ReadOnlyArray<InputControlScheme> controlSchemes => asset.controlSchemes;
public bool Contains(InputAction action)
{
return asset.Contains(action);
}
public IEnumerator<InputAction> GetEnumerator()
{
return asset.GetEnumerator();
}
IEnumerator IEnumerable.GetEnumerator()
{
return GetEnumerator();
}
public void Enable()
{
asset.Enable();
}
public void Disable()
{
asset.Disable();
}
public IEnumerable<InputBinding> 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<InputDevice>? devices
{
get => asset.devices;
set => asset.devices = value;
}
public ReadOnlyArray<InputControlScheme> controlSchemes => asset.controlSchemes;
public bool Contains(InputAction action)
{
return asset.Contains(action);
}
public IEnumerator<InputAction> GetEnumerator()
{
return asset.GetEnumerator();
}
IEnumerator IEnumerable.GetEnumerator()
{
return GetEnumerator();
}
public void Enable()
{
asset.Enable();
}
public void Disable()
{
asset.Disable();
}
public IEnumerable<InputBinding> 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<ICameraActions> m_CameraActionsCallbackInterfaces = new List<ICameraActions>();
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);
}
}
}
public CameraActions @Camera => new CameraActions(this);
public interface ICameraActions
{
void OnMovement(InputAction.CallbackContext context);
void OnRotateCamera(InputAction.CallbackContext context);
void OnZoomCamera(InputAction.CallbackContext context);
}
}

View File

@ -1,7 +1,7 @@
//------------------------------------------------------------------------------
// <auto-generated>
// 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<InputBinding> 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<IPlayerActions> m_PlayerActionsCallbackInterfaces = new List<IPlayerActions>();
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<IUIActions> m_UIActionsCallbackInterfaces = new List<IUIActions>();
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);

View File

@ -1,8 +0,0 @@
namespace AsteroidGame.Interfaces
{
public interface IBuildable
{
public int GetCost();
public int SetCost(int newCost);
}
}

View File

@ -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
}
}

View File

@ -1,11 +0,0 @@
fileFormatVersion: 2
guid: d0290b6d2e8462547a0d40b67a1076e3
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -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();
}
}

View File

@ -1,11 +0,0 @@
fileFormatVersion: 2
guid: c3e9b410a74a04f4ab85e908d2a684a8
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,11 +0,0 @@
using UnityEngine;
namespace AsteroidGame.Interfaces
{
public interface ITargetable
{
public Vector3 GetCenterPosition();
public Vector3 GetBasePosition();
}
}

View File

@ -1,11 +0,0 @@
fileFormatVersion: 2
guid: 3d338501124dcf349b3852a83d20dbe4
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,8 +0,0 @@
namespace AsteroidGame.Interfaces
{
public interface IWeapon
{
public float FireRate { get; set; }
public float Damage { get; set; }
}
}

View File

@ -1,3 +0,0 @@
fileFormatVersion: 2
guid: a4d06a75a5a64c83aa191a8610f5080f
timeCreated: 1664621279

View File

@ -1,14 +0,0 @@
{
"name": "Interfaces",
"rootNamespace": "AsteroidGame",
"references": [],
"includePlatforms": [],
"excludePlatforms": [],
"allowUnsafeCode": false,
"overrideReferences": false,
"precompiledReferences": [],
"autoReferenced": true,
"defineConstraints": [],
"versionDefines": [],
"noEngineReferences": false
}

View File

@ -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

View File

@ -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:

View File

@ -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

View File

@ -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:

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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}

Binary file not shown.

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: bc0ea04d2588f6b4086c3f0383e36c02
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 23800000
userData:
assetBundleName:
assetBundleVariant:

Some files were not shown because too many files have changed in this diff Show More