1章 移動:連続移動と複雑な移動
1-1 連続移動
課題:プレイヤーを同じ方向に複数回動かして、少し離れたアイテムまで移動しよう。
ステージ1-1のマップとクリア条件
| クリア条件 | 内容 |
|---|---|
| アイテム | 1個ゲットする |
| ブロック数 | 3個以下 |
| ターン数 | 100ターン以内 |
黄色の枠が自分(Cool)のスタート位置です。すべての条件を同時に満たすとクリアです。
プレイヤーを1マス動かす基本のブロックが「〇〇方向に移動する」ブロックです。まずはこのブロックがどんな形をしているか、ツールボックスから探して、ワークスペースに1つ置いてみましょう。
💡 考えるヒント
- 「〇〇方向に移動する」ブロックは、1回実行すると何マス進みますか。2マス進みたいときは、このブロックをどうすればよいでしょうか。
- ブロックのドロップダウン(▼)で、方向を選べることを確認しましょう。
まずは自分でブロックをワークスペースに並べて、実行ボタンを押してみましょう。
解答例
解答例を見る
上の例では「上方向に移動する」ブロックを2つ並べています。実行すると、キャラクターは上に1マス、また1マス、と合計2マス移動します。ブロックの向きはドロップダウンで切り替えられるので、「右方向に移動する」を3つ並べれば右に3マス進みます。
1マス移動だけを用意した意味
「3マス進む」という命令が最初から用意されていれば楽なのに、と思うかもしれません。しかしCHaserでは、あえて「1マス移動」という最小の命令だけを用意しています。理由は、CHaserが1ターンごとに1手だけ行動する対戦ゲームだからです。実際の対戦では、1マス進むごとに相手も1手動きます。もし「3マス進む」という命令があると、その間に相手がどう動いたかを確認できないまま3手分先に進んでしまい、不利な状況に気づけません。1マスずつ命令することで、後の章で学ぶ「毎ターン周囲を確認してから動く」という考え方につなげやすくしているのです。
1-4 複雑な移動
課題:ブロックを避けながら、アイテムのマスまでたどり着こう。
ステージ1-4のマップとクリア条件
| クリア条件 | 内容 |
|---|---|
| アイテム | 1個ゲットする |
| ブロック数 | 8個以下 |
| ターン数 | 100ターン以内 |
黄色の枠が自分(Cool)のスタート位置です。すべての条件を同時に満たすとクリアです。
このステージでは、フィールドの途中にブロックが置かれていて、まっすぐ進むだけではアイテムにたどり着けません。実際にBlockly画面でステージ1-4を開き、フィールドの様子を確認してみましょう。
💡 考えるヒント
- フィールドの絵を見て、自分のいる場所からアイテムまで、ブロックを避けながらどう進めばよいか、まず頭の中で(または紙に書いて)経路を考えましょう。
- 縦方向・横方向、それぞれ何マス動けばよいかを、方向ごとにまとめて数えると整理しやすくなります。
- 移動ブロックは、進みたい順番のとおりに上から並べる必要があります。
自分なりの経路を考えて、実際にブロックを並べてから、下の解答例と見比べてみましょう。
解答例
解答例を見る
このステージでは「右×3 → 上×2 → 右×1」という経路でゴールできます。移動ブロックを、進みたい順番のとおりに上から並べていくだけです。
注意したいこと
- マス数を数え間違える:フィールドの左上を基準に、縦・横のマス目を1つずつ指で追いながら数えると間違いにくくなります。
- ブロックの順番を間違える:Blocklyでは上から下へ命令が実行されます。組んだ順番と経路の順番がズレていないか、実行前に見比べましょう。
- 同じ向きのブロックを1つにまとめてしまう:「右方向に移動する」ブロックが1つだけだと、右に1マスしか進みません。3マス進みたいなら3つ並べる必要があります(回数を指定して繰り返す方法は次章で学びます)。
演習問題
- 「左×2 → 下×1 → 左×2」という経路でゴールするには、どんなブロックをどんな順番で並べればよいでしょうか。紙に書き出してから、実際にBlocklyで組んでみましょう。
- 自分でフィールドの絵を描き、アイテムまでの経路を考えて、必要な移動ブロックの並びをノートに書き出してみましょう。
発展:最短ルートを考える
同じゴールにたどり着くにも、遠回りのルートと最短ルートがあります。チュートリアルには「プログラムブロックを〇個以下でクリア」という条件が付いていることがあります。これは、できるだけ少ない命令数でゴールすることを促す条件です。移動ブロックを並べる前に、フィールド全体を見渡して、遠回りせずに済むルートがないか考えてみましょう。次の章で学ぶ「繰り返し」を使うと、同じ移動でもさらに少ないブロック数で表現できるようになります。
付録2への案内:本文で取り上げなかった1-2「キャラクターを移動させよう2」・1-3「いろいろな方法に移動させよう」を含め、ステージ1の全4課題の解答例を付録2「ステージ1 移動」に掲載しています。