ゲーム中のセーブ

ゲーム中のセーブ


ZGEではゲームのセーブデータを保存する場合に、
『save_data』と『save_event』と言う2つの関数がありますが、
それぞれの関数は使い方が違う部分があります。


save_data 関数

save_data 関数を実行した時のシーンの状態をそのまま保存する関数です。

ゲームのセーブに適しているように思えますが、
save_data で作成したセーブデータは、
イベントファイル(.evt)と同じ容量となります。

イベントリストが合計4000程あると
1つのセーブデータはおおよそ4MB〜5MB程になってしまうので
多様する場合には注意が必要です。


save_event 関数

save_event 関数はセーブデータ内に指定したイベント1つを保存します。

※イメージ図


変数を保持したイベントを保存させれば、
次回に変数を読み込ませる事で、
キャラクターのステータスや所持品等を再現させる事が可能です。

■イベントの保存
関数引数1引数2引数3引数4
save_event対象セーブデータ番号セーブデータ番号が格納された変数セーブデータ内の保存先イベントID保存する対象のイベントID

■イベントの読み込み(対象を上書き)
関数引数1引数2引数3引数4
get_event対象セーブデータ番号セーブデータ番号が格納された変数上書きするイベントID呼び出すセーブデータ内のイベントID

save_event で保存し get_event で読み込むと覚えましょう。
save_event のID番号は常に同じ必要がありますが、
get_event の上書きする対象ID番号(引数3)は
セーブデータ内にあるイベントIDと同じIDである必要はありません。


座標などの情報も変数に代入して保存し、
読み込んだ時に代入させる事で同じ位置からゲームを再開する事もできるので、
基本的にゲームのセーブに関しては save_event 関数を使う事をお勧めします。

注意点としては、save_event 関数は予め保存する対象となるセーブデータが必要となります。
save_data を実行する事でファイルは作成されるので、
あらかじめ別途必要な量のイベントを用意したシーンを作り、
そこで save_data を実行して作成しておくようにしておきましょう。

先ほども述べたように保存先は任意なので、
作成しているシーンと同じイベント数を必要とはしない上、
とくに保存先の領域は関係ないので必要な数だけ用意すれば十分です。
その時、セーブデータで利用するイベントID番号をメモ等して忘れないように注意してください。



▲フレームが表示されない人はクリック