public void possibleMovesForPiece(Piece piece, Position positionCheck)
	{	
		piece.resetPossibleMoves();
		int x1 = positionCheck.getPositionX();
		int y1 = positionCheck.getPositionY();
		String pieceType = piece.getPieceType().toLowerCase();
		char column = (char) (x1 + 65);
		String row = ""+(y1+1);
		String position = column + row;		
		
		// ROOK
		if(pieceType.equals("r"))
		{
//			System.out.print("\nPossible moves for Rook at " + position + ": ");
			// origin to top
			topPossibleMoves(piece, positionCheck);
			
			// origin to bottom
			bottomPossibleMoves(piece, positionCheck);
			
			// origin to right
			rightPossibleMoves(piece, positionCheck);
			
			// origin to left
			leftPossibleMoves(piece, positionCheck);
		}		
		// BISHOP
		else if(pieceType.equals("b"))
		{
//			System.out.print("\nPossible moves for Bishop at " + position + ": ");
			// origin to top left
			topLeftPossibleMoves(piece, positionCheck);
			
			// origin to top right
			topRightPossibleMoves(piece, positionCheck);
			
			// origin to bottom left
			bottomLeftPossibleMoves(piece, positionCheck);
			
			// origin to bottom right
			bottomRightPossibleMoves(piece, positionCheck);			
		}
		
		// QUEEN
		else if(pieceType.equals("q"))
		{
//			System.out.print("\nPossible moves for Queen at " + position + ": ");
			// origin to top left
			topLeftPossibleMoves(piece, positionCheck);
			
			// origin to top
			topPossibleMoves(piece, positionCheck);
			
			// origin to top right
			topRightPossibleMoves(piece, positionCheck);
			
			// origin to the right
			rightPossibleMoves(piece, positionCheck);
			
			// origin to bottom right
			bottomRightPossibleMoves(piece, positionCheck);
			
			// origin to bottom
			bottomPossibleMoves(piece, positionCheck);
			
			// origin to bottom left
			bottomLeftPossibleMoves(piece, positionCheck);
			
			// origin to the left
			leftPossibleMoves(piece, positionCheck);
		}
		
		// KNIGHT
		else if(pieceType.equals("n"))
		{
//			System.out.print("\nPossible moves for Knight at " + position + ": ");
			
			// top left
			knightTopLeftPossibleMove(piece, positionCheck);
			
			// top top left
			knightTopTopLeftPossibleMove(piece, positionCheck);
			
			// top top right
			knightTopTopRightPossibleMove(piece, positionCheck);
			
			// top right
			knightTopRightPossibleMove(piece, positionCheck);
			
			// bottom right
			knightBottomRightPossibleMove(piece, positionCheck);
			
			// bottom bottom right
			knightBottomBottomRightPossibleMove(piece, positionCheck);
			
			// bottom bottom left
			knightBottomBottomLeftPossibleMove(piece, positionCheck);
			
			// bottom left
			knightBottomLeftPossibleMove(piece, positionCheck);
		}
		
		// KING
		else if(pieceType.equals("k"))
		{
//			System.out.print("\nPossible moves for King at " + position + ": ");
			
			// top left
			kingTopLeftPossibleMove(piece, positionCheck);
			
			// top
			kingTopPossibleMove(piece, positionCheck);
			
			// top right
			kingTopRightPossibleMove(piece, positionCheck);
			
			// right
			kingRightPossibleMove(piece, positionCheck);
			
			// bottom right
			kingBottomRightPossibleMove(piece, positionCheck);
			
			// bottom
			kingBottomPossibleMove(piece, positionCheck);
			
			// bottom left
			kingBottomLeftPossibleMove(piece, positionCheck);
			
			// left
			kingLeftPossibleMove(piece, positionCheck);
		}
		
		// PAWN
		else if(pieceType.equals("p"))
		{
			if(piece.getPieceColor().equals(white))
			{
				whitePawnPossibleMove(piece, positionCheck);
			}
			else
			{
				blackPawnPossibleMove(piece, positionCheck);
			}
		}
	}