変数は値を入れる箱
変数には名前を付けた値を保存します。得点なら「得点」、時間なら「残り時間」と名前を付けると、ブロックを読んだときに役割が分かります。
カウンターSCRATCH BLOCKS
[緑の旗が押されたとき]
[カウントを 0 にする]
[10回繰り返す]
[カウントを 1 ずつ変える]
[1 秒待つ]実行結果OUTPUT
1秒ごとにカウントが増え、10まで進みます。「~にする」は初期値や決まった値への代入、「~ずつ変える」は現在の値からの増減です。ゲーム開始時の初期化を忘れると、前回の得点が残る原因になります。
変数の共有範囲
「すべてのスプライト用」はステージや他のスプライトからも同じ値を使えます。得点や残り時間に向いています。「このスプライトのみ」は、そのスプライトごとに別の値を持たせます。敵ごとの速さなどに向いています。
よくある漏れ得点を星スプライト側で初期化すると、星のクローンや別の処理が同時に初期化してしまうことがあります。初期化する担当を一つに決めましょう。
リストで複数のデータを持つ
リストは、複数の文字や数字を順番に保存する場所です。質問、単語、ランキングなどに使えます。
質問リストSCRATCH BLOCKS
[緑の旗が押されたとき]
[質問リストのすべてを削除する]
[質問リストに「好きな色は?」を追加する]
[質問リストに「好きな動物は?」を追加する]
[質問リストの 1 番目を言う]実行結果OUTPUT
質問リストに2件追加され、1番目の「好きな色は?」が表示されます。リストの番号は1から始まります。項目数は「リストの長さ」で調べられます。リストに何もない状態で項目を取り出すと予想外になるため、長さを確認してから使います。
練習
得点が10点を超えたときだけ「合格」と表示する作品を作り、次に5人分の名前をリストへ追加して順番に表示してください。
発展得点をリストへ追加し、ランキングのように表示してみましょう。値を保存する場所と、表示する処理を分けると整理しやすくなります。