
要件アクション (If... Then... Else If)
Requirement ActionはLabvancedの条件論理ブロックです: if-then文を評価し、その文が真のときのみ一連のアクションを実行します。これは、変数の値、参加者の役割、以前の応答、または研究が確認する必要のある他の条件によって異なるべき挙動の背後にあるメカニズムです。
機能の仕組み
要件アクションは他のアクションと同様に追加されます: Add Actionをクリックし、次にControl Actions → Requirement Actions (If...Then)。

コントロールアクションの下、イベントエディタのアクション追加メニューから要件アクションを追加しています。
要件アクションは以下のいくつかの部分から構成されています:
- 要件を追加: ステートメントに比較を追加します。両側に値選択メニューが表示され、変数、定数、または別の値を比較することができ、その間に比較演算子(等しい、小さい、等しくないなど)があります。
- ANDグループを追加: ANDグループ内のすべての要件が真でないと、グループ全体は真になりません。複数の条件が同時に満たされる必要がある場合に使用します。
- ORグループを追加: ORグループ内の1つの要件が真であれば、グループ全体が真となります。異なるケースに対して同じアクションを実行すべき場合に使用します。
- アクションシーケンス:
Thenの下のアクションのリストで、If文の要件が満たされたときのみ実行されます。Add Actionアイコンを使用して新しいアクションを追加します。 - Else-Ifケースを追加: 要件アクションは、連続して複数のIf/Else-Ifステートメントを保持できます。真となる要件を持つ最初のもののみが実行され、それ以外は、マッチが見つかるとスキップされます。
- Elseケースを追加: フォールバック。If/Else-Ifステートメントのいずれも真となっていない場合、Elseケースで定義されたアクションが実行されます。
実際の例: Role_Idによる分岐
マルチユーザー研究における要件アクションの最も一般的な使用法は、参加者による挙動の分岐です。最小限の例:
- 要件を追加: 左側は変数
Role_Idを選択し、比較はequalに設定されています; 右側は定数1です。 - Then: その参加者に適用されるアクション、たとえばターゲット画像を表示する
Set Object Propertyアクション。 - Elseケースを追加: 他のすべての参加者に適用されるアクション。
Role_Idが何であるか、そしてこのパターンがすべての非対称マルチユーザーデザインの基礎である理由の完全な説明は、Role_Idを参照してください。
実際の例: Flankerスタイルタスクにおける正確性の得点
ネストされたAND/ORグループによって、1回の応答の下で複数の有効な組み合わせとして得点を与えることが可能になります。Flanker TaskのMain_task_desktop_Flankerからの実際の例で、3フレーム目(Response Window)の中で、Response Recording & Progressionイベント(キー入力によってトリガーされた)。
- If, ORグループ内: (
target_direction_desktopはleftに等しい ANDchoiceはDに等しい), または (target_direction_desktopはrightに等しい ANDchoiceはKに等しい)。 - Then:
Set / Record Variableはaccuracyを1に設定します。
どちらの組み合わせも、左ターゲットでDを押すか、右ターゲットでKを押すことが正確と見なされるため、2つのANDグループは共有のORグループの下に結合され、別々の要件アクションとして書かれることはありません。

Flanker Taskの応答ウィンドウフレームにおける要件アクション、2つの有効なターゲット/応答の組み合わせから正確性を得点します。