public int ApplyCardPlay(CardPlay cardplay) { var source = OwnedMingmings.First(m => m.Id == cardplay.Source.GetInstanceID()); var target = AllTargets.First(m => m.Id == cardplay.Target.GetInstanceID()); var actions = cardplay.Card.InvokeActions(source, target); while (actions.MoveNext()) { var test = actions.Current; } var score = GetScore() + cardplay.Card.GetCardScore(); RemaingHand.Remove(cardplay.Card); return(score); }