画面下端でボールを打ち返すパドル(ラケット)を追加します。とりあえず画面下の中央付近に固定で描画します。

パドルの縦横寸法を表す変数(定数)「padW」(paddle width)、「padH」(paddle height)、パドルの位置を表す変数「padX」(paddle x)、「padY」(paddle y)を作成して、「初期設定」ブロックの中で初期化してください。具体的な値については図4-11を参照してください。パドルの描画は「長方形を塗りつぶし」ブロックを使います。

図4ー9 パドルの初期位置

図4ー10 パドルを追加(実行画面)

図4ー11 パドルを追加 プログラム

パドルが追加できましたので、左右方向の位置を「L」「R」ボタンで変えられるようにします。ボタンの押し下げを検出するブロックは第3章で「_押された」ブロックを使いました。今回はボタンのクリックではなく押し下げを連続的に検出したいので、「ボタン__状態」ブロックを使用します。

・もし「L」ボタンが押されていればパドルの横方向位置「padX」をマイナスする

・もし「R」ボタンが押されていればパドルの横方向位置「padX」をプラスする

という内容でブロックを構成し、「アップデート50ms」ブロックの下に追加します。パドルの移動量は少なくともボールのスピードより速くなければ追いつけませんので、ここでは「2」としました。

また、プログラム内容がすぐにわかるように「コメント文」を追加しました。「コメント」ブロックは「Arduino」→「一般」カテゴリ―の中にあります。コメント文はプログラムの実行には関係しません。人が見てわかりやすくする目的で追加するものです。

図4-12を参考にブロックを追加してください。ゲーム機にアップロードして実行し、「L」「R」ボタンでパドルが左右に動くことを確認してください。

図4ー12 ボタン操作を追加 プログラム

なお実際にプレイしてみるとわかりますが、ボタンを押し続けるとパドルが画面から消えて出て行ってしまいます。これはちょっと品位がありません。本来はパドルが画面端に到達したところでその位置「padX」をキープするようにプログラムするべきです。今回は、特に実害がありませんのでこれはこのままにしておきます。

インデックス
4-(4)パドルで打ち返す