]> git.jsancho.org Git - lugaru.git/blobdiff - Source/Settings.cpp
The console key is now easy to configure. (the option will only be shown in debug...
[lugaru.git] / Source / Settings.cpp
index dce0e0ec24951e58038e312765ea6b6bba9676fc..ef3cebe22e9f5ead286eff1659636a12d9d2fd93 100644 (file)
@@ -40,10 +40,17 @@ void DefaultSettings(Game &game) {
        game.drawkey=SDLK_e;
        game.throwkey=SDLK_q;
        game.attackkey=MOUSEBUTTON1;
+       game.consolekey=SDLK_BACKQUOTE;
        game.chatkey=SDLK_t;
 }
 
 void SaveSettings(Game &game) {
+       if(game.newdetail<0) game.newdetail=0;
+       if(game.newdetail>2) game.newdetail=2;
+       if(game.newscreenwidth>3000) game.newscreenwidth=screenwidth;
+       if(game.newscreenwidth<0) game.newscreenwidth=screenwidth;
+       if(game.newscreenheight>3000) game.newscreenheight=screenheight;
+       if(game.newscreenheight<0) game.newscreenheight=screenheight;
        ofstream opstream(ConvertFileName(":Data:config.txt", "w"));
        opstream << "Screenwidth:\n";
        opstream << game.newscreenwidth;
@@ -116,6 +123,8 @@ void SaveSettings(Game &game) {
        opstream << Input::keyToChar(game.throwkey);
        opstream << "\nAttack key:\n";
        opstream << Input::keyToChar(game.attackkey);
+       opstream << "\nConsole key:\n";
+       opstream << Input::keyToChar(game.consolekey);
        opstream << "\nChat key:\n";
        opstream << Input::keyToChar(game.chatkey);
        opstream << "\nDamage bar:\n";
@@ -145,7 +154,7 @@ bool LoadSettings(Game &game) {
                // skip blank lines
                // assume lines starting with spaces are all blank
                if ( strlen(setting) == 0 || setting[0] == ' ' || setting[0] == '\t') continue;
-               printf("setting : %s\n",setting);
+               //~ printf("setting : %s\n",setting);
 
                if ( ipstream.eof() || ipstream.fail() ) {
                        fprintf(stderr, "Error reading config file: Got setting name '%s', but value can't be read\n", setting);
@@ -240,6 +249,9 @@ bool LoadSettings(Game &game) {
                } else if ( !strncmp(setting, "Attack key", 10) ) {
                        ipstream.getline( string, sizeof(string) );
                        game.attackkey = Input::CharToKey(string);
+               } else if ( !strncmp(setting, "Console key", 11) ) {
+                       ipstream.getline( string, sizeof(string) );
+                       game.consolekey = Input::CharToKey(string);
                } else if ( !strncmp(setting, "Chat key", 8) ) {
                        ipstream.getline( string, sizeof(string) );
                        game.chatkey = Input::CharToKey(string);