using LitJson; using UnityEngine; using UnityEngine.UI; using UnityEngine.Events; 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 bool Complete; public static ManaUI Instance; public static Coroutine StopCreditsCoroutine; public static Transform Canvas; public static Transform Camera; public static Transform Transform; public static Transform EventSystem; #endregion public static void InitialInstantiate() { if (Complete) { return; } if (Bundle.UI == null) { return; } Transform tra = new GameObject("UI").transform; tra.parent = Transform; Canvas = ManaReso.Get("Canvas", Folder.UI, false, tra, false, ObjType.Canvas); Camera = ManaReso.Get("MainCamera", Folder.UI, true, tra, false, ObjType.MainCamera); EventSystem = ManaReso.Get("EventSystem", Folder.UI, false, tra, false, ObjType.EventSystem); tra = ManaReso.Get("GroupA", Folder.UI, true, Canvas, false, ObjType.GroupA); tra.SetActive(true); tra = ManaReso.Get("GroupB", Folder.UI, true, Canvas, false, ObjType.GroupB); tra.SetActive(true); tra = ManaReso.Get("GroupC", Folder.UI, true, Canvas, false, ObjType.GroupC); tra.SetActive(true); tra = ManaReso.Get("GroupE", Folder.UI, true, Canvas, false, ObjType.GroupE); tra.SetActive(true); tra = ManaReso.Get("GroupD", Folder.UI, true, Canvas, false, ObjType.GroupD); tra.SetActive(true); ManaReso.TraDic.Add(Canvas.name, Canvas); Complete = true; } public override bool RegistImmed() { if (base.RegistImmed()) { return true; } Transform = transform; return false; } public override void Instantiate() { InitialInstantiate(); } public override void RegistValueA() { Instance = this; #region B ManaReso.SetSprite("Ba_Icon", ManaReso.LoadSprite("大金币图标", Folder.Scene)); ManaReso.SetSprite("Bb_IconB", ManaReso.LoadSprite("大金币图标", Folder.Scene)); ManaLan.Add(ManaReso.Get("Ba_Lab"), new LanStr("UI", "Ba_Lab")); ManaLan.Add(ManaReso.Get("Ba_ConfirmLab"), new LanStr("UI", "Ba_ConfirmLab")); ManaLan.Add(ManaReso.Get("Bb_Title"), new LanStr("UI", "Bb_Title")); ManaLan.Add(ManaReso.Get("Bb_GetLab"), new LanStr("UI", "Bb_GetLab")); ManaLan.Add(ManaReso.Get("Bb_ConfirmLab"), new LanStr("UI", "Bb_ConfirmLab")); ManaLan.Add(ManaReso.Get("Bc_Lab"), new LanStr("UI", "Bc_Lab")); ManaLan.Add(ManaReso.Get("Bc_ConfirmLab"), new LanStr("UI", "Bc_ConfirmLab")); ManaLan.Add(ManaReso.Get("Bd_GetLab"), new LanStr("UI", "Bd_GetLab")); ManaLan.Add(ManaReso.Get("Bd_Title"), new LanStr("UI", "Bd_Title")); #region B_SignIn TweenRoot tween = ManaReso.Get("B_SignIn").CreateTweenCG(0f, 1f, 0.5f, false, true, Curve.EaseOutQuad); tween.OnForwardStart += () => { ManaReso.Get("C_Group0").TweenBacCG(); }; tween.OnBackwardFinish += () => { ManaReso.Get("C_Group0").TweenForCG(); ManaReso.Get("C_Group").GetTweenCG().InOrigin = true; }; #endregion #region B_SignIn0 ManaReso.Get("B_SignIn0").CreateTweenCG(0f, 1f, 0.5f, false, true, Curve.EaseOutQuad); #endregion #region Ba_Notice ManaReso.Get("Ba_Notice").CreateTweenCG(0f, 1f, 0.5f, false, true, Curve.EaseOutQuad); ManaReso.Get("Ba_Notice0").CreateTweenCG(0f, 1f, 0.5f, false, true, Curve.EaseOutQuad); #endregion #region Ba_Confirm ManaReso.AddButtonEvent ( "Ba_Confirm", () => { ManaAudio.PlayClip(Clip.CurrentClip); ManaReso.Get("Ba_Notice").TweenBacCG(); ManaCenter.OfflineLock = false; if (!ManaSign.ShowOfflinePanel()) { ManaReso.Get("B_SignIn").TweenBacCG(); } } ); #endregion #region Bb_Get ManaReso.AddButtonEvent ( "Bb_Get", () => { ManaSign.GetSignReward(); } ); #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", () => { ManaAudio.PlayClip(Clip.BtnClip); ManaReso.Get("B_SignIn").TweenBacCG(); ManaReso.Get("Bb_SignIn").TweenBacCG(); ManaSign.ShowOfflinePanel(); } ); #endregion #region Bc_Lottery ManaReso.Get("Bc_Lab").CreateTweenCG(0, 1, 0.25f, false, true, Curve.EaseOutQuad); ManaReso.Get("Bc_Lottery").CreateTweenCG(0, 1, 0.25f, false, true, Curve.EaseOutQuad); ManaReso.Get("Bc_Confirm").CreateTweenCG(0, 1, 0.25f, false, true, Curve.EaseOutQuad); ManaReso.Get("Bc_LotteryItem1").CreateTweenEuler(new Vector3(0, 180, 0), 0.25f, false, true, true, Curve.EaseOutQuad); ManaReso.Get("Bc_LotteryItem2").CreateTweenEuler(new Vector3(0, 180, 0), 0.25f, false, true, true, Curve.EaseOutQuad); ManaReso.Get("Bc_LotteryItem3").CreateTweenEuler(new Vector3(0, 180, 0), 0.25f, false, true, true, Curve.EaseOutQuad); tween = ManaReso.Get("Bc_LotteryBK12").CreateTweenGra(new Color(242/255f, 255/255f, 142/255f, 180/255f), 1, true, true, Curve.EaseOutQuad); tween.PingPong = true; tween.StartForward(); tween = ManaReso.Get("Bc_LotteryBK22").CreateTweenGra(new Color(242 / 255f, 255 / 255f, 142 / 255f, 180 / 255f), 1, true, true, Curve.EaseOutQuad); tween.PingPong = true; tween.StartForward(); tween = ManaReso.Get("Bc_LotteryBK32").CreateTweenGra(new Color(242 / 255f, 255 / 255f, 142 / 255f, 180 / 255f), 1, true, true, Curve.EaseOutQuad); tween.PingPong = true; tween.StartForward(); ManaReso.SetButtonEvent("Bc_Confirm", Lottery.EndAnimation); #endregion #region Bd_Get ManaReso.AddButtonEvent ( "Bd_Get", () => { ManaAudio.PlayClip(Clip.BtnClip); ManaReso.Get("Bd_Mail0").TweenBacCG(); if (!ManaSign.ShowOfflinePanel()) { ManaReso.Get("B_SignIn").TweenBacCG(); } } ); #endregion #region Bd_Mail0 TweenRoot tweenRoot9 = ManaReso.Get("Bd_Mail0").CreateTweenCG(0, 1, 0.25f, false, true, Curve.EaseOutQuad); tweenRoot9.OnBackwardFinish = () => { for (int i = 0; i < ManaReso.Get("Bd_Grid").childCount; i++) { ManaReso.Save(ManaReso.Get("Bd_Grid").GetChild(i--)); } }; #endregion #endregion #region C ManaReso.SetSprite("C_Coin", ManaReso.LoadSprite("金币", Folder.Atlas)); ManaLan.Add(ManaReso.Get("C_MiniGameLab"), new LanStr("UI", "C_MiniGameLab")); #region C_Main ManaReso.Get("C_Main").CreateTweenCG(0, 1, 0.25f, false, true, Curve.EaseOutQuad); #endregion #region C_Main2 ManaReso.Get("C_Main2").CreateTweenCG(0, 1, 0.25f, false, true, Curve.EaseOutQuad); #endregion #region C_Group ManaReso.Get("C_Group").CreateTweenCG(0, 1, 0.25f, false, true, Curve.EaseOutQuad); ManaReso.Get("C_Group0").CreateTweenCG(0, 1, 0.25f, false, true, Curve.EaseOutQuad); #endregion #region C_Setting ManaReso.SetButtonEvent ( "C_Setting", () => { ManaAudio.PlayClip(Clip.BtnClip); ManaReso.Get("L_Setting").TweenForCG(); } ); #endregion #region C_Achieve tween = ManaAnim.CreateTweenOutline(ManaReso.Get("C_Achieve"), 0, 201/255f, 1f, true, true, Curve.EaseOutQuad); tween.PingPong = true; ManaReso.AddButtonEvent ( "C_Achieve", () => { ManaReso.Get("M_Achieve0").TweenForVec(); ManaAudio.PlayClip(Clip.BtnClip); } ); #endregion #region C_Manage tween = ManaAnim.CreateTweenOutline(ManaReso.Get("C_Manage"), 0, 201 / 255f, 1f, true, true, Curve.EaseOutQuad); tween.PingPong = true; ManaReso.AddButtonEvent ( "C_Manage", () => { ManaReso.Get("F_Manage0").TweenForVec(); ManaAudio.PlayClip(Clip.BtnClip); } ); #endregion #region C_MiniGame Vector3 big = ManaReso.Get("C_MiniGame").sizeDelta; Vector3 small = big*0.5f; TweenRoot tweenRoot = ManaReso.Get("C_MiniGame").CreateTweenRect(big, small, 1f, true, true, Curve.EaseOutQuad, true); tweenRoot.OnForwardStart = () => { TweenOutline tweenOutline = ManaReso.Get("C_MiniGame").GetTweenOutline(); tweenOutline.PingPong = false; tweenOutline.StartBackward(); }; tweenRoot.OnForwardFinish = () => { TweenOutline tweenOutline = ManaReso.Get("C_MiniGame").GetTweenOutline(); tweenOutline.Target.enabled = false; ManaReso.Get