(svn r5908) - Codechange (r5903): Move the retrieval of the new value of a patch to console_cmds.c, so there is no need for that function in settings.c

This commit is contained in:
Darkvater 2006-08-15 07:37:01 +00:00
parent 4ad8d1c7a2
commit 029105ea1c
3 changed files with 7 additions and 12 deletions

View File

@ -1342,7 +1342,8 @@ DEF_CONSOLE_CMD(ConPatch)
if (argc == 2) { if (argc == 2) {
IConsoleGetPatchSetting(argv[1]); IConsoleGetPatchSetting(argv[1]);
} else { } else {
IConsoleSetPatchSetting(argv[1], argv[2]); int32 val;
if (GetArgumentInteger(&val, argv[2])) IConsoleSetPatchSetting(argv[1], val);
} }
return true; return true;

View File

@ -1597,13 +1597,9 @@ const SettingDesc *GetPatchFromName(const char *name, uint *i)
} }
/* Those 2 functions need to be here, else we have to make some stuff non-static /* Those 2 functions need to be here, else we have to make some stuff non-static
* and besides, it is also better to keep stuff like this at the same place * and besides, it is also better to keep stuff like this at the same place */
* XXX - Perhaps back to console[_cmds].c? They are console functions after all */ void IConsoleSetPatchSetting(const char *name, int32 value)
extern bool GetArgumentInteger(uint32 *value, const char *arg);
void IConsoleSetPatchSetting(const char *name, const char *value)
{ {
int32 val;
uint index; uint index;
const SettingDesc *sd = GetPatchFromName(name, &index); const SettingDesc *sd = GetPatchFromName(name, &index);
const Patches *patches_ptr; const Patches *patches_ptr;
@ -1614,13 +1610,11 @@ void IConsoleSetPatchSetting(const char *name, const char *value)
return; return;
} }
if (!GetArgumentInteger(&val, value)) return;
patches_ptr = (_game_mode == GM_MENU) ? &_patches_newgame : &_patches; patches_ptr = (_game_mode == GM_MENU) ? &_patches_newgame : &_patches;
ptr = ini_get_variable(&sd->save, patches_ptr); ptr = ini_get_variable(&sd->save, patches_ptr);
SetPatchValue(index, patches_ptr, val); SetPatchValue(index, patches_ptr, value);
if (sd->desc.proc != NULL) sd->desc.proc(val); if (sd->desc.proc != NULL) sd->desc.proc(value);
} }
void IConsoleGetPatchSetting(const char *name) void IConsoleGetPatchSetting(const char *name)

View File

@ -77,7 +77,7 @@ static inline void *ini_get_variable(const SaveLoad *sld, const void *object)
/** The patch values that are used for new games and/or modified in config file */ /** The patch values that are used for new games and/or modified in config file */
extern Patches _patches_newgame; extern Patches _patches_newgame;
void IConsoleSetPatchSetting(const char *name, const char *value); void IConsoleSetPatchSetting(const char *name, int32 value);
void IConsoleGetPatchSetting(const char *name); void IConsoleGetPatchSetting(const char *name);
const SettingDesc *GetPatchFromName(const char *name, uint *i); const SettingDesc *GetPatchFromName(const char *name, uint *i);
void SetPatchValue(uint index, const Patches *object, int32 value); void SetPatchValue(uint index, const Patches *object, int32 value);