فهرست منبع

角色添加新默认服装

DESKTOP-5BUCSUT\LSR 1 سال پیش
والد
کامیت
2f6cd2e1a1
22فایلهای تغییر یافته به همراه2194 افزوده شده و 704 حذف شده
  1. 124 0
      SFGgouhuo/Assets/Bundles/Materials/ModelMat/100216_mat.mat
  2. 8 0
      SFGgouhuo/Assets/Bundles/Materials/ModelMat/100216_mat.mat.meta
  3. 582 0
      SFGgouhuo/Assets/Bundles/Model/player_dress.prefab
  4. 37 37
      SFGgouhuo/Assets/Bundles/UI/Prefab/GuidePanel_Mobile.prefab
  5. 279 0
      SFGgouhuo/Assets/Editor/SetBone.cs
  6. 11 0
      SFGgouhuo/Assets/Editor/SetBone.cs.meta
  7. BIN
      SFGgouhuo/Assets/GameResources/d3Assets/cloth/texture/100216_BaseMap.png
  8. 133 0
      SFGgouhuo/Assets/GameResources/d3Assets/cloth/texture/100216_BaseMap.png.meta
  9. BIN
      SFGgouhuo/Assets/GameResources/d3Assets/cloth/texture/100216_MaskMap.png
  10. 133 0
      SFGgouhuo/Assets/GameResources/d3Assets/cloth/texture/100216_MaskMap.png.meta
  11. BIN
      SFGgouhuo/Assets/GameResources/d3Assets/cloth/texture/100216_Normal.png
  12. 133 0
      SFGgouhuo/Assets/GameResources/d3Assets/cloth/texture/100216_Normal.png.meta
  13. 34 39
      SFGgouhuo/Assets/MyShaderVariants.json
  14. 19 19
      SFGgouhuo/Assets/MyShaderVariants.shadervariants
  15. 74 74
      SFGgouhuo/Assets/Scripts/Manager/StepManager.cs
  16. 2 2
      SFGgouhuo/Assets/Scripts/MoveController.cs
  17. 3 1
      SFGgouhuo/Assets/Scripts/TimeCounting.cs
  18. 15 0
      SFGgouhuo/Assets/Scripts/UI/FaceBuild/CharacterRender.cs
  19. 523 517
      SFGgouhuo/Assets/Scripts/UI/FaceBuild/FaceBuildSystem.cs
  20. 1 1
      SFGgouhuo/Assets/Scripts/UI/Loading/ESLanguage.cs
  21. 82 12
      SFGgouhuo/Assets/TextMesh Pro/Fonts/SOURCEHANSANSCN-BOLD SDF.asset
  22. 1 2
      SFGgouhuo/ProjectSettings/ProjectSettings.asset

+ 124 - 0
SFGgouhuo/Assets/Bundles/Materials/ModelMat/100216_mat.mat

