Эх сурвалжийг харах

添加剧情中主角头像层级的延迟检查

leiyasi 1 жил өмнө
parent
commit
73d68af41a

+ 19 - 2
GameClient/Assets/Game/HotUpdate/Views/MainStory/StoryDialogView.cs

@@ -192,6 +192,7 @@ namespace GFGGame
 
             Timers.inst.Remove(UpdateShake);
             Timers.inst.Remove(OnScreenEffectComplete);
+            Timers.inst.Remove(DelayCheckLayerRight);
             ScreenBlackController.Instance.HideBlack();
 
             // 不是茶话会,则记录上一次自动播放按钮的状态
@@ -484,6 +485,7 @@ namespace GFGGame
                 yield break;
             }
 
+            Timers.inst.Remove(DelayCheckLayerRight);
             if (storyDialogCfg.showChangeName == 1 && StorageDataManager.Instance.GetStorageValue(ConstStorageId.CHANGE_NAME) == 0)
             {
                 GameController.ShowCreateRole();
@@ -572,7 +574,8 @@ namespace GFGGame
                         {
                             //表情
                             _dressUpObj.AddOrRemove(headAniCfg.faceId, true);
-                            //_dressUpObjUI.UpdateWrapper(_ui.m_dialogHead.m_compDressUp.m_holder);
+                            Timers.inst.Remove(DelayCheckLayerRight);
+                            Timers.inst.Add(1, 1, DelayCheckLayerRight);
                         }
                         _ui.m_dialogHead.m_compDressUp.target.visible = true;
                     }
@@ -1121,12 +1124,26 @@ namespace GFGGame
         /// </summary>
         private void ChangeHeadImgLayer()
         {
+            if(_dressUpSceneObj == null)
+            {
+                return;
+            }
             Transform parent = _dressUpSceneObj.transform.Find("Role");
-            ChangeLayer(parent, parent.gameObject.layer);
+            // HeadImg的层级:6
+            ChangeLayer(parent, 6);
+        }
+
+        private void DelayCheckLayerRight(object param)
+        {
+            ChangeHeadImgLayer();
         }
 
         private void ChangeLayer(Transform transform, int layer)
         {
+            if(transform == null)
+            {
+                return;
+            }
             if (transform.childCount > 0)
             {
                 for (int i = 0; i < transform.childCount; i++)