public static EvaluateCard ( AnnouncementTypeEnum gameType, |
||
gameType | AnnouncementTypeEnum | curent game |
card | card to be evaluated | |
return | int |
public static int EvaluateCard( AnnouncementTypeEnum gameType, Card card )
{
int val = 0;
switch( gameType )
{
case AnnouncementTypeEnum.AllTrumps :
val = EvaluateTrumps( card );
break;
case AnnouncementTypeEnum.NoTrumps :
val = EvaluateNoTrumps( card );
break;
case AnnouncementTypeEnum.Spades :
if( card.CardColor == CardColor.Spades )
val = EvaluateTrumps( card );
else
val = EvaluateNoTrumps( card );
break;
case AnnouncementTypeEnum.Hearts :
if( card.CardColor == CardColor.Hearts )
val = EvaluateTrumps( card );
else
val = EvaluateNoTrumps( card );
break;
case AnnouncementTypeEnum.Diamonds :
if( card.CardColor == CardColor.Diamonds )
val = EvaluateTrumps( card );
else
val = EvaluateNoTrumps( card );
break;
case AnnouncementTypeEnum.Clubs :
if( card.CardColor == CardColor.Clubs )
val = EvaluateTrumps( card );
else
val = EvaluateNoTrumps( card );
break;
case AnnouncementTypeEnum.Pass :
break;
}
return val;
}
private void CalculatePoints(Hand lastHand) { PlayerPosition pos = lastHand.Winner.Position; if (pos == PlayerPosition.East || pos == PlayerPosition.West) { foreach (Card card in lastHand) { _eastWestPoints += CardPointEvaluator.EvaluateCard(this._currentAnnouncement.Type, card); } } else { foreach (Card card in lastHand) { _northSouthPoints += CardPointEvaluator.EvaluateCard(this._currentAnnouncement.Type, card); } } }