function game_OnExportHTML_cross($game, $context, $html, $destdir)
{
    global $CFG, $DB;
    if ($html->filename == '') {
        $html->filename = 'cross';
    }
    $filename = $html->filename . '.htm';
    require "cross/play.php";
    $attempt = game_getattempt($game, $crossrec, true);
    if ($crossrec == false) {
        game_cross_new($game, $attempt->id, $crossm);
        $attempt = game_getattempt($game, $crossrec);
    }
    $ret = game_export_printheader($html->title);
    echo "{$ret}<br>";
    ob_start();
    game_cross_play(0, $game, $attempt, $crossrec, '', true, false, false, false, $html->checkbutton, true, $html->printbutton, false, $context);
    $output_string = ob_get_contents();
    ob_end_clean();
    $course = $DB->get_record('course', array('id' => $game->course));
    $filename = $html->filename . '.htm';
    file_put_contents($destdir . '/' . $filename, $ret . "\r\n" . $output_string);
    $filename = game_OnExportHTML_cross_repair_questions($game, $context, $filename, $destdir);
    game_send_stored_file($filename);
}
function game_cross_continue($id, $game, $attempt, $cross, $g, $endofgame, $context)
{
    if ($endofgame) {
        if ($g == '') {
            game_updateattempts($game, $attempt, -1, true);
            $endofgame = false;
        }
    }
    if ($attempt != false and $cross != false) {
        return game_cross_play($id, $game, $attempt, $cross, $g, false, false, $endofgame, false, false, false, false, true, $context);
    }
    if ($attempt == false) {
        $attempt = game_addattempt($game);
    }
    game_cross_new($game, $attempt->id, $crossm);
    game_updateattempts($game, $attempt, 0, 0);
    return game_cross_play($id, $game, $attempt, $crossm, '', false, false, false, false, false, false, false, true, $context);
}