public void DrawText(AvailableTextType[] textToDraw) { if (textToDraw.Length > 0) { foreach (Transform child in transform) { Destroy(child.gameObject); } float posX = rectTransform.rect.width / textToDraw.Length; for (int i = 0; i < textToDraw.Length; i++) { AvailableTextType character = textToDraw[i]; Image characterImage = Instantiate(characterTemplate, transform); characterImage.sprite = textSprites[(int)character]; characterImage.rectTransform.localPosition = new Vector3(posX * i - (rectTransform.rect.width / 2) + (characterImage.rectTransform.rect.width / 2), 0, 0); if (character == AvailableTextType.Space) { characterImage.gameObject.SetActive(false); } } } }
void DrawScore(int score) { Queue <AvailableTextType> text = new Queue <AvailableTextType>(); text.Enqueue(AvailableTextType.S); text.Enqueue(AvailableTextType.C); text.Enqueue(AvailableTextType.O); text.Enqueue(AvailableTextType.R); text.Enqueue(AvailableTextType.E); text.Enqueue(AvailableTextType.Space); AvailableTextType[] scoreArray = textEngine.ConvertNumberToText(score, 4).ToArray(); for (int i = 0; i < scoreArray.Length; i++) { AvailableTextType character = scoreArray[i]; text.Enqueue(character); } textEngine.DrawText(text.ToArray()); }
Queue <AvailableTextType> GenerateTextToDisplay() { Queue <AvailableTextType> text = new Queue <AvailableTextType>(); text.Enqueue(AvailableTextType.S); text.Enqueue(AvailableTextType.C); text.Enqueue(AvailableTextType.O); text.Enqueue(AvailableTextType.R); text.Enqueue(AvailableTextType.E); text.Enqueue(AvailableTextType.Space); AvailableTextType[] score = textEngine.ConvertNumberToText(scoreToDraw, 4).ToArray(); for (int i = 0; i < score.Length; i++) { AvailableTextType character = score[i]; text.Enqueue(character); } return(text); }
Queue <AvailableTextType> GenerateTextToDisplay() { Deck deck = cardHolder.deck; int remainingCards = deck.GetCurrentDeckSize() + deck.hand.Count; Queue <AvailableTextType> text = new Queue <AvailableTextType>(textEngine.ConvertNumberToText(remainingCards, 2)); text.Enqueue(AvailableTextType.Space); text.Enqueue(AvailableTextType.Slash); text.Enqueue(AvailableTextType.Space); int totalCards = remainingCards + deck.GetDiscardSize(); AvailableTextType[] totalCardCount = textEngine.ConvertNumberToText(totalCards, 2).ToArray(); for (int i = 0; i < totalCardCount.Length; i++) { AvailableTextType character = totalCardCount[i]; text.Enqueue(character); } return(text); }