解説動画
解答コード
function inspectPillar(values: number[]) {
for (let i: number = 0; i < values.length; i++) {
values[i] = agent.inspect(AgentInspection.Block, FORWARD);
agent.move(UP, 1);
}
agent.move(DOWN, values.length);
}
function buildPillar(values: number[]) {
agent.setSlot(1);
for (let i: number = 0; i < values.length; i++) {
agent.setItem(values[i], 1, 1);
agent.place(FORWARD);
agent.move(UP, 1);
}
agent.move(DOWN, values.length);
}
player.onChat("20-1-left", function () {
player.say("見本の柱を調べて、左の柱を作ります");
let left: number[] = [0, 0, 0, 0]; // 配列の初期状態:見本の柱と同じ長さで、初期値 0 とします
inspectPillar(left);
left.removeAt(1);
agent.move(LEFT, 2);
buildPillar(left);
player.say("左の柱を作りました");
});
player.onChat("20-1-right", function () {
player.say("見本の柱を調べて、右の柱を作ります");
let right: number[] = [0, 0, 0, 0]; // 配列の初期状態:見本の柱と同じ長さで、初期値 0 とします
inspectPillar(right);
right.splice(2, 1);
agent.move(RIGHT, 2);
buildPillar(right);
player.say("右の柱を作りました");
});