if文の重ねがけ
 NScripterにおけるif文とは「条件が真ならば実行文を実行し、偽ならば実行文を実行せずに次の行に制御を移す」というものです。ということで、試しにこういうものを書いてみたら動きました。

if %0 == 1 savefileexist %1,%2:if %1 == 1 loadgame %2

 %0が1ならばセーブファイルの存在確認を行い、ファイルが存在すればロードを行う、という処理です。%2にはセーブファイルの番号が入っていると思ってください。
 今までの自分はif文の前にsavefileexistを行い、条件式に&&を使って判断させていましたが、ちょっとした処理ならif文中に入れたほうがすっきりしますね。また、無駄な処理を省くことが出来ます。この例で言うなら、もしsavefileexistをif文の前に実行したら、savefileexistが必要でないif %0 != 1の場合もsavefileexistを行ってしまうわけで、その処理は無駄になってしまいます。
 まさか動かないだろうと思いつつスクリプトを書いてみましたが、実際動いたわけで。なんでも試してみるものですね。
[PR]
by lyricist_m | 2008-04-27 21:39 | NScripter
<< セーブ/ロードサンプルをアップ セーブ・ロードと循環バッファ >>