using UnityEngine; namespace GFGGame { public class PhotographSceneManager : SingletonBase { public GameObject sceneObject; public void AddBgItem(ItemCfg itemCfg) { Transform tf = sceneObject.transform.Find("Bg/BgRes"); string resPath = ResPathUtil.GetDressUpPath(itemCfg.res, ItemUtil.GetItemResExt(itemCfg.itemType, itemCfg.subType)); SceneController.SetSpriteRendererToTransform(tf, resPath); SpriteRenderer spr = tf.GetComponent(); spr.sortingOrder = -200; SceneController.SetBoxCollider2DToGameObject(tf.gameObject); } public void AddBorderItem(ItemCfg itemCfg) { Transform tf = sceneObject.transform.Find("Border/BorderRes"); SpriteRenderer spr = tf.GetComponent(); if (spr != null) { spr.sprite = null; } if (itemCfg.id == ConstItemID.BORDERID) { SceneController.DeleteBoxCollider2DFromGameObject(tf.gameObject); return; } string resPath = ResPathUtil.GetPhotographBorderPath(itemCfg.res, ItemUtil.GetItemResExt(itemCfg.itemType, itemCfg.subType)); SceneController.SetSpriteRendererToTransform(tf, resPath); spr = tf.GetComponent(); spr.sortingOrder = 10000;//边框在所有道具的上边 SceneController.SetBoxCollider2DToGameObject(tf.gameObject); } public void AddSceneItem(GameObject parentGameObj, ItemCfg itemCfg, int layer, bool setLayer) { // GameObject parentGameObj = new GameObject(string.Format("{0}_{1}", itemCfg.id, 0)); SceneController.AddItemToScene(sceneObject, parentGameObj, itemCfg.id, layer); PhotographDataManager.Instance.AddItemGameObject(parentGameObj, setLayer); } public void AddNpcItem(ItemCfg itemCfg) { Transform tf = sceneObject.transform.Find("Scene/Npc/NpcRes"); string resPath = ResPathUtil.GetNpcPicFPath(itemCfg.res); SceneController.SetSpriteRendererToTransform(tf, resPath); SpriteRenderer spr = tf.GetComponent(); tf.localPosition = new Vector2(-spr.bounds.center.x, -spr.bounds.center.y); SceneController.SetBoxCollider2DToGameObject(tf.gameObject); PhotographDataManager.Instance.AddItemGameObject(tf.parent.gameObject, true); } public void AddBodyItem() { GameObject bodyParent = sceneObject.transform.Find("Scene/Role").gameObject; SceneController.UpdatePhotographBody(sceneObject, bodyParent); PhotographDataManager.Instance.AddItemGameObject(bodyParent, false); } } }