void FadeApplySingle(int num, bool isScale, bool isAlpha, int t)//num is the identifier of cv , { if (StateLayoutBattle.isFading[0, num]) { canvasGroup = gos[num].GetComponent <CanvasGroup>(); count[num]++; tmp[num] = Convert.ToSingle(FuncEffects.FadeOutEaseIn(count[num], t)); if (count[num] >= t) { canvasGroup.alpha = 0; StateLayoutBattle.isFading[0, num] = false; count[num] = 0; tmp[num] = 0; gos[num].gameObject.SetActive(false); //修正 } else {//变换 if (canvasGroup.interactable) { canvasGroup.interactable = false; } if (isAlpha) { canvasGroup.alpha = tmp[num]; } if (isScale) { gos[num].transform.localScale = new Vector3(tmp[num] * (1 - scaleMinWindowFadeInAndOut) + scaleMinWindowFadeInAndOut, tmp[num] * (1 - scaleMinWindowFadeInAndOut) + scaleMinWindowFadeInAndOut, 1f); } } }//gos[num]淡出 else if (StateLayoutBattle.isFading[1, num]) { canvasGroup = gos[num].GetComponent <CanvasGroup>(); count[num]++; tmp[num] = Convert.ToSingle(FuncEffects.FadeInEaseOut(count[num], t)); if (count[num] >= t) { StateLayoutBattle.isFading[1, num] = false; count[num] = 0; tmp[num] = 0; canvasGroup.alpha = 1; gos[num].transform.localScale = new Vector3(1f, 1f, 1f); //修正alpha和scale if (!canvasGroup.interactable) { canvasGroup.interactable = true; } } else {//变换 if (isAlpha) { canvasGroup.alpha = tmp[num]; } if (isScale) { gos[num].transform.localScale = new Vector3(tmp[num] * (1 - scaleMinWindowFadeInAndOut) + scaleMinWindowFadeInAndOut, tmp[num] * (1 - scaleMinWindowFadeInAndOut) + scaleMinWindowFadeInAndOut, 1f); } } if (!gos[num].gameObject.activeInHierarchy) { gos[num].gameObject.SetActive(true); } }//gos[num]淡入 }
void TransSceneApply() { FadeApplySingle(4, false, true, timeTransSceneInAndOut + 6); if (imgUstc.GetComponent <CanvasGroup>().alpha == 0 && (StateLayoutBattle.isFading[0, 2] || StateLayoutBattle.isFading[1, 2])) { count[2]++; canvasGroup = cvObstruct.GetComponent <CanvasGroup>(); if (canvasGroup.alpha != 0) { canvasGroup.alpha = 0; cvObstruct.gameObject.SetActive(true); cvTransScene.gameObject.SetActive(true); } if (StateLayoutBattle.isFading[0, 2]) { imgTransSceneLeft.transform.localPosition = new Vector3(Convert.ToSingle(-1360 + FuncEffects.FadeInEaseOut(count[2], timeTransSceneInAndOut) * 680), -425, 0); imgTransSceneRight.transform.localPosition = new Vector3(Convert.ToSingle(1360 - FuncEffects.FadeInEaseOut(count[2], timeTransSceneInAndOut) * 680), -425, 0); } else { imgTransSceneLeft.transform.localPosition = new Vector3(Convert.ToSingle(-1360 + FuncEffects.FadeOutEaseIn(count[2], timeTransSceneInAndOut) * 680), -425, 0); imgTransSceneRight.transform.localPosition = new Vector3(Convert.ToSingle(1360 - FuncEffects.FadeOutEaseIn(count[2], timeTransSceneInAndOut) * 680), -425, 0); } if (count[2] >= timeTransSceneInAndOut) { if (StateLayoutBattle.isFading[0, 2]) { StateLayoutBattle.isFading[1, 4] = true; ustc = true; //SceneManager.LoadScene(3);// imgTransSceneLeft.transform.localPosition = new Vector3(-680, -425, 0); imgTransSceneRight.transform.localPosition = new Vector3(680, -425, 0); StateLayoutBattle.isFading[0, 2] = false; //ReactLayoutBase.Fade(2,1);// //StateLayoutBattle.isFading[0, 2] = false;// Debug.Log("??"); cvObstruct.gameObject.SetActive(false); //cvTransScene.gameObject.SetActive(false);// canvasGroup.alpha = 1; count[2] = 0; } else { imgTransSceneLeft.transform.localPosition = new Vector3(-1360, -425, 0); // imgTransSceneRight.transform.localPosition = new Vector3(1360, -425, 0); // StateLayoutBattle.isFading[1, 2] = false; cvObstruct.gameObject.SetActive(false); cvTransScene.gameObject.SetActive(false); canvasGroup.alpha = 1; count[2] = 0; } } } if (ustc && imgUstc.GetComponent <CanvasGroup>().alpha == 1f) { ReactLayoutBase.Fade(2, 1);// StateLayoutBase.isFading[0, 4] = true; //cvTransScene.gameObject.SetActive(false);// ReactLayoutBase.SetOnce(true); StartCoroutine(LoadScene(3));// } }//转场出/入