- ① スクラッチで順次処理を学ぼう!ネコを左右に動かすアニメーションの作り方【初心者向け】
- ② スクラッチでネコが正方形に動くアニメーションの作り方|座標と向きの使い方
- ③ スクラッチでネコが左右にスケートするアニメーションの作り方|繰り返しの使い方
- ④ スクラッチでネコが走るアニメーションの作り方|コスチューム切り替えの使い方
- ⑤ スクラッチでネコがランダムな速さで走るアニメーションの作り方|乱数の使い方
- ⑥ スクラッチでロケットを矢印キーで動かす作り方|条件分岐の使い方
- ⑦ スクラッチで重力ゲームの作り方|もし〜なら・でなければブロック入門
- ⑧ スクラッチでスプライト同士がメッセージを送り合う作り方|みんなであいさつ
- ⑨ スクラッチでキャラが順番に集合するアニメの作り方|みんな集合 (いまここ)
- ⑩ スクラッチで分裂するネコのアートの作り方【クローン入門】
さぁ、スクラッチでナニ作る!?
MCが「送って待つ」で女の子チームの集合を待ってから男の子チームへ次の指示を出す設計が効いている。スプライトごとに独立して動いているように見えて、全体の進行はMC1体が制御しており、メッセージの同期・非同期を使い分けることで自然なシーケンスが生まれている。このタイムラインを1か所でまとめる発想が、どう組み立てられているのか見ていこう。 参考資料:スクラッチプログラミング事例大全集
動画で見てみよう
チュートリアルの元になった作品
今回の目標
スターター作品をリミックスしよう
このチュートリアルにはスターター作品があります。使わなくても大丈夫だけど、最低限の素材などが用意されてるので便利です。
スターター作品をダウンロード
#1MCの準備
準備
スプライト「エムシー」を開く
| スプライトについて |
|---|
| フラグが立つと背景をStarsに切り替え、女子と男子を順番に呼び集める司会キャラクター |
| どんな役割か |
| みんなを呼び集めるMCを作るよ!旗を押したら女の子を先に呼んで、次に男の子も呼ぶよ。全員がMCのところに集まる仕組みを作ってみよう! |
メッセージ「女の子登場」を追加
女の子スプライトを表示させるメッセージ
実装
旗が押されたら背景を ( ) にするで背景を「Stars」にして、MCを左下の位置(x:-150, y:-110)にセットするよ。準備ができたら( ) を送るで「女の子登場」メッセージを送って、女の子たちに登場の合図を出すんだ。
#2女の子1の初期化
準備
スプライト「女の子1」を開く
女の子1| スプライトについて |
|---|
| girls_appearで表示され、girls_gatherでMCの元へグライドして隠れる女の子キャラクター |
| どんな役割か |
| 女の子1のキャラを作るよ!最初の合図でパッと現れて、次の合図でMCのところに集まるよ。2段階の動きがポイント! |
実装
旗が押されたら隠すで隠して、大きさを60%にセットして、画面右上(x:150, y:110)に配置するよ。合図が来るまでは見えないように、最初から隠しておくのがポイントだね。
#3女の子1の登場
「女の子登場」メッセージを受け取ったら表示するでパッと表示するよ。( ) を受け取ったときがMCからの合図をキャッチして動き出す仕組みだね。
ここではまだ表示するだけ。集合の動きは後のステップで追加するよ。
#4女の子2の初期化
準備
スプライト「女の子2」を開く
女の子2| スプライトについて |
|---|
| girls_appearで表示され、girls_gatherでMCの元へグライドして隠れる女の子キャラクター(2人目) |
| どんな役割か |
| 女の子2のキャラを作るよ!Girl1と同じく、登場してからMCのそばに集まる動きを作るよ。 |
実装
旗が押されたら隠して、大きさ60%にして、画面右下(x:150, y:-110)に配置するよ。女の子1が右上にいるから、2人が上下にわかれてスタンバイしている形だね。
#5女の子2の登場
1つのメッセージで複数のスプライトを同時に動かせるのがメッセージの強みだね。MCが「女の子登場」を1回送るだけで、女の子1も女の子2も一斉にリアクションするんだ。
#6MCのセリフと指示
準備
スプライト「エムシー」を開く
メッセージ「女の子集合」を追加
女の子スプライトをMCの元へグライドさせるメッセージ
メッセージ「男の子集合」を追加
男の子スプライトをMCの元へグライドさせるメッセージ
実装
まず( ) と ( ) 秒言うで「みんな集合!」と2秒間言ってから、( ) を送って待つで「女の子集合」メッセージを送るよ。ここが今回の大事なところ。「送って待つ」は、受け取った側の処理が全部終わるまで次に進まないんだ。
女の子たちが集まり終えたら「ちょっと男子ぃ!」と2秒間言って、最後に( ) を送るで「男の子集合」を送るよ。こっちは普通の「送る」だから、メッセージを飛ばしたらそれでおしまいだね。
#7女の子1の集合
準備
スプライト「女の子1」を開く

