private void Waiting() { if (Time.time > timer) { Phase = nextPhase; return; } }
private void ResizeMonitorVertically() { monitor.transform.localScale = Vector3.MoveTowards(monitor.transform.localScale, sizeVertical, 10 * Time.deltaTime); condition = monitor.transform.localScale.y == 10.0f; if (condition) { Phase = CongratulationMessagePhase.ResizeMonitorHorizontally; } }
private void ResizeMonitorHorizontally() { monitor.transform.localScale = Vector3.MoveTowards(monitor.transform.localScale, sizeHorizontal, 10 * Time.deltaTime); condition = monitor.transform.localScale.x == 10.0f; if (condition) { Wait(2.0f, CongratulationMessagePhase.PlayVideo); Phase = CongratulationMessagePhase.Waiting; } }
private void SpawningMonitor() { monitor = Instantiate(monitorPrefab); videoPlayer = monitor.GetComponentInChildren <UnityEngine.Video.VideoPlayer>(); monitor.transform.localScale = Vector3.one * 0.1f; monitor.transform.position = new Vector3(170.18f, 52.34f, 60.27f); Phase = CongratulationMessagePhase.ResizeMonitorVertically; }
private void DisappearingLine() { condition = line.color == Color.clear; congratulation.color = Vector4.MoveTowards(congratulation.color, Color.clear, Time.deltaTime); congratulation.rectTransform.sizeDelta = Vector2.MoveTowards(congratulation.rectTransform.sizeDelta, congratulationBaseSize, resizeSpeed * Time.deltaTime); line.color = Vector4.MoveTowards(line.color, Color.clear, Time.deltaTime); if (condition) { Wait(2.0f, CongratulationMessagePhase.SpawningMonitor); Phase = CongratulationMessagePhase.Waiting; } }
private void ApearingMessage() { condition = (congratulation.color == Color.white) && (congratulation.rectTransform.sizeDelta == congratulationBaseSize); line.color = Vector4.MoveTowards(line.color, Color.white, Time.deltaTime); congratulation.color = Vector4.MoveTowards(congratulation.color, Color.white, Time.deltaTime); congratulation.rectTransform.sizeDelta = Vector2.MoveTowards(congratulation.rectTransform.sizeDelta, congratulationBaseSize, resizeSpeed * Time.deltaTime); if (condition) { Wait(2.0f, CongratulationMessagePhase.DisappearingMessage); congratulationBaseSize = congratulation.rectTransform.sizeDelta * 0.7f; Phase = CongratulationMessagePhase.Waiting; } }
//========================================================================================================================= // E N U M E R A T O R S //========================================================================================================================= private IEnumerator Phases() { yield return(new WaitForEndOfFrame()); yield return(new WaitUntil(() => lastBoss.isDeath)); QuestLog.ChangeCurrentObjective(Objective.Completed); yield return(new WaitForSeconds(5.0f)); InstantiatePrefab(); Setting(); Phase = CongratulationMessagePhase.AppearingLine; yield return(new WaitForSeconds(1.0f)); Phase = CongratulationMessagePhase.AppearingMessage; yield return(new WaitUntil(() => Phase == CongratulationMessagePhase.DisappearingMessage)); yield return(new WaitForSeconds(1.0f)); Phase = CongratulationMessagePhase.DisapearringLine; yield return(new WaitUntil(() => Phase == CongratulationMessagePhase.ResizeMonitorVertically)); videoPlayer.Play(); yield return(new WaitUntil(() => videoPlayer.isPlaying)); videoPlayer.Pause(); yield return(new WaitUntil(() => Phase == CongratulationMessagePhase.PlayVideo)); videoPlayer.Play(); yield return(new WaitUntil(() => videoPlayer.isPlaying)); yield return(new WaitUntil(() => !videoPlayer.isPlaying)); Phase = CongratulationMessagePhase.End; Debug.Log("END!"); }
private void Wait(float second, CongratulationMessagePhase nextPhase) { timer = Time.time + second; this.nextPhase = nextPhase; }