mod/lesson/continue.phpではなく,mod/lesson/action/continue.phpですね.
switch ($page->qtype) {
case LESSON_ESSAY :
で,問題の種類に応じて場合分けされ,それぞれで正解と思われるのであれば,$newpageid = $answer->jumptoとしているようですね.
LESSON_NUMERICALであれば,
$useranswer = (float) optional_param('answer');
でユーザの入力を取得し,
if (($useranswer >= $minimum) and ($useranswer <= $maximum)) {
$newpageid = $answer->jumpto;
指定された範囲内に値が収まっている(あるいは一致)しているならば$newpageidをセットする.
新しい問題のタイプを追加したならば,ここに手を加えれば良さそうですね.