//-------------------------------------------------------- // [Author]: 第二世界 // [ Date ]: Saturday, December 30, 2017 //-------------------------------------------------------- using System; using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; //什么任务面板 namespace vnxbqy.UI { public class MysteriousMissionWin : Window { [SerializeField] ScaleTween m_Background; [SerializeField] Button m_PanelButton; [SerializeField] Text m_MysteriousMissionWin; [Header("前期固定时间")] public float setTime = 3f; [Header("后期可选时间")] public float loadingTime = 5f; [Header("缩放时间")] public float zoomTime = 1f; FunctionUnlockFlyObject flyObject; PlayerMainDate m_MainModel; PlayerMainDate mainModel { get { return m_MainModel ?? (m_MainModel = ModelCenter.Instance.GetModel()); } } TaskModel m_TaskModel; TaskModel taskmodel { get { return m_TaskModel ?? (m_TaskModel = ModelCenter.Instance.GetModel()); } } #region Built-in protected override void BindController() { } protected override void AddListeners() { m_PanelButton.AddListener(PanelButton); } protected override void OnPreOpen() { m_Background.SetActive(true); m_PanelButton.interactable = false; m_Background.duration = zoomTime; m_Background.SetStartState(); int taskID = mainModel.MysteriousTaskID + 1; if (taskmodel.allMissionDict.ContainsKey(taskID)) { var config = TASKINFOConfig.Get(taskmodel.allMissionDict[taskID].Name); m_MysteriousMissionWin.text = config.show_writing; } //var instance = UIUtility.CreateWidget("TaskUnlockFlyObject", "TaskUnlockFlyObject"); //instance.transform.SetParentEx(this.transform, Vector3.zero, Quaternion.identity, Vector3.one); //flyObject = instance.GetComponent(); //flyObject.SetContent(FunctionUnlockType.Normal, 104); } protected override void OnAfterOpen() { StartCoroutine("LoadingTime"); } protected override void OnPreClose() { } protected override void OnAfterClose() { } public override void CloseClick() { base.CloseClick(); } private void PanelButton() { StopCoroutine("LoadingTime"); m_Background.Play(zoomOver); m_PanelButton.interactable = false; } IEnumerator LoadingTime() { yield return new WaitForSeconds(setTime); m_PanelButton.interactable = true; yield return new WaitForSeconds(loadingTime); m_PanelButton.interactable = false; m_Background.Play(zoomOver); } void zoomOver() { // flyObject.SetActive(true); m_Background.SetActive(false); m_PanelButton.interactable = false; var instance = UIUtility.CreateWidget("TaskUnlockFlyObject", "TaskUnlockFlyObject"); instance.transform.SetParentEx(this.transform, Vector3.zero, Quaternion.identity, Vector3.one); flyObject = instance.GetComponent(); flyObject.SetContent(FunctionUnlockType.Normal, 104); flyObject.Begin(CloseClick); } #endregion } }