new Conductor(options)
Conductorです。
Conductorはタグのタイミング管理をします。
次のタグに行くべきなのか、それても止まるのかはここで処理されます。
Parameters:
Name | Type | Description | |||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
options |
Object |
Properties
|
Properties:
Name | Type | Description |
---|---|---|
waitTag |
Object.<string, Array.<function()>> | 今どのタグを待っているのかを記録する、待ち終わったら実行されるfunctionも記録してます |
file |
KAGFile | |
lineNumber |
Number | 次実行するタグのラインナンバー。Conductor#queueにタグがある場合、queueのタグは先に実行されますので、次実行されるタグを検出したい場合は.getNextTagを使ってください。 |
currentTag |
Tag | 今実行しているタグ。 |
oneShotStackDepth |
number | 今のJS stackの深さ、oneShot()で直接run()をすると深すぎるかもしれないので。 |
stack |
Array.<Tag> | openTagと閉じタグのペアのstackです |
queue |
Array.<Tag> | これから実行するタグ。これが空である場合はConductor#file[lineNumber]のタグを実行する。主にはタグを挿入したい時使われます。 |
clickSkipEnabled |
boolean | clickskipタグで指定できる |
callStack |
Array.<Tag.Restorable> | call/returnタグ用のスタック |
macroStack |
Array.<Macro> | 今実行しているマクロの情報を持つ。マクロを実行してない時は空です。マクロの中でマクロを実行する時は2つMacroオブジェクトを持つ。 |
macros |
Object.<string, MacroDefinition> | 実行したマクロタグはここにマクロの情報を入れる |
ifStack |
Array.<IfStatus> |
- Implements:
Members
(static, constant) STATUS_PREPARE_TAG :number
Before the tag is finish running, during TagAction
Type:
- number
(static, constant) STATUS_RUN :number
The tag is ran, not waiting for anything.
Type:
- number
(static, constant) STATUS_STOP :number
Conductor stopped, no tag is running.
Type:
- number
(static, constant) STATUS_WAIT :number
Tag is ran, waiting for something.
Type:
- number
Methods
clearMacroStack()
マクロスタックをクリアします。これは無理やりクリアしてますので、注意ください
getNextTag(name) → {Tag}
次実行されるタグ。
Parameters:
Name | Type | Description |
---|---|---|
name |
string | これから実行する、一番目のタグ名が name のタグ |
Returns:
- Type
- Tag
getTagAction(name) → {TagAction}
Parameters:
Name | Type | Description |
---|---|---|
name |
String | タグの名前 |
Returns:
タグを実行する時、どこのTagActionを使うべきなのかを決める。デフォルトはないけど、TagはTag.actionsを使います。
- Type
- TagAction
isMacro(name) → {boolean}
このタグはマクロなのかどうかを検出する
Parameters:
Name | Type | Description |
---|---|---|
name |
string | Tag |
Returns:
- Type
- boolean
jumpIntoMacro(macro)
マクロの中身にジャンプ
Parameters:
Name | Type | Description |
---|---|---|
macro |
string | Tag | マクロで生成されたタグ、またはそのタグの名前 |
oneShot()
次のタグに行く。将来的にはjsのstackを深すぎないようになにかの対応をします。
run()
Conductorを走らせます。
これを実行するとその場ですぐタグを実行します。
次のタグに行きたい時はConductor#oneShotを推奨します。
setFile(file)
conductorの「次実行するタグ」をfileの一行目にします。
そのタグが終わったら、fileの次のタグを実行します。
Parameters:
Name | Type | Description |
---|---|---|
file |
KAGFile |
setTag(tag, nextTag)
conductorの「次実行するタグ」をtagにします。
conductorのfileは同時にこのタグが属するfileになります。
タグで同じscopeじゃないところにjumpする時はTag#jumpToTagを使ってください。
Parameters:
Name | Type | Description |
---|---|---|
tag |
Tag | |
nextTag |
boolean | これがtrueの場合、指定されたタグではなく、その次のタグを実行する |
toJSON() → {object|Serializable|Restorable}
- Implements:
Returns:
- An plain that can be serialized to json
- Type
- object | Serializable | Restorable
trigger(name)
タグをトリガーする、普段はタグが終わったらトリガーする。
Parameters:
Name | Type | Description |
---|---|---|
name |
string | Tag | トリガーするタグの名前、またはタグオブジェクトそのもの。 |
upComingTags()
これから実行するタグのArray、今実行しているタグは含まれない
wait(name, callbackopt)
あるタグがトリガーされるまで待つ。トリガーされたら次のタグに行く。
複数のタグを待つことはできますが、その中に一つのタグでもトリガーされたら、次のタグに行きます。
次のタグに行く時は、今の待ちを全部消します。
使い方はwtタグならwait("trans")、canskip=trueならwait('click')もする。
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
name |
string | 待たされるタグの名前。 | |
callback |
function |
<optional> |
トリガーされたら呼ばれるfunction。 |
Events
ran
タグを実行し終わった
running
タグを実行し始めた