イベントの使用#
このチュートリアルでは、VEXcode IQ(第2世代)でイベントを使用する方法について説明します。チュートリアルを終える頃には、イベントをブロードキャストし、別のブロックスタックがそれに応答する方法がわかるようになります。
イベントを使用すると、ロジック - イベントカテゴリのブロックを使って、プロジェクト内の個別のブロックスタック間で通信を行うことができます。broadcastで始まる名前のブロックはイベントが発生したことを通知し、whenで始まる名前のブロックは、それに応じて接続されているブロックスタックを実行します。
プロジェクトにブロードキャストブロックまたはブロードキャストして待機ブロックを追加します。
放送ブロックのドロップダウンを選択して、既存のイベントを選択するか、イベントを作成、名前変更、または削除します。
ワークスペースに「受信時」ブロックを追加し、そのドロップダウンリストを「ブロードキャスト」ブロックで使用したイベント名と一致するように設定します。次に、そのブロックの下にブロックを添付します。これらのブロックは、そのイベントがブロードキャストされるたびに実行されます。
「受信時」ブロックが「ブロードキャスト」ブロックで使用されるイベント名と一致すると、プロジェクトを実行することで両方のスタックが同時に実行されます。たとえば、ロボットは「ブレインチェック」ボタンが押されるまで回転し、その後、ロボットの走行を停止させるイベントをブロードキャストします。
開始したとき
[右 v] へ旋回
<Brain の [チェック v] ボタン押された?> まで待つ
[my_event v] を送る
[my_event v] を受け取ったとき
走行停止
whenで始まるブロックは、他のデバイスカテゴリにも存在し、そのデバイスの条件が満たされるたびに、関連付けられたブロックを実行します。例えば、when Brain buttonやwhen Bumperブロックなどです。
Brain の [◀ v] ボタンが [押された v] されたとき
[Bumper1 v] が [押された v] されたとき