/// <summary> Handles the processes of selecting a card. </summary> /// <param name="card"> The card to be selected. </param> private void CardSelected(GameObject card) { if (selectedCard != null) { if (selectedCard.gameObject.Equals(card)) { card.GetComponent <MemoryGameCardBehavior>().DeselectCard(); selectedCard = null; return; } else if (selectedCard.Matches(card.GetComponent <MemoryGameCardBehavior>())) { card.GetComponent <MemoryGameCardBehavior>().FlipCard(); selectedCard.FlipCard(); selectedCard = null; } } else { selectedCard = card.GetComponent <MemoryGameCardBehavior>(); card.GetComponent <MemoryGameCardBehavior>().SelectCard(); } }
/// <summary> Checks to see if the given behaviour matches the info of this one. </summary> /// <param name="cardBehavior"> The card info to be checked. </param> /// <returns> Does the given cardBehaviour match this one? </returns> public bool Matches(MemoryGameCardBehavior cardBehavior) { return(food.Equals(cardBehavior.food)); }