実装
「女の子集合」メッセージを受け取ったら表示して、( ) 秒で ( ) へ行くで2秒かけてエムシーの位置まで滑らかに移動するよ。到着したら隠すで隠れるんだ。
グライドの秒数が大きいほどゆっくり移動するよ。2秒だと、ゆったり歩み寄ってくる感じだね。
#8女の子2の集合
準備
スプライト「女の子2」を開く

実装
やることは女の子1とまったく同じで、「女の子集合」を受け取ったら表示して2秒かけてエムシーへグライドして隠れるよ。スタート位置が右下だから、女の子1とは別方向から集まってくるのが面白いところ。
#9男の子1の初期化
準備
スプライト「男の子1」を開く
男の子1| スプライトについて |
|---|
| boys_gatherを受け取ったらMCの元へグライドして隠れる男の子キャラクター |
| どんな役割か |
| 男の子1のキャラを作るよ!「男の子集合」の合図が届いたら、MCのところまでスーッと近づいていく動きをつけるよ。 |
実装
旗が押されたら隠して、大きさを50%に設定して、画面右上(x:150, y:110)に配置するよ。女の子たちが60%だったのに対して男の子は50%で、キャラの個性に合わせてサイズを調整しているんだ。
#10男の子1の集合
「男の子集合」メッセージを受け取ったら表示して、( ) 秒で ( ) へ行くで1秒かけてエムシーのところまで移動し、到着したら隠れるんだ。
女の子は2秒でゆっくり集まったけど、男の子は1秒でサッと駆けつける。グライドの秒数を変えるだけでキャラの動きに個性が出せるんだよ。
#11男の子2の初期化
準備
スプライト「男の子2」を開く
男の子2| スプライトについて |
|---|
| boys_gatherを受け取ったらMCの元へグライドして隠れる男の子キャラクター(2人目) |
| どんな役割か |
| 男の子2のキャラを作るよ!Boy1と同じように、合図を受けてMCのそばまでグライドする動きを実装するよ。 |
実装
旗が押されたら隠して、大きさ50%にして、画面右下(x:150, y:-110)に配置するよ。男の子1が右上、男の子2が右下にスタンバイだね。
#12男の子2の集合
「男の子集合」を受け取ったら表示して、1秒でエムシーへグライドして隠れるよ。男の子1と同じ動きだけど、下からMCに向かっていく軌道になるんだ。
これでMCが「送って待つ」で女の子を集めてから「送る」で男の子を呼ぶ、順番どおりのアニメーションが完成!次回はスプライトが分裂する仕組みを作るよ。
まとめ
「送って待つ」と「送る」の2つを使い分けるだけで、こんなに整ったシーケンスが組めるんだ。メッセージはスプライトを超えてコミュニケーションできる仕組みだから、キャラの数が増えても応用が利くよ。次回はボールが分裂する仕組みに挑戦しよう!