Almost Final Version

This commit is contained in:
2022-05-16 01:13:50 +07:00
parent bb6aea8720
commit 150efde055
47 changed files with 1120 additions and 4707 deletions

View File

@ -1715,10 +1715,6 @@ GameObject:
m_Component: m_Component:
- component: {fileID: 7072444061591351794} - component: {fileID: 7072444061591351794}
- component: {fileID: 7072444061582351952} - component: {fileID: 7072444061582351952}
- component: {fileID: 6381261399840543104}
- component: {fileID: 2971219656579870553}
- component: {fileID: 5912052353413311719}
- component: {fileID: 8293113947138725737}
m_Layer: 0 m_Layer: 0
m_Name: PolyartCharacter m_Name: PolyartCharacter
m_TagString: Untagged m_TagString: Untagged
@ -1766,104 +1762,6 @@ Animator:
m_HasTransformHierarchy: 1 m_HasTransformHierarchy: 1
m_AllowConstantClipSamplingOptimization: 1 m_AllowConstantClipSamplingOptimization: 1
m_KeepAnimatorControllerStateOnDisable: 0 m_KeepAnimatorControllerStateOnDisable: 0
--- !u!136 &6381261399840543104
CapsuleCollider:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7072444061591711186}
m_Material: {fileID: 0}
m_IsTrigger: 0
m_Enabled: 1
m_Radius: 0.5
m_Height: 2.1
m_Direction: 1
m_Center: {x: 0, y: 1.06, z: 0}
--- !u!114 &2971219656579870553
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7072444061591711186}
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: 7072444061591351696}
feetTransform: {fileID: 7072444061591351794}
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: 9.81
gravityMin: 0
jumpingForce: {x: 0, y: 30, z: 0}
playerStance: 0
playerStanceSmoothing: 0
playerStandStance:
CameraHeight: 0
StanceCollider: {fileID: 6381261399840543104}
playerCrouchStance:
CameraHeight: 0
StanceCollider: {fileID: 0}
playerProneStance:
CameraHeight: 0
StanceCollider: {fileID: 0}
currentWeapon: {fileID: 0}
--- !u!114 &5912052353413311719
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7072444061591711186}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 907ff02de47a55a4e971d73d25e7d006, type: 3}
m_Name:
m_EditorClassIdentifier:
--- !u!143 &8293113947138725737
CharacterController:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7072444061591711186}
m_Material: {fileID: 0}
m_IsTrigger: 0
m_Enabled: 1
serializedVersion: 2
m_Height: 2.1
m_Radius: 0.5
m_SlopeLimit: 45
m_StepOffset: 0.3
m_SkinWidth: 0.08
m_MinMoveDistance: 0.001
m_Center: {x: 0, y: 1.02, z: 0}
--- !u!1 &7072444061591711188 --- !u!1 &7072444061591711188
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0

BIN
Assets/Arts/SciFiWarriorPBRHPPolyart/Textures/PolyArtGun.png (Stored with Git LFS) Normal file

Binary file not shown.

View File

@ -0,0 +1,92 @@
fileFormatVersion: 2
guid: c239f931a47220243835d43cd86ed6a2
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 11
mipmaps:
mipMapMode: 0
enableMipMap: 1
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 1
aniso: 1
mipBias: 0
wrapU: 0
wrapV: 0
wrapW: 0
nPOTScale: 1
lightmap: 0
compressionQuality: 50
spriteMode: 0
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 0
spriteTessellationDetail: -1
textureType: 0
textureShape: 1
singleChannelComponent: 0
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
applyGammaDecoding: 0
platformSettings:
- serializedVersion: 3
buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
bones: []
spriteID:
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
spritePackingTag:
pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0
userData:
assetBundleName:
assetBundleVariant:

Binary file not shown.

View File

@ -0,0 +1,92 @@
fileFormatVersion: 2
guid: 3e96e454adf915a448e4a4391fec8861
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 11
mipmaps:
mipMapMode: 0
enableMipMap: 1
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 1
aniso: 1
mipBias: 0
wrapU: 0
wrapV: 0
wrapW: 0
nPOTScale: 1
lightmap: 0
compressionQuality: 50
spriteMode: 0
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 0
spriteTessellationDetail: -1
textureType: 0
textureShape: 1
singleChannelComponent: 0
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
applyGammaDecoding: 0
platformSettings:
- serializedVersion: 3
buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
bones: []
spriteID:
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
spritePackingTag:
pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,6 +1,7 @@
fileFormatVersion: 2 fileFormatVersion: 2
guid: 0d0b10717aa98fe44bcf651ad0901a89 guid: bd8e80699b4d3b54194aedd6ec9c24d7
PrefabImporter: folderAsset: yes
DefaultImporter:
externalObjects: {} externalObjects: {}
userData: userData:
assetBundleName: assetBundleName:

77
Assets/Materials/PolyAtcMaterial.mat generated Normal file
View File

@ -0,0 +1,77 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 6
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: PolyAtcMaterial
m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
m_ShaderKeywords:
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses: []
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _BumpMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailMask:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailNormalMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _EmissionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 2800000, guid: 3e96e454adf915a448e4a4391fec8861, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OcclusionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ParallaxMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Floats:
- _BumpScale: 1
- _Cutoff: 0.5
- _DetailNormalMapScale: 1
- _DstBlend: 0
- _GlossMapScale: 1
- _Glossiness: 0
- _GlossyReflections: 1
- _Metallic: 0.3
- _Mode: 0
- _OcclusionStrength: 1
- _Parallax: 0.02
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1
- _SrcBlend: 1
- _UVSec: 0
- _ZWrite: 1
m_Colors:
- _Color: {r: 1, g: 1, b: 1, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}

View File

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

77
Assets/Materials/PolyDefMaterial.mat generated Normal file
View File

@ -0,0 +1,77 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 6
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: PolyDefMaterial
m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
m_ShaderKeywords:
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses: []
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _BumpMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailMask:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailNormalMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _EmissionMap:
m_Texture: {fileID: 2800000, guid: 61dc11b64d962ee4386737600bf34b90, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 2800000, guid: 6f23319fc780cdc43a22d23a4136c778, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OcclusionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ParallaxMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Floats:
- _BumpScale: 1
- _Cutoff: 0.5
- _DetailNormalMapScale: 1
- _DstBlend: 0
- _GlossMapScale: 1
- _Glossiness: 0
- _GlossyReflections: 1
- _Metallic: 0.3
- _Mode: 0
- _OcclusionStrength: 1
- _Parallax: 0.02
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1
- _SrcBlend: 1
- _UVSec: 0
- _ZWrite: 1
m_Colors:
- _Color: {r: 1, g: 1, b: 1, a: 1}
- _EmissionColor: {r: 4.0746284, g: 0.8721577, b: 0, a: 1}

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 5bfc78f05f6d4c24f9b3af77b64086a9
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 2100000
userData:
assetBundleName:
assetBundleVariant:

77
Assets/Materials/PolyGunMaterial.mat generated Normal file
View File

@ -0,0 +1,77 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 6
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: PolyGunMaterial
m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
m_ShaderKeywords:
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses: []
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _BumpMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailMask:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailNormalMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _EmissionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 2800000, guid: c239f931a47220243835d43cd86ed6a2, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OcclusionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ParallaxMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Floats:
- _BumpScale: 1
- _Cutoff: 0.5
- _DetailNormalMapScale: 1
- _DstBlend: 0
- _GlossMapScale: 1
- _Glossiness: 0
- _GlossyReflections: 1
- _Metallic: 0.3
- _Mode: 0
- _OcclusionStrength: 1
- _Parallax: 0.02
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1
- _SrcBlend: 1
- _UVSec: 0
- _ZWrite: 1
m_Colors:
- _Color: {r: 1, g: 1, b: 1, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}

View File

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

View File

@ -52,7 +52,7 @@ GameObject:
- component: {fileID: 5988018701276467001} - component: {fileID: 5988018701276467001}
- component: {fileID: 1547882613481475944} - component: {fileID: 1547882613481475944}
m_Layer: 8 m_Layer: 8
m_Name: Bot m_Name: Bot Legacy
m_TagString: Defender m_TagString: Defender
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1,535 +0,0 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &5245491127989480125
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 5245491127989480103}
- component: {fileID: 5245491127989480102}
- component: {fileID: 5583297852527723678}
- component: {fileID: 5245491127989480120}
- component: {fileID: 5245491127989480100}
- component: {fileID: 5245491127989480121}
- component: {fileID: 7254047075221496626}
- component: {fileID: 5182704636738128575}
- component: {fileID: 5220658550450318085}
- component: {fileID: 4264677542023120457}
- component: {fileID: 4715950961444674817}
- component: {fileID: 5653209015090846528}
m_Layer: 8
m_Name: Player
m_TagString: Defender
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &5245491127989480103
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
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: 5245491129196666053}
- {fileID: 5245491129603592455}
m_Father: {fileID: 0}
m_RootOrder: 0
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: 5245491127989480125}
m_Mesh: {fileID: 10208, guid: 0000000000000000e000000000000000, type: 0}
--- !u!23 &5583297852527723678
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5245491127989480125}
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!136 &5245491127989480120
CapsuleCollider:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5245491127989480125}
m_Material: {fileID: 0}
m_IsTrigger: 0
m_Enabled: 0
m_Radius: 0.3
m_Height: 2
m_Direction: 1
m_Center: {x: 0, y: 0, z: 0}
--- !u!136 &5245491127989480100
CapsuleCollider:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5245491127989480125}
m_Material: {fileID: 0}
m_IsTrigger: 0
m_Enabled: 0
m_Radius: 0.3
m_Height: 1.3
m_Direction: 1
m_Center: {x: 0, y: -0.35, z: 0}
--- !u!136 &5245491127989480121
CapsuleCollider:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5245491127989480125}
m_Material: {fileID: 0}
m_IsTrigger: 0
m_Enabled: 1
m_Radius: 0.3
m_Height: 0.8
m_Direction: 1
m_Center: {x: 0, y: -0.6, z: 0}
--- !u!195 &7254047075221496626
NavMeshAgent:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5245491127989480125}
m_Enabled: 1
m_AgentTypeID: 0
m_Radius: 0.5000001
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 &5182704636738128575
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5245491127989480125}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: d3ebcf807a37f344998fd648dfc9376d, type: 3}
m_Name:
m_EditorClassIdentifier:
navMeshAgent: {fileID: 0}
flag: {fileID: 0}
--- !u!114 &5220658550450318085
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5245491127989480125}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: dd8012d5925524537b27131fef517017, type: 3}
m_Name:
m_EditorClassIdentifier:
m_SensorName: BufferSensor
m_ObservableSize: 0
m_MaxNumObservables: 0
--- !u!114 &4264677542023120457
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5245491127989480125}
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!114 &4715950961444674817
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5245491127989480125}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: a6f2a081cfc8c4b4bb6864331109d147, type: 3}
m_Name:
m_EditorClassIdentifier:
agentParameters:
maxStep: 0
hasUpgradedFromAgentParameters: 1
MaxStep: 0
--- !u!114 &5653209015090846528
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5245491127989480125}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: d3ebcf807a37f344998fd648dfc9376d, type: 3}
m_Name:
m_EditorClassIdentifier:
navMeshAgent: {fileID: 7254047075221496626}
flag: {fileID: 0}
--- !u!1 &5245491128202443531
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 5245491128202443574}
- component: {fileID: 5245491128202443529}
- component: {fileID: 5245491128202443528}
m_Layer: 8
m_Name: Camera
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &5245491128202443574
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5245491128202443531}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0.388, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children: []
m_Father: {fileID: 5245491129196666053}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !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}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 5245491129196666053}
m_Layer: 8
m_Name: CameraHolder
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &5245491129196666053
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
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: 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

