Exemplo n.º 1
0
        /// <summary>
        /// Method to instantiate a letterbutton
        /// </summary>
        /// <param name="letter"></param>
        /// <param name="isFirstLetter"></param>
        /// <param name="isSecondLetter"></param>
        /// <param name="row"></param>
        /// <param name="index"></param>
        /// <returns></returns>
        public LetterBlock InstantiateLetterButton(char letter, bool isFirstLetter = false, bool isSecondLetter = false, int row = 1, int?index = null)
        {
            LetterBlock block;

            block = (isFirstLetter || isSecondLetter) ? FixedLettersBlockObject : PlayerLetterBlockObject;
            return(Spawn(block, this, lttrBlock =>
            {
                lttrBlock.IsFirstLetter = isFirstLetter;
                lttrBlock.IsSecondLetter = isSecondLetter;
                lttrBlock.OnLetterTouched += LetterTouched;
                //Todo
                //lttrBlock.OnLetterDragged += LetterDragged;
                lttrBlock.GetComponentsInChildren <Text>()[0].text = letter.ToString().ToUpper();
                if (letter != '?')
                {
                    lttrBlock.GetComponentsInChildren <Text>()[1].text = TheLetterManager.CharactersValues.First(x => x.Key == char.ToLower(letter)).Value.ToString();
                }
                else
                {
                    lttrBlock.GetComponentsInChildren <Text>()[1].text = "";
                }
                GameObject parentRow = GetRightRow(row);
                lttrBlock.transform.SetParent(parentRow.transform, false);
                if (index != null)
                {
                    lttrBlock.transform.SetSiblingIndex((int)index);
                }
                PlayerLetters.Add(new LetterPosition(row, lttrBlock.transform.GetSiblingIndex(), lttrBlock));
            }));
        }
Exemplo n.º 2
0
        /// <summary>
        /// Method to add a char to a letterBlock
        /// </summary>
        /// <param name="row"></param>
        /// <param name="index"></param>
        /// <returns>LetterBlock</returns>
        public LetterBlock AddLetter(int row, int index)
        {
            List <char> myLetters = GetPlayerLetters().Select(p => char.ToLower(p?.LetterBlock?.GetLetter() ?? default)).ToList();

            char[]      letters = TheLetterManager.GetLetters(1, myLetters);
            LetterBlock block   = InstantiateLetterButton(letters[0], false, false, row, index);

            PlayerLetters.Add(new LetterPosition(row, index, block));
            return(block);
        }