using System.Collections; using System.Collections.Generic; using UnityEngine; using DG.Tweening; public class Pass4AniAction : AniAction { public GameObject xinLvTip; public GameObject chuChanTip; public GameObject chuChanPanel; public GameObject Part6Btn; int sanKaiIndex = 1; int fuSuIndex = 1; public GameObject doctor; public Transform endPoint; public GameObject endTip; public override void InitAniAction() { base.InitAniAction(); PassManager.Instance.AddHisitoryInfo("周围安全"); PassManager.Instance.AddHisitoryInfo("判断呼救"); PassManager.Instance.AddHisitoryInfo("心肺复苏"); PassManager.Instance.AddHisitoryInfo("使用AED"); AniActionDict.Add("AnDianYuan", () => { //PassManager.Instance.SetTip(2); PassManager.Instance.SetCtrlPart(2); }); AniActionDict.Add("LeftTiePian2", () => { PassManager.Instance.SetCtrlPart(3); PassManager.Instance.HideCtrlPart(2); }); AniActionDict.Add("RightTiePian2", () => { PassManager.Instance.SetCtrlPart(3); PassManager.Instance.HideCtrlPart(2); }); AniActionDict.Add("DanChunQingSanKai2", () => { if (sanKaiIndex == 1) { sanKaiIndex++; PassManager.Instance.SetStudentAni("FenXi2"); } else { // PassManager.Instance.SetStudentAni("AnChuChan2"); } }); AniActionDict.Add("FenXi2", () => { xinLvTip.SetActive(true); PassManager.Instance.StartTimeAction(4f, () => { xinLvTip.SetActive(false); PassManager.Instance.SetTip(4); PassManager.Instance.SetCtrlPart(4); PassManager.Instance.SetNpcAni("HuiQu"); }); }); AniActionDict.Add("AnChuChan2", () => { PassManager.Instance.SetTip("除颤进行中,请等待"); chuChanTip.SetActive(true); PassManager.Instance.StartTimeAction(4f, () => { //PassManager.Instance.SetTip(5); PassManager.Instance.SetCtrlPart(5); chuChanTip.SetActive(false); }); }); AniActionDict.Add("FuSu", () => { PassManager.Instance.SetStudentAni("3FuSu"); }); AniActionDict.Add("3FuSu", () => { PassManager.Instance.SetStudentAni("RGHX"); }); AniActionDict.Add("RGHX", () => { if (fuSuIndex == 1) { PassManager.Instance.SetCtrlPart(6); int ran = Random.Range(0, 100); if (ran > 50) { Part6Btn.SetActive(true); //PassManager.Instance.SetTip("经过胸外按压和人工呼吸,被救者的意识依然没有恢复,请点击工具箱"); fuSuIndex += 1; } else { Part6Btn.SetActive(false); PassManager.Instance.PartTipText.transform.parent.gameObject.SetActive(true); PassManager.Instance.SetTip("经过再次的的胸外按压和人工呼吸,被救者的意识得到了恢复,等待到了急救人员赶到了现场,现在将抢救工作交给医护人员,恭喜通关!", () => { PassManager.Instance.PassOver(); }); EndAni(); } } else { PassManager.Instance.PartTipText.transform.parent.gameObject.SetActive(true); PassManager.Instance.SetTip("经过再次胸外按压和人工呼吸,被救者的意识得到了恢复,等待到了急救人员赶到了现场,现在将抢救工作交给医护人员,恭喜通关!", () => { PassManager.Instance.PassOver(); }); EndAni(); } }); } public void FuSuOver() { if (fuSuIndex == 1) { // PassManager.Instance.SetCtrlPart(6); int ran = Random.Range(0, 100); if (ran < 0) { //Part6Btn.SetActive(true); //PassManager.Instance.SetTip("经过胸外按压和人工呼吸,被救者的意识依然没有恢复,请点击工具箱"); fuSuIndex += 1; } else { //Part6Btn.SetActive(false); PassManager.Instance.PartTipText.transform.parent.gameObject.SetActive(false); // PassManager.Instance.SetTip("被救者恢复意识,回复呼吸,抢救成功!", () => { PassManager.Instance.PassOver(); }); endTip.SetActive(true); EndAni(); } } else { PassManager.Instance.PartTipText.transform.parent.gameObject.SetActive(false); // PassManager.Instance.SetTip("被救者恢复意识,回复呼吸,抢救成功!", () => { PassManager.Instance.PassOver(); }); endTip.SetActive(true); EndAni(); } } public void PassOver() { PassManager.Instance.PartTipText.transform.parent.gameObject.SetActive(false); //PassManager.Instance.SetTip("被救者恢复意识,回复呼吸,抢救成功!", () => { PassManager.Instance.PassOver(); }); endTip.SetActive(true); EndAni(); } public void SanKai() { PassManager.Instance.StartTimeAction(0.3f, () => { PassManager.Instance.SetNpcAni("SanKai"); }); } public void OpenChuChan() { PassManager.Instance.StartTimeAction(3f, () => { chuChanPanel.gameObject.SetActive(true); }); } public void EndAni() { doctor.gameObject.SetActive(true); doctor.transform.DOMove(endPoint.position, 1.5f); PassManager.Instance.SetNpcSate("有"); PassManager.Instance.ChangeCameraPoint(2); PassManager.Instance.isEnd = true; EduCoderTool.WebConnecter.Singleton.SendResultToWeb(true); } public void AuNiuAudio(float time) { PassManager.Instance.StartTimeAction(time, () => { PassManager.Instance.PlayAudio(Resources.Load("Audio/按钮音效")); }); } }