diff --git a/src/command.c b/src/command.c index 30198c3e2..28b73bdbc 100644 --- a/src/command.c +++ b/src/command.c @@ -84,7 +84,7 @@ CV_PossibleValue_t CV_Natural[] = {{1, "MIN"}, {999999999, "MAX"}, {0, NULL}}; #else #define VALUE "Off" #endif -consvar_t cv_cheats = CVAR_INIT ("cheats", VALUE, CV_NETVAR|CV_CALL, CV_OnOff, CV_CheatsChanged); +consvar_t cv_cheats = CVAR_INIT ("cheats", VALUE, CV_NETVAR|CV_CALL|CV_NOINIT, CV_OnOff, CV_CheatsChanged); #undef VALUE // SRB2kart diff --git a/src/g_game.c b/src/g_game.c index c2ab6d216..bebaa11b0 100644 --- a/src/g_game.c +++ b/src/g_game.c @@ -4501,6 +4501,14 @@ void G_SaveGameData(void) if (!gamedataloaded) return; // If never loaded (-nodata), don't save + if (usedCheats) + { +#ifdef DEVELOP + CONS_Alert(CONS_WARNING, M_GetText("Cheats used - Gamedata will not be saved.\n")); +#endif + return; + } + length = (4+4+4+1+(MAXEMBLEMS)+MAXEXTRAEMBLEMS+MAXUNLOCKABLES+MAXCONDITIONSETS+4+4); length += nummapheaders * (MAXMAPLUMPNAME+1+4+4); @@ -4511,15 +4519,6 @@ void G_SaveGameData(void) return; } -#ifndef DEVELOP - if (usedCheats) - { - free(savebuffer); - save_p = savebuffer = NULL; - return; - } -#endif - // Version test WRITEUINT32(save_p, GD_VERSIONCHECK); // 4