public void paint(Graphics g){
		g.setColor(Color.BLUE);
		g.fillRect(0,0,canvas_width,canvas_height);
		g.setColor(Color.BLACK);
		int count = 0;
		while(count < grid_lines+1){
			g.setColor(Color.BLACK);
			g.drawLine(0,grid_size_y*count,canvas_height,grid_size_y*count);
			g.drawLine(grid_size*count,0,grid_size*count,canvas_height);
			count++;
		}
		Square[][] boardSquares = board.getBoardArray();
		int countY = 0;
		while(countY<boardSquares.length){
			int countX = 0;
			while(countX<boardSquares[0].length){
				//System.out.println("Drawing a:"+squares[countY][countX].getID()+"in square"+countY+":"+countX);
				int sqx = countX*grid_size;
				int sqy = countY*grid_size_y;
				Color currentColor = getBoardSqColor(boardSquares[countY][countX]);
				if(currentColor!=null){
					g.setColor(currentColor);
					g.fillRect(sqx,sqy,grid_size,grid_size_y);
				}
				if(boardSquares[countY][countX].getOccupied()!=null){
					g.setColor(getPColor(boardSquares[countY][countX].getOccupied()));
					g.fillOval(sqx,sqy,piece_size,piece_size);
					g.setColor(Color.black);
					g.drawOval(sqx,sqy,piece_size,piece_size);
					g.drawOval(sqx+5,sqy+5,piece_size-10,piece_size-10);
					g.drawOval(sqx+8,sqy+8,piece_size-16,piece_size-16);
				}
				countX++;
			}
			countY++;
		}
		((Graphics2D)g).setStroke(new BasicStroke(2f));
		g.setColor(Color.black);
		g.drawRect(0, 0,canvas_width-1,canvas_height-1);
	}