IEnumerator Deal() { GameDeck.Initialize(); HandController Player1 = Hand1.GetComponent <HandController>(); Player1.Initialize(GameDeck, HandType.Player); Player1.gameObject.AddComponent <PlayerBrain>().Initialize(CombatZone); yield return(StartCoroutine(Player1.Deal())); HandController Player2 = Hand2.GetComponent <HandController>(); Player2.Initialize(GameDeck, HandType.Opponent); Player2.gameObject.AddComponent <PlayerBrain>().Initialize(CombatZone); yield return(StartCoroutine(Player2.Deal())); Players.Add(Player1); Players.Add(Player2); //GameCard trumpCard = GameObjectUtils.AddAndPosition (CardPrefab, this.gameObject, new Vector3()).GetComponent<GameCard> (); //Debug.Log (null != GameDeck); //trumpCard.Initialize (GameDeck.TakeCardFromDeck ()); yield return(new WaitForSeconds(1)); BeginGame(); }