public MoveResult endOfMoveChecker(MoveResult battleResult) 
	{
		MoveResult result = battleResult;
		boolean redCanMove = false;
		boolean blueCanMove = false;
		
		if (result.getStatus() == OK) //If someone has not already won
		{
			for (PieceLocationDescriptor piece: pieceHandler.getRedPieces())
			{
				if (canMove(piece))
				{
					redCanMove = true;
					break;
				}
			}
			for (PieceLocationDescriptor piece: pieceHandler.getBluePieces())
			{
				if (canMove(piece)) 
				{
					blueCanMove = true;
					break;
				}
			}
			if (!redCanMove && !blueCanMove) //Neither team can move, draw
			{
				result = new MoveResult(DRAW, result.getBattleWinner());
				gameOver = true;
			}
			else if (!redCanMove) //Red can not move, blue wins
			{
				result = new MoveResult(BLUE_WINS, result.getBattleWinner());
				gameOver = true;
			}
			else if (!blueCanMove) //Blue can not move, red wins
			{
				result = new MoveResult(RED_WINS, result.getBattleWinner());
				gameOver = true;
			}
		}
		return result;
	}