
タイマーオブジェクト
タイマーオブジェクトは、試行中に画面に目に見えるカウントダウンまたはカウントアップタイマーを表示します。これはLabvancedのイベントシステムと完全に統合されており、StartTimer, PauseTimer, ResetTimerアクションを使用してタイマーを制御し、タイマーが開始、ポーズ、終了、または1秒単位の境界を超えるとトリガーが発火します。現在の時間値は読み取り可能かつ書き込み可能な変数として利用できるため、経過時間や残り時間に基づいて実験のロジックを分岐させることが簡単です。
タイマーオブジェクトの追加
タスクエディタのツールバーで、Buttons & Navigationグループを開き、Timerを選択して、現在のフレームにタイマーオブジェクトを追加します。

要素を追加すると、自動的にタイマーセットアップウィザードが開きます。ウィザードを完了してタイマーを事前設定し、一般的なイベントを1ステップで追加することもできますし、Skipをクリックして手動で全てを設定することもできます。
タイマーセットアップウィザード
セットアップウィザードは、最も一般的な設定選択肢をカバーしており、必要に応じてスタートイベントを追加することができます。

| オプション | 説明 |
|---|---|
| タイマーの期間(秒) | タイマーがどれくらいの時間動作するかを設定します。正の整数を入力します。デフォルトは60秒です。 |
| 方向性 | Count downは期間から始まり、0に向かってカウントします。Count upは0から始まり、期間に向かってカウントします。 |
| 秒の10分の1を表示 | チェックされている場合、タイマーはMM:SS.T形式で表示され、MM:SS形式では表示されません。 |
| フレーム開始時にタイマーを開始 | フレームが開始されると、StartTimerが自動的に発火するイベントを追加します。 |
| タイマーが終了したときに次のフレームにジャンプ | TimerEndedトリガーが発火したときにJump to Next Frameを発火するイベントを追加します。 |
自動イベントをスキップし、代わりにイベントエディタで手動で設定することもできます。
オブジェクトプロパティ
以下のすべての設定は、タイマーオブジェクトが選択された状態でオブジェクトプロパティパネルに見つかります。
タイマー設定
| プロパティ | デフォルト | 説明 |
|---|---|---|
Duration (seconds) | 60 | タイマーが動作する合計期間(秒)。 |
Directionality | カウントダウン | Count downは期間から始まり、0に向かってカウントします。Count upは0から始まり、期間に向かってカウントします。 |
Show tenths of a second | オフ | 有効にすると、タイマーはMM:SS.T形式で表示されます。オフにすると、MM:SS形式で表示されます。実行時にイベントを介して変更できません。 |
Note: Current Time (seconds)はプロパティパネルに表示されませんが、イベントシステムのSet Object Propertyアクションを介して実行時に読み取り可能で、書き込み可能です。詳細は現在の時間を変数として使用するを参照してください。

スタイル
| プロパティ | 制御するThings |
|---|---|
Visibility | 不透明度(0:見えない、1:完全に見える)。 |
Border-Size | ピクセル単位の境界線の幅。デフォルトは0(境界線なし)。 |
Border-Color | 境界線の色。Border-Sizeが0の時に目に見える効果はありません。 |
BG-Color | バウンディングボックスの背景塗りつぶし。Transparentを有効にして、塗りつぶしを削除します。 |
Roundness | 角の丸み(0:鋭い角、1:最大の丸み:長方形要素に楕円、正方形要素に円)。 |
カスタムCSS
スタイルセクションでChange CSS Propertiesをチェックすると、CSSテキストエリアが表示されます。標準CSSルールをそこに記述してください。Labvancedは、選択したオブジェクトに自動的にスコープを関連付けるため、あなたのセレクタはその要素の内部DOMのみに影響を与えます。
時間表示のスタイリング
spanをターゲットにして、時間の出力のフォント、色、サイズ、または太さを変更します:
span {
font-size: 3em;
color: #c0392b;
font-family: "Courier New", monospace;
font-weight: bold;
letter-spacing: 0.05em;
}

プロパティの優先順位に関する注意
スタイルパネルで設定された背景色、境界線、境界半径は、要素にインラインスタイルとして適用され、カスタムCSSルールよりも優先されます。カスタムCSSがスタイルパネルの値をオーバーライドする必要がある場合は、ルールに!importantを追加してください。これらの3つのプロパティについては、スタイルパネルのコントロールを使用する方が一般的には簡単です。
アクションによるタイマーの制御
イベントシステムでControl Elementアクションを使用して、プログラム的にタイマーを制御します。
| アクション | 何をするか |
|---|---|
StartTimer | 現在の位置からタイマーを開始します。タイマーが一時停止していた場合は、停止した位置から再開します。 |
PauseTimer | タイマーを現在の位置で一時停止し、リセットしません。 |
ResetTimer | タイマーを停止し、Current Timeを開始位置にリセットします:カウントダウンのための期間、カウントアップのための0。 |
例:フレームが始まるときに自動的にタイマーを開始
トリガー:
On Frame Start
アクション:Control Element→Set Target: あなたのタイマーオブジェクト →StartTimer
例:ボタンがクリックされたときにタイマーを一時停止
トリガー:
On Mouse Click→Set Target: あなたの一時停止ボタン
アクション:Control Element→Set Target: あなたのタイマーオブジェクト →PauseTimer
タイマーからのイベントのトリガー
タイマーオブジェクトは以下のトリガーを発火させます。これらは、任意のイベントの「いつ」の条件として使用できます。
| トリガー | いつ発火するか |
|---|---|
TimerStarted | StartTimerが呼び出されたときに、タイマーが動作を開始します。 |
TimerPaused | PauseTimerが呼び出されたときにタイマーが停止します。 |
TimerEnded | タイマーが終了に達したとき:カウントダウンでは0、カウントアップでは期間。 |
TimerThreshold | タイマーが実行中に毎回整数の境界を越えると、1回だけ発火します。これを使用して、1秒ごとにロジックを実行します。 |
例:タイマーが終了すると、次のフレームに進む
トリガー:
Media Object Trigger→Set Target: あなたのタイマーオブジェクト →Execute on:TimerEnded
アクション:Jump to Next Frame
例:毎秒変数を記録する
トリガー:
Media Object Trigger→Set Target: あなたのタイマーオブジェクト →Execute on:TimerThreshold
アクション:Set / Record Variable→ あなたの記録変数
現在の時間を変数として使用する
Current Time (seconds)プロパティは、読み取り可能で書き込み可能な実行時値です。Set Object Propertyアクションを使用して、現在の時間を別の変数に読み取ったり、タイマーを特定の位置にシークしたりできます。
これにより、次のことが可能になります:
- 参加者が反応したときの正確な残り時間を記録
- 経過した時間に基づいて実験フローを分岐
- 同じ値を書き込むことで2つのタイマーを同期させる
例:応答時に残り時間を記録
トリガー:
On Key Press→Set Target: あなたのターゲットキー
アクション1:Set / Record Variable→ 変数を作成(例:time_at_response)、値元:Object Property→Set Target: あなたのタイマーオブジェクト →Current Time (seconds)
アクション2:Jump to Next Frame
