using UnityEngine; using UnityEngine.UI; using UnityEngine.Serialization; using System; using System.Xml; using System.Collections; using System.Collections.Generic; using Random = UnityEngine.Random; public class Award { #region 变量 public static int BonusCoin; public static int BonusDiamond; public int DiamondMin; public int DiamondMax; public string CoinFml; public string FlowerFml; public string DiamondFml; public List Odds; public List Standard; #endregion public Award(XmlAttributeCollection attribute) { CoinFml = attribute[1].Value; FlowerFml = attribute[4].Value; DiamondFml = attribute[3].Value; string[] strings = attribute[2].Value.Split(','); DiamondMin = int.Parse(strings[0]); DiamondMax = int.Parse(strings[1]); strings = attribute[5].Value.Split(','); Odds = new List() { float.Parse(strings[0]), float.Parse(strings[1]), float.Parse(strings[2]), }; strings = attribute[6].Value.Split(','); Standard = new List() { float.Parse(strings[0]), float.Parse(strings[1]), float.Parse(strings[2]), }; } public void GetAward(int score) { if (Initializer.Tutorial) { TutorialAward(score); } else { RegularAward(score); } } private void TutorialAward(int score) { ManaReso.Get("Da_Info").TweenForCG(); ManaReso.SetActive("Da_Lab", false); ManaReso.SetActive("Da_Quit", false); ManaReso.SetActive("Da_Cancel", false); ManaReso.SetActive("Da_VGroup", false); ManaReso.SetActive("Da_HGroup", false); ManaReso.SetActive("Da_ScoreTit", false); ManaReso.SetActive("Da_GetAward", false); ManaReso.SetActive("Da_FlowerGroup", false); ManaReso.SetActive("Da_DiamondGroup", false); bool diamondFlag = false; int coin = (int)Auxiliary.FmlParse(CoinFml, "s", score.ToString()); coin = Mathf.FloorToInt(coin * (1 + ManaData.SkillPlus)) + BonusCoin; ManaData.Coin += coin; int diamond = 0; float diamondRate = (float)Auxiliary.FmlParse(DiamondFml, "l", Mathf.Clamp(ManaData.Level, 1, 1000).ToString()); if (Random.Range(0, 1f) <= diamondRate) { diamondFlag = true; ManaReso.SetActive("Da_Diamond", true); diamond = Mathf.FloorToInt(Mathf.Lerp(DiamondMin, DiamondMax, Random.Range(0, 1f)) + BonusDiamond); ManaData.Diamond += diamond; } else { if (BonusDiamond > 0) { diamondFlag = true; ManaReso.SetActive("Da_Diamond", true); ManaData.Diamond += BonusDiamond; } } int standard; if (score < Standard[1]) { standard = 0; } else if (score < Standard[2]) { standard = 1; } else { standard = 2; } FlowerInfo flowerInfo = ManaGarden.FlowerInfoList[0]; Vector2 newSize = flowerInfo.Sprite.rect.size; newSize.x *= 0.2f; newSize.y *= 0.2f; ManaReso.Get("Da_FlowerIcon").sprite = flowerInfo.Sprite; ManaReso.Get("Da_FlowerIcon").rectTransform.sizeDelta = newSize; ManaReso.SetText("Da_FlowerLab", Language.GetStr("FlowerName", "Flower" + flowerInfo.ID)); BonusCoin = 0; BonusDiamond = 0; ManaReso.SetActive("Da_VGroup", true); ManaReso.SetActive("Da_CoinGroup", true); if (diamondFlag) { ManaReso.SetActive("Da_DiamondGroup", true); } ManaReso.SetActive("Da_FlowerGroup", true); Auxiliary.Instance.DelayCall ( () => { ManaReso.SetActive("Da_FlowerGroup", false); ManaReso.SetActive("Da_DiamondGroup", false); ManaReso.Get("Da_VGroup").GetComponent().enabled = false; }, 1 ); Tween tween = ManaReso.Get("Da_Info").GetTweenCG(); tween.OnForwardFinish = () => { ManaReso.SetActive("Da_HGroup", true); ManaReso.Get("Da_Star1").TweenForScale(); }; ManaReso.SetText("Da_CoinLab", ""); ManaReso.SetText("Da_ScoreLab", ""); ManaReso.SetText("Da_DiamondLab", ""); ManaReso.Get("Da_CoinLab").CreateTweenNumber(0, coin, 1.5f, true, true, Curve.EaseOutQuad); ManaReso.Get("Da_ScoreLab").CreateTweenNumber(0, score, 1.5f, true, true, Curve.EaseOutQuad); ManaReso.Get("Da_DiamondLab").CreateTweenNumber(0, diamond, 1.5f, true, true, Curve.EaseOutQuad); tween = ManaReso.Get("Da_ScoreTit").GetTweenText(); tween.InOrigin = true; tween = ManaReso.Get("Da_Star3").GetTweenScale(); tween.InOrigin = true; tween.OnForwardFinish = null; tween = ManaReso.Get("Da_Star2").GetTweenScale(); tween.InOrigin = true; tween.OnForwardFinish = null; tween = ManaReso.Get("Da_Star1").GetTweenScale(); tween.InOrigin = true; tween.OnForwardFinish = null; if (standard == 0) { ManaReso.SetActive("Da_Star2", false); ManaReso.SetActive("Da_Star3", false); } else if (standard == 1) { ManaReso.SetActive("Da_Star2", true); ManaReso.SetActive("Da_Star3", false); tween = ManaReso.Get("Da_Star1").GetTweenScale(); tween.OnForwardFinish += () => { ManaReso.Get("Da_Star2").TweenForScale(); }; tween = ManaReso.Get("Da_Star2").GetTweenScale(); } else if (standard == 2) { ManaReso.SetActive("Da_Star2", true); ManaReso.SetActive("Da_Star3", true); tween = ManaReso.Get("Da_Star1").GetTweenScale(); tween.OnForwardFinish += () => { ManaReso.Get("Da_Star2").TweenForScale(); }; tween = ManaReso.Get("Da_Star2").GetTweenScale(); tween.OnForwardFinish += () => { ManaReso.Get("Da_Star3").TweenForScale(); }; tween = ManaReso.Get("Da_Star3").GetTweenScale(); } tween.OnForwardFinish = () => { ManaReso.Get("Da_ScoreTit").TweenForText(); }; tween = ManaReso.Get("Da_ScoreTit").GetTweenText(); tween.OnForwardFinish = () => { ManaReso.Get("Da_ScoreLab").TweenForNumber(); }; tween = ManaReso.Get("Da_ScoreLab").GetTweenNumber(); tween.OnForwardFinish = () => { ManaReso.Get("Da_VGroup").alpha = 1; ManaReso.SetActive("Da_VGroup", true); ManaReso.Get("Da_CoinGroup").TweenForScale(); if (diamondFlag) { ManaReso.Get("Da_DiamondGroup").TweenForScale(); } }; tween = ManaReso.Get("Da_CoinGroup").GetTweenScale(); tween.OnForwardFinish = () => { ManaReso.Get("Da_CoinLab").TweenForNumber(); }; tween = ManaReso.Get("Da_CoinLab").GetTweenNumber(); if (diamondFlag) { tween = ManaReso.Get("Da_DiamondGroup").GetTweenScale(); tween.OnForwardFinish = () => { ManaReso.Get("Da_DiamondLab").TweenForNumber(); }; tween = ManaReso.Get("Da_DiamondLab").GetTweenNumber(); } else { ManaReso.Get("Da_DiamondGroup").GetTweenScale().OnForwardFinish = () => { }; } tween = ManaReso.Get("Da_CoinLab").GetTweenNumber(); tween.OnForwardFinish = () => { ManaReso.SetActive("Da_FlowerGroup", true); ManaReso.Get("Da_FlowerGroup").TweenForScale(); }; tween = ManaReso.Get("Da_FlowerGroup").GetTweenScale(); tween.OnForwardFinish = () => { ManaReso.Get("Da_GetAward").TweenForCG(); }; } private void RegularAward(int score) { ManaReso.Get("Da_Info").TweenForCG(); ManaReso.SetActive("Da_Lab", false); ManaReso.SetActive("Da_Quit", false); ManaReso.SetActive("Da_Cancel", false); ManaReso.SetActive("Da_VGroup", false); ManaReso.SetActive("Da_HGroup", false); ManaReso.SetActive("Da_ScoreTit", false); ManaReso.SetActive("Da_GetAward", false); ManaReso.SetActive("Da_FlowerGroup", false); ManaReso.SetActive("Da_DiamondGroup", false); bool flowerFlag = false; bool diamondFlag = false; int coin = (int)Auxiliary.FmlParse(CoinFml, "s", score.ToString()); coin = (int)(coin * (1 + ManaData.SkillPlus)) + BonusCoin; ManaData.Coin += coin; int diamond = 0; float diamondRate = (float)Auxiliary.FmlParse(DiamondFml, "l", Mathf.Clamp(ManaData.Level, 1, 1000).ToString()); if (Random.Range(0, 1f) <= diamondRate) { diamondFlag = true; ManaReso.SetActive("Da_Diamond", true); diamond = (int)Mathf.Lerp(DiamondMin, DiamondMax, Random.Range(0, 1f)) + BonusDiamond; ManaData.Diamond += diamond; } else { if (BonusDiamond > 0) { diamondFlag = true; ManaReso.SetActive("Da_Diamond", true); ManaData.Diamond += BonusDiamond; } } int standard; if (score < Standard[1]) { standard = 0; } else if (score < Standard[2]) { standard = 1; } else { standard = 2; } float flowerRate = (float)Auxiliary.FmlParse(DiamondFml, "l", ManaData.Level.ToString(), "f", ManaGarden.MyFlower.ToString()); if (Random.Range(0, 1f) <= flowerRate) { if (Random.Range(0, 1f) <= Odds[standard]) { int Anti = 0; FlowerInfo flowerInfo; while (true) { Anti++; if (Anti > 1000) { throw new Exception(); } flowerInfo = ManaGarden.FlowerInfoList.Random(); if (flowerInfo.Unlock) { flowerFlag = true; Vector2 newSize = flowerInfo.Sprite.rect.size; newSize.x *= 0.2f; newSize.y *= 0.2f; ManaReso.Get("Da_FlowerIcon").sprite = flowerInfo.Sprite; ManaReso.Get("Da_FlowerIcon").rectTransform.sizeDelta = newSize; ManaReso.SetText("Da_FlowerLab", Language.GetStr("FlowerName", "Flower" + flowerInfo.ID)); break; } } } } BonusCoin = 0; BonusDiamond = 0; ManaReso.SetActive("Da_VGroup", true); ManaReso.SetActive("Da_CoinGroup", true); if (diamondFlag) { ManaReso.SetActive("Da_DiamondGroup", true); } if (flowerFlag) { ManaReso.SetActive("Da_FlowerGroup", true); } Auxiliary.Instance.DelayCall ( () => { ManaReso.SetActive("Da_FlowerGroup", false); ManaReso.SetActive("Da_DiamondGroup", false); ManaReso.Get("Da_VGroup").GetComponent().enabled = false; }, 1 ); Tween tween = ManaReso.Get("Da_Info").GetTweenCG(); tween.OnForwardFinish = () => { ManaReso.SetActive("Da_HGroup", true); ManaReso.Get("Da_Star1").TweenForScale(); }; ManaReso.SetText("Da_CoinLab", ""); ManaReso.SetText("Da_ScoreLab", ""); ManaReso.SetText("Da_DiamondLab", ""); ManaReso.Get("Da_CoinLab").CreateTweenNumber(0, coin, 1.5f, true, true, Curve.EaseOutQuad); ManaReso.Get("Da_ScoreLab").CreateTweenNumber(0, score, 1.5f, true, true, Curve.EaseOutQuad); ManaReso.Get("Da_DiamondLab").CreateTweenNumber(0, diamond, 1.5f, true, true, Curve.EaseOutQuad); tween = ManaReso.Get("Da_ScoreTit").GetTweenText(); tween.InOrigin = true; tween = ManaReso.Get("Da_Star3").GetTweenScale(); tween.InOrigin = true; tween.OnForwardFinish = null; tween = ManaReso.Get("Da_Star2").GetTweenScale(); tween.InOrigin = true; tween.OnForwardFinish = null; tween = ManaReso.Get("Da_Star1").GetTweenScale(); tween.InOrigin = true; tween.OnForwardFinish = null; if (standard == 0) { ManaReso.SetActive("Da_Star2", false); ManaReso.SetActive("Da_Star3", false); } else if (standard == 1) { ManaReso.SetActive("Da_Star2", true); ManaReso.SetActive("Da_Star3", false); tween = ManaReso.Get("Da_Star1").GetTweenScale(); tween.OnForwardFinish += () => { ManaReso.Get("Da_Star2").TweenForScale(); }; tween = ManaReso.Get("Da_Star2").GetTweenScale(); } else if (standard == 2) { ManaReso.SetActive("Da_Star2", true); ManaReso.SetActive("Da_Star3", true); tween = ManaReso.Get("Da_Star1").GetTweenScale(); tween.OnForwardFinish += () => { ManaReso.Get("Da_Star2").TweenForScale(); }; tween = ManaReso.Get("Da_Star2").GetTweenScale(); tween.OnForwardFinish += () => { ManaReso.Get("Da_Star3").TweenForScale(); }; tween = ManaReso.Get("Da_Star3").GetTweenScale(); } tween.OnForwardFinish = () => { ManaReso.Get("Da_ScoreTit").TweenForText(); }; tween = ManaReso.Get("Da_ScoreTit").GetTweenText(); tween.OnForwardFinish = () => { ManaReso.Get("Da_ScoreLab").TweenForNumber(); }; tween = ManaReso.Get("Da_ScoreLab").GetTweenNumber(); tween.OnForwardFinish = () => { ManaReso.Get("Da_VGroup").alpha = 1; ManaReso.SetActive("Da_VGroup", true); ManaReso.Get("Da_CoinGroup").TweenForScale(); if (diamondFlag) { ManaReso.Get("Da_DiamondGroup").TweenForScale(); } }; tween = ManaReso.Get("Da_CoinGroup").GetTweenScale(); tween.OnForwardFinish = () => { ManaReso.Get("Da_CoinLab").TweenForNumber(); }; tween = ManaReso.Get("Da_CoinLab").GetTweenNumber(); if (diamondFlag) { tween = ManaReso.Get("Da_DiamondGroup").GetTweenScale(); tween.OnForwardFinish = () => { ManaReso.Get("Da_DiamondLab").TweenForNumber(); }; tween = ManaReso.Get("Da_DiamondLab").GetTweenNumber(); } else { ManaReso.Get("Da_DiamondGroup").GetTweenScale().OnForwardFinish = () => { }; } if (flowerFlag) { tween = ManaReso.Get("Da_CoinLab").GetTweenNumber(); tween.OnForwardFinish = () => { ManaReso.SetActive("Da_FlowerGroup", true); ManaReso.Get("Da_FlowerGroup").TweenForScale(); }; tween = ManaReso.Get("Da_FlowerGroup").GetTweenScale(); } else { ManaReso.Get("Da_CoinLab").GetTweenNumber().OnForwardFinish = () => { }; } tween.OnForwardFinish = () => { ManaReso.Get("Da_GetAward").TweenForCG(); }; } } public class ManaMiniGame : Regist { #region 变量 public static int Score { get { return _Score; } set { _Score = value; ManaReso.SetText("D_ScoreLab", _Score.ToString()); } } public static bool Game { get { return _Game; } set { _Game = value; if (_Game) { ManaReso.SetText("D_StatusLab", Language.GetStr("UI", "D_StatusLab1")); } else { ManaReso.SetText("D_StatusLab", Language.GetStr("UI", "D_StatusLab0")); } } } public static bool Pause { get { return _Pause; } set { _Pause = value; if (Game) { if (_Pause) { ManaReso.SetText("D_StatusLab", Language.GetStr("UI", "D_StatusLab2")); } else { ManaReso.SetText("D_StatusLab", Language.GetStr("UI", "D_StatusLab1")); } } } } public static bool Panalty { get { return _Panalty; } set { _Panalty = value; if (_Panalty) { ManaReso.SetText("D_StatusLab", Language.GetStr("UI", "D_StatusLab3")); } else { ManaReso.SetText("D_StatusLab", Language.GetStr("UI", "D_StatusLab1")); } } } public static bool Prepare { get { return _Prepare; } set { _Prepare = value; if (Prepare) { PrepareTimer = 3; ManaReso.Get("D_Rip1").SetActive(true); ManaReso.Get("D_Water1").SetActive(true); ManaReso.Get("D_Fertilize1").SetActive(true); ManaReso.Get("D_Begin").SetActive(false); PrepareLab.SetActive(true); } } } public static float GameTimer { get { return _GameTimer; } set { _GameTimer = value; TimerIcon.fillAmount = _GameTimer / GameTime; TimerLab.text = _GameTimer.ToString("0.0"); } } public static float PrepareTimer { get { return _PrepareTimer; } set { _PrepareTimer = value; PrepareLab.text = Mathf.CeilToInt(_PrepareTimer).ToString(); } } private static int _Score; private static bool _Game; private static bool _Pause; private static bool _Panalty; private static bool _Prepare; private static float _GameTimer; private static float _PrepareTimer; public static int MiniGameIndex; public static bool TutorialValid = true; public static bool DropDiamond; public static List GoldList; public static List DiamondList; public static Text BtnLab; public static Text TimerLab; public static Text PrepareLab; public static Image TimerIcon; public static Award Award; public static List OpList; public static List IdleList; private static float OpTime; private static float OpTimer; private static float GoldTimer; private static float GameTime; private static float PanaltyTime; private static float PanaltyTimer; private static float DIamondTimer; #endregion private void FixedUpdate() { if (Initializer.Tutorial) { TutorialFixedUpdate(); } else { RegularFixedUpdate(); } } private void TutorialFixedUpdate() { if (Pause) { return; } if (Prepare) { PrepareTimer -= Time.fixedDeltaTime; if (PrepareTimer <= 0) { GameBegin(); PrepareLab.text = Language.GetStr("UI", "D_PrepareLab"); PrepareLab.TweenForGra(); PrepareLab.TweenForText(); } } if (Game == false) { return; } GoldTimer -= Time.fixedDeltaTime; if (GoldTimer < 0) { GoldTimer = Random.Range(3f, 6f); GoldList.Add(ManaReso.GetGold()); } if (DropDiamond) { DIamondTimer -= Time.fixedDeltaTime; if (DIamondTimer < 0) { DropDiamond = false; DiamondList.Add(ManaReso.GetDiamond()); } } GameTimer -= Time.fixedDeltaTime; if (GameTimer <= 0) { GameOver(); return; } if (Panalty) { PanaltyTimer -= Time.fixedDeltaTime; if (PanaltyTimer <= 0) { Panalty = false; } } if (IdleList.Count > 0) { OpTimer -= Time.fixedDeltaTime; if (OpTimer <= 0) { OpTime -= OpTime * 0.03f; OpTimer = OpTime; Flower flower = IdleList[Random.Range(0, IdleList.Count)]; flower.CreateOp(OpList.Count); OpList.Add(flower); IdleList.Remove(flower); if (TutorialValid) { Pause = true; TutorialValid = false; if (OpList[0].OpType == OpType.Rip) { Tutorial.HightScreen(ManaReso.Get("D_RipArrow0"), ManaReso.Get("D_RipArrow1"), ManaReso.Get("D_Rip1")); ManaReso.AddButtonEvent ( "D_Rip2", () => { Pause = false; Tutorial.HightDisable(); } ); } else if (OpList[0].OpType == OpType.Water) { Tutorial.HightScreen(ManaReso.Get("D_WaterArrow0"), ManaReso.Get("D_WaterArrow1"), ManaReso.Get("D_Water1")); ManaReso.AddButtonEvent ( "D_Water2", () => { Pause = false; Tutorial.HightDisable(); } ); } else if (OpList[0].OpType == OpType.Fertilize) { Tutorial.HightScreen(ManaReso.Get("D_FertilizeArrow0"), ManaReso.Get("D_Fertilize2"), ManaReso.Get("D_Fertilize1")); ManaReso.AddButtonEvent ( "D_Fertilize2", () => { Pause = false; Tutorial.HightDisable(); } ); } SceneMask.SetArea(OpList[0].OperateIcon.transform, 0.1f, 0.125f); } } } } private void RegularFixedUpdate() { if (Pause) { return; } if (Prepare) { PrepareTimer -= Time.fixedDeltaTime; if (PrepareTimer <= 0) { GameBegin(); PrepareLab.text = Language.GetStr("UI", "D_PrepareLab"); PrepareLab.TweenForGra(); PrepareLab.TweenForText(); } } if (Game == false) { return; } GoldTimer -= Time.fixedDeltaTime; if (GoldTimer < 0) { GoldTimer = Random.Range(3f, 6f); GoldList.Add(ManaReso.GetGold()); } if (DropDiamond) { DIamondTimer -= Time.fixedDeltaTime; if (DIamondTimer < 0) { DropDiamond = false; DiamondList.Add(ManaReso.GetDiamond()); } } GameTimer -= Time.fixedDeltaTime; if (GameTimer <= 0) { GameOver(); return; } if (Panalty) { PanaltyTimer -= Time.fixedDeltaTime; if (PanaltyTimer <= 0) { Panalty = false; } } if (IdleList.Count > 0) { OpTimer -= Time.fixedDeltaTime; if (OpTimer <= 0) { OpTime -= OpTime * 0.03f; OpTimer = OpTime; Flower flower = IdleList[Random.Range(0, IdleList.Count)]; flower.CreateOp(OpList.Count); OpList.Add(flower); IdleList.Remove(flower); } } } public override void RegistValueA() { OpTime = 1.5f; GameTime = 5; PanaltyTime = 1; OpTimer = OpTime; GameTimer = GameTime; MiniGameIndex = Data.PlayerInt("MiniGameIndex"); Award = new Award(Data.GetAwardConfig()); PrepareLab.color = ManaColor.Orange; PrepareLab.CreateTweenGra(1, 0, 0.25f, true, false, Curve.EaseOutQuad); Tween tween = PrepareLab.CreateTweenText(90, 100, 0.25f, true, false, Curve.EaseOutQuad); tween.OnForwardFinish += () => { PrepareLab.SetAlpha(1); PrepareLab.fontSize = 90; }; } public override void TutorialRegistValue() { RegistValueA(); } public override void RegistReference() { TimerIcon = ManaReso.Get("D_TimerIcon"); BtnLab = ManaReso.Get("D_BeginLab"); TimerLab = ManaReso.Get("D_TimerLab"); PrepareLab = ManaReso.Get("D_PrepareLab"); } public override void TutorialRegistReference() { RegistReference(); } #region MiniGame public static void Rip() { if (Panalty) { return; } if (OpList.Count == 0) { return; } if (OpList[0].Operate(OpType.Rip)) { IdleList.Add(OpList[0]); OpList.Remove(OpList[0]); ResetOperate(); } else { Panalty = true; PanaltyTimer = PanaltyTime; } } public static void Water() { if (Panalty) { return; } if (OpList.Count == 0) { return; } if (OpList[0].Operate(OpType.Water)) { IdleList.Add(OpList[0]); OpList.Remove(OpList[0]); ResetOperate(); } else { Panalty = true; PanaltyTimer = PanaltyTime; } } public static void Fertilize() { if (Panalty) { return; } if (OpList.Count == 0) { return; } if (OpList[0].Operate(OpType.Fertilize)) { IdleList.Add(OpList[0]); OpList.Remove(OpList[0]); ResetOperate(); } else { Panalty = true; PanaltyTimer = PanaltyTime; } } public static void GameOver() { ManaData.MiniGame++; Award.GetAward(Score); GameAbort(); } public static void GameBegin() { MiniGameIndex++; GoldTimer = Random.Range(3f, 6f); DIamondTimer = Random.Range(0f, 40f); ManaDebug.Log(string.Format("第{0}次小游戏", MiniGameIndex)); if (Random.Range(5, 9) <= MiniGameIndex) { MiniGameIndex = 0; DropDiamond = true; } else { if (Random.Range(0, 1f) <= 0.01f) { DropDiamond = true; } else { DropDiamond = false; } } Score = 0; Game = true; Pause = false; Panalty = false; Prepare = false; OpTimer = OpTime; GameTimer = GameTime; PanaltyTimer = 0; for (int i = 0; i < IdleList.Count; i++) { IdleList[i].GameBegin(); } } public static void GameAbort() { PrepareLab.SetActive(false); ManaGarden.AwardLock = false; for (int i = 0; i < GoldList.Count; i++) { GoldList[i].Retrieve(); } for (int i = 0; i < DiamondList.Count; i++) { DiamondList[i].Retrieve(); } if (Game) { ManaData.Mini = false; ManaData.MiniTimer = Mathf.Lerp(180, 300, Random.Range(0, 1f)); ManaReso.Get("C_MiniGame").TweenBacCG(); ManaDebug.Log(string.Format("{0:0}秒后激活小游戏", ManaData.MiniTimer)); } ManaReso.SetActive("D_Rip1", false); ManaReso.SetActive("D_Water1", false); ManaReso.SetActive("D_Fertilize1", false); ManaReso.SetActive("D_Begin", true); ManaReso.SetText("Da_Tit", string.Format(Language.GetStr("UI", "Da_Tit1"))); Score = 0; Game = false; Pause = false; Panalty = false; Prepare = false; OpTimer = OpTime; GameTimer = GameTime; PanaltyTimer = 0; for (int i = 0; i < IdleList.Count; i++) { IdleList[i].GameOver(); } for (int i = 0; i < OpList.Count; i++) { OpList[i].GameOver(); } } public static void GamePrepare() { if (Initializer.Tutorial) { TutorialPrepare(); } else { RegularPrepare(); } } public static void ResetOperate() { if (OpList.Count >= 2) { OpList[0].SetFirstOp(); OpList[1].SetSecondOp(); } else if (OpList.Count >= 1) { OpList[0].SetFirstOp(); } } private static void TutorialPrepare() { GoldList = new List(); DiamondList = new List(); ManaReso.SetText("Da_CoinLab", ""); ManaReso.SetText("Da_FlowerLab", ""); ManaReso.SetText("Da_DiamondLab", ""); ManaReso.SetActive("Da_Coin", true); ManaReso.SetActive("Da_Flower", true); ManaReso.SetActive("Da_Diamond", true); ManaGarden.AwardLock = true; OpList = new List(); IdleList = new List(); IdleList.Add(ManaReso.GetFlower(ManaGarden.FlowerInfoList[0], ManaReso.Get("SlotMini1"))); IdleList.Add(ManaReso.GetFlower(ManaGarden.FlowerInfoList[0], ManaReso.Get("SlotMini2"))); IdleList.Add(ManaReso.GetFlower(ManaGarden.FlowerInfoList[0], ManaReso.Get("SlotMini3"))); IdleList.Add(ManaReso.GetFlower(ManaGarden.FlowerInfoList[0], ManaReso.Get("SlotMini4"))); IdleList.Add(ManaReso.GetFlower(ManaGarden.FlowerInfoList[0], ManaReso.Get("SlotMini5"))); IdleList.Add(ManaReso.GetFlower(ManaGarden.FlowerInfoList[0], ManaReso.Get("SlotMini6"))); IdleList.Add(ManaReso.GetFlower(ManaGarden.FlowerInfoList[0], ManaReso.Get("SlotMini7"))); IdleList.Add(ManaReso.GetFlower(ManaGarden.FlowerInfoList[0], ManaReso.Get("SlotMini8"))); IdleList.Add(ManaReso.GetFlower(ManaGarden.FlowerInfoList[0], ManaReso.Get("SlotMini9"))); } private static void RegularPrepare() { GoldList = new List(); DiamondList = new List(); ManaReso.SetText("Da_CoinLab", ""); ManaReso.SetText("Da_FlowerLab", ""); ManaReso.SetText("Da_DiamondLab", ""); ManaReso.SetActive("Da_Coin", true); ManaReso.SetActive("Da_Flower", true); ManaReso.SetActive("Da_Diamond", true); ManaGarden.AwardLock = true; OpList = new List(); IdleList = new List(); IdleList.Add(ManaReso.GetFlower(ManaGarden.FlowerInfoList[0], ManaReso.Get("SlotMini1"))); IdleList.Add(ManaReso.GetFlower(ManaGarden.FlowerInfoList[1], ManaReso.Get("SlotMini2"))); IdleList.Add(ManaReso.GetFlower(ManaGarden.FlowerInfoList[2], ManaReso.Get("SlotMini3"))); IdleList.Add(ManaReso.GetFlower(ManaGarden.FlowerInfoList[3], ManaReso.Get("SlotMini4"))); IdleList.Add(ManaReso.GetFlower(ManaGarden.FlowerInfoList[4], ManaReso.Get("SlotMini5"))); IdleList.Add(ManaReso.GetFlower(ManaGarden.FlowerInfoList[5], ManaReso.Get("SlotMini6"))); IdleList.Add(ManaReso.GetFlower(ManaGarden.FlowerInfoList[6], ManaReso.Get("SlotMini7"))); IdleList.Add(ManaReso.GetFlower(ManaGarden.FlowerInfoList[7], ManaReso.Get("SlotMini8"))); IdleList.Add(ManaReso.GetFlower(ManaGarden.FlowerInfoList[8], ManaReso.Get("SlotMini9"))); } #endregion }