@Override // public void draw(Graphics g, Board b, int z, boolean highlight) { public void draw(Graphics g, Board b) { int doorFraction = 5; // int pixelModifier = 25; int pixelModifier = Math.min(b.size().width / b.getNumColumns(), b.size().height / b.getNumRows()); int doorOffset = pixelModifier / doorFraction; b.setPixelModifier(pixelModifier); g.setColor(Color.LIGHT_GRAY); if (this.highlight) { g.setColor(Color.GREEN); } g.fillRect(column * pixelModifier, row * pixelModifier, pixelModifier, pixelModifier); g.setColor(Color.blue); if (this.isDoorway() && (doorDirection.equals(DoorDirection.UP))) { g.fillRect(column * pixelModifier, row * pixelModifier, pixelModifier, doorOffset); } else if (this.isDoorway() && (doorDirection.equals(DoorDirection.DOWN))) { g.fillRect( column * pixelModifier, (row * pixelModifier + pixelModifier) - doorOffset, pixelModifier, doorOffset); } else if (this.isDoorway() && (doorDirection.equals(DoorDirection.LEFT))) { g.fillRect(column * pixelModifier, row * pixelModifier, doorOffset, pixelModifier); } else if (this.isDoorway() && (doorDirection.equals(DoorDirection.RIGHT))) { g.fillRect( (column * pixelModifier + pixelModifier) - doorOffset, row * pixelModifier, doorOffset, pixelModifier); } if (drawName) { g.drawChars( b.getRooms().get(roomClassifier).toCharArray(), 0, b.getRooms().get(roomClassifier).length(), column * pixelModifier, row * pixelModifier); } }