diff options
-rw-r--r-- | docs/multiplayer.md | 2 | ||||
-rw-r--r-- | src/settings.cpp | 13 |
2 files changed, 7 insertions, 8 deletions
diff --git a/docs/multiplayer.md b/docs/multiplayer.md index ece0c04df..c7e1839cf 100644 --- a/docs/multiplayer.md +++ b/docs/multiplayer.md @@ -117,7 +117,7 @@ Last updated: 2011-02-16 - If you want to be on the server-list, make your server public. You can do this either from the Start Server GUI, via the in-game Online Players GUI, or by typing in the console: - 'set server_game_type 1'. + 'set server_game_type public'. - You can protect your server with a password via the console: 'set server_pw', or via the Start Server menu. diff --git a/src/settings.cpp b/src/settings.cpp index d7a855065..0d379778b 100644 --- a/src/settings.cpp +++ b/src/settings.cpp @@ -1635,15 +1635,14 @@ void IConsoleSetSetting(const char *name, const char *value, bool force_newgame) if (sd->IsStringSetting()) { success = SetSettingValue(sd->AsStringSetting(), value, force_newgame); } else if (sd->IsIntSetting()) { - uint32 val; - extern bool GetArgumentInteger(uint32 *value, const char *arg); - success = GetArgumentInteger(&val, value); - if (!success) { - IConsolePrint(CC_ERROR, "'{}' is not an integer.", value); + const IntSettingDesc *isd = sd->AsIntSetting(); + size_t val = isd->ParseValue(value); + if (!_settings_error_list.empty()) { + IConsolePrint(CC_ERROR, "'{}' is not a valid value for this setting.", value); + _settings_error_list.clear(); return; } - - success = SetSettingValue(sd->AsIntSetting(), val, force_newgame); + success = SetSettingValue(isd, (int32)val, force_newgame); } if (!success) { |