|
>> GOSUB呼び出しサブルーチン内でメッセージが使えない理由に少し似ていますが、やはりIF系命令処理内のメッセージ記述も禁止でしょうか?(YU-RISのマニュアルに記述があった様な気もしますが…)
>>
>>それは、
>>例えばIF[]〜ELSE[]ブロック内のメッセージでセーブが行われたとします。
>>→ゲームを終了させ、再び起動します。※
>>→そのセーブデータをロードすると、当然IF[]〜ELSE[]ブロック内で実行が再開されます。
>>→処理がELSE[]に来た時、想定された処理を行えるかどうかという懸念があります。
>> (※の処理で、IF[]での判定結果が消えてしまっている可能性がある)
>
>マニュアルに書き忘れてしまい申し訳ないです。
>IF[]〜ELSE[]〜IFEND[] もブロック内でシナリオ記述するのはERIS上では本来は非推奨ですね。
>ただ、セーブデータに各種ネスト情報は保存されているので、
>YU-RIS マニュアルの IF[]〜ELSE[]〜IFEND[] の説明画像にもある通り、
>IF[] の中や GOSUB[] の先でセーブしても正しく動くと思います。
>ただ仕事では一切使っておらず、十分な動作テストをしていないため、
>多分大丈夫だとは思いますが、ちょっと保証はできません。
>ので、一応公式としては、ERIS上では \GO.IF とラベルで分岐してもらうのを推奨、
>ただし無保証という形で IF[]〜ELSE[]〜IFEND[] を使用することも可能、という感じでしょうか。
>GOSUB[] に関しては代わりとなる \GOSUB を実装予定なので、一応禁止とさせてください。
GOSUBとLOOP[]の説明を見てふと思ったのですが、やっぱり非推奨だったんですね。
|
|
|