X-Git-Url: https://git.verplant.org/?a=blobdiff_plain;f=src%2Fgameconfig.cpp;h=6a92e35accd330ea0b95e753a2fe78772671db9c;hb=b59165e13c680ef17f4a150c57739d8bf2c09d91;hp=8947005ac729ddf10f916c7eeb653f354ef3df38;hpb=7b74666be6929322c6a603a6edd0131378f4c144;p=supertux.git diff --git a/src/gameconfig.cpp b/src/gameconfig.cpp index 8947005ac..6a92e35ac 100644 --- a/src/gameconfig.cpp +++ b/src/gameconfig.cpp @@ -20,7 +20,7 @@ #include "gameconfig.hpp" -#include +#include #include #include @@ -35,7 +35,10 @@ Config* config = 0; Config::Config() { - use_fullscreen = true; + profile = 1; + use_fullscreen = false; + video = AUTO_VIDEO; + try_vsync = true; show_fps = false; sound_enabled = true; music_enabled = true; @@ -44,10 +47,13 @@ Config::Config() screenwidth = 800; screenheight = 600; - aspectwidth = 4; - aspectheight = 3; + + aspect_width = 800; + aspect_height = 600; enable_script_debugger = false; + + locale = ""; // autodetect } Config::~Config() @@ -65,15 +71,20 @@ Config::load() config_lisp->get("show_fps", show_fps); config_lisp->get("console", console_enabled); + config_lisp->get("locale", locale); config_lisp->get("random_seed", random_seed); const lisp::Lisp* config_video_lisp = config_lisp->get_lisp("video"); if(config_video_lisp) { config_video_lisp->get("fullscreen", use_fullscreen); + std::string video_string; + config_video_lisp->get("video", video_string); + video = get_video_system(video_string); + config_video_lisp->get("vsync", try_vsync); config_video_lisp->get("width", screenwidth); config_video_lisp->get("height", screenheight); - config_video_lisp->get("aspectwidth", aspectwidth); - config_video_lisp->get("aspectheight", aspectheight); + config_video_lisp->get("aspect_width", aspect_width); + config_video_lisp->get("aspect_height", aspect_height); } const lisp::Lisp* config_audio_lisp = config_lisp->get_lisp("audio"); @@ -97,13 +108,16 @@ Config::save() writer.write_bool("show_fps", show_fps); writer.write_bool("console", console_enabled); + writer.write_string("locale", locale); writer.start_list("video"); writer.write_bool("fullscreen", use_fullscreen); + writer.write_string("video", get_video_string(video)); + writer.write_bool("vsync", try_vsync); writer.write_int("width", screenwidth); writer.write_int("height", screenheight); - writer.write_int("aspectwidth", aspectwidth); - writer.write_int("aspectheight", aspectheight); + writer.write_float("aspect_width", aspect_width); + writer.write_float("aspect_height", aspect_height); writer.end_list("video"); writer.start_list("audio");