using LitJson; using UnityEngine; using UnityEngine.UI; using UnityEngine.EventSystems; using System; using System.Xml; using System.Collections; using System.Collections.Generic; using Random = UnityEngine.Random; public class ManaUI : Regist { #region 变量 public static ManaUI Instance; public static Transform Canvas; public static Transform Camera; public static Transform Transform; public static Transform EventSystem; #endregion public static void InitialInstantiate() { Transform par = new GameObject("UI").transform; par.parent = Transform; Canvas = ManaReso.Get("Canvas", Folder.UI, true, par, false, ObjType.Canvas); Camera = ManaReso.Get("MainCamera", Folder.UI, true, par, false, ObjType.MainCamera); EventSystem = ManaReso.Get("EventSystem", Folder.UI, false, par, false, ObjType.EventSystem); } public override void RegistImmed() { if (RegistFlag) { return; } else { RegistFlag = true; } Transform = transform; } public override void RegistValueA() { Instance = this; #region B ManaReso.SetText("Ba_Lab"); ManaReso.SetText("Ba_ConfirmLab"); ManaReso.SetText("Bb_Title"); ManaReso.SetText("Bb_GetLab"); ManaReso.SetText("Bb_ConfirmLab"); #region B_SignIn Tween tween = ManaReso.Get("B_SignIn").CreateTweenCG(0f, 1f, 0.5f, false, true, Curve.EaseOutQuad); tween.OnForwardStart += () => { ManaData.MainDepth++; }; tween.OnBackwardFinish += () => { ManaData.MainDepth--; ManaReso.Get("Bb_SignIn").TweenBacCG(); ManaReso.SetActive("Ba_Notice", true); }; #endregion #region Ba_Confirm ManaReso.AddButtonEvent ( "Ba_Confirm", () => { int daySpan = ManaServer.Time.Day - ManaSign.SignTime.Day; int monthSpan = ManaServer.Time.Month - ManaSign.SignTime.Month; if (daySpan >= 1 || monthSpan >= 1) { ManaReso.Get("Bb_SignIn").TweenForCG(); ManaReso.SetActive("Ba_Notice", false); } else { ManaReso.Get("B_SignIn").TweenBacCG(); } } ); #endregion #region Bb_Get ManaReso.AddButtonEvent ( "Bb_Get", () => { ManaSign.Get(); ManaReso.SetActive("Bb_Get", false); ManaReso.SetActive("Bb_Rotate", true); ManaReso.SetActive("Bb_Confirm", true); } ); #endregion #region Bb_SignIn tween = ManaReso.Get("Bb_SignIn").CreateTweenCG(0f, 1f, 0.5f, false, true, Curve.EaseOutQuad); tween.OnForwardStart += () => { ManaReso.SetActive("Bb_Get", true); ManaReso.SetActive("Bb_IconB", false); ManaReso.SetActive("Bb_IconA", false); ManaReso.SetActive("Bb_Rotate", false); ManaReso.SetActive("Bb_Confirm", false); }; #endregion #region Bb_Confirm ManaReso.AddButtonEvent ( "Bb_Confirm", () => { ManaReso.Get("B_SignIn").TweenBacCG(); } ); #endregion #endregion #region C ManaLan.Add(ManaReso.Get("C_MiniGameLab"), new LanStr("UI", "C_MiniGameLab")); #region C_Main tween = ManaReso.Get("C_Main").CreateTweenCG(0, 1, 0.25f, false, true, Curve.EaseOutQuad); tween.OnForwardStart += () => { ManaData.MainDepth = -1; }; tween.OnBackwardStart += () => { ManaData.MainDepth = 0; }; #endregion #region C_Setting ManaReso.SetButtonEvent ( "C_Setting", () => { ManaReso.Get("L_Setting").TweenForCG(); } ); #endregion #region C_Achieve ManaReso.AddButtonEvent ( "C_Achieve", () => { ManaReso.Get("M_Achieve0").TweenForVec(); } ); #endregion #region C_Manage ManaReso.AddButtonEvent ( "C_Manage", () => { ManaReso.Get("F_Manage0").TweenForVec(); } ); #endregion #region C_MiniGame tween = ManaReso.Get("C_MiniGame").CreateTweenCG(0, 1, 0.25f, false, true, Curve.EaseOutQuad); ManaReso.AddButtonEvent ( "C_MiniGame", () => { ManaReso.Get("GardenMini").TweenForVec(); ManaReso.Get("D_MiniGame").TweenForCG(); ManaMiniGame.GameEnter(); } ); #endregion #region C_IncomeLab ManaReso.Get("C_IncomeLab").CreateTweenGra(1, 0, 2, true, false, Curve.EaseOutQuad); ManaReso.Get("C_IncomeLab").CreateTweenVec2D(ManaReso.Get("C_Pos").position, 2, false, true, false, Curve.EaseOutQuad); #endregion #endregion #region D ManaReso.SetText("D_ScoreTit"); ManaReso.SetText("D_BeginLab", Language.GetStr("UI", "D_BeginLab0")); ManaReso.SetText("D_StatusLab", Language.GetStr("UI", "D_StatusLab0")); ManaLan.Add(ManaReso.Get("Da_Lab"), new LanStr("UI", "Da_Lab")); ManaLan.Add(ManaReso.Get("Da_ScoreTit"), new LanStr("UI", "Da_ScoreTit")); ManaLan.Add(ManaReso.Get("Da_QuitLab"), new LanStr("UI", "Da_QuitLab")); ManaLan.Add(ManaReso.Get("Da_CancelLab"), new LanStr("UI", "Da_CancelLab")); ManaLan.Add(ManaReso.Get("Da_GetAwardLab"), new LanStr("UI", "Da_GetAwardLab")); #region D_Rip ManaReso.AddButtonEvent ( "D_Rip2", () => { ManaMiniGame.Operate(OpType.Rip); ManaReso.Get("D_Rip2").TweenForScale(); } ); tween = ManaReso.Get("D_Rip2").CreateTweenScale(new Vector3(1, 1, 1), new Vector3(1.2f, 1.2f, 1.2f), 0.1f, true, true, Curve.EaseOutQuad); tween.OnForwardFinish += () => { ManaReso.Get("D_Rip2").TweenBacScale(); }; #endregion #region D_Quit ManaReso.AddButtonEvent ( "D_Quit", () => { ManaMiniGame.Pause = true; ManaReso.Get("Da_Info").TweenConForCG(); ManaReso.Get("Da_CoinGroup").GetTweenScale().InDestination = true; ManaReso.Get("Da_FlowerGroup").GetTweenScale().InDestination = true; ManaReso.Get("Da_DiamondGroup").GetTweenScale().InDestination = true; ManaReso.SetText("Da_Tit", Language.GetStr("UI", "Da_Tit0")); ManaReso.SetActive("Da_Lab", true); ManaReso.SetActive("Da_Quit", true); ManaReso.SetActive("Da_Cancel", true); ManaReso.SetActive("Da_HGroup", false); ManaReso.SetActive("Da_CoinLab", false); ManaReso.SetActive("Da_ScoreTit", false); ManaReso.SetActive("Da_GetAward", false); ManaReso.SetActive("Da_DiamondLab", false); ManaReso.SetActive("Da_DiamondGroup", true); FlowerInfo flowerInfo = ManaGarden.FlowerInfoDic.Random(); Vector2 newSize = flowerInfo.Icon.rect.size; newSize.x *= 0.2f; newSize.y *= 0.2f; ManaReso.Get("Da_FlowerIcon").sprite = flowerInfo.Icon; ManaReso.Get("Da_FlowerIcon").rectTransform.sizeDelta = newSize; ManaReso.SetText("Da_FlowerLab", Language.GetStr("FlowerName", "Flower" + flowerInfo.ID_)); Auxiliary.Instance.DelayCall ( () => { ManaReso.Get("Da_FlowerLab").SetLayoutDirty(); }, 1 ); } ); #endregion #region D_Begin ManaReso.AddButtonEvent ( "D_Begin", () => { ManaMiniGame.Prepare = true; } ); #endregion #region D_Water ManaReso.AddButtonEvent ( "D_Water2", () => { ManaMiniGame.Operate(OpType.Water); ManaReso.Get("D_Water2").TweenForScale(); } ); tween = ManaReso.Get("D_Water2").CreateTweenScale(new Vector3(1, 1, 1), new Vector3(1.2f, 1.2f, 1.2f), 0.1f, true, true, Curve.EaseOutQuad); tween.OnForwardFinish += () => { ManaReso.Get("D_Water2").TweenBacScale(); }; #endregion #region D_Fertilize ManaReso.AddButtonEvent ( "D_Fertilize2", () => { ManaMiniGame.Operate(OpType.Fertilize); ManaReso.Get("D_Fertilize2").TweenForScale(); } ); tween = ManaReso.Get("D_Fertilize2").CreateTweenScale(new Vector3(1, 1, 1), new Vector3(1.2f, 1.2f, 1.2f), 0.1f, true, true, Curve.EaseOutQuad); tween.OnForwardFinish += () => { ManaReso.Get("D_Fertilize2").TweenBacScale(); }; #endregion #region D_MiniGame tween = ManaReso.Get("D_MiniGame").CreateTweenCG(0, 1, 0.5f, false, true, Curve.EaseOutQuad); tween.OnForwardStart += () => { ManaReso.Get("C_Main").TweenBacCG(); ManaReso.Get("MusicTheme").TweenBacAudio(); ManaReso.SetText("D_ScoreTit"); ManaReso.SetText("D_BeginLab", Language.GetStr("UI", "D_BeginLab0")); ManaReso.SetText("D_StatusLab", Language.GetStr("UI", "D_StatusLab0")); ManaData.MainDepth++; ManaGarden.AwardValid = false; }; tween.OnForwardFinish += () => { ManaReso.Get("MusicMini").TweenForAudio(); }; tween.OnBackwardStart += () => { ManaReso.Get("MusicMini").TweenBacAudio(); }; tween.OnBackwardFinish += () => { ManaReso.Get("MusicTheme").TweenForAudio(); ManaGarden.AwardValid = true; for (int i = 0; i < ManaMiniGame.IdleList.Count; i++) { ManaReso.Save(ManaMiniGame.IdleList[i]); ManaMiniGame.IdleList.RemoveAt(i--); } for (int i = 0; i < ManaMiniGame.OpList.Count; i++) { ManaReso.Save(ManaMiniGame.OpList[i]); ManaMiniGame.OpList.RemoveAt(i--); } }; #endregion #region D_PrepareLab ManaReso.Get("D_PrepareLab").CreateTweenGra(1, 0, 0.25f, false, false, Curve.EaseOutQuad); ManaReso.Get("D_PrepareLab").CreateTweenFont(90, 100, 0.25f, false, false, Curve.EaseOutQuad); tween = ManaReso.Get("D_PrepareLab").GetTweenFont(); tween.OnForwardFinish += () => { ManaReso.Get("D_PrepareLab").GetTweenGra().InOrigin = true; ManaReso.Get("D_PrepareLab").GetTweenFont().InOrigin = true; }; #endregion #region Da_Star ManaReso.Get("Da_Star1").CreateTweenScale(new Vector3(), new Vector3(1, 1, 1), 0.25f, false, true, Curve.EaseOutQuad); ManaReso.Get("Da_Star2").CreateTweenScale(new Vector3(), new Vector3(1, 1, 1), 0.25f, false, true, Curve.EaseOutQuad); ManaReso.Get("Da_Star3").CreateTweenScale(new Vector3(), new Vector3(1, 1, 1), 0.25f, false, true, Curve.EaseOutQuad); #endregion #region Da_Info ManaReso.Get("Da_Info").CreateTweenCG(0, 1, 0.25f, false, true, Curve.EaseOutQuad); #endregion #region Da_Quit ManaReso.AddButtonEvent ( "Da_Quit", () => { ManaReso.Get("C_Main").TweenForCG(); ManaReso.Get("Da_Info").TweenBacCG(); ManaReso.Get("GardenMini").TweenBacVec(); ManaReso.Get("D_MiniGame").TweenBacCG(); ManaMiniGame.GameEnd(); } ); #endregion #region Da_Score ManaReso.Get("Da_ScoreTit").CreateTweenFont(1, 25, 0.25f, false, true, Curve.EaseOutQuad); #endregion #region Da_Cancel ManaReso.AddButtonEvent ( "Da_Cancel", () => { ManaReso.Get("Da_Info").TweenBacCG(); ManaMiniGame.Pause = false; } ); #endregion #region Da_GetAward ManaReso.Get("Da_GetAward").CreateTweenCG(0, 1, 0.25f, false, true, Curve.EaseOutQuad); ManaReso.AddButtonEvent ( "Da_GetAward", () => { ManaReso.Get("C_Main").TweenForCG(); ManaReso.Get("Da_Info").TweenBacCG(); ManaReso.Get("GardenMini").TweenBacVec(); ManaReso.Get("D_MiniGame").TweenBacCG(); } ); #endregion #region Da_CoinGroup ManaReso.Get("Da_CoinGroup").CreateTweenScale(new Vector3(), new Vector3(1, 1, 1), 0.25f, false, true, Curve.EaseOutQuad); #endregion #region Da_FlowerGroup ManaReso.Get("Da_FlowerGroup").CreateTweenScale(new Vector3(), new Vector3(1, 1, 1), 0.25f, false, true, Curve.EaseOutQuad); #endregion #region Da_DiamondGroup ManaReso.Get("Da_DiamondGroup").CreateTweenScale(new Vector3(), new Vector3(1, 1, 1), 0.25f, false, true, Curve.EaseOutQuad); #endregion #endregion #region E #region E_Show ManaReso.SetButtonEvent ( "E_ShowBtn", () => { if (ManaReso.Get("E_Group").gameObject.activeSelf) { ManaReso.SetActive("E_Group", false); ManaReso.SetActive("Ea_Central", false); ManaReso.SetText("E_ShowLab", "显示"); } else { ManaReso.SetActive("E_Group", true); ManaReso.SetText("E_ShowLab", "隐藏"); } } ); #endregion #region E_PauseBtn ManaReso.AddButtonEvent ( "E_PauseBtn", () => { ManaDebug.LockBtn(); } ); #endregion #region E_CentralBtn ManaReso.AddButtonEvent ( "E_CentralBtn", () => { ManaReso.SetActive("Ea_Central", true); } ); #endregion #region Ea_Free ManaReso.AddButtonEvent ( "Ea_Free", () => { ManaTutorial.PayExempt = true; } ); #endregion #region Ea_Send ManaReso.AddButtonEvent ( "Ea_Send", () => { ManaData.SaveTimer = 0; ManaServer.Save(); } ); #endregion #region Ea_Close ManaReso.AddButtonEvent ( "Ea_Close", () => { ManaReso.SetActive("Ea_Central", false); } ); #endregion #region Ea_Reset ManaReso.AddButtonEvent ( "Ea_Reset", () => { Data.ResetPlayerConfig(); Data.SaveXml(); } ); #endregion #endregion #region F ManaLan.Add(ManaReso.Get("F_ElfLab"), new LanStr("UI", "F_ElfLab")); ManaLan.Add(ManaReso.Get("F_StoreLab"), new LanStr("UI", "F_StoreLab")); ManaLan.Add(ManaReso.Get("F_MagicLab"), new LanStr("UI", "F_MagicLab")); ManaLan.Add(ManaReso.Get("F_GardenLab"), new LanStr("UI", "F_GardenLab")); ManaLan.Add(ManaReso.Get("Fg_Tit"), new LanStr("UI", "Fg_Tit")); ManaLan.Add(ManaReso.Get("Fg_Lab"), new LanStr("UI", "Fg_Lab0")); ManaLan.Add(ManaReso.Get("Fg_BtnLab"), new LanStr("UI", "Fg_BtnLab")); #region F_Close ManaReso.AddButtonEvent ( "F_Close", () => { ManaReso.Get("F_Manage").TweenBacGra(); } ); #endregion #region F_Flower ManaReso.AddButtonEvent ( "F_Flower", () => { ManaReso.Get("G_Flower").TweenForCG(); } ); #endregion #region F_TabBtn ManaReso.Get("F_Elf").CreateTweenScale(new Vector3(1, 1, 1), new Vector3(1.1f, 1.1f, 1.1f), 0.25f, true, true, Curve.EaseOutQuad); ManaReso.Get("F_Store").CreateTweenScale(new Vector3(1, 1, 1), new Vector3(1.1f, 1.1f, 1.1f), 0.25f, true, true, Curve.EaseOutQuad); ManaReso.Get("F_Magic").CreateTweenScale(new Vector3(1, 1, 1), new Vector3(1.1f, 1.1f, 1.1f), 0.25f, true, true, Curve.EaseOutQuad); ManaReso.Get("F_Garden").CreateTweenScale(new Vector3(1, 1, 1), new Vector3(1.1f, 1.1f, 1.1f), 0.25f, true, true, Curve.EaseOutQuad); ManaReso.AddButtonEvent ( "F_Elf", () => { ManaReso.Get("F_Elf").TweenForScale(); ManaReso.Get("F_Store").TweenConBacScale(); ManaReso.Get("F_Magic").TweenConBacScale(); ManaReso.Get("F_Garden").TweenConBacScale(); ManaReso.Get("F_Elf").SetAsLastSibling(); ManaReso.Get("F_Store").SetSiblingIndex(0); ManaReso.Get("F_Magic").SetSiblingIndex(1); ManaReso.Get("F_Garden").SetSiblingIndex(2); ManaReso.Get