mirror of
https://github.com/kichikuou/system3-sdl2.git
synced 2026-09-30 10:58:07 +03:00
Refactor savefile path handling
This commit is contained in:
@@ -5,6 +5,7 @@
|
||||
*/
|
||||
|
||||
#include <algorithm>
|
||||
#include <limits.h>
|
||||
#include <string.h>
|
||||
#include "ags.h"
|
||||
#include "nact.h"
|
||||
|
||||
+6
-8
@@ -20,6 +20,10 @@
|
||||
#include "game_id.h"
|
||||
#include "debugger/debugger.h"
|
||||
|
||||
#ifndef WIN32
|
||||
#define sscanf_s sscanf
|
||||
#endif
|
||||
|
||||
extern SDL_Window* g_window;
|
||||
|
||||
// 初期化
|
||||
@@ -533,10 +537,7 @@ void NACT::text_wait()
|
||||
|
||||
bool NACT::load(int index)
|
||||
{
|
||||
char file_name[_MAX_PATH];
|
||||
snprintf(file_name, _MAX_PATH, "ASLEEP_%c.DAT", 'A' + index - 1);
|
||||
|
||||
auto fio = FILEIO::open(file_name, FILEIO_READ_BINARY | FILEIO_SAVEDATA);
|
||||
auto fio = FILEIO::open_save(index, FILEIO_READ_BINARY);
|
||||
if (!fio)
|
||||
return false;
|
||||
fio->seek(112, SEEK_SET);
|
||||
@@ -576,10 +577,7 @@ bool NACT::load(int index)
|
||||
|
||||
bool NACT::save(int index, const char header[112])
|
||||
{
|
||||
char file_name[_MAX_PATH];
|
||||
snprintf(file_name, _MAX_PATH, "ASLEEP_%c.DAT", 'A' + index - 1);
|
||||
|
||||
auto fio = FILEIO::open(file_name, FILEIO_WRITE_BINARY | FILEIO_SAVEDATA);
|
||||
auto fio = FILEIO::open_save(index, FILEIO_WRITE_BINARY);
|
||||
if (!fio)
|
||||
return false;
|
||||
|
||||
|
||||
@@ -494,10 +494,7 @@ void NACT_Sys3::cmd_l()
|
||||
RND = 0;
|
||||
} else if (101 <= index && index <= 126) {
|
||||
// ASLEEP_A.DAT - ASLEEP_Z.DAT
|
||||
char file_name[_MAX_PATH];
|
||||
snprintf(file_name, _MAX_PATH, "ASLEEP_%c.DAT", 'A' + index - 101);
|
||||
|
||||
auto fio = FILEIO::open(file_name, FILEIO_READ_BINARY | FILEIO_SAVEDATA);
|
||||
auto fio = FILEIO::open_save(index - 100, FILEIO_READ_BINARY);
|
||||
if (fio) {
|
||||
fio->seek(112 + 16, SEEK_SET);
|
||||
RND = fio->getw();
|
||||
@@ -1017,11 +1014,8 @@ void NACT_Sys3::cmd_y()
|
||||
break;
|
||||
case 239:
|
||||
if(1 <= param && param <= 26) {
|
||||
char file_name[_MAX_PATH];
|
||||
snprintf(file_name, _MAX_PATH, "ASLEEP_%c.DAT", 'A' + param - 1);
|
||||
|
||||
struct stat statbuf;
|
||||
if (FILEIO::stat_save(file_name, &statbuf) != -1) {
|
||||
if (FILEIO::stat_save(param, &statbuf) != -1) {
|
||||
struct tm *t = localtime(&statbuf.st_mtime);
|
||||
D01 = t->tm_year + 1900;
|
||||
D02 = t->tm_mon + 1;
|
||||
|
||||
Reference in New Issue
Block a user