mirror of
https://github.com/fabiangreffrath/woof.git
synced 2025-09-25 13:55:36 -04:00
fix G_MBFSaveGameName and save compatibility
This commit is contained in:
parent
6cde55c9bd
commit
d706d2a7d4
@ -1496,9 +1496,11 @@ char* G_SaveGameName(int slot)
|
||||
return M_StringJoin(basesavegame, DIR_SEPARATOR_S, buf, NULL);
|
||||
}
|
||||
|
||||
void G_MBFSaveGameName(char *name, int slot)
|
||||
char* G_MBFSaveGameName(int slot)
|
||||
{
|
||||
sprintf(name, "%s/%.7s%d.dsg", basesavegame, "MBFSAV", slot);
|
||||
char buf[16] = {0};
|
||||
sprintf(buf, "MBFSAV%d.dsg", slot);
|
||||
return M_StringJoin(basesavegame, DIR_SEPARATOR_S, buf, NULL);
|
||||
}
|
||||
|
||||
// killough 12/98:
|
||||
@ -1548,7 +1550,7 @@ static void G_DoSaveGame(void)
|
||||
memset (name2,0,sizeof(name2));
|
||||
|
||||
// killough 2/22/98: "proprietary" version string :-)
|
||||
sprintf (name2,VERSIONID,MBF21VERSION);
|
||||
sprintf (name2,VERSIONID,MBFVERSION);
|
||||
|
||||
memcpy (save_p, name2, VERSIONSIZE);
|
||||
save_p += VERSIONSIZE;
|
||||
@ -1652,7 +1654,7 @@ static void G_DoLoadGame(void)
|
||||
// skip the description field
|
||||
|
||||
// killough 2/22/98: "proprietary" version string :-)
|
||||
sprintf (vcheck,VERSIONID,MBF21VERSION);
|
||||
sprintf (vcheck,VERSIONID,MBFVERSION);
|
||||
|
||||
// killough 2/22/98: Friendly savegame version difference message
|
||||
if (!forced_loadgame && strncmp((char *) save_p, vcheck, VERSIONSIZE))
|
||||
|
@ -58,7 +58,7 @@ void G_Ticker(void);
|
||||
void G_ScreenShot(void);
|
||||
void G_ReloadDefaults(void); // killough 3/1/98: loads game defaults
|
||||
char *G_SaveGameName(int); // killough 3/22/98: sets savegame filename
|
||||
void G_MBFSaveGameName(char *,int); // MBF savegame filename
|
||||
char *G_MBFSaveGameName(int); // MBF savegame filename
|
||||
void G_SetFastParms(int); // killough 4/10/98: sets -fast parameters
|
||||
void G_DoNewGame(void);
|
||||
void G_DoReborn(int playernum);
|
||||
|
@ -867,7 +867,8 @@ void M_LoadSelect(int choice)
|
||||
|
||||
if (access(name, F_OK) != 0)
|
||||
{
|
||||
G_MBFSaveGameName(name, choice);
|
||||
if (name) (free)(name);
|
||||
name = G_MBFSaveGameName(choice);
|
||||
saveg_compat = saveg_mbf;
|
||||
}
|
||||
|
||||
@ -970,8 +971,9 @@ void M_ReadSaveStrings(void)
|
||||
|
||||
if (!fp)
|
||||
{ // Ty 03/27/98 - externalized:
|
||||
G_MBFSaveGameName(name, i);
|
||||
name = G_MBFSaveGameName(i);
|
||||
fp = fopen(name,"rb");
|
||||
if (name) (free)(name);
|
||||
if (!fp)
|
||||
{
|
||||
strcpy(&savegamestrings[i][0],s_EMPTYSTRING);
|
||||
|
@ -118,10 +118,11 @@ typedef enum {
|
||||
pr_dropoff, // #60
|
||||
pr_randomjump, // #61
|
||||
pr_defect, // #62
|
||||
pr_mbf21, // #63
|
||||
|
||||
// End of new entries
|
||||
NUMPRCLASS // MUST be last item in list
|
||||
NUMPRCLASS, // MUST be last item in list
|
||||
|
||||
pr_mbf21, // #63
|
||||
} pr_class_t;
|
||||
|
||||
// The random number generator's state.
|
||||
|
@ -345,8 +345,15 @@ static void saveg_read_mobj_t(mobj_t *str)
|
||||
// int flags;
|
||||
str->flags = saveg_read32();
|
||||
|
||||
if (saveg_compat == saveg_mbf21)
|
||||
{
|
||||
// [Woof!]: mbf21: int flags2;
|
||||
//str->flags2 = saveg_read32();
|
||||
str->flags2 = saveg_read32();
|
||||
}
|
||||
else
|
||||
{
|
||||
str->flags2 = mobjinfo[str->type].flags2;
|
||||
}
|
||||
|
||||
// int intflags
|
||||
str->intflags = saveg_read32();
|
||||
@ -526,8 +533,11 @@ static void saveg_write_mobj_t(mobj_t *str)
|
||||
// int flags;
|
||||
saveg_write32(str->flags);
|
||||
|
||||
if (saveg_compat == saveg_mbf21)
|
||||
{
|
||||
// [Woof!]: mbf21: int flags2;
|
||||
// saveg_write32(str->flags2);
|
||||
saveg_write32(str->flags2);
|
||||
}
|
||||
|
||||
// int intflags;
|
||||
saveg_write32(str->intflags);
|
||||
|
Loading…
x
Reference in New Issue
Block a user