@@ -0,0 +1,124 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!21 &2100000
+Material:
+  serializedVersion: 6
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_Name: 100216_mat
+  m_Shader: {fileID: 4800000, guid: 933532a4fcc9baf4fa0491de14d08ed7, type: 3}
+  m_ShaderKeywords: _DETAIL_MULX2
+  m_LightmapFlags: 4
+  m_EnableInstancingVariants: 0
+  m_DoubleSidedGI: 0
+  m_CustomRenderQueue: 2000
+  stringTagMap:
+    RenderType: Opaque
+  disabledShaderPasses: []
+  m_SavedProperties:
+    serializedVersion: 3
+    m_TexEnvs:
+    - _BaseMap:
+        m_Texture: {fileID: 2800000, guid: 5be2edc840c007c48ab51265ee1180b5, type: 3}
+        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: 2800000, guid: 82066aaa052fa5b40871529bf68f587c, type: 3}
+        m_Scale: {x: 1, y: 1}
+        m_Offset: {x: 0, y: 0}
+    - _DetailNormalMap:
+        m_Texture: {fileID: 2800000, guid: a5e8aaecc36f6b146849b153e6b728fb, type: 3}
+        m_Scale: {x: 1, y: 1}
+        m_Offset: {x: 0, y: 0}
+    - _EmissionMap:
+        m_Texture: {fileID: 0}
+        m_Scale: {x: 1, y: 1}
+        m_Offset: {x: 0, y: 0}
+    - _MainTex:
+        m_Texture: {fileID: 2800000, guid: 5be2edc840c007c48ab51265ee1180b5, type: 3}
+        m_Scale: {x: 1, y: 1}
+        m_Offset: {x: 0, y: 0}
+    - _MetallicGlossMap:
+        m_Texture: {fileID: 0}
+        m_Scale: {x: 1, y: 1}
+        m_Offset: {x: 0, y: 0}
+    - _OcclusionMap:
+        m_Texture: {fileID: 0}
+        m_Scale: {x: 1, y: 1}
+        m_Offset: {x: 0, y: 0}
+    - _ParallaxMap:
+        m_Texture: {fileID: 0}
+        m_Scale: {x: 1, y: 1}
+        m_Offset: {x: 0, y: 0}
+    - _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_Floats:
+    - _AlphaClip: 0
+    - _Blend: 0
+    - _BumpScale: 1
+    - _ClearCoatMask: 0
+    - _ClearCoatSmoothness: 0
+    - _Cull: 2
+    - _Cutoff: 0.5
+    - _DetailAlbedoMapScale: 1
+    - _DetailNormalMapScale: 1
+    - _DstBlend: 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
+    - _Surface: 0
+    - _WorkflowMode: 1
+    - _ZWrite: 1
+    m_Colors:
+    - _BaseColor: {r: 1, g: 1, b: 1, a: 1}
+    - _Color: {r: 1, g: 1, b: 1, 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: []
+--- !u!114 &397675448985047802
+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: 4

+ 8 - 0
SFGgouhuo/Assets/Bundles/Materials/ModelMat/100216_mat.mat.meta

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

+ 582 - 0
SFGgouhuo/Assets/Bundles/Model/player_dress.prefab

@@ -4045,6 +4045,8 @@ Transform:
   - {fileID: 5168350249168134358}
   - {fileID: 4753822212343265564}
   - {fileID: 693791704409941738}
+  - {fileID: 4144594002098743274}
+  - {fileID: 4663753464464159853}
   m_Father: {fileID: 0}
   m_RootOrder: 0
   m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
@@ -4212,3 +4214,583 @@ Transform:
   m_Father: {fileID: 4227911673677770415}
   m_RootOrder: 0
   m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!1001 &1233036178672394770
+PrefabInstance:
+  m_ObjectHideFlags: 0
+  serializedVersion: 2
+  m_Modification:
+    m_TransformParent: {fileID: 8396836477869001796}
+    m_Modifications:
+    - target: {fileID: 2581619468598124354, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Name
+      value: default_Top
+      objectReference: {fileID: 0}
+    - target: {fileID: 2925107294217061880, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_RootOrder
+      value: 7
+      objectReference: {fileID: 0}
+    - target: {fileID: 2925107294217061880, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_LocalPosition.x
+      value: 0
+      objectReference: {fileID: 0}
+    - target: {fileID: 2925107294217061880, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_LocalPosition.y
+      value: 0
+      objectReference: {fileID: 0}
+    - target: {fileID: 2925107294217061880, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_LocalPosition.z
+      value: 0
+      objectReference: {fileID: 0}
+    - target: {fileID: 2925107294217061880, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_LocalRotation.w
+      value: 1
+      objectReference: {fileID: 0}
+    - target: {fileID: 2925107294217061880, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_LocalRotation.x
+      value: 0
+      objectReference: {fileID: 0}
+    - target: {fileID: 2925107294217061880, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_LocalRotation.y
+      value: 0
+      objectReference: {fileID: 0}
+    - target: {fileID: 2925107294217061880, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_LocalRotation.z
+      value: 0
+      objectReference: {fileID: 0}
+    - target: {fileID: 2925107294217061880, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_LocalEulerAnglesHint.x
+      value: 0
+      objectReference: {fileID: 0}
+    - target: {fileID: 2925107294217061880, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_LocalEulerAnglesHint.y
+      value: 0
+      objectReference: {fileID: 0}
+    - target: {fileID: 2925107294217061880, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_LocalEulerAnglesHint.z
+      value: 0
+      objectReference: {fileID: 0}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_RootBone
+      value: 
+      objectReference: {fileID: 440099947243185430}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[0]
+      value: 
+      objectReference: {fileID: 3759459758662271174}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[1]
+      value: 
+      objectReference: {fileID: 7154926364019272223}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[2]
+      value: 
+      objectReference: {fileID: 1913287475135454588}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[3]
+      value: 
+      objectReference: {fileID: 5354092961345853144}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[4]
+      value: 
+      objectReference: {fileID: 1061062918163202428}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[5]
+      value: 
+      objectReference: {fileID: 1453646656140673012}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[6]
+      value: 
+      objectReference: {fileID: 2825354561017364868}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[7]
+      value: 
+      objectReference: {fileID: 4383101458915646799}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[8]
+      value: 
+      objectReference: {fileID: 6516725148922903918}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[9]
+      value: 
+      objectReference: {fileID: 7890018835432088594}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[10]
+      value: 
+      objectReference: {fileID: 6108713398889579581}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[11]
+      value: 
+      objectReference: {fileID: 3937764201014915256}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[12]
+      value: 
+      objectReference: {fileID: 2780841297288168787}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[13]
+      value: 
+      objectReference: {fileID: 6718458393983217836}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[14]
+      value: 
+      objectReference: {fileID: 4061101271743319627}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[15]
+      value: 
+      objectReference: {fileID: 4808422228844080055}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[16]
+      value: 
+      objectReference: {fileID: 440099947243185430}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[17]
+      value: 
+      objectReference: {fileID: 1407826119462806567}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[18]
+      value: 
+      objectReference: {fileID: 7129150303452816272}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[19]
+      value: 
+      objectReference: {fileID: 3388844288433234708}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[20]
+      value: 
+      objectReference: {fileID: 2236413489456463404}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[21]
+      value: 
+      objectReference: {fileID: 4227911673677770415}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[22]
+      value: 
+      objectReference: {fileID: 251429382721173325}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[23]
+      value: 
+      objectReference: {fileID: 7031653666721765018}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[24]
+      value: 
+      objectReference: {fileID: 4671710401544211193}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[25]
+      value: 
+      objectReference: {fileID: 6312152898936312308}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[26]
+      value: 
+      objectReference: {fileID: 5572524597760697574}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[27]
+      value: 
+      objectReference: {fileID: 8580568406912514545}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[28]
+      value: 
+      objectReference: {fileID: 4148444779548418846}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[29]
+      value: 
+      objectReference: {fileID: 7286910600047381155}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[30]
+      value: 
+      objectReference: {fileID: 962421178046467787}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[31]
+      value: 
+      objectReference: {fileID: 5767866778194895760}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[32]
+      value: 
+      objectReference: {fileID: 1072669752994095964}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[33]
+      value: 
+      objectReference: {fileID: 8832070370700200805}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[34]
+      value: 
+      objectReference: {fileID: 2729641165495544953}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[35]
+      value: 
+      objectReference: {fileID: 5160290216884443151}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[36]
+      value: 
+      objectReference: {fileID: 121056419587060085}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[37]
+      value: 
+      objectReference: {fileID: 7817385061979902409}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[38]
+      value: 
+      objectReference: {fileID: 2378832105146913798}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[39]
+      value: 
+      objectReference: {fileID: 1092740327657701269}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[40]
+      value: 
+      objectReference: {fileID: 1581216915338434691}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[41]
+      value: 
+      objectReference: {fileID: 8593305444590164769}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[42]
+      value: 
+      objectReference: {fileID: 5382982649085762509}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[43]
+      value: 
+      objectReference: {fileID: 1123288697706277790}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[44]
+      value: 
+      objectReference: {fileID: 3704209721648706705}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[45]
+      value: 
+      objectReference: {fileID: 6469903229452276664}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[46]
+      value: 
+      objectReference: {fileID: 3570952269310163625}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[47]
+      value: 
+      objectReference: {fileID: 6962649242758118590}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[48]
+      value: 
+      objectReference: {fileID: 8122286303413151714}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[49]
+      value: 
+      objectReference: {fileID: 6510157865898078112}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[50]
+      value: 
+      objectReference: {fileID: 5269180333524699935}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[51]
+      value: 
+      objectReference: {fileID: 858180278707239931}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[52]
+      value: 
+      objectReference: {fileID: 2504623238493067198}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[53]
+      value: 
+      objectReference: {fileID: 2666169166122469853}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[54]
+      value: 
+      objectReference: {fileID: 7027192204393629070}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[55]
+      value: 
+      objectReference: {fileID: 242936443096801859}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[56]
+      value: 
+      objectReference: {fileID: 4795342539159383297}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[57]
+      value: 
+      objectReference: {fileID: 3695888916717905064}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[58]
+      value: 
+      objectReference: {fileID: 266356067309037877}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[59]
+      value: 
+      objectReference: {fileID: 8853319821865171900}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[60]
+      value: 
+      objectReference: {fileID: 2925546996259477132}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[61]
+      value: 
+      objectReference: {fileID: 2373938127455849909}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[62]
+      value: 
+      objectReference: {fileID: 6835728500141730838}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[63]
+      value: 
+      objectReference: {fileID: 6699889364215842403}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[64]
+      value: 
+      objectReference: {fileID: 8247690275260093538}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[65]
+      value: 
+      objectReference: {fileID: 9145121679468620975}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[66]
+      value: 
+      objectReference: {fileID: 4567709360107908834}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[67]
+      value: 
+      objectReference: {fileID: 165674755420101801}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[68]
+      value: 
+      objectReference: {fileID: 554908742940870471}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[69]
+      value: 
+      objectReference: {fileID: 8683849809580048363}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[70]
+      value: 
+      objectReference: {fileID: 4367601501735646081}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[71]
+      value: 
+      objectReference: {fileID: 66418396845884644}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[72]
+      value: 
+      objectReference: {fileID: 5739157729924645718}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[73]
+      value: 
+      objectReference: {fileID: 8403935011675716219}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[74]
+      value: 
+      objectReference: {fileID: 861031130782186542}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[75]
+      value: 
+      objectReference: {fileID: 405035637931821451}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[76]
+      value: 
+      objectReference: {fileID: 2110245883737787966}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[77]
+      value: 
+      objectReference: {fileID: 3747803919589773248}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[78]
+      value: 
+      objectReference: {fileID: 966848679011718116}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[79]
+      value: 
+      objectReference: {fileID: 2493316443601354438}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[80]
+      value: 
+      objectReference: {fileID: 3443570436611113698}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[81]
+      value: 
+      objectReference: {fileID: 156076558831329485}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[82]
+      value: 
+      objectReference: {fileID: 775535307014014285}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[83]
+      value: 
+      objectReference: {fileID: 8509385436512795289}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[84]
+      value: 
+      objectReference: {fileID: 9072454916594919007}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[85]
+      value: 
+      objectReference: {fileID: 1360055316627284444}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[86]
+      value: 
+      objectReference: {fileID: 1816437874525121008}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[87]
+      value: 
+      objectReference: {fileID: 3671813285918794836}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[88]
+      value: 
+      objectReference: {fileID: 5593458614948211899}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[89]
+      value: 
+      objectReference: {fileID: 6622626419403920275}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[90]
+      value: 
+      objectReference: {fileID: 7801584923246913514}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[91]
+      value: 
+      objectReference: {fileID: 315443766455678900}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[92]
+      value: 
+      objectReference: {fileID: 2725895513801369756}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[93]
+      value: 
+      objectReference: {fileID: 6490835271085117400}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[94]
+      value: 
+      objectReference: {fileID: 556055313461995800}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[95]
+      value: 
+      objectReference: {fileID: 6421481863036662095}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[96]
+      value: 
+      objectReference: {fileID: 7999970242253407949}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[97]
+      value: 
+      objectReference: {fileID: 1020349047166099611}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[98]
+      value: 
+      objectReference: {fileID: 8146092441615698287}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Bones.Array.data[99]
+      value: 
+      objectReference: {fileID: 7118391980105929477}
+    - target: {fileID: 3032430601139151003, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+      propertyPath: m_Materials.Array.data[0]
+      value: 
+      objectReference: {fileID: 2100000, guid: 1c2fcc3929a00b646ae7cbd76628251f, type: 2}
+    m_RemovedComponents: []
+  m_SourcePrefab: {fileID: 100100000, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+--- !u!4 &4144594002098743274 stripped
+Transform:
+  m_CorrespondingSourceObject: {fileID: 2925107294217061880, guid: ffc1c7ef2e9f6484a8c92926c932f25a, type: 3}
+  m_PrefabInstance: {fileID: 1233036178672394770}
+  m_PrefabAsset: {fileID: 0}
+--- !u!1001 &4369632044448215820
+PrefabInstance:
+  m_ObjectHideFlags: 0
+  serializedVersion: 2
+  m_Modification:
+    m_TransformParent: {fileID: 8396836477869001796}
+    m_Modifications:
+    - target: {fileID: 8312979615331328230, guid: 2f1a8f04983fd7f439d9179e2d8590a1, type: 3}
+      propertyPath: m_RootBone
+      value: 
+      objectReference: {fileID: 440099947243185430}
+    - target: {fileID: 8312979615331328230, guid: 2f1a8f04983fd7f439d9179e2d8590a1, type: 3}
+      propertyPath: m_Bones.Array.data[0]
+      value: 
+      objectReference: {fileID: 1913287475135454588}
+    - target: {fileID: 8312979615331328230, guid: 2f1a8f04983fd7f439d9179e2d8590a1, type: 3}
+      propertyPath: m_Bones.Array.data[1]
+      value: 
+      objectReference: {fileID: 4383101458915646799}
+    - target: {fileID: 8312979615331328230, guid: 2f1a8f04983fd7f439d9179e2d8590a1, type: 3}
+      propertyPath: m_Bones.Array.data[2]
+      value: 
+      objectReference: {fileID: 6718458393983217836}
+    - target: {fileID: 8312979615331328230, guid: 2f1a8f04983fd7f439d9179e2d8590a1, type: 3}
+      propertyPath: m_Bones.Array.data[3]
+      value: 
+      objectReference: {fileID: 4061101271743319627}
+    - target: {fileID: 8312979615331328230, guid: 2f1a8f04983fd7f439d9179e2d8590a1, type: 3}
+      propertyPath: m_Bones.Array.data[4]
+      value: 
+      objectReference: {fileID: 440099947243185430}
+    - target: {fileID: 8312979615331328230, guid: 2f1a8f04983fd7f439d9179e2d8590a1, type: 3}
+      propertyPath: m_Bones.Array.data[5]
+      value: 
+      objectReference: {fileID: 4227911673677770415}
+    - target: {fileID: 8312979615331328230, guid: 2f1a8f04983fd7f439d9179e2d8590a1, type: 3}
+      propertyPath: m_Bones.Array.data[6]
+      value: 
+      objectReference: {fileID: 251429382721173325}
+    - target: {fileID: 8312979615331328230, guid: 2f1a8f04983fd7f439d9179e2d8590a1, type: 3}
+      propertyPath: m_Bones.Array.data[7]
+      value: 
+      objectReference: {fileID: 7031653666721765018}
+    - target: {fileID: 8312979615331328230, guid: 2f1a8f04983fd7f439d9179e2d8590a1, type: 3}
+      propertyPath: m_Bones.Array.data[8]
+      value: 
+      objectReference: {fileID: 4671710401544211193}
+    - target: {fileID: 8312979615331328230, guid: 2f1a8f04983fd7f439d9179e2d8590a1, type: 3}
+      propertyPath: m_Bones.Array.data[9]
+      value: 
+      objectReference: {fileID: 4148444779548418846}
+    - target: {fileID: 8312979615331328230, guid: 2f1a8f04983fd7f439d9179e2d8590a1, type: 3}
+      propertyPath: m_Materials.Array.data[0]
+      value: 
+      objectReference: {fileID: 2100000, guid: 5025ef23936056d42b497d762298ebfb, type: 2}
+    - target: {fileID: 8599384400849640923, guid: 2f1a8f04983fd7f439d9179e2d8590a1, type: 3}
+      propertyPath: m_Name
+      value: default_Bottom
+      objectReference: {fileID: 0}
+    - target: {fileID: 8943293583945746273, guid: 2f1a8f04983fd7f439d9179e2d8590a1, type: 3}
+      propertyPath: m_RootOrder
+      value: 8
+      objectReference: {fileID: 0}
+    - target: {fileID: 8943293583945746273, guid: 2f1a8f04983fd7f439d9179e2d8590a1, type: 3}
+      propertyPath: m_LocalPosition.x
+      value: 0
+      objectReference: {fileID: 0}
+    - target: {fileID: 8943293583945746273, guid: 2f1a8f04983fd7f439d9179e2d8590a1, type: 3}
+      propertyPath: m_LocalPosition.y
+      value: 0
+      objectReference: {fileID: 0}
+    - target: {fileID: 8943293583945746273, guid: 2f1a8f04983fd7f439d9179e2d8590a1, type: 3}
+      propertyPath: m_LocalPosition.z
+      value: 0
+      objectReference: {fileID: 0}
+    - target: {fileID: 8943293583945746273, guid: 2f1a8f04983fd7f439d9179e2d8590a1, type: 3}
+      propertyPath: m_LocalRotation.w
+      value: 1
+      objectReference: {fileID: 0}
+    - target: {fileID: 8943293583945746273, guid: 2f1a8f04983fd7f439d9179e2d8590a1, type: 3}
+      propertyPath: m_LocalRotation.x
+      value: 0
+      objectReference: {fileID: 0}
+    - target: {fileID: 8943293583945746273, guid: 2f1a8f04983fd7f439d9179e2d8590a1, type: 3}
+      propertyPath: m_LocalRotation.y
+      value: 0
+      objectReference: {fileID: 0}
+    - target: {fileID: 8943293583945746273, guid: 2f1a8f04983fd7f439d9179e2d8590a1, type: 3}
+      propertyPath: m_LocalRotation.z
+      value: 0
+      objectReference: {fileID: 0}
+    - target: {fileID: 8943293583945746273, guid: 2f1a8f04983fd7f439d9179e2d8590a1, type: 3}
+      propertyPath: m_LocalEulerAnglesHint.x
+      value: 0
+      objectReference: {fileID: 0}
+    - target: {fileID: 8943293583945746273, guid: 2f1a8f04983fd7f439d9179e2d8590a1, type: 3}
+      propertyPath: m_LocalEulerAnglesHint.y
+      value: 0
+      objectReference: {fileID: 0}
+    - target: {fileID: 8943293583945746273, guid: 2f1a8f04983fd7f439d9179e2d8590a1, type: 3}
+      propertyPath: m_LocalEulerAnglesHint.z
+      value: 0
+      objectReference: {fileID: 0}
+    m_RemovedComponents: []
+  m_SourcePrefab: {fileID: 100100000, guid: 2f1a8f04983fd7f439d9179e2d8590a1, type: 3}
+--- !u!4 &4663753464464159853 stripped
+Transform:
+  m_CorrespondingSourceObject: {fileID: 8943293583945746273, guid: 2f1a8f04983fd7f439d9179e2d8590a1, type: 3}
+  m_PrefabInstance: {fileID: 4369632044448215820}
+  m_PrefabAsset: {fileID: 0}

+ 37 - 37
SFGgouhuo/Assets/Bundles/UI/Prefab/GuidePanel_Mobile.prefab

@@ -265,7 +265,7 @@ RectTransform:
   m_LocalScale: {x: 1, y: 1, z: 1}
   m_Children: []
   m_Father: {fileID: 6718841428675902146}
-  m_RootOrder: 2
+  m_RootOrder: 1
   m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
   m_AnchorMin: {x: 0.5, y: 1}
   m_AnchorMax: {x: 0.5, y: 1}
@@ -1118,8 +1118,8 @@ RectTransform:
   m_LocalScale: {x: 1, y: 1, z: 1}
   m_Children:
   - {fileID: 5313907924033226250}
-  - {fileID: 6618677480847749878}
   - {fileID: 1448375282370161990}
+  - {fileID: 9032115901201371409}
   - {fileID: 6531815727317527161}
   - {fileID: 7142801606910919967}
   - {fileID: 5395467122558995240}
@@ -1185,105 +1185,105 @@ MonoBehaviour:
   m_EditorClassIdentifier: 
   return_Button: {fileID: 7872117123914610611}
   HashText: {fileID: 0}
---- !u!1001 &2546724627071228732
+--- !u!1001 &7976955516602810210
 PrefabInstance:
   m_ObjectHideFlags: 0
   serializedVersion: 2
   m_Modification:
     m_TransformParent: {fileID: 6718841428675902146}
     m_Modifications:
-    - target: {fileID: 1747602372697619422, guid: c46025a62fbc9174081b30306f693eb3, type: 3}
-      propertyPath: m_Name
-      value: ESLanguageMobile
-      objectReference: {fileID: 0}
-    - target: {fileID: 8686753824114698698, guid: c46025a62fbc9174081b30306f693eb3, type: 3}
+    - target: {fileID: 1435332481416965747, guid: 863e1ebc08b38c349a82f38db225ed29, type: 3}
       propertyPath: m_Pivot.x
       value: 0.5
       objectReference: {fileID: 0}
-    - target: {fileID: 8686753824114698698, guid: c46025a62fbc9174081b30306f693eb3, type: 3}
+    - target: {fileID: 1435332481416965747, guid: 863e1ebc08b38c349a82f38db225ed29, type: 3}
       propertyPath: m_Pivot.y
       value: 0.5
       objectReference: {fileID: 0}
-    - target: {fileID: 8686753824114698698, guid: c46025a62fbc9174081b30306f693eb3, type: 3}
+    - target: {fileID: 1435332481416965747, guid: 863e1ebc08b38c349a82f38db225ed29, type: 3}
       propertyPath: m_RootOrder
-      value: 1
+      value: 2
       objectReference: {fileID: 0}
-    - target: {fileID: 8686753824114698698, guid: c46025a62fbc9174081b30306f693eb3, type: 3}
+    - target: {fileID: 1435332481416965747, guid: 863e1ebc08b38c349a82f38db225ed29, type: 3}
       propertyPath: m_AnchorMax.x
       value: 1
       objectReference: {fileID: 0}
-    - target: {fileID: 8686753824114698698, guid: c46025a62fbc9174081b30306f693eb3, type: 3}
+    - target: {fileID: 1435332481416965747, guid: 863e1ebc08b38c349a82f38db225ed29, type: 3}
       propertyPath: m_AnchorMax.y
       value: 1
       objectReference: {fileID: 0}
-    - target: {fileID: 8686753824114698698, guid: c46025a62fbc9174081b30306f693eb3, type: 3}
+    - target: {fileID: 1435332481416965747, guid: 863e1ebc08b38c349a82f38db225ed29, type: 3}
       propertyPath: m_AnchorMin.x
       value: 1
       objectReference: {fileID: 0}
-    - target: {fileID: 8686753824114698698, guid: c46025a62fbc9174081b30306f693eb3, type: 3}
+    - target: {fileID: 1435332481416965747, guid: 863e1ebc08b38c349a82f38db225ed29, type: 3}
       propertyPath: m_AnchorMin.y
       value: 1
       objectReference: {fileID: 0}
-    - target: {fileID: 8686753824114698698, guid: c46025a62fbc9174081b30306f693eb3, type: 3}
+    - target: {fileID: 1435332481416965747, guid: 863e1ebc08b38c349a82f38db225ed29, type: 3}
       propertyPath: m_SizeDelta.x
-      value: 198.659
+      value: 228
       objectReference: {fileID: 0}
-    - target: {fileID: 8686753824114698698, guid: c46025a62fbc9174081b30306f693eb3, type: 3}
+    - target: {fileID: 1435332481416965747, guid: 863e1ebc08b38c349a82f38db225ed29, type: 3}
       propertyPath: m_SizeDelta.y
-      value: 39.5085
+      value: 44
       objectReference: {fileID: 0}
-    - target: {fileID: 8686753824114698698, guid: c46025a62fbc9174081b30306f693eb3, type: 3}
+    - target: {fileID: 1435332481416965747, guid: 863e1ebc08b38c349a82f38db225ed29, type: 3}
       propertyPath: m_LocalPosition.x
       value: 0
       objectReference: {fileID: 0}
-    - target: {fileID: 8686753824114698698, guid: c46025a62fbc9174081b30306f693eb3, type: 3}
+    - target: {fileID: 1435332481416965747, guid: 863e1ebc08b38c349a82f38db225ed29, type: 3}
       propertyPath: m_LocalPosition.y
       value: 0
       objectReference: {fileID: 0}
-    - target: {fileID: 8686753824114698698, guid: c46025a62fbc9174081b30306f693eb3, type: 3}
+    - target: {fileID: 1435332481416965747, guid: 863e1ebc08b38c349a82f38db225ed29, type: 3}
       propertyPath: m_LocalPosition.z
       value: 0
       objectReference: {fileID: 0}
-    - target: {fileID: 8686753824114698698, guid: c46025a62fbc9174081b30306f693eb3, type: 3}
+    - target: {fileID: 1435332481416965747, guid: 863e1ebc08b38c349a82f38db225ed29, type: 3}
       propertyPath: m_LocalRotation.w
       value: 1
       objectReference: {fileID: 0}
-    - target: {fileID: 8686753824114698698, guid: c46025a62fbc9174081b30306f693eb3, type: 3}
+    - target: {fileID: 1435332481416965747, guid: 863e1ebc08b38c349a82f38db225ed29, type: 3}
       propertyPath: m_LocalRotation.x
       value: 0
       objectReference: {fileID: 0}
-    - target: {fileID: 8686753824114698698, guid: c46025a62fbc9174081b30306f693eb3, type: 3}
+    - target: {fileID: 1435332481416965747, guid: 863e1ebc08b38c349a82f38db225ed29, type: 3}
       propertyPath: m_LocalRotation.y
       value: 0
       objectReference: {fileID: 0}
-    - target: {fileID: 8686753824114698698, guid: c46025a62fbc9174081b30306f693eb3, type: 3}
+    - target: {fileID: 1435332481416965747, guid: 863e1ebc08b38c349a82f38db225ed29, type: 3}
       propertyPath: m_LocalRotation.z
       value: 0
       objectReference: {fileID: 0}
-    - target: {fileID: 8686753824114698698, guid: c46025a62fbc9174081b30306f693eb3, type: 3}
+    - target: {fileID: 1435332481416965747, guid: 863e1ebc08b38c349a82f38db225ed29, type: 3}
       propertyPath: m_AnchoredPosition.x
-      value: -132.10571
+      value: -150
       objectReference: {fileID: 0}
-    - target: {fileID: 8686753824114698698, guid: c46025a62fbc9174081b30306f693eb3, type: 3}
+    - target: {fileID: 1435332481416965747, guid: 863e1ebc08b38c349a82f38db225ed29, type: 3}
       propertyPath: m_AnchoredPosition.y
-      value: -51.847473
+      value: -57.899994
       objectReference: {fileID: 0}
-    - target: {fileID: 8686753824114698698, guid: c46025a62fbc9174081b30306f693eb3, type: 3}
+    - target: {fileID: 1435332481416965747, guid: 863e1ebc08b38c349a82f38db225ed29, type: 3}
       propertyPath: m_LocalEulerAnglesHint.x
       value: 0
       objectReference: {fileID: 0}
-    - target: {fileID: 8686753824114698698, guid: c46025a62fbc9174081b30306f693eb3, type: 3}
+    - target: {fileID: 1435332481416965747, guid: 863e1ebc08b38c349a82f38db225ed29, type: 3}
       propertyPath: m_LocalEulerAnglesHint.y
       value: 0
       objectReference: {fileID: 0}
-    - target: {fileID: 8686753824114698698, guid: c46025a62fbc9174081b30306f693eb3, type: 3}
+    - target: {fileID: 1435332481416965747, guid: 863e1ebc08b38c349a82f38db225ed29, type: 3}
       propertyPath: m_LocalEulerAnglesHint.z
       value: 0
       objectReference: {fileID: 0}
+    - target: {fileID: 8297430160373333095, guid: 863e1ebc08b38c349a82f38db225ed29, type: 3}
+      propertyPath: m_Name
+      value: ESLanguage
+      objectReference: {fileID: 0}
     m_RemovedComponents: []
-  m_SourcePrefab: {fileID: 100100000, guid: c46025a62fbc9174081b30306f693eb3, type: 3}
---- !u!224 &6618677480847749878 stripped
+  m_SourcePrefab: {fileID: 100100000, guid: 863e1ebc08b38c349a82f38db225ed29, type: 3}
+--- !u!224 &9032115901201371409 stripped
 RectTransform:
-  m_CorrespondingSourceObject: {fileID: 8686753824114698698, guid: c46025a62fbc9174081b30306f693eb3, type: 3}
-  m_PrefabInstance: {fileID: 2546724627071228732}
+  m_CorrespondingSourceObject: {fileID: 1435332481416965747, guid: 863e1ebc08b38c349a82f38db225ed29, type: 3}
+  m_PrefabInstance: {fileID: 7976955516602810210}
   m_PrefabAsset: {fileID: 0}

+ 279 - 0
SFGgouhuo/Assets/Editor/SetBone.cs

@@ -0,0 +1,279 @@
+using System.Collections.Generic;
+using UnityEditor;
+using UnityEngine;
+
+
+
+     
+
+
+public class SetBone : EditorWindow
+{
+
+
+
+
+    [MenuItem("Tools/ZX/打开服装绑定骨骼面板")]
+    public static void ShowWindow()
+    {
+        GetWindow<SetBone>("My Editor Window");
+    }
+
+    private GameObject Aim;
+
+    private List<Transform> _gameObjects = new List<Transform>();
+
+    private void OnGUI()
+    {
+        GUILayout.Label("Select a GameObject", EditorStyles.boldLabel);
+        Aim = EditorGUILayout.ObjectField("骨骼", Aim, typeof(GameObject), true) as GameObject;
+
+        EditorGUILayout.Space(10);
+        // 显示添加按钮
+        if (GUILayout.Button("选中需要执行的装备点击添加(不包含子物体)"))
+        {
+            // 获取选中的游戏对象
+            Transform[] selectedGameObjects = Selection.transforms;
+
+            // 将选中的游戏对象添加到列表中
+            foreach (Transform gameObject in selectedGameObjects)
+            {
+                if (!_gameObjects.Contains(gameObject))
+                {
+                    _gameObjects.Add(gameObject);
+                }
+            }
+        }
+
+        // 显示游戏对象列表
+        GUILayout.Label("待绑定");
+        foreach (Transform gameObject in _gameObjects)
+        {
+            EditorGUILayout.ObjectField(gameObject, typeof(GameObject), true);
+        }
+
+        // 显示清空按钮
+        if (GUILayout.Button("Clear List"))
+        {
+            _gameObjects.Clear();
+        }
+
+        EditorGUILayout.Space(50);
+
+        // 显示清空按钮
+        if (GUILayout.Button("数据绑定"))
+        {
+            SetBoneByData(_gameObjects.ToArray(), Aim.transform);
+        }
+        // 显示清空按钮
+        if (GUILayout.Button("恢复数据"))
+        {
+            FindBoneByData(_gameObjects.ToArray(), Aim.transform);
+        }
+
+    }
+
+    public static void SetBoneByData(Transform[] cloth, Transform boneRoot)
+    {
+        Transform[] trans = cloth;
+        Transform[] transList = boneRoot.GetComponentsInChildren<Transform>();
+        List<Transform> tranBone = new List<Transform>();
+        List<string> boneName = new List<string>();
+        for (int i = 0; i < trans.Length; i++)
+        {
+            boneName = new List<string>();
+            if (trans[i].GetComponent<SkinnedMeshRenderer>() != null)
+            {
+                tranBone = new List<Transform>();
+                for (int j = 0; j < trans[i].GetComponent<SkinnedMeshRenderer>().bones.Length; j++)
+                {
+                    for (int k = 0; k < transList.Length; k++)
+                    {
+                        if (trans[i].gameObject.GetComponent<SkinnedMeshRenderer>().bones[j] == null)
+                        {
+                            Debug.Log("原始骨骼丢失");
+                        }
+                        if (trans[i].gameObject.GetComponent<SkinnedMeshRenderer>().bones[j].name == transList[k].name)
+                        {
+                            tranBone.Add(transList[k]);
+                            boneName.Add(transList[k].name);
+                        }
+                    }
+                }
+                trans[i].GetComponent<SkinnedMeshRenderer>().bones = tranBone.ToArray();
+                if (trans[i].gameObject.GetComponent<BonesName>() == null)
+                    trans[i].gameObject.AddComponent<BonesName>();
+                trans[i].gameObject.GetComponent<BonesName>().bones = boneName;
+                trans[i].gameObject.GetComponent<BonesName>().rootBones =
+                    trans[i].GetComponent<SkinnedMeshRenderer>().rootBone.name;
+            }
+        }
+    }
+
+    public static void FindBoneByData(Transform[] cloth, Transform boneRoot)
+    {
+        Transform[] trans = cloth;
+        Transform[] transList = boneRoot.GetComponentsInChildren<Transform>();
+        for (int i = 0; i < trans.Length; i++)
+        {
+            List<Transform> bones = new List<Transform>();
+            var skmr = trans[i].GetComponent<SkinnedMeshRenderer>();
+
+            if (skmr != null)
+            {
+                List<string> names = trans[i].GetComponent<BonesName>().bones;
+
+                for (int j = 0; j < names.Count; j++)
+                {
+                    for (int k = 0; k < transList.Length; k++)
+                    {
+                        if (names[j] == transList[k].name)
+                        {
+                            bones.Add(transList[k]);
+                            // Debug.Log(names[j]);
+                        }
+
+                        if (skmr.rootBone == null && trans[i].GetComponent<BonesName>().rootBones == transList[k].name)
+                        {
+                            skmr.rootBone = transList[k];
+                        }
+                    }
+                }
+                skmr.bones = bones.ToArray();
+            }
+        }
+    }
+
+
+
+
+    //[MenuItem("Tools/ZX/重新绑定骨骼")]
+    public static void Bone()
+    {
+        Transform[] trans = Selection.transforms;
+        Transform[] transList = GameObject.Find("player").transform.GetComponentsInChildren<Transform>();
+        List<Transform> tranBone = new List<Transform>();
+        List<string> boneName = new List<string>();
+        for (int i = 0; i < trans.Length; i++)
+        {
+            boneName = new List<string>();
+            if (trans[i].GetComponent<SkinnedMeshRenderer>() != null)
+            {
+                tranBone = new List<Transform>();
+                for (int j = 0; j < trans[i].GetComponent<SkinnedMeshRenderer>().bones.Length; j++)
+                {
+                    for (int k = 0; k < transList.Length; k++)
+                    {
+                        if (trans[i].GetComponent<SkinnedMeshRenderer>().bones[j].name == transList[k].name)
+                        {
+                            tranBone.Add(transList[k]);
+                            boneName.Add(transList[k].name);
+                        }
+                    }
+                }
+
+                trans[i].GetComponent<SkinnedMeshRenderer>().bones = tranBone.ToArray();
+                if (trans[i].gameObject.GetComponent<BonesName>() == null)
+                    trans[i].gameObject.AddComponent<BonesName>();
+                trans[i].gameObject.GetComponent<BonesName>().bones = boneName;
+                trans[i].gameObject.GetComponent<BonesName>().rootBones =
+                    trans[i].GetComponent<SkinnedMeshRenderer>().rootBone.name;
+            }
+        }
+    }
+
+    //[MenuItem("Tools/ZX/重新查找骨骼")]
+    public static void FindBone()
+    {
+        Transform[] trans = Selection.transforms;
+        Transform[] transList = GameObject.Find("Player").transform.GetComponentsInChildren<Transform>();
+        for (int i = 0; i < trans.Length; i++)
+        {
+            List<Transform> bones = new List<Transform>();
+            var skmr = trans[i].GetComponent<SkinnedMeshRenderer>();
+
+            if (skmr != null)
+            {
+                List<string> names = trans[i].GetComponent<BonesName>().bones;
+
+                for (int j = 0; j < names.Count; j++)
+                {
+                    for (int k = 0; k < transList.Length; k++)
+                    {
+                        if (names[j] == transList[k].name)
+                        {
+                            bones.Add(transList[k]);
+                            // Debug.Log(names[j]);
+                        }
+
+                        if (skmr.rootBone == null && trans[i].GetComponent<BonesName>().rootBones == transList[k].name)
+                        {
+                            skmr.rootBone = transList[k];
+                        }
+                    }
+                }
+                skmr.bones = bones.ToArray();
+            }
+        }
+    }
+
+
+    [MenuItem("Tools/RP/删除下划线")]
+
+    public static void RemoveUnderLineMenu()
+    {
+        RemoveUnderLine(Selection.transforms);
+    }
+
+    public static void RemoveUnderLine(Transform[] sele = null)
+    {
+
+        foreach (var item in sele)
+        {
+            item.gameObject.name = item.gameObject.name.Replace("_", " ");
+            foreach (Transform item2 in item)
+            {
+                RemoveUnderLine(new Transform[] { item2 });
+            }
+
+        }
+    }
+    [MenuItem("Tools/ZX/Remove Missing Scripts")]
+    private static void RemoveMissingScriptsFromAll()
+    {
+        int count = 0;
+        string[] guids = AssetDatabase.FindAssets("t:Prefab t:Scene"); // 查找所有的Prefab和Scene文件
+        foreach (string guid in guids)
+        {
+            string path = AssetDatabase.GUIDToAssetPath(guid);
+            GameObject go = AssetDatabase.LoadAssetAtPath(path, typeof(GameObject)) as GameObject;
+            if (go != null)
+            {
+                count += GameObjectUtility.RemoveMonoBehavioursWithMissingScript(go);
+            }
+        }
+
+        Debug.Log("Removed " + count + " missing scripts.");
+    }
+    [MenuItem("Tools/ZX/模型居中")]
+    private static void ChangeName()
+    {
+        var trans = Selection.transforms;
+        for (int i = 0; i < trans.Length; i++)
+        {
+            SkinnedMeshRenderer skinnedMesh = trans[i].GetComponentInChildren<SkinnedMeshRenderer>();
+            Bounds bounds = skinnedMesh.bounds;
+            Vector3 modelCenter = bounds.center;
+            trans[i].GetChild(1).position -= modelCenter;
+        }
+    }
+    [MenuItem("Tools/ZX/命名")]
+    private static void ChangeNameIndex()
+    {
+        var trans = Selection.transforms;
+        for (int i = 0; i < trans.Length; i++)
+        {
+            trans[i].name = "零件" + i;
+        }
+    }
+}

+ 11 - 0
SFGgouhuo/Assets/Editor/SetBone.cs.meta

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

BIN
SFGgouhuo/Assets/GameResources/d3Assets/cloth/texture/100216_BaseMap.png


+ 133 - 0
SFGgouhuo/Assets/GameResources/d3Assets/cloth/texture/100216_BaseMap.png.meta

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

BIN
SFGgouhuo/Assets/GameResources/d3Assets/cloth/texture/100216_MaskMap.png


+ 133 - 0
SFGgouhuo/Assets/GameResources/d3Assets/cloth/texture/100216_MaskMap.png.meta

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

BIN
SFGgouhuo/Assets/GameResources/d3Assets/cloth/texture/100216_Normal.png


+ 133 - 0
SFGgouhuo/Assets/GameResources/d3Assets/cloth/texture/100216_Normal.png.meta

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

+ 34 - 39
SFGgouhuo/Assets/MyShaderVariants.json

@@ -1,6 +1,6 @@
 {
     "ShaderTotalCount": 33,
-    "VariantTotalCount": 96,
+    "VariantTotalCount": 99,
     "ShaderVariantInfos": [
         {
             "AssetPath": "Resources/unity_builtin_extra",
@@ -173,30 +173,19 @@
         {
             "AssetPath": "Packages/com.unity.render-pipelines.universal/Shaders/Utils/Blit.shader",
             "ShaderName": "Hidden/Universal Render Pipeline/Blit",
-            "ShaderVariantCount": 3,
+            "ShaderVariantCount": 2,
             "ShaderVariantElements": [
                 {
                     "PassType": 0,
                     "Keywords": [
-                        "BILLBOARD_FACE_CAMERA_POS",
-                        "_DEPTH_NO_MSAA"
-                    ]
-                },
-                {
-                    "PassType": 0,
-                    "Keywords": [
-                        "BILLBOARD_FACE_CAMERA_POS",
-                        "_DEPTH_NO_MSAA",
-                        "_SHADOWS_SOFT"
+                        ""
                     ]
                 },
                 {
                     "PassType": 0,
                     "Keywords": [
                         "BILLBOARD_FACE_CAMERA_POS",
-                        "_DEPTH_NO_MSAA",
-                        "_MAIN_LIGHT_SHADOWS",
-                        "_SHADOWS_SOFT"
+                        "_DEPTH_NO_MSAA"
                     ]
                 }
             ]
@@ -286,9 +275,6 @@
                 {
                     "PassType": 13,
                     "Keywords": [
-                        "BILLBOARD_FACE_CAMERA_POS",
-                        "LIGHTPROBE_SH",
-                        "_DEPTH_NO_MSAA",
                         "_MAIN_LIGHT_SHADOWS",
                         "_SHADOWS_SOFT"
                     ]
@@ -303,9 +289,6 @@
                 {
                     "PassType": 13,
                     "Keywords": [
-                        "BILLBOARD_FACE_CAMERA_POS",
-                        "LIGHTPROBE_SH",
-                        "_DEPTH_NO_MSAA",
                         "_MAIN_LIGHT_SHADOWS",
                         "_NORMALMAP",
                         "_SHADOWS_SOFT"
@@ -414,9 +397,6 @@
                 {
                     "PassType": 13,
                     "Keywords": [
-                        "BILLBOARD_FACE_CAMERA_POS",
-                        "LIGHTPROBE_SH",
-                        "_DEPTH_NO_MSAA",
                         "_MAIN_LIGHT_SHADOWS",
                         "_METALLICSPECGLOSSMAP",
                         "_NORMALMAP",
@@ -436,9 +416,6 @@
                 {
                     "PassType": 13,
                     "Keywords": [
-                        "BILLBOARD_FACE_CAMERA_POS",
-                        "LIGHTPROBE_SH",
-                        "_DEPTH_NO_MSAA",
                         "_EMISSION",
                         "_MAIN_LIGHT_SHADOWS",
                         "_METALLICSPECGLOSSMAP",
@@ -647,12 +624,14 @@
                 {
                     "PassType": 13,
                     "Keywords": [
-                        ""
+                        "_SHADOWS_SOFT"
                     ]
                 },
                 {
                     "PassType": 13,
                     "Keywords": [
+                        "BILLBOARD_FACE_CAMERA_POS",
+                        "_DEPTH_NO_MSAA",
                         "_SHADOWS_SOFT"
                     ]
                 },
@@ -670,7 +649,7 @@
         {
             "AssetPath": "Assets/GameResources/Street/Models/Hand/Line/LineLight.shader",
             "ShaderName": "Custom/LineLight",
-            "ShaderVariantCount": 3,
+            "ShaderVariantCount": 5,
             "ShaderVariantElements": [
                 {
                     "PassType": 8,
@@ -681,17 +660,24 @@
                 {
                     "PassType": 13,
                     "Keywords": [
-                        "BILLBOARD_FACE_CAMERA_POS",
-                        "_DEPTH_NO_MSAA",
+                        ""
+                    ]
+                },
+                {
+                    "PassType": 13,
+                    "Keywords": [
+                        "_MAIN_LIGHT_SHADOWS"
+                    ]
+                },
+                {
+                    "PassType": 13,
+                    "Keywords": [
                         "_SHADOWS_SOFT"
                     ]
                 },
                 {
                     "PassType": 13,
                     "Keywords": [
-                        "BILLBOARD_FACE_CAMERA_POS",
-                        "LIGHTPROBE_SH",
-                        "_DEPTH_NO_MSAA",
                         "_MAIN_LIGHT_SHADOWS",
                         "_SHADOWS_SOFT"
                     ]
@@ -760,7 +746,7 @@
         {
             "AssetPath": "Assets/GameResources/Street/Temp/street/主建筑/handside/Magnetism/Crystal/Crystal.shader",
             "ShaderName": "Custom/Crystal",
-            "ShaderVariantCount": 2,
+            "ShaderVariantCount": 3,
             "ShaderVariantElements": [
                 {
                     "PassType": 8,
@@ -768,6 +754,12 @@
                         ""
                     ]
                 },
+                {
+                    "PassType": 13,
+                    "Keywords": [
+                        "_SHADOWS_SOFT"
+                    ]
+                },
                 {
                     "PassType": 13,
                     "Keywords": [
@@ -781,7 +773,7 @@
         {
             "AssetPath": "Assets/GameResources/Street/Models/Hand/Line/TreeLight.shader",
             "ShaderName": "Custom/TreeLight",
-            "ShaderVariantCount": 3,
+            "ShaderVariantCount": 4,
             "ShaderVariantElements": [
                 {
                     "PassType": 8,
@@ -799,9 +791,12 @@
                 {
                     "PassType": 13,
                     "Keywords": [
-                        "BILLBOARD_FACE_CAMERA_POS",
-                        "LIGHTPROBE_SH",
-                        "_DEPTH_NO_MSAA",
+                        "_MAIN_LIGHT_SHADOWS"
+                    ]
+                },
+                {
+                    "PassType": 13,
+                    "Keywords": [
                         "_MAIN_LIGHT_SHADOWS",
                         "_SHADOWS_SOFT"
                     ]

+ 19 - 19
SFGgouhuo/Assets/MyShaderVariants.shadervariants

@@ -72,11 +72,9 @@ ShaderVariantCollection:
   - first: {fileID: 4800000, guid: c17132b1f77d20942aa75f8429c0f8bc, type: 3}
     second:
       variants:
-      - keywords: BILLBOARD_FACE_CAMERA_POS _DEPTH_NO_MSAA
-        passType: 0
-      - keywords: BILLBOARD_FACE_CAMERA_POS _DEPTH_NO_MSAA _SHADOWS_SOFT
+      - keywords: 
         passType: 0
-      - keywords: BILLBOARD_FACE_CAMERA_POS _DEPTH_NO_MSAA _MAIN_LIGHT_SHADOWS _SHADOWS_SOFT
+      - keywords: BILLBOARD_FACE_CAMERA_POS _DEPTH_NO_MSAA
         passType: 0
   - first: {fileID: 4800000, guid: 933532a4fcc9baf4fa0491de14d08ed7, type: 3}
     second:
@@ -103,13 +101,11 @@ ShaderVariantCollection:
         passType: 13
       - keywords: _SHADOWS_SOFT
         passType: 13
-      - keywords: BILLBOARD_FACE_CAMERA_POS LIGHTPROBE_SH _DEPTH_NO_MSAA _MAIN_LIGHT_SHADOWS
-          _SHADOWS_SOFT
+      - keywords: _MAIN_LIGHT_SHADOWS _SHADOWS_SOFT
         passType: 13
       - keywords: _MAIN_LIGHT_SHADOWS _NORMALMAP
         passType: 13
-      - keywords: BILLBOARD_FACE_CAMERA_POS LIGHTPROBE_SH _DEPTH_NO_MSAA _MAIN_LIGHT_SHADOWS
-          _NORMALMAP _SHADOWS_SOFT
+      - keywords: _MAIN_LIGHT_SHADOWS _NORMALMAP _SHADOWS_SOFT
         passType: 13
       - keywords: _MAIN_LIGHT_SHADOWS _PARALLAXMAP
         passType: 13
@@ -137,14 +133,12 @@ ShaderVariantCollection:
         passType: 13
       - keywords: _EMISSION _MAIN_LIGHT_SHADOWS _RECEIVE_SHADOWS_OFF _SHADOWS_SOFT
         passType: 13
-      - keywords: BILLBOARD_FACE_CAMERA_POS LIGHTPROBE_SH _DEPTH_NO_MSAA _MAIN_LIGHT_SHADOWS
-          _METALLICSPECGLOSSMAP _NORMALMAP _SHADOWS_SOFT
+      - keywords: _MAIN_LIGHT_SHADOWS _METALLICSPECGLOSSMAP _NORMALMAP _SHADOWS_SOFT
         passType: 13
       - keywords: _ALPHATEST_ON _MAIN_LIGHT_SHADOWS _METALLICSPECGLOSSMAP _NORMALMAP
           _SHADOWS_SOFT
         passType: 13
-      - keywords: BILLBOARD_FACE_CAMERA_POS LIGHTPROBE_SH _DEPTH_NO_MSAA _EMISSION
-          _MAIN_LIGHT_SHADOWS _METALLICSPECGLOSSMAP _SHADOWS_SOFT
+      - keywords: _EMISSION _MAIN_LIGHT_SHADOWS _METALLICSPECGLOSSMAP _SHADOWS_SOFT
         passType: 13
       - keywords: _EMISSION _MAIN_LIGHT_SHADOWS _METALLICSPECGLOSSMAP _NORMALMAP
           _SHADOWS_SOFT
@@ -208,10 +202,10 @@ ShaderVariantCollection:
         passType: 8
       - keywords: BILLBOARD_FACE_CAMERA_POS _DEPTH_NO_MSAA _SHOWTHUNDER_ON
         passType: 8
-      - keywords: 
-        passType: 13
       - keywords: _SHADOWS_SOFT
         passType: 13
+      - keywords: BILLBOARD_FACE_CAMERA_POS _DEPTH_NO_MSAA _SHADOWS_SOFT
+        passType: 13
       - keywords: BILLBOARD_FACE_CAMERA_POS _DEPTH_NO_MSAA _SHADOWS_SOFT _SHOWTHUNDER_ON
         passType: 13
   - first: {fileID: 4800000, guid: 52a3866ead6b0474dafa217a7fc53e19, type: 3}
@@ -219,10 +213,13 @@ ShaderVariantCollection:
       variants:
       - keywords: 
         passType: 8
-      - keywords: BILLBOARD_FACE_CAMERA_POS _DEPTH_NO_MSAA _SHADOWS_SOFT
+      - keywords: 
         passType: 13
-      - keywords: BILLBOARD_FACE_CAMERA_POS LIGHTPROBE_SH _DEPTH_NO_MSAA _MAIN_LIGHT_SHADOWS
-          _SHADOWS_SOFT
+      - keywords: _MAIN_LIGHT_SHADOWS
+        passType: 13
+      - keywords: _SHADOWS_SOFT
+        passType: 13
+      - keywords: _MAIN_LIGHT_SHADOWS _SHADOWS_SOFT
         passType: 13
   - first: {fileID: 4800000, guid: 82881a2d011b0964696411c822cdd00b, type: 3}
     second:
@@ -249,6 +246,8 @@ ShaderVariantCollection:
       variants:
       - keywords: 
         passType: 8
+      - keywords: _SHADOWS_SOFT
+        passType: 13
       - keywords: BILLBOARD_FACE_CAMERA_POS _DEPTH_NO_MSAA _SHADOWS_SOFT
         passType: 13
   - first: {fileID: 4800000, guid: 87be84199b4f4704cb2acaa3db2e6960, type: 3}
@@ -258,8 +257,9 @@ ShaderVariantCollection:
         passType: 8
       - keywords: BILLBOARD_FACE_CAMERA_POS _DEPTH_NO_MSAA
         passType: 8
-      - keywords: BILLBOARD_FACE_CAMERA_POS LIGHTPROBE_SH _DEPTH_NO_MSAA _MAIN_LIGHT_SHADOWS
-          _SHADOWS_SOFT
+      - keywords: _MAIN_LIGHT_SHADOWS
+        passType: 13
+      - keywords: _MAIN_LIGHT_SHADOWS _SHADOWS_SOFT
         passType: 13
   - first: {fileID: 4800000, guid: 1aef06fde7c7fcc4fa2e7f69d4acb9cc, type: 3}
     second:

+ 74 - 74
SFGgouhuo/Assets/Scripts/Manager/StepManager.cs

@@ -1,83 +1,83 @@
-
-using System.Collections;
-using System.Collections.Generic;
-using UnityEditor;
-using UnityEngine;
-
-public class StepManager : MonoBehaviour
-{
-    public static StepManager Instance { get; private set; }
-    /// <summary> 用户ID </summary>
+
+using System.Collections;
+using System.Collections.Generic;
+using UnityEditor;
+using UnityEngine;
+
+public class StepManager : MonoBehaviour
+{
+    public static StepManager Instance { get; private set; }
+    /// <summary> 用户ID </summary>
     public static string userID;
-    /// <summary> 时间戳 </summary>
-    public static string timeStamp;
-    /// <summary> 是否开始初始化步骤 </summary>
-    public static bool isInit = true;
-    /// <summary> 是否在捏脸换装界面 </summary>
-    public static bool isFaceBuidling = false;
-    /// <summary> 背包穿戴人物模型 </summary>
-    public static GameObject player_dress;
-    /// <summary> 漫游场景移动人物模型 </summary>
-    public static GameObject player;
-    /// <summary> 捏脸换装灯光 </summary>
-    public static Light faceBuildLight;
-    /// <summary> 穿戴人物初始旋转 </summary>
-    public static Quaternion initRot;
-    /// <summary> 请求状态枚举 </summary>
+    /// <summary> 时间戳 </summary>
+    public static string timeStamp;
+    /// <summary> 是否开始初始化步骤 </summary>
+    public static bool isInit = true;
+    /// <summary> 是否在捏脸换装界面 </summary>
+    public static bool isFaceBuidling = false;
+    /// <summary> 背包穿戴人物模型 </summary>
+    public static GameObject player_dress;
+    /// <summary> 漫游场景移动人物模型 </summary>
+    public static GameObject player;
+    /// <summary> 捏脸换装灯光 </summary>
+    public static Light faceBuildLight;
+    /// <summary> 穿戴人物初始旋转 </summary>
+    public static Quaternion initRot;
+    /// <summary> 请求状态枚举 </summary>
     public enum RequestState
     {
         Success,
         HashFaild,
         MacFaild,
         URLFaild
-    }
-    /// <summary> 当前请求状态 </summary>
-    public static RequestState requestState=RequestState.URLFaild;
-
-    private async void Start()
-    {
+    }
+    /// <summary> 当前请求状态 </summary>
+    public static RequestState requestState=RequestState.URLFaild;
+
+    private async void Start()
+    {
         Instance = this;
         //await UIManager.Instance.ShowUI(WindowID.FaceBuildPanel);
-        await UIManager.Instance.ShowUI(WindowID.DlgLogin);
-        var characterRender = await YooAssetManager.Instance.LoadAsset<GameObject>("player_dress");
-        player_dress = Instantiate(characterRender);
-        player_dress.transform.position = new Vector3(7.3f, 1000.29f, 109.78f);
-        initRot = player_dress.transform.rotation;
-        CharacterManager.Inst.MatchCharacterRender(player_dress.GetComponent<CharacterRender>());
-        faceBuildLight = GameObject.Find("FaceBuild Light").GetComponent<Light>();
-        //Debug.Log(faceBuildLight);
-    }
-
-    public async void Init()
-    {
-        RenderSettings.skybox = await YooAssetManager.Instance.LoadAsset<Material>("Skybox Cubemap Extended Mat");
-        var characterRender = await YooAssetManager.Instance.LoadAsset<GameObject>("player1");
-        player = Instantiate(characterRender);
-        player.transform.position = new Vector3(24.162f, 3f, 75.317f);
-        player.transform.GetChild(0).GetComponent<MoveController>().camRoot = GameObject.Find("CamRoot").transform;
-        CharacterDataReMatch();
-    }
-
-    private async void Update()
-    {
-        //if (Input.GetKeyDown(KeyCode.Q))
-        //{
-        //    await UIManager.Instance.ShowUI(WindowID.FaceBuildPanel);
-        //    CharacterManager.UICam.gameObject.SetActive(true);
-        //}
-    }
-
-    /// <summary>
-    /// 重新赋值当前角色的捏脸和装扮数据/重置角色旋转
-    /// </summary>
-    public void CharacterDataReMatch()
-    {
-        if (player) 
-        {
-            player_dress.transform.rotation= initRot;
-            CharacterManager.Inst.CharacterClothReMatch(player.transform.GetChild(0).GetComponent<CharacterRender>());
-        }
-    }
-
-
-}
+        await UIManager.Instance.ShowUI(WindowID.DlgLogin);
+        var characterRender = await YooAssetManager.Instance.LoadAsset<GameObject>("player_dress");
+        player_dress = Instantiate(characterRender);
+        player_dress.transform.position = new Vector3(7.3f, 1000.29f, 109.78f);
+        initRot = player_dress.transform.rotation;
+        CharacterManager.Inst.MatchCharacterRender(player_dress.GetComponent<CharacterRender>());
+        faceBuildLight = GameObject.Find("FaceBuild Light").GetComponent<Light>();
+        //Debug.Log(faceBuildLight);
+    }
+
+    public async void Init()
+    {
+        RenderSettings.skybox = await YooAssetManager.Instance.LoadAsset<Material>("Skybox Cubemap Extended Mat");
+        var characterRender = await YooAssetManager.Instance.LoadAsset<GameObject>("player1");
+        player = Instantiate(characterRender);
+        player.transform.position = new Vector3(24.162f, 3f, 75.317f);
+        player.transform.GetChild(0).GetComponent<MoveController>().camRoot = GameObject.Find("CamRoot").transform;
+        CharacterDataReMatch();
+    }
+
+    private async void Update()
+    {
+        //if (Input.GetKeyDown(KeyCode.Q))
+        //{
+        //    await UIManager.Instance.ShowUI(WindowID.FaceBuildPanel);
+        //    CharacterManager.UICam.gameObject.SetActive(true);
+        //}
+    }
+
+    /// <summary>
+    /// 重新赋值当前角色的捏脸和装扮数据/重置角色旋转
+    /// </summary>
+    public void CharacterDataReMatch()
+    {
+        if (player) 
+        {
+            player_dress.transform.rotation= initRot;
+            CharacterManager.Inst.CharacterClothReMatch(player.transform.GetChild(0).GetComponent<CharacterRender>());
+        }
+    }
+
+
+}

+ 2 - 2
SFGgouhuo/Assets/Scripts/MoveController.cs

@@ -65,7 +65,7 @@ public class MoveController : MonoBehaviour
     /// </summary>
     void CharacterMovement()
     {
-        Debug.Log(state+"  /  "+playerInput.JumpInput);
+        //Debug.Log(state+"  /  "+playerInput.JumpInput);
         if (hasLand)
         {
             jumpTime += Time.deltaTime;
@@ -335,7 +335,7 @@ public class MoveController : MonoBehaviour
         var cos = Physics.Raycast(ray, out hit, oriDistance, ~(1 << 6 | 1 << 18));
         if (cos)
         {
-            Debug.Log(hit.collider.name);
+            //Debug.Log(hit.collider.name);
             m_camera.position = Vector3.Lerp(m_camera.position, hit.point, 0.5f);
         }
         else

+ 3 - 1
SFGgouhuo/Assets/Scripts/TimeCounting.cs

@@ -26,6 +26,7 @@ public class TimeCounting : MonoBehaviour
         //sum = finishTime - nowTime;
         Debug.Log(StepManager.timeStamp);
         finishTime = long.Parse(StepManager.timeStamp);
+        //finishTime = 1709168400;
         nowTime = DateTimeOffset.UtcNow.ToUnixTimeSeconds();
         sum = finishTime - nowTime;
     }
@@ -58,7 +59,8 @@ public class TimeCounting : MonoBehaviour
         }
         DateTime dateTime = DateTimeOffset.FromUnixTimeSeconds((long)sum).DateTime;
         int day = dateTime.Day;
-        hours = dateTime.Hour + (day - 1) * 24;
+        int month = dateTime.Month;
+        hours = dateTime.Hour + (day - 1) * 24 + (month-1)* 30 * 24;
         minutes = dateTime.Minute;
         seconds = dateTime.Second;
         //Debug.Log(day+" //"+hours + "/" + minutes + "/" + seconds);

+ 15 - 0
SFGgouhuo/Assets/Scripts/UI/FaceBuild/CharacterRender.cs

@@ -22,6 +22,9 @@ public class CharacterRender : MonoBehaviour
 
     private List<int> shoesShow;
 
+    private GameObject defaultTop;
+    private GameObject defaultBottom;
+
     private void Awake()
     {
         eyes001 = transform.Find("eyes001").GetComponent<Renderer>().material;
@@ -34,6 +37,8 @@ public class CharacterRender : MonoBehaviour
         {
             m_bsNameAll[j] = faceSkinnedMeshRenderer.sharedMesh.GetBlendShapeName(j);
         }
+        defaultTop = transform.Find("default_Top").gameObject;
+        defaultBottom = transform.Find("default_Bottom").gameObject;
     }
 
 
@@ -109,6 +114,8 @@ public class CharacterRender : MonoBehaviour
             if (type == 17)
             {
                 isShowFoot = false;
+                defaultTop.SetActive(false);
+                defaultBottom.SetActive(false);
             }
             if(type == 12)
             {
@@ -120,6 +127,14 @@ public class CharacterRender : MonoBehaviour
                     }
                 }
             }
+            if (type == 10)
+            {
+                defaultTop.SetActive(false);
+            }
+            if (type == 11)
+            {
+                defaultBottom.SetActive(false);
+            }
         }
         if (isShowFoot)
         {

+ 523 - 517
SFGgouhuo/Assets/Scripts/UI/FaceBuild/FaceBuildSystem.cs

@@ -1,421 +1,427 @@
-using LitJson;
-using System.Collections;
-using System.Collections.Generic;
-using System.Linq;
-using TMPro;
-using UnityEditor;
-using UnityEngine;
-using UnityEngine.U2D;
-using UnityEngine.UI;
-using YooAsset;
-using static UnityEngine.EventSystems.EventTrigger;
-
-public class FaceBuildSystem : MonoBehaviour
-{
-    private ReferenceCollector re;
-    private Button EFinish;
-    private RectTransform EModel;
-    private RectTransform EGShowClothName;
-    private RectTransform ESNickName;
-    private GameObject EColorText;
-    private ScrollRect EColor;
-    private ScrollRect EG_TypeFilter;
-    private ScrollRect EBagContent;
-    private Toggle Edress;
-    private Toggle Ebody;
-    private GameObject EItem_TypeFilter;
-    private RectTransform EGTypeContent;
-    private RectTransform EGColorItem;
-    private RectTransform EGColorFilter;
-    private TextMeshProUGUI EClothName;
-
-
-    private SpriteAtlas ColorStyle;
-    private SpriteAtlas ItemIcon;
-
-
-    /// <summary>所有的物品</summary>
-    public Dictionary<int, ItemPackage_View> itemPackage = new Dictionary<int, ItemPackage_View>();
-    /// <summary>所有的物品信息</summary>
-     public Dictionary<int, Good> standardPackageItems  =new Dictionary<int, Good>();
-
-    /// <summary>物品种类</summary>
-    public Dictionary<int, List<GameObject>> TypeItemClassGroup = new Dictionary<int, List<GameObject>>();
-    /// <summary>空格子</summary>
-    public List<GameObject> Cells = new List<GameObject>();
-    /// <summary>取消穿戴的装备</summary>
-    public List<int> Unworn = new List<int>();
-
-    public List<string> ColorList = new List<string>();
-    public List<GameObject> ColorObjList = new List<GameObject>();
-    public int ColorType;
-    public int BodyType;
-    public int ClothType;
-    public Dictionary<int, List<Good>> ItemTypeData = new Dictionary<int, List<Good>>();
-    public List<Good> ImageGoods = new List<Good>();
-    public Dictionary<int, GameObject> ClassType = new Dictionary<int, GameObject>();
-
-    private GameObject itempackage;
-    private async void Start()
-    {
-        re = GetComponent<ReferenceCollector>();
-        EFinish = re.Get<GameObject>("EFinish").GetComponent<Button>();
-        EModel = re.Get<GameObject>("EModel").GetComponent<RectTransform>();
-        EGShowClothName = re.Get<GameObject>("EGShowClothName").GetComponent<RectTransform>();
-        ESNickName = re.Get<GameObject>("ESNickName").GetComponent<RectTransform>();
-        EColorText = re.Get<GameObject>("EColorText");
-        EColor = re.Get<GameObject>("EColor").GetComponent<ScrollRect>();
-        EG_TypeFilter = re.Get<GameObject>("EG_TypeFilter").GetComponent<ScrollRect>();
-        EBagContent = re.Get<GameObject>("EBagContent").GetComponent<ScrollRect>();
-        Edress = re.Get<GameObject>("Edress").GetComponent<Toggle>();
-        Ebody = re.Get<GameObject>("Ebody").GetComponent<Toggle>();
-        EItem_TypeFilter = re.Get<GameObject>("EItem_TypeFilter");
-        EGTypeContent = re.Get<GameObject>("EGTypeContent").GetComponent<RectTransform>();
-        EGColorItem = re.Get<GameObject>("EGColorItem").GetComponent<RectTransform>();
-        EGColorFilter = re.Get<GameObject>("EGColorFilter").GetComponent<RectTransform>();
-        EClothName = re.Get<GameObject>("EClothName").GetComponent<TextMeshProUGUI>();
-        EModel.GetComponent<RawImage>().texture = GameObject.Find("UICamera").GetComponent<Camera>().targetTexture;
-
-
-        ColorStyle =await YooAssetManager.Instance.LoadAsset<SpriteAtlas>("colorItems");
-        ItemIcon = await YooAssetManager.Instance.LoadAsset<SpriteAtlas>("ItemIcon");
-        itempackage = await YooAssetManager.Instance.LoadAsset<GameObject>("Item_Package");
-
-
-     
-        List<Good> goods = JsonMapper.ToObject<List<Good>>(Resources.Load<TextAsset>("goodsData").text);
-        for (int i = 0; i < goods.Count; i++)
-        {
-            goods[i].assetsType = goods[i].dressType;
-            goods[i].dressType = (goods[i].id / 10000).ToString();
-        }
-
-
-
-
-        for (int i = 0; i < goods.Count; i++)
-        {
-            //if (goods[i].type == 1)
-            //{
-               
-            //}
-            ImageGoods.Add(goods[i]);
-        }
-        ItemTypeData = new Dictionary<int, List<Good>>();
-        for (int i = 0; i < 17; i++)
-        {
-           TypeItemClassGroup.Add(i + 1, new List<GameObject>());
-        }
-        for (int i = 0; i < ImageGoods.Count; i++)
-        {
-            int type = ImageGoods[i].id / 10000;
-            if (!ItemTypeData.ContainsKey(type))
-            {
-                ItemTypeData.Add(type, new List<Good>());
-            }
-            ItemTypeData[type].Add(ImageGoods[i]);
-            if (!TypeItemClassGroup.ContainsKey(type))
-            {
-               TypeItemClassGroup.Add(type, new List<GameObject>());
-            }
-        }
-  //foreach (var item in ItemTypeData)
-  //      {
-  //          Debug.Log(item.Key + "************" + item.Value.Count);
-  //      }
-        AddCreatCell();
-        CreatTypeItem();
-        CreatColorItem();
-        Init();
-        Ebody.isOn = true;
-       
-    }
-
-    private void Init()
-    {
-        //身体
-        Ebody.onValueChanged.AddListener((x) =>
-        {
-            foreach (var item in ClassType)
-            {
-                if (item.Key < 10)
-                {
-                    item.Value.SetActive(x);
-                }
-            }
-            if (x)
-            {
-                Ebody.transform.Find("lan_Ebody").GetComponent<TextMeshProUGUI>().color = Color.black;
-                Filter(true);
-                ClassType[1].GetComponent<Toggle>().isOn = true;
-            }
-            else
-            {
-                Ebody.transform.Find("lan_Ebody").GetComponent<TextMeshProUGUI>().color = new Color(1, 1, 1, 0.4f);
-            }
-        });
-        //服饰
-        Edress.onValueChanged.AddListener((x) =>
-        {
-            foreach (var item in ClassType)
-            {
-                if (item.Key > 9)
-                {
-                    item.Value.SetActive(x);
-                }
-            }
-            if (x)
-            {
-                Edress.transform.Find("lan_Edress").GetComponent<TextMeshProUGUI>().color = Color.black;
-                Filter(true);
-                ClassType[10].GetComponent<Toggle>().isOn = true;
-            }
-            else
-            {
-                Edress.transform.Find("lan_Edress").GetComponent<TextMeshProUGUI>().color = new Color(1, 1, 1, 0.4f);
-            }
-        });
-    }
-    private   void AddCreatCell()
-    {
-        int count = 15;
-
-        GameObject obj = itempackage;
-        for (int i = 0; i < count; i++)
-        {
-            GameObject go = GameObject.Instantiate(obj);
-            Cells.Add(go);
-            go.transform.SetParent(EBagContent.content, false);
-            go.transform.SetAsLastSibling();
-            go.GetComponent<Toggle>().enabled = false;
-            go.SetActive(false);
-            for (int j = 0; j < go.transform.childCount; j++)
-            {
-                go.transform.GetChild(j).gameObject.SetActive(false);
-            }
-        }
-    }
-    /// <summary>
-    /// 创建身体部位类别
-    /// </summary>
-    /// <param name="self"></param>
-    private  void CreatTypeItem()
-    {
-        var classdir = JsonMapper.ToObject<Dictionary<string,ItemClassConfig>>(Resources.Load<TextAsset>("ItemClass").text);
-        EItem_TypeFilter.gameObject.SetActive(false);
-        Toggle toggle = null;
-        foreach (var item in classdir)
-        {
-
-            GameObject go = GameObject.Instantiate(EItem_TypeFilter.gameObject);
-            go.SetActive(true);
-            go.GetComponent<Toggle>().group = EGTypeContent.GetComponent<ToggleGroup>();
-            go.transform.SetParent(EGTypeContent.transform);
-            go.transform.localPosition = Vector3.zero;
-            go.transform.localScale = Vector3.one;
+using LitJson;
+using System.Collections;
+using System.Collections.Generic;
+using System.Linq;
+using TMPro;
+using UnityEditor;
+using UnityEngine;
+using UnityEngine.U2D;
+using UnityEngine.UI;
+using YooAsset;
+using static UnityEngine.EventSystems.EventTrigger;
+
+public class FaceBuildSystem : MonoBehaviour
+{
+    private ReferenceCollector re;
+    private Button EFinish;
+    private RectTransform EModel;
+    private RectTransform EGShowClothName;
+    private RectTransform ESNickName;
+    private GameObject EColorText;
+    private ScrollRect EColor;
+    private ScrollRect EG_TypeFilter;
+    private ScrollRect EBagContent;
+    private Toggle Edress;
+    private Toggle Ebody;
+    private GameObject EItem_TypeFilter;
+    private RectTransform EGTypeContent;
+    private RectTransform EGColorItem;
+    private RectTransform EGColorFilter;
+    private TextMeshProUGUI EClothName;
+
+
+    private SpriteAtlas ColorStyle;
+    private SpriteAtlas ItemIcon;
+
+
+    /// <summary>所有的物品</summary>
+    public Dictionary<int, ItemPackage_View> itemPackage = new Dictionary<int, ItemPackage_View>();
+    /// <summary>所有的物品信息</summary>
+     public Dictionary<int, Good> standardPackageItems  =new Dictionary<int, Good>();
+
+    /// <summary>物品种类</summary>
+    public Dictionary<int, List<GameObject>> TypeItemClassGroup = new Dictionary<int, List<GameObject>>();
+    /// <summary>空格子</summary>
+    public List<GameObject> Cells = new List<GameObject>();
+    /// <summary>取消穿戴的装备</summary>
+    public List<int> Unworn = new List<int>();
+
+    public List<string> ColorList = new List<string>();
+    public List<GameObject> ColorObjList = new List<GameObject>();
+    public int ColorType;
+    public int BodyType;
+    public int ClothType;
+    public Dictionary<int, List<Good>> ItemTypeData = new Dictionary<int, List<Good>>();
+    public List<Good> ImageGoods = new List<Good>();
+    public Dictionary<int, GameObject> ClassType = new Dictionary<int, GameObject>();
+
+    private GameObject itempackage;
+    private async void Start()
+    {
+        re = GetComponent<ReferenceCollector>();
+        EFinish = re.Get<GameObject>("EFinish").GetComponent<Button>();
+        EModel = re.Get<GameObject>("EModel").GetComponent<RectTransform>();
+        EGShowClothName = re.Get<GameObject>("EGShowClothName").GetComponent<RectTransform>();
+        ESNickName = re.Get<GameObject>("ESNickName").GetComponent<RectTransform>();
+        EColorText = re.Get<GameObject>("EColorText");
+        EColor = re.Get<GameObject>("EColor").GetComponent<ScrollRect>();
+        EG_TypeFilter = re.Get<GameObject>("EG_TypeFilter").GetComponent<ScrollRect>();
+        EBagContent = re.Get<GameObject>("EBagContent").GetComponent<ScrollRect>();
+        Edress = re.Get<GameObject>("Edress").GetComponent<Toggle>();
+        Ebody = re.Get<GameObject>("Ebody").GetComponent<Toggle>();
+        EItem_TypeFilter = re.Get<GameObject>("EItem_TypeFilter");
+        EGTypeContent = re.Get<GameObject>("EGTypeContent").GetComponent<RectTransform>();
+        EGColorItem = re.Get<GameObject>("EGColorItem").GetComponent<RectTransform>();
+        EGColorFilter = re.Get<GameObject>("EGColorFilter").GetComponent<RectTransform>();
+        EClothName = re.Get<GameObject>("EClothName").GetComponent<TextMeshProUGUI>();
+        EModel.GetComponent<RawImage>().texture = GameObject.Find("UICamera").GetComponent<Camera>().targetTexture;
+
+
+        ColorStyle =await YooAssetManager.Instance.LoadAsset<SpriteAtlas>("colorItems");
+        ItemIcon = await YooAssetManager.Instance.LoadAsset<SpriteAtlas>("ItemIcon");
+        itempackage = await YooAssetManager.Instance.LoadAsset<GameObject>("Item_Package");
+
+
+     
+        List<Good> goods = JsonMapper.ToObject<List<Good>>(Resources.Load<TextAsset>("goodsData").text);
+        for (int i = 0; i < goods.Count; i++)
+        {
+            goods[i].assetsType = goods[i].dressType;
+            goods[i].dressType = (goods[i].id / 10000).ToString();
+        }
+
+
+
+
+        for (int i = 0; i < goods.Count; i++)
+        {
+            //if (goods[i].type == 1)
+            //{
+               
+            //}
+            ImageGoods.Add(goods[i]);
+        }
+        ItemTypeData = new Dictionary<int, List<Good>>();
+        for (int i = 0; i < 17; i++)
+        {
+           TypeItemClassGroup.Add(i + 1, new List<GameObject>());
+        }
+        for (int i = 0; i < ImageGoods.Count; i++)
+        {
+            int type = ImageGoods[i].id / 10000;
+            if (!ItemTypeData.ContainsKey(type))
+            {
+                ItemTypeData.Add(type, new List<Good>());
+            }
+            ItemTypeData[type].Add(ImageGoods[i]);
+            if (!TypeItemClassGroup.ContainsKey(type))
+            {
+               TypeItemClassGroup.Add(type, new List<GameObject>());
+            }
+        }
+  //foreach (var item in ItemTypeData)
+  //      {
+  //          Debug.Log(item.Key + "************" + item.Value.Count);
+  //      }
+        AddCreatCell();
+        CreatTypeItem();
+        CreatColorItem();
+        Init();
+        Ebody.isOn = true;
+
+        //Good config = ItemTypeData[10][6];
+        //Good config2= ItemTypeData[11][2];
+        //await CharacterManager.Inst.ChangePlayerTex(CharacterManager.Inst.selfRender, config);
+        //await CharacterManager.Inst.ChangePlayerTex(CharacterManager.Inst.selfRender, config2);
+        ShowEquipName();
+
+    }
+
+    private void Init()
+    {
+        //身体
+        Ebody.onValueChanged.AddListener((x) =>
+        {
+            foreach (var item in ClassType)
+            {
+                if (item.Key < 10)
+                {
+                    item.Value.SetActive(x);
+                }
+            }
+            if (x)
+            {
+                Ebody.transform.Find("lan_Ebody").GetComponent<TextMeshProUGUI>().color = Color.black;
+                Filter(true);
+                ClassType[1].GetComponent<Toggle>().isOn = true;
+            }
+            else
+            {
+                Ebody.transform.Find("lan_Ebody").GetComponent<TextMeshProUGUI>().color = new Color(1, 1, 1, 0.4f);
+            }
+        });
+        //服饰
+        Edress.onValueChanged.AddListener((x) =>
+        {
+            foreach (var item in ClassType)
+            {
+                if (item.Key > 9)
+                {
+                    item.Value.SetActive(x);
+                }
+            }
+            if (x)
+            {
+                Edress.transform.Find("lan_Edress").GetComponent<TextMeshProUGUI>().color = Color.black;
+                Filter(true);
+                ClassType[10].GetComponent<Toggle>().isOn = true;
+            }
+            else
+            {
+                Edress.transform.Find("lan_Edress").GetComponent<TextMeshProUGUI>().color = new Color(1, 1, 1, 0.4f);
+            }
+        });
+    }
+    private   void AddCreatCell()
+    {
+        int count = 15;
+
+        GameObject obj = itempackage;
+        for (int i = 0; i < count; i++)
+        {
+            GameObject go = GameObject.Instantiate(obj);
+            Cells.Add(go);
+            go.transform.SetParent(EBagContent.content, false);
+            go.transform.SetAsLastSibling();
+            go.GetComponent<Toggle>().enabled = false;
+            go.SetActive(false);
+            for (int j = 0; j < go.transform.childCount; j++)
+            {
+                go.transform.GetChild(j).gameObject.SetActive(false);
+            }
+        }
+    }
+    /// <summary>
+    /// 创建身体部位类别
+    /// </summary>
+    /// <param name="self"></param>
+    private  void CreatTypeItem()
+    {
+        var classdir = JsonMapper.ToObject<Dictionary<string,ItemClassConfig>>(Resources.Load<TextAsset>("ItemClass").text);
+        EItem_TypeFilter.gameObject.SetActive(false);
+        Toggle toggle = null;
+        foreach (var item in classdir)
+        {
+
+            GameObject go = GameObject.Instantiate(EItem_TypeFilter.gameObject);
+            go.SetActive(true);
+            go.GetComponent<Toggle>().group = EGTypeContent.GetComponent<ToggleGroup>();
+            go.transform.SetParent(EGTypeContent.transform);
+            go.transform.localPosition = Vector3.zero;
+            go.transform.localScale = Vector3.one;
             var text = go.transform.Find("Image/Text").GetComponent<TextMeshProUGUI>();
-            text.text = LanguageMatchManager.Instance.GetLanByKey(item.Value.Id.ToString());
+            text.text = LanguageMatchManager.Instance.GetLanByKey(item.Value.Id.ToString());
             LanguageMatchManager.Instance.changeLanguage += () =>
             {
-                text.text = LanguageMatchManager.Instance.GetLanByKey(item.Value.Id.ToString());
-            };
-            go.GetComponent<Toggle>().onValueChanged.AddListener((x) =>
-            {
-                if (x)
-                {
-                    text.color = Color.black;
-                    if (item.Value.type == 1)
-                    {
-                        ClothType = item.Value.Id;
-                    }
-                    else
-                    {
-                        BodyType = item.Value.Id;
-                    }
-                    Filter(true, item.Value.Id);
-                }
-                else
-                {
-                    text.color = new Color(1, 1, 1, 0.4f);
-
-                }
-            });
-
-            if (item.Value.Id == 1)
-            {
-                go.GetComponent<Toggle>().isOn = true;
-            }
-            ClassType.Add(item.Value.Id, go);
-        }
-    }
-    /// <summary>
-    /// 创建颜色种类
-    /// </summary>
-    /// <param name="self"></param>
-    private  void CreatColorItem()
-    {
-        for (int i = 0; i <ColorObjList.Count; i++)
-        {
-            GameObject.Destroy(ColorObjList[i]);
-        }
-        ColorObjList.Clear();
-        ColorList = ColorList.Distinct().ToList();
-        if (ColorList.Count != 0)
-        {
-            ColorType = int.Parse(ColorList[0]);
-        }
-        var colordir = JsonMapper.ToObject<Dictionary<string, ItemColorConfig>>(Resources.Load<TextAsset>("ItemColor").text);
-
-        EGColorItem.gameObject.SetActive(false);
-        foreach (var item in colordir)
-        {
-            string color =ColorList.Find(x => x == item.Value.Id.ToString());
-            if (string.IsNullOrEmpty(color)) continue;
-            GameObject go = GameObject.Instantiate(EGColorItem.gameObject);
-            go.SetActive(true);
-            go.GetComponent<Toggle>().group =EGColorFilter.GetComponent<ToggleGroup>();
-            go.transform.SetParent(EGColorFilter.transform);
-            go.transform.localPosition = Vector3.zero;
-            go.transform.localScale = Vector3.one;
-            go.transform.GetChild(0).GetComponent<Image>().sprite =ColorStyle.GetSprite(item.Value.assetsName);
-            go.GetComponent<Toggle>().onValueChanged.AddListener((x) =>
-            {
-                if (x)
-                {
-                    ColorType = item.Value.Id;
-                    Filter();
-                }
-                else
-                {
-
-                }
-            });
-           ColorObjList.Add(go);
-        }
-    }
-    private   void Filter(bool isTypeSelect = false, int type = -1)
-    {
-        int count = 0;
-        ColorList.Clear();
-        Dictionary<GameObject, Good> showObj = new Dictionary<GameObject, Good>();
-    
-        if (type != -1)
-        {
-            if (TypeItemClassGroup[type].Count == 0 &&ItemTypeData.ContainsKey(type))
-            {
-                AddUIScrollItems(itemPackage, ItemTypeData[type].Count);
-                GameObject obj = itempackage;
-                for (int i = 0; i < ItemTypeData[type].Count; i++)
-                {
-                    GameObject go = GameObject.Instantiate(obj);
-                    RefreshBagItem(go.transform, type, i);
-                    go.transform.SetParent(EBagContent.content);
-                    go.transform.localScale = Vector3.one;
-                    go.transform.localPosition = Vector3.zero;
-                    go.transform.SetAsFirstSibling();
-                    go.name = ItemTypeData[type][i].id.ToString();
-                }
-               
-            }
-        }
-        int typeUsed = 0;
-        if (Ebody.isOn)
-        {
-            typeUsed =BodyType;
-        }
-        else
-        {
-            typeUsed = ClothType;
-        }
-        Good dressItem = null;
-        foreach (var item in TypeItemClassGroup)
-        {
-            var list = item.Value;
-            for (int i = 0; i < list.Count; i++)
-            {
-                Good data = ItemTypeData[item.Key][i];
-                ColorList.Add(data.color);
-                showObj.Add(list[i], data);
-                if (item.Key == typeUsed)
-                {
-                    list[i].SetActive(true);
-                    count++;
-                    //todo 穿戴
-                    //if (UserData.Instance.TempWornPackageItems != null && UserData.Instance.TempWornPackageItems.Count != 0)
-                    //{
-                    //    dressItem = UserData.Instance.TempWornPackageItems.Find(x => x.id == data.id);
-                    //}
-                    //else
-                    //{
-                    //    dressItem = UserData.Instance.WornPackageItems.Find(x => x.id == data.id);
-                    //}
-                }
-                else
-                {
-                    list[i].SetActive(false);
-                    ColorList.Remove(data.color);
-                    showObj.Remove(list[i]);
-                }
-                list[i].GetComponent<Toggle>().SetIsOnWithoutNotify(false);
-                list[i].GetComponent<Toggle>().interactable = true;
-            }
-        }
-
-        if (isTypeSelect)
-        {
-            if (typeUsed == 2)
-            {
-               CreatColorItem();
-            }
-            else
-            {
-               ColorType = 0;
-            }
-           EColor.gameObject.SetActive(typeUsed == 2);
-           EColorText.gameObject.SetActive(typeUsed == 2);
-        }
-        foreach (var item in showObj)
-        {
-
-            if (int.Parse(item.Value.color) !=ColorType && ColorType != 0)
-            {
-                item.Key.SetActive(false);
-                count--;
-            }
-        }
-        SetCellShow(count, Cells);
-    }
-    /// <summary>
-    /// 显示多少个格子
-    /// </summary>
-    /// <param name="self"></param>
-    /// <param name="count">隐藏的数量</param>
-    private  void SetCellShow(int count, List<GameObject> cells)
-    {
-        int show = count;
-        if (show > cells.Count)
-        {
-            show = show % 5;
-            show = 5 - show;
-            show = cells.Count - show;
-        }
-        for (int i = 0; i < cells.Count; i++)
-        {
-            if (i < show)
-            {
-                cells[i].gameObject.SetActive(false);
-            }
-            else
-            {
-                cells[i].gameObject.SetActive(true);
-            }
-        }
-    }
-
-
-    private  void RefreshBagItem(Transform t, int type, int id)
-    {
-       itemPackage[id].BindTrans(t);
+                text.text = LanguageMatchManager.Instance.GetLanByKey(item.Value.Id.ToString());
+            };
+            go.GetComponent<Toggle>().onValueChanged.AddListener((x) =>
+            {
+                if (x)
+                {
+                    text.color = Color.black;
+                    if (item.Value.type == 1)
+                    {
+                        ClothType = item.Value.Id;
+                    }
+                    else
+                    {
+                        BodyType = item.Value.Id;
+                    }
+                    Filter(true, item.Value.Id);
+                }
+                else
+                {
+                    text.color = new Color(1, 1, 1, 0.4f);
+
+                }
+            });
+
+            if (item.Value.Id == 1)
+            {
+                go.GetComponent<Toggle>().isOn = true;
+            }
+            ClassType.Add(item.Value.Id, go);
+        }
+    }
+    /// <summary>
+    /// 创建颜色种类
+    /// </summary>
+    /// <param name="self"></param>
+    private  void CreatColorItem()
+    {
+        for (int i = 0; i <ColorObjList.Count; i++)
+        {
+            GameObject.Destroy(ColorObjList[i]);
+        }
+        ColorObjList.Clear();
+        ColorList = ColorList.Distinct().ToList();
+        if (ColorList.Count != 0)
+        {
+            ColorType = int.Parse(ColorList[0]);
+        }
+        var colordir = JsonMapper.ToObject<Dictionary<string, ItemColorConfig>>(Resources.Load<TextAsset>("ItemColor").text);
+
+        EGColorItem.gameObject.SetActive(false);
+        foreach (var item in colordir)
+        {
+            string color =ColorList.Find(x => x == item.Value.Id.ToString());
+            if (string.IsNullOrEmpty(color)) continue;
+            GameObject go = GameObject.Instantiate(EGColorItem.gameObject);
+            go.SetActive(true);
+            go.GetComponent<Toggle>().group =EGColorFilter.GetComponent<ToggleGroup>();
+            go.transform.SetParent(EGColorFilter.transform);
+            go.transform.localPosition = Vector3.zero;
+            go.transform.localScale = Vector3.one;
+            go.transform.GetChild(0).GetComponent<Image>().sprite =ColorStyle.GetSprite(item.Value.assetsName);
+            go.GetComponent<Toggle>().onValueChanged.AddListener((x) =>
+            {
+                if (x)
+                {
+                    ColorType = item.Value.Id;
+                    Filter();
+                }
+                else
+                {
+
+                }
+            });
+           ColorObjList.Add(go);
+        }
+    }
+    private   void Filter(bool isTypeSelect = false, int type = -1)
+    {
+        int count = 0;
+        ColorList.Clear();
+        Dictionary<GameObject, Good> showObj = new Dictionary<GameObject, Good>();
+    
+        if (type != -1)
+        {
+            if (TypeItemClassGroup[type].Count == 0 &&ItemTypeData.ContainsKey(type))
+            {
+                AddUIScrollItems(itemPackage, ItemTypeData[type].Count);
+                GameObject obj = itempackage;
+                for (int i = 0; i < ItemTypeData[type].Count; i++)
+                {
+                    GameObject go = GameObject.Instantiate(obj);
+                    RefreshBagItem(go.transform, type, i);
+                    go.transform.SetParent(EBagContent.content);
+                    go.transform.localScale = Vector3.one;
+                    go.transform.localPosition = Vector3.zero;
+                    go.transform.SetAsFirstSibling();
+                    go.name = ItemTypeData[type][i].id.ToString();
+                }
+               
+            }
+        }
+        int typeUsed = 0;
+        if (Ebody.isOn)
+        {
+            typeUsed =BodyType;
+        }
+        else
+        {
+            typeUsed = ClothType;
+        }
+        Good dressItem = null;
+        foreach (var item in TypeItemClassGroup)
+        {
+            var list = item.Value;
+            for (int i = 0; i < list.Count; i++)
+            {
+                Good data = ItemTypeData[item.Key][i];
+                ColorList.Add(data.color);
+                showObj.Add(list[i], data);
+                if (item.Key == typeUsed)
+                {
+                    list[i].SetActive(true);
+                    count++;
+                    //todo 穿戴
+                    //if (UserData.Instance.TempWornPackageItems != null && UserData.Instance.TempWornPackageItems.Count != 0)
+                    //{
+                    //    dressItem = UserData.Instance.TempWornPackageItems.Find(x => x.id == data.id);
+                    //}
+                    //else
+                    //{
+                    //    dressItem = UserData.Instance.WornPackageItems.Find(x => x.id == data.id);
+                    //}
+                }
+                else
+                {
+                    list[i].SetActive(false);
+                    ColorList.Remove(data.color);
+                    showObj.Remove(list[i]);
+                }
+                list[i].GetComponent<Toggle>().SetIsOnWithoutNotify(false);
+                list[i].GetComponent<Toggle>().interactable = true;
+            }
+        }
+
+        if (isTypeSelect)
+        {
+            if (typeUsed == 2)
+            {
+               CreatColorItem();
+            }
+            else
+            {
+               ColorType = 0;
+            }
+           EColor.gameObject.SetActive(typeUsed == 2);
+           EColorText.gameObject.SetActive(typeUsed == 2);
+        }
+        foreach (var item in showObj)
+        {
+
+            if (int.Parse(item.Value.color) !=ColorType && ColorType != 0)
+            {
+                item.Key.SetActive(false);
+                count--;
+            }
+        }
+        SetCellShow(count, Cells);
+    }
+    /// <summary>
+    /// 显示多少个格子
+    /// </summary>
+    /// <param name="self"></param>
+    /// <param name="count">隐藏的数量</param>
+    private  void SetCellShow(int count, List<GameObject> cells)
+    {
+        int show = count;
+        if (show > cells.Count)
+        {
+            show = show % 5;
+            show = 5 - show;
+            show = cells.Count - show;
+        }
+        for (int i = 0; i < cells.Count; i++)
+        {
+            if (i < show)
+            {
+                cells[i].gameObject.SetActive(false);
+            }
+            else
+            {
+                cells[i].gameObject.SetActive(true);
+            }
+        }
+    }
+
+
+    private  void RefreshBagItem(Transform t, int type, int id)
+    {
+       itemPackage[id].BindTrans(t);
         Good config = ItemTypeData[type][id];
         //TODO:物品多语言;
         //itemPackage[id].ENameTextMeshProUGUI.text = LanguageMatchManager.Instance.GetLanByKey(config.name);
@@ -423,105 +429,105 @@ public class FaceBuildSystem : MonoBehaviour
         //{
         //    itemPackage[id].ENameTextMeshProUGUI.text = LanguageMatchManager.Instance.GetLanByKey(config.name);
         //};
-        //itemPackage[id].ENameTextMeshProUGUI.text = config.name;
-       itemPackage[id].EIconImage.sprite =ItemIcon.GetSprite(config.id.ToString());
-       itemPackage[id].uiTransform.SetAsFirstSibling();
-        //设置穿戴功能 CharacterRender.addDress();
-        t.GetComponent<Toggle>().group =EBagContent.content.GetComponent<ToggleGroup>();
-        t.GetComponent<Toggle>().onValueChanged.AddListener(async (b) =>
-        {
-            //todo  装备
-            if (b)
-            {
-                await CharacterManager.Inst.ChangePlayerTex(CharacterManager.Inst.selfRender, config);
-                ShowEquipName();
-            }
-            else
-            {
-                //if (!self.Unworn.Contains(config.id))
-                //{
-                //    self.Unworn.Add(config.id);
-                //}
-                //CharacterManager.Inst.UnEquip(CharacterManager.Inst.selfRender, config, UserData.Instance.WornPackageItems);
-            }
-        });
-
-        if (config.level == 1)
-        {
-            itemPackage[id].ENameColorImage.color = new Color(0.8f, 0.8f, 0.8f, 1);
-        }
-        if (config.level == 2)
-        {
-           itemPackage[id].ENameColorImage.color = new Color(0.82f, 0.98f, 0, 1);
-        }
-        if (config.level == 3)
-        {
-           itemPackage[id].ENameColorImage.color = new Color(0.63f, 0.82f, 1, 1);
-        }
-        if (config.level == 4)
-        {
-            itemPackage[id].ENameColorImage.color = new Color(0.392f, 0, 1, 1);
-            itemPackage[id].ENameTextMeshProUGUI.color = new Color(0.82f, 0.98f, 0, 1);
-            itemPackage[id].ELinkIconImage.gameObject.SetActive(true);
-        }
-       TypeItemClassGroup[type].Add(t.gameObject);
-    }
-    public  void AddUIScrollItems(Dictionary<int , ItemPackage_View> dictionary, int count)
-    {
-        if (dictionary == null)
-        {
-            dictionary = new Dictionary<int, ItemPackage_View>();
-        }
-        if (count <= 0)
-        {
-            return;
-        }
-        if (count > dictionary.Count)
-        {
-
-            for (int i = dictionary.Count; i < count; i++)
-            {
-                ItemPackage_View itemServer = new ItemPackage_View();
-                dictionary.Add(i, itemServer);
-            }
-
-        }
-        else if (count < dictionary.Count)
-        {
-            for (int i = (dictionary.Count - 1); i >= count; i--)
-            {
-                dictionary[i].Dispose();
-                dictionary.Remove(i);
-
-            }
-
-
-        }
-    }
-
-    /// <summary>显示装备名</summary>
-    public  void ShowEquipName()
-    {
-
-        List<Good> goods =new List<Good>();
-        foreach (var item in CharacterManager.Inst.selfRender.dressRenders)
-        {
-            goods.Add(item.Value.good);
-        }
-
-        string text = null;
-        for (int i = 0; i < goods.Count; i++)
-        {
-            if (i < 5)
-            {
-                text += $"-{goods[i].name}\r\n";
-            }
-        }
-        if (goods.Count > 5)
-        {
-            text += "-and_more";
-        }
-       EClothName.text = text;
-
-    }
-}
+        //itemPackage[id].ENameTextMeshProUGUI.text = config.name;
+       itemPackage[id].EIconImage.sprite =ItemIcon.GetSprite(config.id.ToString());
+       itemPackage[id].uiTransform.SetAsFirstSibling();
+        //设置穿戴功能 CharacterRender.addDress();
+        t.GetComponent<Toggle>().group =EBagContent.content.GetComponent<ToggleGroup>();
+        t.GetComponent<Toggle>().onValueChanged.AddListener(async (b) =>
+        {
+            //todo  装备
+            if (b)
+            {
+                await CharacterManager.Inst.ChangePlayerTex(CharacterManager.Inst.selfRender, config);
+                ShowEquipName();
+            }
+            else
+            {
+                //if (!self.Unworn.Contains(config.id))
+                //{
+                //    self.Unworn.Add(config.id);
+                //}
+                //CharacterManager.Inst.UnEquip(CharacterManager.Inst.selfRender, config, UserData.Instance.WornPackageItems);
+            }
+        });
+
+        if (config.level == 1)
+        {
+            itemPackage[id].ENameColorImage.color = new Color(0.8f, 0.8f, 0.8f, 1);
+        }
+        if (config.level == 2)
+        {
+           itemPackage[id].ENameColorImage.color = new Color(0.82f, 0.98f, 0, 1);
+        }
+        if (config.level == 3)
+        {
+           itemPackage[id].ENameColorImage.color = new Color(0.63f, 0.82f, 1, 1);
+        }
+        if (config.level == 4)
+        {
+            itemPackage[id].ENameColorImage.color = new Color(0.392f, 0, 1, 1);
+            itemPackage[id].ENameTextMeshProUGUI.color = new Color(0.82f, 0.98f, 0, 1);
+            itemPackage[id].ELinkIconImage.gameObject.SetActive(true);
+        }
+       TypeItemClassGroup[type].Add(t.gameObject);
+    }
+    public  void AddUIScrollItems(Dictionary<int , ItemPackage_View> dictionary, int count)
+    {
+        if (dictionary == null)
+        {
+            dictionary = new Dictionary<int, ItemPackage_View>();
+        }
+        if (count <= 0)
+        {
+            return;
+        }
+        if (count > dictionary.Count)
+        {
+
+            for (int i = dictionary.Count; i < count; i++)
+            {
+                ItemPackage_View itemServer = new ItemPackage_View();
+                dictionary.Add(i, itemServer);
+            }
+
+        }
+        else if (count < dictionary.Count)
+        {
+            for (int i = (dictionary.Count - 1); i >= count; i--)
+            {
+                dictionary[i].Dispose();
+                dictionary.Remove(i);
+
+            }
+
+
+        }
+    }
+
+    /// <summary>显示装备名</summary>
+    public  void ShowEquipName()
+    {
+
+        List<Good> goods =new List<Good>();
+        foreach (var item in CharacterManager.Inst.selfRender.dressRenders)
+        {
+            goods.Add(item.Value.good);
+        }
+
+        string text = null;
+        for (int i = 0; i < goods.Count; i++)
+        {
+            if (i < 5)
+            {
+                text += $"-{goods[i].name}\r\n";
+            }
+        }
+        if (goods.Count > 5)
+        {
+            text += "-and_more";
+        }
+       EClothName.text = text;
+
+    }
+}

+ 1 - 1
SFGgouhuo/Assets/Scripts/UI/Loading/ESLanguage.cs

@@ -15,7 +15,7 @@ public class ESLanguage : MonoBehaviour
 #if UNITY_STANDALONE_WIN
         tabIcon.SetActive(true);
 #elif UNITY_ANDROID
-        tabIcon.SetActive(false)
+        tabIcon.SetActive(false);
 #elif UNITY_WEBGL
 #endif
     }

تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 82 - 12
SFGgouhuo/Assets/TextMesh Pro/Fonts/SOURCEHANSANSCN-BOLD SDF.asset


+ 1 - 2
SFGgouhuo/ProjectSettings/ProjectSettings.asset

@@ -135,8 +135,7 @@ PlayerSettings:
     16:9: 1
     Others: 1
   bundleVersion: 0.1
-  preloadedAssets:
-  - {fileID: 11400000, guid: 4b8185399a4cfc5428357ac6a5795f11, type: 2}
+  preloadedAssets: []
   metroInputSource: 0
   wsaTransparentSwapchain: 0
   m_HolographicPauseOnTrackingLoss: 1

برخی فایل ها در این مقایسه diff نمایش داده نمی شوند زیرا تعداد فایل ها بسیار زیاد است