add: functional riffle and inventory for bullets

This commit is contained in:
KOSMOGOR
2025-04-26 13:53:06 +03:00
parent 1b106e4e18
commit df5602dc00
8 changed files with 258 additions and 416 deletions
+71 -16
View File
@@ -133,6 +133,7 @@ Transform:
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 3053641561535516023}
- {fileID: 7306251229952926972}
m_Father: {fileID: 6890030909251295590}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!20 &1094126809165627842
@@ -458,22 +459,6 @@ PrefabInstance:
serializedVersion: 3
m_TransformParent: {fileID: 4506534449155536579}
m_Modifications:
- target: {fileID: 1042172676018165636, guid: af6264663cfc3ba499db761a90d861ca, type: 3}
propertyPath: m_LocalRotation.w
value: 0.7071068
objectReference: {fileID: 0}
- target: {fileID: 1042172676018165636, guid: af6264663cfc3ba499db761a90d861ca, type: 3}
propertyPath: m_LocalRotation.y
value: 0.7071068
objectReference: {fileID: 0}
- target: {fileID: 1042172676018165636, guid: af6264663cfc3ba499db761a90d861ca, type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 90
objectReference: {fileID: 0}
- target: {fileID: 1587861691790886941, guid: af6264663cfc3ba499db761a90d861ca, type: 3}
propertyPath: m_Name
value: Muzzle
objectReference: {fileID: 0}
- target: {fileID: 2812489602185112801, guid: af6264663cfc3ba499db761a90d861ca, type: 3}
propertyPath: m_Name
value: Pistol_0.1
@@ -528,3 +513,73 @@ Transform:
m_CorrespondingSourceObject: {fileID: 3191971078612809307, guid: af6264663cfc3ba499db761a90d861ca, type: 3}
m_PrefabInstance: {fileID: 444904299868781356}
m_PrefabAsset: {fileID: 0}
--- !u!1001 &6803844382836373506
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
serializedVersion: 3
m_TransformParent: {fileID: 4506534449155536579}
m_Modifications:
- target: {fileID: 1283704224102497885, guid: a8be43ab8737b9b4bb440fd60a5e6ce5, type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 1283704224102497885, guid: a8be43ab8737b9b4bb440fd60a5e6ce5, type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 90
objectReference: {fileID: 0}
- target: {fileID: 3477561828804200004, guid: a8be43ab8737b9b4bb440fd60a5e6ce5, type: 3}
propertyPath: m_Name
value: Rifle_0.3
objectReference: {fileID: 0}
- target: {fileID: 4253958408851774718, guid: a8be43ab8737b9b4bb440fd60a5e6ce5, type: 3}
propertyPath: m_LocalPosition.x
value: 0.5
objectReference: {fileID: 0}
- target: {fileID: 4253958408851774718, guid: a8be43ab8737b9b4bb440fd60a5e6ce5, type: 3}
propertyPath: m_LocalPosition.y
value: -0.3
objectReference: {fileID: 0}
- target: {fileID: 4253958408851774718, guid: a8be43ab8737b9b4bb440fd60a5e6ce5, type: 3}
propertyPath: m_LocalPosition.z
value: 1.5
objectReference: {fileID: 0}
- target: {fileID: 4253958408851774718, guid: a8be43ab8737b9b4bb440fd60a5e6ce5, type: 3}
propertyPath: m_LocalRotation.w
value: 0.5
objectReference: {fileID: 0}
- target: {fileID: 4253958408851774718, guid: a8be43ab8737b9b4bb440fd60a5e6ce5, type: 3}
propertyPath: m_LocalRotation.x
value: -0.5
objectReference: {fileID: 0}
- target: {fileID: 4253958408851774718, guid: a8be43ab8737b9b4bb440fd60a5e6ce5, type: 3}
propertyPath: m_LocalRotation.y
value: -0.5
objectReference: {fileID: 0}
- target: {fileID: 4253958408851774718, guid: a8be43ab8737b9b4bb440fd60a5e6ce5, type: 3}
propertyPath: m_LocalRotation.z
value: -0.5
objectReference: {fileID: 0}
- target: {fileID: 4253958408851774718, guid: a8be43ab8737b9b4bb440fd60a5e6ce5, type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: -90
objectReference: {fileID: 0}
- target: {fileID: 4253958408851774718, guid: a8be43ab8737b9b4bb440fd60a5e6ce5, type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: -90
objectReference: {fileID: 0}
- target: {fileID: 4253958408851774718, guid: a8be43ab8737b9b4bb440fd60a5e6ce5, type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
m_RemovedComponents: []
m_RemovedGameObjects: []
m_AddedGameObjects: []
m_AddedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: a8be43ab8737b9b4bb440fd60a5e6ce5, type: 3}
--- !u!4 &7306251229952926972 stripped
Transform:
m_CorrespondingSourceObject: {fileID: 4253958408851774718, guid: a8be43ab8737b9b4bb440fd60a5e6ce5, type: 3}
m_PrefabInstance: {fileID: 6803844382836373506}
m_PrefabAsset: {fileID: 0}
+7 -6
View File
@@ -10,7 +10,7 @@ GameObject:
m_Component:
- component: {fileID: 1042172676018165636}
m_Layer: 0
m_Name: muzzle
m_Name: Muzzle
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
@@ -24,13 +24,13 @@ Transform:
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1587861691790886941}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 1, z: 0, w: 0}
m_LocalRotation: {x: 0, y: 0.7071068, z: 0, w: 0.7071068}
m_LocalPosition: {x: 0.035, y: -0.0003, z: -0.0015}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 3191971078612809307}
m_LocalEulerAnglesHint: {x: 0, y: 180, z: 0}
m_LocalEulerAnglesHint: {x: 0, y: 90, z: 0}
--- !u!1001 &3154368798760636848
PrefabInstance:
m_ObjectHideFlags: 0
@@ -53,15 +53,15 @@ PrefabInstance:
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: d734c466a893eb24080a9ca70b7b501d, type: 3}
propertyPath: m_LocalPosition.x
value: 0
value: 0.5
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: d734c466a893eb24080a9ca70b7b501d, type: 3}
propertyPath: m_LocalPosition.y
value: 0
value: -0.2
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: d734c466a893eb24080a9ca70b7b501d, type: 3}
propertyPath: m_LocalPosition.z
value: 0
value: 1.25
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: d734c466a893eb24080a9ca70b7b501d, type: 3}
propertyPath: m_LocalRotation.w
@@ -142,6 +142,7 @@ MonoBehaviour:
projectilePrefab: {fileID: 1562924000103655330, guid: bfe7100930f24fd52b5b66832f59cfa8, type: 3}
spawnPosition: {fileID: 1042172676018165636}
fireRate: 1
currentDelay: 0
--- !u!4 &3191971078612809307 stripped
Transform:
m_CorrespondingSourceObject: {fileID: -8679921383154817045, guid: d734c466a893eb24080a9ca70b7b501d, type: 3}
+77 -2
View File
@@ -1,5 +1,36 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &7460370745949417932
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1283704224102497885}
m_Layer: 0
m_Name: Muzzle
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &1283704224102497885
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7460370745949417932}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0.7071068, z: 0, w: 0.7071068}
m_LocalPosition: {x: 0.06, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 4253958408851774718}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1001 &4360506843749432085
PrefabInstance:
m_ObjectHideFlags: 0
@@ -8,6 +39,18 @@ PrefabInstance:
serializedVersion: 3
m_TransformParent: {fileID: 0}
m_Modifications:
- target: {fileID: -8679921383154817045, guid: 873975b0a04c6cf40968163e886b6680, type: 3}
propertyPath: m_LocalScale.x
value: 15
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 873975b0a04c6cf40968163e886b6680, type: 3}
propertyPath: m_LocalScale.y
value: 15
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 873975b0a04c6cf40968163e886b6680, type: 3}
propertyPath: m_LocalScale.z
value: 15
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 873975b0a04c6cf40968163e886b6680, type: 3}
propertyPath: m_LocalPosition.x
value: 0
@@ -54,6 +97,38 @@ PrefabInstance:
objectReference: {fileID: 0}
m_RemovedComponents: []
m_RemovedGameObjects: []
m_AddedGameObjects: []
m_AddedComponents: []
m_AddedGameObjects:
- targetCorrespondingSourceObject: {fileID: -8679921383154817045, guid: 873975b0a04c6cf40968163e886b6680, type: 3}
insertIndex: -1
addedObject: {fileID: 1283704224102497885}
m_AddedComponents:
- targetCorrespondingSourceObject: {fileID: 919132149155446097, guid: 873975b0a04c6cf40968163e886b6680, type: 3}
insertIndex: -1
addedObject: {fileID: 1683623121582132765}
m_SourcePrefab: {fileID: 100100000, guid: 873975b0a04c6cf40968163e886b6680, type: 3}
--- !u!1 &3477561828804200004 stripped
GameObject:
m_CorrespondingSourceObject: {fileID: 919132149155446097, guid: 873975b0a04c6cf40968163e886b6680, type: 3}
m_PrefabInstance: {fileID: 4360506843749432085}
m_PrefabAsset: {fileID: 0}
--- !u!114 &1683623121582132765
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3477561828804200004}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 4cc7bc1baad25a9459ee673b6d502363, type: 3}
m_Name:
m_EditorClassIdentifier:
projectilePrefab: {fileID: 1562924000103655330, guid: bfe7100930f24fd52b5b66832f59cfa8, type: 3}
spawnPosition: {fileID: 1283704224102497885}
fireRate: 3
currentDelay: 0
--- !u!4 &4253958408851774718 stripped
Transform:
m_CorrespondingSourceObject: {fileID: -8679921383154817045, guid: 873975b0a04c6cf40968163e886b6680, type: 3}
m_PrefabInstance: {fileID: 4360506843749432085}
m_PrefabAsset: {fileID: 0}
+57 -386
View File
@@ -119,388 +119,63 @@ NavMeshSettings:
debug:
m_Flags: 0
m_NavMeshData: {fileID: 0}
--- !u!1 &353004301
GameObject:
--- !u!1001 &1529331689
PrefabInstance:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 353004305}
- component: {fileID: 353004304}
- component: {fileID: 353004303}
- component: {fileID: 353004302}
- component: {fileID: 353004306}
m_Layer: 0
m_Name: Enemy
m_TagString: Enemy
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!65 &353004302
BoxCollider:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 353004301}
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 &353004303
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 353004301}
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_RayTracingAccelStructBuildFlagsOverride: 0
m_RayTracingAccelStructBuildFlags: 1
m_SmallMeshCulling: 1
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: 31321ba15b8f8eb4c954353edc038b1d, 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 &353004304
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 353004301}
m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0}
--- !u!4 &353004305
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 353004301}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 2, z: 4}
m_LocalScale: {x: 1, y: 2, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &353004306
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 353004301}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 46894d927b8e6654487b876457ca8974, type: 3}
m_Name:
m_EditorClassIdentifier:
hp: 100
--- !u!1 &851709644
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 851709645}
- component: {fileID: 851709648}
- component: {fileID: 851709647}
- component: {fileID: 851709646}
m_Layer: 0
m_Name: Pistol
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &851709645
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 851709644}
serializedVersion: 2
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0.5, y: -0.5, z: 0.5}
m_LocalScale: {x: 0.2, y: 0.2, z: 0.5}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 1183564512}
m_Father: {fileID: 1039096618}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &851709646
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 851709644}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 9b5e56940d7855caeb2d584265db0624, type: 3}
m_Name:
m_EditorClassIdentifier:
projectilePrefab: {fileID: 1562924000103655330, guid: bfe7100930f24fd52b5b66832f59cfa8, type: 3}
spawnPosition: {fileID: 1183564512}
fireRate: 1
--- !u!23 &851709647
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 851709644}
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_RayTracingAccelStructBuildFlagsOverride: 0
m_RayTracingAccelStructBuildFlags: 1
m_SmallMeshCulling: 1
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: 31321ba15b8f8eb4c954353edc038b1d, 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 &851709648
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 851709644}
m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0}
--- !u!4 &1039096618 stripped
Transform:
m_CorrespondingSourceObject: {fileID: 4506534449155536579, guid: 53e225dcb536a6f46b5844bb8db07fe4, type: 3}
m_PrefabInstance: {fileID: 3997104640432974468}
m_PrefabAsset: {fileID: 0}
--- !u!1 &1183564511
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1183564512}
m_Layer: 0
m_Name: Muzzle
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &1183564512
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1183564511}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0.5}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 851709645}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &1560783767
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1560783769}
- component: {fileID: 1560783768}
- component: {fileID: 1560783770}
m_Layer: 0
m_Name: Directional Light
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!108 &1560783768
Light:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1560783767}
m_Enabled: 0
serializedVersion: 11
m_Type: 1
m_Color: {r: 1, g: 0.95686275, b: 0.8392157, a: 1}
m_Intensity: 1
m_Range: 10
m_SpotAngle: 30
m_InnerSpotAngle: 21.80208
m_CookieSize: 10
m_Shadows:
m_Type: 2
m_Resolution: -1
m_CustomResolution: -1
m_Strength: 1
m_Bias: 0.05
m_NormalBias: 0.4
m_NearPlane: 0.2
m_CullingMatrixOverride:
e00: 1
e01: 0
e02: 0
e03: 0
e10: 0
e11: 1
e12: 0
e13: 0
e20: 0
e21: 0
e22: 1
e23: 0
e30: 0
e31: 0
e32: 0
e33: 1
m_UseCullingMatrixOverride: 0
m_Cookie: {fileID: 0}
m_DrawHalo: 0
m_Flare: {fileID: 0}
m_RenderMode: 0
m_CullingMask:
serializedVersion: 2
m_Bits: 4294967295
m_RenderingLayerMask: 1
m_Lightmapping: 4
m_LightShadowCasterMode: 0
m_AreaSize: {x: 1, y: 1}
m_BounceIntensity: 1
m_ColorTemperature: 6570
m_UseColorTemperature: 0
m_BoundingSphereOverride: {x: 0, y: 0, z: 0, w: 0}
m_UseBoundingSphereOverride: 0
m_UseViewFrustumForShadowCasterCull: 1
m_ForceVisible: 0
m_ShadowRadius: 0
m_ShadowAngle: 0
m_LightUnit: 1
m_LuxAtDistance: 1
m_EnableSpotReflector: 1
--- !u!4 &1560783769
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1560783767}
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_LocalEulerAnglesHint: {x: 50, y: -30, z: 0}
--- !u!114 &1560783770
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1560783767}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 474bcb49853aa07438625e644c072ee6, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Version: 3
m_UsePipelineSettings: 1
m_AdditionalLightsShadowResolutionTier: 2
m_LightLayerMask: 1
m_RenderingLayers: 1
m_CustomShadowLayers: 0
m_ShadowLayerMask: 1
m_ShadowRenderingLayers: 1
m_LightCookieSize: {x: 1, y: 1}
m_LightCookieOffset: {x: 0, y: 0}
m_SoftShadowQuality: 0
m_Modification:
serializedVersion: 3
m_TransformParent: {fileID: 0}
m_Modifications:
- target: {fileID: 4174800862365466133, guid: c70b322607b9da64382c966f9fdf41b1, type: 3}
propertyPath: m_LocalPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4174800862365466133, guid: c70b322607b9da64382c966f9fdf41b1, type: 3}
propertyPath: m_LocalPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4174800862365466133, guid: c70b322607b9da64382c966f9fdf41b1, type: 3}
propertyPath: m_LocalPosition.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4174800862365466133, guid: c70b322607b9da64382c966f9fdf41b1, type: 3}
propertyPath: m_LocalRotation.w
value: 1
objectReference: {fileID: 0}
- target: {fileID: 4174800862365466133, guid: c70b322607b9da64382c966f9fdf41b1, type: 3}
propertyPath: m_LocalRotation.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4174800862365466133, guid: c70b322607b9da64382c966f9fdf41b1, type: 3}
propertyPath: m_LocalRotation.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4174800862365466133, guid: c70b322607b9da64382c966f9fdf41b1, type: 3}
propertyPath: m_LocalRotation.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4174800862365466133, guid: c70b322607b9da64382c966f9fdf41b1, type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4174800862365466133, guid: c70b322607b9da64382c966f9fdf41b1, type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4174800862365466133, guid: c70b322607b9da64382c966f9fdf41b1, type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 8523789084967070956, guid: c70b322607b9da64382c966f9fdf41b1, type: 3}
propertyPath: m_Name
value: GameController
objectReference: {fileID: 0}
m_RemovedComponents: []
m_RemovedGameObjects: []
m_AddedGameObjects: []
m_AddedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: c70b322607b9da64382c966f9fdf41b1, type: 3}
--- !u!1 &1692628187
GameObject:
m_ObjectHideFlags: 0
@@ -663,17 +338,13 @@ PrefabInstance:
objectReference: {fileID: 0}
m_RemovedComponents: []
m_RemovedGameObjects: []
m_AddedGameObjects:
- targetCorrespondingSourceObject: {fileID: 4506534449155536579, guid: 53e225dcb536a6f46b5844bb8db07fe4, type: 3}
insertIndex: -1
addedObject: {fileID: 851709645}
m_AddedGameObjects: []
m_AddedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: 53e225dcb536a6f46b5844bb8db07fe4, type: 3}
--- !u!1660057539 &9223372036854775807
SceneRoots:
m_ObjectHideFlags: 0
m_Roots:
- {fileID: 1560783769}
- {fileID: 1692628191}
- {fileID: 3997104640432974468}
- {fileID: 353004305}
- {fileID: 1529331689}
+19 -3
View File
@@ -12,6 +12,7 @@ public class GameController : MonoBehaviour
public SceneAsset deployScene;
public List<LevelInfo> levels;
public List<EnemyInfo> enemies;
public Dictionary<BulletType, int> inventory = new();
public void Start() {
if (i) { Destroy(gameObject); return; }
@@ -25,7 +26,10 @@ public class GameController : MonoBehaviour
levels.ForEach(li => {
AddEnemyInLevel(SelectEnemyWeighted().prefab, li.scene.name);
});
foreach (BulletType i in Enum.GetValues(typeof(BulletType))) {
if (i == BulletType.None) continue;
inventory[i] = 10;
}
}
public Dictionary<GameObject, int> PopEnemies(string sceneName) {
@@ -72,6 +76,18 @@ public class GameController : MonoBehaviour
Cursor.lockState = locked ? CursorLockMode.Locked : CursorLockMode.None;
Cursor.visible = !locked;
}
public int GetBulletCount(BulletType bulletType) {
return inventory[bulletType];
}
public bool ConsumeBullet(BulletType bulletType, int n = 1) {
if (inventory[bulletType] >= n) {
inventory[bulletType] -= n;
return true;
}
return false;
}
}
[Serializable]
@@ -79,11 +95,11 @@ public struct LevelInfo {
public SceneAsset scene;
public int hp;
public int maxHp;
public FactoryType factory;
public BulletType factory;
public Dictionary<GameObject, int> enemies;
}
public enum FactoryType {
public enum BulletType {
None,
Rifle,
Rocket,
+21
View File
@@ -0,0 +1,21 @@
using UnityEngine;
public class Rifle : Weapon
{
public GameObject projectilePrefab;
public Transform spawnPosition;
public float fireRate = 3f;
[SerializeField] float currentDelay = 0;
public override void Shoot(bool keyDown, bool keyHold) {
if (keyHold && (fireRate == 0 || currentDelay >= 1 / fireRate) && GameController.i.ConsumeBullet(BulletType.Rifle)) {
Instantiate(projectilePrefab, spawnPosition.position, spawnPosition.rotation);
currentDelay = 0;
}
}
void Update() {
if (fireRate != 0) currentDelay = Mathf.Clamp(currentDelay += Time.deltaTime, 0, 1 / fireRate);
}
}
+2
View File
@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 4cc7bc1baad25a9459ee673b6d502363
+4 -3
View File
@@ -9,11 +9,12 @@ public class WeaponController : MonoBehaviour
void Start() {
weapons = GetComponentsInChildren<Weapon>();
if (weapons.Length > currentWeapon) weapons[currentWeapon].SetWeaponState(true);
for (int i = 0; i < weapons.Length; ++i) weapons[i].SetWeaponState(i == currentWeapon);
}
void Update() {
ChangeActiveWeapon((currentWeapon + (int)Input.mouseScrollDelta.y) % weapons.Length);
if (weapons.Length == 0) return;
ChangeActiveWeapon((currentWeapon + (int)Input.mouseScrollDelta.y + weapons.Length) % weapons.Length);
CheckButtonsForChangeWeapon();
if (Input.GetMouseButton(0) && weapons[currentWeapon].isActive) weapons[currentWeapon].Shoot(Input.GetMouseButtonDown(0), Input.GetMouseButton(0));
}
@@ -28,7 +29,7 @@ public class WeaponController : MonoBehaviour
void ChangeActiveWeapon(int ind) {
if (ind < 0 || ind >= weapons.Length || ind == currentWeapon) return;
weapons[currentWeapon].SetWeaponState(false);
weapons[ind].SetWeaponState(false);
weapons[ind].SetWeaponState(true);
currentWeapon = ind;
}
}