スクラッチ-りんごが出る位置が変わった

スプライトを空に飛ばしながら自由に操作できるようにはできましたか?

まだできていない人はしたの記事をみてからぜひ作ってみましょう!↓

ここまでできると何かゲームが作れそうですね。

横から何か流れてきたものを飛んでいる猫がゲットするなどができると面白そうです。

今回の記事ではいろんなものを流してゲットしたら得点を加算していくゲームを作ってみましょう。

飛んでいる猫がゲットするものを追加してみよう

ゲットするものとしてりんごを追加してみましょう。

スプライトを追加するには『スプライト』エリアの右下にある追加ボタンをクリックして追加しましょう。

クリック後『apple』と入力して検索すれば表示されます。

りんごを追加

りんごを右から左へと動かしてみる

りんごを追加したら今度は右から左へと動かしてみましょう。

りんごを動かすには 『10歩動かす』ブロックを使いましょう。

値が10のままだと右に動いていくので-10に変更してみましょう。

スクラッチ-りんごを動かしてみる

左に動いていますね、あとは『Buildings』スプライトと同じやり方で右から左に自動で動くようにしてみましょう。

使うブロックは以下です。

  • ずっと
  • x座標を300にする
  • 〇〇まで繰り返す
  • 〇〇 < -250

上記ブロックを組み合わせて動かすと以下のように動かすことができます。

スクラッチ-りんごを自動で動かす

スクラッチ-りんごを自動で動かす

追加したものに触れたらスコアをつけてみよう

りんごを追加することができたので次はりんごに触れたらスコアを加算するようにしてみましょう!

まずはスコアを表示するために変数を作成しましょう。

変数について詳しく知りたい人はしたの記事をみてください!↓

スコア変数を追加する

『変数』エリアの『変数を作る』ボタンから変数を作成しましょう。

名前はスコアにして、すべてのスプライト用を選択しましょう。

りんごに触れたらスコアの値を変更する

スコアという変数を作成しましたがどんなときにスコアの値を増やしたいでしょうか?

そうですね飛んでいる猫がりんごに触れたときにスコアを増やしたいですね。

さっそく『Apple』スプライトを選択してプログラムを修正しましょう。

増やしたいのは猫がりんごにさわったらでしたね。

こんなとき使うのは分岐でしたね。

『もし〇〇なら』というブロックが使えそうです。

〇〇の中はどうしたら良いでしょうか?

『調べる』エリアに『〇〇に触れたら』ブロックがあるので〇〇の値を『Cat Flying』に変更すると良さそうですね。

飛んでいる猫がりんごに触れたときには何をしたいのでしたっけ?

そうですねスコアの値を増やしたかったのです。

『もしCat Flyingに触れたら』ブロックの中には『スコアを1づつ変える』ブロックが使えそうです。

以下のようなブロックができていればOKです!

実際に動かしてみてりんごに触るとスコアの値が増えていくか試してみましょう!

スクラッチ-りんごに触れたらスコアが加算され続ける

スクラッチ-りんごに触れたらスコアが加算され続ける

スコアは増えていますけどなんか増えすぎですね。

なぜでしょうか?

りんごにふれたら画面から隠してみよう

スコアがたくさん増えていくのは条件が『猫に触れたら』になっているからですね。

猫をりんごが飛んでいるところに移動させた後に猫はしばらくりんごに触れつづけていますよね。

なのでプログラムは正常に動いているわけです。

ただりんごにふれたら1点だけ追加したいのですがどうすれば良いでしょうか?

りんごに触れたらりんごを隠してみるといいかもしれませんね。

『もしCat Flyingに触れたら』ブロックの中の一番最初には『隠す』ブロックを追加してみましょう!

スクラッチ-りんごを隠す

追加したら動かしてみましょう。

スクラッチ-りんごに触れたら表示されなくなる

スコアは1点だけが加算されるようになりましたがりんごが消えてしましましたね。

これは隠した後に表示をしていないからですね。

『表示する』ブロックを追加することでまたりんごを画面にだせそうですね。

スクラッチ-りんごを表示する

ブロックを上記のように追加したら動かしてみましょう!

スクラッチ-りんごを食べ続ける

いいですね! イメージしていた動きになりましたね。

りんごに触れたときに音を出してみよう

りんごに触れたときにしっかりと触れたことがわかるように音を出してみましょう!

『音』エリアにある 『Chompの音を鳴らす』というブロックが使えそうですね。

『隠す』ブロックの上に『Chompの音を鳴らす』ブロックを追加してみましょう。

スクラッチ-りんごに触れたときに音を鳴らす

追加したら動かしてみましょう!

りんごに触れるとまるで猫がりんごを食べたような音が出て面白いですね。

りんごをいろんなところから出しみよう

りんごに触ることでスコアが増えていくようになりましたがりんご出てくる位置が変わらないのでゲームとしては簡単すぎますね。

もう少しゲーム性を持たせるためにりんごの出てくる位置を毎回変えてみましょう!

y座標はいくつからいくつまで設定できるか?

りんごの出てくる位置を変えるためにはy座標の値を変えると良さそうです。

y座標はいくつからいくつまで設定できるのでしょうか?

実際にりんごを動かして値を確認してみましょう!

スクラッチ-りんごはいくつからいくつまで動く?

-130から130ぐらいに表示させると触れることができて良さそうですね。

y座標を変更するために乱数を使ってみよう

りんごのy座標に設定したい値は-130から130だということがわかりました。

ではどうやって-130から130の値を作れば良いでしょうか?

スクラッチのブロックには『乱数』と呼ばれるものが用意されいます。

乱数とは決められた範囲の数値を適当に取り出してくれる便利なものです。

今回のような場合にはぴったりですね。

『演算エリア』の中に『1から10までの乱数』ブロックがあるので値を-130と130に変更しましょう。

乱数ブロックはどこに使えば良いでしょうか?

y座標を変更できるようなブロックはまだプログラミングエリアの中にはなさそうです。

『動き』エリアの中に『x座標を〇〇、y座標を〇〇にする』ブロックがあるので今使っている『x座標を300にする』ブロックと入れ替えてみましょう。

入れ替えたあとはx座標の値を300にy座標の値を先ほどの乱数ブロックにしてみましょう。

スクラッチ-りんごの表示する位置を変える

上記のようなプログラムが作成できたら動かしてみましょう!

スクラッチ-りんごが出る位置が変わった

いいですね、りんごが出てくる位置が変わったのでゲームっぽくなってきましたね!

今回はここまでにしておきましょう、お疲れ様でした!

おすすめの記事