お題Scratch 08 のベース「月面着陸」の作成手順です。
お題Scratch 08 月面着陸 on Scratch by ogaworks
このプロジェクトの特徴
加速度
Scratchの準備
1. スクラッチのサイトhttps://scratch.mit.edu/ にアクセスする。
2. 「作る」をクリックして、プログラミングの画面を開く。
背景を用意する
1. ステージの背景を選択し、ゲームの背景を描く。カラーパレットで地面の色を選択し、ビットマップツールのブラシ(筆)やラインツール(直線)などで描く。線の太さは中位に設定すると描きやすい。空白部分は塗りつぶす。直線を描く際、シフトキーを押しながら描くと垂直もしくは水平な線になる。
2. 着陸成功地点を、地面の表面に設定する。地面とは別の色を使う。
着陸船を用意する
1. 不要なスプライトは削除する。
2. 「新しいスプライト」の「スプライトをライブラリーから選択」でライブラリーを開き、「Spaceship」を選択してOKで読み込む。
3. 読み込まれたSpaceshipのスプライトが大きいので、縮小ツールで適当な大きさに調整する。
4. Spaceshipのコスチュームを開き、「Spaceship-a」をエンジンを噴射している様子に手直しする。
5. Spaceshipのコスチューム名をわかりやすいように「噴射」と「降下」に変更する。
着陸船を降下させる
着陸船を上空に配置し、地面につくまで降下させる。
1. Spaceshipのスクリプトを開き、イベントの「旗がクリックされたとき」を追加する。次に、見た目の「コスチュームを〜にする」を追加し、降下のコスチュームを指定する。
2. 見た目の「◯度に向ける」を追加して角度に90度を指定し、「x座標に◯、y座標に◯にする」を追加してそれぞれx=220、y=160を指定する。
3. 落下スピードを設定するための変数を作成する。データの「変数を作る」で、すべてのスプライト用の新しい変数「y_speed」を作成する。
4. 同様に、横移動のスピードを設定するための変数「x_speed」を作成する。
5. 作成した変数を初期化する。旗をクリックしてプログラムがスタート後、Spaceshipはステージの左・下に向かって落ちていく。x_speedが左方向への移動量、y_speedが、下方向への移動量。
6. 新しくもう一つイベントの「旗がクリックされたとき」を追加する。次に、制御の「〜まで繰り返す」をセットし、条件の〜には、調べるの「〜色に触れた」を追加し、色には地面の茶色を指定する。
7. 繰り返しの中に、動きの「x座標を◯ずつ変える」と「y座標を◯ずつ変える」を追加し、それぞれにデータの変数「x_speed」と「y_speed」を設定する。
ここで、旗をクリックして動きを確認する。
縦方向には、y_speedで設定した速さ(ここでは-1)で落下していく。値を変えて変化を見てみよう。
着陸船に重力加速度(重力により生じる加速度)を追加する
重力加速度とは、地球の重力が生み出す加速度のことです。
- 重力と引力の違いを小学生でもわかるように教えてください。クロスワー… – Yahoo!知恵袋
- NHK高校講座 | 物理基礎 | 第11回 第1編 物体の運動とエネルギー 落下運動を調べる ~重力加速度~
何もキーが押されていない時、重力加速度によって落下速度をあげます。
1. 「茶色に触れたまで繰り返す」のループに、制御の「もし〜なら」を追加。条件に、「何もキーが押されていない」を指定したいので、調べるの「〜キーが押された」と演算の「〜ではない」を組み合わせて、「どれかのキーが押されたではない」を設定します。
2. 作成した条件分岐の中で落下速度を上げるため、データの変数「y_speedを◯ずつ変える」を追加し、0.05ずつy_speedを減らします。
この変更分を変更して、着陸船が落ちるスピードを見てみよう。
スペースキーで下方向に噴射
下方向に噴射して、落下速度をゆるめる。
1. 「茶色に触れたまで繰り返す」のループに、制御の「もし〜なら」を追加。条件に、調べるの「〜キーが押された」をセットし、キーに「スペースキー」を設定します。
2. 落下速度をゆるめるために、スペースキーが押されている間だけy_speedを少し増やす。データの「〜を◯ずつ変える」で、y_speedを0.05ずつ変える。
3. スペースキーを押している間は、Spaceshipのコスチュームを「噴射」にする。また、向きを上向きにする。
4. キーを離した時はコスチュームを「降下」にする。
旗をクリックしてスペースキーの動作を確認しよう。
カーソルキーで左右に噴射
スペースキーで下方向に噴射して落下速度をゆるめたのと同様に、左右のキーでそれぞれ左右に噴射して、降下位置を調整できるようにする。
1. 左右のキーが押された時に、変数x_speedをそれぞれ0.1、-0.1ずつ変える。また、左右の噴射時もコスチュームを「噴射」に変えて、向きをそれぞれの方向に向ける。
2. キーが押されていない場合はコスチュームを「降下」にし、向きを戻す。
着陸の処理
茶色に触れると、ループを抜けてSpaceshipの動作が終了する。その時点で、黄色に触れていたら着陸成功とする。
1. 茶色に触れるまで繰り返すループの下に、制御の「もし〜なら、でなければ」の条件分岐を追加し、条件部分に調べるの「〜色に触れた」、色には着陸地点の黄色をセットする。
2. 条件分岐の両方に、見た目の「〜と◯秒言う」のブロックをそれぞれ追加し、着陸成功時と失敗時のメッセージを設定する。
完成
お題に挑戦
このプロジェクトを元に、以下のようなお題に挑戦してみてください。
- 着陸速度を制限する
- BGMや効果音を追加する
- 得点をつける
- 噴射を制限
- 難易度やステージを追加する
コメントを残す