こんにちは!ひろ先生です。

 今回は、分岐をやっていきたいと思います。分岐とは、「もし~だったら~する。もし~でなければ~する。」という概念です。これは、ゲームのあらゆる場面で使われており、例えば、ドラゴンクエストなどのゲームでセリフを選択する場面などは分岐のプログラムに基づいてストーリーが展開されるようになっています。

それでは、早速やっていきましょう。

①まずは、コードエディターを起動します。

②前回と同様に、変数を使って、任意の数字分だけエージェントを前に移動させるようにするブロックのかたまりを用意します。

③カテゴリーの論理から、「もし”真”なら」のブロックを選択します。

④カテゴリーのエージェントから、「エージェントにブロックがあるか、前を確認させる」のブロックを選択し、「”真”」の部分に埋め込みます。

⑤カテゴリーのエージェントから、「エージェントに前を破壊させる」と「エージェントに全てひろわせる」のブロックを選択し、「~なら」の後に繋ぎます。

「エージェントに前を破壊させる」ブロックは、エージェントの前にブロックなどの物がある場合に破壊させます。「エージェントに全てひろわせる」ブロックは、エージェントの前に物が落ちている場合に拾わせます。

⑥⑤で作ったかたまりを②のかたまりに挟めば完了です。少し複雑なプログラムができあがりましたが、どのように動くのか見ていきたいと思います。

⑦コードエディターを起動したので、エージェントが出てきています。

⑧チャットコマンドに「run 10」と入力します。もし、10ブロック移動する間に途中でブロックが前に出てきたら破壊して動作が終わります。一方、移動している間にブロックが出てこない場合は、数字の分だけ移動して動作が終わります。

 今回は分岐を使って、もし、エージェントの前にブロックがある場合と、ない場合とで行動が変わるようにプログラミングをしてみました。それでは、次回はこれまでの内容を組み合わせて、より高度なプログラミングを紹介していきたいと思います。