@Override
	public boolean equals(Object obj) {
		if (obj == null) {
			return false;
		}
		if (obj == this) {
			return true;
		}
		if (obj.getClass() != getClass()) {
			return false;
		}

		Card card = (Card) obj;

		if (isBet() || card.isBet()) {
			return card.getColor() == this.getColor() && card.getType() == this.getType();
		} else {
			return card.getColor() == this.getColor() && card.getType() == this.getType() && card.getValue().equals(this.getValue());
		}
	}