Beispiel #1
0
    IEnumerator CoPlayGame()
    {
        Time.timeScale = 1f;
        cinematicManager.btnSkip.enabled      = false;
        cinematicManager.btnBeginPlay.enabled = false;
        cinematicManager.btnGoToTitle.enabled = false;

        Tweener tween = FadeHelper.FadeIn(imgBlackBoard, 1f);

        yield return(new WaitWhile(() => tween.IsPlaying()));

        cinematicManager.HidePrologue();
        audioSource.DOFade(0f, 1f);
        yield return(new WaitForSeconds(1f));

        audioSource.Stop();
        audioSource.volume = 1f;
        Camera.main.GetComponent <AudioListener>().enabled = false;
        yield return(SceneManager.LoadSceneAsync("GameScene", LoadSceneMode.Additive));

        yield return(SceneManager.UnloadSceneAsync("TitleScene"));

        yield return(SceneManager.UnloadSceneAsync("CinematicScene"));

        FadeHelper.FadeOut(imgBlackBoard, 1f);
        gameState = eGameState.playingGame;
    }
Beispiel #2
0
    IEnumerator CoShowPrologue()
    {
        isPlayingPrologue = true;

        btnSkip.transform.localScale = Vector3.zero;
        btnSkip.gameObject.SetActive(true);
        btnSkip.transform.DOScale(Vector3.one, 0.5f)
        .SetEase(Ease.OutQuad);

        for (int i = 0; i < arrImgPrologue.Length; i++)
        {
            FadeHelper.FadeIn(arrImgPrologue[i], 1f);
            ChatText(textIntervalSecond, textVariabilitySecond, arrStrPrologue[i]);
            yield return(new WaitWhile(() => isChatting));

            yield return(new WaitUntil(() => Input.GetMouseButton(0)));

            textTouch.gameObject.SetActive(false);
            FadeHelper.FadeOut(arrImgPrologue[i], 1f);
        }

        btnSkip.transform.DOScale(Vector3.zero, 0.5f)
        .SetEase(Ease.InQuad)
        .OnComplete(() => btnSkip.gameObject.SetActive(false));

        btnBeginPlay.transform.localScale = Vector3.zero;
        btnBeginPlay.gameObject.SetActive(true);
        btnBeginPlay.transform.DOScale(Vector3.one, 0.5f)
        .SetEase(Ease.OutQuad);

        routinePrologue = null;
    }
Beispiel #3
0
    IEnumerator CoRestart()
    {
        gameState      = eGameState.loading;
        Time.timeScale = 1f;
        Tweener tween = FadeHelper.FadeIn(imgBlackBoard, 1f);

        yield return(new WaitWhile(() => tween.IsPlaying()));

        yield return(new WaitForSeconds(1f));

        yield return(SceneManager.LoadSceneAsync("GameScene"));

        FadeHelper.FadeOut(imgBlackBoard, 1f);
        gameState = eGameState.playingGame;
    }
Beispiel #4
0
    IEnumerator CoClickEnding()
    {
        Time.timeScale = 1f;
        yield return(null);

        Tweener tween = FadeHelper.FadeIn(imgBlackBoard, 1f);

        yield return(new WaitWhile(() => tween.IsPlaying()));

        yield return(SceneManager.LoadSceneAsync("CinematicScene", LoadSceneMode.Additive));

        cinematicManager = GameObject.Find("CinematicManager").GetComponent <CinematicManager>();
        cinematicManager.btnGoToTitle.onClick.AddListener(OnClickGoToTitle);
        cinematicManager.btnSkip.onClick.AddListener(cinematicManager.HideEnding);
        cinematicManager.ShowEnding();
        FadeHelper.FadeOut(imgBlackBoard, 1f);
    }
Beispiel #5
0
    IEnumerator CoBeginPlay()
    {
        gameState      = eGameState.loading;
        Time.timeScale = 1f;
        Tweener tween = FadeHelper.FadeIn(imgBlackBoard, 1f);

        yield return(new WaitWhile(() => tween.IsPlaying()));

        yield return(SceneManager.LoadSceneAsync("CinematicScene", LoadSceneMode.Additive));

        cinematicManager = FindObjectOfType <CinematicManager>().GetComponent <CinematicManager>();
        cinematicManager.btnBeginPlay.onClick.AddListener(OnClickPlayGame);
        cinematicManager.btnSkip.onClick.AddListener(OnClickPlayGame);
        cinematicManager.ShowPrologue();
        FadeHelper.FadeOut(imgBlackBoard, 1f);
        GameObject.Find("TitleCanvas").SetActive(false);
    }
Beispiel #6
0
    IEnumerator CoShowCredit()
    {
        yield return(null);

        ChatText(textIntervalSecond, textVariabilitySecond, strCredit);
        yield return(new WaitWhile(() => isChatting));

        yield return(new WaitForSeconds(1f));

        Tweener tween = FadeHelper.FadeIn(GameManager.Instance.imgBlackBoard, 1f);

        yield return(tween.WaitForCompletion());

        yield return(new WaitForSeconds(2f));

        GameManager.Instance.OnClickGoToTitle();
    }
Beispiel #7
0
    IEnumerator CoGoToTitle()
    {
        Time.timeScale = 1f;
        yield return(null);

        Tweener tween = FadeHelper.FadeIn(imgBlackBoard, 1f);

        yield return(new WaitWhile(() => tween.IsPlaying()));

        OnClickExitCancel();
        yield return(SceneManager.LoadSceneAsync("TitleScene"));

        GameObject.Find("BeginButton").GetComponent <Button>().onClick.AddListener(OnClickBeginPlay);
        GameObject.Find("ExitButton").GetComponent <Button>().onClick.AddListener(PopupExitPanel);
        audioSource.Play();

        FadeHelper.FadeOut(imgBlackBoard, 1f);
    }
Beispiel #8
0
    IEnumerator CoShowEnding()
    {
        isPlayingEnding = true;

        btnSkip.transform.localScale = Vector3.zero;
        btnSkip.gameObject.SetActive(true);
        btnSkip.transform.DOScale(Vector3.one, 0.5f)
        .SetEase(Ease.OutQuad);

        for (int i = 0; i < arrImgEnding.Length; i++)
        {
            if (i == 0)
            {
                AudioManager.PlaySound("EndingClap");
            }
            if (i == 2)
            {
                AudioManager.PlaySound("KJRShout");
            }

            FadeHelper.FadeIn(arrImgEnding[i], 1f);
            ChatText(textIntervalSecond, textVariabilitySecond, arrStrEnding[i]);
            yield return(new WaitWhile(() => isChatting));

            yield return(new WaitUntil(() => Input.GetMouseButton(0)));

            textTouch.gameObject.SetActive(false);
            FadeHelper.FadeOut(arrImgEnding[i], 1f);
        }

        btnSkip.transform.DOScale(Vector3.zero, 0.5f)
        .SetEase(Ease.InQuad)
        .OnComplete(() => btnSkip.gameObject.SetActive(false));

        btnGoToTitle.transform.localScale = Vector3.zero;
        btnGoToTitle.gameObject.SetActive(true);
        btnGoToTitle.transform.DOScale(Vector3.one, 0.5f)
        .SetEase(Ease.OutQuad);

        routineEnding = null;
    }
 public void RenderGameEnded()
 {
     FadeHelper.FadeIn(GameOverUi);
 }