Example #1
0
 protected void DisplayRandomCharacterQuote()
 {
     try {
         bool           hasQuote = false;
         CharacterQuote quote    = null;
         while (!hasQuote)
         {
             int randomQuoteIndex = UnityEngine.Random.Range(0, CharacterQuotes.Count);
             quote = CharacterQuotes[randomQuoteIndex];
             if (quote != null && quote.RequiresPlayerName && !(Profile.Get.HasCurrentGame && Profile.Get.CurrentGame.HasCreatedCharacter))
             {
                 continue;
             }
             bool completedMission = true;
             if (quote.RequireMissionComplete && !(Missions.Get.MissionCompletedByName(quote.MissionName, ref completedMission) && completedMission))
             {
                 continue;
             }
             hasQuote = true;
         }
         CharacterObject.SetActive(true);
         CharacterLight.enabled = true;
         QuoteText.enabled      = true;
         if (quote.RequiresPlayerName)
         {
             QuoteText.text = quote.FormattedQuote.Replace("{playername}", Profile.Get.CurrentGame.Character.FirstName);
         }
         else
         {
             QuoteText.text = quote.FormattedQuote;
         }
     } catch (Exception e) {
         Debug.LogException(e);
     }
 }
        public void Bind(CharacterQuote quote)
        {
            _character.Text = quote.Character;
            _movie.Text     = quote.Film;
            _quote.Text     = $"\"{quote.Quote}\"";

            //tell the UI to update
            this.SetNeedsLayout();
        }