summaryrefslogtreecommitdiffstats
path: root/card.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'card.cpp')
-rw-r--r--card.cpp43
1 files changed, 42 insertions, 1 deletions
diff --git a/card.cpp b/card.cpp
index 5942c91..f100e1c 100644
--- a/card.cpp
+++ b/card.cpp
@@ -11,6 +11,12 @@ Card::Card(void) : type(""), rank(0)
}
+Card::Card(Card *card)
+{
+ type = card->type;
+ rank = card->rank;
+}
+
Card::Card(string &str)
{
type = str;
@@ -69,7 +75,6 @@ void Card::rankCard(void)
break;
default:
std::cerr << "something went wrong while ranking a card" << endl;
- break;
}
}
@@ -126,3 +131,39 @@ void Card::sortCards(Card **cards)
}
}
+char Card::giveRank(char type)
+{
+ switch (type)
+ {
+ case 'A':
+ return 13;
+ case 'K':
+ return 12;
+ case 'Q':
+ return 11;
+ case 'J':
+ return 10;
+ case 'T':
+ return 9;
+ case '9':
+ return 8;
+ case '8':
+ return 7;
+ case '7':
+ return 6;
+ case '6':
+ return 5;
+ case '5':
+ return 4;
+ case '4':
+ return 3;
+ case '3':
+ return 2;
+ case '2':
+ return 1;
+ default:
+ std::cerr << "something went wrong while giving a card" << endl;
+ return 0;
+ }
+}
+