ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
| この記事の要点 |
|
スクリプトとは
Scratch のスクリプトは、レゴブロックのように命令ブロックを縦に積み上げて作るプログラムです。テキストでコードを書くのではなく、視覚的にブロックを組み合わせるため、文字入力やスペルミスを気にせずプログラミングの考え方に集中できます。

ブロックのカテゴリ
画面左に表示されるブロックパレットは、色で9 つのカテゴリに分けられています:
| カテゴリ | 色 | 役割 |
|---|---|---|
| 動き | 青 | スプライトの位置・向きを変える |
| 見た目 | 紫 | コスチューム切り替え / 大きさ / セリフ表示 |
| 音 | ピンク | サウンド再生 / 楽器演奏 |
| イベント | 黄 | プログラムの開始トリガー(旗 / キー / クリック) |
| 制御 | オレンジ | 繰り返し / 条件分岐 / 待機 |
| 調べる | 水色 | マウス位置 / 接触判定 / 質問 |
| 演算 | 緑 | 計算 / 比較 / 文字列操作 / 乱数 |
| 変数 | 濃いオレンジ | 変数 / リスト作成と操作 |
| ブロック定義 | 赤 | 独自ブロック作成(関数) |
左下の 「拡張機能を追加」 から、ペン・音楽・テキスト読み上げ・翻訳・LEGO・micro:bit などの追加カテゴリも有効化できます。
ブロックの形と接続ルール
ブロックの上下の凹凸を見ると、何がつながるか分かります:
- 帽子型(上が丸い): イベントブロック。プログラムの開始トリガー。上には何もつなげない
- 長方形(上下に凹凸): 命令ブロック。スタックの途中に入れる
- C 字型(中に挟む): 制御ブロック(ループ / 条件分岐)
- 六角形: 真偽値(条件)。「もし〇〇なら」の〇〇に入れる
- 丸型: 値(数値・文字)。空欄に入れる
- キャップ型(下が平ら): 終端ブロック(「すべてを止める」など)。下には何もつなげない
最小サンプル: 緑の旗で猫が動く
- 緑の旗が押されたとき(イベント)
- x 座標を -200 にする
- ずっと(制御)
- 10 歩動かす
- もし <端に着いた> なら(制御)
- 跳ね返る
緑の旗をクリックすると、猫がステージの左端から右へ進み続け、端に当たると反転します。
イベントブロックの種類
| イベント | 発動タイミング |
|---|---|
| 🚩 旗が押されたとき | プロジェクト開始時 |
| スペースキーが押されたとき | 指定キーを押した瞬間 |
| このスプライトが押されたとき | スプライトをクリック / タップ |
| 背景が ◯◯ になったとき | 背景の切り替え時 |
| 音量 > 10 のとき | マイク入力など |
| メッセージ ◯◯ を受け取ったとき | 他スプライトからのメッセージ |
| このスプライトのクローンができたとき | クローン生成時(クローン専用) |
制御ブロックの代表例
- 1 秒待つ: 指定秒だけ停止
- 10 回繰り返す: 中のブロックを 10 回実行
- ずっと: 無限ループ
- もし〜なら / でなければ: 条件分岐
- 〜まで待つ: 条件が成立するまで停止
- 〜まで繰り返す: 条件が成立するまでループ
- すべてを止める / このスクリプトを止める: 強制停止
変数を使う
変数カテゴリで 「変数を作る」 をクリックして名前を入力します(例: score)。チェックを入れるとステージに表示されます。
score を 0 にする: 初期化score を 1 ずつ変える: スコア加算- もし <
score= 10> なら → 「クリア!」と言う
リストを使うと配列のようなデータも扱えます。ハイスコアの記録、敵キャラの一覧管理などに便利です。
メッセージで連携する
複数のスプライトを連携させる中核機能がメッセージです:
例: ボタンを押すと音楽が鳴り、キャラが踊り出す
- 【ボタン側】
このスプライトが押されたとき→「ダンス開始」を送る - 【音楽側】
「ダンス開始」を受け取ったとき→ 音楽を再生する - 【キャラ側】
「ダンス開始」を受け取ったとき→ コスチュームを切り替えながら踊る
1 つのメッセージ送信に対し、複数のスプライトが同時に反応できます。
独自ブロック(関数)を作る
「ブロック定義」カテゴリ → 「ブロックを作る」 で、自作のブロック(≒ 関数)を定義できます。同じ処理を何度も書く代わりに、独自ブロックでまとめると見通しが良くなります。
例: ジャンプする ブロックを定義 → 中身に「y 座標を 50 ずつ変える」「0.2 秒待つ」「y 座標を -50 ずつ変える」を入れる。あとは ジャンプする を呼ぶだけで一連の動作が実行される。
典型的なゲーム構造
| 機能 | ブロックの組み合わせ |
|---|---|
| プレイヤー操作 | イベント「キー押下」+ 動き「x/y 座標変える」 |
| 当たり判定 | 制御「もし」+ 調べる「〇〇に触れた」 |
| スコア管理 | 変数「score」+ 演算 + 見た目「言う」 |
| 敵の自動移動 | 制御「ずっと」+ 動き「歩く / 跳ね返る」 |
| ゲームオーバー | 制御「もし」+ 制御「すべてを止める」 |
| サウンドエフェクト | 音「終わるまで〇〇の音を鳴らす」 |
FAQ
Q: ブロックがどうしても繋がらない
A: 形が合っていません。帽子型の下にしか命令ブロックは付かない、六角形は条件用の穴に入れる、など形のルールを確認してください。
Q: スクリプトが動かない
A: ① 緑の旗で始まっているか確認 ② 該当スプライトのスクリプトタブを見ているか ③ ループが止まる条件があるか。
Q: ブロックを削除したい
A: ブロックをパレット側にドラッグするか、右クリック → ブロックの削除。または Delete キー。
Q: 同じスクリプトを別スプライトでも使いたい
A: スクリプトをドラッグして、左のスプライト一覧の対象スプライトの上にドロップするとコピーされます。
ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
子ページはありません
人気ページ
- 1 Eclipseで「サーバーに追加または除去できるリソースがありません。」の原因と対処法
- 2 tomcat の起動 / 停止ログと catalina.log・catalina.out の違い
- 3 JavaScript で base URL を取得する方法|window.location.origin
- 4 YouTube Data API v3 エラー一覧|403・400・404 の原因と対処
- 5 Laravel エラー一覧|500/Blade/DB 接続/ルーティングの代表エラー
- 6 3Dグラフィックスとは|モデリング/レンダリング/主要ソフトウェア (Blender / Maya)
- 7 Spring Frameworkのアノテーション一覧
- 8 【Spring】@Valueアノテーションとは
- 9 CATALINA_HOME の確認方法 (Linux / Mac)
- 10 【Spring】@Autowiredアノテーションとは
最近更新/作成されたページ
- 【django】ログイン 認証機能 2026-09-08 03:22:09
- MySQL ERROR 1063 Incorrect column specifier for column|原因と直し方 2026-09-08 03:11:09
- 【PHPエラー】Object of class stdClass could not be converted to string 2026-09-07 07:46:04
- Julia Genie ローカル開発サーバ起動完全ガイド 2026-09-07 07:46:04
- Wi-Fi とは|規格と世代(Wi-Fi 4〜7)・周波数帯・CSMA/CA・WPA3 NEW 2026-09-07 07:45:13
- set コマンドでシェルオプションと位置パラメータを操作 | bash 2026-09-07 07:45:13
- JPEG(.jpg/.jpeg)画像形式の完全ガイド — 仕様・マジックナンバー・他形式との比較・EXIF 2026-09-07 07:45:13
- UE5 Get Overlapping Actorsで特定クラスだけ処理|Class Filter・Cast To 2026-09-07 07:45:13
- Linuxで特定拡張子のファイルを再帰削除|find -deleteの安全手順 2026-09-07 07:45:13
- Django CBVでテンプレートに値を渡す|get_context_data・extra_context 2026-09-07 07:45:13
- Linuxで複数ファイルの文字列を一括置換|find・sed・xargsの安全手順 2026-09-07 07:45:13
- Laravelルートグループ|prefix・middleware・nameで一括管理 2026-09-07 07:45:13
- Linux whichコマンドの使い方|絶対パス取得とtype・command -vの違い 2026-09-07 07:45:13
- Linux catコマンドの使い方|行番号表示・複数ファイル連結 2026-09-07 07:45:13
- unable to execute 'gcc': No such file or directory 2026-09-07 07:45:13
コメントを削除してもよろしいでしょうか?