using UnityEngine; using System; using FairyGUI; namespace GFGGame { public class SceneController { public static void UpdateLoginScene(GameObject sceneObj) { //背景 Transform tf = sceneObj.transform.Find("Bg"); SpriteRenderer spr = tf.GetComponent(); var resPath = ResPathUtil.GetDressUpPath("jhsy_bg", "jpg"); Sprite sp = GFGAsset.Load(resPath); DressUpUtil.AddAssetReleaser(tf.gameObject, resPath); spr.sprite = sp; //角色 DressUpUtil.UpdateBody("ui_loginrole", sceneObj); } public static void UpdateMainScene(GameObject sceneObj) { //背景0 Transform tf = sceneObj.transform.Find("Bg"); SpriteRenderer spr = tf.GetComponent(); var resPath = ResPathUtil.GetBgImgPath("zjm_1"); Sprite sp = GFGAsset.Load(resPath); DressUpUtil.AddAssetReleaser(tf.gameObject, resPath); spr.sprite = sp; //背景1 Transform tf1 = sceneObj.transform.Find("Bg1"); SpriteRenderer spr1 = tf1.GetComponent(); var resPath1 = ResPathUtil.GetBgImgPath("fuben_bg"); Sprite sp1 = GFGAsset.Load(resPath1); DressUpUtil.AddAssetReleaser(tf1.gameObject, resPath); spr1.sprite = sp1; //角色 CustomSuitData suitSavedData = CustomSuitDataManager.GetCurrentSuitData(); MyDressUpHelper.dressUpObj.setSceneObj(sceneObj.transform.Find("Scene").gameObject, false, true, null, false); MyDressUpHelper.dressUpObj.PutOnDressUpData(suitSavedData.dressUpData); } public static void UpdateDialogBg(string value, GameObject sceneObj) { Transform tf = sceneObj.transform.Find("Bg"); SpriteRenderer spr = tf.GetComponent(); if (value == "0") { spr.sprite = null; } else { var resPath = ResPathUtil.GetDressUpPath(value, "jpg"); Sprite sp = GFGAsset.Load(resPath); DressUpUtil.AddAssetReleaser(tf.gameObject, resPath); spr.sprite = sp; } } public static void UpdateDialogPic(string value, GameObject sceneObj) { Transform tf = sceneObj.transform.Find("Pic"); SpriteRenderer spr = tf.GetComponent(); if (value == "0") { spr.sprite = null; } else { void UpdateDialogPicAlpha(object param) { if (spr != null) { Color c = spr.color; if (spr.enabled && c.a < 1f) { c.a += 0.05f; spr.color = c; } else { FairyGUI.Timers.inst.Remove(UpdateDialogPicAlpha); } } else { FairyGUI.Timers.inst.Remove(UpdateDialogPicAlpha); } } var resPath = ResPathUtil.GetNpcPicSPath(value); Sprite sp = GFGAsset.Load(resPath); DressUpUtil.AddAssetReleaser(tf.gameObject, resPath); spr.sprite = sp; Color c = spr.color; c.a = 0f; spr.color = c; FairyGUI.Timers.inst.AddUpdate(UpdateDialogPicAlpha); } } public static void UpdateFightTarget(string value, GameObject sceneObj) { Transform tf = sceneObj.transform.Find("Npc"); SpriteRenderer spr = tf.GetComponent(); var resPath = ResPathUtil.GetNpcPicFPath(value); Sprite sp = GFGAsset.Load(resPath); DressUpUtil.AddAssetReleaser(tf.gameObject, resPath); spr.sprite = sp; } public static void AddObjectToView(GameObject _gameObject, GoWrapper _wrapper, GGraph holder, string res, out GameObject gameObject, out GoWrapper wrapper, float scale = 100) { if (_gameObject != null) { GameObject.DestroyImmediate(_gameObject); } _gameObject = DressUpUtil.CreateAnimationObj(res); _gameObject.transform.localScale = new Vector3(scale, scale, scale); if (_wrapper != null) { GameObject.Destroy(_wrapper.wrapTarget); _wrapper.Dispose(); } _wrapper = new GoWrapper(_gameObject); holder.SetNativeObject(_wrapper); wrapper = _wrapper; gameObject = _gameObject; } public static void DestroyObjectFromView(GameObject _gameObject, GoWrapper goWrapper) { if (_gameObject != null) { GameObject.DestroyImmediate(_gameObject); } if (goWrapper != null) { goWrapper.Dispose(); } } } }