From d39e6895afef819b8a2b1e35cbd9fbf941c594fe Mon Sep 17 00:00:00 2001 From: rowan Date: Tue, 19 Aug 2025 05:51:22 -0400 Subject: [PATCH] fixed that fucking ui problem!!! thank you kas <3 --- Assets/Resources/Materials/New Material.mat | 137 + .../Resources/Materials/New Material.mat.meta | 8 + Assets/SOAP/UI/ItemPreviewZoom.asset | 2 +- Assets/SOAP/{Items => UI}/SelectedItem.asset | 0 .../{Items => UI}/SelectedItem.asset.meta | 0 Assets/Scenes/DebugScene.unity | 2438 ++++++++++++++++- Assets/Scripts/Item/Inventory.cs | 123 +- Assets/Scripts/UI/Elements/Recycler.cs | 184 +- Assets/Scripts/UI/Screen/InventoryScreen.cs | 47 +- Assets/UI/Inventory.uxml | 10 +- 10 files changed, 2786 insertions(+), 163 deletions(-) create mode 100644 Assets/Resources/Materials/New Material.mat create mode 100644 Assets/Resources/Materials/New Material.mat.meta rename Assets/SOAP/{Items => UI}/SelectedItem.asset (100%) rename Assets/SOAP/{Items => UI}/SelectedItem.asset.meta (100%) diff --git a/Assets/Resources/Materials/New Material.mat b/Assets/Resources/Materials/New Material.mat new file mode 100644 index 0000000..db5bf23 --- /dev/null +++ b/Assets/Resources/Materials/New Material.mat @@ -0,0 +1,137 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &-6002683583417286212 +MonoBehaviour: + m_ObjectHideFlags: 11 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} + m_Name: + m_EditorClassIdentifier: + version: 10 +--- !u!21 &2100000 +Material: + serializedVersion: 8 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: New Material + m_Shader: {fileID: 4800000, guid: 933532a4fcc9baf4fa0491de14d08ed7, type: 3} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 + m_ValidKeywords: [] + m_InvalidKeywords: [] + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: + RenderType: Opaque + disabledShaderPasses: + - MOTIONVECTORS + m_LockedProperties: + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BaseMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _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: 0} + 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} + - _SpecGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - unity_Lightmaps: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - unity_LightmapsInd: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - unity_ShadowMasks: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Ints: [] + m_Floats: + - _AddPrecomputedVelocity: 0 + - _AlphaClip: 0 + - _AlphaToMask: 0 + - _Blend: 0 + - _BlendModePreserveSpecular: 1 + - _BumpScale: 1 + - _ClearCoatMask: 0 + - _ClearCoatSmoothness: 0 + - _Cull: 2 + - _Cutoff: 0.5 + - _DetailAlbedoMapScale: 1 + - _DetailNormalMapScale: 1 + - _DstBlend: 0 + - _DstBlendAlpha: 0 + - _EnvironmentReflections: 1 + - _GlossMapScale: 0 + - _Glossiness: 0 + - _GlossyReflections: 0 + - _Metallic: 0 + - _OcclusionStrength: 1 + - _Parallax: 0.005 + - _QueueOffset: 0 + - _ReceiveShadows: 1 + - _Smoothness: 0.5 + - _SmoothnessTextureChannel: 0 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _SrcBlendAlpha: 1 + - _Surface: 0 + - _WorkflowMode: 1 + - _XRMotionVectorsPass: 1 + - _ZWrite: 1 + m_Colors: + - _BaseColor: {r: 1, g: 0, b: 0, a: 1} + - _Color: {r: 1, g: 0, b: 0, a: 1} + - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} + - _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1} + m_BuildTextureStacks: [] + m_AllowLocking: 1 diff --git a/Assets/Resources/Materials/New Material.mat.meta b/Assets/Resources/Materials/New Material.mat.meta new file mode 100644 index 0000000..fe281b0 --- /dev/null +++ b/Assets/Resources/Materials/New Material.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 63b9ee8d7c472fcdd9d64669d3d96daf +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/SOAP/UI/ItemPreviewZoom.asset b/Assets/SOAP/UI/ItemPreviewZoom.asset index e335fc8..c355a4a 100644 --- a/Assets/SOAP/UI/ItemPreviewZoom.asset +++ b/Assets/SOAP/UI/ItemPreviewZoom.asset @@ -14,6 +14,6 @@ MonoBehaviour: m_EditorClassIdentifier: Description: value: - value: 0 + value: -50 clamp: 1 minMax: {x: -50, y: 10} diff --git a/Assets/SOAP/Items/SelectedItem.asset b/Assets/SOAP/UI/SelectedItem.asset similarity index 100% rename from Assets/SOAP/Items/SelectedItem.asset rename to Assets/SOAP/UI/SelectedItem.asset diff --git a/Assets/SOAP/Items/SelectedItem.asset.meta b/Assets/SOAP/UI/SelectedItem.asset.meta similarity index 100% rename from Assets/SOAP/Items/SelectedItem.asset.meta rename to Assets/SOAP/UI/SelectedItem.asset.meta diff --git a/Assets/Scenes/DebugScene.unity b/Assets/Scenes/DebugScene.unity index 6d97d65..a278a37 100644 --- a/Assets/Scenes/DebugScene.unity +++ b/Assets/Scenes/DebugScene.unity @@ -3013,6 +3013,116 @@ MonoBehaviour: m_StringArgument: m_BoolArgument: 0 m_CallState: 2 +--- !u!1 &1192733141 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1192733142} + - component: {fileID: 1192733145} + - component: {fileID: 1192733144} + - component: {fileID: 1192733143} + m_Layer: 0 + m_Name: Cylinder + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1192733142 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1192733141} + serializedVersion: 2 + m_LocalRotation: {x: -0.002427563, y: 0.6644478, z: -0.04704856, w: 0.74584836} + m_LocalPosition: {x: -0.004964427, y: 0.1364899, z: 0.009112172} + m_LocalScale: {x: 0.11999998, y: 0.06, z: 0.11999998} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 7542488104230582368} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 90} +--- !u!136 &1192733143 +CapsuleCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1192733141} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 2 + m_Radius: 0.5000001 + m_Height: 0.5 + m_Direction: 1 + m_Center: {x: 0.000000059604645, y: 0, z: -0.00000008940697} +--- !u!23 &1192733144 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1192733141} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 63b9ee8d7c472fcdd9d64669d3d96daf, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &1192733145 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1192733141} + m_Mesh: {fileID: 10206, guid: 0000000000000000e000000000000000, type: 0} --- !u!1 &1281046467 GameObject: m_ObjectHideFlags: 0 @@ -4080,71 +4190,6 @@ Transform: - {fileID: 880188920} m_Father: {fileID: 1363717997} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!1001 &1576051083 -PrefabInstance: - m_ObjectHideFlags: 0 - serializedVersion: 2 - m_Modification: - serializedVersion: 3 - m_TransformParent: {fileID: 1801804565} - m_Modifications: - - target: {fileID: -8679921383154817045, guid: 015f1ddb77bbd0ce980de36f9e227c78, type: 3} - propertyPath: m_LocalPosition.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: -8679921383154817045, guid: 015f1ddb77bbd0ce980de36f9e227c78, type: 3} - propertyPath: m_LocalPosition.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: -8679921383154817045, guid: 015f1ddb77bbd0ce980de36f9e227c78, type: 3} - propertyPath: m_LocalPosition.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: -8679921383154817045, guid: 015f1ddb77bbd0ce980de36f9e227c78, type: 3} - propertyPath: m_LocalRotation.w - value: 1 - objectReference: {fileID: 0} - - target: {fileID: -8679921383154817045, guid: 015f1ddb77bbd0ce980de36f9e227c78, type: 3} - propertyPath: m_LocalRotation.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: -8679921383154817045, guid: 015f1ddb77bbd0ce980de36f9e227c78, type: 3} - propertyPath: m_LocalRotation.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: -8679921383154817045, guid: 015f1ddb77bbd0ce980de36f9e227c78, type: 3} - propertyPath: m_LocalRotation.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: -8679921383154817045, guid: 015f1ddb77bbd0ce980de36f9e227c78, type: 3} - propertyPath: m_LocalEulerAnglesHint.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: -8679921383154817045, guid: 015f1ddb77bbd0ce980de36f9e227c78, type: 3} - propertyPath: m_LocalEulerAnglesHint.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: -8679921383154817045, guid: 015f1ddb77bbd0ce980de36f9e227c78, type: 3} - propertyPath: m_LocalEulerAnglesHint.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 919132149155446097, guid: 015f1ddb77bbd0ce980de36f9e227c78, type: 3} - propertyPath: m_Name - value: Model - objectReference: {fileID: 0} - m_RemovedComponents: [] - m_RemovedGameObjects: [] - m_AddedGameObjects: [] - m_AddedComponents: - - targetCorrespondingSourceObject: {fileID: 919132149155446097, guid: 015f1ddb77bbd0ce980de36f9e227c78, type: 3} - insertIndex: -1 - addedObject: {fileID: 1881513959} - m_SourcePrefab: {fileID: 100100000, guid: 015f1ddb77bbd0ce980de36f9e227c78, type: 3} ---- !u!4 &1576051084 stripped -Transform: - m_CorrespondingSourceObject: {fileID: -8679921383154817045, guid: 015f1ddb77bbd0ce980de36f9e227c78, type: 3} - m_PrefabInstance: {fileID: 1576051083} - m_PrefabAsset: {fileID: 0} --- !u!1 &1632951287 GameObject: m_ObjectHideFlags: 0 @@ -4548,7 +4593,7 @@ Transform: m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: - - {fileID: 1576051084} + - {fileID: 543450652165916256} m_Father: {fileID: 835116272} m_LocalEulerAnglesHint: {x: 0, y: 180, z: 0} --- !u!54 &1801804566 @@ -4776,11 +4821,6 @@ Transform: - {fileID: 1116525000} m_Father: {fileID: 166564785} m_LocalEulerAnglesHint: {x: 40.87401, y: 4.0000277, z: 19.995592} ---- !u!1 &1881513958 stripped -GameObject: - m_CorrespondingSourceObject: {fileID: 919132149155446097, guid: 015f1ddb77bbd0ce980de36f9e227c78, type: 3} - m_PrefabInstance: {fileID: 1576051083} - m_PrefabAsset: {fileID: 0} --- !u!95 &1881513959 Animator: serializedVersion: 7 @@ -4788,7 +4828,7 @@ Animator: m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1881513958} + m_GameObject: {fileID: 919132148449778906} m_Enabled: 1 m_Avatar: {fileID: 0} m_Controller: {fileID: 9100000, guid: e48039382405808f08691dc1cb984c22, type: 2} @@ -5766,6 +5806,1954 @@ Transform: - {fileID: 1637621029} m_Father: {fileID: 173418118} m_LocalEulerAnglesHint: {x: 61.435116, y: 6.4591293, z: 10.849625} +--- !u!4 &57086942628129031 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3004627744517272253} + serializedVersion: 2 + m_LocalRotation: {x: 0.04200074, y: 5.8287737e-19, z: 1.3865542e-17, w: 0.9991176} + m_LocalPosition: {x: 0.000118659016, y: 0.031174004, z: 1.6191165e-10} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 1699949584549261131} + m_Father: {fileID: 3749811378179652980} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &73485265618837894 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 165485419197188103} + m_Layer: 0 + m_Name: mixamorig1:LeftHandThumb2 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &76773399509168013 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7303144893881049178} + serializedVersion: 2 + m_LocalRotation: {x: 0.013470813, y: -0, z: -0, w: 0.9999093} + m_LocalPosition: {x: 0.000029064699, y: 0.021939535, z: 9.296434e-10} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 2029366149458165217} + m_Father: {fileID: 4309305052917531002} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &85343042379169409 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 7838928657328485819} + m_Layer: 0 + m_Name: mixamorig1:LeftHandMiddle4 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &103818601699168370 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1163206120536941363} + m_Layer: 0 + m_Name: mixamorig1:LeftHandPinky1 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &125931682314533119 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3473526203150388501} + serializedVersion: 2 + m_LocalRotation: {x: -0.04869867, y: 0, z: -0, w: 0.9988135} + m_LocalPosition: {x: -0.0000779353, y: 0.026876936, z: -1.937812e-10} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 7448245699521250153} + m_Father: {fileID: 2683840479577849420} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!4 &141009829258260379 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4820966320600529090} + serializedVersion: 2 + m_LocalRotation: {x: -0.0012669818, y: -0.028902665, z: 0.9986224, w: -0.043775775} + m_LocalPosition: {x: 0.08078198, y: -0.054023743, z: -0.0075176978} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 2660926356965544400} + m_Father: {fileID: 5472622939835677694} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!4 &165485419197188103 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 73485265618837894} + serializedVersion: 2 + m_LocalRotation: {x: 0.084402986, y: 1.14856146e-17, z: -2.8827863e-17, w: 0.9964317} + m_LocalPosition: {x: 0.004054076, y: 0.039895818, z: -4.5061682e-10} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 5783984087764142901} + m_Father: {fileID: 3312600048327778012} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &172787924340628295 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4309305052917531002} + m_Layer: 0 + m_Name: mixamorig1:LeftHandPinky2 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &281297372725850817 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7520333887628507796} + serializedVersion: 2 + m_LocalRotation: {x: 0.49743983, y: -0.014425731, z: 0.008273506, w: 0.8673391} + m_LocalPosition: {x: 0.0000000021988258, y: 0.4217968, z: -6.0416472e-12} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 4425252172428559929} + m_Father: {fileID: 2660926356965544400} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &297001864214464217 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5089204012516470559} + m_Layer: 0 + m_Name: mixamorig1:LeftHandIndex3 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &391176074287269382 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5018132529418917698} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -0.000024786703, y: 0.018884283, z: -7.556858e-10} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 2926668607658926109} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &398134439338053123 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1017971967162652375} + m_Layer: 0 + m_Name: mixamorig1:Spine + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &416511140970338983 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3714009726968581254} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -0, y: 0.114201374, z: -3.0602545e-10} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 7001194595314560958} + m_Father: {fileID: 1017971967162652375} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!4 &484281609308896541 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7850893603083820965} + serializedVersion: 2 + m_LocalRotation: {x: 0.29011595, y: 0.056511864, z: -0.017164523, w: 0.9551673} + m_LocalPosition: {x: 2.0625812e-11, y: 0.16182281, z: 0.000000007965545} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 1750591462241415697} + m_Father: {fileID: 4741763957539078706} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!4 &512122151119546421 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2080307180534664424} + serializedVersion: 2 + m_LocalRotation: {x: 0.0013849116, y: -0.031603232, z: 0.99854124, w: 0.04375791} + m_LocalPosition: {x: -0.08078198, y: -0.054023743, z: -0.0053586885} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 7938088262481928844} + m_Father: {fileID: 5472622939835677694} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!4 &543450652165916256 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 919132148449778906} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 8155812262948349511} + - {fileID: 5472622939835677694} + m_Father: {fileID: 1801804565} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &602609422550679301 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2803318976981874629} + m_Layer: 0 + m_Name: mixamorig1:RightForeArm + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &919132148449778906 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 543450652165916256} + - component: {fileID: 1881513959} + m_Layer: 0 + m_Name: Model + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1017971967162652375 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 398134439338053123} + serializedVersion: 2 + m_LocalRotation: {x: -0.06039641, y: 0, z: -0, w: 0.9981745} + m_LocalPosition: {x: -0, y: 0.0971727, z: -0.011802452} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 416511140970338983} + m_Father: {fileID: 5472622939835677694} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1156334874128382016 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 3749811378179652980} + m_Layer: 0 + m_Name: mixamorig1:RightHandIndex1 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1163206120536941363 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 103818601699168370} + serializedVersion: 2 + m_LocalRotation: {x: 0.09523027, y: 0.0050404565, z: 0.052614294, w: 0.9940511} + m_LocalPosition: {x: -0.03246784, y: 0.11101979, z: -0.0011282519} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 4309305052917531002} + m_Father: {fileID: 7778723796186263197} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!4 &1415099164710249100 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3259347785504734684} + serializedVersion: 2 + m_LocalRotation: {x: 0.01890074, y: -0.0011082521, z: -0.0585245, w: 0.9981064} + m_LocalPosition: {x: 0.034842465, y: 0.11757885, z: 0.0011308296} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 7759842617378749018} + m_Father: {fileID: 7778723796186263197} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!4 &1510652387383955454 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4174522342014628750} + serializedVersion: 2 + m_LocalRotation: {x: -0.04915303, y: 0.0027801832, z: -0.05640298, w: 0.9971936} + m_LocalPosition: {x: 1.6915119e-10, y: 0.2556078, z: -5.2587552e-11} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 7778723796186263197} + m_Father: {fileID: 7542488104230582368} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1664083764964925681 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5472622939835677694} + m_Layer: 0 + m_Name: mixamorig1:Hips + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &1668005472002591031 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 7304965682125023902} + m_Layer: 0 + m_Name: mixamorig1:LeftShoulder + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1699949584549261131 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5021807307128284558} + serializedVersion: 2 + m_LocalRotation: {x: -0.001600605, y: 2.2212856e-20, z: -1.38777704e-17, w: 0.99999875} + m_LocalPosition: {x: -0.00006610247, y: 0.028560622, z: -9.469272e-10} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 7410763783474627493} + m_Father: {fileID: 57086942628129031} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!4 &1712148501569963285 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8213214477713527225} + serializedVersion: 2 + m_LocalRotation: {x: 0.06039648, y: -0, z: -0, w: 0.9981745} + m_LocalPosition: {x: -0, y: 0.14683032, z: 0.000000015214521} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 7687346005249024938} + m_Father: {fileID: 7001194595314560958} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!4 &1750591462241415697 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7477416758467457261} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -2.7475544e-10, y: 0.062058777, z: 2.0658041e-11} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 484281609308896541} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1797576639156199775 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 3312600048327778012} + m_Layer: 0 + m_Name: mixamorig1:LeftHandThumb1 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1952697348214749321 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6380008276548829977} + serializedVersion: 2 + m_LocalRotation: {x: -0.027250985, y: 0, z: -0, w: 0.99962866} + m_LocalPosition: {x: -0.00013668837, y: 0.032259602, z: -4.707834e-10} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 4731265376195828823} + m_Father: {fileID: 6142095155308439763} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!4 &2029201096819658569 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4848867015596965395} + serializedVersion: 2 + m_LocalRotation: {x: 0.08713122, y: 2.418377e-18, z: 2.7650017e-17, w: 0.99619687} + m_LocalPosition: {x: -0.004284118, y: 0.040747747, z: 0.0000000015642138} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 6405193703349832077} + m_Father: {fileID: 8038615822451828386} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!4 &2029366149458165217 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6288044892831341012} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0.000055141132, y: 0.019755404, z: 6.650282e-11} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 76773399509168013} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &2080307180534664424 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 512122151119546421} + m_Layer: 0 + m_Name: mixamorig1:LeftUpLeg + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &2155788948031660481 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5278886882307326517} + serializedVersion: 2 + m_LocalRotation: {x: 0.122721866, y: 0.0029117381, z: 0.023540296, w: 0.99215764} + m_LocalPosition: {x: -0.0126674315, y: 0.12505947, z: -0.0027706835} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 9207503450747593298} + m_Father: {fileID: 7778723796186263197} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!4 &2208419853426454339 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5242513462124209251} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -0.00442713, y: 0.02979054, z: -4.5542634e-10} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 5783984087764142901} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &2303669009301822205 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2835855890618847734} + m_Layer: 0 + m_Name: mixamorig1:LeftHandRing3 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &2629419972583142261 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 8203105719052422126} + m_Layer: 0 + m_Name: mixamorig1:LeftHandMiddle1 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &2660926356965544400 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4702939791417829952} + serializedVersion: 2 + m_LocalRotation: {x: -0.006381092, y: 0.000025172481, z: -0.0039447015, w: 0.99997187} + m_LocalPosition: {x: -6.2329286e-10, y: 0.42775902, z: -7.691545e-12} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 281297372725850817} + m_Father: {fileID: 141009829258260379} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!4 &2683840479577849420 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3888380888043654572} + serializedVersion: 2 + m_LocalRotation: {x: 0.044177923, y: -6.893801e-18, z: 1.1730608e-18, w: 0.9990237} + m_LocalPosition: {x: 0.00003705463, y: 0.028215855, z: -9.4966306e-11} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 125931682314533119} + m_Father: {fileID: 3102951292431670402} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &2685435692033814184 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 7938088262481928844} + m_Layer: 0 + m_Name: mixamorig1:LeftLeg + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &2760433884401181565 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 8625701763699280120} + m_Layer: 0 + m_Name: mixamorig1:RightHandThumb4 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &2803318976981874629 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 602609422550679301} + serializedVersion: 2 + m_LocalRotation: {x: -0.049151614, y: -0.0028665287, z: 0.058150675, w: 0.99709296} + m_LocalPosition: {x: -9.430264e-11, y: 0.2557106, z: -9.293296e-10} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 6693120356011529495} + m_Father: {fileID: 8859567155956936784} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &2807231754117791754 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 6693120356011529495} + m_Layer: 0 + m_Name: mixamorig1:RightHand + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &2835855890618847734 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2303669009301822205} + serializedVersion: 2 + m_LocalRotation: {x: -0.0021452566, y: 6.9426005e-18, z: -1.7198339e-18, w: 0.99999774} + m_LocalPosition: {x: -0.00003413957, y: 0.026203029, z: -2.695688e-10} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 3835053910373304362} + m_Father: {fileID: 9207503450747593298} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &2891039142235008399 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 8859567155956936784} + m_Layer: 0 + m_Name: mixamorig1:RightArm + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &2926509480677572440 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5043611921828736236} + m_Layer: 0 + m_Name: mixamorig1:HeadTop_End + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &2926668607658926109 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7146707993257749479} + serializedVersion: 2 + m_LocalRotation: {x: -0.019942587, y: 6.937514e-18, z: 1.383795e-19, w: 0.99980116} + m_LocalPosition: {x: -0.000055792996, y: 0.02149039, z: -4.8815024e-10} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 391176074287269382} + m_Father: {fileID: 3117890622823985248} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &2981948943167642181 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4906179653632704558} + m_Layer: 0 + m_Name: mixamorig1:RightToe_End + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &3004627744517272253 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 57086942628129031} + m_Layer: 0 + m_Name: mixamorig1:RightHandIndex2 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &3043022170947717445 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 3835053910373304362} + m_Layer: 0 + m_Name: mixamorig1:LeftHandRing4 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &3102951292431670402 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3840046950271874179} + serializedVersion: 2 + m_LocalRotation: {x: 0.070692375, y: -0.0031780796, z: -0.04479849, w: 0.99648666} + m_LocalPosition: {x: 0.012165742, y: 0.1228207, z: -0.0015098527} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 2683840479577849420} + m_Father: {fileID: 6693120356011529495} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!4 &3117890622823985248 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5748913312037552691} + serializedVersion: 2 + m_LocalRotation: {x: 0.060461342, y: -6.9261996e-18, z: 4.1953484e-19, w: 0.99817055} + m_LocalPosition: {x: 0.00008057966, y: 0.0264045, z: 3.5185707e-10} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 2926668607658926109} + m_Father: {fileID: 4114525542043052750} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &3259347785504734684 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1415099164710249100} + m_Layer: 0 + m_Name: mixamorig1:LeftHandIndex1 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &3312600048327778012 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1797576639156199775} + serializedVersion: 2 + m_LocalRotation: {x: 0.11589298, y: -0.031166518, z: -0.25782123, w: 0.95871043} + m_LocalPosition: {x: 0.028676992, y: 0.0393584, z: 0.0118831415} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 165485419197188103} + m_Father: {fileID: 7778723796186263197} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &3352135390882400718 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4731265376195828823} + m_Layer: 0 + m_Name: mixamorig1:RightHandMiddle4 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &3396566932158437949 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4752836581256455695} + serializedVersion: 2 + m_LocalRotation: {x: 0.024432026, y: -0.000034664114, z: -0.0014182568, w: 0.9997005} + m_LocalPosition: {x: -0.009224253, y: 0.121763796, z: -0.0022220148} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 6142095155308439763} + m_Father: {fileID: 6693120356011529495} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &3473526203150388501 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 125931682314533119} + m_Layer: 0 + m_Name: mixamorig1:RightHandRing3 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &3714009726968581254 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 416511140970338983} + m_Layer: 0 + m_Name: mixamorig1:Spine1 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &3749811378179652980 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1156334874128382016} + serializedVersion: 2 + m_LocalRotation: {x: 0.044540446, y: 0.0013707939, z: 0.030731242, w: 0.99853384} + m_LocalPosition: {x: -0.036144942, y: 0.12346581, z: -0.00007772334} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 57086942628129031} + m_Father: {fileID: 6693120356011529495} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!4 &3835053910373304362 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3043022170947717445} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -0.00003171297, y: 0.0222689, z: 6.106666e-10} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 2835855890618847734} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &3840046950271874179 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 3102951292431670402} + m_Layer: 0 + m_Name: mixamorig1:RightHandRing1 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &3888380888043654572 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2683840479577849420} + m_Layer: 0 + m_Name: mixamorig1:RightHandRing2 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &3938961878065317838 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 7001194595314560958} + m_Layer: 0 + m_Name: mixamorig1:Spine2 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &4089567568518491643 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5783984087764142901} + m_Layer: 0 + m_Name: mixamorig1:LeftHandThumb3 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &4114525542043052750 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5497520948383746833} + serializedVersion: 2 + m_LocalRotation: {x: 0.08523917, y: -0.0049603414, z: -0.057882767, w: 0.99466544} + m_LocalPosition: {x: 0.033203457, y: 0.111945935, z: -0.0013796292} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 3117890622823985248} + m_Father: {fileID: 6693120356011529495} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &4173625320077136257 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 7759842617378749018} + m_Layer: 0 + m_Name: mixamorig1:LeftHandIndex2 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &4174522342014628750 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1510652387383955454} + m_Layer: 0 + m_Name: mixamorig1:LeftForeArm + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &4309305052917531002 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 172787924340628295} + serializedVersion: 2 + m_LocalRotation: {x: 0.039732095, y: -6.933415e-18, z: 2.756968e-19, w: 0.9992104} + m_LocalPosition: {x: -0.000084205865, y: 0.027345981, z: -1.388119e-10} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 76773399509168013} + m_Father: {fileID: 1163206120536941363} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!4 &4425252172428559929 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8667086786424008974} + serializedVersion: 2 + m_LocalRotation: {x: 0.28852716, y: -0.05736593, z: 0.017320763, w: 0.9555947} + m_LocalPosition: {x: -7.089289e-10, y: 0.16260478, z: 0.0000000021778896} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 4906179653632704558} + m_Father: {fileID: 281297372725850817} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &4495723112463330882 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 7687346005249024938} + m_Layer: 0 + m_Name: mixamorig1:Head + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!137 &4651766052616046757 +SkinnedMeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7878436149952436959} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 3 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 8950265562796933603, guid: 015f1ddb77bbd0ce980de36f9e227c78, type: 3} + 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 + serializedVersion: 2 + m_Quality: 0 + m_UpdateWhenOffscreen: 0 + m_SkinnedMotionVectors: 1 + m_Mesh: {fileID: -3702037217650275473, guid: 015f1ddb77bbd0ce980de36f9e227c78, type: 3} + m_Bones: + - {fileID: 5472622939835677694} + - {fileID: 141009829258260379} + - {fileID: 512122151119546421} + - {fileID: 7687346005249024938} + - {fileID: 1712148501569963285} + - {fileID: 7542488104230582368} + - {fileID: 7304965682125023902} + - {fileID: 7001194595314560958} + - {fileID: 416511140970338983} + - {fileID: 7938088262481928844} + - {fileID: 4741763957539078706} + - {fileID: 484281609308896541} + - {fileID: 1017971967162652375} + - {fileID: 1510652387383955454} + - {fileID: 7778723796186263197} + - {fileID: 3312600048327778012} + - {fileID: 5483348262904919789} + - {fileID: 6441986102493312089} + - {fileID: 8203105719052422126} + - {fileID: 5089204012516470559} + - {fileID: 7759842617378749018} + - {fileID: 1415099164710249100} + - {fileID: 1163206120536941363} + - {fileID: 2155788948031660481} + - {fileID: 9207503450747593298} + - {fileID: 4309305052917531002} + - {fileID: 76773399509168013} + - {fileID: 2835855890618847734} + - {fileID: 165485419197188103} + - {fileID: 5783984087764142901} + - {fileID: 4768815862065511483} + - {fileID: 8859567155956936784} + - {fileID: 2660926356965544400} + - {fileID: 4425252172428559929} + - {fileID: 281297372725850817} + - {fileID: 2803318976981874629} + - {fileID: 6693120356011529495} + - {fileID: 3396566932158437949} + - {fileID: 8038615822451828386} + - {fileID: 1952697348214749321} + - {fileID: 6142095155308439763} + - {fileID: 57086942628129031} + - {fileID: 1699949584549261131} + - {fileID: 3749811378179652980} + - {fileID: 3102951292431670402} + - {fileID: 2683840479577849420} + - {fileID: 125931682314533119} + - {fileID: 4114525542043052750} + - {fileID: 3117890622823985248} + - {fileID: 2926668607658926109} + - {fileID: 2029201096819658569} + - {fileID: 6405193703349832077} + m_BlendShapeWeights: [] + m_RootBone: {fileID: 5472622939835677694} + m_AABB: + m_Center: {x: 0.00003632903, y: -0.1680874, z: -0.008731931} + m_Extent: {x: 0.8928839, y: 0.939708, z: 0.24028951} + m_DirtyAABB: 0 +--- !u!1 &4702939791417829952 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2660926356965544400} + m_Layer: 0 + m_Name: mixamorig1:RightLeg + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &4731265376195828823 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3352135390882400718} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -0.000024861178, y: 0.029279675, z: 2.9978992e-10} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1952697348214749321} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!4 &4741763957539078706 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7426409271804880716} + serializedVersion: 2 + m_LocalRotation: {x: 0.49512383, y: 0.014734168, z: -0.008398293, w: 0.8686569} + m_LocalPosition: {x: -0.00000000250733, y: 0.42173746, z: 0.0000000023825406} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 484281609308896541} + m_Father: {fileID: 7938088262481928844} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &4752836581256455695 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 3396566932158437949} + m_Layer: 0 + m_Name: mixamorig1:RightHandMiddle1 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &4768815862065511483 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7470372647346357347} + serializedVersion: 2 + m_LocalRotation: {x: -0.5537335, y: -0.43542883, z: 0.5697387, w: -0.423295} + m_LocalPosition: {x: 0.061401546, y: 0.12993737, z: -0.0017591274} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 8859567155956936784} + m_Father: {fileID: 7001194595314560958} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &4820966320600529090 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 141009829258260379} + m_Layer: 0 + m_Name: mixamorig1:RightUpLeg + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &4848867015596965395 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2029201096819658569} + m_Layer: 0 + m_Name: mixamorig1:RightHandThumb2 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &4906179653632704558 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2981948943167642181} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -1.832603e-10, y: 0.06180026, z: 6.158407e-13} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 4425252172428559929} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &4918869308404791683 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 8038615822451828386} + m_Layer: 0 + m_Name: mixamorig1:RightHandThumb1 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &4952425062528125501 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7912122239196062929} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0.00016300076, y: 0.027120832, z: -0.0000000010782625} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 5089204012516470559} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &4961244352827189000 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 7448245699521250153} + m_Layer: 0 + m_Name: mixamorig1:RightHandRing4 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &5018132529418917698 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 391176074287269382} + m_Layer: 0 + m_Name: mixamorig1:RightHandPinky4 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &5021807307128284558 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1699949584549261131} + m_Layer: 0 + m_Name: mixamorig1:RightHandIndex3 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &5043611921828736236 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2926509480677572440} + serializedVersion: 2 + m_LocalRotation: {x: 6.938894e-18, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -0, y: 0.20999847, z: 0.061627634} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 7687346005249024938} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!4 &5089204012516470559 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 297001864214464217} + serializedVersion: 2 + m_LocalRotation: {x: 0.025116967, y: -3.4856794e-19, z: -1.38734095e-17, w: 0.9996845} + m_LocalPosition: {x: 0.00006814567, y: 0.030810468, z: 4.3524834e-10} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 4952425062528125501} + m_Father: {fileID: 7759842617378749018} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &5242513462124209251 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2208419853426454339} + m_Layer: 0 + m_Name: mixamorig1:LeftHandThumb4 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &5278886882307326517 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2155788948031660481} + m_Layer: 0 + m_Name: mixamorig1:LeftHandRing1 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &5312118344074644325 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 7410763783474627493} + m_Layer: 0 + m_Name: mixamorig1:RightHandIndex4 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &5429052775002518361 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 6142095155308439763} + m_Layer: 0 + m_Name: mixamorig1:RightHandMiddle2 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &5472622939835677694 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1664083764964925681} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0.00000022888183, y: 0.99753994, z: 0.030078819} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 512122151119546421} + - {fileID: 141009829258260379} + - {fileID: 1017971967162652375} + m_Father: {fileID: 543450652165916256} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!4 &5483348262904919789 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8569517087646510596} + serializedVersion: 2 + m_LocalRotation: {x: 0.052678186, y: -3.6552835e-19, z: -6.9292597e-18, w: 0.99861157} + m_LocalPosition: {x: -0.00009939122, y: 0.034321565, z: -5.1723476e-10} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 6441986102493312089} + m_Father: {fileID: 8203105719052422126} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &5497520948383746833 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4114525542043052750} + m_Layer: 0 + m_Name: mixamorig1:RightHandPinky1 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &5748913312037552691 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 3117890622823985248} + m_Layer: 0 + m_Name: mixamorig1:RightHandPinky2 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &5783984087764142901 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4089567568518491643} + serializedVersion: 2 + m_LocalRotation: {x: -0.0003865829, y: 0, z: -0, w: 0.99999994} + m_LocalPosition: {x: 0.00037305336, y: 0.03599907, z: 7.1987644e-10} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 2208419853426454339} + m_Father: {fileID: 165485419197188103} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!4 &6142095155308439763 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5429052775002518361} + serializedVersion: 2 + m_LocalRotation: {x: 0.07132115, y: -4.948899e-19, z: -6.9212233e-18, w: 0.9974534} + m_LocalPosition: {x: 0.0001615498, y: 0.034792133, z: 1.2866196e-10} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 1952697348214749321} + m_Father: {fileID: 3396566932158437949} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &6251047481969825905 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 7778723796186263197} + m_Layer: 0 + m_Name: mixamorig1:LeftHand + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &6288044892831341012 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2029366149458165217} + m_Layer: 0 + m_Name: mixamorig1:LeftHandPinky4 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &6380008276548829977 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1952697348214749321} + m_Layer: 0 + m_Name: mixamorig1:RightHandMiddle3 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &6405193703349832077 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7380578743638911090} + serializedVersion: 2 + m_LocalRotation: {x: -0.050490916, y: 0, z: -0, w: 0.9987245} + m_LocalPosition: {x: -0.00036493776, y: 0.035304114, z: 7.2919903e-10} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 8625701763699280120} + m_Father: {fileID: 2029201096819658569} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!4 &6441986102493312089 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8823565059312253148} + serializedVersion: 2 + m_LocalRotation: {x: -0.02759113, y: 0, z: -0, w: 0.9996193} + m_LocalPosition: {x: 0.00009976154, y: 0.031609163, z: 2.6503811e-11} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 7838928657328485819} + m_Father: {fileID: 5483348262904919789} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!4 &6693120356011529495 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2807231754117791754} + serializedVersion: 2 + m_LocalRotation: {x: 0.054873325, y: 0.10942524, z: 0.027996322, w: 0.9920843} + m_LocalPosition: {x: -4.0566295e-10, y: 0.23401713, z: -3.1305403e-10} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 3749811378179652980} + - {fileID: 3396566932158437949} + - {fileID: 4114525542043052750} + - {fileID: 3102951292431670402} + - {fileID: 8038615822451828386} + m_Father: {fileID: 2803318976981874629} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!4 &7001194595314560958 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3938961878065317838} + serializedVersion: 2 + m_LocalRotation: {x: 4.3646694e-26, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -0, y: 0.13051577, z: 3.506162e-10} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 7304965682125023902} + - {fileID: 1712148501569963285} + - {fileID: 4768815862065511483} + m_Father: {fileID: 416511140970338983} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &7146707993257749479 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2926668607658926109} + m_Layer: 0 + m_Name: mixamorig1:RightHandPinky3 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &7219235040050677279 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 7542488104230582368} + m_Layer: 0 + m_Name: mixamorig1:LeftArm + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &7303144893881049178 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 76773399509168013} + m_Layer: 0 + m_Name: mixamorig1:LeftHandPinky3 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &7304965682125023902 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1668005472002591031} + serializedVersion: 2 + m_LocalRotation: {x: 0.55085135, y: -0.4376695, z: 0.57205534, w: 0.42161706} + m_LocalPosition: {x: -0.061401546, y: 0.13000743, z: -0.0023359219} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 7542488104230582368} + m_Father: {fileID: 7001194595314560958} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &7380578743638911090 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 6405193703349832077} + m_Layer: 0 + m_Name: mixamorig1:RightHandThumb3 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &7410763783474627493 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5312118344074644325} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -0.000052557833, y: 0.025345989, z: 3.0676118e-11} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1699949584549261131} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &7426409271804880716 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4741763957539078706} + m_Layer: 0 + m_Name: mixamorig1:LeftFoot + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &7448245699521250153 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4961244352827189000} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0.000040880637, y: 0.023684498, z: -3.3012754e-10} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 125931682314533119} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &7470372647346357347 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4768815862065511483} + m_Layer: 0 + m_Name: mixamorig1:RightShoulder + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &7477416758467457261 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1750591462241415697} + m_Layer: 0 + m_Name: mixamorig1:LeftToe_End + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &7520333887628507796 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 281297372725850817} + m_Layer: 0 + m_Name: mixamorig1:RightFoot + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &7542488104230582368 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7219235040050677279} + serializedVersion: 2 + m_LocalRotation: {x: -0.09908003, y: -0.0015087922, z: 0.015151339, w: 0.994963} + m_LocalPosition: {x: 2.0572627e-10, y: 0.13005933, z: -0.0000000016254165} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 1510652387383955454} + - {fileID: 1192733142} + m_Father: {fileID: 7304965682125023902} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1001 &7547016027398857338 PrefabInstance: m_ObjectHideFlags: 0 @@ -5926,6 +7914,312 @@ PrefabInstance: insertIndex: -1 addedObject: {fileID: 1740748263} m_SourcePrefab: {fileID: 100100000, guid: 51202e3c62c3d3e1c9bb0ff9c09a608f, type: 3} +--- !u!4 &7687346005249024938 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4495723112463330882} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -0, y: 0.067201994, z: 0.019721568} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 5043611921828736236} + m_Father: {fileID: 1712148501569963285} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!4 &7759842617378749018 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4173625320077136257} + serializedVersion: 2 + m_LocalRotation: {x: 0.0609306, y: 8.455819e-19, z: 1.3852003e-17, w: 0.998142} + m_LocalPosition: {x: -0.00023114638, y: 0.03298392, z: 2.4757668e-10} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 5089204012516470559} + m_Father: {fileID: 1415099164710249100} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!4 &7778723796186263197 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6251047481969825905} + serializedVersion: 2 + m_LocalRotation: {x: 0.05367634, y: -0.11436312, z: -0.021736538, w: 0.9917497} + m_LocalPosition: {x: 1.3760061e-10, y: 0.23404096, z: 1.8717684e-10} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 1415099164710249100} + - {fileID: 8203105719052422126} + - {fileID: 1163206120536941363} + - {fileID: 2155788948031660481} + - {fileID: 3312600048327778012} + m_Father: {fileID: 1510652387383955454} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!4 &7838928657328485819 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 85343042379169409} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -0.0000003702195, y: 0.028763756, z: 3.942631e-11} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 6441986102493312089} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &7850893603083820965 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 484281609308896541} + m_Layer: 0 + m_Name: mixamorig1:LeftToeBase + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &7878436149952436959 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 8155812262948349511} + - component: {fileID: 4651766052616046757} + m_Layer: 0 + m_Name: Ch36 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &7912122239196062929 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4952425062528125501} + m_Layer: 0 + m_Name: mixamorig1:LeftHandIndex4 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &7938088262481928844 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2685435692033814184} + serializedVersion: 2 + m_LocalRotation: {x: -0.002659692, y: -0.000010446507, z: 0.003927601, w: 0.9999888} + m_LocalPosition: {x: -7.220752e-11, y: 0.4278983, z: -0.0000000011878188} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 4741763957539078706} + m_Father: {fileID: 512122151119546421} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!4 &8038615822451828386 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4918869308404791683} + serializedVersion: 2 + m_LocalRotation: {x: 0.11595279, y: 0.030265968, z: 0.25073788, w: 0.9606089} + m_LocalPosition: {x: -0.028850848, y: 0.040543333, z: 0.012119891} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 2029201096819658569} + m_Father: {fileID: 6693120356011529495} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!4 &8155812262948349511 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7878436149952436959} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 543450652165916256} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!4 &8203105719052422126 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2629419972583142261} + serializedVersion: 2 + m_LocalRotation: {x: 0.045831524, y: 0.000067512054, z: 0.0014716187, w: 0.9989481} + m_LocalPosition: {x: 0.010292802, y: 0.12347121, z: -0.0031581004} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 5483348262904919789} + m_Father: {fileID: 7778723796186263197} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &8213214477713527225 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1712148501569963285} + m_Layer: 0 + m_Name: mixamorig1:Neck + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &8569517087646510596 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5483348262904919789} + m_Layer: 0 + m_Name: mixamorig1:LeftHandMiddle2 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &8625701763699280120 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2760433884401181565} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0.0046490603, y: 0.02873546, z: -0.0000000016250328} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 6405193703349832077} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &8667086786424008974 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4425252172428559929} + m_Layer: 0 + m_Name: mixamorig1:RightToeBase + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &8714557809049828075 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 9207503450747593298} + m_Layer: 0 + m_Name: mixamorig1:LeftHandRing2 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &8823565059312253148 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 6441986102493312089} + m_Layer: 0 + m_Name: mixamorig1:LeftHandMiddle3 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &8859567155956936784 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2891039142235008399} + serializedVersion: 2 + m_LocalRotation: {x: -0.09994316, y: 0.0023178984, z: -0.023069846, w: 0.994723} + m_LocalPosition: {x: -2.0416432e-10, y: 0.13005933, z: -0.0000000016256129} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 2803318976981874629} + m_Father: {fileID: 4768815862065511483} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!4 &9207503450747593298 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8714557809049828075} + serializedVersion: 2 + m_LocalRotation: {x: -0.037496082, y: -9.7568e-20, z: 2.6002553e-18, w: 0.9992968} + m_LocalPosition: {x: 0.00006585257, y: 0.027260527, z: 0.0000000010080703} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 2835855890618847734} + m_Father: {fileID: 2155788948031660481} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1660057539 &9223372036854775807 SceneRoots: m_ObjectHideFlags: 0 diff --git a/Assets/Scripts/Item/Inventory.cs b/Assets/Scripts/Item/Inventory.cs index 34f3d9a..30f60b7 100644 --- a/Assets/Scripts/Item/Inventory.cs +++ b/Assets/Scripts/Item/Inventory.cs @@ -1,6 +1,8 @@ using System; using System.Collections; using System.Collections.Generic; +using System.Collections.Specialized; +using System.Linq; using KitsuneCafe.Sys; using ObservableCollections; using UnityEngine; @@ -92,11 +94,14 @@ namespace KitsuneCafe.ItemSystem [SerializeField] private int capacity = 8; + public event NotifyCollectionChangedEventHandler CollectionChanged; + public int Capacity => capacity; public int Count => items.Count; public bool IsEmpty => Count == 0; + public bool IsFull => Count == Capacity; public object SyncRoot => ((IList)items).SyncRoot; @@ -107,7 +112,11 @@ namespace KitsuneCafe.ItemSystem public bool IsSynchronized => ((ICollection)items).IsSynchronized; - object IList.this[int index] { get => items[index]; set => items[index] = (InventoryItem)value; } + object IList.this[int index] + { + get => items[index]; + set => items[index] = (InventoryItem)value; + } public InventoryItem this[int index] { @@ -115,6 +124,7 @@ namespace KitsuneCafe.ItemSystem set => items[index] = value; } + public IEnumerable Find(Func predicate) { for (int i = 0; i < Count; i++) @@ -135,9 +145,12 @@ namespace KitsuneCafe.ItemSystem return Result.Err(InventoryError.InvalidQuantity); } + List existing = new(); + List updated = new(); for (int i = 0; i < Count; i++) { var existingItem = items[i]; + existing.Add(existingItem); if (existingItem.Equals(item)) { @@ -147,6 +160,7 @@ namespace KitsuneCafe.ItemSystem } var consumedAmount = existingItem.IncreaseCount(count, out var updatedItem); + updated.Add(updatedItem.Value); items[i] = updatedItem.Value; count -= consumedAmount; @@ -157,11 +171,13 @@ namespace KitsuneCafe.ItemSystem } } + Notify(NotifyCollectionChangedAction.Replace, updated, existing); return Result.Ok(count); } private IResult AddNew(Item item, int count) { + List added = new(); while (count > 0) { if (IsFull) @@ -171,9 +187,10 @@ namespace KitsuneCafe.ItemSystem count -= InventoryItem.Create(item, count, out var newItem); items.Add(newItem.Value); - + added.Add(newItem.Value); } + Notify(NotifyCollectionChangedAction.Add, added); return Result.Ok(default); } @@ -189,6 +206,32 @@ namespace KitsuneCafe.ItemSystem }; } + private void Notify(NotifyCollectionChangedAction action, IList newItems = default, IList oldItems = default) + { + NotifyCollectionChangedEventArgs args; + + if (newItems.Count == 1) + { + args = new( + action, + true, + newItems[0], + oldItems[0] + ); + } + else + { + args = new( + action, + false, + newItems: newItems.ToArray(), + oldItems: oldItems.ToArray() + ); + } + + CollectionChanged?.Invoke(args); + } + public IResult Remove(Item item, int count = 1) { if (count <= 0) @@ -196,6 +239,8 @@ namespace KitsuneCafe.ItemSystem return Result.Err(InventoryError.InvalidQuantity); } + List removed = new(); + List updated = new(); for (int i = items.Count - 1; i >= 0; i--) { var existingItem = items[i]; @@ -206,15 +251,22 @@ namespace KitsuneCafe.ItemSystem { existingItem.ReduceCount(count, out var updatedItem); items[i] = updatedItem.Value; + + removed.Add(existingItem); + updated.Add(updatedItem.Value); + + Notify(NotifyCollectionChangedAction.Remove, updated, removed); return Result.Ok(Unit.Default); } else { count -= existingItem.Count; items.RemoveAt(i); + removed.Add(existingItem); if (count == 0) { + Notify(NotifyCollectionChangedAction.Remove, updated, removed); return Result.Ok(Unit.Default); } } @@ -226,6 +278,7 @@ namespace KitsuneCafe.ItemSystem return Result.Err(InventoryError.NotEnoughQuantity); } + Notify(NotifyCollectionChangedAction.Remove, updated, removed); return Result.Ok(Unit.Default); } @@ -291,5 +344,71 @@ namespace KitsuneCafe.ItemSystem { ((ICollection)items).CopyTo(array, index); } + + // public ISynchronizedView CreateView(Func transform) + // { + // } + } + + public class InventoryView : ISynchronizedView + { + private Inventory inventory; + + public object SyncRoot => inventory.SyncRoot; + + private ISynchronizedViewFilter filter; + public ISynchronizedViewFilter Filter => filter; + + public IEnumerable<(InventoryItem Value, TView View)> Filtered => throw new NotImplementedException(); + + public IEnumerable<(InventoryItem Value, TView View)> Unfiltered => throw new NotImplementedException(); + + public int UnfilteredCount => throw new NotImplementedException(); + + public int Count => throw new NotImplementedException(); + + public event NotifyViewChangedEventHandler ViewChanged; + public event Action RejectedViewChanged; + public event Action CollectionStateChanged; + + public void AttachFilter(ISynchronizedViewFilter filter) + { + throw new NotImplementedException(); + } + + public void Dispose() + { + throw new NotImplementedException(); + } + + public IEnumerator GetEnumerator() + { + throw new NotImplementedException(); + } + + public void ResetFilter() + { + throw new NotImplementedException(); + } + + public NotifyCollectionChangedSynchronizedViewList ToNotifyCollectionChanged() + { + throw new NotImplementedException(); + } + + public NotifyCollectionChangedSynchronizedViewList ToNotifyCollectionChanged(ICollectionEventDispatcher collectionEventDispatcher) + { + throw new NotImplementedException(); + } + + public ISynchronizedViewList ToViewList() + { + throw new NotImplementedException(); + } + + IEnumerator IEnumerable.GetEnumerator() + { + return GetEnumerator(); + } } } diff --git a/Assets/Scripts/UI/Elements/Recycler.cs b/Assets/Scripts/UI/Elements/Recycler.cs index 6ed5e66..611de07 100644 --- a/Assets/Scripts/UI/Elements/Recycler.cs +++ b/Assets/Scripts/UI/Elements/Recycler.cs @@ -11,7 +11,7 @@ namespace KitsuneCafe.UI { public class RecyclerViewModel { - public record RotateEvent(Direction Direction, int FirstIndex); + public record RotateEvent(Direction Direction, int FirstIndex, object CurrentItem); public enum Direction { @@ -29,7 +29,6 @@ namespace KitsuneCafe.UI if (displayCount != value) { displayCount = value; - CreateIndices(); } } } @@ -43,15 +42,14 @@ namespace KitsuneCafe.UI if (itemSource != value) { itemSource = value; - CreateIndices(); } } } - public int Count => Math.Min(DisplayCount, ItemSource.Count); + public int Count => Math.Max(displayCount, itemSource.Count); - private List indices; - public IReadOnlyList Indices => indices; + private int currentIndex = 0; + public int SelectedIndex => currentIndex; public readonly ICommand RotateCommand; @@ -59,52 +57,113 @@ namespace KitsuneCafe.UI public RecyclerViewModel() { - indices = new(); RotateCommand = new RelayCommand(CanRotate, Rotate); } - private void CreateIndices() - { - if (itemSource == null || displayCount == 0) { return; } - indices = Enumerable.Range(0, Math.Min(DisplayCount, ItemSource.Count)).ToList(); - } - private bool CanRotate(Direction direction) { return direction == Direction.Clockwise || direction == Direction.CounterClockwise; } + public static int WrapIndex(int index, int count) + { + return (index + count) % count; + } + + public int WrapIndex(int index) + { + return WrapIndex(index, Count); + } + + public int GetOffset(int index) + { + return WrapIndex(currentIndex + index); + } + + public static T GetItem(IList xs, int index) + { + return xs[WrapIndex(index, xs.Count)]; + } + + public static object GetItem(IList xs, int index) + { + return xs[WrapIndex(index, xs.Count)]; + } + + public object GetItem(int index) + { + if (0 > index || index >= itemSource.Count) { return null; } + return GetItem(itemSource, index); + } + + public static IEnumerable GetSlice(IList xs, int first, int count) + { + var diff = count - xs.Count; + var xs2 = new List(xs); + xs2.AddRange(Enumerable.Repeat(default, diff)); + var len = first + count; + for (int i = first; i < len; i++) + { + yield return GetItem(xs2, i); + } + } + + public static IEnumerable GetSlice(IList xs, int first, int count) + { + var diff = count - xs.Count; + var xs2 = xs.Cast().ToList(); + xs2.AddRange(Enumerable.Repeat(default, diff)); + var len = first + count; + for (int i = first; i < len; i++) + { + yield return GetItem(xs2, i); + } + } + + public IEnumerable GetSlice(int first, int count) + { + return GetSlice(itemSource, first, count); + } + public void Rotate(Direction direction) { - if (direction == Direction.Clockwise) + var dir = direction switch { - indices.RemoveAt(0); - var next = indices.Last() + 1; - next %= ItemSource.Count; - indices.Add(next); - Notify(direction); - } - else if (direction == Direction.CounterClockwise) + Direction.Clockwise => 1, + Direction.CounterClockwise => -1, + _ => 0 + }; + + + + if (dir != 0) { - indices.RemoveAt(ItemSource.Count - 1); - var count = ItemSource.Count; - var previous = indices[0] - 1; - previous += count % count; - indices.Insert(0, previous); + currentIndex = WrapIndex(currentIndex + dir); Notify(direction); } } private void Notify(Direction direction) { - Rotated?.Invoke(this, new RotateEvent(direction, indices.First())); + Rotated?.Invoke(this, new RotateEvent( + direction, + currentIndex, + GetItem(currentIndex) + )); } } public class SelectEvent : EventBase { - public int ElementIndex { get; set; } - public int DataIndex { get; set; } + public int SelectedIndex; + public object SelectedItem; + + protected override void Init() + { + base.Init(); + bubbles = true; + tricklesDown = true; + } } [UxmlElement] @@ -138,17 +197,17 @@ namespace KitsuneCafe.UI } } - private IBinder binder; + private VisualTreeAsset template; - [CreateProperty] - public IBinder Binder + [UxmlAttribute, CreateProperty] + public VisualTreeAsset Template { - get => binder; + get => template; set { - if (binder != value) + if (template != value) { - binder = value; + template = value; CreateItems(); Rebind(); } @@ -173,18 +232,20 @@ namespace KitsuneCafe.UI private void CreateItems() { Clear(); - if (DisplayCount == 0 || binder == null) { return; } + if (DisplayCount == 0 || template == null) { return; } for (int i = 0; i < DisplayCount; i++) { - Add(binder.CreateItem()); + var ve = template.CloneTree(); + ve.focusable = true; + Add(ve); } FocusFirst(); } - private void Rebind() + public void Rebind() { - if (viewModel == null || ItemSource == null || DisplayCount == 0 || binder == null) { return; } + if (viewModel == null || ItemSource == null || DisplayCount == 0) { return; } for (int i = 0; i < DisplayCount; i++) { @@ -199,34 +260,35 @@ namespace KitsuneCafe.UI private void OnRotated(object sender, RecyclerViewModel.RotateEvent e) { - VisualElement recycled; - switch (e.Direction) + var first = 0; + var last = DisplayCount - 1; + + var (from, to) = e.Direction switch { - case RecyclerViewModel.Direction.Clockwise: - recycled = this[0]; - RemoveAt(0); - Insert(DisplayCount - 1, recycled); - TryBindItem(recycled, DisplayCount - 1); - NotifySelection(); - break; - case RecyclerViewModel.Direction.CounterClockwise: - recycled = this[DisplayCount - 1]; - RemoveAt(DisplayCount - 1); - Insert(0, recycled); - TryBindItem(recycled, 0); - NotifySelection(); - break; - } + RecyclerViewModel.Direction.Clockwise => (first, last), + RecyclerViewModel.Direction.CounterClockwise => (last, first), + RecyclerViewModel.Direction.None => (-1, -1) + }; + + if (from == -1 && to == -1) { return; } + + var element = this[from]; + + RemoveAt(from); + Insert(to, element); + + element.dataSource = viewModel.GetItem(viewModel.GetOffset(to)); FocusFirst(); + NotifySelection(); } private void NotifySelection() { using SelectEvent evt = SelectEvent.GetPooled(); evt.target = this[0]; - evt.ElementIndex = 0; - evt.DataIndex = viewModel.Indices[0]; + evt.SelectedIndex = viewModel.SelectedIndex; + evt.SelectedItem = viewModel.GetItem(evt.SelectedIndex); SendEvent(evt); } @@ -242,15 +304,15 @@ namespace KitsuneCafe.UI { if (HasItem(index)) { - var idx = viewModel.Indices[index]; + var idx = viewModel.WrapIndex(index); if (0 <= idx && idx < ItemSource.Count) { - binder.BindItem(element, idx); + element.dataSource = ItemSource[idx]; } } else { - binder.UnbindItem(element); + element.dataSource = null; } } diff --git a/Assets/Scripts/UI/Screen/InventoryScreen.cs b/Assets/Scripts/UI/Screen/InventoryScreen.cs index ce134b8..a9be843 100644 --- a/Assets/Scripts/UI/Screen/InventoryScreen.cs +++ b/Assets/Scripts/UI/Screen/InventoryScreen.cs @@ -1,9 +1,10 @@ -using System; +using System.Collections.Generic; +using System.Linq; using KitsuneCafe.ItemSystem; using KitsuneCafe.SOAP; using KitsuneCafe.UI.MVVM; +using ObservableCollections; using R3; -using UnityEditor.UIElements; using UnityEngine; using UnityEngine.UIElements; @@ -11,7 +12,7 @@ namespace KitsuneCafe.UI { public class InventoryScreen : MonoBehaviour { - public const string ItemListIndicatorsName = "item-list-indicator"; + public const string ItemListIndicatorsName = "item-list-indicator-container"; public const string ItemListName = "item-list"; public const string ItemPreviewName = "item-preview"; @@ -49,7 +50,8 @@ namespace KitsuneCafe.UI private VisualElement root => doc.rootVisualElement; - private VisualElement indicators; + private List indicators; + private RecyclerView itemList; private VisualElement itemPreview; private void OnValidate() @@ -92,29 +94,30 @@ namespace KitsuneCafe.UI private void CreateItemList() { - var itemList = root.Q(); + var indicatorContainer = root.Q(ItemListIndicatorsName); + indicators = indicatorContainer.Children().ToList(); + + itemList = root.Q(); itemList.ItemSource = inventory; - itemList.Binder = new AdHocBinder( - () => - { - var instance = template.CloneTree(); - instance.focusable = true; - return instance; - }, - (el, i) => - { - el.dataSource = inventory[i]; - }, - el => - { - el.dataSource = null; - } - ); itemList.RegisterCallback(evt => { - Debug.Log($"Selected {evt.DataIndex}"); + if (evt.SelectedItem == null) + { + selectedItem.Value = null; + } + else + { + selectedItem.Value = ((InventoryItem)evt.SelectedItem).Item; + } }); + + inventory.CollectionChanged += RebindItems; + } + + private void RebindItems(in NotifyCollectionChangedEventArgs e) + { + itemList.Rebind(); } } } diff --git a/Assets/UI/Inventory.uxml b/Assets/UI/Inventory.uxml index d7272c9..701cc07 100644 --- a/Assets/UI/Inventory.uxml +++ b/Assets/UI/Inventory.uxml @@ -10,7 +10,7 @@ - + @@ -57,16 +57,16 @@ - + - + - + - +