summaryrefslogtreecommitdiffstats
path: root/labb5/src/Boggle.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'labb5/src/Boggle.cpp')
-rwxr-xr-xlabb5/src/Boggle.cpp15
1 files changed, 14 insertions, 1 deletions
diff --git a/labb5/src/Boggle.cpp b/labb5/src/Boggle.cpp
index 9da2947..9ae2d94 100755
--- a/labb5/src/Boggle.cpp
+++ b/labb5/src/Boggle.cpp
@@ -89,7 +89,15 @@ bool Boggle::board_from_string(const string& letters) {
for (int y = 0; y < BOARD_SIZE; y++) {
for (int x = 0; x < BOARD_SIZE; x++) {
- char c = letters[BOARD_SIZE*y + x];
+ unsigned char c = letters[BOARD_SIZE*y + x];
+ if (c >= 'a' && c <= 'z') {
+ c = std::toupper(c);
+ } else if (c >= 'A' && c <= 'Z') {
+ // do nothing
+ } else {
+ clear();
+ return false;
+ }
board[y][x] = c;
}
}
@@ -97,6 +105,11 @@ bool Boggle::board_from_string(const string& letters) {
}
void Boggle::clear() {
+ for (int y = 0; y < BOARD_SIZE; y++) {
+ for (int x = 0; x < BOARD_SIZE; x++) {
+ board[y][x] = '\0';
+ }
+ }
user_words.clear();
computer_words.clear();
user_score = 0;