Enum
ノードに書いた選択肢から1つを選び、その名前を Name、番号を IndexOut へ出します。StringArray が「番号→文字列」の変換器なのに対し、こちらは選択状態を持ち、ドロップダウンとトリガーで操作するノードです。番号に名前を付けて、プリセットの切り替え口として使えます。
選択肢の編集
- ノード上のテキスト欄に1行1項目で書きます。各行の前後の空白は落ち、空行は項目になりません
- 上のドロップダウンに項目が並び、選ぶとその項目が選択されます
- Loop トグル(初期値 ON)が下にあります
- 選択肢・現在の選択・Loop はプロジェクトに保存されます
選び方
- Next / Prev — 現在の位置を ±1 します
- Reset — 0番へ戻します
- Index — 番号を直接指定します。接続は1本まで。繋がっている間は外から来た値が優先され、ドロップダウンの操作と Next / Prev / Reset は無視されます(ドロップダウンは現在の選択に戻ります)
- 範囲外の番号は Loop の状態で挙動が変わります。ON なら要素数の剰余でラップ(負の値は末尾側へ回り込む)、OFF なら 0〜要素数-1 にクランプ。Next / Prev も同じ規則で動くので、Loop OFF では端で止まります
出力
- Name — 選択中の項目の文字列
- IndexOut — 選択中の番号(0始まり)
- Count — 項目数
- Changed — 選択が実際に変わった瞬間だけ発火するトリガー。選択肢テキストの書き換えやプロジェクトの読み込みでは鳴らず、同じ番号を選び直したときも鳴りません
Name / IndexOut / Count は値が変わったときにだけ流れます。
選択肢が空のとき
項目が1つも無い状態では、ドロップダウンも Index も Next / Prev / Reset も何も起こしません。Name は空文字、IndexOut は 0、Count は 0 です。
入力ポート
| Port ID | 型 |
|---|---|
Index | int |
Next | trigger |
Prev | trigger |
Reset | trigger |
出力ポート
| Port ID | 型 |
|---|---|
Name | string |
IndexOut | int |
Count | int |
Changed | trigger |
スクリプトから設定可能なメンバー
| パス | 型 |
|---|---|
indexInput | int |
entriesText | string |
currentLoop | bool |
Synapse Apps(スクリプティング)
await synapse.modules.create({ type: "Enum" }) 