IEnumerator ChapterStart()
    {
        CharacterMover playerMover = GameObject.FindGameObjectWithTag("Player").GetComponent <CharacterMover>();

        playerMover.moveType = CharacterMover.MoveType.LOCK;

        StartUI.SetActive(true);

        text = StartUI.GetComponentInChildren <Text>();

        yield return(StartCoroutine(StartTextFadeIn()));

        yield return(new WaitForSeconds(2.0f));

        yield return(StartCoroutine(StartTextFadeOut()));

        StartUI.SetActive(false);

        objFadeEfx.SetActive(true);
        fadeEfx.FadeIn();

        yield return(StartCoroutine(PartnerEvent()));

        playerMover.moveType = CharacterMover.MoveType.COMMANDMOVE;
        note.AddMission("Resque");
        avDoor.enabled = false;
        yield break;
    }
Esempio n. 2
0
    IEnumerator TalkRoutine()
    {
        if (!isReqOver && n.CheckMission("GoToMH"))
        {
            DialogueManager.Instance().StartDialogue(JH1);
            yield return(new WaitUntil(() => DialogueManager.Instance().canvasObj.activeSelf == false));

            DialogueManager.Instance().StartDialogue(MH1);
            yield return(new WaitUntil(() => DialogueManager.Instance().canvasObj.activeSelf == false));

            DialogueManager.Instance().StartDialogue(JH2);
            yield return(new WaitUntil(() => DialogueManager.Instance().canvasObj.activeSelf == false));

            DialogueManager.Instance().StartDialogue(MH2);
            yield return(new WaitUntil(() => DialogueManager.Instance().canvasObj.activeSelf == false));

            DialogueManager.Instance().StartDialogue(JH3);
            yield return(new WaitUntil(() => DialogueManager.Instance().canvasObj.activeSelf == false));

            DialogueManager.Instance().StartDialogue(MH3);
            yield return(new WaitUntil(() => DialogueManager.Instance().canvasObj.activeSelf == false));

            DialogueManager.Instance().StartDialogue(JH4);
            yield return(new WaitUntil(() => DialogueManager.Instance().canvasObj.activeSelf == false));

            DialogueManager.Instance().StartDialogue(MH4);
            yield return(new WaitUntil(() => DialogueManager.Instance().canvasObj.activeSelf == false));

            DialogueManager.Instance().StartDialogue(JH5);
            yield return(new WaitUntil(() => DialogueManager.Instance().canvasObj.activeSelf == false));

            DialogueManager.Instance().StartDialogue(MH5);
            yield return(new WaitUntil(() => DialogueManager.Instance().canvasObj.activeSelf == false));

            DialogueManager.Instance().StartDialogue(JH6);
            yield return(new WaitUntil(() => DialogueManager.Instance().canvasObj.activeSelf == false));

            if (n)
            {
                n.RemoveMission("GoToMH");
                n.AddMission("CheckFireEx");
                isReqOver = true;
            }
        }
        else
        {
            DialogueManager.Instance().StartDialogue(reqOverDlg);
        }
        yield break;
    }
Esempio n. 3
0
    IEnumerator JooImTalk()
    {
        if (isReqOver)
        {
            DialogueManager.Instance().StartDialogue(reqOverDlg);
        }
        else
        {
            DialogueManager.Instance().StartDialogue(JH1);
            yield return(new WaitUntil(() => DialogueManager.Instance().canvasObj.activeSelf == false));

            DialogueManager.Instance().StartDialogue(JooIm1);
            yield return(new WaitUntil(() => DialogueManager.Instance().canvasObj.activeSelf == false));

            DialogueManager.Instance().StartDialogue(JH2);
            yield return(new WaitUntil(() => DialogueManager.Instance().canvasObj.activeSelf == false));

            DialogueManager.Instance().StartDialogue(JooIm2);
            yield return(new WaitUntil(() => DialogueManager.Instance().canvasObj.activeSelf == false));

            DialogueManager.Instance().StartDialogue(JH3);
            yield return(new WaitUntil(() => DialogueManager.Instance().canvasObj.activeSelf == false));

            DialogueManager.Instance().StartDialogue(JooIm3);
            yield return(new WaitUntil(() => DialogueManager.Instance().canvasObj.activeSelf == false));

            DialogueManager.Instance().StartDialogue(JH4);
            yield return(new WaitUntil(() => DialogueManager.Instance().canvasObj.activeSelf == false));

            DialogueManager.Instance().StartDialogue(JooIm4);
            yield return(new WaitUntil(() => DialogueManager.Instance().canvasObj.activeSelf == false));

            DialogueManager.Instance().StartDialogue(JH5);
            yield return(new WaitUntil(() => DialogueManager.Instance().canvasObj.activeSelf == false));

            Note n = FindObjectOfType <Note>();
            if (n != null)
            {
                n.RemoveMission("GoToRest");
                var inven = FindObjectOfType <InventorySystem>();

                n.AddMission("GoToMH");
                // 이미 열쇠를 갖고있다면
                if (inven.CheckPassiveItem("Key"))
                {
                    // 곧장 창고로 이동하는 퀘스트
                    n.AddMission("GoToStore");
                }
                else
                {
                    n.AddMission("FindKey");
                }

                isReqOver = true;
            }
            DialogueManager.Instance().textTalker.color = new Color(0.2f, 0.6f, 1);
            DialogueManager.Instance().textSentence.color = new Color(0.2f, 0.6f, 1);
            DialogueManager.Instance().textSentence.alignment = TextAnchor.UpperCenter;
            DialogueManager.Instance().StartDialogue(Message);
            yield return(new WaitUntil(() => DialogueManager.Instance().canvasObj.activeSelf == false));

            DialogueManager.Instance().textTalker.color = new Color(1, 1, 1);
            DialogueManager.Instance().textSentence.color = new Color(1, 1, 1);
            DialogueManager.Instance().textSentence.alignment = TextAnchor.UpperLeft;
        }

        yield break;
    }