|
UWSC初心者です。 スクリプト内の全てのMMV(x,y,[ms])のms、つまり実行までの待機時間を一括で0.7倍に変更したいのですが何か方法はないでしょうか?
|
No.2004 2016/01/04(Mon) 10:40:46
|
☆ Re: 実行までの待機時間の一括変更 / stuncloud |
|
|
msの部分に「基準値 * 倍率」と書いておいて、あとは冒頭で倍率に任意の値を代入したらいいと思います
-------------------------- //倍率 = 1 // 変更なし 倍率 = 0.7 // 0.7倍にする
mmv(0, 0, 1000 * 倍率) mmv(100, 100, 3000 * 倍率) mmv(200, 200, 800 * 倍率) --------------------------
あるいは、元のスクリプトを0.7倍にした値でまるっと書き換えてしまうとか?
-------------------------- target = "target.uws" // 変更対象のファイルを指定
fid = fopen(target, F_READ) script = fget(fid, F_ALLTEXT) fclose(fid)
re = createoleobj("VBScript.RegExp") re.pattern = "mmv\(\s*\d+,\s*\d+,\s*(\d+)\)" re.global = TRUE matches = re.Execute(script)
for match in getoleitem(matches) newmmv = replace(match.value, match.submatches[0], match.submatches[0] * 0.7) script = replace(script, match.value, newmmv) next
fid = fopen(target, F_WRITE) fput(fid, script) fclose(fid) --------------------------
|
No.2006 2016/01/04(Mon) 13:51:31
|
|
☆ Re: 実行までの待機時間の一括変更 / Liners |
|
|
関数自体を置換えるという手も…後で調整しやすいですしね。
fp = FOPEN("sample.uws", F_READ or F_WRITE) Fput(fp, Replace(FGET(fp, F_ALLTEXT), "MMV(", "_MMV(") + "<#cr>Procedure _MMV(x, y, ms)<#cr> MMV(x, y, ms * 0.7)<#cr>Fend", F_ALLTEXT) FCLOSE(fp)
|
No.2011 2016/01/06(Wed) 00:29:30
|
|