![【Scratchチュートリアル】シルエットゲーム](data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAqgAAAHFAQAAAAAWQTboAAAAAnRSTlMAAHaTzTgAAAA7SURBVBgZ7cEBAQAAAIKg/q92SMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4F6YLgAB+x1CtAAAAABJRU5ErkJggg==)
続きです
![](data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAJYAAACWAQAAAAAUekxPAAAAAnRSTlMAAHaTzTgAAAAaSURBVEjH7cExAQAAAMKg9U9tDQ+gAACAdwMLuAABXZHjmQAAAABJRU5ErkJggg==)
【Scratchチュートリアル】シルエットゲーム1(全3回)
複数ふくすうのスプライトが重かさなったシルエットから、元もととなるスプライトを当あてるゲームです。ジグソーパズルのように、シルエット部分ぶぶんにスプライトをドラッグして解答かいとうします 素材そざいを準備じゅんびしよう こちらのスタートボタ...
問題を作ろう
全部で3問出題するので、現在の問題番号を管理する変数「問題番号」を作成します
![【Scratchチュートリアル】シルエットゲーム](data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAqgAAAFUAQAAAADAe/MOAAAAAnRSTlMAAHaTzTgAAAAzSURBVHja7cExAQAAAMKg9U9tCj+gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHgYcjgAAdqmsNkAAAAASUVORK5CYII=)
スタートボタンにスクリプトを作成します
![【Scratchチュートリアル】シルエットゲーム](data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAqgAAADjAQAAAABhw9t3AAAAAnRSTlMAAHaTzTgAAAAqSURBVHja7cEBDQAAAMKg909tDjegAAAAAAAAAAAAAAAAAAAAAAAAgB8DTEIAAZGp+1YAAAAASUVORK5CYII=)
シルエットのスプライトを組み合わせて、問題を作成します。1問目は「ねこ」と「いぬ」のシルエットを組み合わせることにします
問題に利用するシルエットのスプライトに、スクリプトを作成して表示するようにします。今回は「いぬ かげ」「ねこ かげ」の2つにスクリプトを作成します
![【Scratchチュートリアル】シルエットゲーム](data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAqgAAADjAQAAAABhw9t3AAAAAnRSTlMAAHaTzTgAAAAqSURBVHja7cEBDQAAAMKg909tDjegAAAAAAAAAAAAAAAAAAAAAAAAgB8DTEIAAZGp+1YAAAAASUVORK5CYII=)
問題に利用しないシルエットのスプライトは非表示になるようにします。「かえる かげ」「むし かげ」「ペンギン かげ」「ひとで かげ」「ユニコーン かげ」の5つは非表示にします
![【Scratchチュートリアル】シルエットゲーム](data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAqgAAADjAQAAAABhw9t3AAAAAnRSTlMAAHaTzTgAAAAqSURBVHja7cEBDQAAAMKg909tDjegAAAAAAAAAAAAAAAAAAAAAAAAgB8DTEIAAZGp+1YAAAAASUVORK5CYII=)
これでスタートボタンを押すと、「ねこ」と「いぬ」のシルエットだけが表示されます
![【Scratchチュートリアル】シルエットゲーム](data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAqgAAAHFAQAAAAAWQTboAAAAAnRSTlMAAHaTzTgAAAA7SURBVBgZ7cEBAQAAAIKg/q92SMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4F6YLgAB+x1CtAAAAABJRU5ErkJggg==)
この状態でシルエットのスプライトをドラッグして問題を作ります
このようにしてみました
![【Scratchチュートリアル】シルエットゲーム](data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAqgAAAHFAQAAAAAWQTboAAAAAnRSTlMAAHaTzTgAAAA7SURBVBgZ7cEBAQAAAIKg/q92SMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4F6YLgAB+x1CtAAAAABJRU5ErkJggg==)
「x座標を○、y座標を○」ブロックに座標が入力されているので、「問題を出す」を受け取った時のスクリプトに追加します。これは「いぬ かげ」スプライトです
![【Scratchチュートリアル】シルエットゲーム](data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAqgAAADjAQAAAABhw9t3AAAAAnRSTlMAAHaTzTgAAAAqSURBVHja7cEBDQAAAMKg909tDjegAAAAAAAAAAAAAAAAAAAAAAAAgB8DTEIAAZGp+1YAAAAASUVORK5CYII=)
今回は2つの「かげ」を組み合わせているので、もう1つのスプライトにも座標指定のスクリプトを追加します。こちらは「ねこ かげ」スプライトです
![【Scratchチュートリアル】シルエットゲーム](data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAqgAAADjAQAAAABhw9t3AAAAAnRSTlMAAHaTzTgAAAAqSURBVHja7cEBDQAAAMKg909tDjegAAAAAAAAAAAAAAAAAAAAAAAAgB8DTEIAAZGp+1YAAAAASUVORK5CYII=)
スプライトにドラッグの処理をいれよう
「いぬ」スプライトがシルエットの位置にドラックできたか(正解したかどうか)を管理するための変数「正解」を作ります。スプライトごとに管理するので「このスプライトのみ」にします
![【Scratchチュートリアル】シルエットゲーム](data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAqgAAADjAQAAAABhw9t3AAAAAnRSTlMAAHaTzTgAAAAqSURBVHja7cEBDQAAAMKg909tDjegAAAAAAAAAAAAAAAAAAAAAAAAgB8DTEIAAZGp+1YAAAAASUVORK5CYII=)
ここでスプライトのドラッグについて少し説明します
スプライトのドラッグの設定はスプライトの設定画面の「プレイヤーでドラッグできるか」で変更できます。標準ではオフです
![【Scratchチュートリアル】シルエットゲーム](data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAqgAAADjAQAAAABhw9t3AAAAAnRSTlMAAHaTzTgAAAAqSURBVHja7cEBDQAAAMKg909tDjegAAAAAAAAAAAAAAAAAAAAAAAAgB8DTEIAAZGp+1YAAAAASUVORK5CYII=)
「プレイヤーでドラッグできるか」のオン・オフに関わらず開発画面で実行した場合は全てのスプライトをドラッグすることができるので注意が必要です。完成したプログラムは全画面モードかプロジェクトページで動作確認するようにしてくだい
![【Scratchチュートリアル】シルエットゲーム](data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAqgAAADjAQAAAABhw9t3AAAAAnRSTlMAAHaTzTgAAAAqSURBVHja7cEBDQAAAMKg909tDjegAAAAAAAAAAAAAAAAAAAAAAAAgB8DTEIAAZGp+1YAAAAASUVORK5CYII=)
今回は、スプライトをドラッグができる・できないをプログラムで切り替えたいので、スプライトの設定では「プレイヤーでドラッグできるか」のチェックはオフにします(設定を変更しない)
「いぬ」スプライトにスクリプトを作成します。最初の座標指定はスプライトの最初の位置を指定します。正解せいかいするまで(シルエットのスプライトの位置に移動するまで)ドラッグできるようにします
![【Scratchチュートリアル】シルエットゲーム](data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAqgAAADjAQAAAABhw9t3AAAAAnRSTlMAAHaTzTgAAAAqSURBVHja7cEBDQAAAMKg909tDjegAAAAAAAAAAAAAAAAAAAAAAAAgB8DTEIAAZGp+1YAAAAASUVORK5CYII=)
これで動作確認します。「いぬ」のスクリプトだけがドラックできるのが確認できます
![【Scratchチュートリアル】シルエットゲーム](data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAqgAAAG5AQAAAABqoftSAAAAAnRSTlMAAHaTzTgAAAA7SURBVHja7cEBAQAAAIIg/69uSEABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAuwGUJgABxH47ywAAAABJRU5ErkJggg==)
ドラッグのプログラムはEテレ「Why!?プログラミング」の「No.15 おそろしの花をさかせろ」回が詳しいので見てみてください
Why!?プログラミング 「No.15 おそろしの花をさかせろ」
正解を判定しよう
スプライトがシルエットのスプライトの位置までドラッグできたかを判定するスクリプトを追加します。先ほどのドラッグのスクリプトの「もし〜」ブロックを「もし〜でなければ」ブロックに変更して、「でなければ」に位置を調べるスクリプトを追加します
![【Scratchチュートリアル】シルエットゲーム](data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAqgAAAHFAQAAAAAWQTboAAAAAnRSTlMAAHaTzTgAAAA7SURBVBgZ7cEBAQAAAIKg/q92SMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4F6YLgAB+x1CtAAAAABJRU5ErkJggg==)
チェックする座標は5px余裕を持たせています。これで、シルエットにぴったり合わせなくてもある程度近くまでドラッグすれば正解になります
![【Scratchチュートリアル】シルエットゲーム](data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAqgAAAFUAQAAAADAe/MOAAAAAnRSTlMAAHaTzTgAAAAzSURBVHja7cExAQAAAMKg9U9tCj+gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHgYcjgAAdqmsNkAAAAASUVORK5CYII=)
自分のシルエットまでドラッグできたら、変数「正解」を1にして、メッセージ「正解」を送ります
ブロックが横に長くなると見にくくなるので、x座標とy座標のチェックを「もし〜」ブロックを2つ使って行なっていますが、「かつ」で1つにまとめても問題ありません
「いぬ」スプライトのスクリプトができたので、「ねこ」スプライトにスクリプトをコピーします
![【Scratchチュートリアル】シルエットゲーム](data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAqgAAAFUAQAAAADAe/MOAAAAAnRSTlMAAHaTzTgAAAAzSURBVHja7cExAQAAAMKg9U9tCj+gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHgYcjgAAdqmsNkAAAAASUVORK5CYII=)
「ねこ」にコピーしたスクリプトの赤で囲った部分を変更します
![【Scratchチュートリアル】シルエットゲーム](data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAqgAAAHFAQAAAAAWQTboAAAAAnRSTlMAAHaTzTgAAAA7SURBVBgZ7cEBAQAAAIKg/q92SMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4F6YLgAB+x1CtAAAAABJRU5ErkJggg==)
そのほかのスプライトにもコピーして赤枠の部分を変更します
ゲームクリアをチェックしよう
背景にスクリプトを作成します。正解した時に音を鳴らします。スプライトを「かげ」の位置にドラッグできたときに「pop」、全部のスプライトをシルエットにドラッグできた時に「clapping」を鳴らします
背景には最初から「pop(ポップ)」が設定されているので、「clapping」を音ライブラリーから読み込みます
「音」タブを選び、新しい音の「音をライブラリーから選択」を選んで・・・
![【Scratchチュートリアル】シルエットゲーム](data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAqgAAADjAQAAAABhw9t3AAAAAnRSTlMAAHaTzTgAAAAqSURBVHja7cEBDQAAAMKg909tDjegAAAAAAAAAAAAAAAAAAAAAAAAgB8DTEIAAZGp+1YAAAAASUVORK5CYII=)
「人」カテゴリーにある「clapping」を選びます
![【Scratchチュートリアル】シルエットゲーム](data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAqgAAADjAQAAAABhw9t3AAAAAnRSTlMAAHaTzTgAAAAqSURBVHja7cEBDQAAAMKg909tDjegAAAAAAAAAAAAAAAAAAAAAAAAgB8DTEIAAZGp+1YAAAAASUVORK5CYII=)
変数「正解した数」を作ります。正解数を管理する変数です
![【Scratchチュートリアル】シルエットゲーム](data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAqgAAADjAQAAAABhw9t3AAAAAnRSTlMAAHaTzTgAAAAqSURBVHja7cEBDQAAAMKg909tDjegAAAAAAAAAAAAAAAAAAAAAAAAgB8DTEIAAZGp+1YAAAAASUVORK5CYII=)
「背景」にスクリプトを作成します。今回は「ねこ」と「いぬ」の2つのスプライトを使っているので、正解数が2ならクリアとなります
![【Scratchチュートリアル】シルエットゲーム](data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAqgAAAF8AQAAAAArhHRVAAAAAnRSTlMAAHaTzTgAAAA2SURBVBgZ7cEBDQAAAMIg+6d+DjdgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAkf6gAAWOYM68AAAAASUVORK5CYII=)
これで「いぬ」と「ねこ」をシルエットのスプライトの位置にドラッグすると拍手の音が流れます
続きます
![](data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAJYAAACWAQAAAAAUekxPAAAAAnRSTlMAAHaTzTgAAAAaSURBVEjH7cExAQAAAMKg9U9tDQ+gAACAdwMLuAABXZHjmQAAAABJRU5ErkJggg==)
【Scratchチュートリアル】シルエットゲーム3(全3回)
つづきです 演出えんしゅつを追加ついかしよう 問題もんだいを出題しゅつだいする時ときに画面がめんを暗くらくする演出えんしゅつを加くわえます ステージの「背景はいけい」タブの新あたらしい背景はいけいから「新あたらしい背景はいけいを描えがく」を...
Scratch 3.0に対応した書籍です[PR]
リンク
リンク
リンク
リンク
リンク
リンク
リンク
リンク
リンク
リンク
リンク
リンク
リンク
リンク
リンク
リンク
リンク
リンク