/// <summary>
        /// Method that is called when a letter is touched
        /// </summary>
        /// <param name="block"></param>
        public void LetterTouched(LetterBlock block)
        {
            bool canMove = GameInstance.instance.IsMultiplayer ?  (bool)PhotonNetwork.LocalPlayer.CustomProperties["CanMove"] : Player.CanMove;

            if (!canMove)
            {
                return;
            }

            // Wanneer hij in de lijst placedLetters staat, moet deze terug naar beneden gezet worden, anders naar boven
            if (PlacedLetters.Select(x => x.LetterBlock).Contains(block))
            {
                RemoveLetterFromWritingBoardToPlayerBoard(block);
                CheckWordAndSetSubmitButtonState();
                return;
            }

            // When firstletter isn't placed yet, make sure second letter does nothing
            if (block == SecondLetterBlock && !PlacedLetters.Select(x => x.LetterBlock).Contains(FirstLetterBlock))
            {
                return;
            }

            // Wanneer er meer dan 12 zijn, niks doen
            if (PlacedLetters.Count(x => x.LetterBlock != null) >= 12)
            {
                return;
            }

            // Find the block in de playerletters
            LetterPosition letterBlock = PlayerLetters.FirstOrDefault(x => x.LetterBlock == block);
            // Find the first empty block in PlacedLetters
            LetterPosition EmptyLetterBlock = PlacedLetters.FirstOrDefault(x => x.LetterBlock == null);

            // De geklikte letter toevoegen aan EmptyLetterBlock en values overnemen
            EmptyLetterBlock.AddLetter(block, letterBlock.GetCurrentIndex(), letterBlock.GetRow());

            // Het lege object vinden om te kunnen destroyen
            Transform t = WritingBoard.transform.GetChild(EmptyLetterBlock.GetCurrentIndex());

            Destroy(t.gameObject);

            // Het geklikte blokje verplaatsen naar de plaats van het lege object
            //block.transform.localScale -= new Vector3(0.1f, 0, 0);
            block.transform.SetParent(WritingBoard.transform, false);
            block.transform.SetSiblingIndex(EmptyLetterBlock.GetCurrentIndex());

            // Een lege placeholder plaatsen waar de letter vandaan is gehaald
            GameObject ph        = Instantiate(PlaceHolderObject);
            GameObject parentRow = GetRightRow(letterBlock.GetRow());

            ph.transform.SetParent(parentRow.transform, false);
            ph.transform.SetSiblingIndex(letterBlock.GetCurrentIndex());
            CheckWordAndSetSubmitButtonState();
        }
        /// <summary>
        /// Gets the letters to play with
        /// </summary>
        /// <returns>List of LetterPosition</returns>
        public List <LetterPosition> GetPlayerLetters()
        {
            List <LetterPosition> playerLetters = new List <LetterPosition>();

            for (int row = 1; row <= 3; row++)
            {
                GameObject    r = GetRightRow(row);
                LetterBlock[] b = r.GetComponentsInChildren <LetterBlock>();
                foreach (LetterBlock block in b)
                {
                    LetterPosition pos = PlayerLetters.FirstOrDefault(p => p.LetterBlock == block);
                    playerLetters.Add(new LetterPosition(pos.GetRow(), pos.GetOldIndex(), block));
                }
            }
            return(playerLetters);
        }