5
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

ScratchAdvent Calendar 2022

Day 18

Scratch のクローン時のスプライト変数の動きに関して

Posted at

はじめに

Scratch の変数に関してクローン時の変数スコープを解説している記事で自分にとってわかりやすい記事がなかったので備忘録として記載する

変数スコープとは?

簡単に一言で変数がアクセスできる範囲のことです
アクセスすることができる範囲を絞ることでより変数を管理しやすくなります

Scratch の変数スコープ

Scratch には 「グローバル変数」と スプライトごとに範囲を絞った変数の「スプライト変数」があります

変数のスコープの設定方法

変数のスコープは変数作成時に設定することができます
すべてのスプライト用が「グローバル変数」です
このスプライトのみが「スプライト変数」となります

スクリーンショット 2022-12-31 15.22.52.png

グローバル変数

グローバル変数は全てのスプライトからアクセスすることができます
これは変更と呼び出しをすることができます

スプライト変数

スプライト変数は変数作成時にスプライトのみでアクセスすることができる

クローン時のスプライト変数について

スプライト変数を設定された変数のスコープについて解説していく

スプライト変数の値はクローンされた時点の値を使う

下記のような動きを検証するため、スプライト変数のHPを10に設定しクローンを作成後スプライト変数のHPを0にするコードを作成する

スクリーンショット 2022-12-31 20.18.20.png

実行結果としてはクローン実行時の値が参照されるようになる

スクリーンショット 2022-12-31 20.20.05.png

変更はローカルなスコープで行われる

検証のためにコウモリと触れた際にはHPを減らすし0になったら「倒された」と表示するコードを作成する

スクリーンショット 2022-12-31 20.26.26.png

スプライト1をコウモリに触れさせると触れたスプライトだけHPが減っていることがわかる

スクリーンショット 2022-12-31 20.27.57.png

5
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?