Exemple #1
0
    IEnumerator CameraTargetType()
    {
        if (dialogues[lineCount].tf_target != null)
        {
            DisappearObjects(false);
        }
        else if (dialogues[lineCount].cameraType == CameraType.Reset)
        {
            DisappearObjects(true);
            StartCoroutine(theSprite.HalfSpriteDisappearCoroutine());
        }


        switch (dialogues[lineCount].cameraType)
        {
        case CameraType.ObjectFront: theCam.CameraTargetting(dialogues[lineCount].tf_target); new WaitUntil(() => CameraController.isFinish); break;

        case CameraType.Reset: theCam.CameraTargetting(null, 0.05f, true, false); break;

        case CameraType.FadeIn: SettingUI(false); SplashManager.isfinish = false; StartCoroutine(theSplash.FadeIn(false, true)); yield return(new WaitUntil(() => SplashManager.isfinish)); break;

        case CameraType.FadeOut: SettingUI(false); SplashManager.isfinish = false; StartCoroutine(theSplash.FadeOut(false, true, true)); yield return(new WaitUntil(() => SplashManager.isfinish)); break;

        case CameraType.FlashIn: SettingUI(false); SplashManager.isfinish = false; StartCoroutine(theSplash.FadeIn(true, true)); yield return(new WaitUntil(() => SplashManager.isfinish)); break;

        case CameraType.FlashOut: SettingUI(false); SplashManager.isfinish = false; StartCoroutine(theSplash.FadeOut(true, true, false)); yield return(new WaitUntil(() => SplashManager.isfinish)); break;

        case CameraType.ShowCutScene: SettingUI(false); CutSceneManager.isFinished = false; StartCoroutine(theCutScene.CutSceneCoroutine(dialogues[lineCount].spriteName[contextCount], true)); yield return(new WaitUntil(() => CutSceneManager.isFinished)); break;

        case CameraType.HideCutScene: SettingUI(false); CutSceneManager.isFinished = false; StartCoroutine(theCutScene.CutSceneCoroutine(null, false)); yield return(new WaitUntil(() => CutSceneManager.isFinished)); theCam.CameraTargetting(dialogues[lineCount].tf_target); break;

        case CameraType.AppearSlideCG: SlideManager.isFinished = false; StartCoroutine(theSlide.AppearSlide(SplitSlideCGName())); yield return(new WaitUntil(() => SlideManager.isFinished)); theCam.CameraTargetting(dialogues[lineCount].tf_target); break;

        case CameraType.DisappearSlideCG: SlideManager.isFinished = false; StartCoroutine(theSlide.DisAppearSlide()); yield return(new WaitUntil(() => SlideManager.isFinished)); theCam.CameraTargetting(dialogues[lineCount].tf_target); break;

        case CameraType.ChangeSlideCG: SlideManager.isChanged = false; StartCoroutine(theSlide.ChangeSlide(SplitSlideCGName())); yield return(new WaitUntil(() => SlideManager.isChanged)); theCam.CameraTargetting(dialogues[lineCount].tf_target); break;
        }

        StartCoroutine(TypeWriter());
    }
Exemple #2
0
    public IEnumerator CutSceneCoroutine(string p_CutSceneName, bool p_isShow)
    {
        SplashManager.isfinish = false;
        StartCoroutine(theSplash.FadeOut(true, false, true));
        yield return(new WaitUntil(() => SplashManager.isfinish));

        if (theSlide.CheckSlide())
        {
            StartCoroutine(theSlide.DisAppearSlide());
        }

        if (p_isShow)
        {
            Sprite t_Sprite = Resources.Load <Sprite>("CutScenes/" + p_CutSceneName);
            if (t_Sprite != null)
            {
                img_CutScene.gameObject.SetActive(true);
                img_CutScene.sprite = t_Sprite;
                theCam.CameraTargetting(null, 0.05f, true, false);
            }
            else
            {
                Debug.LogError("잘못된 컷신 CG파일 이름입니다");
            }
        }
        else
        {
            img_CutScene.gameObject.SetActive(false);
        }


        SplashManager.isfinish = false;
        StartCoroutine(theSplash.FadeIn(true, false));
        yield return(new WaitUntil(() => SplashManager.isfinish));

        yield return(new WaitForSeconds(0.5f));

        isFinished = true;
    }