提供: Japanese Scratch-Wiki

(ひらがなヘッダの追加 (Bot))
(Adding interwikis.)
(他の1人の利用者による、間の1版が非表示)
63行目: 63行目:
 
[[de:Sende () an alle (Block)]]
 
[[de:Sende () an alle (Block)]]
 
[[en:Broadcast () (block)]]
 
[[en:Broadcast () (block)]]
[[hu:Küldj üzenetet() (blokk)]]
+
[[hu:Küldj üzenetet() (blokk)]]{{GitHub|scratch-flash|/src/interpreter/|Interpreter.as|469|branch=646523e6846ad0dd993213a38b46fe2ea511d026}}[[ru:Передать ()]]

2018年12月9日 (日) 21:37時点における版

このきじは ひらがなのページがありません。ごめんなさい。編集者向け:作成する
() を送る
[メッセージ1 v] を送る
カテゴリ イベント
タイプ スタック

() を送るブロックイベントブロックスタックブロック)は、メッセージScratchプログラム全体に送るブロックである。このブロックを実行すると、すべてのスプライトにおいて、送信メッセージに対応する() を受け取ったときブロックのスクリプトが実行を開始する。 このブロックは、相手先のスクリプトの実行が終了するのを待たず、次のブロックに処理を渡す(この点が() を送って待つとは異なる)。このようなメッセージの送受信は、スプライトやスクリプト間で何らかのやりとりを行うときに便利である。

使用例

プロジェクトの開始後、ユーザーの操作によることなく実行したいスクリプトがある場合、メッセージを利用するのが一番簡単な方法である。このブロックのよくある使用例は次のとおり:

  • スプライト間でやりとりを行う
このスプライトがクリックされたとき // スプライト1に記述
 [スプライト2を移動 v] を送る

 [スプライト2を移動 v] を受け取ったとき // スプライト2に記述
 (10) 歩動かす
  • 異なるイベントを結びつける
[スペース v] キーが押されたとき
<[端 v] に触れた> まで繰り返す
 (10) 歩動かす
 end
 [爆発! v] を送る
[移動 v] を受け取ったとき
x座標を (-5) ずつ変える
y座標を (10) ずつ変える
[スクリプト1 v] を [終了] にする
[移動 v] を受け取ったとき
x座標を (-5) ずつ変える
y座標を (10) ずつ変える
[スクリプト2 v] を [終了] にする
  • 複数のスプライトで構成される画面の準備
 [すべてのスプライトよ、準備せよ! v] を送る
  • Meshにおいて2つのプロジェクトを接続するときも、このブロックを使用する。
  • 機能の異なる2種類のMod版Scratchを接続するときも、このブロックを使用する。たとえば、BYOB(mod)からメッセージを送って、LEGO マインドストームのロボットを動かすEnchanting(mod)のイベントトリガーとすることができる。Enchantingにはキーボード/マウス入力を受け付ける機能がないのに対し、 BYOBにはロボットを制御する機能がないが、これらを組み合わ合わせれば、マウス操作に応じて動くロボットを作ることができる。より詳しい情報は、Communicating Between Scratch Modificationsを参照。

再帰

詳細は「再帰」を参照

メッセージを送受信するブロックを利用すると、「末尾再帰」と呼ばれる再帰を実現できる。再帰は、ブロック定義や特定のスクリプト(ここでは、メッセージ送受信スクリプト)内で自分自身を呼び出すことで起こる現象であり、フラクタルや無限ループなどを作成するのに使用できる。

関連項目