工房瓦版

創作関係の趣味ブログ

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

フィールドだけではなくイベント中でもセーブできるように

 今までフィールドではどこでもセーブできましたが、会話イベント中のセーブはできないようにしていました。
 フィールド操作は常に同じラベルで行うようにしているので、いつどこでセーブしても、ロード時に戻す先というものを考慮する必要がありませんでした。
 しかし、会話イベント中のセーブはそうは行かない。
 会話イベントはksファイルを分けて作っているので、戻し先が一つに定まらないため、好きにセーブさせると対応が面倒臭い、そう思っていました。

 実際、ドラクエ・FF・テイルズなどなど、イベント会話中にセーブできるRPGなんて普通はないと思いますので、それでいいかなと。

 ただ、ひとつのイベントが長くなって、読ませる量が増えてしまうと、イベント中にセーブできないのは論外かなという風に思うことの方が最近増えてきました。

 というわけで、この度何とか対策しました。
 その過程で知ったのですが、吉里吉里製ADVゲームでよくある、メッセージウィンドウからクリックするタイプのセーブって、あれサブルーチンで作ってたんですね
 個人的に、セーブラベルにjumpさせたら、セーブ後にどうやって元のファイルの元の行に戻しているんだと不思議に思っていたのですが、ようやくスッキリしました。

【大まかな手順】
メッセージウィンドウのセーブボタンを押した時に、「exp="kag.callExtraConductor('セーブシステム.ks','*セーブラベル')」
のようにして、サブルーチンでセーブ画面に飛ばしておきます。
そして、セーブ画面から抜けるときに[return]させます。
それだけでちゃんと元の場所に戻ってこられます(セーブ画面でcurrentメッセージレイヤーを変更したりした場合は、return直前にちゃんと元の文章表示用メッセージレイヤーにcurrentを戻しておく必要があります)。

コメント

コメントの投稿


管理者にだけ表示を許可する

トラックバック

トラックバック URL
http://kuonkobo.blog82.fc2.com/tb.php/980-0c2e8069
この記事にトラックバックする(FC2ブログユーザー)

FC2Ad

まとめ

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。