View File

@ -1,140 +0,0 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &164324136889094180
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 164324136889094181}
m_Layer: 0
m_Name: Cube
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &164324136889094181
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 164324136889094180}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0.903, y: 1.832, z: 4.88}
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children:
- {fileID: 164324138317697558}
m_Father: {fileID: 0}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &164324138317697553
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 164324138317697558}
- component: {fileID: 164324138317697546}
- component: {fileID: 164324138317697557}
- component: {fileID: 164324138317697556}
- component: {fileID: 164324138317697559}
m_Layer: 0
m_Name: Enemy
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &164324138317697558
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 164324138317697553}
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: 164324136889094181}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!33 &164324138317697546
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 164324138317697553}
m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0}
--- !u!23 &164324138317697557
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 164324138317697553}
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 &164324138317697556
BoxCollider:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 164324138317697553}
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!114 &164324138317697559
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 164324138317697553}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 954fb0076c55707429047d7d4a3e8ded, type: 3}
m_Name:
m_EditorClassIdentifier:
health: 50

View File

@ -919,7 +919,7 @@ SkinnedMeshRenderer:
m_RenderingLayerMask: 1 m_RenderingLayerMask: 1
m_RendererPriority: 0 m_RendererPriority: 0
m_Materials: m_Materials:
- {fileID: 2100000, guid: 78660c09ff101ea4cb77de408a9527da, type: 2} - {fileID: 2100000, guid: f525509954a5ad041af3aee063a7748d, type: 2}
m_StaticBatchInfo: m_StaticBatchInfo:
firstSubMesh: 0 firstSubMesh: 0
subMeshCount: 0 subMeshCount: 0
@ -1397,8 +1397,9 @@ GameObject:
- component: {fileID: 2851493361974364939} - component: {fileID: 2851493361974364939}
- component: {fileID: 5170482295850327424} - component: {fileID: 5170482295850327424}
- component: {fileID: 5519976521156458274} - component: {fileID: 5519976521156458274}
- component: {fileID: -4820536401884566159}
m_Layer: 10 m_Layer: 10
m_Name: Character m_Name: Player
m_TagString: Untagged m_TagString: Untagged
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
@ -1493,10 +1494,8 @@ MonoBehaviour:
myAnimatorHandler: {fileID: 0} myAnimatorHandler: {fileID: 0}
myRigidbody: {fileID: 2528273238195332178} myRigidbody: {fileID: 2528273238195332178}
jumpForce: 1800 jumpForce: 1800
normalCamera: {fileID: 0}
movementSpeed: 1 movementSpeed: 1
rotationSpeed: 1 rotationSpeed: 1
health: 100
--- !u!114 &2528273238195332176 --- !u!114 &2528273238195332176
MonoBehaviour: MonoBehaviour:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -1544,7 +1543,7 @@ MonoBehaviour:
m_Name: m_Name:
m_EditorClassIdentifier: m_EditorClassIdentifier:
enemy: {fileID: 164324136889094180, guid: 2d8d8fcef9fc43144982428bd40ad6f0, type: 3} enemy: {fileID: 164324136889094180, guid: 2d8d8fcef9fc43144982428bd40ad6f0, type: 3}
_isFiring: 0 isFiring: 0
lookSpeed: 50 lookSpeed: 50
--- !u!114 &5170482295850327424 --- !u!114 &5170482295850327424
MonoBehaviour: MonoBehaviour:
@ -1558,13 +1557,10 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 52f87dd051395614ebf0004d18d43bba, type: 3} m_Script: {fileID: 11500000, guid: 52f87dd051395614ebf0004d18d43bba, type: 3}
m_Name: m_Name:
m_EditorClassIdentifier: m_EditorClassIdentifier:
damage: 10
range: 200
raycast: {fileID: 9178730298827149128} raycast: {fileID: 9178730298827149128}
FirePoint: {fileID: 6083229256174510991} firePoint: {fileID: 6083229256174510991}
Prefabs: _projectilePrefab: {fileID: 1990380580032880, guid: 46b312e00ed9c1f459ea9f0e55bfac77,
- {fileID: 1564468091806366, guid: f1dc4df701f37324c98ea16f41770afc, type: 3} type: 3}
- {fileID: 1595252117517162, guid: e7776336bc56a9b4caa1c90ea92ff765, type: 3}
gun: {fileID: 6083229256174510991} gun: {fileID: 6083229256174510991}
--- !u!114 &5519976521156458274 --- !u!114 &5519976521156458274
MonoBehaviour: MonoBehaviour:
@ -1585,6 +1581,45 @@ MonoBehaviour:
autoLockCursor: 0 autoLockCursor: 0
cam: {fileID: 5592602041335177245} cam: {fileID: 5592602041335177245}
character: {fileID: 2528273238195332181} character: {fileID: 2528273238195332181}
--- !u!23 &-4820536401884566159
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2528273238195332181}
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: 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!1 &2528273238195332183 --- !u!1 &2528273238195332183
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0

View File

