• 2014年10月12日

スクラッチ2.0 講座 Vol.6 プログラムミングを学ぼう!

スクラッチ2.0 講座 Vol.6 プログラムミングを学ぼう!

スクラッチ2.0 講座 Vol.6 プログラムミングを学ぼう! 424 283 パソコン生活サポート Pasonal

さて、第5回目はスクラッチで「自動制御移動」と「自動制御移動の応用」を考えたいと思います。

練習11【自動制御移動 / あたり判定 の処理】

 

使用する項目と順序

  • イベント:「右向き矢印キーが押された時」
  • 制御:「ずっと」
    • 制御:「もし「※~に触れたなら」」
      • 動き:「y座標をー8ずつ変える」
      • 制御:「このスクリプトを止める」
    • 制御:「でなければ」
      • 動き:「y座標を4ずつ変える」
    • 制御:「もし上向きの矢印キーが押されたなら」
      • 制御:「このスクリプトを止める」
    • 制御:「もし下向きの矢印キーが押されたなら」
      • 制御:「このスクリプトを止める」
    • 制御:「もし左向きの矢印キーが押されたなら」
      • 制御:「このスクリプトを止める」

 

ポイント

ここでのポイントは反発値「y座標をー8ずつ変える」の設定です。移動する対象物が壁にぶつかった瞬間に反発して、動きを止めます。移動速度が「2」なら反発値を「4」に。移動速度が「4」なら反発値を「8」に。というように、反発値を移動速度の2~4倍ほどに設定しましょう。

そうすることで、よりそれらしい動きを演出することができます。

 

 

練習12【自動制御移動 / 全方位あたり判定 の処理】

 

使用する項目と順序

上記の応用なので割愛させていただきます。上下左右の4つの大きな塊のブロックで実現できます。

 

ポイント

上記の練習11とほぼ同じです。少し違うところは、x座標とy座標の使い方です。縦軸(上下)の場合はy座標、横軸(左右)の場合はx座標を使用します。また、下方向と左方向の場合は「負の値(マイナス)」を、上方向と右方向の場合は「正の値(プラス)」の数値を設定してください。