示例#1
0
        private IEnumerator Typewriter(ConsoleTextEntry queuedEntry)
        {
            string text             = queuedEntry.Text.text;
            var    timePerCharacter = timeToTypeText / text.Length;

            Queue <char> entryString = new Queue <char>();

            foreach (char t in text)
            {
                entryString.Enqueue(t);
            }

            text = "";
            queuedEntry.SetEntry(text, queuedEntry.TextColor);
            queuedEntry.gameObject.SetActive(true);
            while (entryString.Count > 0)
            {
                text += entryString.Dequeue();
                queuedEntry.SetEntry(text, queuedEntry.TextColor);
                yield return(new WaitForSeconds(timePerCharacter));
            }

            _textEntries.Add(queuedEntry);
            _typewriterRoutine = null;
        }
示例#2
0
        public void AddTextEntry(string text, Color color)
        {
            ConsoleTextEntry entryToQueue = Instantiate(_template, _template.transform.parent);

            entryToQueue.SetEntry(text, color);
            entryToQueue.gameObject.SetActive(false);
            _queuedTextEntries.Enqueue(entryToQueue);
        }