@ -814,6 +814,75 @@ MeshFilter:
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 485693490} m_GameObject: {fileID: 485693490}
m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0}
--- !u!1001 &512891487
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
m_TransformParent: {fileID: 2060099472}
m_Modifications:
- target: {fileID: 7378066357312323926, guid: f58a14c8ba97dfa4f9f4103bbee852d4,
type: 3}
propertyPath: m_RootOrder
value: 1
objectReference: {fileID: 0}
- target: {fileID: 7378066357312323926, guid: f58a14c8ba97dfa4f9f4103bbee852d4,
type: 3}
propertyPath: m_LocalPosition.x
value: 26.44
objectReference: {fileID: 0}
- target: {fileID: 7378066357312323926, guid: f58a14c8ba97dfa4f9f4103bbee852d4,
type: 3}
propertyPath: m_LocalPosition.y
value: -0.02
objectReference: {fileID: 0}
- target: {fileID: 7378066357312323926, guid: f58a14c8ba97dfa4f9f4103bbee852d4,
type: 3}
propertyPath: m_LocalPosition.z
value: -4.8
objectReference: {fileID: 0}
- target: {fileID: 7378066357312323926, guid: f58a14c8ba97dfa4f9f4103bbee852d4,
type: 3}
propertyPath: m_LocalRotation.w
value: 1
objectReference: {fileID: 0}
- target: {fileID: 7378066357312323926, guid: f58a14c8ba97dfa4f9f4103bbee852d4,
type: 3}
propertyPath: m_LocalRotation.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7378066357312323926, guid: f58a14c8ba97dfa4f9f4103bbee852d4,
type: 3}
propertyPath: m_LocalRotation.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7378066357312323926, guid: f58a14c8ba97dfa4f9f4103bbee852d4,
type: 3}
propertyPath: m_LocalRotation.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7378066357312323926, guid: f58a14c8ba97dfa4f9f4103bbee852d4,
type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7378066357312323926, guid: f58a14c8ba97dfa4f9f4103bbee852d4,
type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7378066357312323926, guid: f58a14c8ba97dfa4f9f4103bbee852d4,
type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7378066357312323927, guid: f58a14c8ba97dfa4f9f4103bbee852d4,
type: 3}
propertyPath: m_Name
value: navPointPrefab2
objectReference: {fileID: 0}
m_RemovedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: f58a14c8ba97dfa4f9f4103bbee852d4, type: 3}
--- !u!1 &577106247 --- !u!1 &577106247
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -1288,102 +1357,93 @@ Transform:
m_Father: {fileID: 782729761} m_Father: {fileID: 782729761}
m_RootOrder: 0 m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &1116745543 --- !u!4 &906771656 stripped
GameObject: Transform:
m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 7378066357312323926, guid: f58a14c8ba97dfa4f9f4103bbee852d4,
m_CorrespondingSourceObject: {fileID: 0} type: 3}
m_PrefabInstance: {fileID: 0} m_PrefabInstance: {fileID: 512891487}
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
serializedVersion: 6 --- !u!114 &906771657 stripped
m_Component:
- component: {fileID: 1116745547}
- component: {fileID: 1116745546}
- component: {fileID: 1116745545}
- component: {fileID: 1116745544}
m_Layer: 0
m_Name: navpoint2
m_TagString: Point
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!114 &1116745544
MonoBehaviour: MonoBehaviour:
m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 7378066357312323925, guid: f58a14c8ba97dfa4f9f4103bbee852d4,
m_CorrespondingSourceObject: {fileID: 0} type: 3}
m_PrefabInstance: {fileID: 0} m_PrefabInstance: {fileID: 512891487}
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1116745543} m_GameObject: {fileID: 0}
m_Enabled: 1 m_Enabled: 1
m_EditorHideFlags: 0 m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 6a2d29bfc31a8cf4e831e3bb80720414, type: 3} m_Script: {fileID: 11500000, guid: 6a2d29bfc31a8cf4e831e3bb80720414, type: 3}
m_Name: m_Name:
m_EditorClassIdentifier: m_EditorClassIdentifier:
navType: 1 --- !u!1001 &1035463159
PointId: 0 PrefabInstance:
DeathAttr: 0
EnemiesSeen: []
--- !u!23 &1116745545
MeshRenderer:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0} serializedVersion: 2
m_PrefabInstance: {fileID: 0} m_Modification:
m_PrefabAsset: {fileID: 0} m_TransformParent: {fileID: 2060099472}
m_GameObject: {fileID: 1116745543} m_Modifications:
m_Enabled: 0 - target: {fileID: 7378066357312323926, guid: f58a14c8ba97dfa4f9f4103bbee852d4,
m_CastShadows: 1 type: 3}
m_ReceiveShadows: 1 propertyPath: m_RootOrder
m_DynamicOccludee: 1 value: 0
m_MotionVectors: 1 objectReference: {fileID: 0}
m_LightProbeUsage: 1 - target: {fileID: 7378066357312323926, guid: f58a14c8ba97dfa4f9f4103bbee852d4,
m_ReflectionProbeUsage: 1 type: 3}
m_RayTracingMode: 2 propertyPath: m_LocalPosition.x
m_RenderingLayerMask: 1 value: 14.28
m_RendererPriority: 0 objectReference: {fileID: 0}
m_Materials: - target: {fileID: 7378066357312323926, guid: f58a14c8ba97dfa4f9f4103bbee852d4,
- {fileID: 2100000, guid: 536ae120520e6f245bad32b94a03f6a2, type: 2} type: 3}
m_StaticBatchInfo: propertyPath: m_LocalPosition.y
firstSubMesh: 0 value: 0
subMeshCount: 0 objectReference: {fileID: 0}
m_StaticBatchRoot: {fileID: 0} - target: {fileID: 7378066357312323926, guid: f58a14c8ba97dfa4f9f4103bbee852d4,
m_ProbeAnchor: {fileID: 0} type: 3}
m_LightProbeVolumeOverride: {fileID: 0} propertyPath: m_LocalPosition.z
m_ScaleInLightmap: 1 value: 0
m_ReceiveGI: 1 objectReference: {fileID: 0}
m_PreserveUVs: 0 - target: {fileID: 7378066357312323926, guid: f58a14c8ba97dfa4f9f4103bbee852d4,
m_IgnoreNormalsForChartDetection: 0 type: 3}
m_ImportantGI: 0 propertyPath: m_LocalRotation.w
m_StitchLightmapSeams: 1 value: 1
m_SelectedEditorRenderState: 3 objectReference: {fileID: 0}
m_MinimumChartSize: 4 - target: {fileID: 7378066357312323926, guid: f58a14c8ba97dfa4f9f4103bbee852d4,
m_AutoUVMaxDistance: 0.5 type: 3}
m_AutoUVMaxAngle: 89 propertyPath: m_LocalRotation.x
m_LightmapParameters: {fileID: 0} value: -0
m_SortingLayerID: 0 objectReference: {fileID: 0}
m_SortingLayer: 0 - target: {fileID: 7378066357312323926, guid: f58a14c8ba97dfa4f9f4103bbee852d4,
m_SortingOrder: 0 type: 3}
--- !u!33 &1116745546 propertyPath: m_LocalRotation.y
MeshFilter: value: -0
m_ObjectHideFlags: 0 objectReference: {fileID: 0}
m_CorrespondingSourceObject: {fileID: 0} - target: {fileID: 7378066357312323926, guid: f58a14c8ba97dfa4f9f4103bbee852d4,
m_PrefabInstance: {fileID: 0} type: 3}
m_PrefabAsset: {fileID: 0} propertyPath: m_LocalRotation.z
m_GameObject: {fileID: 1116745543} value: -0
m_Mesh: {fileID: 10206, guid: 0000000000000000e000000000000000, type: 0} objectReference: {fileID: 0}
--- !u!4 &1116745547 - target: {fileID: 7378066357312323926, guid: f58a14c8ba97dfa4f9f4103bbee852d4,
Transform: type: 3}
m_ObjectHideFlags: 0 propertyPath: m_LocalEulerAnglesHint.x
m_CorrespondingSourceObject: {fileID: 0} value: 0
m_PrefabInstance: {fileID: 0} objectReference: {fileID: 0}
m_PrefabAsset: {fileID: 0} - target: {fileID: 7378066357312323926, guid: f58a14c8ba97dfa4f9f4103bbee852d4,
m_GameObject: {fileID: 1116745543} type: 3}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} propertyPath: m_LocalEulerAnglesHint.y
m_LocalPosition: {x: 47.446796, y: -5.782543, z: -25.400002} value: 0
m_LocalScale: {x: 1.4367, y: 1.4367, z: 1.4367} objectReference: {fileID: 0}
m_Children: [] - target: {fileID: 7378066357312323926, guid: f58a14c8ba97dfa4f9f4103bbee852d4,
m_Father: {fileID: 2060099472} type: 3}
m_RootOrder: 1 propertyPath: m_LocalEulerAnglesHint.z
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} value: 0
objectReference: {fileID: 0}
- target: {fileID: 7378066357312323927, guid: f58a14c8ba97dfa4f9f4103bbee852d4,
type: 3}
propertyPath: m_Name
value: navPointPrefab1
objectReference: {fileID: 0}
m_RemovedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: f58a14c8ba97dfa4f9f4103bbee852d4, type: 3}
--- !u!1 &1184553410 --- !u!1 &1184553410
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -1483,7 +1543,7 @@ Mesh:
m_CorrespondingSourceObject: {fileID: 0} m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0} m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
m_Name: pb_Mesh16900 m_Name: pb_Mesh19228
serializedVersion: 10 serializedVersion: 10
m_SubMeshes: m_SubMeshes:
- serializedVersion: 2 - serializedVersion: 2
@ -1640,6 +1700,24 @@ Mesh:
offset: 0 offset: 0
size: 0 size: 0
path: path:
--- !u!4 &1299625857 stripped
Transform:
m_CorrespondingSourceObject: {fileID: 7378066357312323926, guid: f58a14c8ba97dfa4f9f4103bbee852d4,
type: 3}
m_PrefabInstance: {fileID: 1035463159}
m_PrefabAsset: {fileID: 0}
--- !u!114 &1299625858 stripped
MonoBehaviour:
m_CorrespondingSourceObject: {fileID: 7378066357312323925, guid: f58a14c8ba97dfa4f9f4103bbee852d4,
type: 3}
m_PrefabInstance: {fileID: 1035463159}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 6a2d29bfc31a8cf4e831e3bb80720414, type: 3}
m_Name:
m_EditorClassIdentifier:
--- !u!1001 &1343495431 --- !u!1001 &1343495431
PrefabInstance: PrefabInstance:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -1724,24 +1802,81 @@ PrefabInstance:
objectReference: {fileID: 0} objectReference: {fileID: 0}
m_RemovedComponents: [] m_RemovedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: 00815eb34d8b87f42b0215bd3dfd7463, type: 3} m_SourcePrefab: {fileID: 100100000, guid: 00815eb34d8b87f42b0215bd3dfd7463, type: 3}
--- !u!4 &1345085341 stripped --- !u!1001 &1405869922
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
m_TransformParent: {fileID: 2060099472}
m_Modifications:
- target: {fileID: 7378066357312323926, guid: f58a14c8ba97dfa4f9f4103bbee852d4,
type: 3}
propertyPath: m_RootOrder
value: 2
objectReference: {fileID: 0}
- target: {fileID: 7378066357312323926, guid: f58a14c8ba97dfa4f9f4103bbee852d4,
type: 3}
propertyPath: m_LocalPosition.x
value: 36.25
objectReference: {fileID: 0}
- target: {fileID: 7378066357312323926, guid: f58a14c8ba97dfa4f9f4103bbee852d4,
type: 3}
propertyPath: m_LocalPosition.y
value: 0.74
objectReference: {fileID: 0}
- target: {fileID: 7378066357312323926, guid: f58a14c8ba97dfa4f9f4103bbee852d4,
type: 3}
propertyPath: m_LocalPosition.z
value: 18.04
objectReference: {fileID: 0}
- target: {fileID: 7378066357312323926, guid: f58a14c8ba97dfa4f9f4103bbee852d4,
type: 3}
propertyPath: m_LocalRotation.w
value: 1
objectReference: {fileID: 0}
- target: {fileID: 7378066357312323926, guid: f58a14c8ba97dfa4f9f4103bbee852d4,
type: 3}
propertyPath: m_LocalRotation.x
value: -0
objectReference: {fileID: 0}
- target: {fileID: 7378066357312323926, guid: f58a14c8ba97dfa4f9f4103bbee852d4,
type: 3}
propertyPath: m_LocalRotation.y
value: -0
objectReference: {fileID: 0}
- target: {fileID: 7378066357312323926, guid: f58a14c8ba97dfa4f9f4103bbee852d4,
type: 3}
propertyPath: m_LocalRotation.z
value: -0
objectReference: {fileID: 0}
- target: {fileID: 7378066357312323926, guid: f58a14c8ba97dfa4f9f4103bbee852d4,
type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7378066357312323926, guid: f58a14c8ba97dfa4f9f4103bbee852d4,
type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7378066357312323926, guid: f58a14c8ba97dfa4f9f4103bbee852d4,
type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7378066357312323927, guid: f58a14c8ba97dfa4f9f4103bbee852d4,
type: 3}
propertyPath: m_Name
value: navPointPrefab3
objectReference: {fileID: 0}
m_RemovedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: f58a14c8ba97dfa4f9f4103bbee852d4, type: 3}
--- !u!4 &1419663744 stripped
Transform: Transform:
m_CorrespondingSourceObject: {fileID: 7378066357312323926, guid: f58a14c8ba97dfa4f9f4103bbee852d4, m_CorrespondingSourceObject: {fileID: 7378066357312323926, guid: f58a14c8ba97dfa4f9f4103bbee852d4,
type: 3} type: 3}
m_PrefabInstance: {fileID: 7378066356508352203} m_PrefabInstance: {fileID: 1405869922}
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
--- !u!114 &1345085342 stripped
MonoBehaviour:
m_CorrespondingSourceObject: {fileID: 7378066357312323925, guid: f58a14c8ba97dfa4f9f4103bbee852d4,
type: 3}
m_PrefabInstance: {fileID: 7378066356508352203}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 6a2d29bfc31a8cf4e831e3bb80720414, type: 3}
m_Name:
m_EditorClassIdentifier:
--- !u!1 &1488699521 --- !u!1 &1488699521
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -2166,9 +2301,9 @@ MonoBehaviour:
ammoPrefab: {fileID: 4445527429698276768, guid: 0a41884e7e8ac3c4abfdd542e53abee0, ammoPrefab: {fileID: 4445527429698276768, guid: 0a41884e7e8ac3c4abfdd542e53abee0,
type: 3} type: 3}
spawnPoints: spawnPoints:
- {fileID: 1345085342} - {fileID: 0}
- {fileID: 1116745544} - {fileID: 0}
- {fileID: 2004854094} - {fileID: 0}
--- !u!114 &1858987090 --- !u!114 &1858987090
MonoBehaviour: MonoBehaviour:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -2182,12 +2317,12 @@ MonoBehaviour:
m_Name: m_Name:
m_EditorClassIdentifier: m_EditorClassIdentifier:
spawnPointsForDefendersTeam: spawnPointsForDefendersTeam:
- {fileID: 140697606} - {fileID: 906771657}
spawnPointsForAttackersTeam: spawnPointsForAttackersTeam:
- {fileID: 2004854094} - {fileID: 1299625858}
AIPrefab: {fileID: 6171680323948707524, guid: b016874eb34cc084aa4359f0bbec50e1, AIPrefab: {fileID: 1740317275426328350, guid: be2f9603c4cf8194b9c67f41250d63d0,
type: 3} type: 3}
PlayerPrefab: {fileID: 5245491127989480125, guid: 80f6c1c85e5daed4c96c70205ed5503d, PlayerPrefab: {fileID: 6633355367928764388, guid: 0d0b10717aa98fe44bcf651ad0901a89,
type: 3} type: 3}
--- !u!114 &1858987091 --- !u!114 &1858987091
MonoBehaviour: MonoBehaviour:
@ -2423,102 +2558,6 @@ Transform:
m_Father: {fileID: 0} m_Father: {fileID: 0}
m_RootOrder: 1 m_RootOrder: 1
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &2004854093
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 2004854097}
- component: {fileID: 2004854096}
- component: {fileID: 2004854095}
- component: {fileID: 2004854094}
m_Layer: 0
m_Name: navpoint3
m_TagString: Point
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!114 &2004854094
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2004854093}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 6a2d29bfc31a8cf4e831e3bb80720414, type: 3}
m_Name:
m_EditorClassIdentifier:
navType: 1
PointId: 0
DeathAttr: 0
EnemiesSeen: []
--- !u!23 &2004854095
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2004854093}
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 &2004854096
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2004854093}
m_Mesh: {fileID: 10206, guid: 0000000000000000e000000000000000, type: 0}
--- !u!4 &2004854097
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2004854093}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
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}
m_RootOrder: 2
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &2060099471 --- !u!1 &2060099471
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -2543,12 +2582,12 @@ Transform:
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2060099471} m_GameObject: {fileID: 2060099471}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 19.553204, y: 7.782543, z: -15} m_LocalPosition: {x: 41.2, y: 2.95, z: -37.6}
m_LocalScale: {x: 1, y: 1, z: 1} m_LocalScale: {x: 1, y: 1, z: 1}
m_Children: m_Children:
- {fileID: 1345085341} - {fileID: 1299625857}
- {fileID: 1116745547} - {fileID: 906771656}
- {fileID: 2004854097} - {fileID: 1419663744}
m_Father: {fileID: 350524557} m_Father: {fileID: 350524557}
m_RootOrder: 3 m_RootOrder: 3
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
@ -2749,72 +2788,3 @@ PrefabInstance:
objectReference: {fileID: 0} objectReference: {fileID: 0}
m_RemovedComponents: [] m_RemovedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: 1685c1d9ce4ab174f95c646b1826010b, type: 3} m_SourcePrefab: {fileID: 100100000, guid: 1685c1d9ce4ab174f95c646b1826010b, type: 3}
--- !u!1001 &7378066356508352203
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
m_TransformParent: {fileID: 2060099472}
m_Modifications:
- target: {fileID: 7378066357312323926, guid: f58a14c8ba97dfa4f9f4103bbee852d4,
type: 3}
propertyPath: m_RootOrder
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7378066357312323926, guid: f58a14c8ba97dfa4f9f4103bbee852d4,
type: 3}
propertyPath: m_LocalPosition.x
value: 47.446796
objectReference: {fileID: 0}
- target: {fileID: 7378066357312323926, guid: f58a14c8ba97dfa4f9f4103bbee852d4,
type: 3}
propertyPath: m_LocalPosition.y
value: -5.782543
objectReference: {fileID: 0}
- target: {fileID: 7378066357312323926, guid: f58a14c8ba97dfa4f9f4103bbee852d4,
type: 3}
propertyPath: m_LocalPosition.z
value: -25.400002
objectReference: {fileID: 0}
- target: {fileID: 7378066357312323926, guid: f58a14c8ba97dfa4f9f4103bbee852d4,
type: 3}
propertyPath: m_LocalRotation.w
value: 1
objectReference: {fileID: 0}
- target: {fileID: 7378066357312323926, guid: f58a14c8ba97dfa4f9f4103bbee852d4,
type: 3}
propertyPath: m_LocalRotation.x
value: -0
objectReference: {fileID: 0}
- target: {fileID: 7378066357312323926, guid: f58a14c8ba97dfa4f9f4103bbee852d4,
type: 3}
propertyPath: m_LocalRotation.y
value: -0
objectReference: {fileID: 0}
- target: {fileID: 7378066357312323926, guid: f58a14c8ba97dfa4f9f4103bbee852d4,
type: 3}
propertyPath: m_LocalRotation.z
value: -0
objectReference: {fileID: 0}
- target: {fileID: 7378066357312323926, guid: f58a14c8ba97dfa4f9f4103bbee852d4,
type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7378066357312323926, guid: f58a14c8ba97dfa4f9f4103bbee852d4,
type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7378066357312323926, guid: f58a14c8ba97dfa4f9f4103bbee852d4,
type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7378066357312323927, guid: f58a14c8ba97dfa4f9f4103bbee852d4,
type: 3}
propertyPath: m_Name
value: navpoint1
objectReference: {fileID: 0}
m_RemovedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: f58a14c8ba97dfa4f9f4103bbee852d4, type: 3}

