예제 #1
0
    public IEnumerator LibraryStartEvent()
    {
        // 실내에서 시작. 카메라 반전
        cameraSystem.changeViewport();

        // 플레이어 이동상태 잠금
        characterMover.moveType = CharacterMover.MoveType.LOCK;

        Character.transform.localScale = new Vector3(-1, 1, 1);
        characterMover.myAnimator.SetBool("IsWalk", false);
        characterMover.myAnimator.SetBool("IsSit", true);

        // 페이드 인 효과
        objFadeEfx.SetActive(true);
        FadeEfx.FadeIn();

        // 2초 대기
        yield return(new WaitForSeconds(2.0f));

        // 수진이 플레이어를 부르는 대화 시작
        //LibDialogue.TriggerDialogue();
        dialogueManager.StartDialogue(Sujin1);
        yield return(new WaitUntil(() => dialogueManager.canvasObj.activeSelf == false));

        dialogueManager.StartDialogue(JinHyung1);
        yield return(new WaitUntil(() => dialogueManager.canvasObj.activeSelf == false));

        dialogueManager.StartDialogue(Sujin2);
        yield return(new WaitUntil(() => dialogueManager.canvasObj.activeSelf == false));

        dialogueManager.StartDialogue(JinHyung2);
        yield return(new WaitUntil(() => dialogueManager.canvasObj.activeSelf == false));

        // 페이드 아웃 인
        FadeEfx.FadeOut();
        characterMover.myAnimator.SetBool("IsSit", false);
        yield return(new WaitForSeconds(1.2f));

        FadeEfx.FadeIn();


        // 튜토리얼 패널 좌우 활성화 + 설명 다이얼로그 출력
        tutorialPanel.OnLeftRight();
        // 폰트 색 시스템 메시지 색상으로 변경
        dialogueManager.textTalker.color       = new Color(0.2f, 0.6f, 1);
        dialogueManager.textSentence.color     = new Color(0.2f, 0.6f, 1);
        dialogueManager.textSentence.alignment = TextAnchor.UpperCenter;
        LibDialogue2.TriggerDialogue();
        yield return(new WaitUntil(() => dialogueManager.canvasObj.activeSelf == false));

        FindObjectOfType <Note>().AddMission("GoToRest");
        tutorialPanel.OffLeftRight();
        dialogueManager.textTalker.color       = new Color(1, 1, 1);
        dialogueManager.textSentence.color     = new Color(1, 1, 1);
        dialogueManager.textSentence.alignment = TextAnchor.UpperLeft;

        characterMover.moveType = CharacterMover.MoveType.COMMANDMOVE;

        yield break;
    }