19-5 鉱夫の魂、いま安らかに

解説動画

クエスト19の19-1から19-5で必要なブロック番号

間違っているコード

player.onChat("19-5", function () {
    player.say("等間隔の枠以外の場所に鉱石を置きます");
    const MOVE_COUNTS: number[] = [11, 9, 8, 6, 4, 3, 3];
    const MOVE_OFFSETS: number[] = [0, 1, 1, 2, 3, 4, 5];
    const SPAN: number = 5;
    for (let turn_count = 0; turn_count < MOVE_COUNTS.length; turn_count++) {
        let offset = MOVE_OFFSETS[turn_count];
        for (let i: number = 0; i < MOVE_COUNTS[turn_count]; i++) {
            let mod_i = (i % SPAN) + offset;
            if (mod_i > 0) {
                placeOre();
            }
            agent.move(FORWARD, 1);
        }
        agent.turn(RIGHT);
    }
    player.say("鉱石を置きました");
});

解答コード

player.onChat("19-5", function () {
    player.say("等間隔の枠以外の場所に鉱石を置きます");
    const MOVE_COUNTS: number[] = [11, 9, 8, 6, 4, 3, 3];
    const MOVE_OFFSETS: number[] = [0, 1, 1, 2, 3, 4, 5];
    const SPAN: number = 6;
    for (let turn_count = 0; turn_count < MOVE_COUNTS.length; turn_count++) {
        let offset = MOVE_OFFSETS[turn_count];
        for (let i: number = 0; i < MOVE_COUNTS[turn_count]; i++) {
            let mod_i = (i + offset) % SPAN;
            if (mod_i > 0) {
                placeOre();
            }
            agent.move(FORWARD, 1);
        }
        agent.turn(RIGHT);
    }
    player.say("鉱石を置きました");
});