Пример #1
0
    void HandleTrigger(PlayerStorySpecificStuff player)
    {
        if (active)
        {
            return;
        }

        switch (kind)
        {
        case CutsceneTriggerKind.SICK_KID_END:
            if (player.isFairy)
            {
                StartCoroutine(CutsceneManager.Get().EndingGame());
                active = true;
            }
            break;

        case CutsceneTriggerKind.FAIRY_WATER:
            if (!player.isFairy)
            {
                StartCoroutine(CutsceneManager.Get().TurnFairy(player));
                active = true;
            }
            break;

        case CutsceneTriggerKind.ENTER_FAIRY_FOUNTAIN:
            CutsceneManager.Get().EnterFairyFountain();
            active = true;
            break;
        }
    }
Пример #2
0
    public IEnumerator TurnFairy(PlayerStorySpecificStuff playerStory)
    {
        playerActions.SetFreeze(true);

        yield return(new WaitForSeconds(1f));

        fairyFountainWater.SetActive(true);

        var player = playerActions.transform;

        player.DOMoveY(player.position.y - 1f, 2f).SetEase(Ease.Linear);
        yield return(new WaitForSeconds(1.5f));

        player.GetComponent <SpriteRenderer>().enabled = false;

        blackscreen.GetComponent <Image>().color = Color.white;
        blackscreen.alpha = 0f;
        blackscreen.gameObject.SetActive(true);
        blackscreen.DOFade(1f, 1.5f);

        yield return(new WaitForSeconds(1.5f));

        playerStory.ToggleFairy(true);
        SoundtrackManager.Get().ToggleSoundtrack(true, terrorSong);

        player.DOMoveY(player.position.y + 1f, 0f);
        blackscreen.DOFade(0f, 0f);
        yield return(new WaitForSeconds(0.5f));

        blackscreen.DOFade(1f, 0f);
        yield return(new WaitForSeconds(0.5f));

        player.GetComponent <SpriteRenderer>().enabled = true;
        blackscreen.DOFade(0f, 0f);

        fairyFountainWater.SetActive(false);

        playerActions.SetFreeze(false);
    }