private void UpFinish(object[] data) { CommTool.SaveIntData(CatchTimes.PlayerCatch.ToString()); // Stop = true; GameEntity ge = listPang.Find(e => e.catchty != CatchTy.CatchErrorPos);//抓中的 CatchTy tempCatch = ge == null ? CatchTy.CatchErrorPos : ge.catchty; EventHandler.ExcuteMsgEvent(EventHandlerType.Success, tempCatch); if (ge != null && ge.catchty == CatchTy.Catch) { tempPange.SetActive(false); tempPange.transform.SetParent(parentPang.transform); tempPange.transform.localPosition = Vector3.zero; } }
IEnumerator WinPlay(CatchTy cat) { SDKManager.Instance.gameStatus.SetGameNumber(time_ci - 1); if (cat == CatchTy.Catch) { MyFuncPerSecond func = null; #region 异物 if (!SDKManager.Instance.isTabke())//出口有异物 { UIManager.Instance.ShowUI(UIPromptPage.NAME, true, CatchTy.HasBoy); List <ExcelTableEntity> etable = SDKManager.Instance.GetVoiceForType(VoiceType.Special); func = (ref float t) => { if (t == 20 && !SDKManager.Instance.isTakeAway) { SDKManager.Instance.Speak(etable[1].TimeContent);//播放音效 } if (t == 0) { t = 21; } return(SDKManager.Instance.isTakeAway); }; yield return(SDKManager.Instance.TimeFun(20, 1, func)); } #endregion #region 胜利等待取走礼物 succNum++; SDKManager.Instance.gameStatus.SetIsCatch(true); SDKManager.Instance.RecordTimes(succNum, true); UIManager.Instance.ShowUI(UIPromptPage.NAME, true, CatchTy.Catch); SDKManager.Instance.AutoSendPresent(); //自动出礼物 CommTool.SaveIntData(CatchTimes.Catch.ToString()); AudioManager.Instance.PlayByName(AudioType.Fixed, AudioNams.shengli, false); //播放胜利音效 SDKManager.Instance.WonDoll(true); //摆动翅膀闪光带 EffectMrg.ShowEffect(); //播放特效 SDKManager.Instance.Speak(elist[0].WinningContent); int winTime = Convert.ToInt32(elist[0].WinTime); int winafter = Convert.ToInt32(elist[0].WinningAfterTime) + 2;//时间间隔两秒 yield return(SDKManager.Instance.TimeFun(winTime, winTime)); func = null; func = (ref float t) => { if (SDKManager.Instance.isTakeAway)//已取走 { Debug.Log("已取走"); EffectMrg.StopPlayEffect(); SDKManager.Instance.WonDoll(false); UIManager.Instance.ShowUI(UIPromptPage.NAME, false); return(true); } if (t == 0) { SDKManager.Instance.Speak(elist[0].WinningAfter);//播放音效 t = winafter; } return(false); }; yield return(SDKManager.Instance.TimeFun(winafter, 1, func)); #endregion } else { SDKManager.Instance.RecordTimes(succNum, false); UIManager.Instance.ShowUI(UIPromptPage.NAME, true, cat);//失败显示 AudioManager.Instance.PlayByName(AudioType.Fixed, AudioNams.shibai, false); string[] contents; if (cat == CatchTy.NoCatch) { contents = elist[0].FailContent.Split('|'); } else { contents = elist[0].FialContentDrop.Split('|'); } int index = UnityEngine.Random.Range(0, contents.Length); SDKManager.Instance.Speak(contents[index]);//随机语音 int delytime = Convert.ToInt32(elist[0].FailTime); if (time_ci > 0) { SDKManager.Instance.Light(false, 5000); } else { SDKManager.Instance.Light(false, (delytime - 1) * 1000); } yield return(new WaitForSeconds(delytime)); UIManager.Instance.ShowUI(UIPromptPage.NAME, false); } RestStart(); }