protected override IEnumerator StartState(GameController.State state) { yield return(base.StartState(state)); switch (state) { case GameController.State.Introduction: RichPresenceManager.SetRichPresence("UYW_RP_SubTheTitle"); this.InputText.gameObject.SetActive(false); this.MovieImage.enabled = false; this._ActiveContent = (Singleton <ContentManager> .Instance.FindRandomContent(ContentManager.GameType.SubTheTitle) as ContentManager.SubTheTitleContent); //BEGIN MODIFICATION if (this._ActiveContent.ID > 999) { moviePath = Application.persistentDataPath + "/NewContent/stt" + this._ActiveContent.ID.ToString() + ".mp4"; } else { moviePath = string.Concat(new object[] { "Content/SubTheTitle/", this._ActiveContent.ID, "/clip", (Singleton <GameManager> .Instance.CurrentLanguage != GameManager.LanguageSettings.French) ? string.Empty : "_FR" }); } //END MODIFICATION if (this._ActiveContent.Dimensions != Vector2.zero) { this.InputText.rectTransform.sizeDelta = this._ActiveContent.Dimensions; } this.InputText.transform.localPosition = this._ActiveContent.Position; while (Singleton <LoadingScreen> .Instance.IsShowing) { yield return(null); } if (Singleton <GameManager> .Instance.CurrentMode != GameManager.GameMode.Debug) { if (Singleton <GameManager> .Instance.IsFirstSubTheTitle) { Singleton <AudioManager> .Instance.SetMusicVolume(0f); yield return(this.PlayTutorialVideo(GameController.State.Introduction, "STT_Tut1" + ((Singleton <GameManager> .Instance.CurrentLanguage == GameManager.LanguageSettings.French) ? "_FR" : ""), false)); Singleton <AudioManager> .Instance.SetMusicVolume(1f); } this._MoviePlayer.Target = this.MovieImage; yield return(this._MoviePlayer.Play(SubTheTitleController.CountdownMoviePath, false, false)); this.MovieImage.enabled = true; while (this._MoviePlayer.IsPlaying) { yield return(null); } } base.ChangeState(GameController.State.RevealPrompt); break; case GameController.State.RevealPrompt: { if (Singleton <GameManager> .Instance.FamilyMode) { base.SetHouseAnswers(this._ActiveContent.FamilyModeHouseAnswers); } else { base.SetHouseAnswers(this._ActiveContent.HouseAnswers); } Singleton <AudioManager> .Instance.FadeOutMusic(0f, 0f); UnityEngine.Debug.Log("Loading Prompt"); UnityEngine.Debug.Log(this._ActiveContent.ID); this.ShadowBackdrop.DOFade(0.58f, 0.5f); string promptText = "[Insert subtitle here.]"; if (Singleton <GameManager> .Instance.CurrentLanguage == GameManager.LanguageSettings.French) { promptText = "[Insérer un sous-titre ici.]"; } yield return(this.PlayMovie(GameController.State.RevealPrompt, this._ActiveContent, moviePath, promptText, false, true)); //MODIFIED base.ChangeState(GameController.State.InputCheck); break; } case GameController.State.WaitForInput: { string promptText2 = "[Insert subtitle here.]"; if (Singleton <GameManager> .Instance.CurrentLanguage == GameManager.LanguageSettings.French) { promptText2 = "[Insérer un sous-titre ici.]"; } yield return(this.PlayMovie(GameController.State.WaitForInput, this._ActiveContent, moviePath, promptText2, false, true)); this.ShadowBackdrop.DOFade(0f, 0.5f); Singleton <AudioManager> .Instance.PlayMusic("STT_Theme", 1f, true); base.StartCoroutine(this.PlayTutorialVideo(GameController.State.WaitForInput, "STT_Tut2" + ((Singleton <GameManager> .Instance.CurrentLanguage == GameManager.LanguageSettings.French) ? "_FR" : ""), true)); break; } case GameController.State.RevealAnswers: { Singleton <AudioManager> .Instance.StopMusic(); this.ShadowBackdrop.DOFade(0.58f, 0.5f); yield return(Singleton <AudioManager> .Instance.PlayVoiceOverAndWait("12.X", Singleton <GameManager> .Instance.GetAnswerRevealClips())); GameController.Answer[] inputArray = this._UserInput[this._CurrentRound].ToArray(); foreach (GameController.Answer inputPair in inputArray) { yield return(this.PlayMovie(GameController.State.RevealAnswers, this._ActiveContent, moviePath, inputPair.Value, true, true)); //MODIFIED yield return(base.ResolveInput(inputPair.User.ID)); } this.ShadowBackdrop.DOFade(0f, 0.5f); base.ChangeState(GameController.State.VotingCheck); break; } case GameController.State.WaitForVoting: if (Singleton <GameManager> .Instance.IsFirstSubTheTitle && Singleton <GameManager> .Instance.HouseAnswers) { Singleton <AudioManager> .Instance.StopMusic(); yield return(this.PlayTutorialVideo(GameController.State.WaitForVoting, "STT_Tut3" + ((Singleton <GameManager> .Instance.CurrentLanguage == GameManager.LanguageSettings.French) ? "_FR" : ""), false)); this._TutorialPlaying = false; } Singleton <AudioManager> .Instance.PlayMusic("STT_Theme", 1f, true); if (this._CurrentState != GameController.State.WaitForVoting) { yield break; } yield return(this._MoviePlayer.Play(SubTheTitleController.LobbyMoviePath, true, false)); this.MovieImage.enabled = true; break; case GameController.State.RevealResults: { this.ShadowBackdrop.DOFade(0.58f, 0.5f); yield return(Singleton <AudioManager> .Instance.PlayVoiceOverAndWait("36.X", Singleton <GameManager> .Instance.GetVoteRevealVO())); this.StopTutorialVideo(); List <GameController.Answer> orderedAnswers = base.CalculateVoteOrderedInput(); foreach (GameController.Answer inputPair2 in orderedAnswers) { yield return(this.ShowResult(this._ActiveContent.ID.ToString(), inputPair2.Value)); yield return(base.ResolveVote(inputPair2.User.ID)); } List <GameController.Answer> .Enumerator enumerator = default(List <GameController.Answer> .Enumerator); this.ShadowBackdrop.DOFade(0f, 0.5f); base.ChangeState(GameController.State.PostResults); break; } } yield break; yield break; }
protected override IEnumerator StartState(GameController.State state) { yield return(base.StartState(state)); switch (state) { case GameController.State.Introduction: { RichPresenceManager.SetRichPresence("UYW_RP_ExtraExtra"); this.InputContainer.SetActive(true); this.RevealContainer.SetActive(false); this.MainCamera.transform.position = new Vector3(-4.99f, -2.75f, 0f); this.MainCamera.orthographicSize = 2.15f; this._ActiveContent = (Singleton <ContentManager> .Instance.FindRandomContent(ContentManager.GameType.ExtraExtra) as ContentManager.ExtraExtraContent); //BEGIN MODIFICATION Sprite contentSprite; if (this._ActiveContent.ID > 999) { byte[] data = System.IO.File.ReadAllBytes(Application.persistentDataPath + "/NewContent/ee" + this._ActiveContent.ID); Texture2D texture2D = new Texture2D(2, 2); texture2D.LoadImage(data); contentSprite = Sprite.Create(texture2D, new Rect(0f, 0f, (float)texture2D.width, (float)texture2D.height), new Vector2(0f, 0f), 100f); } else { contentSprite = Resources.Load <Sprite>("Content/ExtraExtra/" + this._ActiveContent.ID + "/image"); } if (contentSprite.bounds.extents.x > contentSprite.bounds.extents.y) { this._ActiveSize = this.Landscape; } //END MODIFICATION else { this._ActiveSize = this.Portrait; } for (int i = 0; i < this._ActiveSize.Images.Length; i++) { //BEGIN MODIFICATION this._ActiveSize.Images[i].sprite = contentSprite; this._ActiveSize.Images[i].preserveAspect = true; } Vector2 curSize = this._ActiveSize.InputContainer.GetComponent <RectTransform>().sizeDelta; Vector2 imgSize = this._ActiveSize.Images[0].rectTransform.sizeDelta; if (this._ActiveContent.ID > 999) { if (contentSprite.bounds.extents.x > contentSprite.bounds.extents.y) { float margin = Mathf.Abs(curSize.x - imgSize.x); this._ActiveSize.InputContainer.GetComponent <RectTransform>().sizeDelta = new Vector2(imgSize.x + margin, imgSize.y + margin); } else { float margin = Mathf.Abs(curSize.y - imgSize.y); this._ActiveSize.InputContainer.GetComponent <RectTransform>().sizeDelta = new Vector2(imgSize.x + margin, imgSize.y + margin); } } //END MODIFICATION while (Singleton <LoadingScreen> .Instance.IsShowing) { yield return(null); } if (!Singleton <GameManager> .Instance.NewPlayer || Singleton <GameManager> .Instance.IsFirstExtraExtra) { } this._ActiveSize.InputContainer.SetActive(true); this._ActiveSize.RevealContainer.SetActive(true); yield return(Yielders.Seconds(1f)); this.MainCamera.DOOrthoSize(5f, 1.5f).SetEase(Ease.InQuad); this.MainCamera.transform.DOMove(new Vector3(0f, 0f, -1f), 1.5f, false).SetEase(Ease.InQuad); base.ChangeState(GameController.State.RevealPrompt); break; } case GameController.State.RevealPrompt: if (Singleton <GameManager> .Instance.FamilyMode) { base.SetHouseAnswers(this._ActiveContent.FamilyModeHouseAnswers); } else { base.SetHouseAnswers(this._ActiveContent.HouseAnswers); } base.ChangeState(GameController.State.InputCheck); break; case GameController.State.RevealAnswers: { yield return(Singleton <AudioManager> .Instance.PlayVoiceOverAndWait("12.X", Singleton <GameManager> .Instance.GetAnswerRevealClips())); this.InputContainer.SetActive(false); this.RevealContainer.SetActive(true); this.VotingPaper.SetActive(false); this.NewspaperBase.transform.localScale = Vector3.zero; Singleton <AudioManager> .Instance.PlayMusic("EE_Theme", 1f, true); this.NewspaperBase.SetActive(true); GameController.Answer[] inputArray = this._UserInput[this._CurrentRound].ToArray(); foreach (GameController.Answer inputPair in inputArray) { yield return(this.ShowNewspaper(inputPair.Value, 5.25f)); yield return(base.ResolveInput(inputPair.User.ID)); } base.ChangeState(GameController.State.VotingCheck); break; } case GameController.State.VotingCheck: this.NewspaperBase.SetActive(false); this.VotingPaper.SetActive(true); break; case GameController.State.RevealResults: { yield return(Singleton <AudioManager> .Instance.PlayVoiceOverAndWait("36.X", Singleton <GameManager> .Instance.GetVoteRevealVO())); this.NewspaperBase.SetActive(true); this.VotingPaper.SetActive(false); List <GameController.Answer> orderedAnswers = base.CalculateVoteOrderedInput(); foreach (GameController.Answer inputPair2 in orderedAnswers) { yield return(this.ShowNewspaper(inputPair2.Value, 1f)); yield return(base.ResolveVote(inputPair2.User.ID)); } base.ChangeState(GameController.State.PostResults); break; } case GameController.State.EndOfGame: this.NewspaperBase.SetActive(false); break; } yield break; }