KAGEX講座(32) – 遅延実行2(nodelaydone)

delayrunコマンドは改ページで強制的に全て実行されます。改ページしても継続したい場合はnodelaydoneをつけます。アクションでnowaitをつけるのと同じような効果です。
また、nodelaydoneをつけた遅延実行も「@delaydone all」で全て実行されます。

@linemode mode=vn

@layer name=カード file=card show
レイヤを表示

@カード rotate=30
@カード rotate=60 delayrun=2000 nodelaydone
@カード rotate=90 delayrun=4000 nodelaydone
@カード rotate=120 delayrun=6000 nodelaydone
@カード rotate=150 delayrun=8000 nodelaydone
2秒ごとに30度ずつ回転

次のページに進んでもそのままです

@delaydone all
全ての遅延実行コマンドを強制的に実行します

「@delaydone」は「all」を付けないとnodelaydoneが指定されていない遅延実行のみ強制的に実行できます。

@linemode mode=vn

@layer name=カード file=card show
レイヤを表示

@カード rotate=30
@カード rotate=60 delayrun=2000
@カード rotate=90 delayrun=4000
@カード rotate=120 delayrun=6000
@カード rotate=150 delayrun=8000
2秒ごとに30度ずつ回転[l]
@delaydone
改行で遅延コマンドを強制実行しました

KAGEX講座(31) – 遅延実行(delayrun)

delayrunコマンドを使うとタグの実行タイミングが遅れます。(遅延実行)

delayrunにはms単位で時間を指定します。指定しただけ実行されるのが遅くなります。
非同期のトランジションやアクションなどと同じく、delayrunのコマンドも改ページで全て実行されます。

@linemode mode=vn

@layer name=カード file=card show
レイヤを表示

@カード xpos=300 time=1000
@カード ypos=300 time=1000 delayrun=1000
1秒間右に移動してから、1秒間上に移動します

@カード resetpos
位置を元に戻しました

@カード rotate=30
@カード rotate=60 delayrun=2000
@カード rotate=90 delayrun=4000
@カード rotate=120 delayrun=6000
@カード rotate=150 delayrun=8000
2秒ごとに30度ずつ回転します

次のページに進むと全て実行されます

また、遅延実行は非同期動作(nosync)でしか使えません。
同期動作(sync)を指定しても強制的に非同期になります。

@linemode mode=vn

@layer name=カード file=card show
レイヤを表示

@カード hide fade=1000 nosync
@カード show fade=1000 nosync delayrun=1000
@カード hide fade=1000 nosync delayrun=2000
@カード show fade=1000 nosync delayrun=3000
レイヤを点滅します

@カード hide fade=1000 sync
@カード show fade=1000 sync delayrun=1000
@カード hide fade=1000 sync delayrun=2000
@カード show fade=1000 sync delayrun=3000
同期実行はできないので先ほどと同じ動作になります。