protected void Pick(Card card) { if (card.Pair == CurrentPair) { if (UnsolvedPairs.Count == 0) Observer?.OnWon(); else { ActivateNext(); Observer?.OnMove(mistake: false); } } else Observer?.OnMove(mistake: true); }
protected virtual bool HandlePreviousSelection(Card card) { // Remove previous selection if (card != null) card.State = DefaultCardState; return true; }
protected override bool HandlePreviousSelection(Card card) { // Do not allow selection changes return (card == null); }