|
import java.awt.*; // Interface (form images)
class Card implements BelotConstants
{
Card (int s, int r, int v, int sc, int number)
{
suit = s;
rank = r;
value = v;
sortCode = sc;
imageNumber = number;
}
public boolean comesAfter (Card otherCard, int trump)
{
if ( (suit == trump) && (otherCard.suit != trump))
return false;
else if ( (suit != trump) && (otherCard.suit == trump))
return true;
else if ((suit != otherCard.suit) && (suit > otherCard.suit))
return true;
else if (suit != otherCard.suit)
return false;
else if (otherCard.rank == EIGHT)
return false;
else if (rank == EIGHT)
return true;
else if ( value < otherCard.value )
return true;
else
return false;
}
public boolean isHigher (Card otherCard, int trump)
{
if ((suit == trump) && (otherCard.suit != trump))
return true;
else if ((suit != trump) && (otherCard.suit == trump))
return false;
else if (suit != otherCard.suit)
return true;
else if ( value > otherCard.value )
return true;
else if (otherCard.rank == EIGHT)
return true;
else return false;
}
public void updateValue (int trump)
{
if (rank == NINE)
{
if ((suit == trump) || (trump == EVERYTHING))
value = NINE_OF_TRUMP_VALUE;
else
value = NINE_OF_NONTRUMP_VALUE;
}
else if (rank == JACK)
{
if ((suit == trump) || (trump == EVERYTHING))
value = JACK_OF_TRUMP_VALUE;
else
value = JACK_OF_NONTRUMP_VALUE;
}
}
public int getValue()
{
return value;
}
public int getSuit ()
{
return suit;
}
public int getRank ()
{
return rank;
}
public int getSortCode ()
{
return sortCode;
}
public int getImageNumber() // interface
{
return imageNumber;
}
public void setImageNumber(int i) // interface
{
imageNumber = i;
}
private int suit;
private int rank;
private int value;
private int sortCode;
private int imageNumber; // interface
}
|