diff --git a/.vsconfig b/.vsconfig new file mode 100644 index 0000000..d70cd98 --- /dev/null +++ b/.vsconfig @@ -0,0 +1,6 @@ +{ + "version": "1.0", + "components": [ + "Microsoft.VisualStudio.Workload.ManagedGame" + ] +} diff --git a/Assets/ML-Agents/Timers/Greatest_map_ever_timers.json b/Assets/ML-Agents/Timers/Greatest_map_ever_timers.json index ed89e69..3ed5e46 100755 --- a/Assets/ML-Agents/Timers/Greatest_map_ever_timers.json +++ b/Assets/ML-Agents/Timers/Greatest_map_ever_timers.json @@ -1 +1 @@ -{"count":1,"self":19.9775968,"total":20.018629999999998,"children":{"InitializeActuators":{"count":1,"self":0.0010006,"total":0.0010006,"children":null},"AgentSendState":{"count":765,"self":0.0057472999999999995,"total":0.0057472999999999995,"children":null},"DecideAction":{"count":765,"self":0.0332866,"total":0.0332866,"children":null}},"gauges":{},"metadata":{"timer_format_version":"0.1.0","start_time_seconds":"1649742457","unity_version":"2019.4.35f1","command_line_arguments":"D:\\Unity\\2019.4.35f1\\Editor\\Unity.exe -projectpath C:\\Users\\kiril\\real-shooter -useHub -hubIPC -cloudEnvironment production -licensingIpc LicenseClient-kiril -hubSessionId 21e9de90-ba14-11ec-9398-079edccf5e34 -accessToken oIpf_7gKWQQRilVTeJehUsFhrxasdzsG_K3j5Swtgx0009f","communication_protocol_version":"1.5.0","com.unity.ml-agents_version":"2.0.1","scene_name":"Greatest_map_ever","end_time_seconds":"1649742477"}} \ No newline at end of file +{"count":1,"self":16.677081599999998,"total":16.6850819,"children":{"InitializeActuators":{"count":1,"self":0.0020011,"total":0.0020011,"children":null},"InitializeSensors":{"count":1,"self":0.0019998,"total":0.0019998,"children":null},"AgentSendState":{"count":1,"self":0.0020001,"total":0.0030001,"children":{"CollectObservations":{"count":1,"self":0.001,"total":0.001,"children":null}}}},"gauges":{},"metadata":{"timer_format_version":"0.1.0","start_time_seconds":"1650121997","unity_version":"2019.4.35f1","command_line_arguments":"C:\\Program Files\\unityeditorfolder\\2019.4.35f1\\Editor\\Unity.exe -projectpath F:\\SigmaRiskManagment\\real shooter Git Version -useHub -hubIPC -cloudEnvironment production -licensingIpc LicenseClient-BipJTP5Uk-fN-2Lss2TUJ -hubSessionId a1fe6f50-bcbd-11ec-b648-df8ff5c97a4c -accessToken K_G64_ace_5LgpX3riGrgGS92ESag4RH04Ti1lswMX8009f","communication_protocol_version":"1.5.0","com.unity.ml-agents_version":"2.0.1","scene_name":"Greatest_map_ever","end_time_seconds":"1650122013"}} \ No newline at end of file diff --git a/Assets/Prefabs/Bot.prefab b/Assets/Prefabs/Bot.prefab index af42c97..c15183f 100755 --- a/Assets/Prefabs/Bot.prefab +++ b/Assets/Prefabs/Bot.prefab @@ -13,6 +13,10 @@ GameObject: - component: {fileID: 2988578997639256868} - component: {fileID: 2988578997639256875} - component: {fileID: 5447337162552783061} + - component: {fileID: 7805954453358028498} + - component: {fileID: 2676446634235362783} + - component: {fileID: 8656710265340117963} + - component: {fileID: 778652956973742106} m_Layer: 0 m_Name: Bot m_TagString: Untagged @@ -107,7 +111,87 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: a6f2a081cfc8c4b4bb6864331109d147, type: 3} m_Name: m_EditorClassIdentifier: - HealthPoints: 100 - Armour: 100 - Ammunition: 360 - LastTimeHit: 0 + agentParameters: + maxStep: 0 + hasUpgradedFromAgentParameters: 1 + MaxStep: 100 + moveController: {fileID: 778652956973742106} +--- !u!114 &7805954453358028498 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2988578997639256874} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 3a5c9d521e5ef4759a8246a07d52221e, type: 3} + m_Name: + m_EditorClassIdentifier: + DecisionPeriod: 1 + TakeActionsBetweenDecisions: 1 +--- !u!114 &2676446634235362783 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2988578997639256874} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5d1c4e0b1822b495aa52bc52839ecb30, type: 3} + m_Name: + m_EditorClassIdentifier: + m_BrainParameters: + VectorObservationSize: 1 + NumStackedVectorObservations: 1 + m_ActionSpec: + m_NumContinuousActions: 0 + BranchSizes: 01000000 + VectorActionSize: 01000000 + VectorActionDescriptions: [] + VectorActionSpaceType: 0 + hasUpgradedBrainParametersWithActionSpec: 1 + m_Model: {fileID: 0} + m_InferenceDevice: 0 + m_BehaviorType: 0 + m_BehaviorName: My Behavior + TeamId: 0 + m_UseChildSensors: 1 + m_UseChildActuators: 1 + m_ObservableAttributeHandling: 0 +--- !u!195 &8656710265340117963 +NavMeshAgent: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2988578997639256874} + 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: 1 + m_WalkableMask: 4294967295 + m_ObstacleAvoidanceType: 4 +--- !u!114 &778652956973742106 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2988578997639256874} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d3ebcf807a37f344998fd648dfc9376d, type: 3} + m_Name: + m_EditorClassIdentifier: + navMeshAgent: {fileID: 8656710265340117963} diff --git a/Assets/Prefabs/Player.prefab b/Assets/Prefabs/Player.prefab index 12f07c4..c798d61 100755 --- a/Assets/Prefabs/Player.prefab +++ b/Assets/Prefabs/Player.prefab @@ -1,6 +1,6 @@ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: ---- !u!1 &4528203470433968325 +--- !u!1 &5245491127989480125 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} @@ -8,98 +8,15 @@ GameObject: m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - - component: {fileID: 4528203470433968376} - - component: {fileID: 4528203470433968327} - - component: {fileID: 4528203470433968326} - m_Layer: 8 - m_Name: Camera - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &4528203470433968376 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 4528203470433968325} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0.734, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_Children: [] - m_Father: {fileID: 4528203471293941515} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!20 &4528203470433968327 -Camera: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 4528203470433968325} - m_Enabled: 1 - serializedVersion: 2 - m_ClearFlags: 1 - m_BackGroundColor: {r: 0.19215687, g: 0.3019608, b: 0.4745098, a: 0} - m_projectionMatrixMode: 1 - m_GateFitMode: 2 - m_FOVAxisMode: 0 - m_SensorSize: {x: 36, y: 24} - m_LensShift: {x: 0, y: 0} - m_FocalLength: 50 - m_NormalizedViewPortRect: - serializedVersion: 2 - x: 0 - y: 0 - width: 1 - height: 1 - near clip plane: 0.3 - far clip plane: 1000 - field of view: 60 - orthographic: 0 - orthographic size: 5 - m_Depth: 0 - m_CullingMask: - serializedVersion: 2 - m_Bits: 4294967295 - m_RenderingPath: -1 - m_TargetTexture: {fileID: 0} - m_TargetDisplay: 0 - m_TargetEye: 3 - m_HDR: 1 - m_AllowMSAA: 1 - m_AllowDynamicResolution: 0 - m_ForceIntoRT: 0 - m_OcclusionCulling: 1 - m_StereoConvergence: 10 - m_StereoSeparation: 0.022 ---- !u!81 &4528203470433968326 -AudioListener: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 4528203470433968325} - m_Enabled: 1 ---- !u!1 &4528203470625763699 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 4528203470625763689} - - component: {fileID: 4528203470625763688} - - component: {fileID: -4942972567661207728} - - component: {fileID: 4528203470625763702} - - component: {fileID: 4528203470625763690} - - component: {fileID: 4528203470625763703} - - component: {fileID: 4528203470625763701} - - component: {fileID: 4528203470625763700} - - component: {fileID: 1061105263471521090} + - component: {fileID: 5245491127989480103} + - component: {fileID: 5245491127989480102} + - component: {fileID: 5583297852527723678} + - component: {fileID: 5245491127989480120} + - component: {fileID: 5245491127989480100} + - component: {fileID: 5245491127989480121} + - component: {fileID: 5245491127989480123} + - component: {fileID: 5245491127989480122} + - component: {fileID: 4890899368932544690} m_Layer: 8 m_Name: Player m_TagString: Defender @@ -107,37 +24,37 @@ GameObject: m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 ---- !u!4 &4528203470625763689 +--- !u!4 &5245491127989480103 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 4528203470625763699} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 28.21, y: 14.12, z: 48.395} + m_GameObject: {fileID: 5245491127989480125} + m_LocalRotation: {x: 0, y: 0.7071068, z: 0, w: 0.7071068} + m_LocalPosition: {x: 28.21, y: 10.9, z: 46.67} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - - {fileID: 4528203471293941515} - - {fileID: 4528203471164033737} + - {fileID: 5245491129196666053} + - {fileID: 5245491129603592455} m_Father: {fileID: 0} m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!33 &4528203470625763688 + m_LocalEulerAnglesHint: {x: 0, y: 90, z: 0} +--- !u!33 &5245491127989480102 MeshFilter: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 4528203470625763699} + m_GameObject: {fileID: 5245491127989480125} m_Mesh: {fileID: 10208, guid: 0000000000000000e000000000000000, type: 0} ---- !u!23 &-4942972567661207728 +--- !u!23 &5583297852527723678 MeshRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 4528203470625763699} + m_GameObject: {fileID: 5245491127989480125} m_Enabled: 1 m_CastShadows: 1 m_ReceiveShadows: 1 @@ -170,13 +87,13 @@ MeshRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 ---- !u!136 &4528203470625763702 +--- !u!136 &5245491127989480120 CapsuleCollider: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 4528203470625763699} + m_GameObject: {fileID: 5245491127989480125} m_Material: {fileID: 0} m_IsTrigger: 0 m_Enabled: 0 @@ -184,13 +101,13 @@ CapsuleCollider: m_Height: 2 m_Direction: 1 m_Center: {x: 0, y: 0, z: 0} ---- !u!136 &4528203470625763690 +--- !u!136 &5245491127989480100 CapsuleCollider: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 4528203470625763699} + m_GameObject: {fileID: 5245491127989480125} m_Material: {fileID: 0} m_IsTrigger: 0 m_Enabled: 0 @@ -198,13 +115,13 @@ CapsuleCollider: m_Height: 1.3 m_Direction: 1 m_Center: {x: 0, y: -0.35, z: 0} ---- !u!136 &4528203470625763703 +--- !u!136 &5245491127989480121 CapsuleCollider: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 4528203470625763699} + m_GameObject: {fileID: 5245491127989480125} m_Material: {fileID: 0} m_IsTrigger: 0 m_Enabled: 1 @@ -212,13 +129,13 @@ CapsuleCollider: m_Height: 0.8 m_Direction: 1 m_Center: {x: 0, y: -0.6, z: 0} ---- !u!143 &4528203470625763701 +--- !u!143 &5245491127989480123 CharacterController: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 4528203470625763699} + m_GameObject: {fileID: 5245491127989480125} m_Material: {fileID: 0} m_IsTrigger: 0 m_Enabled: 1 @@ -230,20 +147,21 @@ CharacterController: m_SkinWidth: 0.08 m_MinMoveDistance: 0.001 m_Center: {x: 0, y: 0, z: 0} ---- !u!114 &4528203470625763700 +--- !u!114 &5245491127989480122 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 4528203470625763699} + m_GameObject: {fileID: 5245491127989480125} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 9826297ef4d853741b2af768441ec7f7, type: 3} m_Name: m_EditorClassIdentifier: - cameraHolder: {fileID: 4528203471293941515} - feetTransform: {fileID: 4528203471164033737} + input_View: {x: 0, y: 0} + cameraHolder: {fileID: 5245491129196666053} + feetTransform: {fileID: 5245491129603592455} playerSettings: ViewXSensetivity: 20 ViewYSensetivity: 20 @@ -271,31 +189,31 @@ MonoBehaviour: gravityAmount: 0.05 gravityMin: -3 jumpingForce: {x: 0, y: 0, z: 0} - playerStance: 2 + playerStance: 0 playerStanceSmoothing: 0.2 playerStandStance: CameraHeight: 0.7 - StanceCollider: {fileID: 4528203470625763702} + StanceCollider: {fileID: 5245491127989480120} playerCrouchStance: - CameraHeight: 0 - StanceCollider: {fileID: 4528203470625763690} + CameraHeight: 0.3 + StanceCollider: {fileID: 5245491127989480100} playerProneStance: CameraHeight: -0.58 - StanceCollider: {fileID: 4528203470625763703} ---- !u!114 &1061105263471521090 + StanceCollider: {fileID: 5245491127989480121} + currentWeapon: {fileID: 8510909888689775086} +--- !u!114 &4890899368932544690 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 4528203470625763699} + m_GameObject: {fileID: 5245491127989480125} m_Enabled: 1 m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: a6f2a081cfc8c4b4bb6864331109d147, type: 3} + m_Script: {fileID: 11500000, guid: a8c9a8e604d395c4ab9d03d28adc4982, type: 3} m_Name: m_EditorClassIdentifier: - LastTimeHit: 0 ---- !u!1 &4528203471164033736 +--- !u!1 &5245491128202443531 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} @@ -303,29 +221,82 @@ GameObject: m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - - component: {fileID: 4528203471164033737} + - component: {fileID: 5245491128202443574} + - component: {fileID: 5245491128202443529} + - component: {fileID: 5245491128202443528} m_Layer: 8 - m_Name: FeetTransform + m_Name: Camera m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 ---- !u!4 &4528203471164033737 +--- !u!4 &5245491128202443574 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 4528203471164033736} + m_GameObject: {fileID: 5245491128202443531} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: -1, z: 0} + m_LocalPosition: {x: 0, y: 0.388, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] - m_Father: {fileID: 4528203470625763689} - m_RootOrder: 1 + m_Father: {fileID: 5245491129196666053} + m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!1 &4528203471293941514 +--- !u!20 &5245491128202443529 +Camera: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5245491128202443531} + m_Enabled: 1 + serializedVersion: 2 + m_ClearFlags: 1 + m_BackGroundColor: {r: 0.19215687, g: 0.3019608, b: 0.4745098, a: 0} + m_projectionMatrixMode: 1 + m_GateFitMode: 2 + m_FOVAxisMode: 0 + m_SensorSize: {x: 36, y: 24} + m_LensShift: {x: 0, y: 0} + m_FocalLength: 50 + m_NormalizedViewPortRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 1 + height: 1 + near clip plane: 0.1 + far clip plane: 1000 + field of view: 60 + orthographic: 0 + orthographic size: 5 + m_Depth: 0 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RenderingPath: -1 + m_TargetTexture: {fileID: 0} + m_TargetDisplay: 0 + m_TargetEye: 3 + m_HDR: 1 + m_AllowMSAA: 1 + m_AllowDynamicResolution: 0 + m_ForceIntoRT: 0 + m_OcclusionCulling: 1 + m_StereoConvergence: 10 + m_StereoSeparation: 0.022 +--- !u!81 &5245491128202443528 +AudioListener: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5245491128202443531} + m_Enabled: 1 +--- !u!1 &5245491129196666052 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} @@ -333,7 +304,7 @@ GameObject: m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - - component: {fileID: 4528203471293941515} + - component: {fileID: 5245491129196666053} m_Layer: 8 m_Name: CameraHolder m_TagString: Untagged @@ -341,18 +312,194 @@ GameObject: m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 ---- !u!4 &4528203471293941515 +--- !u!4 &5245491129196666053 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 4528203471293941514} + m_GameObject: {fileID: 5245491129196666052} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0.7, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - - {fileID: 4528203470433968376} - m_Father: {fileID: 4528203470625763689} + - {fileID: 5245491128202443574} + - {fileID: 8510909888689775087} + m_Father: {fileID: 5245491127989480103} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &5245491129603592454 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5245491129603592455} + m_Layer: 8 + m_Name: FeetTransform + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &5245491129603592455 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5245491129603592454} + 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_Children: [] + m_Father: {fileID: 5245491127989480103} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &8510909888198732725 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 8510909888198732726} + - component: {fileID: 8510909888198732713} + - component: {fileID: 8510909888198732712} + - component: {fileID: 8510909888198732727} + m_Layer: 8 + m_Name: WeaponModel + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &8510909888198732726 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8510909888198732725} + 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_Children: [] + m_Father: {fileID: 8510909888689775087} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &8510909888198732713 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8510909888198732725} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!23 &8510909888198732712 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8510909888198732725} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0} + 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 +--- !u!65 &8510909888198732727 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8510909888198732725} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 2 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!1 &8510909888689775085 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 8510909888689775087} + - component: {fileID: 8510909888689775086} + m_Layer: 8 + m_Name: Weapon + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &8510909888689775087 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8510909888689775085} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0.332, y: 0.038, z: 0.394} + m_LocalScale: {x: 0.16226998, y: 0.1581135, z: 1} + m_Children: + - {fileID: 8510909888198732726} + m_Father: {fileID: 5245491129196666053} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &8510909888689775086 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8510909888689775085} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 088bf904d7c90a44dbb35c1d47c2692e, type: 3} + m_Name: + m_EditorClassIdentifier: + settings: + SwayAmount: 4 + SwayYInverted: 0 + SwayXInverted: 0 + SwaySmoothing: 0.1 + SwayResetSmoothing: 0.1 + SwayClampX: 8 + SwayClampY: 8 diff --git a/Assets/Scenes/Greatest_map_ever/Greatest_map_ever.unity b/Assets/Scenes/Greatest_map_ever/Greatest_map_ever.unity index f0304dc..41d83a6 100755 --- a/Assets/Scenes/Greatest_map_ever/Greatest_map_ever.unity +++ b/Assets/Scenes/Greatest_map_ever/Greatest_map_ever.unity @@ -38,7 +38,7 @@ RenderSettings: m_ReflectionIntensity: 1 m_CustomReflection: {fileID: 0} m_Sun: {fileID: 705507994} - m_IndirectSpecularColor: {r: 0.44657826, g: 0.49641263, b: 0.57481676, a: 1} + m_IndirectSpecularColor: {r: 0.44657898, g: 0.4964133, b: 0.5748178, a: 1} m_UseRadianceAmbientProbe: 0 --- !u!157 &3 LightmapSettings: @@ -107,7 +107,7 @@ NavMeshSettings: serializedVersion: 2 agentTypeID: 0 agentRadius: 0.5 - agentHeight: 2 + agentHeight: 3 agentSlope: 0 agentClimb: 0 ledgeDropHeight: 0 @@ -120,8 +120,8 @@ NavMeshSettings: accuratePlacement: 0 debug: m_Flags: 0 - m_NavMeshData: {fileID: 23800000, guid: 09beff657ef5d1c4eba194a01e121c1a, type: 2} ---- !u!1 &120549363 + m_NavMeshData: {fileID: 23800000, guid: 305bb221606d7a748acca94156e2d347, type: 2} +--- !u!1 &129751243 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} @@ -129,51 +129,279 @@ GameObject: m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - - component: {fileID: 120549365} - - component: {fileID: 120549364} + - component: {fileID: 129751244} + - component: {fileID: 129751247} + - component: {fileID: 129751246} + - component: {fileID: 129751245} m_Layer: 0 - m_Name: NavMeshAgent + m_Name: Cube (8) m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 + m_StaticEditorFlags: 8 m_IsActive: 1 ---- !u!195 &120549364 -NavMeshAgent: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 120549363} - 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!4 &120549365 +--- !u!4 &129751244 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 120549363} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 19.553204, y: 6.782543, z: -39.4} - m_LocalScale: {x: 1, y: 1, z: 1} + m_GameObject: {fileID: 129751243} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 35.062397, y: 3, z: -40.5} + m_LocalScale: {x: 1, y: 4, z: 10} m_Children: [] - m_Father: {fileID: 0} - m_RootOrder: 5 + m_Father: {fileID: 671439045} + m_RootOrder: 7 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!65 &129751245 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 129751243} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 2 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!23 &129751246 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 129751243} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0} + 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 +--- !u!33 &129751247 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 129751243} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!1 &140697604 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 140697605} + - component: {fileID: 140697608} + - component: {fileID: 140697607} + - component: {fileID: 140697606} + m_Layer: 0 + m_Name: navpoint1 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &140697605 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 140697604} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 50, y: 2, z: -23.5633} + m_LocalScale: {x: 1.4367, y: 1.4367, z: 1.4367} + m_Children: [] + m_Father: {fileID: 1553331020} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &140697606 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 140697604} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 6a2d29bfc31a8cf4e831e3bb80720414, type: 3} + m_Name: + m_EditorClassIdentifier: + DeathAttr: 0 + EnemiesSeen: [] +--- !u!23 &140697607 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 140697604} + m_Enabled: 0 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 536ae120520e6f245bad32b94a03f6a2, 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 +--- !u!33 &140697608 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 140697604} + m_Mesh: {fileID: 10206, guid: 0000000000000000e000000000000000, type: 0} +--- !u!1 &293522538 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 293522539} + - component: {fileID: 293522542} + - component: {fileID: 293522541} + - component: {fileID: 293522540} + m_Layer: 0 + m_Name: navpoint2 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &293522539 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 293522538} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 50, y: 2, z: -26.4367} + m_LocalScale: {x: 1.4367, y: 1.4367, z: 1.4367} + m_Children: [] + m_Father: {fileID: 884498020} + m_RootOrder: 2 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &293522540 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 293522538} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 6a2d29bfc31a8cf4e831e3bb80720414, type: 3} + m_Name: + m_EditorClassIdentifier: + DeathAttr: 0 + EnemiesSeen: [] +--- !u!23 &293522541 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 293522538} + m_Enabled: 0 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 536ae120520e6f245bad32b94a03f6a2, 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 +--- !u!33 &293522542 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 293522538} + m_Mesh: {fileID: 10206, guid: 0000000000000000e000000000000000, type: 0} --- !u!1 &350524552 GameObject: m_ObjectHideFlags: 0 @@ -582,6 +810,192 @@ MeshFilter: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 485693490} m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!1 &577106247 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 577106248} + - component: {fileID: 577106251} + - component: {fileID: 577106250} + - component: {fileID: 577106249} + m_Layer: 0 + m_Name: Cube + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 40 + m_IsActive: 1 +--- !u!4 &577106248 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 577106247} + m_LocalRotation: {x: -0, y: 0.7071068, z: -0, w: 0.7071068} + m_LocalPosition: {x: 50, y: 1.6, z: -25} + m_LocalScale: {x: 0.3, y: 1.2, z: 3} + m_Children: [] + m_Father: {fileID: 884498020} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 90, z: 0} +--- !u!65 &577106249 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 577106247} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 2 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!23 &577106250 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 577106247} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0} + 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 +--- !u!33 &577106251 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 577106247} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!1 &597099256 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 597099257} + - component: {fileID: 597099260} + - component: {fileID: 597099259} + - component: {fileID: 597099258} + m_Layer: 0 + m_Name: Cube + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 40 + m_IsActive: 1 +--- !u!4 &597099257 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 597099256} + m_LocalRotation: {x: -0, y: 0.7071068, z: -0, w: 0.7071068} + m_LocalPosition: {x: 50, y: 1.6, z: -25} + m_LocalScale: {x: 0.3, y: 1.2, z: 3} + m_Children: [] + m_Father: {fileID: 1553331020} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 90, z: 0} +--- !u!65 &597099258 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 597099256} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 2 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!23 &597099259 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 597099256} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0} + 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 +--- !u!33 &597099260 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 597099256} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} --- !u!1 &671439044 GameObject: m_ObjectHideFlags: 0 @@ -616,6 +1030,7 @@ Transform: - {fileID: 2114154252} - {fileID: 1634312759} - {fileID: 1184553411} + - {fileID: 129751244} m_Father: {fileID: 350524557} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} @@ -711,99 +1126,6 @@ Transform: m_Father: {fileID: 0} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 50, y: -30, z: 0} ---- !u!1 &771417842 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 771417843} - - component: {fileID: 771417846} - - component: {fileID: 771417845} - - component: {fileID: 771417844} - m_Layer: 0 - m_Name: Cube - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &771417843 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 771417842} - m_LocalRotation: {x: -0, y: 0.7071068, z: -0, w: 0.7071068} - m_LocalPosition: {x: 50, y: 1.6, z: -25} - m_LocalScale: {x: 0.3, y: 1.2, z: 3} - m_Children: [] - m_Father: {fileID: 994783512} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 90, z: 0} ---- !u!65 &771417844 -BoxCollider: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 771417842} - m_Material: {fileID: 0} - m_IsTrigger: 0 - m_Enabled: 1 - serializedVersion: 2 - m_Size: {x: 1, y: 1, z: 1} - m_Center: {x: 0, y: 0, z: 0} ---- !u!23 &771417845 -MeshRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 771417842} - m_Enabled: 1 - m_CastShadows: 1 - m_ReceiveShadows: 1 - m_DynamicOccludee: 1 - m_MotionVectors: 1 - m_LightProbeUsage: 1 - m_ReflectionProbeUsage: 1 - m_RayTracingMode: 2 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0} - 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 ---- !u!33 &771417846 -MeshFilter: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 771417842} - m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} --- !u!1 &782729760 GameObject: m_ObjectHideFlags: 0 @@ -831,7 +1153,8 @@ Transform: m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - - {fileID: 994783512} + - {fileID: 884498020} + - {fileID: 1553331020} m_Father: {fileID: 350524557} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} @@ -928,7 +1251,7 @@ Transform: m_Father: {fileID: 671439045} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 90, z: 0} ---- !u!1 &870500964 +--- !u!1 &884498019 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} @@ -936,193 +1259,7 @@ GameObject: m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - - component: {fileID: 870500965} - - component: {fileID: 870500968} - - component: {fileID: 870500967} - - component: {fileID: 870500966} - m_Layer: 0 - m_Name: navpoint1 - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &870500965 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 870500964} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 50, y: 2, z: -23.5633} - m_LocalScale: {x: 1.4367, y: 1.4367, z: 1.4367} - m_Children: [] - m_Father: {fileID: 994783512} - m_RootOrder: 1 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!114 &870500966 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 870500964} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 6a2d29bfc31a8cf4e831e3bb80720414, type: 3} - m_Name: - m_EditorClassIdentifier: - PointId: 1 ---- !u!23 &870500967 -MeshRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 870500964} - m_Enabled: 0 - m_CastShadows: 1 - m_ReceiveShadows: 1 - m_DynamicOccludee: 1 - m_MotionVectors: 1 - m_LightProbeUsage: 1 - m_ReflectionProbeUsage: 1 - m_RayTracingMode: 2 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 2100000, guid: 536ae120520e6f245bad32b94a03f6a2, 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 ---- !u!33 &870500968 -MeshFilter: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 870500964} - m_Mesh: {fileID: 10206, guid: 0000000000000000e000000000000000, type: 0} ---- !u!1 &988026646 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 988026647} - - component: {fileID: 988026650} - - component: {fileID: 988026649} - - component: {fileID: 988026648} - m_Layer: 0 - m_Name: navpoint2 - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &988026647 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 988026646} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 50, y: 2, z: -26.4367} - m_LocalScale: {x: 1.4367, y: 1.4367, z: 1.4367} - m_Children: [] - m_Father: {fileID: 994783512} - m_RootOrder: 2 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!114 &988026648 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 988026646} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 6a2d29bfc31a8cf4e831e3bb80720414, type: 3} - m_Name: - m_EditorClassIdentifier: - PointId: 1 ---- !u!23 &988026649 -MeshRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 988026646} - m_Enabled: 0 - m_CastShadows: 1 - m_ReceiveShadows: 1 - m_DynamicOccludee: 1 - m_MotionVectors: 1 - m_LightProbeUsage: 1 - m_ReflectionProbeUsage: 1 - m_RayTracingMode: 2 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 2100000, guid: 536ae120520e6f245bad32b94a03f6a2, 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 ---- !u!33 &988026650 -MeshFilter: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 988026646} - m_Mesh: {fileID: 10206, guid: 0000000000000000e000000000000000, type: 0} ---- !u!1 &994783511 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 994783512} + - component: {fileID: 884498020} m_Layer: 0 m_Name: Cover m_TagString: Untagged @@ -1130,185 +1267,23 @@ GameObject: m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 ---- !u!4 &994783512 +--- !u!4 &884498020 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 994783511} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} + m_GameObject: {fileID: 884498019} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: -3} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - - {fileID: 771417843} - - {fileID: 870500965} - - {fileID: 988026647} + - {fileID: 577106248} + - {fileID: 1663305222} + - {fileID: 293522539} m_Father: {fileID: 782729761} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!1001 &1061293905 -PrefabInstance: - m_ObjectHideFlags: 0 - serializedVersion: 2 - m_Modification: - m_TransformParent: {fileID: 0} - m_Modifications: - - target: {fileID: 2836004473841745626, guid: f432554f564e69242897607d34218939, - type: 3} - propertyPath: m_Controller - value: - objectReference: {fileID: 9100000, guid: 95a44e56d04c7d248ba723eda9611c51, type: 2} - - target: {fileID: 2836004475591197023, guid: f432554f564e69242897607d34218939, - type: 3} - propertyPath: m_RootOrder - value: 6 - objectReference: {fileID: 0} - - target: {fileID: 2836004475591197023, guid: f432554f564e69242897607d34218939, - type: 3} - propertyPath: m_LocalPosition.x - value: 13.8 - objectReference: {fileID: 0} - - target: {fileID: 2836004475591197023, guid: f432554f564e69242897607d34218939, - type: 3} - propertyPath: m_LocalPosition.y - value: 1.22 - objectReference: {fileID: 0} - - target: {fileID: 2836004475591197023, guid: f432554f564e69242897607d34218939, - type: 3} - propertyPath: m_LocalPosition.z - value: -11.53 - objectReference: {fileID: 0} - - target: {fileID: 2836004475591197023, guid: f432554f564e69242897607d34218939, - type: 3} - propertyPath: m_LocalRotation.w - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 2836004475591197023, guid: f432554f564e69242897607d34218939, - type: 3} - propertyPath: m_LocalRotation.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 2836004475591197023, guid: f432554f564e69242897607d34218939, - type: 3} - propertyPath: m_LocalRotation.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 2836004475591197023, guid: f432554f564e69242897607d34218939, - type: 3} - propertyPath: m_LocalRotation.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 2836004475591197023, guid: f432554f564e69242897607d34218939, - type: 3} - propertyPath: m_LocalEulerAnglesHint.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 2836004475591197023, guid: f432554f564e69242897607d34218939, - type: 3} - propertyPath: m_LocalEulerAnglesHint.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 2836004475591197023, guid: f432554f564e69242897607d34218939, - type: 3} - propertyPath: m_LocalEulerAnglesHint.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 2836004475591695743, guid: f432554f564e69242897607d34218939, - type: 3} - propertyPath: m_Name - value: DragonFucker - objectReference: {fileID: 0} - m_RemovedComponents: [] - m_SourcePrefab: {fileID: 100100000, guid: f432554f564e69242897607d34218939, type: 3} ---- !u!1 &1061293906 stripped -GameObject: - m_CorrespondingSourceObject: {fileID: 2836004475591695743, guid: f432554f564e69242897607d34218939, - type: 3} - m_PrefabInstance: {fileID: 1061293905} - m_PrefabAsset: {fileID: 0} ---- !u!64 &1061293907 -MeshCollider: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1061293906} - m_Material: {fileID: 0} - m_IsTrigger: 0 - m_Enabled: 1 - serializedVersion: 4 - m_Convex: 0 - m_CookingOptions: 30 - m_Mesh: {fileID: 0} ---- !u!136 &1061293908 -CapsuleCollider: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1061293906} - m_Material: {fileID: 0} - m_IsTrigger: 0 - m_Enabled: 1 - m_Radius: 0.5 - m_Height: 1 - m_Direction: 1 - m_Center: {x: 0, y: 1, z: 0} ---- !u!114 &1061293909 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1061293906} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 9826297ef4d853741b2af768441ec7f7, type: 3} - m_Name: - m_EditorClassIdentifier: - input_View: {x: 0, y: 0} - cameraHolder: {fileID: 0} - feetTransform: {fileID: 0} - playerSettings: - ViewXSensetivity: 0 - ViewYSensetivity: 0 - ViewXInverted: 0 - ViewYInverted: 0 - SprintingHold: 0 - MovementSmoothing: 0 - RunningForwardSpeed: 0 - RunningStrafeSpeed: 0 - WalkingForwardSpeed: 0 - WalkingBackwardSpeed: 0 - WalkingStrafeSpeed: 0 - JumpingHeight: 0 - JumpingFalloff: 0 - FallingSmoothing: 0 - SpeedEffector: 1 - CrouchSpeedEffector: 0 - ProneSpeedEffector: 0 - FallingSpeedEffector: 0 - ViewClampYMin: -70 - ViewClampYMax: 80 - playerMask: - serializedVersion: 2 - m_Bits: 0 - gravityAmount: 0 - gravityMin: 0 - jumpingForce: {x: 0, y: 0, z: 0} - playerStance: 0 - playerStanceSmoothing: 0 - playerStandStance: - CameraHeight: 0 - StanceCollider: {fileID: 0} - playerCrouchStance: - CameraHeight: 0 - StanceCollider: {fileID: 0} - playerProneStance: - CameraHeight: 0 - StanceCollider: {fileID: 0} - currentWeapon: {fileID: 0} --- !u!1 &1116745543 GameObject: m_ObjectHideFlags: 0 @@ -1323,7 +1298,7 @@ GameObject: - component: {fileID: 1116745544} m_Layer: 0 m_Name: navpoint2 - m_TagString: Untagged + m_TagString: Point m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 @@ -1340,7 +1315,8 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 6a2d29bfc31a8cf4e831e3bb80720414, type: 3} m_Name: m_EditorClassIdentifier: - PointId: 1 + DeathAttr: 0 + EnemiesSeen: [] --- !u!23 &1116745545 MeshRenderer: m_ObjectHideFlags: 0 @@ -1501,7 +1477,7 @@ Mesh: m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_Name: pb_Mesh16866 + m_Name: pb_Mesh17416 serializedVersion: 10 m_SubMeshes: - serializedVersion: 2 @@ -1756,7 +1732,7 @@ GameObject: - component: {fileID: 1345085342} m_Layer: 0 m_Name: navpoint1 - m_TagString: Untagged + m_TagString: Point m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 @@ -1787,7 +1763,8 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 6a2d29bfc31a8cf4e831e3bb80720414, type: 3} m_Name: m_EditorClassIdentifier: - PointId: 1 + DeathAttr: 0 + EnemiesSeen: [] --- !u!23 &1345085343 MeshRenderer: m_ObjectHideFlags: 0 @@ -1835,6 +1812,133 @@ MeshFilter: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1345085340} m_Mesh: {fileID: 10206, guid: 0000000000000000e000000000000000, type: 0} +--- !u!1 &1488699521 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1488699522} + - component: {fileID: 1488699525} + - component: {fileID: 1488699524} + - component: {fileID: 1488699523} + m_Layer: 0 + m_Name: navpoint2 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1488699522 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1488699521} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 50, y: 2, z: -26.4367} + m_LocalScale: {x: 1.4367, y: 1.4367, z: 1.4367} + m_Children: [] + m_Father: {fileID: 1553331020} + m_RootOrder: 2 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &1488699523 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1488699521} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 6a2d29bfc31a8cf4e831e3bb80720414, type: 3} + m_Name: + m_EditorClassIdentifier: + DeathAttr: 0 + EnemiesSeen: [] +--- !u!23 &1488699524 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1488699521} + m_Enabled: 0 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 536ae120520e6f245bad32b94a03f6a2, 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 +--- !u!33 &1488699525 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1488699521} + m_Mesh: {fileID: 10206, guid: 0000000000000000e000000000000000, type: 0} +--- !u!1 &1553331019 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1553331020} + m_Layer: 0 + m_Name: Cover (1) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1553331020 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1553331019} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: -6.78} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 597099257} + - {fileID: 140697605} + - {fileID: 1488699522} + m_Father: {fileID: 782729761} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &1634312758 GameObject: m_ObjectHideFlags: 0 @@ -1928,90 +2032,100 @@ MeshFilter: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1634312758} m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} ---- !u!1001 &1809549197 -PrefabInstance: +--- !u!1 &1663305221 +GameObject: m_ObjectHideFlags: 0 - serializedVersion: 2 - m_Modification: - m_TransformParent: {fileID: 0} - m_Modifications: - - target: {fileID: 4528203470625763689, guid: 99bb17a23a489624baeaf337f91a4f84, - type: 3} - propertyPath: m_RootOrder - value: 7 - objectReference: {fileID: 0} - - target: {fileID: 4528203470625763689, guid: 99bb17a23a489624baeaf337f91a4f84, - type: 3} - propertyPath: m_LocalPosition.x - value: 40.27 - objectReference: {fileID: 0} - - target: {fileID: 4528203470625763689, guid: 99bb17a23a489624baeaf337f91a4f84, - type: 3} - propertyPath: m_LocalPosition.y - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 4528203470625763689, guid: 99bb17a23a489624baeaf337f91a4f84, - type: 3} - propertyPath: m_LocalPosition.z - value: -15.91 - objectReference: {fileID: 0} - - target: {fileID: 4528203470625763689, guid: 99bb17a23a489624baeaf337f91a4f84, - type: 3} - propertyPath: m_LocalRotation.w - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 4528203470625763689, guid: 99bb17a23a489624baeaf337f91a4f84, - type: 3} - propertyPath: m_LocalRotation.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 4528203470625763689, guid: 99bb17a23a489624baeaf337f91a4f84, - type: 3} - propertyPath: m_LocalRotation.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 4528203470625763689, guid: 99bb17a23a489624baeaf337f91a4f84, - type: 3} - propertyPath: m_LocalRotation.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 4528203470625763689, guid: 99bb17a23a489624baeaf337f91a4f84, - type: 3} - propertyPath: m_LocalEulerAnglesHint.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 4528203470625763689, guid: 99bb17a23a489624baeaf337f91a4f84, - type: 3} - propertyPath: m_LocalEulerAnglesHint.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 4528203470625763689, guid: 99bb17a23a489624baeaf337f91a4f84, - type: 3} - propertyPath: m_LocalEulerAnglesHint.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 4528203470625763699, guid: 99bb17a23a489624baeaf337f91a4f84, - type: 3} - propertyPath: m_Name - value: Player - objectReference: {fileID: 0} - - target: {fileID: 4528203470625763700, guid: 99bb17a23a489624baeaf337f91a4f84, - type: 3} - propertyPath: playerStance - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 4528203470625763700, guid: 99bb17a23a489624baeaf337f91a4f84, - type: 3} - propertyPath: playerCrouchStance.CameraHeight - value: 0.3 - objectReference: {fileID: 0} - - target: {fileID: 4528203470625763703, guid: 99bb17a23a489624baeaf337f91a4f84, - type: 3} - propertyPath: m_Enabled - value: 1 - objectReference: {fileID: 0} - m_RemovedComponents: [] - m_SourcePrefab: {fileID: 100100000, guid: 99bb17a23a489624baeaf337f91a4f84, type: 3} + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1663305222} + - component: {fileID: 1663305225} + - component: {fileID: 1663305224} + - component: {fileID: 1663305223} + m_Layer: 0 + m_Name: navpoint1 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1663305222 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1663305221} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 50, y: 2, z: -23.5633} + m_LocalScale: {x: 1.4367, y: 1.4367, z: 1.4367} + m_Children: [] + m_Father: {fileID: 884498020} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &1663305223 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1663305221} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 6a2d29bfc31a8cf4e831e3bb80720414, type: 3} + m_Name: + m_EditorClassIdentifier: + DeathAttr: 0 + EnemiesSeen: [] +--- !u!23 &1663305224 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1663305221} + m_Enabled: 0 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 536ae120520e6f245bad32b94a03f6a2, 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 +--- !u!33 &1663305225 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1663305221} + m_Mesh: {fileID: 10206, guid: 0000000000000000e000000000000000, type: 0} --- !u!1 &1858987083 GameObject: m_ObjectHideFlags: 0 @@ -2024,6 +2138,7 @@ GameObject: - component: {fileID: 1858987086} - component: {fileID: 1858987084} - component: {fileID: 1858987089} + - component: {fileID: 1858987090} - component: {fileID: 1858987088} - component: {fileID: 1858987085} m_Layer: 0 @@ -2045,7 +2160,6 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 81d1d84442a0ba441976abd6fdd22788, type: 3} m_Name: m_EditorClassIdentifier: - CurrentTime: 0 --- !u!114 &1858987085 MonoBehaviour: m_ObjectHideFlags: 0 @@ -2119,6 +2233,26 @@ MonoBehaviour: - {fileID: 1345085342} - {fileID: 1116745544} - {fileID: 2004854094} +--- !u!114 &1858987090 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1858987083} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: b0835d77f48130e4f81c678f710bf87c, type: 3} + m_Name: + m_EditorClassIdentifier: + spawnPointsForDefendersTeam: + - {fileID: 140697606} + spawnPointsForAttackersTeam: + - {fileID: 2004854094} + AIPrefab: {fileID: 2988578997639256874, guid: b016874eb34cc084aa4359f0bbec50e1, + type: 3} + PlayerPrefab: {fileID: 5245491127989480125, guid: 80f6c1c85e5daed4c96c70205ed5503d, + type: 3} --- !u!1 &1871257865 GameObject: m_ObjectHideFlags: 0 @@ -2355,7 +2489,7 @@ GameObject: - component: {fileID: 2004854094} m_Layer: 0 m_Name: navpoint3 - m_TagString: Untagged + m_TagString: Point m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 @@ -2372,7 +2506,8 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 6a2d29bfc31a8cf4e831e3bb80720414, type: 3} m_Name: m_EditorClassIdentifier: - PointId: 1 + DeathAttr: 0 + EnemiesSeen: [] --- !u!23 &2004854095 MeshRenderer: m_ObjectHideFlags: 0 @@ -2428,7 +2563,7 @@ Transform: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2004854093} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 47.446796, y: -5.782543, z: -25.400002} + m_LocalPosition: {x: 30.59, y: -5.782543, z: -1.58} m_LocalScale: {x: 1.4367, y: 1.4367, z: 1.4367} m_Children: [] m_Father: {fileID: 2060099472} diff --git a/Assets/Scenes/Greatest_map_ever/NavMesh.asset b/Assets/Scenes/Greatest_map_ever/NavMesh.asset index 71de95d..d98232a 100755 Binary files a/Assets/Scenes/Greatest_map_ever/NavMesh.asset and b/Assets/Scenes/Greatest_map_ever/NavMesh.asset differ diff --git a/Assets/Scenes/Greatest_map_ever/NavMesh.asset.meta b/Assets/Scenes/Greatest_map_ever/NavMesh.asset.meta index b38f8d9..10e1563 100755 --- a/Assets/Scenes/Greatest_map_ever/NavMesh.asset.meta +++ b/Assets/Scenes/Greatest_map_ever/NavMesh.asset.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 09beff657ef5d1c4eba194a01e121c1a +guid: 305bb221606d7a748acca94156e2d347 NativeFormatImporter: externalObjects: {} mainObjectFileID: 23800000 diff --git a/Assets/Scenes/tyt player.meta b/Assets/Scenes/tyt player.meta old mode 100755 new mode 100644 diff --git a/Assets/Scenes/tyt player/Player.prefab.meta b/Assets/Scenes/tyt player/Player.prefab.meta old mode 100755 new mode 100644 diff --git a/Assets/Scripts/Bots/Behaviours.meta b/Assets/Scripts/Bots/Behaviours.meta deleted file mode 100755 index 7fc9025..0000000 --- a/Assets/Scripts/Bots/Behaviours.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 9fbac871417fccb40831b0f935247a29 -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Scripts/Bots/Behaviours/BaseBehaviour.cs b/Assets/Scripts/Bots/Behaviours/BaseBehaviour.cs deleted file mode 100755 index 4bf2e93..0000000 --- a/Assets/Scripts/Bots/Behaviours/BaseBehaviour.cs +++ /dev/null @@ -1,17 +0,0 @@ -using Unity; -using UnityEngine; -public abstract class BaseBehaviour -{ - protected NPC thisNPC; - protected IDoActivity DoActivity; - - protected BaseBehaviour(NPC npc) - { - thisNPC = npc; - } - - public void DoAction() - { - DoActivity?.DoActivity(); - } -} diff --git a/Assets/Scripts/Bots/Behaviours/BehaviourClasses.meta b/Assets/Scripts/Bots/Behaviours/BehaviourClasses.meta deleted file mode 100755 index 0351ad2..0000000 --- a/Assets/Scripts/Bots/Behaviours/BehaviourClasses.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 362d340e6754883459f3dc89c9ddc476 -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Scripts/Bots/Behaviours/BehaviourClasses/DumbAttacker.cs b/Assets/Scripts/Bots/Behaviours/BehaviourClasses/DumbAttacker.cs deleted file mode 100755 index a9848fb..0000000 --- a/Assets/Scripts/Bots/Behaviours/BehaviourClasses/DumbAttacker.cs +++ /dev/null @@ -1,8 +0,0 @@ -public class DumbAttacker : BaseBehaviour -{ - public DumbAttacker(NPC npc) : base(npc) - { - DoActivity = new DumbAttackerBehaviour(); - } -} - diff --git a/Assets/Scripts/Bots/Behaviours/BehaviourClasses/DumbDefender.cs b/Assets/Scripts/Bots/Behaviours/BehaviourClasses/DumbDefender.cs deleted file mode 100755 index a0fbc6a..0000000 --- a/Assets/Scripts/Bots/Behaviours/BehaviourClasses/DumbDefender.cs +++ /dev/null @@ -1,7 +0,0 @@ -public class DumbDefender : BaseBehaviour -{ - public DumbDefender(NPC npc) : base(npc) - { - DoActivity = new DumbDefenderBehaviour(); - } -} \ No newline at end of file diff --git a/Assets/Scripts/Bots/Behaviours/BehaviourClasses/Human.cs b/Assets/Scripts/Bots/Behaviours/BehaviourClasses/Human.cs deleted file mode 100755 index 6174282..0000000 --- a/Assets/Scripts/Bots/Behaviours/BehaviourClasses/Human.cs +++ /dev/null @@ -1,7 +0,0 @@ -public class Human : BaseBehaviour -{ - public Human(NPC npc) : base(npc) - { - DoActivity = new HumanBehaviour(); - } -} \ No newline at end of file diff --git a/Assets/Scripts/Bots/Behaviours/BehaviourClasses/Human.cs.meta b/Assets/Scripts/Bots/Behaviours/BehaviourClasses/Human.cs.meta deleted file mode 100755 index ce9ecb5..0000000 --- a/Assets/Scripts/Bots/Behaviours/BehaviourClasses/Human.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 59d3d253756147e469e418971625a04c -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Scripts/Bots/Behaviours/BehaviourRealization.meta b/Assets/Scripts/Bots/Behaviours/BehaviourRealization.meta deleted file mode 100755 index 6df37cc..0000000 --- a/Assets/Scripts/Bots/Behaviours/BehaviourRealization.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 93364cc95c8c9764e83d70fcce9da482 -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Scripts/Bots/Behaviours/BehaviourRealization/DumbAttackerBehaviour.cs b/Assets/Scripts/Bots/Behaviours/BehaviourRealization/DumbAttackerBehaviour.cs deleted file mode 100755 index 78f908a..0000000 --- a/Assets/Scripts/Bots/Behaviours/BehaviourRealization/DumbAttackerBehaviour.cs +++ /dev/null @@ -1,9 +0,0 @@ -using UnityEngine; -class DumbAttackerBehaviour : IDoActivity -{ - public void DoActivity() - { - Debug.Log("I do attackers things!"); - } -} - diff --git a/Assets/Scripts/Bots/Behaviours/BehaviourRealization/DumbAttackerBehaviour.cs.meta b/Assets/Scripts/Bots/Behaviours/BehaviourRealization/DumbAttackerBehaviour.cs.meta deleted file mode 100755 index acabce0..0000000 --- a/Assets/Scripts/Bots/Behaviours/BehaviourRealization/DumbAttackerBehaviour.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: d2cc7b0640887454e96d42f6bd066750 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Scripts/Bots/Behaviours/BehaviourRealization/DumbDefenderBehaviour.cs b/Assets/Scripts/Bots/Behaviours/BehaviourRealization/DumbDefenderBehaviour.cs deleted file mode 100755 index 4e41d6b..0000000 --- a/Assets/Scripts/Bots/Behaviours/BehaviourRealization/DumbDefenderBehaviour.cs +++ /dev/null @@ -1,9 +0,0 @@ -using UnityEngine; - -class DumbDefenderBehaviour : IDoActivity -{ - public void DoActivity() - { - Debug.Log("I do defenders things!"); - } -} diff --git a/Assets/Scripts/Bots/Behaviours/BehaviourRealization/DumbDefenderBehaviour.cs.meta b/Assets/Scripts/Bots/Behaviours/BehaviourRealization/DumbDefenderBehaviour.cs.meta deleted file mode 100755 index ee07ca1..0000000 --- a/Assets/Scripts/Bots/Behaviours/BehaviourRealization/DumbDefenderBehaviour.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 27106553be3f26b4da5220e39a3098c3 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Scripts/Bots/Behaviours/BehaviourRealization/HumanBehaviour.cs b/Assets/Scripts/Bots/Behaviours/BehaviourRealization/HumanBehaviour.cs deleted file mode 100755 index 576a451..0000000 --- a/Assets/Scripts/Bots/Behaviours/BehaviourRealization/HumanBehaviour.cs +++ /dev/null @@ -1,8 +0,0 @@ -class HumanBehaviour : IDoActivity -{ - public void DoActivity() - { - - } -} - diff --git a/Assets/Scripts/Bots/Behaviours/BehaviourRealization/HumanBehaviour.cs.meta b/Assets/Scripts/Bots/Behaviours/BehaviourRealization/HumanBehaviour.cs.meta deleted file mode 100755 index 60fd306..0000000 --- a/Assets/Scripts/Bots/Behaviours/BehaviourRealization/HumanBehaviour.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: d207d14aaf634504e84f3e3bd8b52428 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Scripts/Bots/Behaviours/IDoActivity.cs b/Assets/Scripts/Bots/Behaviours/IDoActivity.cs deleted file mode 100755 index ec05cec..0000000 --- a/Assets/Scripts/Bots/Behaviours/IDoActivity.cs +++ /dev/null @@ -1,4 +0,0 @@ -public interface IDoActivity -{ - void DoActivity(); -} diff --git a/Assets/Scripts/Bots/Behaviours/IDoActivity.cs.meta b/Assets/Scripts/Bots/Behaviours/IDoActivity.cs.meta deleted file mode 100755 index faaa5ea..0000000 --- a/Assets/Scripts/Bots/Behaviours/IDoActivity.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 8e7275817852aa941963daa476581224 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Scripts/Bots/CharacterFactory.cs b/Assets/Scripts/Bots/CharacterFactory.cs new file mode 100644 index 0000000..0e8ef59 --- /dev/null +++ b/Assets/Scripts/Bots/CharacterFactory.cs @@ -0,0 +1,59 @@ +using System.Collections.Generic; +using UnityEngine; +using Unity; + +public class CharacterFactory : MonoBehaviour +{ + private CharacterFactory instance; + public CharacterFactory Instance { get { return instance; } } + + [SerializeField] private List spawnPointsForDefendersTeam; + [SerializeField] private List spawnPointsForAttackersTeam; + [SerializeField] private GameObject AIPrefab; + [SerializeField] private GameObject PlayerPrefab; + + private List Players; + + private void Awake() + { + if (instance == null) + instance = this; + else + Destroy(gameObject); + } + + private void Start() + { + var attcNum = SettingsReader.Instance.GetSettings.numOfAttackers; + var defNum = SettingsReader.Instance.GetSettings.numOfDefenders; + var humanDef = SettingsReader.Instance.GetSettings.hasHumanDefender == true ? 1 : 0; + var humanAtc = SettingsReader.Instance.GetSettings.hasHumanAttacker == true ? 1 : 0; + + if (humanAtc == 1 && humanDef == 1) + throw new System.ArgumentException("Can be only one human player"); + + for (int i = 0; i < attcNum - humanAtc; i++) + InstanciateEntity(Team.Attackers, TypeAI.D0DiskAI, + spawnPointsForAttackersTeam[Random.Range(0, spawnPointsForAttackersTeam.Count)]); + for (int i = 0; i < defNum - humanDef; i++) + InstanciateEntity(Team.Defenders, TypeAI.D0DiskAI, + spawnPointsForDefendersTeam[Random.Range(0, spawnPointsForDefendersTeam.Count)]); + if (humanAtc == 1) + InstanciateEntity(Team.Attackers, TypeAI.HumanAI, + spawnPointsForAttackersTeam[Random.Range(0, spawnPointsForAttackersTeam.Count)]); + if (humanDef == 1) + InstanciateEntity(Team.Defenders, TypeAI.HumanAI, + spawnPointsForDefendersTeam[Random.Range(0, spawnPointsForDefendersTeam.Count)]); + } + + private void InstanciateEntity(Team team, TypeAI typeAi, NavPoint spawnPoint) + { + var gameobject = GameObject.Instantiate( + typeAi == TypeAI.HumanAI ? PlayerPrefab : AIPrefab, + spawnPoint.position, + Quaternion.identity); + + var character = gameObject.GetComponent(); + character.GetCharacter.Team = team; + } +} \ No newline at end of file diff --git a/Assets/Scripts/Bots/CharacterPooler.cs.meta b/Assets/Scripts/Bots/CharacterFactory.cs.meta old mode 100755 new mode 100644 similarity index 100% rename from Assets/Scripts/Bots/CharacterPooler.cs.meta rename to Assets/Scripts/Bots/CharacterFactory.cs.meta diff --git a/Assets/Scripts/Bots/CharacterFactory.meta b/Assets/Scripts/Bots/CharacterFactory.meta deleted file mode 100755 index 3b8096d..0000000 --- a/Assets/Scripts/Bots/CharacterFactory.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 93133f9c3db1b944d9120ea789988f9b -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Scripts/Bots/CharacterFactory/CharacterFactory.cs b/Assets/Scripts/Bots/CharacterFactory/CharacterFactory.cs deleted file mode 100755 index 6d1ef33..0000000 --- a/Assets/Scripts/Bots/CharacterFactory/CharacterFactory.cs +++ /dev/null @@ -1,45 +0,0 @@ -public abstract class AbstractCharacterFactory -{ - protected IDoActivity behaviour; - protected AbstractCharacterFactory() { } - public abstract BaseBehaviour CreateCharacterBehaviour(NPC npc); -} - -public class DumbDefenderFactory : AbstractCharacterFactory -{ - public DumbDefenderFactory() - { - behaviour = new DumbDefenderBehaviour(); - } - - public override BaseBehaviour CreateCharacterBehaviour(NPC npc) - { - return new DumbDefender(npc); - } -} - -public class DumbAttackerFactory : AbstractCharacterFactory -{ - public DumbAttackerFactory() - { - behaviour = new DumbAttackerBehaviour(); - } - - public override BaseBehaviour CreateCharacterBehaviour(NPC npc) - { - return new DumbAttacker(npc); - } -} - -public class HumanFactory : AbstractCharacterFactory -{ - public HumanFactory() - { - behaviour = new HumanBehaviour(); - } - - public override BaseBehaviour CreateCharacterBehaviour(NPC npc) - { - return new Human(npc); - } -} \ No newline at end of file diff --git a/Assets/Scripts/Bots/CharacterFactory/CharacterFactory.cs.meta b/Assets/Scripts/Bots/CharacterFactory/CharacterFactory.cs.meta deleted file mode 100755 index 9e62d85..0000000 --- a/Assets/Scripts/Bots/CharacterFactory/CharacterFactory.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 4f973f98c4f699745a605d09e2c1e46e -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Scripts/Bots/CharacterFactory/CharacterSpawner.cs b/Assets/Scripts/Bots/CharacterFactory/CharacterSpawner.cs deleted file mode 100755 index a0b9628..0000000 --- a/Assets/Scripts/Bots/CharacterFactory/CharacterSpawner.cs +++ /dev/null @@ -1,55 +0,0 @@ -using System.Collections.Generic; -using System; -using UnityEngine; - -public class CharacterSpawner : MonoBehaviour -{ - [SerializeField] private GameObject botPrefab; - [SerializeField] private List defendersSpawnPoints; - [SerializeField] private List attackersSpawnPoints; - private static Dictionary<(TypeAI, Team), Func> behaviourDictionary; - private static System.Random random; - - public void Start() - { - behaviourDictionary = new Dictionary<(TypeAI, Team), Func>() - { - { (TypeAI.DumbAlgorithm, Team.Attackers), new Func( npc => new DumbAttacker(npc))}, - { (TypeAI.DumbAlgorithm, Team.Defenders), new Func( npc => new DumbDefender(npc)) }, - { (TypeAI.HumanAI, Team.Defenders), new Func( npc => new Human(npc))}, - { (TypeAI.HumanAI, Team.Attackers), new Func( npc => new Human(npc))}, - //And Other behaviours - }; - - if (SettingsReader.Instance.GetSettings.hasHumanAttacker && SettingsReader.Instance.GetSettings.hasHumanDefender) - throw new System.Exception("Not allowed to have two players"); - else if (SettingsReader.Instance.GetSettings.hasHumanAttacker == true) - { - spawnCharacter(behaviourDictionary[(TypeAI.HumanAI, Team.Attackers)], Team.Attackers); - } - else if (SettingsReader.Instance.GetSettings.hasHumanDefender == true) - { - spawnCharacter(behaviourDictionary[(TypeAI.HumanAI, Team.Defenders)], Team.Defenders); - } - - for (int i = 0; i < SettingsReader.Instance.GetSettings.numOfAttackers - (SettingsReader.Instance.GetSettings.hasHumanAttacker ? 1 : 0); i++) - { - spawnCharacter(behaviourDictionary[(SettingsReader.Instance.GetSettings.atcTeamAI, Team.Attackers)], Team.Attackers); - } - for (int i = 0; i < SettingsReader.Instance.GetSettings.numOfAttackers - (SettingsReader.Instance.GetSettings.hasHumanDefender ? 1 : 0); i++) - { - spawnCharacter(behaviourDictionary[(SettingsReader.Instance.GetSettings.defTeamAI, Team.Defenders)], Team.Defenders); - } - } - - private void spawnCharacter(Func behaviourFunc, Team team) - { - var spawnPoint = team == Team.Defenders ? - defendersSpawnPoints[random.Next(0, defendersSpawnPoints.Count)].position : - attackersSpawnPoints[random.Next(0, attackersSpawnPoints.Count)].position; - var entity = Instantiate(botPrefab, spawnPoint, Quaternion.identity); - var npc = entity.GetComponent(); - npc.SetBehaviour(behaviourFunc(npc)); - } -} - diff --git a/Assets/Scripts/Bots/CharacterFactory/CharacterSpawner.cs.meta b/Assets/Scripts/Bots/CharacterFactory/CharacterSpawner.cs.meta deleted file mode 100755 index e683cae..0000000 --- a/Assets/Scripts/Bots/CharacterFactory/CharacterSpawner.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 672f5411fc3ccb74d8a17a6efdee9df4 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Scripts/Bots/CharacterPooler.cs b/Assets/Scripts/Bots/CharacterPooler.cs deleted file mode 100755 index 1dc495a..0000000 --- a/Assets/Scripts/Bots/CharacterPooler.cs +++ /dev/null @@ -1,4 +0,0 @@ -public class CharacterPooler -{ - -} \ No newline at end of file diff --git a/Assets/Scripts/Character/Character.cs b/Assets/Scripts/Character/Character.cs new file mode 100644 index 0000000..a229718 --- /dev/null +++ b/Assets/Scripts/Character/Character.cs @@ -0,0 +1,22 @@ +using UnityEngine; +public class Character +{ + public Team Team { get; set; } + public float LastTimeHit = 0; + public CharacterCondition Condition; + + public Character() + { + Condition = new CharacterCondition(); + } + + public void ResetCharacter() + { + + } +} + +public interface ICharacter +{ + Character GetCharacter { get; } +} \ No newline at end of file diff --git a/Assets/Scripts/Bots/Behaviours/BehaviourClasses/DumbDefender.cs.meta b/Assets/Scripts/Character/Character.cs.meta old mode 100755 new mode 100644 similarity index 83% rename from Assets/Scripts/Bots/Behaviours/BehaviourClasses/DumbDefender.cs.meta rename to Assets/Scripts/Character/Character.cs.meta index ef058b6..aec9e7e --- a/Assets/Scripts/Bots/Behaviours/BehaviourClasses/DumbDefender.cs.meta +++ b/Assets/Scripts/Character/Character.cs.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 64552bae354dc614d8012f07511a51e8 +guid: 44d6a17ad31b31241928e1a17e9aba37 MonoImporter: externalObjects: {} serializedVersion: 2 diff --git a/Assets/Scripts/Character/CharacterCondition.cs b/Assets/Scripts/Character/CharacterCondition.cs index f0d9580..d1ec569 100755 --- a/Assets/Scripts/Character/CharacterCondition.cs +++ b/Assets/Scripts/Character/CharacterCondition.cs @@ -1,39 +1,62 @@ using System; using UnityEngine; -public class CharacterCondition : MonoBehaviour + +public class CharacterCondition { - public event Action OnKilledEvent; - public event Action OnDamageHealthTakenEvent; - public event Action OnDamageArmourTakenEvent; - public event Action OnAmmunitionTakenEvent; + public event Action OnChangeHealthEvent; + public event Action OnChangeArmourEvent; + public event Action OnChangeAmmunitionEvent; - [SerializeField] private int HealthPoints; - [SerializeField] private int ArmourPoints; - [SerializeField] private int Ammunition; - - public void Start() - { - + private int health; + public int HealthPoints + { + get + { + return health; + } + private set + { + health = value; + OnChangeHealthEvent?.Invoke(value); + } } - - public void GetDamage(float damage) + private int armour; + public int ArmourPoints { - HealthPoints -= Mathf.RoundToInt(damage * (1 - ArmourPoints * 0.5f)); - ArmourPoints -= Mathf.RoundToInt(Mathf.Sqrt(damage) * 5); - - OnDamageHealthTakenEvent?.Invoke(HealthPoints); - OnDamageArmourTakenEvent?.Invoke(ArmourPoints); - if (HealthPoints < 0) - OnKilledEvent?.Invoke(gameObject); + get + { + return armour; + } + private set + { + armour = value; + OnChangeArmourEvent?.Invoke(value); + } } + private int ammo; + public int Ammunition + { + get + { + return ammo; + } + private set + { + ammo = value; + OnChangeAmmunitionEvent?.Invoke(value); + } + } + + public CharacterCondition() + { + var settings = SettingsReader.Instance.GetSettings; + ammo = settings.maxAmmo; + health = settings.maxHealth; + armour = settings.maxArmour; + } + public void GiveHealth(int health) => HealthPoints = Mathf.Clamp(health + HealthPoints, 0, 100); - public void SetHealth(int health) => HealthPoints = Mathf.Clamp(health, 0, 100); public void GiveArmour(int armour) => ArmourPoints = Mathf.Clamp(armour + ArmourPoints, 0, 100); - public void SetArmour(int armour) => ArmourPoints = Mathf.Clamp(armour, 0, 100); - public void TakeAmmo(int ammo) - { - Ammunition += ammo; - OnAmmunitionTakenEvent?.Invoke(Ammunition); - } + public void TakeAmmo(int ammo) => Ammunition += ammo; } \ No newline at end of file diff --git a/Assets/Scripts/Character/MovementController.cs b/Assets/Scripts/Character/MovementController.cs old mode 100755 new mode 100644 index b1f31c5..387a805 --- a/Assets/Scripts/Character/MovementController.cs +++ b/Assets/Scripts/Character/MovementController.cs @@ -7,7 +7,6 @@ using UnityEngine.AI; public class MovementController : MonoBehaviour { public NavPoint currentPosition { get; private set; } - [SerializeField] private MapManager mapManager; [SerializeField] private NavMeshAgent navMeshAgent; private void Start() @@ -15,24 +14,19 @@ public class MovementController : MonoBehaviour navMeshAgent.speed = SettingsReader.Instance.GetSettings.movementSpeed; } - public void Move() - { - var pointCandidate = getPointCandidate(); - goToNextNavPoint(pointCandidate); + public void MoveToRandomPoint() + { + Debug.Log(MapManager.navPoints == null); + goToNextNavPoint(MapManager.navPoints[Random.Range(0, MapManager.navPoints.Count)]); } - - // todo внутри сенсора передавать в mlagents как variable length observations: https://github.com/Unity-Technologies/ml-agents/blob/main/docs/Learning-Environment-Design-Agents.md#variable-length-observations - private NavPoint getPointCandidate() + public List getPointsCandidate() { - var NavPointsPositions = mapManager.navPoints - .Select(point => point.transform.position) - .Where(point => (currentPosition.transform.position - point).magnitude <= SettingsReader.Instance.GetSettings.movementSpeed) + return MapManager.navPoints + .Where(point => (currentPosition.position - point.position).magnitude <= SettingsReader.Instance.GetSettings.movementSpeed) .ToList(); - //TODO AI - return null; } - private void goToNextNavPoint(NavPoint destination) => - navMeshAgent.SetDestination(destination.transform.position); + public void goToNextNavPoint(NavPoint destination) => + navMeshAgent.SetDestination(destination.position); } diff --git a/Assets/Scripts/Character/NPC.cs b/Assets/Scripts/Character/NPC.cs old mode 100755 new mode 100644 index e653290..6ff8f6d --- a/Assets/Scripts/Character/NPC.cs +++ b/Assets/Scripts/Character/NPC.cs @@ -1,37 +1,117 @@ using System; -using System.Collections.Generic; using UnityEngine; using Unity.MLAgents; using Unity.MLAgents.Sensors; +using Unity.MLAgents.Actuators; +using System.Collections.Generic; -public class NPC : Agent +[RequireComponent(typeof(MovementController))] +public class NPC : Agent, ICharacter { - public float LastTimeHit; - private BaseBehaviour NPCBehaviour; - public List ActionList; - - [SerializeField] - private List SensorList; // todo тут интерфейс должен быть наш + [HideInInspector] + public Character AgentCharacter; + public CharacterCondition Condition; - public void SetBehaviour(BaseBehaviour behaviour) => NPCBehaviour = behaviour; - public Team Team { get; set; } + public NPC_BaseState NPC_State { get; private set; } + + public Character GetCharacter => AgentCharacter; + + private NPC_DirectPointState DirectState; + private NPC_InCoverState CoverState; + private NPC_RunningState RunningState; + + private MovementController moveController; + private BufferSensorComponent bufferSensor; + + private void Awake() + { + DirectState = new NPC_DirectPointState(); + CoverState = new NPC_InCoverState(); + RunningState = new NPC_RunningState(); + NPC_State = DirectState; + + AgentCharacter = new Character(); + Condition = AgentCharacter.Condition; + } private void Start() { - + AgentCharacter = new Character(); + Condition = AgentCharacter.Condition; + + moveController = gameObject.GetComponent(); + bufferSensor = gameObject.GetComponent(); + + GameManager.OnResetScene += AgentCharacter.ResetCharacter; } - + + public override void OnEpisodeBegin() + { + + } + public override void CollectObservations(VectorSensor sensor) { - // Target and Agent positions - foreach (var _sensor in SensorList) + sensor.AddObservation(Condition.HealthPoints); + sensor.AddObservation(Condition.ArmourPoints); + sensor.AddObservation(Condition.Ammunition); + sensor.AddObservation((int)NPC_State.State); + + + + var candidates = moveController.getPointsCandidate(); + foreach (var point in candidates) { - sensor.AddObservation(1); // todo - // sensor.AddObservation(_sensor.GetValue()); + + bufferSensor.AppendObservation(new float[] { + //1 position in navpointId + (float)moveController.currentPosition.PointId, + //2 distance to flag + moveController.currentPosition.FlagDistance, + //3 death count in point + moveController.currentPosition.DeathAttr, + //4 flagEnemyDistance + GameManager.IsCloserToFlagFromNextNavPoint(point, transform.position)==true?1:0, + //5 EnemyVsNavPointDistance + GameManager.IsCloserToEnemyThanToNextNavPoint(point,transform.position, AgentCharacter.Team)==true?1:0 + }); + } } - - private void Update() + + public override void Heuristic(in ActionBuffers actionsOut) { - //NPCBehaviour.DoAction(); + var discreteActionsOut = actionsOut.DiscreteActions; + if (Input.GetKeyDown(KeyCode.W)) + { + discreteActionsOut[0] = 1; + } + } + + public override void OnActionReceived(ActionBuffers actions) + { + if (actions.DiscreteActions[0] == 1) + { + moveController.MoveToRandomPoint(); + NPC_State = RunningState; + } + } + + public event Action OnKilledEvent; + public void GetDamage(float damage) + { + AgentCharacter.LastTimeHit = TimeManager.Instance.CurrentTime; + Condition.GiveHealth(-Mathf.RoundToInt(damage * (1 - Condition.ArmourPoints * 0.5f))); + Condition.GiveArmour(-Mathf.RoundToInt(Mathf.Sqrt(damage) * 5)); + + if (Condition.HealthPoints < 0) + { + OnKilledEvent?.Invoke(this); + moveController.currentPosition.DeathAttr += 1; + } + } + + private void OnDestroy() + { + Debug.LogWarning("Pooled object was destroyed"); } } diff --git a/Assets/Scripts/Character/NPC_State.cs b/Assets/Scripts/Character/NPC_State.cs new file mode 100644 index 0000000..cc2802c --- /dev/null +++ b/Assets/Scripts/Character/NPC_State.cs @@ -0,0 +1,46 @@ +public enum NPC_EnumState +{ + InCover, + InDirectPoint, + InRunning, +} + +public interface NPC_BaseState +{ + NPC_EnumState State { get; } + bool InCover { get; } + bool IsRunning { get; } + bool InDirectPoint { get; } + float HitChance { get; } + float DoDamageChance { get; } +} + +public class NPC_DirectPointState : NPC_BaseState +{ + public bool InCover => false; + public bool IsRunning => false; + public bool InDirectPoint => false; + public float HitChance => SettingsReader.Instance.GetSettings.GetHitChanceInDirectPoint; + public float DoDamageChance => SettingsReader.Instance.GetSettings.DoDamageChanceInDirectPoint; + public NPC_EnumState State => NPC_EnumState.InDirectPoint; +} + +public class NPC_RunningState : NPC_BaseState +{ + public bool InCover => false; + public bool IsRunning => true; + public bool InDirectPoint => false; + public float HitChance => SettingsReader.Instance.GetSettings.GetHitChanceInRunning; + public float DoDamageChance => SettingsReader.Instance.GetSettings.DoDamageChanceInRunning; + public NPC_EnumState State => NPC_EnumState.InRunning; +} + +public class NPC_InCoverState : NPC_BaseState +{ + public bool InCover => true; + public bool IsRunning => false; + public bool InDirectPoint => false; + public float HitChance => SettingsReader.Instance.GetSettings.GetHitChanceInCover; + public float DoDamageChance => SettingsReader.Instance.GetSettings.DoDamageChanceInCover; + public NPC_EnumState State => NPC_EnumState.InCover; +} diff --git a/Assets/Scripts/Bots/Behaviours/BehaviourClasses/DumbAttacker.cs.meta b/Assets/Scripts/Character/NPC_State.cs.meta old mode 100755 new mode 100644 similarity index 83% rename from Assets/Scripts/Bots/Behaviours/BehaviourClasses/DumbAttacker.cs.meta rename to Assets/Scripts/Character/NPC_State.cs.meta index a386e68..c1483bf --- a/Assets/Scripts/Bots/Behaviours/BehaviourClasses/DumbAttacker.cs.meta +++ b/Assets/Scripts/Character/NPC_State.cs.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 138d13d4fe8a06444acb1da6bfc55aa7 +guid: a192e433e26797745ad0b46de2586de3 MonoImporter: externalObjects: {} serializedVersion: 2 diff --git a/Assets/Scripts/Character/Player.cs b/Assets/Scripts/Character/Player.cs new file mode 100644 index 0000000..53ddb64 --- /dev/null +++ b/Assets/Scripts/Character/Player.cs @@ -0,0 +1,34 @@ +using System; +using UnityEngine; + +public class Player : MonoBehaviour, ICharacter +{ + [HideInInspector] + public Character PlayerCharacter; + public CharacterCondition Condition; + + public Character GetCharacter => PlayerCharacter; + + private void Start() + { + PlayerCharacter = new Character(); + Condition = PlayerCharacter.Condition; + GameManager.OnResetScene += PlayerCharacter.ResetCharacter; + } + + public event Action OnKilledEvent; + public void GetDamage(float damage) + { + PlayerCharacter.LastTimeHit = TimeManager.Instance.CurrentTime; + Condition.GiveHealth(-Mathf.RoundToInt(damage * (1 - Condition.ArmourPoints * 0.5f))); + Condition.GiveArmour(-Mathf.RoundToInt(Mathf.Sqrt(damage) * 5)); + + if (Condition.HealthPoints < 0) + OnKilledEvent?.Invoke(this); + } + + private void OnDestroy() + { + Debug.LogWarning("Pooled object was destroyed"); + } +} diff --git a/Assets/Scripts/Bots/Behaviours/BaseBehaviour.cs.meta b/Assets/Scripts/Character/Player.cs.meta old mode 100755 new mode 100644 similarity index 83% rename from Assets/Scripts/Bots/Behaviours/BaseBehaviour.cs.meta rename to Assets/Scripts/Character/Player.cs.meta index a4efcc1..63af2cb --- a/Assets/Scripts/Bots/Behaviours/BaseBehaviour.cs.meta +++ b/Assets/Scripts/Character/Player.cs.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 60bdb2d866ca9324cbe3639e7c47ae23 +guid: a8c9a8e604d395c4ab9d03d28adc4982 MonoImporter: externalObjects: {} serializedVersion: 2 diff --git a/Assets/Scripts/Managers/GameManager.cs b/Assets/Scripts/Managers/GameManager.cs index 613ad1e..bdbc7bc 100755 --- a/Assets/Scripts/Managers/GameManager.cs +++ b/Assets/Scripts/Managers/GameManager.cs @@ -1,14 +1,14 @@ -using System.Collections; -using System.Collections.Generic; -using UnityEditorInternal; +using Unity.MLAgents; using UnityEngine; public class GameManager : MonoBehaviour { - private static GameManager instance; public static GameManager Instance { get { return instance; } } + private static SimpleMultiAgentGroup DefendersTeam = new SimpleMultiAgentGroup(); + private static SimpleMultiAgentGroup AttackersTeam = new SimpleMultiAgentGroup(); + private void Awake() { if (Instance == null) @@ -21,13 +21,36 @@ public class GameManager : MonoBehaviour { GlobalEventManager.onCaptureFlag += flagCaptured; GlobalEventManager.onTimeLeft += timeOut; + + var agents = GameObject.FindObjectsOfType(); + foreach (var item in agents) + { + var agent = item as NPC; + if (agent.GetCharacter.Team == Team.Attackers) + AttackersTeam.RegisterAgent(agent); + else + DefendersTeam.RegisterAgent(agent); + } } - private void Update() + public static bool IsCloserToEnemyThanToNextNavPoint(NavPoint navPoint, Vector3 currentTransform, Team team) { - + SimpleMultiAgentGroup agentGroup; + if (team == Team.Attackers) + agentGroup = AttackersTeam; + else + agentGroup = DefendersTeam; + + var distToNavPoint = (currentTransform - navPoint.position).magnitude; + foreach (var agent in agentGroup.GetRegisteredAgents()) + if (distToNavPoint > (currentTransform - agent.transform.position).magnitude) + return true; + return false; } + public static bool IsCloserToFlagFromNextNavPoint(NavPoint navPoint, Vector3 currentTransform) + => navPoint.FlagDistance < (currentTransform - GameObject.FindGameObjectWithTag("Flag").transform.position).magnitude; + private void flagCaptured(Team team) { switch(team) diff --git a/Assets/Scripts/Managers/MapManager.cs b/Assets/Scripts/Managers/MapManager.cs index 9006642..8c64208 100755 --- a/Assets/Scripts/Managers/MapManager.cs +++ b/Assets/Scripts/Managers/MapManager.cs @@ -3,11 +3,17 @@ using UnityEngine; public class MapManager : MonoBehaviour { - public List navPoints { get; private set; } + public static List navPoints { get; private set; } private void Start() { + var i = 0; + navPoints = new List(); var navPointsGameObj = GameObject.FindGameObjectsWithTag("Point"); foreach (var gameobj in navPointsGameObj) - navPoints.Add(gameobj.GetComponent()); + { + var navpoint = gameobj.GetComponent(); + navpoint.PointId = i; i++; + navPoints.Add(navpoint); + } } } diff --git a/Assets/Scripts/Managers/TimeManager.cs b/Assets/Scripts/Managers/TimeManager.cs index afdbad8..ea7fec4 100755 --- a/Assets/Scripts/Managers/TimeManager.cs +++ b/Assets/Scripts/Managers/TimeManager.cs @@ -4,8 +4,10 @@ using UnityEngine; public class TimeManager : MonoBehaviour { - public static TimeManager instance = null; - public float CurrentTime; + private static TimeManager instance; + public static TimeManager Instance { get { return instance; } } + + public float CurrentTime { get; private set; } void Start() { if (instance == null) diff --git a/Assets/Scripts/Misc/FlagZone.cs b/Assets/Scripts/Misc/FlagZone.cs index eeb7a96..8cd4ab4 100755 --- a/Assets/Scripts/Misc/FlagZone.cs +++ b/Assets/Scripts/Misc/FlagZone.cs @@ -17,7 +17,6 @@ public class FlagZone : MonoBehaviour { timeForWin = SettingsReader.Instance.GetSettings.timeToWin; - Debug.Log("32"); TimeStayAttackers = 0; TimeStayDefenders = 0; occupAttackers = 0; diff --git a/Assets/Scripts/Misc/NavPoint.cs b/Assets/Scripts/Misc/NavPoint.cs index 75066c0..2b43e84 100755 --- a/Assets/Scripts/Misc/NavPoint.cs +++ b/Assets/Scripts/Misc/NavPoint.cs @@ -6,22 +6,15 @@ public class NavPoint : MonoBehaviour { public Vector3 position => gameObject.transform.position; public float FlagDistance { get; private set; } - [System.NonSerialized] public float DeathAttr; - [System.NonSerialized] public List EnemiesSeen; + + [HideInInspector] + public int? PointId; + public float DeathAttr = 0; + public List EnemiesSeen = new List(); //Here other attributes; - [SerializeField] - public int PointId; - - private void Awake() - { - //DO NOT DELETE - } - private void Start() { - FlagDistance = (GameObject.FindGameObjectWithTag("Flag").transform.position - position).magnitude; - EnemiesSeen = new List(); - DeathAttr = 0; + FlagDistance = (GameObject.FindGameObjectWithTag("Flag").transform.position - position).magnitude; } } diff --git a/Assets/Scripts/Misc/Settings.cs b/Assets/Scripts/Misc/Settings.cs index c607bb4..e01abc1 100755 --- a/Assets/Scripts/Misc/Settings.cs +++ b/Assets/Scripts/Misc/Settings.cs @@ -3,6 +3,8 @@ [CreateAssetMenu(fileName ="Game Settings", menuName = "Game/Settings", order = 51)] public class Settings : ScriptableObject { + public bool isTesting; + public float timeToWin; public float timeOut; @@ -21,4 +23,15 @@ public class Settings : ScriptableObject public int armourPickupAmount; public int ammunitionPickupAmount; public int pickupsAmount; + + public int maxHealth; + public int maxArmour; + public int maxAmmo; + + public float GetHitChanceInDirectPoint; + public float GetHitChanceInRunning; + public float GetHitChanceInCover; + public float DoDamageChanceInDirectPoint; + public float DoDamageChanceInRunning; + public float DoDamageChanceInCover; } diff --git a/Assets/Scripts/Misc/SettingsReader.cs b/Assets/Scripts/Misc/SettingsReader.cs index 4caf940..ab60b87 100755 --- a/Assets/Scripts/Misc/SettingsReader.cs +++ b/Assets/Scripts/Misc/SettingsReader.cs @@ -9,7 +9,6 @@ public class SettingsReader : MonoBehaviour private void Awake() { - Debug.Log("init"); instance = this; } diff --git a/Assets/Scripts/Pickups/PickUpSpawner.cs b/Assets/Scripts/Pickups/PickUpSpawner.cs index 8de3d31..945c1d3 100755 --- a/Assets/Scripts/Pickups/PickUpSpawner.cs +++ b/Assets/Scripts/Pickups/PickUpSpawner.cs @@ -16,6 +16,14 @@ public class PickUpSpawner : MonoBehaviour [SerializeField] private List spawnPoints; + private void Awake() + { + if (instance == null) + instance = this; + else + Destroy(gameObject); + } + private void Start() { pickups = new List(); diff --git a/Assets/Scripts/Sensors/ISensor.cs b/Assets/Scripts/Sensors/ISensor.cs deleted file mode 100755 index 6d78bbf..0000000 --- a/Assets/Scripts/Sensors/ISensor.cs +++ /dev/null @@ -1,5 +0,0 @@ -public interface ISensor -{ - T GetValue(); - SensorType GetSensorType(); -} diff --git a/Assets/Scripts/Sensors/Sensors.cs b/Assets/Scripts/Sensors/Sensors.cs new file mode 100644 index 0000000..b38d85f --- /dev/null +++ b/Assets/Scripts/Sensors/Sensors.cs @@ -0,0 +1,4 @@ +using System.Collections.Generic; +using Unity.MLAgents.Sensors; + + diff --git a/Assets/Scripts/Sensors/ISensor.cs.meta b/Assets/Scripts/Sensors/Sensors.cs.meta old mode 100755 new mode 100644 similarity index 100% rename from Assets/Scripts/Sensors/ISensor.cs.meta rename to Assets/Scripts/Sensors/Sensors.cs.meta diff --git a/Assets/Scripts/Utils/SerializableDictionary.cs b/Assets/Scripts/Utils/SerializableDictionary.cs index fc77ada..c0877b9 100755 --- a/Assets/Scripts/Utils/SerializableDictionary.cs +++ b/Assets/Scripts/Utils/SerializableDictionary.cs @@ -739,8 +739,4 @@ public abstract class DictionaryDrawer : PropertyDrawer UnityEngine.Debug.Log(e.Message); } } -} - -[Serializable] public class DictionaryOfTeamsAndNavPoints : SerializableDictionary { } -[CustomPropertyDrawer(typeof(DictionaryOfTeamsAndNavPoints))] -public class DictionaryOfTeamsAndNavPointsDrawer : DictionaryDrawer { } \ No newline at end of file +} \ No newline at end of file diff --git a/Assets/Settings/Game Settings.asset b/Assets/Settings/Game Settings.asset index 0f6367e..f1a62c0 100755 --- a/Assets/Settings/Game Settings.asset +++ b/Assets/Settings/Game Settings.asset @@ -12,17 +12,27 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: e2c47233b9062c84482336b145c6891b, type: 3} m_Name: Game Settings m_EditorClassIdentifier: + isTesting: 1 timeToWin: 5 timeOut: 1600 movementDistance: 50 movementSpeed: 3 defTeamAI: 0 atcTeamAI: 0 - numOfDefenders: 0 - numOfAttackers: 0 - hasHumanDefender: 0 + numOfDefenders: 1 + numOfAttackers: 1 + hasHumanDefender: 1 hasHumanAttacker: 0 healthPickupAmount: 50 armourPickupAmount: 50 ammunitionPickupAmount: 120 pickupsAmount: 2 + maxHealth: 0 + maxArmour: 0 + maxAmmo: 0 + GetHitChanceInDirectPoint: 0 + GetHitChanceInRunning: 0 + GetHitChanceInCover: 0 + DoDamageChanceInDirectPoint: 0 + DoDamageChanceInRunning: 0 + DoDamageChanceInCover: 0 diff --git a/Docs/api.md b/Docs/api.md new file mode 100644 index 0000000..e69de29 diff --git a/Packages/manifest.json b/Packages/manifest.json index 2ba23ba..a5b072e 100755 --- a/Packages/manifest.json +++ b/Packages/manifest.json @@ -10,6 +10,7 @@ "com.unity.test-framework": "1.1.30", "com.unity.textmeshpro": "2.1.6", "com.unity.timeline": "1.2.18", + "com.unity.toolchain.win-x86_64-linux-x86_64": "2.0.0", "com.unity.ugui": "1.0.0", "com.unity.modules.ai": "1.0.0", "com.unity.modules.androidjni": "1.0.0", diff --git a/Packages/packages-lock.json b/Packages/packages-lock.json index 5c1629f..bb10cfc 100755 --- a/Packages/packages-lock.json +++ b/Packages/packages-lock.json @@ -102,6 +102,22 @@ "dependencies": {}, "url": "https://packages.unity.com" }, + "com.unity.sysroot": { + "version": "2.0.0", + "depth": 1, + "source": "registry", + "dependencies": {}, + "url": "https://packages.unity.com" + }, + "com.unity.sysroot.linux-x86_64": { + "version": "2.0.0", + "depth": 1, + "source": "registry", + "dependencies": { + "com.unity.sysroot": "2.0.0" + }, + "url": "https://packages.unity.com" + }, "com.unity.test-framework": { "version": "1.1.30", "depth": 0, @@ -134,6 +150,16 @@ }, "url": "https://packages.unity.com" }, + "com.unity.toolchain.win-x86_64-linux-x86_64": { + "version": "2.0.0", + "depth": 0, + "source": "registry", + "dependencies": { + "com.unity.sysroot": "2.0.0", + "com.unity.sysroot.linux-x86_64": "2.0.0" + }, + "url": "https://packages.unity.com" + }, "com.unity.ugui": { "version": "1.0.0", "depth": 0, diff --git a/ProjectSettings/BurstAotSettings_StandaloneWindows.json b/ProjectSettings/BurstAotSettings_StandaloneWindows.json new file mode 100644 index 0000000..e02ae33 --- /dev/null +++ b/ProjectSettings/BurstAotSettings_StandaloneWindows.json @@ -0,0 +1,17 @@ +{ + "MonoBehaviour": { + "Version": 4, + "EnableBurstCompilation": true, + "EnableOptimisations": true, + "EnableSafetyChecks": false, + "EnableDebugInAllBuilds": false, + "UsePlatformSDKLinker": false, + "CpuMinTargetX32": 0, + "CpuMaxTargetX32": 0, + "CpuMinTargetX64": 0, + "CpuMaxTargetX64": 0, + "CpuTargetsX32": 6, + "CpuTargetsX64": 72, + "OptimizeFor": 0 + } +} diff --git a/ProjectSettings/CommonBurstAotSettings.json b/ProjectSettings/CommonBurstAotSettings.json new file mode 100644 index 0000000..0293daf --- /dev/null +++ b/ProjectSettings/CommonBurstAotSettings.json @@ -0,0 +1,6 @@ +{ + "MonoBehaviour": { + "Version": 4, + "DisabledWarnings": "" + } +} diff --git a/ProjectSettings/NavMeshAreas.asset b/ProjectSettings/NavMeshAreas.asset index 3b0b7c3..5d90a93 100755 --- a/ProjectSettings/NavMeshAreas.asset +++ b/ProjectSettings/NavMeshAreas.asset @@ -76,7 +76,7 @@ NavMeshProjectSettings: agentRadius: 0.5 agentHeight: 2 agentSlope: 45 - agentClimb: 0.75 + agentClimb: 0.1 ledgeDropHeight: 0 maxJumpAcrossDistance: 0 minRegionArea: 2 diff --git a/ProjectSettings/Packages/com.unity.probuilder/Settings.json b/ProjectSettings/Packages/com.unity.probuilder/Settings.json index a562d6a..5c60560 100755 --- a/ProjectSettings/Packages/com.unity.probuilder/Settings.json +++ b/ProjectSettings/Packages/com.unity.probuilder/Settings.json @@ -73,6 +73,16 @@ "key": "editor.closeWindowAfterShapeCreation", "value": "{\"m_Value\":false}" }, + { + "type": "System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089", + "key": "editor.showEditorNotifications", + "value": "{\"m_Value\":false}" + }, + { + "type": "System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089", + "key": "editor.stripProBuilderScriptsOnBuild", + "value": "{\"m_Value\":true}" + }, { "type": "UnityEngine.ProBuilder.SelectionModifierBehavior, Unity.ProBuilder, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null", "key": "editor.rectSelectModifier", @@ -117,6 +127,11 @@ "type": "UnityEngine.ProBuilder.UnwrapParameters, Unity.ProBuilder, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null", "key": "lightmapping.defaultLightmapUnwrapParameters", "value": "{\"m_Value\":{\"m_HardAngle\":88.0,\"m_PackMargin\":20.0,\"m_AngleError\":8.0,\"m_AreaError\":15.0}}" + }, + { + "type": "System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089", + "key": "uv.uvEditorGridSnapIncrement", + "value": "{\"m_Value\":0.125}" } ] } diff --git a/ProjectSettings/ProjectSettings.asset b/ProjectSettings/ProjectSettings.asset index db6a68e..b6bb648 100644 --- a/ProjectSettings/ProjectSettings.asset +++ b/ProjectSettings/ProjectSettings.asset @@ -631,7 +631,8 @@ PlayerSettings: gcIncremental: 0 assemblyVersionValidation: 1 gcWBarrierValidation: 0 - apiCompatibilityLevelPerPlatform: {} + apiCompatibilityLevelPerPlatform: + Standalone: 3 m_RenderingPath: 1 m_MobileRenderingPath: 1 metroPackageName: Template_3D diff --git a/ProjectSettings/ProjectVersion.txt b/ProjectSettings/ProjectVersion.txt index 89a11d7..bf8f7eb 100755 --- a/ProjectSettings/ProjectVersion.txt +++ b/ProjectSettings/ProjectVersion.txt @@ -1,2 +1,2 @@ -m_EditorVersion: 2019.4.35f1 -m_EditorVersionWithRevision: 2019.4.35f1 (0462406dff2e) +m_EditorVersion: 2019.4.36f1 +m_EditorVersionWithRevision: 2019.4.36f1 (660c164b2fc5)