瀏覽代碼

Merge branch 'master' of http://10.108.64.190:3000/gfg/client

guodong 2 年之前
父節點
當前提交
79e8bea668

+ 1 - 0
GameClient/Assets/Game/HotUpdate/Data/PhotographDataManager.cs

@@ -20,6 +20,7 @@ namespace GFGGame
     {
 
         public List<GameObject> itemGameObjs = new List<GameObject>();
+        public const int layerCount = 600;
 
         public DressUpObj dressUpObj;//当前穿戴的角色数据
         public Dictionary<int, List<int>> _equipSceneData = new Dictionary<int, List<int>>();//当前穿戴的场景数据

+ 1 - 36
GameClient/Assets/Game/HotUpdate/Data/PhotographSceneManager.cs

@@ -53,15 +53,6 @@ namespace GFGGame
 
             string layerName = string.Format("resLayer{0}", layer);
             string value = typeof(ItemCfg).GetField(layerName).GetValue(itemCfg).ToString();
-            // string res = value == "n" ? itemCfg.res : string.Format("{0}_{1}", itemCfg.res, value);
-
-            // string res = DressUpUtil.GetDressUpItemLayerRes(itemCfg, layer);
-            // string resPath = ResPathUtil.GetDressUpPath(res);
-            // var effPath = ResPathUtil.GetDressUpEffectPath(itemCfg.res);
-            // if (!VEngine.Versions.Contains(resPath) && VEngine.Versions.Contains(effPath))
-            // {
-            //     AddOnlyEffItemToScene(sceneObject, parentGameObj, itemCfg.id, layer);
-            // }
 
             AddItemGameObjectToList(parentGameObj, setLayer);
         }
@@ -81,16 +72,6 @@ namespace GFGGame
             string resPath = ResPathUtil.GetDressUpAnimationPath(res);
             if (VEngine.Versions.Contains(resPath))
             {
-                // SpriteRenderer spriteRenderer = gameObject.GetComponent<SpriteRenderer>();
-                // if (spriteRenderer == null)
-                // {
-                //     spriteRenderer = gameObject.AddComponent<SpriteRenderer>();
-                //     Collider2D collider2D = gameObject.GetComponent<Collider2D>();
-                //     spriteRenderer.size = collider2D.bounds.size;
-                //     // spriteRenderer.
-                //     spriteRenderer.enabled = false;
-                // }
-                // if (spriteRenderer != null) spriteRenderer.enabled = false;
                 DressUpUtil.AddItem(itemId, sceneObj, false, true, parentGameObj, resLayer);
                 parentGameObj.transform.localPosition = Vector3.zero;
             }
@@ -103,22 +84,6 @@ namespace GFGGame
             PhotographUtil.Instance.SetGameObjectCenter(parentGameObj);
         }
 
