かあかあの部屋

子育てとかプログラミングとか生活感あふれる感じで…

[Scratch] (7) おみくじを作る その2

やること

おみくじを完成させます!
間が空いてすみません!
もう忘れちゃったかな?もう忘れちゃったよね…

  1. 背景の変更
  2. スプライトの追加・編集
  3. メッセージのやりとり
  4. 繰り返し
    ----------------------------------- ↓ここから
  5. 条件文(if もしも…)
  6. スクリプトを止める

以上

実際のプロジェクトはこちらで公開しています。

https://scratch.mit.edu/projects/446201955/

前回のおさらい

「スタート」ボタンが押されたことを、「メッセージ」を利用して「くじ」に伝え、コスチュームを「ずっと」変える。
でした。(アバウト…笑笑)

今日は、「くじ」を止めないと!!ですね。

おみくじ作り(後半)

といっても、あと少しです!

条件文(if もしも…)

♪ もしも~きみじゃ~なかったら~

まず、「スタート」ボタンがおされたら、ボタンの文字を「ストップ」に変えます。
1. 「ボタン」のスプライトを選択します。
2. 前回作成したスクリプトの [<メッセージ1>を送る] ブロックの下に、[次のコスチュームにする] ブロックをつなげます。
これで、ボタンを押すたびに、「スタート」と「ストップ」が入れ替わります。
f:id:ka-sukechang:20201209230423p:plain

次に、「スタート」ボタンが押されたらおみくじをスタート、「ストップ」ボタンが押されたらおみくじをストップさせます。
そう、ここで、条件文が出てきます。
”もし、「スタート」なら~、そうでなければ~”といったぐあいです。

3. [制御]-[もし<>なら、でなければ] というブロックを、[このスプライトが押されたとき] ブロックの下につなげます。
f:id:ka-sukechang:20201209230436p:plain

4. [もし<>なら] の”<>”の部分に、[演算]-[( ) = ( )] ブロックを入れます。
5. [( ) = ( )] の前の”( )”の部分に、[見た目]-[コスチュームの番号] ブロックを入れます。
6. [( ) = ( )] の後ろの”( )”の部分には、数字の1を入れます。
f:id:ka-sukechang:20201209230533p:plain

ちょっと休憩。

休憩終わり。
もし「コスチュームの番号 = 1」だったら、つまり、ボタンが「スタート」だったら、「メッセージ1」を送ります。

7. [もし<>なら、でなければ] ブロックの上側に、[<メッセージ1>を送る] ブロックを移動します。
8. [もし<>なら、でなければ] ブロックの下側に、[<ストップ>を送る] ブロックを移動します。

ん? [<ストップ>を送る] ブロック??
新しいメッセージを追加するんです。
[イベント]-[<メッセージ1>を送る] ブロックの 「<メッセージ1>」の部分をクリックすると、「新しいメッセージ」という選択肢が出てくるので、ここで新しいメッセージを作成します。

できましたか~?
ちょっと難しいですが、がんばって絵のようにつなげてくださいね。
f:id:ka-sukechang:20201209231008p:plain

スクリプトを止める

ラストの「スクリプトを止める」です。
「ストップ」メッセージを受け取ったら、「くじ」の動きを止めます。

  1. 「くじ」のスプライトを選択します。
  2. [イベント]-[<メッセージ>を受け取ったとき] ブロックを新しく追加します。
  3. ”<メッセージ>”の部分を「<ストップ>」にします。

  4. その下に、[制御]-[すべてを止める] ブロックをつなげます。

  5. ”すべてを止める”の部分を”スプライトの他のスクリプトを止める”に変更します。
    f:id:ka-sukechang:20201209231645p:plain

完成です!!!!!

まとめ

かけ足で非常に申し訳ないのですが、完成形を見たり、ブロックの配置を変える等いろいろやってみて、動きを確かめてください。
この”いろいろやってみる”というのが、大切だと思います。
いろいろやってみて初めて、動きが理解できると思うのです。
ぜひ、いろいろやってみてくださいネ♪