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

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

| オプション | 説明 |
|---|---|
| タイマーの duration (秒) | タイマーが実行される時間を設定します。正の整数を入力します。デフォルトは60秒です。 |
| 方向性 | Count downは期間から開始し、0に向かってカウントします。Count upは0から開始し、期間に向かってカウントします。 |
| 十分の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アクションを介してランタイム中に読み取りおよび書き込み可能です。現在の時間を変数として使用するを参照してください。

スタイル
| プロパティ | 制御するもの |
|---|---|
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 !important;
color: #c0392b;
font-family: "Courier New", monospace;
font-weight: bold;
letter-spacing: 0.05em;
}

プロパティの優先順位に関する注意
スタイルパネルで設定された背景色、ボーダー、ボーダー半径は要素にインラインスタイルとして適用され、カスタムCSSルールよりも優先されます。スタイルパネルの値をオーバーライドする必要がある場合は、ルールに!importantを追加してください。これらの3つのプロパティについては、スタイルパネルコントロールを使用する方が一般的に簡単です。
アクションでタイマーを制御する
イベントシステムでControl Media Objectアクションを使用して、プログラム的にタイマーを制御します。
| アクション | 何をするか |
|---|---|
StartTimer | 現在の位置からタイマーを開始します。タイマーが一時停止していた場合は、停止したところから再開します。 |
PauseTimer | タイマーを現在の位置で一時停止し、リセットはしません。 |
ResetTimer | タイマーを停止し、Current Timeをその開始位置にリセットします:カウントダウンの場合は期間、カウントアップの場合は0。 |
例:フレーム開始時に自動的にタイマーを開始する
トリガー:
On Frame Start
アクション:Control Media Object→Set Target: あなたのタイマーオブジェクト →StartTimer
例:ボタンがクリックされたときにタイマーを一時停止する
トリガー:
On Mouse Click→Set Target: あなたの一時停止ボタン
アクション:Control Media Object→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
