前のページへ戻る

キミもレスキュー隊に入隊

8-1「キャラクターをジャンプさせよう」

前準備

スクラッチサイトにアクセスして、サインインしよう。
(まだ自分のアカウントを作っていない人は、「スクラッチのはじめ方」にしたがってアカウントを作ってね)
why_programming_8のスタジオ(※NHKサイトをはなれます)を見てみよう。

why_programming_8のスタジオで、プロジェクト「8_1_キャラクターをジャンプさせよう」を選び、「中を見る」、次に「リミックス」をおして、自分のアカウントにコピーしてね。
(コピーの仕方は「自分の作品を作ろう!リミックス(改造)をする」も読んでね)

ラム

まずは簡単(かんたん)なジャンプ

どうぶつ競技場の失敗カエル

どうぶつ走り幅跳(はばと)び競技会(きょうぎかい)の会場よ。スペースキーを連打で走って、上向き矢印キーでジャンプのはずだけど、全然ジャンプしないわね。

ラム

上向き矢印キーがおされたとき

カエルのプログラムを見ると、あれ、上向き矢印キーが押されたときの下のプログラムがないわね。これじゃ、ジャンプをしないわけよ。ここにジャンプをするプログラムを作ってあげればいいわね。

ラム

カエルの絵

みんな、座標(ざひょう)のことはもう、わかるわよね。わからない場合は第3回を見てね。ジャンプはたて方向の変化だから、いじればいいのはy座標。最初にカエルが上に行って、それから下に行けばいいはずよね。そういう場合のプログラムは…

ラム

カエルのプログラム

これでいいわね。
「コスチュームをジャンプにする。」で、ジャンプした絵に切りかえたあとに、
「y座標を10ずつ変える」を10回くり返して、少しずつ上に行き、
「y座標を-10ずつ変える」を10回くり返して、少しずつ下に行く。

これでいけるかな?

ラム

落ちるプログラム、クローンを作り続けるプログラム

うん、とんだわね!ナイスよ。でも、なんか、飛び方がぎこちないわよね。ジャンプするときって、こんな三角形みたいかしら。こういう時は、実際に実験をして確かめてみればいいわ。

ラム

リアルなジャンプを作ろう

スローモーションキャプチャ

ジャンプは、ボールを放りなげるようなもの。だから、ボールを放ってスローモーションでみてみましょう。ほら、こんな感じ。

ラム

よ~くみてみると、ほら、上に行く距離(きょり)が変わっているよ。
さっき組んだプログラムと比較してみて。さっきのはずっとy座標が10ずつ増えているでしょ。ここが違うのよね。

ラム

並べたグラフ

では、どのようにyをへらせばいいのか。比べるためにならべてみると…ほら、みんな同じくらいずつ“上に行く距離”がへっていっているわね。よ~し、これをプログラミングしちゃいましょう。

ラム

カエルのジャンプ概念

どんな数でもいいのだけれど、最初に上に行く距離を12として、次はそれが11、10…となっていけばいいのよね。0になったら頂上で、マイナスになったら、今度は下に行くはず。こんな感じよね。

ラム

変数名入力画面

上に行く距離がどんどん減っていく。こういう、変化していく数をあつかうのに、ぴったりなものがあるの。それが「変数(へんすう)よ」。

「データ」を開くと、中に「変数を作る」というボタンがあるでしょ。これを押すと、ほら、こんな画面が開くの。ここに、上に行く距離、と打ちこんでみて。その下のチェックする場所は、「グローバル…」いやいや、これはいずれ。とりあえず左がわにチェックしておけばいいわ。

ラム

できた

ほら、すると、新しく「上に行く距離」という変数ができたわ。「変数」には、数や文字を自由に入れて、それを変えたりすることができるのよ。

ラム

プログラム画面

では、これでプログラムを作ってみましょう。例えば、こんな感じかな。

(1) コスチュームをジャンプにして、
(2) 「上に行く距離」を12にする。
(3) 「上に行く距離」ずつy座標を増やしてあげて、その後、「上に行く距離」を1へらす。
(4) (3)を地面にふれるまでくりかえす。

こうすれば、最初はy座標を12ふやして、その次は11,10…となっていくわね。
さあ、あとは実際にやってみて!きっときれいなジャンプができるわよ!

ラム

今回のまとめ

  • ジャンプはy座標を増やして、それから、へらせば作ることができる。
  • y座標は同じだけ増やしていくのではなく、増やす量を少しづつ減らしていくとリアルなジャンプになる。
  • 数や文字を変化させたい時には「変数(へんすう)」を作ろう。変数は自分で名前をつけることができる。

今回のリミックス

●カエルをより高くジャンプさせてみよう
●カエルの飛んだ距離が100を超えたら、観客の動きが早くなったり、音を出したり、さわぐようにしてみよう