View File

@ -1,6 +1,7 @@
fileFormatVersion: 2 fileFormatVersion: 2
guid: a7480b77908b042d8adcdd84e8c2c15e guid: 09d06d136b63f664ca69050e45726199
PrefabImporter: folderAsset: yes
DefaultImporter:
externalObjects: {} externalObjects: {}
userData: userData:
assetBundleName: assetBundleName:

View File

@ -0,0 +1,38 @@
using UnityEngine;
namespace Animators.Leonid_Animator.Bot
{
[RequireComponent(typeof(Rigidbody))]
[RequireComponent(typeof(AnimatorHandler))]
[RequireComponent(typeof(MovementController))]
[RequireComponent(typeof(NPC))]
public class BotLocomotion : MonoBehaviour
{
private Vector3 _moveDirection;
private Transform _myTransform;
private AnimatorHandler _myAnimatorHandler;
private MovementController _movementController;
private NPC _npc;
private Rigidbody _myRigidbody;
private void Start()
{
_myRigidbody = GetComponent<Rigidbody>();
_myAnimatorHandler = GetComponent<AnimatorHandler>();
_movementController = GetComponent<MovementController>();
_npc = GetComponent<NPC>();
_myTransform = transform;
_myAnimatorHandler.Initialize();
}
public void UpdateAnimatorValues()
{
var movementDir = _movementController.Velocity;
_myAnimatorHandler.UpdateAnimatorValues(movementDir.y, movementDir.x,
false, _npc.NpcBodyState is NpcCrouchingState, _npc.IsFiring);
}
}
}

