IEnumerator ManageAchivementDisplay()
        {
            while (true)
            {
                if (achievementToDisplay.Count > 0)
                {
                    yield return(new WaitForSeconds(0.5f));

                    nameText.enabled = true;
                    Achievements.Achievement achievement = achievementToDisplay.Dequeue();

                    nameText.text = "Day " + Achievements.achievementValidatedCount + " : You created " + achievement.name + " !";

                    yield return(StartCoroutine(LetterByLetter(nameText)));

                    yield return(new WaitForSeconds(1));

                    descriptionText.enabled = true;
                    descriptionText.text    = achievement.comment;

                    yield return(StartCoroutine(LetterByLetter(descriptionText)));

                    yield return(new WaitForSeconds(alertLifeTime));

                    StartCoroutine(FadeOut(nameText));
                    yield return(StartCoroutine(FadeOut(descriptionText)));

                    descriptionText.enabled = false;
                    nameText.enabled        = false;
                }

                yield return(null);
            }
        }
Exemple #2
0
        IEnumerator DelayedAdd(Achievements.Achievement achievement)
        {
            yield return(new WaitForSeconds(4));

            TextMeshProUGUI newText;

            if (achievement.isGood)
            {
                if (goodStackParent.childCount == 1)
                {
                    goodStackParent.gameObject.SetActive(true);
                    StartCoroutine(LetterByLetter(goodStackParent.GetChild(0).GetComponent <TextMeshProUGUI>()));
                }
                newText       = Instantiate(textPrefab, goodStackParent);
                newText.color = goodColor;
            }
            else
            {
                if (badStackParent.childCount == 1)
                {
                    badStackParent.gameObject.SetActive(true);
                    StartCoroutine(LetterByLetter(badStackParent.GetChild(0).GetComponent <TextMeshProUGUI>()));
                }
                newText       = Instantiate(textPrefab, badStackParent);
                newText.color = badColor;
            }

            newText.text = achievement.name;
        }
 void OnNewAchievement(Achievements.Achievement achievement)
 {
     achievementToDisplay.Enqueue(achievement);
 }
Exemple #4
0
 void OnNewAchievement(Achievements.Achievement achievement)
 {
     StartCoroutine(DelayedAdd(achievement));
 }