void XhTJudai() { ClickDispatcher.Inst.EnableClick = false; XH.timePointEvent = (b) => { if (b > 184 && b < 189) { XH.timePointEvent = null; XH.OnPause(); XhTakeCardCallback(); } }; //XH.Complete += XhTakeCardCallback; XH.PlayForward("XH_D_1ST_FBNKT"); // gtb.framePointEvent = (b) => { if (b > 175 && b < 180) { gtb.framePointEvent = null; gtb.OnPause(); } }; gtb.PlayForward("XH_D_1ST_FBNKT_KA"); }
/// <summary> /// 点击教师的手回调 /// </summary> /// <param name="cobj"></param> private void OnClickTeacherHandFirst(ClickedObj cobj) { #if UNITY_EDITOR F3DDebug.Log(cobj.objname, new System.Diagnostics.StackTrace(true)); #else Debug.Log("DistinguishPictureCtrlA::OnClickTeacherHandFirst():教师接图卡"); #endif if (cobj.objname == "shou") { ChooseDo.Instance.Clicked(); CancelInvoke("ClickTeachersPromptFirst"); GlobalEntity.GetInstance().RemoveListener <ClickedObj>(ClickDispatcher.mEvent.DoClick, OnClickTeacherHandFirst); ClickDispatcher.Inst.EnableClick = false; HighLightCtrl.GetInstance().OffAllObjs(); //播放老师接图卡动画 int start = 47; int end = 48; bool passA = false; bool passB = false; bool passC = false; teacherAnim.timePointEvent = (t) => { if (t >= start && t <= end && !passA) { passA = true; xhctrl.r_tuka2.SetActive(false); lsCtrl.ls_tuka2.SetActive(true); xiaohuaAnim.OnContinue(); } if (t >= 81 && t <= 83 && !passB) { passB = true; //老师放下图卡 lsCtrl.ls_tuka2.SetActive(false); tukaB.SetActive(true); tukaB.transform.parent.localPosition = new Vector3(2.5f, 0.5466f, 0.388f); tukaB.transform.localPosition = Vector3.zero; } if (t >= 94 && t <= 96 && !passC) { passC = true; //老师接图卡动画结束 teacherAnim.timePointEvent = null; teacherAnim.OnPause(); OnReceiveTuKa(); } }; teacherAnim.PlayForward("TY_LS_JKDW"); } }
/// <summary> /// 点击教师的手回调 /// </summary> /// <param name="cobj"></param> private void OnClickTeacherHandFirst(ClickedObj cobj) { Debug.Log("DistinguishPictureCtrlB.OnClickTeacherHandFirst(): " + cobj.objname); if (cobj.objname == "shou") { ChooseDo.Instance.Clicked(); CancelInvoke("ClickTeachersPromptFirst"); GlobalEntity.GetInstance().RemoveListener <ClickedObj>(ClickDispatcher.mEvent.DoClick, OnClickTeacherHandFirst); ClickDispatcher.Inst.EnableClick = false; HighLightCtrl.GetInstance().FlashOff(cobj.go); //2. 播放结束,提醒操作者点击教师的手,点击后触发接A图卡的动作。 int start = 47; int end = 48; bool passA1 = false; bool passA2 = false; bool passA3 = false; bool passA4 = false; teacherAnim.timePointEvent = (t) => { if (t >= start && t <= end && !passA1) { passA1 = true; xiaohuaAnim.OnContinue(); } if (t >= 50 && t <= 51 && !passA4) { passA4 = true; xhctrl.r_tuka2.SetActive(false); lsCtrl.ls_tuka2.SetActive(true); } if (t >= 81 && t <= 83 && !passA2) { passA2 = true; //老师放下图卡A lsCtrl.ls_tuka2.SetActive(false); xhctrl.r_tuka2.GetComponentInChildren <MeshRenderer>().materials[1].CopyPropertiesFromMaterial(tukaA.GetComponentInChildren <MeshRenderer>().materials[1]); tukaA.SetActive(true); tukaA.transform.parent.localPosition = new Vector3(2.5f, 0.5466f, 0.388f); tukaA.transform.localPosition = Vector3.zero; } if (t >= 94 && t <= 96 && !passA3) { passA3 = true; //老师接图卡A动画结束 teacherAnim.timePointEvent = null; teacherAnim.OnPause(); OnClickHuaTong(); } }; teacherAnim.PlayForward("TY_LS_JKDW"); } }
void MMJieObj() { CancelInvoke("ClickMMhandTip"); HighLightCtrl.GetInstance().FlashOff(mmHand); ClickDispatcher.Inst.EnableClick = false; GameObject ka = ResManager.GetPrefab("Prefabs/AnimationKa/MM_F_4TH_DBY_KA"); ka.name = "MM_F_4TH_DBY_KA"; ka.transform.SetParent(transform); Material matTar = ka.transform.Find("judai/tuka1").GetComponent <MeshRenderer>().materials[1]; Material matSource = SentenceExpressionModel.GetInstance().GetTuKa(PropsTag.judai_wokanjian.ToString()).GetComponent <MeshRenderer>().materials[1]; matTar.CopyPropertiesFromMaterial(matSource); matTar = ka.transform.Find("judai/tuka").GetComponent <MeshRenderer>().materials[1]; matSource = SentenceExpressionModel.GetInstance().GetObj(index).GetComponent <MeshRenderer>().materials[1]; matTar.CopyPropertiesFromMaterial(matSource); ka.transform.Find("Group/Main/DeformationSystem/Root_M/Spine1_M/Chest_M/Scapula_L/Shoulder_L/ShoulderPart1_L/ShoulderPart2_L/Elbow_L/Wrist_L/judai3").gameObject.SetActive(false); ka.transform.Find("judai/tuka").localEulerAngles = new Vector3(0, -90, 0); ka.transform.Find("judai/tuka1").localEulerAngles = new Vector3(0, -90, 0); LegacyAnimationOper lao = ka.GetLegacyAnimationOper(); lao.PlayForward("MM_F_4TH_DBY_KA"); bool pass = true; bool pasxh = true; MM.timePointEvent = (a) => { if (a >= 38 && a <= 40 && pasxh) { pasxh = false; XH.OnContinue(); transform.Find("XH_F_4TH_FNN_KA").GetComponent <LegacyAnimationOper>().OnContinue(); //transform.Find("XH_F_4TH_FNN_KA").gameObject.SetActive(false); } if (a >= 72 && a <= 75 && pass) { pass = false; MM.timePointEvent = null; MM.OnPause(); lao.OnPause(); DBYCallback(); } }; MM.PlayForward("MM_F_4TH_DBY"); //Invoke("ClickmicroPhoneTip", 1); }
//点中辅导老师手后的回调 /// <summary> ///辅导教师抓住小华的手翻开沟通本 /// </summary> void XhTJudai() { ClickDispatcher.Inst.EnableClick = false; bool passxh = true; XH.timePointEvent = (b) => { if (b > 184 && b < 189 && passxh) { passxh = false; XH.OnPause(); XhTakeCardCallback(); } }; //XH.Complete += XhTakeCardCallback; XH.PlayForward("XH_D_1ST_FBNKT"); // bool passgtb = true; gtb.framePointEvent = (b) => { if (b > 175 && b < 180 && passgtb) { passgtb = false; gtb.OnPause(); } }; gtb.PlayForward("XH_D_1ST_FBNKT_KA"); }
void XhTakeCard() { bool pass1 = true; bool pass2 = true; XH.timePointEvent = (a) => { if (a >= 18 && a <= 20 && pass1) { pass1 = false; XHCtrl ctrl = XH.GetComponent <XHCtrl>(); string name = SwapModel.GetInstance().CurReinforcement.pData.name; Material matSource = SwapModel.GetInstance().GetTuKa("tuka_" + name).GetComponent <MeshRenderer>().materials[1]; Material matTar = ctrl.r_tuka2.transform.Find("tuka2 1").GetComponent <MeshRenderer>().materials[1]; matTar.CopyPropertiesFromMaterial(matSource); xhTk.gameObject.SetActive(false); ctrl.r_tuka2.gameObject.SetActive(true); } if (a >= 50 && a <= 52 && pass2) { pass2 = false; XH.timePointEvent = null; XH.OnPause(); XhTakeCardCallback(); } }; XH.PlayForward("TY_XH_NKDK"); }
void XhTakeCard() { XH.gameObject.SetActive(true); //XH.Complete += XhTakeCardCallback; //bool pass = true; bool pass1 = true; bool pass2 = true; bool pass3 = true; bool passgtb = true; bool passreset = true; XH.timePointEvent = (a) => { if (a >= 10 && a <= 12 && passreset) { passreset = false; XH.transform.localPosition = Vector3.zero; } if (a >= 138 && a <= 140 && pass1) { pass1 = false; GTB.timePointEvent = (b) => { if (b >= 26 && b <= 28 && passgtb) { passgtb = false; GTB.timePointEvent = null; deskTuka.gameObject.SetActive(true); } }; GTB.PlayForward("onePaper"); } if (a >= 185 && a <= 187 && pass2) { pass2 = false; XHCtrl ctrl = XH.GetComponent <XHCtrl>(); string name = EnhanceCommunityModel.GetInstance().CurReinforcement.pData.name; Material matSource = EnhanceCommunityModel.GetInstance().GetTuKa("tuka_" + name).GetComponent <MeshRenderer>().materials[1]; ctrl.r_tuka.transform.Find("tuka 1").GetComponent <MeshRenderer>().enabled = true; Material matTar = ctrl.r_tuka.transform.Find("tuka 1").GetComponent <MeshRenderer>().materials[1]; matTar.CopyPropertiesFromMaterial(matSource); xhTk.SetActive(false); ctrl.r_tuka.gameObject.SetActive(true); } if (a >= 405 && a <= 407 && pass3) { pass3 = false; XH.timePointEvent = null; XH.OnPause(); XhTakeCardCallback(); } }; XH.PlayForward("XH_B_3RD_ZFNZD"); }
void OnXiaoHuaBring() { int start = 287; int end = 288; int start1 = 465; int end1 = 467; bool pass1 = false; bool pass2 = false; xiaohuaAnim.timePointEvent = (t) => { if (t >= start && t <= end && !pass1) { pass1 = true; XHCtrl xhctrl = xiaohuaAnim.GetComponent <XHCtrl>(); xhctrl.r_judai2.SetActive(true); xhctrl.r_judai2.transform.Find("XH_judai_2 1/jd_tuka_1").GetComponent <MeshRenderer>().enabled = false; xhctrl.r_judai2.transform.Find("XH_judai_2 1/jd_tuka_2").GetComponent <MeshRenderer>().materials[1].CopyPropertiesFromMaterial(judaiGobj.GetComponent <MeshRenderer>().materials[1]); xhctrl.r_judai2.transform.Find("XH_judai_2 1/jd_tuka_3").GetComponent <MeshRenderer>().materials[1].CopyPropertiesFromMaterial(tukaA.GetComponent <MeshRenderer>().materials[1]); FBNKT_KA_Anim.transform.Find("XH_judaiA").gameObject.SetActive(false); } if (t >= start1 && t <= end1 && !pass2) { pass2 = true; xiaohuaAnim.timePointEvent = null; xiaohuaAnim.OnPause(); //2. 播放结束,提示操作者点击教师的手,播放教师接卡的动画。 GameObject shou = PeopleManager.Instance.GetPeople("LS_BD").transform.Find("LSB_BD/shou").gameObject; Debug.Log("SpeakUpCtrlC.OnXiaoHuaBring(): 2. 播放结束,提示操作者点击教师的手,播放教师接卡的动画。"); HighLightCtrl.GetInstance().FlashOn(shou); shou.GetBoxCollider().size = new Vector3(1, 0.2f, 0.5f); GlobalEntity.GetInstance().AddListener <ClickedObj>(ClickDispatcher.mEvent.DoClick, OnClickTeacherHandFirst); ClickDispatcher.Inst.EnableClick = true; ChooseDo.Instance.DoWhat(5, RedoClickTeachersHandFirst, null); } }; xiaohuaAnim.PlayForward("XH_D_3RD_ZGJD"); FBNKT_KA_AnimOper = FBNKT_KA_Anim.GetLegacyAnimationOper(); bool passA = false; FBNKT_KA_AnimOper.framePointEvent = (t) => { if (t >= 165 && t <= 168 && !passA) { //显示沟通本第2页图卡 passA = true; FBNKT_KA_AnimOper.framePointEvent = null; FBNKT_KA_Anim.transform.Find("XH_judaiA/XH_judaiA 1/tukaB").gameObject.SetActive(true); } }; FBNKT_KA_AnimOper.PlayForward("XH_D_2ND_FYFT_KA"); }
//点中辅导老师手后的回调 /// <summary> ///辅导教师抓住小华的手翻开沟通本 /// </summary> void FdlsClickXhHand() { CancelInvoke("ClickFdlsHandTip"); ClickDispatcher.Inst.EnableClick = false; HighLightCtrl.GetInstance().FlashOff(fdlshand); //FDLS.Complete += FdlsClickXhHandCalllback; //FDLS.PlayForward("FDLS_A_2ND_D");//TODO:教师动画播放时有位移 bool pass1 = true; bool pass2 = true; bool pass3 = true; bool passgtb = true; XH.timePointEvent = (a) => { if (a >= 41 && a <= 43 && pass1) { pass1 = false; GTB.timePointEvent = (b) => { if (b >= 26 && b <= 28 && passgtb) { passgtb = false; GTB.timePointEvent = null; deskTuka.gameObject.SetActive(true); } }; GTB.PlayForward("onePaper"); } if (a >= 135 && a <= 137 && pass2)// { //XH.timePointEvent = null; pass2 = false; XHCtrl ctrl = XH.GetComponent <XHCtrl>(); string name = EnhanceCommunityModel.GetInstance().CurReinforcement.pData.name; Material matSource = EnhanceCommunityModel.GetInstance().GetTuKa("tuka_" + name).GetComponent <MeshRenderer>().materials[1]; //ctrl.r_tuka2.transform.Find("tuka2 1").GetComponent<MeshRenderer>().enabled = true; Material matTar = ctrl.r_tuka.transform.Find("tuka 1").GetComponent <MeshRenderer>().materials[1]; matTar.CopyPropertiesFromMaterial(matSource); ctrl.r_tuka.transform.Find("tuka 1").GetComponent <MeshRenderer>().enabled = true; ctrl.r_tuka.gameObject.SetActive(true); xhTk.gameObject.SetActive(false); } if (a >= 163 && a <= 165 && pass3) { pass3 = false; XH.timePointEvent = null; XH.OnPause(); XhTakeCardCallback(); } }; XH.PlayForward("XH_B_1ST_FBNKDK", /*0.16f*/ 0); FDLS.PlayForward("FDLS_B_1ST_FGTB"); }
private void ProcessClickTeacherHandFirst() { xiaohuaAnim.OnPause(); GameObject shou = PeopleManager.Instance.GetPeople("LS_BD").transform.Find("LSB_BD/shou").gameObject; HighLightCtrl.GetInstance().FlashOn(shou); shou.GetBoxCollider().size = new Vector3(1, 0.2f, 0.5f); GlobalEntity.GetInstance().AddListener <ClickedObj>(ClickDispatcher.mEvent.DoClick, OnClickTeacherHandFirst); ClickDispatcher.Inst.EnableClick = true; ChooseDo.Instance.DoWhat(5, RedoClickTeachersHandFirst, null); }
void XHTake() { Debug.Log("DistinguishPictureCtrlB::OnClickHuaTong(): 4. 播放结束,触发小华拿起B的动画。"); int start = 20; int end = 21; bool passA = false; xiaohuaAnim.timePointEvent = (t) => { if (t >= start && t <= end && !passA) { passA = true; xiaohuaAnim.timePointEvent = null; Dialog dialog = UIManager.Instance.GetUI <Dialog>("Dialog"); dialog.Show(false); xiaohuaAnim.OnPause(); OnXiaoHuaBringB(); } }; xiaohuaAnim.PlayForward("XH_C_2ND_NA"); }
void LsJieka() { CancelInvoke("ClickLsHandJiekaTip"); HighLightCtrl.GetInstance().FlashOff(mmhand); ClickDispatcher.Inst.EnableClick = false; MM.OnContinue(); MM.timePointEvent = (a) => //mama借卡时间点 { if (a >= 41 && a <= 43) //给定一个帧区间范围 { MM.timePointEvent = null; Transform fnnka = transform.Find("XH_E_3RD_FNN_KA"); fnnka.transform.Find("Group1/Main/DeformationSystem/Root_M/Spine1_M/Chest_M/Scapula_L/Shoulder_L/ShoulderPart1_L/ShoulderPart2_L/Elbow_L/Wrist_L/judai1").gameObject.SetActive(false); //沟通本图卡隐藏 XHCtrl xhctrl = XH.GetComponent <XHCtrl>(); Transform xh_r1 = xhctrl.XH_R2.transform.parent.Find("XH_R1"); fnnka.transform.SetParent(xh_r1); XH.PlayForward("XH_E_3RD_JG"); XH.OnPause(); //int stateHash = XH.anim.GetCurrentAnimatorStateInfo(0).tagHash; //float length = XH.anim.GetCurrentAnimatorStateInfo(0).length; //XH.anim.Play("XH_E_3RD_JG", 0, -length); //XH.PlayForward("idle"); //XH.anim.speed = -1; //XH.PlayForward("XH_E_3RD_JG");//小华手收回 } }; MM.Complete += LsJiekaCallback; MM.PlayForward("MM_E_3RD_JG"); LegacyAnimationOper ka = ResManager.GetPrefab("Prefabs/AnimationKa/MM_E_3RD_JG_KA").GetLegacyAnimationOper(); ka.transform.SetParent(transform); ka.name = "MM_E_3RD_JG_KA"; Transform tk9 = ka.transform.Find("Main/DeformationSystem/Root_M/Spine1_M/Chest_M/Scapula_R/Shoulder_R/ShoulderPart1_R/ShoulderPart2_R/Elbow_R/Wrist_R/judai2/tuka9"); Vector3 tk9Angle = tk9.localEulerAngles; tk9Angle.y = -90.3f; tk9.localEulerAngles = tk9Angle; Material matSource = ka.transform.Find("Main/DeformationSystem/Root_M/Spine1_M/Chest_M/Scapula_R/Shoulder_R/ShoulderPart1_R/ShoulderPart2_R/Elbow_R/Wrist_R/judai2/tuka9").GetComponent <MeshRenderer>().materials[1]; Reinforcement rfc = AcceptQuestionModel.GetInstance().CurReinforcement; Material matTar = AcceptQuestionModel.GetInstance().GetTuKa("tuka_" + rfc.pData.name).GetComponent <MeshRenderer>().materials[1]; matSource.CopyPropertiesFromMaterial(matTar);//更换图卡物体材质 ka.PlayForward("MM_E_3RD_JG_KA"); }
void OnClickTeacherHandThird(ClickedObj cobj) { if (cobj.objname == "shou") { ChooseDo.Instance.Clicked(); CancelInvoke("ClickTeachersPromptThird"); GameObject shou = PeopleManager.Instance.GetPeople("LS_BD").transform.Find("LSB_BD/shou").gameObject; HighLightCtrl.GetInstance().FlashOff(shou); GlobalEntity.GetInstance().RemoveListener <ClickedObj>(ClickDispatcher.mEvent.DoClick, OnClickTeacherHandThird); ClickDispatcher.Inst.EnableClick = false; teacherAnim.Complete += () => { //6. 播放结束,触发小华拿起A卡、递卡的动画。 Debug.Log("DistinguishPictureCtrlA.OnClickTeacherHandThird(): 6. 播放结束,触发小华拿起A卡、递卡的动画。"); xhctrl.r_tuka2.GetComponentInChildren <MeshRenderer>().materials[1].CopyPropertiesFromMaterial(tukaA.GetComponentInChildren <MeshRenderer>().materials[1]); xhctrl.r_tuka2.SetActive(true); int start = 18; int end = 20; int start0 = 44; int end0 = 46; bool passA = false; bool passB = false; xiaohuaAnim.timePointEvent = (t) => { if (t >= start && t <= end && !passA) { passA = true; tukaA.SetActive(false); } if (t >= start0 && t <= end0 && !passB) { passB = true; xiaohuaAnim.timePointEvent = null; xiaohuaAnim.OnPause(); OnXiaoHuaBringAToTeacher(); } }; xiaohuaAnim.PlayForward("TY_XH_NKDK"); }; teacherAnim.PlayForward("LS_C_1ST_ZZ"); } }
private void OnClickFDTeacherHandFirst(ClickedObj cobj) { Debug.Log("SpeakUpCtrlA.OnClickTeacherHandFirst(): " + cobj.objname); if (cobj.objname == "fdls_shou") { ChooseDo.Instance.Clicked(); CancelInvoke("ClickFDTeachersPromptFirst"); GlobalEntity.GetInstance().RemoveListener <ClickedObj>(ClickDispatcher.mEvent.DoClick, OnClickFDTeacherHandFirst); ClickDispatcher.Inst.EnableClick = false; HighLightCtrl.GetInstance().FlashOff(cobj.go); int start = 180; int end = 182; bool passB = false; xiaohuaAnim.timePointEvent = (t) => { if (t >= start && t <= end && !passB) { passB = true; xiaohuaAnim.timePointEvent = null; xiaohuaAnim.OnPause(); fdlsAnim.OnPause(); FBNKT_KA_AnimOper.OnPause(); GameObject shou = PeopleManager.Instance.GetPeople("LS_BD").transform.Find("LSB_BD/shou").gameObject; HighLightCtrl.GetInstance().FlashOn(shou); GlobalEntity.GetInstance().RemoveListener <ClickedObj>(ClickDispatcher.mEvent.DoClick, OnClickTeacherHandFinal); GlobalEntity.GetInstance().AddListener <ClickedObj>(ClickDispatcher.mEvent.DoClick, OnClickTeacherHandFinal); ClickDispatcher.Inst.EnableClick = true; ChooseDo.Instance.DoWhat(5, RedoClickTeachersHandFinal, null); } }; fdlsAnim.OnContinue(); bool passA = false; fdlsAnim.timePointEvent = (a) => { if (a >= 100 && a <= 102 && !passA) { passA = true; FBNKT_KA_AnimOper.OnContinue(); xiaohuaAnim.OnContinue(); } }; } }
//点中辅导老师手后的回调 /// <summary> ///辅导教师抓住小华的手翻开沟通本 /// </summary> void FdlsClickXhHand() { CancelInvoke("ClickFdlsHandTip"); HighLightCtrl.GetInstance().FlashOff(fdlshand); ClickDispatcher.Inst.EnableClick = false; //FDLS.Complete += FdlsClickXhHandCalllback; //FDLS.PlayForward("FDLS_A_2ND_D");//TODO:教师动画播放时有位移 FDLS.PlayForward("FDLS_B_1ST_FGTB"); //Debug.LogError("FDLS_B_1ST_FGTB"); bool pass = true; FDLS.timePointEvent = (a) => { if (a > 35 && a <= 37 && pass) { pass = false; // bool passxh = true; XH.timePointEvent = (b) => { if (b > 184 && b < 189 && passxh) { passxh = false; XH.OnPause(); XhTakeCardCallback(); } }; //XH.Complete += XhTakeCardCallback; XH.PlayForward("XH_D_1ST_FBNKT"); // bool passgtb = true; gtb.framePointEvent = (b) => { if (b > 175 && b < 180 && passgtb) { passgtb = false; gtb.OnPause(); } }; gtb.PlayForward("XH_D_1ST_FBNKT_KA"); } }; }
/// <summary> /// 播放小华拿B卡递卡动画 /// </summary> void OnXiaoHuaBring() { GameObject xiaohuaGo = PeopleManager.Instance.GetPeople("XH_BD"); xiaohuaAnim = xiaohuaGo.GetAnimatorOper(); xhctrl = xiaohuaGo.GetComponent <XHCtrl>(); xhctrl.r_tuka2.GetComponentInChildren <MeshRenderer>().materials[1].CopyPropertiesFromMaterial(tukaB.GetComponentInChildren <MeshRenderer>().materials[1]); lsCtrl = teacherAnim.GetComponent <LSCtrl>(); lsCtrl.ls_tuka2.GetComponentInChildren <MeshRenderer>().materials[1].CopyPropertiesFromMaterial(tukaB.GetComponentInChildren <MeshRenderer>().materials[1]); int start = 24; int end = 26; int start0 = 44; int end0 = 46; bool passA = false; bool passB = false; xiaohuaAnim.timePointEvent = (t) => { if (t >= start && t <= end && !passA) { passA = true; xhctrl.r_tuka2.SetActive(true); tukaB.SetActive(false); tukaA.transform.parent.localPosition = new Vector3(2.277f, 0.5466f, 0.3855f); } if (t >= start0 && t <= end0 && !passB) { passB = true; xiaohuaAnim.timePointEvent = null; xiaohuaAnim.OnPause(); GameObject shou = PeopleManager.Instance.GetPeople("LS_BD").transform.Find("LSB_BD/shou").gameObject; Debug.Log("DistinguishPictureCtrlA.OnXiaoHuaBring(): 2. 播放结束,提醒操作者点击教师的手,点击后触发接图卡的动作"); HighLightCtrl.GetInstance().FlashOn(shou); shou.GetBoxCollider().size = new Vector3(1, 0.2f, 0.5f); GlobalEntity.GetInstance().AddListener <ClickedObj>(ClickDispatcher.mEvent.DoClick, OnClickTeacherHandFirst); ClickDispatcher.Inst.EnableClick = true; ChooseDo.Instance.DoWhat(5, RedoClickTeachersHandFirst, null); } }; xiaohuaAnim.PlayForward("TY_XH_NKDK"); }
void OnXiaoHuaBring() { GameObject xiaohuaGo = PeopleManager.Instance.GetPeople("XH_BD"); xiaohuaAnim = xiaohuaGo.GetAnimatorOper(); xiaohuaAnim.PlayForward("XH_D_1ST_FBNKT"); GameObject fdlsObj2 = PeopleManager.Instance.GetPeople("FDLS_BD"); fdlsAnim = fdlsObj2.GetAnimatorOper(); fdlsAnim.PlayForward("FDLS_D_1ST_TJD", 0.343f); fdlsAnim.OnPause(); FBNKT_KA_AnimOper = FBNKT_KA_Anim.GetLegacyAnimationOper(); FBNKT_KA_AnimOper.PlayForward("XH_D_1ST_FBNKT_GKA"); int start = 100; int end = 102; bool passA = false; xiaohuaAnim.timePointEvent = (t) => { if (t >= start && t <= end && !passA) { passA = true; xiaohuaAnim.timePointEvent = null; xiaohuaAnim.OnPause(); FBNKT_KA_AnimOper.OnPause(); //2. 播放结束,提醒操作者点击辅助教师的手,点击后触发辅助教师抓着小华的手把图卡粘在句带上的动画。 GameObject fdlsObj = PeopleManager.Instance.GetPeople("FDLS_BD"); GameObject shou = fdlsObj.transform.Find("FDLS/fdls_shou").gameObject; HighLightCtrl.GetInstance().FlashOn(shou); shou.GetBoxCollider().size = new Vector3(1, 0.2f, 0.5f); GlobalEntity.GetInstance().AddListener <ClickedObj>(ClickDispatcher.mEvent.DoClick, OnClickFDTeacherHandFirst); ClickDispatcher.Inst.EnableClick = true; ChooseDo.Instance.DoWhat(5, RedoClickFDTeachersHandFirst, null); } }; }
/// <summary> /// 播放动画控制 /// </summary> void PlayAnimation() { //工具箱隐藏 gameObject.SetActive(false); //动画模型显示 Transform aniPar = transform.parent.GetChild(1); for (int i = 0; i < aniPar.childCount; i++) { aniPar.GetChild(i).gameObject.SetActive(true); } //提示隐藏//708动画帧数 int point = 708; Transform aniTr = aniPar.transform.parent.Find("01"); if (transform.parent.name == "BMoudle") { point = 578; aniTr = aniPar.transform.parent.Find("02"); aniTr.Find("sw_swjj_H").gameObject.SetActive(false); } ani = aniTr.GetComponent <AnimationOper>(); ani.timePointEvent = (a) => { //Debug.Log(a + "---"); if (a >= point - 1 && a <= point + 1 && !isPlay) { isPlay = true; ani.OnPause(); CancelInvoke("PlayAgain"); Invoke("PlayAgain", 1); } }; ani.OnContinue(); ani.PlayForward("Take 001"); }
public void Init() { if (swapUI == null) { swapUI = UIManager.Instance.GetUI <SwapUI>("SwapUI"); swapUI.speakEvent += SpeakBtnClickCallback; swapUI.SetButtonVisiable(SwapUI.BtnName.microButton, true); swapUI.SetButtonVisiable(SwapUI.BtnName.chooseButton, false); } PeopleManager.Instance.Reset(); PeopleManager.Instance.GetPeople(PeopleTag.FDLS_BD).transform.localPosition = new Vector3(0, 0, 10000); PeopleManager.Instance.GetPeople(PeopleTag.LS_BD).transform.localPosition = new Vector3(0, 0, 10000); XH = PeopleManager.Instance.GetPeople(PeopleTag.XH_BD).GetAnimatorOper(); XH.PlayForward("XH_E_3RD_FNN"); XH.OnPause(); LegacyAnimationOper ka = ResManager.GetPrefab("Prefabs/AnimationKa/XH_E_3RD_FNN_KA").GetLegacyAnimationOper(); ka.transform.SetParent(transform); ka.name = "XH_E_3RD_FNN_KA"; ka.PlayForward("XH_E_3RD_FNN_KA"); ka.OnPause(); //XH.transform.localPosition = Vector3.zero; //XH.transform.localScale = Vector3.zero; MM = ResManager.GetPrefab("Scenes/supermarket/MM").GetAnimatorOper(); MM.name = "MM"; MM.transform.SetParent(transform); MM.PlayForward("idle"); HighLightCtrl.GetInstance().OffAllObjs(); GetTukaObject(); }
/// <summary> /// 辅导老师抓小华手递卡 /// </summary> void FdlsDika() { CancelInvoke("ClickFdlsDikaHandTip"); HighLightCtrl.GetInstance().FlashOff(fdlshand); ClickDispatcher.Inst.EnableClick = false; FDLS.Complete += FdlsDikaCallBack; FDLS.PlayForward("FDLS_A_1ST_ZD"); bool pass = true; XH.timePointEvent = (a) => { if (a >= 10 && a <= 12 && pass) { pass = false; xhTk.gameObject.SetActive(false); } if (a >= 33 && a <= 35) { XH.timePointEvent = null; XH.OnPause(); } }; XH.PlayForward("XH_A_1ST_BZDK"); }
/// <summary> /// 初始化桌子上的涂卡 /// </summary> void GetTukaObject() { PropsObject pObj = SentenceExpressionModel.GetInstance().GetObj(PropsType.neutralStimulator); //中性刺激物 Reinforcement rfc = new Reinforcement(pObj.pData); //测试代码 SentenceExpressionModel.GetInstance().CurneutralStimulator = rfc; //设置强化物 Debug.Log("中性刺激物 " + rfc.pData.name); string objName = rfc.pData.name;//桌子上中兴刺激物 GameObject obj = Instantiate(SentenceExpressionModel.GetInstance().GetTuKa(objName)); obj.name = "neutralStimulator"; obj.transform.SetParent(transform, false); obj.transform.localPosition = new Vector3(2.453f, 0.578f, 0.867f); obj.transform.localScale = Vector3.one * 0.6F; gtb = ResManager.GetPrefab("Prefabs/AnimationKa/XH_D_1ST_FBNKT_KA").GetLegacyAnimationOper(); gtb.name = PropsTag.TY_GTB.ToString(); gtb.transform.SetParent(transform); gtb.name = "XH_D_1ST_FBNKT_KA"; gtb.transform.SetParent(transform); //沟通本我看见图卡 Material matSource = SentenceExpressionModel.GetInstance().GetTuKa(PropsTag.judai_wokanjian.ToString()).GetComponent <MeshRenderer>().materials[1]; Material matTar = gtb.transform.Find("XH_judaiA/XH_judaiA 1/tukaB/tukaB1").GetComponent <MeshRenderer>().materials[1]; matTar.CopyPropertiesFromMaterial(matSource); //沟通本之中性刺激物图卡 string _tuka = "tuka_" + rfc.pData.name;//沟通本里面图卡 matSource = SentenceExpressionModel.GetInstance().GetTuKa(_tuka).GetComponent <MeshRenderer>().materials[1]; matTar = gtb.transform.Find("XH_judaiA/XH_judaiA 1/tukaB/tukaB 1").GetComponent <MeshRenderer>().materials[1]; matTar.CopyPropertiesFromMaterial(matSource); //设置老师旁边的强化物模型 pObj = SentenceExpressionModel.GetInstance().GetObj(PropsType.reinforcement); //强化物 rfc = new Reinforcement(pObj.pData); //测试代码 SentenceExpressionModel.GetInstance().CurReinforcement = rfc; //设置强化物 objName = rfc.pData.name; // obj = ObjectsManager.instanse.GetQHW(); obj.name = "QHW"; obj.transform.SetParent(transform); qhwCtrl = obj.GetComponent <QHWCtrl>(); qhwCtrl.ShowObj(objName); //qhwCtrl = obj.GetComponent<QHWCtrl>(); //qhwCtrl.ShowObj(objName); //LS.Complete += ClickmicroPhoneTip; //LS.PlayForward("LS_E_1ST_ZB"); // bool passPoint = true; LS.timePointEvent = (a) => { if (a >= 40 && a <= 45 && passPoint)// { passPoint = false; LS.OnPause(); ClickmicroPhoneTip(); } }; LS.PlayForward("LS_F_1ST_ZCJW"); //Debug.Log("ls"); }
void LsJieka() { CancelInvoke("ClickLsHandTip"); HighLightCtrl.GetInstance().FlashOff(jshand); ClickDispatcher.Inst.EnableClick = false; LS.Complete += LsGiveObjCallback; bool pause = true; bool pass1 = true; bool pass2 = true; bool pass3 = true; bool pass4 = true; bool pass5 = true; LS.timePointEvent = (a) => { if (a >= 51 && a <= 53 && pass1)//老师接卡 { pass1 = false; LSCtrl ctrl = LS.GetComponent <LSCtrl>(); string name = SwapModel.GetInstance().CurReinforcement.pData.name; Material matSource = SwapModel.GetInstance().GetTuKa("tuka_" + name).GetComponent <MeshRenderer>().materials[1]; Material matTar = ctrl.ls_tuka2.transform.Find("LS_tuka2 1").GetComponent <MeshRenderer>().materials[1]; matTar.CopyPropertiesFromMaterial(matSource); ctrl.ls_tuka2.gameObject.SetActive(true); XHCtrl xctrl = XH.GetComponent <XHCtrl>(); xctrl.r_tuka2.gameObject.SetActive(false); XH.OnContinue(); } if (a >= 81 && a <= 83 && pass2)//老师桌子放卡片 { pass2 = false; LSCtrl ctrl = LS.GetComponent <LSCtrl>();//手上卡隐藏,桌子上的卡显示 ctrl.ls_tuka2.gameObject.SetActive(false); lsTk.gameObject.SetActive(true); } if (a >= 94 && a <= 96 && pause) { pause = false; LS.OnPause(); //在某一帧停止时,下一次还会从该帧执行 LsJiekaCallback(); //提示 } if (a >= 122 && a <= 124 && pass3)//强化物挂到老师手上 { pass3 = false; LSCtrl ctrl = LS.GetComponent <LSCtrl>(); ctrl.SetJoint(qhw); } if (a >= 145 && a <= 147 && pass4)//小华接受物体时间点 { // LS.timePointEvent = null; //Debug.LogError("xh"); pass4 = false; LegacyAnimationOper go = ResManager.GetPrefab("Prefabs/AnimationKa/TY_XH_JG_KA").GetLegacyAnimationOper(); go.transform.SetParent(transform); XH.timePointEvent = (b) =>//小华接过物品 挂载强化物 { if (b >= 42 && b <= 44 && pass5) { pass5 = false; //XHCtrl xhCtrl = XH.GetComponent<XHCtrl>(); //xhCtrl.SetJoint(qhw); XhQHW xhqhw = go.GetComponent <XhQHW>(); xhqhw.ShowObj(qhw.name); qhw.gameObject.SetActive(false); //Debug.LogError("xh"); } }; XH.PlayForward("TY_XH_JG"); go.PlayForward("TY_XH_JG_KA"); } }; LS.PlayForward("TY_LS_JKDW");//LS_tuka/LS_tuka 1 //tuka2 }
//public bool Finished; private void Start() { GlobalEntity.GetInstance().Dispatch <string>(CommonUI.pEvent.LevelChange, "第四关"); Transform park = ResManager.GetPrefab("Scenes/park/park").transform; park.SetParent(transform); GameObject cam = transform.Find("park(Clone)/Camera").gameObject; HighlightingEffect hf = cam.GetComponent <HighlightingEffect>(); if (hf == null) { hf = cam.gameObject.AddComponent <HighlightingEffect>(); //hf.stencilZBufferDepth = 0; //hf.downsampleFactor = 1; //hf.iterations = 2; } if (swapUI == null) { swapUI = UIManager.Instance.GetUI <SwapUI>("SwapUI"); //swapUI.chooseEvent += ChooseBtnClickCallback; swapUI.speakEvent += SpeakBtnClickCallback; swapUI.SetButtonVisiable(SwapUI.BtnName.microButton, false); swapUI.SetButtonVisiable(SwapUI.BtnName.chooseButton, false); } UIManager.Instance.GetUI <Dialog>("Dialog").SetPos(new Vector3(-55, -490, 0)); MM = ResManager.GetPrefab("Scenes/park/MM").GetAnimatorOper(); MM.transform.SetParent(park); PeopleManager.Instance.Reset(); PeopleManager.Instance.GetPeople(PeopleTag.FDLS_BD).transform.localPosition = new Vector3(0, 0, 10000); PeopleManager.Instance.GetPeople(PeopleTag.LS_BD).transform.localPosition = new Vector3(0, 0, 10000); XH = PeopleManager.Instance.GetPeople(PeopleTag.XH_BD).GetAnimatorOper(); bool pass = true; XH.timePointEvent = (a) => { if (a >= 1 && a <= 3 && pass) { pass = false; XH.timePointEvent = null; XH.OnPause(); } }; XH.PlayForward("XH_F_4TH_FNN"); LegacyAnimationOper dog = ResManager.GetPrefab("Scenes/park/dog").GetLegacyAnimationOper(); dog.transform.SetParent(park); dog.transform.localScale = Vector3.one * 2; dog.transform.localPosition = new Vector3(-1.205f, 0, 0); dog.PlayForward("idle"); dog.SetWrapMode = WrapMode.Loop; MM.PlayForward("idle"); //XH.PlayForward("idle"); //XH.PlayForward("XH_F_4TH_FNN"); PropsObject pObj = SentenceExpressionModel.GetInstance().GetObj(PropsType.neutralStimulator); //中性刺激物 Reinforcement rfc = new Reinforcement(pObj.pData); //测试代码 SentenceExpressionModel.GetInstance().CurReinforcement = rfc; //设置强化物 Debug.Log("GetTukaObject"); XHTZka(); //Invoke("XHTZka", 1); }
private void OnClickTeacherHandFirst(ClickedObj cobj) { if (cobj.objname == "shou") { ChooseDo.Instance.Clicked(); CancelInvoke("ClickTeachersPromptFirst"); GlobalEntity.GetInstance().RemoveListener <ClickedObj>(ClickDispatcher.mEvent.DoClick, OnClickTeacherHandFirst); ClickDispatcher.Inst.EnableClick = false; HighLightCtrl.GetInstance().FlashOff(cobj.go); //播放接图卡动画 teacherAnim = PeopleManager.Instance.GetPeople("LS_BD").GetAnimatorOper(); int st = 42; int et = 43; bool passA = false; bool passA2 = false; bool passA3 = false; bool passA1 = false; bool passA4 = false; teacherAnim.timePointEvent = (tt) => { if (tt >= 35 && tt <= 36 && !passA4) { passA4 = true; xiaohuaAnim.OnContinue(); } if (tt >= st && tt <= et && !passA) { passA = true; xhctrl.r_tuka.SetActive(false); lsCtrl.ls_tuka2.SetActive(true); } if (tt >= 81 && tt <= 83 && !passA2) { passA2 = true; //老师放下图卡A xhctrl.r_tuka2.GetComponentInChildren <MeshRenderer>().materials[1].CopyPropertiesFromMaterial(qhwtks[2].GetComponentInChildren <MeshRenderer>().materials[1]); } if (tt >= 85 && tt <= 87 && !passA1) { passA1 = true; qhwtks[2].SetActive(true); qhwtks[2].transform.SetParent(emptyRoot.transform); qhwtks[2].transform.localPosition = new Vector3(2.502f, 0.5464f, 0.472f); qhwtks[2].transform.localRotation = Quaternion.Euler(Vector3.zero); qhwtks[2].transform.localScale = Vector3.one; lsCtrl.ls_tuka2.SetActive(false); } if (tt >= 96 && tt <= 98 && !passA3) { passA3 = true; //老师接图卡A动画结束 teacherAnim.timePointEvent = null; teacherAnim.OnPause(); OnClickHuaTong(); } }; teacherAnim.PlayForward("TY_LS_JKDW"); } }
/// <summary> /// 小华贴字体动画 /// </summary> void XHTZka() { GameObject ka = ResManager.GetPrefab("Prefabs/AnimationKa/XH_F_4TH_FNN_KA"); ka.name = "XH_F_4TH_FNN_KA"; ka.transform.SetParent(transform); //我看见 Material matTar = ka.transform.Find("Group1/Main/DeformationSystem/Root_M/Spine1_M/Chest_M/Scapula_R/Shoulder_R/ShoulderPart1_R/ShoulderPart2_R/Elbow_R/Wrist_R/goutongben/goutongben_02/tuka5").GetComponent <MeshRenderer>().materials[1]; Material matSource = SentenceExpressionModel.GetInstance().GetTuKa(PropsTag.judai_wokanjian.ToString()).GetComponent <MeshRenderer>().materials[1]; matTar.CopyPropertiesFromMaterial(matSource); Transform tk10 = ka.transform.Find("Group1/Main/DeformationSystem/Root_M/Spine1_M/Chest_M/Scapula_L/Shoulder_L/ShoulderPart1_L/ShoulderPart2_L/Elbow_L/Wrist_L/judai4/tuka10"); Transform Wrist_L = ka.transform.Find("Group1/Main/DeformationSystem/Root_M/Spine1_M/Chest_M/Scapula_L/Shoulder_L/ShoulderPart1_L/ShoulderPart2_L/Elbow_L/Wrist_L");//拿卡 Material matk6 = Wrist_L.Find("tuka6").GetComponent <MeshRenderer>().materials[1]; matk6.CopyPropertiesFromMaterial(matSource); Material mattk4 = ka.transform.Find("Group1/Main/DeformationSystem/Root_M/Spine1_M/Chest_M/Scapula_R/Shoulder_R/ShoulderPart1_R/ShoulderPart2_R/Elbow_R/Wrist_R/goutongben/goutongben_01/tuka4").GetComponent <MeshRenderer>().materials[1]; mattk4.CopyPropertiesFromMaterial(matSource); tk10.localEulerAngles = new Vector3(0, -90, 0); matTar = tk10.GetComponent <MeshRenderer>().materials[1]; matTar.CopyPropertiesFromMaterial(matSource); //实物 index = Random.Range(101, 1001) % 3 + 25; Debug.Log(index); matTar = ka.transform.Find("Group1/Main/DeformationSystem/Root_M/Spine1_M/Chest_M/Scapula_R/Shoulder_R/ShoulderPart1_R/ShoulderPart2_R/Elbow_R/Wrist_R/goutongben/goutongben_03/tuka7").GetComponent <MeshRenderer>().materials[1]; matSource = SentenceExpressionModel.GetInstance().GetObj(index).GetComponent <MeshRenderer>().materials[1]; matTar.CopyPropertiesFromMaterial(matSource); Transform tk9 = ka.transform.Find("Group1/Main/DeformationSystem/Root_M/Spine1_M/Chest_M/Scapula_L/Shoulder_L/ShoulderPart1_L/ShoulderPart2_L/Elbow_L/Wrist_L/judai4/tuka9"); tk9.localEulerAngles = new Vector3(0, -90, 0); matTar = tk9.GetComponent <MeshRenderer>().materials[1]; matTar.CopyPropertiesFromMaterial(matSource); Transform tk8 = ka.transform.Find("Group1/Main/DeformationSystem/Root_M/Spine1_M/Chest_M/Scapula_L/Shoulder_L/ShoulderPart1_L/ShoulderPart2_L/Elbow_L/Wrist_L/tuka8"); Material mat8 = tk8.GetComponent <MeshRenderer>().materials[1]; mat8.CopyPropertiesFromMaterial(matSource); PropsObject pObj = SentenceExpressionModel.GetInstance().GetObj(index).GetComponent <PropsObject>(); Reinforcement rfc = new Reinforcement(pObj.pData); //测试代码 SentenceExpressionModel.GetInstance().CurReinforcement = rfc; //设置强化物 Debug.Log(rfc.pData.name_cn); XH.transitionTime = 0; //XH.Complete += XHTZkaCallback; XH.OnContinue(); XH.timePointEvent = (a) =>// { if (a >= 615 && a <= 617) { XH.timePointEvent = null; XH.OnPause(); //Debug.LogError("pause"); XHTZkaCallback();//mm高亮 } }; LegacyAnimationOper lao = ka.GetLegacyAnimationOper(); bool pass = true; lao.framePointEvent = (a) => { if (a >= 615 && a <= 617 && pass) { lao.framePointEvent = null; pass = false; lao.OnPause(); } }; lao.PlayForward("XH_F_4TH_FNN_KA"); }