BEGIN { max_columns = 45; max_lines = 40; }

{	++lines;
 
	if ($2 > 20000)	z =  "Ordeal";
	else if ($2 > 5000)	z =  "Mighty";
	else if ($2 > 1000)	z =  "Powerful";
	else if ($2 > 500)	z =  "Dangerous";
	else if ($2 > 240)	z =  "Tough";
	else if ($2 > 120)	z =  "Tricky";
	else if ($2 > 60)	z =  "Hard";
	else if ($2 > 30)	z =  "Easy";
	else if ($2 > 15)	z =  "Simple";
	else if ($2 > 4)	z =  "Weak";
	else if ($2 = 0)	z =  "Defenseless";

	if (lines % max_lines == 1)
		header();

	name = toupper(substr($1, 1, 1)) substr($1, 2);

	printf("%-25s & %-10s & ", name, z);

	column = 0;
	antall = split($3, field, "[()][()]?");
	for (i = 2; i < antall; i++) {
		if (column + length(field[i]) > max_columns) {
			printf(",\\\\\n%-25s & %-10s & ", "", "");
			column = 0; ++lines;
		}
		if (column > 0)
			printf(", ");
		printf(field[i]);
		column += length(field[i]);
	}
	printf("\\\\\n");
	if (lines >= max_lines)
	{
		footer();
		lines=0;
	}
}

END { footer(); }

function header() {
	print "\\begin{center}\n\\begin{tabular}{|l|l|l|}\n\\hline\nName&Difficulty&Special abilities\\\\\n\\hline\n\\hline";
}

function footer() {
	print "\\hline\n\\end{tabular}\n\\end{center}\n";
}
