条件式が真になるまでウェイトするマクロ
概要
exp属性で指定した条件式が真(=true)になるまでウェイト(しているように見せる)マクロです。
javascriptの非同期処理の終了を待ってシナリオを進める、といった使い方ができます。
!!!注意!!!
このマクロを記述した時点でゲームは停止(というか無限ループ)します。
かならずこのマクロを記述する前に条件式が真になるイベントを定義する必要があります。
コード
code:sample.ks
*wait_cond_loop
tf.wait_cond_exp = "tf.wait_cond_is_wait = " + mp.exp
tyrano.plugin.kag.popStack("if")
指定可能属性:
exp:javascriptの条件式を指定します。この式が真になったタイミングでウェイト処理が終了します。
使用例
code:test.ks
;先に変数に値をセットする処理を記述
f.test = 0
setTimeOut(function(){
//5秒後に変数に1をセット
f.test = 1
}, 5000)
ウェイトが始まります。
;f.testが1ならウェイト終了
上記の例だと[wait]タグの動作と変わりませんが、jQueryの.on()メソッドでイベントを登録する処理と組み合わせるといろいろ面白いことができるんじゃないかなと思います。(というかそのために作った)