-        // private void AddOnlyEffItemToScene(GameObject sceneObj, GameObject parentGameObj, int itemId, int resLayer)
-        // {
-        //     ItemCfg itemCfg = ItemCfgArray.Instance.GetCfg(itemId);
-        //     parentGameObj.transform.SetParent(sceneObj.transform.Find("Scene"), false);
-
-        //     GameObject gameObject = new GameObject(itemCfg.id.ToString());
-        //     gameObject.transform.SetParent(parentGameObj.transform);
-        //     string res = DressUpUtil.GetDressUpItemLayerRes(itemCfg, resLayer);
-        //     string resPath = ResPathUtil.GetDressUpPath(res);
-        //     SetSpriteRendererToTransform(gameObject.transform, resPath);
-        //     SetBoxCollider2DToGameObject(gameObject);
-        //     gameObject.GetComponent<SpriteRenderer>().enabled = false;
-        //     DressUpUtil.AddItem(itemId, sceneObj, false, true, parentGameObj, resLayer);
-        //     PhotographUtil.Instance.SetGameObjectCenter(parentGameObj);
-        // }
-
         //拍照角色
         private void UpdatePhotographBody(GameObject sceneObj, GameObject parentObj)
         {
@@ -176,7 +141,7 @@ namespace GFGGame
             if (setLayer)
             {
                 int index = itemGameObjs.Count - 1;
-                PhotographUtil.Instance.ChangeLayer(itemGameObjs[index], index * 300, "up");
+                PhotographUtil.Instance.ChangeLayer(itemGameObjs[index], index * PhotographDataManager.layerCount, "up");
             }
             itemGameObjs.Sort((GameObject a, GameObject b) =>
             {

+ 63 - 54
GameClient/Assets/Game/HotUpdate/Data/PhotographUtil.cs

@@ -92,9 +92,9 @@ namespace GFGGame
         {
             int layer = int.MinValue;
             GameObject gameObject = null;
+
             for (int i = 0; i < hit2Ds.Length; i++)
             {
-
                 int gameobjMaxlayer = GetMaxLayer(hit2Ds[i].collider.transform.parent.gameObject);
                 if (gameobjMaxlayer > layer)
                 {
@@ -170,7 +170,7 @@ namespace GFGGame
 
             for (int i = 0; i < itemGameObjs.Count; i++)
             {
-                ChangeLayer(itemGameObjs[i], i * 600, state);
+                ChangeLayer(itemGameObjs[i], i * PhotographDataManager.layerCount, state);
             }
 
         }
@@ -189,56 +189,32 @@ namespace GFGGame
             }
             int changeLayer = count;
 
-            int maxLayer = int.MinValue;
             SpriteRenderer[] sps = parentObj.GetComponentsInChildren<SpriteRenderer>();//选中道具可能含有静态图
             for (int i = 0; i < sps.Length; i++)
             {
                 int sortingOrder = sps[i].sortingOrder + changeLayer;
                 sps[i].sortingOrder = sortingOrder;
-
-                ParticleSystem[] particles = sps[i].gameObject.GetComponentsInChildren<ParticleSystem>();
-                for (int j = 0; j < particles.Length; j++)//静态图可能是动画
-                {
-                    var renderer = particles[j].GetComponent<Renderer>();
-                    if (renderer != null)
-                    {
-                        renderer.sortingOrder = sortingOrder;
-                    }
-                }
-
-                if (maxLayer < sortingOrder)
-                {
-                    maxLayer = sortingOrder;
-                }
             }
-            Collider2D[] collider = parentObj.GetComponentsInChildren<Collider2D>();//选中道具可能含有静态图
-            for (int i = 0; i < collider.Length; i++)
+
+            ParticleSystem[] particleSystems = parentObj.GetComponentsInChildren<ParticleSystem>();
+            for (int i = 0; i < particleSystems.Length; i++)//选中道具可能含有特效
             {
-                ParticleSystem[] particles = collider[i].gameObject.GetComponentsInChildren<ParticleSystem>();
-                for (int j = 0; j < particles.Length; j++)//静态图可能是动画
+                var renderer = particleSystems[i].GetComponent<Renderer>();
+                if (renderer != null)
                 {
-                    var renderer = particles[j].GetComponent<Renderer>();
-                    if (renderer != null)
-                    {
-                        renderer.sortingOrder = renderer.sortingOrder + changeLayer;
-                        if (maxLayer < renderer.sortingOrder)
-                        {
-                            maxLayer = renderer.sortingOrder;
-                        }
-                    }
+                    renderer.sortingOrder = renderer.sortingOrder + changeLayer;
                 }
             }
-
-
-            for (int i = 0; i < parentObj.transform.childCount; i++)//选中道具可能含有特效
+            MeshRenderer[] meshRenderers = parentObj.GetComponentsInChildren<MeshRenderer>();
+            for (int i = 0; i < meshRenderers.Length; i++)
             {
-                Transform tf = parentObj.transform.GetChild(i);
-                string[] strs = tf.name.Split('_');
-                if (strs.Length > 1 && strs[1].IndexOf("e") >= 0)//子物体是特效
+                var renderer = meshRenderers[i].GetComponent<Renderer>();
+                if (renderer != null)
                 {
-                    DressUpUtil.SetRenderersOrder(tf.gameObject, changeLayer, true);
+                    renderer.sortingOrder = renderer.sortingOrder + changeLayer;
                 }
             }
+
             CubismRenderController[] cubismRenders = parentObj.GetComponentsInChildren<CubismRenderController>();
             for (int i = 0; i < cubismRenders.Length; i++)
             {
@@ -246,10 +222,6 @@ namespace GFGGame
                 if (render != null && render.gameObject.activeSelf == true)
                 {
                     render.SortingOrder = render.SortingOrder + changeLayer;
-                    if (maxLayer < render.SortingOrder)
-                    {
-                        maxLayer = render.SortingOrder;
-                    }
                 }
             }
         }
@@ -258,13 +230,21 @@ namespace GFGGame
             int layer = int.MinValue;
             for (int i = 0; i < parentObj.transform.childCount; i++)
             {
+
                 GameObject gameObject = parentObj.transform.GetChild(i).gameObject;
-                Transform tf = gameObject.transform;
-                SpriteRenderer sp = tf.GetComponent<SpriteRenderer>();
-                if (sp && layer < sp.sortingOrder)
+
+                if (gameObject.activeSelf == false) continue;
+
+                SpriteRenderer[] sprites = gameObject.GetComponentsInChildren<SpriteRenderer>();
+                for (int j = 0; j < sprites.Length; j++)
                 {
-                    layer = sp.sortingOrder;
+
+                    if (sprites[j] != null && layer < sprites[j].sortingOrder)
+                    {
+                        layer = sprites[j].sortingOrder;
+                    }
                 }
+
                 ParticleSystem[] particles = gameObject.GetComponentsInChildren<ParticleSystem>();
                 for (int j = 0; j < particles.Length; j++)
                 {
@@ -274,31 +254,49 @@ namespace GFGGame
                         layer = renderer.sortingOrder;
                     }
                 }
+
+                MeshRenderer[] meshRenderers = gameObject.GetComponentsInChildren<MeshRenderer>();
+                for (int j = 0; j < meshRenderers.Length; j++)
+                {
+                    var renderer = meshRenderers[j].GetComponent<Renderer>();
+                    if (renderer != null && layer < renderer.sortingOrder)
+                    {
+                        layer = renderer.sortingOrder;
+                    }
+                }
+
                 CubismRenderController[] cubismRenders = parentObj.GetComponentsInChildren<CubismRenderController>();
                 for (int j = 0; j < cubismRenders.Length; j++)
                 {
-                    CubismRenderController render = cubismRenders[j];
-                    if (render != null && render.gameObject.activeSelf == true && layer < render.SortingOrder)
+                    CubismRenderController cubism = cubismRenders[j];
+                    if (cubism != null && cubism.gameObject.activeSelf == true && layer < cubism.SortingOrder)
                     {
-                        layer = render.SortingOrder;
+                        layer = cubism.SortingOrder;
                     }
                 }
             }
             return layer;
         }
+
         public int GetMinLayer(GameObject parentObj)
         {
             int layer = int.MaxValue;
             for (int i = 0; i < parentObj.transform.childCount; i++)
             {
                 GameObject gameObject = parentObj.transform.GetChild(i).gameObject;
-                Transform tf = gameObject.transform;
-                if (tf.gameObject.activeSelf == false) continue;
-                SpriteRenderer sp = tf.GetComponent<SpriteRenderer>();
-                if (sp && sp.sortingOrder < layer)
+
+                if (gameObject.activeSelf == false) continue;
+
+                SpriteRenderer[] sprites = gameObject.GetComponentsInChildren<SpriteRenderer>();
+                for (int j = 0; j < sprites.Length; j++)
                 {
-                    layer = sp.sortingOrder;
+
+                    if (sprites[j] != null && sprites[j].sortingOrder < layer)
+                    {
+                        layer = sprites[j].sortingOrder;
+                    }
                 }
+
                 ParticleSystem[] particles = gameObject.GetComponentsInChildren<ParticleSystem>();
                 for (int j = 0; j < particles.Length; j++)
                 {
@@ -308,6 +306,17 @@ namespace GFGGame
                         layer = renderer.sortingOrder;
                     }
                 }
+
+                MeshRenderer[] meshRenderers = gameObject.GetComponentsInChildren<MeshRenderer>();
+                for (int j = 0; j < meshRenderers.Length; j++)
+                {
+                    var renderer = meshRenderers[j].GetComponent<Renderer>();
+                    if (renderer != null && renderer.sortingOrder < layer)
+                    {
+                        layer = renderer.sortingOrder;
+                    }
+                }
+
                 CubismRenderController[] cubismRenders = parentObj.GetComponentsInChildren<CubismRenderController>();
                 for (int j = 0; j < cubismRenders.Length; j++)
                 {

+ 8 - 4
GameClient/Assets/Game/HotUpdate/Views/Card/CardFosterView.cs

@@ -339,8 +339,8 @@ namespace GFGGame
             int type = (int)sender.data;
             GObject obj = sender.parent;
 
-            UI_ComConsume listItem = UI_ComConsume.Proxy(obj);
-            int index = (int)listItem.target.data;
+            // UI_ComConsume listItem = UI_ComConsume.Proxy(obj);
+            int index = (int)obj.data;// (int)listItem.target.data;
             int itemId = upgradeCardItemsArr[index];
             _consumeSelectItem = obj;
             _consumeSelectIndex = type;
@@ -366,7 +366,9 @@ namespace GFGGame
                 if (_consumeSelectIndex == 0)
                 {
                     UI_ComConsume listItem = UI_ComConsume.Proxy(_consumeSelectItem);
-                    if (!CommonUtil.Instance.CheckPointIsOnComponent(listItem.m_btnMinus, CommonUtil.Instance.GetMouseV2Point()))
+                    bool pointIsOnComponent = CommonUtil.Instance.CheckPointIsOnComponent(listItem.m_btnMinus, CommonUtil.Instance.GetMouseV2Point());
+                    UI_ComConsume.ProxyEnd();
+                    if (!pointIsOnComponent)
                     {
                         Timers.inst.Remove(OnTimedEvent);
                         return;
@@ -405,7 +407,7 @@ namespace GFGGame
         {
             UI_ComConsume listItem = UI_ComConsume.Proxy(obj);
 
-            int index = (int)listItem.target.data;
+            int index = (int)obj.data;
             int itemId = upgradeCardItemsArr[index];
 
             if (itemsCount[index] == ItemDataManager.GetItemNum(itemId))
@@ -431,6 +433,7 @@ namespace GFGGame
             if (IsUpLvLimit(itemId, false)) return false;
             itemsCount[index] = itemsCount[index] + 1;
             listItem.m_txtUseCount.text = itemsCount[index].ToString();
+            UI_ComConsume.ProxyEnd();
             this.UpdatePreView();
             return true;
         }
@@ -449,6 +452,7 @@ namespace GFGGame
             }
             itemsCount[index] = itemsCount[index] - 1;
             listItem.m_txtUseCount.text = itemsCount[index].ToString();
+            UI_ComConsume.ProxyEnd();
             this.UpdatePreView();
         }
         private void UpdatePreView()

+ 1 - 1
GameClient/Assets/Game/HotUpdate/Views/DressUp/PhotographView.cs

@@ -599,7 +599,7 @@ namespace GFGGame
             rotationGesture.onAction.Remove(OnRotate);
             pinchGesture = null;
             rotationGesture = null;
-
+            _ui.m_c1.selectedIndex = 0;
             Timers.inst.Remove(CheckGuide);
         }
 

+ 1 - 1
GameClient/Assets/Game/HotUpdate/Views/RoleInfo/PersonalPhotoView.cs

@@ -63,7 +63,7 @@ namespace GFGGame
             bool otherSelect = !curSelect && RoleDataManager.photoDatas.IndexOf(photoData.PictureId) >= 0;
             item.m_imgSelect.visible = curSelect;
             item.m_imgOtherSelect.visible = otherSelect;
-
+            item.m_txtTime.text = TimeUtil.FormattingTime1(photoData.CreationTime);
             item.target.data = photoData.PictureId;
             UI_ListPhotoItem1.ProxyEnd();