View File

@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: 3ad80a2bc9a9477f93ab26af02a07582
timeCreated: 1652616279

View File

@ -1,6 +1,7 @@
fileFormatVersion: 2 fileFormatVersion: 2
guid: 2d8d8fcef9fc43144982428bd40ad6f0 guid: 0f4aef398dbeb02429a5834250b01855
PrefabImporter: folderAsset: yes
DefaultImporter:
externalObjects: {} externalObjects: {}
userData: userData:
assetBundleName: assetBundleName:

View File

@ -1,6 +1,6 @@
using UnityEngine; using UnityEngine;
namespace Animators.Leonid_Animator namespace Animators.Leonid_Animator.Player
{ {
[RequireComponent( [RequireComponent(
typeof(Rigidbody), typeof(Rigidbody),
@ -17,13 +17,11 @@ namespace Animators.Leonid_Animator
public Rigidbody myRigidbody; public Rigidbody myRigidbody;
[SerializeField] public float jumpForce; [SerializeField] public float jumpForce;
public GameObject normalCamera;
[Header("Stats")] [Header("Stats")]
[SerializeField] private float movementSpeed = 5; [SerializeField] private float movementSpeed = 5;
[SerializeField] private float rotationSpeed = 10; [SerializeField] private float rotationSpeed = 10;
public float health = 100f;
private void Start() private void Start()
{ {
myRigidbody = GetComponent<Rigidbody>(); myRigidbody = GetComponent<Rigidbody>();
@ -37,12 +35,6 @@ namespace Animators.Leonid_Animator
private void Update() private void Update()
{ {
if (Input.GetButtonDown("Fire1") && health > 0)
{
health -= 5;
}
var deltaTime = Time.deltaTime; var deltaTime = Time.deltaTime;
_inputHandler.TickInput(deltaTime); _inputHandler.TickInput(deltaTime);
_moveDirection = _cameraObject.forward * _inputHandler.vertical _moveDirection = _cameraObject.forward * _inputHandler.vertical

View File

@ -1,7 +1,7 @@
using CameraScripts; using CameraScripts;
using UnityEngine; using UnityEngine;
namespace Animators.Leonid_Animator namespace Animators.Leonid_Animator.Player
{ {
public class InputHandler : MonoBehaviour public class InputHandler : MonoBehaviour
{ {

View File

@ -38,32 +38,30 @@ public class CharacterFactory : MonoBehaviour
throw new System.ArgumentException("Can be only one human player"); throw new System.ArgumentException("Can be only one human player");
for (int i = 0; i < attcNum - humanAtc; i++) for (int i = 0; i < attcNum - humanAtc; i++)
InstanciateEntity(Team.Attackers, TypeAI.D0DiskAI, InstantiateEntity(Team.Attackers, TypeAI.D0DiskAI,
spawnPointsForAttackersTeam[Random.Range(0, spawnPointsForAttackersTeam.Count)]); spawnPointsForAttackersTeam[Random.Range(0, spawnPointsForAttackersTeam.Count)]);
for (int i = 0; i < defNum - humanDef; i++) for (int i = 0; i < defNum - humanDef; i++)
InstanciateEntity(Team.Defenders, TypeAI.D0DiskAI, InstantiateEntity(Team.Defenders, TypeAI.D0DiskAI,
spawnPointsForDefendersTeam[Random.Range(0, spawnPointsForDefendersTeam.Count)]); spawnPointsForDefendersTeam[Random.Range(0, spawnPointsForDefendersTeam.Count)]);
if (humanAtc == 1) if (humanAtc == 1)
InstanciateEntity(Team.Attackers, TypeAI.HumanAI, InstantiateEntity(Team.Attackers, TypeAI.HumanAI,
spawnPointsForAttackersTeam[Random.Range(0, spawnPointsForAttackersTeam.Count)]); spawnPointsForAttackersTeam[Random.Range(0, spawnPointsForAttackersTeam.Count)]);
if (humanDef == 1) if (humanDef == 1)
InstanciateEntity(Team.Defenders, TypeAI.HumanAI, InstantiateEntity(Team.Defenders, TypeAI.HumanAI,
spawnPointsForDefendersTeam[Random.Range(0, spawnPointsForDefendersTeam.Count)]); spawnPointsForDefendersTeam[Random.Range(0, spawnPointsForDefendersTeam.Count)]);
GameManager.OnResetScene += ResetCharacters; GameManager.OnResetScene += ResetCharacters;
} }
private void InstanciateEntity(Team team, TypeAI typeAi, NavPoint spawnPoint) private void InstantiateEntity(Team team, TypeAI typeAi, NavPoint spawnPoint)
{ {
var gameobject = GameObject.Instantiate( var gameobject = GameObject.Instantiate(
typeAi == TypeAI.HumanAI ? PlayerPrefab : AIPrefab, typeAi == TypeAI.HumanAI ? PlayerPrefab : AIPrefab,
spawnPoint.Position, spawnPoint.Position,
Quaternion.identity); Quaternion.identity);
ApplyMaterial(team, gameobject);
gameobject.SetActive(true); gameobject.SetActive(true);
if (team == Team.Attackers) gameObject.tag = team == Team.Attackers ? "Attacker" : "Defender";
gameObject.tag = "Attacker";
else
gameObject.tag = "Defender";
if (typeAi == TypeAI.HumanAI) if (typeAi == TypeAI.HumanAI)
{ {
@ -73,13 +71,35 @@ public class CharacterFactory : MonoBehaviour
else else
{ {
var npc = gameobject.GetComponent<NPC>(); var npc = gameobject.GetComponent<NPC>();
if (team == Team.Attackers)
GameManager._attackersTeam.RegisterAgent(npc);
else
{
GameManager._defendersTeam.RegisterAgent(npc);
}
npc.GetCharacter.Team = team; npc.GetCharacter.Team = team;
npc.SetModel(team.ToString(), ScriptableObject.CreateInstance<NNModel>(), InferenceDevice.Default ); npc.SetModel(team.ToString(), null, InferenceDevice.Default );
gameobject.GetComponent<MovementController>().PointStartID = spawnPoint.PointId; gameobject.GetComponent<MovementController>().PointStartID = spawnPoint.PointId;
bots.Add(gameobject); bots.Add(gameobject);
} }
} }
private void ApplyMaterial(Team team, GameObject go)
{
var mat = team == Team.Attackers
? SettingsReader.Instance.GetSettings.atcMaterial
: SettingsReader.Instance.GetSettings.defMaterial;
for (var i = 0; i < go.transform.childCount; i++)
{
if (go.transform.GetChild(i)
.TryGetComponent<SkinnedMeshRenderer>(out var skin))
{
skin.material = mat;
}
}
}
public void ReSpawn(ICharacter character, ref Vector3 pos, ref int startPointId) public void ReSpawn(ICharacter character, ref Vector3 pos, ref int startPointId)
{ {
character.ResetCharacter(); character.ResetCharacter();

View File

@ -1,27 +0,0 @@
using System;
using System.Collections;
using System.Collections.Generic;
using Animators.Leonid_Animator;
using UnityEngine;
using UnityEngine.InputSystem.XR.Haptics;
using UnityEngine.Networking;
using UnityEngine.UI;
public class HealthBarScript : MonoBehaviour
{
public Image HealthBar;
public float CurrentHealth;
public float MaxHealth = 100f;
public CharacterLocomotion Player;
private void Start()
{
//HealthBar = GetComponent<Image>();
//Player = FindObjectOfType<CharacterLocomotion>();
}
private void Update()
{
CurrentHealth = Player.health;
HealthBar.fillAmount = CurrentHealth / MaxHealth;
}
}

View File

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

View File

@ -4,5 +4,7 @@ public interface ICharacter
{ {
Character GetCharacter { get; } Character GetCharacter { get; }
void ResetCharacter(); void ResetCharacter();
void GetDamage(int damage);
event Action<bool> OnDeathEvent; event Action<bool> OnDeathEvent;
} }

View File

@ -1,11 +1,14 @@
using System.Collections.Generic; using System;
using System.Collections.Generic;
using System.Linq; using System.Linq;
using UnityEngine; using UnityEngine;
using UnityEngine.AI; using UnityEngine.AI;
using Random = UnityEngine.Random;
[RequireComponent(typeof(NavMeshAgent))] [RequireComponent(typeof(NavMeshAgent))]
public class MovementController : MonoBehaviour public class MovementController : MonoBehaviour
{ {
private Transform _firePointTransform;
public int PointStartID { get; set; } public int PointStartID { get; set; }
public int PointEndID { get; private set; } public int PointEndID { get; private set; }
public float FlagDistance { get; private set; } public float FlagDistance { get; private set; }
@ -17,7 +20,6 @@ public class MovementController : MonoBehaviour
public float DistanceToGo { get; private set; } public float DistanceToGo { get; private set; }
public float RemainingDistance => navMeshAgent.remainingDistance; public float RemainingDistance => navMeshAgent.remainingDistance;
public Vector3 Velocity => navMeshAgent.velocity; public Vector3 Velocity => navMeshAgent.velocity;
private Dictionary<int, NavPoint> _idNavPointDict; private Dictionary<int, NavPoint> _idNavPointDict;
@ -25,10 +27,11 @@ public class MovementController : MonoBehaviour
{ {
navMeshAgent.speed = SettingsReader.Instance.GetSettings.MovementSpeed; navMeshAgent.speed = SettingsReader.Instance.GetSettings.MovementSpeed;
_idNavPointDict = MapManager.Instance.IDToNavPoint; _idNavPointDict = MapManager.Instance.IDToNavPoint;
_firePointTransform = transform.GetChild(0);
InvokeRepeating(nameof(UpdateFlagPosition), 0, UpdateFlagPositionDelay); InvokeRepeating(nameof(UpdateFlagPosition), 0, UpdateFlagPositionDelay);
InvokeRepeating(nameof(ReachedDestination), 0, UpdateReachedDestinationDelay); InvokeRepeating(nameof(ReachedDestination), 0, UpdateReachedDestinationDelay);
} }
private void OnDestroy() private void OnDestroy()
{ {
CancelInvoke(nameof(UpdateFlagPosition)); CancelInvoke(nameof(UpdateFlagPosition));

View File

@ -1,24 +1,26 @@
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using Animators.Leonid_Animator; using Animators.Leonid_Animator;
using Animators.Leonid_Animator.Bot;
using Unity.MLAgents; using Unity.MLAgents;
using Unity.MLAgents.Actuators; using Unity.MLAgents.Actuators;
using Unity.MLAgents.Sensors; using Unity.MLAgents.Sensors;
using UnityEngine; using UnityEngine;
[RequireComponent(typeof(MovementController),typeof(BufferSensorComponent))] [RequireComponent(typeof(MovementController))]
[RequireComponent(typeof(BufferSensorComponent))]
[RequireComponent(typeof(DecisionRequester))]
[RequireComponent(typeof(BotLocomotion))]
public class NPC : Agent, ICharacter public class NPC : Agent, ICharacter
{ {
[HideInInspector]
private Character _agentCharacter;
private CharacterCondition _condition; private CharacterCondition _condition;
private FlagZone _flagZone = null; private FlagZone _flagZone = null;
private INpcBaseState NpcState { get; set; } private INpcBaseState NpcState { get; set; }
public INpcBaseBodyState NpcBodyState { get; private set; } public INpcBaseBodyState NpcBodyState { get; private set; }
public Character GetCharacter => _agentCharacter; [field: HideInInspector]
public Character GetCharacter { get; private set; }
private NpcDirectPointState _directState; private NpcDirectPointState _directState;
private NpcInCoverState _coverState; private NpcInCoverState _coverState;
@ -29,12 +31,13 @@ public class NPC : Agent, ICharacter
private MovementController _moveController; private MovementController _moveController;
private BufferSensorComponent _bufferSensor; private BufferSensorComponent _bufferSensor;
private AnimatorHandler _animatorHandler;
private AimAssistant _assistant; private AimAssistant _assistant;
private BotLocomotion _botLocomotion;
private Dictionary<int, NavPoint> _navPointIdDict; private Dictionary<int, NavPoint> _navPointIdDict;
public bool IsFiring => _assistant.fireAnimation;
#region UnityEvents and ML #region UnityEvents and ML
private void Awake() private void Awake()
{ {
@ -47,13 +50,13 @@ public class NPC : Agent, ICharacter
_standingState = new NpcStandingState(); _standingState = new NpcStandingState();
NpcBodyState = _standingState; NpcBodyState = _standingState;
_agentCharacter = new Character(); GetCharacter = new Character();
_condition = _agentCharacter.Condition; _condition = GetCharacter.Condition;
_moveController = gameObject.GetComponent<MovementController>(); _moveController = gameObject.GetComponent<MovementController>();
_bufferSensor = gameObject.GetComponent<BufferSensorComponent>(); _bufferSensor = gameObject.GetComponent<BufferSensorComponent>();
_animatorHandler = gameObject.GetComponent<AnimatorHandler>();
_assistant = gameObject.GetComponent<AimAssistant>(); _assistant = gameObject.GetComponent<AimAssistant>();
_botLocomotion = gameObject.GetComponent<BotLocomotion>();
_flagZone = GameObject.FindObjectOfType<FlagZone>(); _flagZone = GameObject.FindObjectOfType<FlagZone>();
if (_flagZone is null) if (_flagZone is null)
@ -69,6 +72,12 @@ public class NPC : Agent, ICharacter
Debug.LogWarning("Pooled object was destroyed"); Debug.LogWarning("Pooled object was destroyed");
} }
private void Update()
{
print(IsFiring);
_botLocomotion.UpdateAnimatorValues();
}
public override void OnEpisodeBegin() public override void OnEpisodeBegin()
{ {
if (_navPointIdDict is null) if (_navPointIdDict is null)
@ -87,9 +96,9 @@ public class NPC : Agent, ICharacter
var candidates = _moveController.GetPointsCandidate(); var candidates = _moveController.GetPointsCandidate();
//common sensors //common sensors
sensor.AddObservation(GameManager.IsHaveSeenByEnemy(_agentCharacter.Team.GetOppositeTeam(), sensor.AddObservation(GameManager.IsHaveSeenByEnemy(GetCharacter.Team.GetOppositeTeam(),
NpcBodyState.GetPointToHit(gameObject)).ToInt()); NpcBodyState.GetPointToHit(gameObject)).ToInt());
sensor.AddObservation(_agentCharacter.LastTimeHit); sensor.AddObservation(GetCharacter.LastTimeHit);
sensor.AddObservation((!_flagZone.IsNotOccup).ToInt()); sensor.AddObservation((!_flagZone.IsNotOccup).ToInt());
sensor.AddObservation(_condition.GetHealthPointsInQuantile()); sensor.AddObservation(_condition.GetHealthPointsInQuantile());
sensor.AddObservation(_condition.GetArmourPointsInQuantile()); sensor.AddObservation(_condition.GetArmourPointsInQuantile());
@ -100,7 +109,7 @@ public class NPC : Agent, ICharacter
//state sensors //state sensors
sensor.AddObservation((int)NpcState.State); sensor.AddObservation((int)NpcState.State);
sensor.AddObservation((int)NpcBodyState.State); sensor.AddObservation((int)NpcBodyState.State);
sensor.AddObservation(GameManager.IsEnemyNearby(gameObject.transform.position, _agentCharacter.Team)); sensor.AddObservation(GameManager.IsEnemyNearby(gameObject.transform.position, GetCharacter.Team));
sensor.AddObservation(_navPointIdDict[_moveController.PointStartID].DeathAttr); sensor.AddObservation(_navPointIdDict[_moveController.PointStartID].DeathAttr);
sensor.AddObservation(_navPointIdDict[_moveController.PointEndID].DeathAttr); sensor.AddObservation(_navPointIdDict[_moveController.PointEndID].DeathAttr);
sensor.AddObservation(_moveController.FlagDistance); sensor.AddObservation(_moveController.FlagDistance);
@ -116,9 +125,9 @@ public class NPC : Agent, ICharacter
//4 flagEnemyDistance //4 flagEnemyDistance
GameManager.IsCloserToFlagFromNextNavPoint(point, position).ToInt(), GameManager.IsCloserToFlagFromNextNavPoint(point, position).ToInt(),
//5 EnemyVsNavPointDistance //5 EnemyVsNavPointDistance
GameManager.IsCloserToEnemyThanToNextNavPoint(point, position, _agentCharacter.Team.GetOppositeTeam()).ToInt(), GameManager.IsCloserToEnemyThanToNextNavPoint(point, position, GetCharacter.Team.GetOppositeTeam()).ToInt(),
//6 Have been seen by enemy in this point //6 Have been seen by enemy in this point
GameManager.IsHaveSeenByEnemy(_agentCharacter.Team.GetOppositeTeam(), GameManager.IsHaveSeenByEnemy(GetCharacter.Team.GetOppositeTeam(),
point.Position).ToInt() point.Position).ToInt()
}); });
} }
@ -127,9 +136,7 @@ public class NPC : Agent, ICharacter
public override void OnActionReceived(ActionBuffers actions) public override void OnActionReceived(ActionBuffers actions)
{ {
// Debug.Log("Actions recieved!");
var result = actions.DiscreteActions; var result = actions.DiscreteActions;
// Debug.Log(result[0] + " " + result[1]);
if (result[0] == 0) if (result[0] == 0)
{ {
if (_navPointIdDict[_moveController.PointStartID].navType != NavPointType.Cover) if (_navPointIdDict[_moveController.PointStartID].navType != NavPointType.Cover)
@ -145,16 +152,12 @@ public class NPC : Agent, ICharacter
default: throw new ArgumentException("Undefined Action recieved"); default: throw new ArgumentException("Undefined Action recieved");
} }
} }
// Debug.Log(result[0] == 1);
if (result[0] == 1) if (result[0] == 1)
{ {
// Debug.Log("BEFORE SOme shitty if >:(");
if (_navPointIdDict[_moveController.PointStartID].navType != NavPointType.Direction) if (_navPointIdDict[_moveController.PointStartID].navType != NavPointType.Direction)
{ {
// Debug.Log("SOme shitty if >:(");
return; return;
} }
// Debug.Log("FUCK");
switch (result[1]) switch (result[1])
{ {
@ -176,15 +179,6 @@ public class NPC : Agent, ICharacter
default: throw new ArgumentException("Undefined Action recieved"); default: throw new ArgumentException("Undefined Action recieved");
} }
} }
// Debug.Log("Actions processed!");
}
private void UpdateAnimatorValues()
{
var movementDir = _moveController.Velocity;
//Тут может быть косяк, так как я не помню горизонтальное по x или y.
_animatorHandler.UpdateAnimatorValues(movementDir.x, movementDir.y,
false, NpcBodyState == _crouchingState, _assistant._isFiring);
} }
#endregion #endregion
@ -202,13 +196,13 @@ public class NPC : Agent, ICharacter
} }
public event Action<bool> OnDeathEvent; public event Action<bool> OnDeathEvent;
public event Action<int, Team> OnDamageRecieved; public event Action<int, Team> OnDamageReceived;
public void GetDamage(int damage) public void GetDamage(int damage)
{ {
_agentCharacter.LastTimeHit = TimeManager.Instance.CurrentTime; GetCharacter.LastTimeHit = TimeManager.Instance.CurrentTime;
_condition.GiveHealth(-Mathf.RoundToInt(damage * (1 - _condition.ArmourPoints * 0.5f))); _condition.GiveHealth(-Mathf.RoundToInt(damage * (1 - _condition.ArmourPoints * 0.5f)));
_condition.GiveArmour(-Mathf.RoundToInt(Mathf.Sqrt(damage) * 5)); _condition.GiveArmour(-Mathf.RoundToInt(Mathf.Sqrt(damage) * 5));
OnDamageRecieved?.Invoke(damage, _agentCharacter.Team); OnDamageReceived?.Invoke(damage, GetCharacter.Team);
if (_condition.HealthPoints < 0) if (_condition.HealthPoints < 0)
{ {

View File

@ -19,9 +19,7 @@ public class NpcCrouchingState : INpcBaseBodyState
public Vector3 GetPointToHit(GameObject go) public Vector3 GetPointToHit(GameObject go)
{ {
MeshRenderer meshRenderer; return go.transform.position + new Vector3(0, 1, 0);
go.TryGetComponent<MeshRenderer>(out meshRenderer);
return meshRenderer.bounds.center;
} }
} }
@ -31,9 +29,7 @@ public class NpcStandingState : INpcBaseBodyState
public Vector3 GetPointToHit(GameObject go) public Vector3 GetPointToHit(GameObject go)
{ {
MeshRenderer meshRenderer; return go.transform.position + new Vector3(0, 1.8f, 0);
go.TryGetComponent<MeshRenderer>(out meshRenderer);
return meshRenderer.bounds.center;
} }
} }

View File

@ -21,7 +21,7 @@ public class Player : MonoBehaviour, ICharacter
} }
public event Action<bool> OnDeathEvent; public event Action<bool> OnDeathEvent;
public void GetDamage(float damage) public void GetDamage(int damage)
{ {
PlayerCharacter.LastTimeHit = TimeManager.Instance.CurrentTime; PlayerCharacter.LastTimeHit = TimeManager.Instance.CurrentTime;
Condition.GiveHealth(-Mathf.RoundToInt(damage * (1 - Condition.ArmourPoints * 0.5f))); Condition.GiveHealth(-Mathf.RoundToInt(damage * (1 - Condition.ArmourPoints * 0.5f)));

View File

@ -8,8 +8,8 @@ public class GameManager : MonoBehaviour
private static GameManager _instance; private static GameManager _instance;
public static GameManager Instance => _instance; public static GameManager Instance => _instance;
private static SimpleMultiAgentGroup _defendersTeam = new SimpleMultiAgentGroup(); public static SimpleMultiAgentGroup _defendersTeam = new SimpleMultiAgentGroup();
private static SimpleMultiAgentGroup _attackersTeam = new SimpleMultiAgentGroup(); public static SimpleMultiAgentGroup _attackersTeam = new SimpleMultiAgentGroup();
private void Awake() private void Awake()
{ {
@ -27,16 +27,6 @@ public class GameManager : MonoBehaviour
Academy.Instance.OnEnvironmentReset += ResetScene; Academy.Instance.OnEnvironmentReset += ResetScene;
GlobalEventManager.OnCaptureFlag += FlagCaptured; GlobalEventManager.OnCaptureFlag += FlagCaptured;
GlobalEventManager.OnTimeLeft += TimeOut; GlobalEventManager.OnTimeLeft += TimeOut;
var agents = GameObject.FindObjectsOfType<Agent>();
foreach (var item in agents)
{
var agent = item as NPC;
if (agent.GetCharacter.Team == Team.Attackers)
_attackersTeam.RegisterAgent(item);
else
_defendersTeam.RegisterAgent(item);
}
} }
private static SimpleMultiAgentGroup GetAgentList(Team team) private static SimpleMultiAgentGroup GetAgentList(Team team)
@ -91,17 +81,19 @@ public class GameManager : MonoBehaviour
public static List<GameObject> GetVisibleEnemies(Team oppositeTeam, Vector3 position) public static List<GameObject> GetVisibleEnemies(Team oppositeTeam, Vector3 position)
{ {
var agentGroup = GetAgentList(oppositeTeam); var agentGroup = GetAgentList(oppositeTeam);
var enemies = new List<GameObject>();
RaycastHit rayHit = new RaycastHit(); RaycastHit rayHit = new RaycastHit();
foreach (var agent in agentGroup.GetRegisteredAgents() ) foreach (var agent in agentGroup.GetRegisteredAgents() )
{ {
var npc = agent as NPC; var npc = agent as NPC;
if (Physics.Raycast(position, if (npc != null && Physics.Raycast(position,
(npc.NpcBodyState.GetPointToHit(npc.gameObject) - position).normalized, (npc.NpcBodyState.GetPointToHit(npc.gameObject) - position).normalized,
out rayHit, out rayHit,
SettingsReader.Instance.GetSettings.ViewDistance)) SettingsReader.Instance.GetSettings.ViewDistance))
{ {
if (rayHit.collider.gameObject.GetComponent<ICharacter>() != null) if (rayHit.collider.gameObject.GetComponent<ICharacter>() != null)
return null; enemies.Add(rayHit.collider.gameObject);
} }
} }
if ((SettingsReader.Instance.GetSettings.HasHumanAttacker == true && oppositeTeam == Team.Attackers) || if ((SettingsReader.Instance.GetSettings.HasHumanAttacker == true && oppositeTeam == Team.Attackers) ||
@ -114,10 +106,10 @@ public class GameManager : MonoBehaviour
SettingsReader.Instance.GetSettings.ViewDistance)) SettingsReader.Instance.GetSettings.ViewDistance))
{ {
if (rayHit.collider.gameObject.GetComponent<ICharacter>() != null) if (rayHit.collider.gameObject.GetComponent<ICharacter>() != null)
return null; enemies.Add(rayHit.collider.gameObject);
} }
} }
return null; return enemies;
} }
private void FlagCaptured(Team team) private void FlagCaptured(Team team)
@ -133,7 +125,6 @@ public class GameManager : MonoBehaviour
ResetScene(); ResetScene();
break; break;
} }
ResetScene();
} }
private void TimeOut() private void TimeOut()

View File

@ -25,7 +25,6 @@ public class MapManager : MonoBehaviour
for (var i=0; i < count; i++) for (var i=0; i < count; i++)
NavPoints.Add(navPointSet.transform.GetChild(i) NavPoints.Add(navPointSet.transform.GetChild(i)
.gameObject.GetComponent<NavPoint>()); .gameObject.GetComponent<NavPoint>());
print(NavPoints.Count);
NavPointSetToID(); NavPointSetToID();
} }

View File

@ -36,6 +36,13 @@ public class Settings : ScriptableObject
public float DoDamageChanceInDirectPoint; public float DoDamageChanceInDirectPoint;
public float DoDamageChanceInRunning; public float DoDamageChanceInRunning;
public float DoDamageChanceInCover; public float DoDamageChanceInCover;
public int RifleDamage;
public int RateOfFire;
public float CrouchingCoefficient; public float CrouchingCoefficient;
public Material atcMaterial;
public Material defMaterial;
} }

View File

@ -17,7 +17,7 @@ public class StatisticManager : MonoBehaviour
private void Awake() private void Awake()
{ {
foreach (var npc in GameObject.FindObjectsOfType<NPC>()) foreach (var npc in GameObject.FindObjectsOfType<NPC>())
npc.OnDamageRecieved += RegisterDamage; npc.OnDamageReceived += RegisterDamage;
GlobalEventManager.OnCaptureFlag += RegisterWin; GlobalEventManager.OnCaptureFlag += RegisterWin;
GlobalEventManager.OnTimeLeft += RegisterTimeOut; GlobalEventManager.OnTimeLeft += RegisterTimeOut;

View File

@ -1,62 +1,97 @@
using UnityEngine; using System.Collections;
using UnityEngine;
[RequireComponent(typeof(NPC))] [RequireComponent(typeof(NPC))]
public class AimAssistant : MonoBehaviour public class AimAssistant : MonoBehaviour
{ {
public GameObject enemy; [HideInInspector] public GameObject enemy;
public bool _isFiring = false; private Shooting _shooting;
public bool isFiring = false;
private ICharacter _myNpc; private ICharacter _myNpc;
public float lookSpeed = 200f; [SerializeField] private float lookSpeed = 400f;
private Transform _myTransform;
private float _fireCountdown;
//Я пытался придумать как обойти костыли с корутиной, но как видите ничего кроме других костылей не придумал.
private bool _firelock = false;
public bool fireAnimation = false;
private void Awake() private void Awake()
{ {
_myNpc = GetComponent<NPC>(); _myNpc = GetComponent<NPC>();
_shooting = GetComponent<Shooting>();
_myTransform = transform;
_fireCountdown = 1f / SettingsReader.Instance.GetSettings.RateOfFire;
} }
private void Update() private void FixedUpdate()
{ {
//Ищем противника на сцене. //Ищем противника на сцене.
if (_isFiring == false) if (isFiring == false)
{ {
var enemies = GameManager.GetVisibleEnemies(_myNpc.GetCharacter.Team, transform.position); var enemies = GameManager.GetVisibleEnemies(_myNpc.GetCharacter.Team.GetOppositeTeam(), transform.position);
enemy = enemies[new System.Random().Next(enemies.Count)];
if (enemies.Count == 0) if (enemies.Count == 0)
{ {
StopShooting();
return; return;
} }
else else
{ {
enemy = enemies[new System.Random().Next(enemies.Count)];
var character = enemy.GetComponent<ICharacter>(); var character = enemy.GetComponent<ICharacter>();
character.OnDeathEvent += _ => _isFiring = false; character.OnDeathEvent += _ => isFiring = false;
_isFiring = true; isFiring = true;
} }
} }
else else
{ {
//Raycast до противника enemy if (Physics.Raycast(_myTransform.position, _myTransform.forward,
var range = 200f; out var hit, SettingsReader.Instance.GetSettings.ViewDistance))
while (true)
{ {
if (!Physics.Raycast(this.transform.position, this.transform.forward, out var hit, range)) if (hit.collider.gameObject != enemy)
{ {
_isFiring = false; StopCoroutine(nameof(Shooting));
StopShooting();
enemy = null; enemy = null;
return; return;
} }
else
{
GetComponent<Shooting>().Shoot();
}
}
if (_firelock == false)
{
fireAnimation = true;
StartCoroutine(nameof(Shooting));
}
_firelock = true;
}
} }
var direction = enemy.transform.position - gameObject.transform.position; if (enemy != null)
var targetRotation = Quaternion.LookRotation(direction); {
var lookAt = Quaternion.RotateTowards(gameObject.transform.rotation, targetRotation, var direction = enemy.transform.position - gameObject.transform.position;
Time.deltaTime * lookSpeed); var targetRotation = Quaternion.LookRotation(direction);
lookAt.z = 0; var lookAt = Quaternion.RotateTowards(gameObject.transform.rotation, targetRotation,
lookAt.x = 0; Time.deltaTime * lookSpeed);
gameObject.transform.rotation = lookAt; lookAt.z = 0;
lookAt.x = 0;
gameObject.transform.rotation = lookAt;
}
} }
}
private void StopShooting()
{
print("stop shooting");
_firelock = false;
isFiring = false;
fireAnimation = false;
}
private IEnumerator Shooting()
{
while (true)
{
print("in Shooting");
_shooting.Shoot();
yield return new WaitForSeconds(_fireCountdown);
}
}
}

View File

@ -1,47 +1,46 @@
using System.Collections; using System;
using System.Collections;
using System.Collections.Generic; using System.Collections.Generic;
using UnityEngine; using UnityEngine;
public class Shooting : MonoBehaviour public class Shooting : MonoBehaviour
{ {
public float damage = 10f;
public float range = 100f;
public GameObject raycast; public GameObject raycast;
public GameObject FirePoint; public GameObject firePoint;
public GameObject[] Prefabs; [SerializeField] private GameObject projectilePrefab;
private float hSliderValue = 0.1f; private float hSliderValue = 0.1f;
private float fireCountdown = 0f; private float _fireCountdown = 1f;
private int Prefab = 1;
private Ray RayMouse;
private Vector3 direction;
private Quaternion rotation;
public GameObject gun; public GameObject gun;
void Update() private void Update()
{ {
if (Input.GetMouseButton(0) && fireCountdown <= 0f) HandleMouseButton();
{
Instantiate(Prefabs[Prefab], FirePoint.transform.position, FirePoint.transform.rotation);
fireCountdown = 0;
fireCountdown += hSliderValue;
Shoot();
}
fireCountdown -= Time.deltaTime;
} }
private void HandleMouseButton()
{
if (Input.GetMouseButton(0) && _fireCountdown <= 0f)
{
_fireCountdown = 0;
_fireCountdown += hSliderValue;
Shoot();
}
_fireCountdown -= Time.deltaTime;
}
public void Shoot() public void Shoot()
{ {
if (Physics.Raycast(raycast.transform.position, raycast.transform.forward, out var hit, range)) if (Physics.Raycast(raycast.transform.position,
raycast.transform.forward, out var hit,
SettingsReader.Instance.GetSettings.ViewDistance))
{ {
Debug.Log(hit.transform.name); if (hit.transform.TryGetComponent<NPC>(out var target))
{
if (hit.transform.TryGetComponent<Target>(out var target)) Instantiate(projectilePrefab, firePoint.transform.position, firePoint.transform.rotation);
target.TakeDamage(damage); target.GetDamage(SettingsReader.Instance.GetSettings.RifleDamage);
}
} }
} }
} }

View File

@ -16,7 +16,7 @@ MonoBehaviour:
TimeToWin: 15 TimeToWin: 15
TimeOut: 3600 TimeOut: 3600
MovementDistance: 50 MovementDistance: 50
MovementSpeed: 5 MovementSpeed: 1
DefTeamAI: 3 DefTeamAI: 3
AtcTeamAI: 3 AtcTeamAI: 3
NumOfDefenders: 1 NumOfDefenders: 1
@ -30,11 +30,15 @@ MonoBehaviour:
MaxHealth: 100 MaxHealth: 100
MaxArmour: 100 MaxArmour: 100
MaxAmmo: 360 MaxAmmo: 360
ViewDistance: 100 ViewDistance: 200
GetHitChanceInDirectPoint: 50 GetHitChanceInDirectPoint: 50
GetHitChanceInRunning: 25 GetHitChanceInRunning: 25
GetHitChanceInCover: 20 GetHitChanceInCover: 20
DoDamageChanceInDirectPoint: 70 DoDamageChanceInDirectPoint: 70
DoDamageChanceInRunning: 30 DoDamageChanceInRunning: 30
DoDamageChanceInCover: 25 DoDamageChanceInCover: 25
RifleDamage: 0
RateOfFire: 1
CrouchingCoefficient: 1.4 CrouchingCoefficient: 1.4
atcMaterial: {fileID: 2100000, guid: ce639cf318364cf449d4fd87a69da579, type: 2}
defMaterial: {fileID: 2100000, guid: 5bfc78f05f6d4c24f9b3af77b64086a9, type: 2}