@@ -0,0 +1,867 @@
+package eco.game;%0A%0Aimport java.util.Objects;%0A%0A/**%0A * A class that represents a 2D point, and has overridden %3Ci%3EhashCode%3C/i%3E and%0A * %3Ci%3Eequals%3C/i%3E methods for use in hashmaps. Maintains the hashcode-equals%0A * contract.%0A * %0A * @author phil%0A * %0A */%0A%0Apublic class Point %7B%0A%09private int x;%0A%09private int y;%0A%0A%09public Point(int x, int y) %7B%0A%09%09this.x = x;%0A%09%09this.y = y;%0A%09%7D%0A%0A%09public int getX() %7B%0A%09%09return x;%0A%09%7D%0A%0A%09public int getY() %7B%0A%09%09return y;%0A%09%7D%0A%0A%09@Override%0A%09public int hashCode() %7B%0A%09%09int hash = Objects.hash(x, y);%0A%09%09return hash;%0A%09%7D%0A%0A%09@Override%0A%09public boolean equals(final Object o) %7B%0A%09%09if (o == null)%0A%09%09%09return false;%0A%09%09if (this == o)%0A%09%09%09return true;%0A%09%09if (getClass() != o.getClass())%0A%09%09%09return false;%0A%0A%09%09final Point other = (Point) o;%0A%09%09return x == other.x && y == other.y;%0A%09%7D%0A%0A%09public void setX(int x) %7B%0A%09%09this.x = x;%0A%09%7D%0A%0A%09public void setY(int y) %7B%0A%09%09this.y = y;%0A%09%7D%0A%09%0A%09 %0A%7D%0A

Create Point.java