|
@@ -192,7 +192,7 @@ namespace GFGGame
|
|
|
|
|
|
case EnumPhotographType.SCENE:
|
|
case EnumPhotographType.SCENE:
|
|
|
|
|
|
- AddSceneItem(itemCfg, false, maxLayer);
|
|
|
|
|
|
+ AddSceneItem(itemCfg, false);
|
|
break;
|
|
break;
|
|
case EnumPhotographType.EFFECT:
|
|
case EnumPhotographType.EFFECT:
|
|
|
|
|
|
@@ -223,11 +223,26 @@ namespace GFGGame
|
|
_ui.m_comSelectBox.target.visible = false;
|
|
_ui.m_comSelectBox.target.visible = false;
|
|
if (hitGameObj.name != "BgRes")//背景不可改动层级
|
|
if (hitGameObj.name != "BgRes")//背景不可改动层级
|
|
{
|
|
{
|
|
- hitGameObj.GetComponent<SpriteRenderer>().sortingOrder = maxLayer;
|
|
|
|
hitGameObj = hitGameObj.transform.parent.gameObject;
|
|
hitGameObj = hitGameObj.transform.parent.gameObject;
|
|
|
|
+
|
|
|
|
+ for (int i = 0; i < hitGameObj.transform.childCount; i++)
|
|
|
|
+ {
|
|
|
|
+ Transform obj = hitGameObj.transform.GetChild(i);
|
|
|
|
+ string[] strs = obj.name.Split('_');
|
|
|
|
+ if (strs.Length > 1 && strs[1] == "eff")
|
|
|
|
+ {
|
|
|
|
+ DressUpUtil.SetParticleSortingOrder(obj.gameObject, maxLayer);
|
|
|
|
+ }
|
|
|
|
+ else
|
|
|
|
+ {
|
|
|
|
+ obj.GetComponent<SpriteRenderer>().sortingOrder = maxLayer;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ // maxLayer = layer;
|
|
_ui.m_comSelectBox.target.visible = true;
|
|
_ui.m_comSelectBox.target.visible = true;
|
|
|
|
|
|
}
|
|
}
|
|
|
|
+ SceneController.SetGameObjectCenter(hitGameObj);
|
|
|
|
|
|
distance = Input.mousePosition - Camera.main.WorldToScreenPoint(hitGameObj.transform.position);
|
|
distance = Input.mousePosition - Camera.main.WorldToScreenPoint(hitGameObj.transform.position);
|
|
|
|
|
|
@@ -291,7 +306,6 @@ namespace GFGGame
|
|
//选中框的位置
|
|
//选中框的位置
|
|
private void ControllerSelectBoxPos()
|
|
private void ControllerSelectBoxPos()
|
|
{
|
|
{
|
|
-
|
|
|
|
Vector2 objScreenPos = Camera.main.WorldToScreenPoint(hitGameObj.transform.position);
|
|
Vector2 objScreenPos = Camera.main.WorldToScreenPoint(hitGameObj.transform.position);
|
|
Vector2 localPos = this.viewCom.GlobalToLocal(new Vector2(objScreenPos.x, (Screen.height - objScreenPos.y)));
|
|
Vector2 localPos = this.viewCom.GlobalToLocal(new Vector2(objScreenPos.x, (Screen.height - objScreenPos.y)));
|
|
_ui.m_comSelectBox.target.position = localPos;
|
|
_ui.m_comSelectBox.target.position = localPos;
|
|
@@ -334,6 +348,8 @@ namespace GFGGame
|
|
float newValue = Mathf.Clamp(ss, 0.1f, 2);
|
|
float newValue = Mathf.Clamp(ss, 0.1f, 2);
|
|
ControllerScale(newValue, memoryHitGameObj);
|
|
ControllerScale(newValue, memoryHitGameObj);
|
|
|
|
|
|
|
|
+ // Vector2 center = SceneController.SetGameObjectCenter(hitGameObj);
|
|
|
|
+ // memoryHitGameObj.transform.position = Camera.main.ScreenToWorldPoint(center); //center;
|
|
}
|
|
}
|
|
private void OnTouchBtnSizeEnd(EventContext context)
|
|
private void OnTouchBtnSizeEnd(EventContext context)
|
|
{
|
|
{
|
|
@@ -411,7 +427,7 @@ namespace GFGGame
|
|
{
|
|
{
|
|
ItemCfg itemCfg = ItemCfgArray.Instance.GetCfg(key);
|
|
ItemCfg itemCfg = ItemCfgArray.Instance.GetCfg(key);
|
|
int defaultLayer = ItemTypeCfgArray.Instance.GetCfg(itemCfg.subType).defaultLayer;
|
|
int defaultLayer = ItemTypeCfgArray.Instance.GetCfg(itemCfg.subType).defaultLayer;
|
|
- AddSceneItem(itemCfg, true, defaultLayer);
|
|
|
|
|
|
+ AddSceneItem(itemCfg, true);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
@@ -440,44 +456,75 @@ namespace GFGGame
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
- private void AddSceneItem(ItemCfg itemCfg, bool isDefaultLayer, int layer)
|
|
|
|
|
|
+ private void AddSceneItem(ItemCfg itemCfg, bool isDefaultLayer)
|
|
{
|
|
{
|
|
-
|
|
|
|
- maxLayer = layer < maxLayer ? maxLayer : layer;
|
|
|
|
- if (!isDefaultLayer)
|
|
|
|
- {
|
|
|
|
- maxLayer = layer + 1;
|
|
|
|
- layer = maxLayer;
|
|
|
|
- }
|
|
|
|
int index = 0;
|
|
int index = 0;
|
|
|
|
|
|
GameObject parentGameObj;
|
|
GameObject parentGameObj;
|
|
- if (itemCfg.resLayer1 > 0)
|
|
|
|
|
|
+ if (itemCfg.resLayer2 > 0)
|
|
{
|
|
{
|
|
if (!isDefaultLayer)
|
|
if (!isDefaultLayer)
|
|
{
|
|
{
|
|
PhotographDataManager.Instance.AddEquipItem(_equipSceneData, itemCfg.id, out _equipSceneData);
|
|
PhotographDataManager.Instance.AddEquipItem(_equipSceneData, itemCfg.id, out _equipSceneData);
|
|
}
|
|
}
|
|
index = _equipSceneData[itemCfg.id].Count - 1;
|
|
index = _equipSceneData[itemCfg.id].Count - 1;
|
|
-
|
|
|
|
- parentGameObj = new GameObject(string.Format("{0}_{1}_{2}", itemCfg.id, index, 0));
|
|
|
|
- SceneController.AddItemToScene(_sceneObject, parentGameObj, itemCfg.id, itemCfg.resLayer1);
|
|
|
|
|
|
+ parentGameObj = new GameObject(string.Format("{0}_{1}_{2}", itemCfg.id, index, 1));
|
|
|
|
+ SceneController.AddItemToScene(_sceneObject, parentGameObj, itemCfg.id, itemCfg.resLayer2);
|
|
SpriteRenderer spr = parentGameObj.transform.GetChild(0).GetComponent<SpriteRenderer>();
|
|
SpriteRenderer spr = parentGameObj.transform.GetChild(0).GetComponent<SpriteRenderer>();
|
|
- spr.sortingOrder = layer;
|
|
|
|
|
|
+
|
|
|
|
+ ItemTypeCfg itemTypeCfg = ItemTypeCfgArray.Instance.GetCfg(itemCfg.subType);
|
|
|
|
+ // spr.sortingOrder = isDefaultLayer ? itemTypeCfg.specialLayer : maxLayer + 1;
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ int layer = isDefaultLayer ? itemTypeCfg.specialLayer : maxLayer + 1;
|
|
|
|
+ for (int i = 0; i < parentGameObj.transform.childCount; i++)
|
|
|
|
+ {
|
|
|
|
+ Transform obj = parentGameObj.transform.GetChild(i);
|
|
|
|
+ string[] strs = obj.name.Split('_');
|
|
|
|
+ if (strs.Length > 1 && strs[1] == "eff")
|
|
|
|
+ {
|
|
|
|
+ DressUpUtil.SetParticleSortingOrder(obj.gameObject, layer);
|
|
|
|
+ }
|
|
|
|
+ else
|
|
|
|
+ {
|
|
|
|
+ obj.GetComponent<SpriteRenderer>().sortingOrder = layer;
|
|
|
|
+
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ maxLayer = layer;
|
|
|
|
|
|
}
|
|
}
|
|
- if (itemCfg.resLayer2 > 0)
|
|
|
|
|
|
+ if (itemCfg.resLayer1 > 0)
|
|
{
|
|
{
|
|
if (!isDefaultLayer)
|
|
if (!isDefaultLayer)
|
|
{
|
|
{
|
|
PhotographDataManager.Instance.AddEquipItem(_equipSceneData, itemCfg.id, out _equipSceneData);
|
|
PhotographDataManager.Instance.AddEquipItem(_equipSceneData, itemCfg.id, out _equipSceneData);
|
|
}
|
|
}
|
|
index = _equipSceneData[itemCfg.id].Count - 1;
|
|
index = _equipSceneData[itemCfg.id].Count - 1;
|
|
- parentGameObj = new GameObject(string.Format("{0}_{1}_{2}", itemCfg.id, index, 1));
|
|
|
|
- SceneController.AddItemToScene(_sceneObject, parentGameObj, itemCfg.id, itemCfg.resLayer2);
|
|
|
|
|
|
+
|
|
|
|
+ parentGameObj = new GameObject(string.Format("{0}_{1}_{2}", itemCfg.id, index, 0));
|
|
|
|
+ SceneController.AddItemToScene(_sceneObject, parentGameObj, itemCfg.id, itemCfg.resLayer1);
|
|
SpriteRenderer spr = parentGameObj.transform.GetChild(0).GetComponent<SpriteRenderer>();
|
|
SpriteRenderer spr = parentGameObj.transform.GetChild(0).GetComponent<SpriteRenderer>();
|
|
- spr.sortingOrder = layer;
|
|
|
|
|
|
+ ItemTypeCfg itemTypeCfg = ItemTypeCfgArray.Instance.GetCfg(itemCfg.subType);
|
|
|
|
+
|
|
|
|
+ int layer = isDefaultLayer ? itemTypeCfg.specialLayer : maxLayer + 1;
|
|
|
|
+ for (int i = 0; i < parentGameObj.transform.childCount; i++)
|
|
|
|
+ {
|
|
|
|
+ Transform obj = parentGameObj.transform.GetChild(i);
|
|
|
|
+ string[] strs = obj.name.Split('_');
|
|
|
|
+ if (strs.Length > 1 && strs[1] == "eff")
|
|
|
|
+ {
|
|
|
|
+ DressUpUtil.SetParticleSortingOrder(obj.gameObject, layer);
|
|
|
|
+ }
|
|
|
|
+ else
|
|
|
|
+ {
|
|
|
|
+ obj.GetComponent<SpriteRenderer>().sortingOrder = layer;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ maxLayer = layer;
|
|
|
|
+
|
|
}
|
|
}
|
|
|
|
+
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|