さて、第5回目はスクラッチで「自動制御移動」と「自動制御移動の応用」を考えたいと思います。
練習11【自動制御移動 / あたり判定 の処理】
使用する項目と順序
- イベント:「右向き矢印キーが押された時」
- 制御:「ずっと」
- 制御:「もし「※~に触れたなら」」
- 動き:「y座標をー8ずつ変える」
- 制御:「このスクリプトを止める」
- 制御:「でなければ」
- 動き:「y座標を4ずつ変える」
- 制御:「もし上向きの矢印キーが押されたなら」
- 制御:「このスクリプトを止める」
- 制御:「もし下向きの矢印キーが押されたなら」
- 制御:「このスクリプトを止める」
- 制御:「もし左向きの矢印キーが押されたなら」
- 制御:「このスクリプトを止める」
- 制御:「もし「※~に触れたなら」」
ポイント
ここでのポイントは反発値「y座標をー8ずつ変える」の設定です。移動する対象物が壁にぶつかった瞬間に反発して、動きを止めます。移動速度が「2」なら反発値を「4」に。移動速度が「4」なら反発値を「8」に。というように、反発値を移動速度の2~4倍ほどに設定しましょう。
そうすることで、よりそれらしい動きを演出することができます。
練習12【自動制御移動 / 全方位あたり判定 の処理】
使用する項目と順序
上記の応用なので割愛させていただきます。上下左右の4つの大きな塊のブロックで実現できます。
ポイント
上記の練習11とほぼ同じです。少し違うところは、x座標とy座標の使い方です。縦軸(上下)の場合はy座標、横軸(左右)の場合はx座標を使用します。また、下方向と左方向の場合は「負の値(マイナス)」を、上方向と右方向の場合は「正の値(プラス)」の数値を設定してください。