
public class Card {

	private String value ;
        private String suit ;

	public static String validValue[] = { "empty", "ace", "two", "three", "four", "five", "six", "seven", "eight",
					      "nine", "ten", "jack", "queen", "king" } ;
	public static String validSuit[]  = { "empty", "spade", "heart", "diamond", "club" } ;




	public Card () {
		setValue("empty") ;
		setSuit("empty") ;
	}

	public Card ( String theValue, String theSuit ) {
		setValue(theValue) ;
		setSuit(theSuit) ;
	}




	public void setValue ( String theValue ) {
		if ( isValidValue(theValue) )
			value = theValue ;
		else
			value = "empty" ;
	}

	public String getValue () {
		return value ;
	}

	public void setSuit ( String theSuit ) {
		if ( isValidSuit(theSuit) )
			suit = theSuit ;
		else
			suit = "empty" ;
	}

	public String getSuit () {
		return suit ;
	}

	private boolean isValidValue ( String theValue ) {
		boolean isValid = false ;
		for ( int i = 0 ; i < validValue.length ; i++ )
			isValid = isValid || ( theValue.equals(validValue[i]) ) ;
		return isValid ;
	}

	private boolean isValidSuit ( String theSuit ) {
		boolean isValid = false ;
		for ( int i = 0 ; i < validSuit.length ; i++ )
			isValid = isValid || ( theSuit.equals(validSuit[i]) ) ;
		return isValid ;
	}

	public boolean isEmpty() {
		if ( ( value.equals("empty") ) || ( suit.equals("empty") ) )
			return true ;
		else
			return false ;
	}

	public static String randomValue () {
		return validValue[ (int)( 13 * Math.random() ) + 1 ] ;
	}

	public static String randomSuit () {
		return validSuit[  (int)( 4 * Math.random() ) + 1 ] ;
	}


	public String getPNG() {
		int i = -1, j = -1, k ;
		String returnValue ;

		if      ( value.equals("ace")   ) i = 0 ;
		else if ( value.equals("king")  ) i = 1 ;	
		else if ( value.equals("queen") ) i = 2 ;
		else if ( value.equals("jack")  ) i = 3 ;
		else if ( value.equals("ten")   ) i = 4 ;
		else if ( value.equals("nine")  ) i = 5 ;
		else if ( value.equals("eight") ) i = 6 ;
		else if ( value.equals("seven") ) i = 7 ;
		else if ( value.equals("six")   ) i = 8 ;
		else if ( value.equals("five")  ) i = 9 ;
		else if ( value.equals("four")  ) i = 10 ;
		else if ( value.equals("three") ) i = 11 ;
		else if ( value.equals("two")   ) i = 12 ;

		if      ( suit.equals("club")    ) j = 1 ;
		else if ( suit.equals("spade")   ) j = 2 ;
		else if ( suit.equals("heart")   ) j = 3 ;
		else if ( suit.equals("diamond") ) j = 4 ;

		if ( (i < 0 ) || (j < 0) )
			k = 0 ;
		else
			k = 4 * i + j ;

		returnValue = "cards/" + k + ".png" ;
	
		return returnValue ;
	}


}



