Scratch

Scratchの変数とリスト

作品の状態を保存し、数字や複数のデータを使って作品を発展させます。

Scratch入門の講座一覧

01

変数は値を入れる箱

変数には名前を付けた値を保存します。得点なら「得点」、時間なら「残り時間」と名前を付けると、ブロックを読んだときに役割が分かります。

カウンターSCRATCH BLOCKS
[緑の旗が押されたとき]
[カウントを 0 にする]
[10回繰り返す]
    [カウントを 1 ずつ変える]
    [1 秒待つ]
実行結果OUTPUT
1秒ごとにカウントが増え、10まで進みます。

「~にする」は初期値や決まった値への代入、「~ずつ変える」は現在の値からの増減です。ゲーム開始時の初期化を忘れると、前回の得点が残る原因になります。

02

変数の共有範囲

「すべてのスプライト用」はステージや他のスプライトからも同じ値を使えます。得点や残り時間に向いています。「このスプライトのみ」は、そのスプライトごとに別の値を持たせます。敵ごとの速さなどに向いています。

よくある漏れ得点を星スプライト側で初期化すると、星のクローンや別の処理が同時に初期化してしまうことがあります。初期化する担当を一つに決めましょう。
03

リストで複数のデータを持つ

リストは、複数の文字や数字を順番に保存する場所です。質問、単語、ランキングなどに使えます。

質問リストSCRATCH BLOCKS
[緑の旗が押されたとき]
[質問リストのすべてを削除する]
[質問リストに「好きな色は?」を追加する]
[質問リストに「好きな動物は?」を追加する]
[質問リストの 1 番目を言う]
実行結果OUTPUT
質問リストに2件追加され、1番目の「好きな色は?」が表示されます。

リストの番号は1から始まります。項目数は「リストの長さ」で調べられます。リストに何もない状態で項目を取り出すと予想外になるため、長さを確認してから使います。

04

練習

得点が10点を超えたときだけ「合格」と表示する作品を作り、次に5人分の名前をリストへ追加して順番に表示してください。

発展得点をリストへ追加し、ランキングのように表示してみましょう。値を保存する場所と、表示する処理を分けると整理しやすくなります。