提供: Japanese Scratch-Wiki

2020年6月30日 (火) 13:53時点におけるARATAKU (トーク | 投稿記録)による版
(差分) ← 古い版 | 最新版 (差分) | 新しい版 → (差分)

このきじは ひらがなのページがありません。ごめんなさい。
コスチュームを () にする
コスチュームを [コスチューム2 v] にする
カテゴリ 見た目
タイプ スタック

コスチュームを () にするブロック(見た目ブロックスタックブロック)とは、スプライトコスチュームを指定のものに変更するブロックである。

このブロックは、もっともよく使われるブロックの1つであり、コスチュームを特定のものに変えたいときに使用される (コスチュームを変更するブロックには、ほかに次のコスチュームにするブロックも存在するが、こちらはコスチュームリスト上の次のコスチュームにしか変更できない)。変更するコスチュームは、「数値またはコスチューム名」を返す変数ブロック(または値ブロック)でも指定できる。

ステージの場合は、このブロックに対応するブロックとして、背景を () にするが用意されている。

経緯

以前のバージョンのブロック

Scratchの最初期(リリース前の段階)は、このブロックは「Look Like()」(()に見える)という名前だった。そのため、このブロックを定義しているSqueakのメソッド名は、Scratch 1.4にいたるまでずっと「lookLike」という名前であった(これは、それ以前のScratchで作成されたプロジェクトとの互換性を維持するためである)。Scratch 2.0でも、このブロックは内部上で「lookLike」という名前が付いている。(GitHub参照)

実装の詳細

Scratch 3.0では、このブロックは以下のように実装されている:

  1. もし計算結果としての数値が渡されたなら、それをコスチュームの番号とみる。
  2. でなければ、まずその引数と同じ名前のコスチュームを探す。
  3. 「next costume」の場合は、次のコスチュームにする。
  4. 「previous costume」の場合は、前のコスチュームにする。
  5. 引数が数字として解釈でき、またはスペースの場合は、それをコスチュームの番号とみる。

使用例

わかりやすさが重視された結果、このブロックは、スプライトのコスチューム変更のみに機能が絞られている。しかし、コスチューム変更が必要な機会は多く、アニメーション、ゲーム、シミュレーションなど、多くの場面でこのブロックが使用されている。

次によくある使用例を示す:

  • コスチュームを変えるシンプルな例
[メッセージ v] を受け取ったとき
コスチュームを [コスチューム2 v] にする
x座標を (0)、y座標を (0) にする
表示する
  • 別の処理の後、コスチュームを変える
<(変数) = [50]> まで待つ
x座標を (10) ずつ変える
コスチュームを [コスチューム1 v] にする

別のブロックによる表現

詳細は「代用ブロック一覧」を参照

このブロックの動作は、次のコードで再現できる。

<(変えたいコスチューム #) = (コスチューム #)> まで繰り返す
次のコスチュームにする
end

ただし、通常はコスチュームを () にするブロックを使ったほうが、かなり動作がはやい。

コスチュームの特性を利用したアルファベットの大小判定 

コスチュームの名前は、大文字と小文字が区別されます。 例えば、「a」というコスチュームがあったとして、

コスチュームを [A v] にする

を実行しても、コスチュームが変更されることはありません。大文字と小文字が区別されているからです。

これを利用して、あるアルファベットが大文字であるかどうかを判定することができます。

関連項目