Skip to content
Snippets Groups Projects
Commit 5db97e43 authored by Brett McAndrew's avatar Brett McAndrew
Browse files

Merge branch '1-fix-assignment-errors' into 'main'

Errors fixed

Closes #1

See merge request !2
parents 9e7607fa e4d6d082
No related branches found
No related tags found
1 merge request!2Errors fixed
...@@ -112,7 +112,9 @@ public class DotsAndBoxesGrid { ...@@ -112,7 +112,9 @@ public class DotsAndBoxesGrid {
// A box is complete if the north and south horizontals and the east and west verticals have all been drawn. // A box is complete if the north and south horizontals and the east and west verticals have all been drawn.
// FIXME: You'll need to fix this code (after writing a test first). // FIXME: You'll need to fix this code (after writing a test first).
return true; return (getHorizontal(x, y) && getHorizontal(x, y + 1) && getVertical(x, y) && getVertical(x + 1, y));
//return true;
} }
/** Tries to claim a box for a player. If the box is complete, sets the ownership and returns true. */ /** Tries to claim a box for a player. If the box is complete, sets the ownership and returns true. */
...@@ -139,9 +141,12 @@ public class DotsAndBoxesGrid { ...@@ -139,9 +141,12 @@ public class DotsAndBoxesGrid {
throw new IndexOutOfBoundsException(String.format("y was %d, which is out of range. Range is 0 to %d", y, height)); throw new IndexOutOfBoundsException(String.format("y was %d, which is out of range. Range is 0 to %d", y, height));
} }
// FIXME: You need to throw an exception if the line was already drawn. if (getHorizontal(x, y)) {
throw new RuntimeException("Horizontal was already drawn");
this.horizontals[x][y] = true; } else {
this.horizontals[x][y] = true;
}
// Try to claim the north or south boxes // Try to claim the north or south boxes
boolean claimN = claimBox(x, y-1, player); boolean claimN = claimBox(x, y-1, player);
...@@ -171,8 +176,12 @@ public class DotsAndBoxesGrid { ...@@ -171,8 +176,12 @@ public class DotsAndBoxesGrid {
} }
// You need to throw an exception if the line was already drawn. // You need to throw an exception if the line was already drawn.
if (getVertical(x, y)) {
this.verticals[x][y] = true; throw new RuntimeException("Vertical was already drawn");
} else {
this.verticals[x][y] = true;
}
// Try to claim the north or south boxes // Try to claim the north or south boxes
boolean claimE = claimBox(x, y, player); boolean claimE = claimBox(x, y, player);
boolean claimW = claimBox(x-1, y, player); boolean claimW = claimBox(x-1, y, player);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment