private void ComputerMove() { List <CardController> computerCards = opponentHand.getHand(); List <CardController> cardOnTable = neutral.getHand(); bool found = false; int random = 0; if (neutral.getHand()[0].gameObject.activeSelf)//if there is a card in mid table { for (int i = 0; i < computerCards.Count; i++) { if ((computerCards[i].gameObject.activeSelf) && (computerCards[i].getCard().getValue() == cardOnTable[0].getCard().getValue() || computerCards[i].getCard().getValue() == 10)) { drop.ComputerDrop(opponentHand, computerCards[i]); opponentHand.AddAwardedCards(neutral.getCardList()); neutral.ClearCardsAtHand(); cardOnTable[0].gameObject.SetActive(false); found = true; break; } } if (!found)//if there is not an identical card on table, put a card down randomly { random = Random.Range(0, 4); if (computerCards[random].gameObject.activeSelf) { drop.ComputerDrop(opponentHand, computerCards[random]); //found = true; } } } else //if there isnt a card on table { for (int i = 0; i < computerCards.Count; i++) { if (computerCards[i].gameObject.activeSelf) { drop.ComputerDrop(opponentHand, computerCards[i]); neutral.getHand()[0].gameObject.SetActive(true); break; } } } }