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; } }
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); }