wesnoth-cvs-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Wesnoth-cvs-commits] wesnoth/src multiplayer.cpp preferences.cpp pre...


From: Isaac Clerencia
Subject: [Wesnoth-cvs-commits] wesnoth/src multiplayer.cpp preferences.cpp pre...
Date: Mon, 13 Dec 2004 00:56:46 -0500

CVSROOT:        /cvsroot/wesnoth
Module name:    wesnoth
Branch:         
Changes by:     Isaac Clerencia <address@hidden>        04/12/13 05:40:45

Modified files:
        src            : multiplayer.cpp preferences.cpp preferences.hpp 
        src/widgets    : menu.hpp 

Log message:
        Save the main settings (map name, xp modifier, gpv, ...) of the last 
played game

CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/wesnoth/wesnoth/src/multiplayer.cpp.diff?tr1=1.129&tr2=1.130&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/wesnoth/wesnoth/src/preferences.cpp.diff?tr1=1.126&tr2=1.127&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/wesnoth/wesnoth/src/preferences.hpp.diff?tr1=1.42&tr2=1.43&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/wesnoth/wesnoth/src/widgets/menu.hpp.diff?tr1=1.31&tr2=1.32&r1=text&r2=text

Patches:
Index: wesnoth/src/multiplayer.cpp
diff -u wesnoth/src/multiplayer.cpp:1.129 wesnoth/src/multiplayer.cpp:1.130
--- wesnoth/src/multiplayer.cpp:1.129   Thu Nov 18 22:00:12 2004
+++ wesnoth/src/multiplayer.cpp Mon Dec 13 05:40:44 2004
@@ -1,4 +1,4 @@
-/* $Id: multiplayer.cpp,v 1.129 2004/11/18 22:00:12 ydirson Exp $ */
+/* $Id: multiplayer.cpp,v 1.130 2004/12/13 05:40:44 isaaccp Exp $ */
 /*
    Copyright (C) 2003 by David White <address@hidden>
    Part of the Battle for Wesnoth Project http://wesnoth.whitevine.net
@@ -89,32 +89,32 @@
        turns_slider_.assign(new gui::slider(disp_));
        turns_slider_->set_min(20);
        turns_slider_->set_max(100);
-       turns_slider_->set_value(50);
+       turns_slider_->set_value(preferences::turns());
        turns_slider_->set_help_string(_("The maximum turns the game will go 
for"));
 
        village_gold_slider_.assign(new gui::slider(disp_));
        village_gold_slider_->set_min(1);
        village_gold_slider_->set_max(5);
-       village_gold_slider_->set_value(1);
+       village_gold_slider_->set_value(preferences::village_gold());
        village_gold_slider_->set_help_string(_("The amount of income each 
village yields per turn"));
 
        xp_modifier_slider_.assign(new gui::slider(disp_));
        xp_modifier_slider_->set_min(25);
        xp_modifier_slider_->set_max(200);
-       xp_modifier_slider_->set_value(100);
+       xp_modifier_slider_->set_value(preferences::xp_modifier());
        xp_modifier_slider_->set_increment(10);
        xp_modifier_slider_->set_help_string(_("The amount of experience a unit 
needs to advance"));
 
        fog_game_.assign(new gui::button(disp_,_("Fog Of 
War"),gui::button::TYPE_CHECK));
-       fog_game_->set_check(false);
+       fog_game_->set_check(preferences::fog());
        fog_game_->set_help_string(_("Enemy units cannot be seen unless they 
are in range of your units"));
 
        shroud_game_.assign(new 
gui::button(disp_,_("Shroud"),gui::button::TYPE_CHECK));
-       shroud_game_->set_check(false);
+       shroud_game_->set_check(preferences::shroud());
        shroud_game_->set_help_string(_("The map is unknown until your units 
explore it"));
 
        observers_game_.assign(new 
gui::button(disp_,_("Observers"),gui::button::TYPE_CHECK));
-       observers_game_->set_check(true);
+       observers_game_->set_check(preferences::allow_observers());
        observers_game_->set_help_string(_("Allow users who are not playing to 
watch the game"));
 
        cancel_game_.assign(new gui::button(disp_,_("Cancel")));
@@ -145,6 +145,7 @@
        }
 
        era_combo_.assign(new gui::combo(disp_,eras));
+       era_combo_->set_selected(preferences::era());
 
        std::cerr << "end setup dialog ctor\n";
 }
@@ -191,6 +192,7 @@
        maps_menu_->set_max_height(area.y + area.h - (ypos + map_label_height));
        maps_menu_->set_items(map_options_);
        maps_menu_->set_location(xpos + minimap_width + border_size,ypos + 
map_label_height + border_size);
+       maps_menu_->move_selection(preferences::map());
        maps_menu_->set_dirty();
 
        SDL_Rect rect;
@@ -534,6 +536,17 @@
        const config::child_list& era_list = cfg_.get_children("era");
 
        const int share = vision_combo_->selected();
+
+       //Save values for next game
+       preferences::set_allow_observers(observers_game_->checked());
+       preferences::set_fog(fog_game_->checked());
+       preferences::set_shroud(shroud_game_->checked());
+       preferences::set_turns(turns_slider_->value());
+       preferences::set_village_gold(village_gold_slider_->value());
+       preferences::set_xp_modifier(xp_modifier_slider_->value());
+       preferences::set_era(era_combo_->selected());
+       preferences::set_map(maps_menu_->selection());
+       
        const int res = 
connector.load_map((*era_list[era_combo_->selected()])["id"],
                           scenario_data_, turns, village_gold_slider_->value(),
                                           xp_modifier_slider_->value(), 
fog_game_->checked(),
Index: wesnoth/src/preferences.cpp
diff -u wesnoth/src/preferences.cpp:1.126 wesnoth/src/preferences.cpp:1.127
--- wesnoth/src/preferences.cpp:1.126   Thu Dec  2 21:57:28 2004
+++ wesnoth/src/preferences.cpp Mon Dec 13 05:40:44 2004
@@ -1,4 +1,4 @@
-/* $Id: preferences.cpp,v 1.126 2004/12/02 21:57:28 silene Exp $ */
+/* $Id: preferences.cpp,v 1.127 2004/12/13 05:40:44 isaaccp Exp $ */
 /*
    Copyright (C) 2003 by David White <address@hidden>
    Part of the Battle for Wesnoth Project http://wesnoth.whitevine.net
@@ -457,6 +457,140 @@
        return prefs["show_combat"] != "no";
 }
 
+bool allow_observers()
+{      
+       return prefs["allow_observers"] != "no";
+}
+
+void set_allow_observers(bool value)
+{      
+       prefs["allow_observers"] = value ? "yes" : "no";
+}
+
+bool fog()
+{      
+       return prefs["mp_fog"] != "no";
+}
+
+void set_fog(bool value)
+{      
+       prefs["mp_fog"] = value ? "yes" : "no";
+}
+
+bool shroud()
+{      
+       return prefs["mp_shroud"] != "no";
+}
+
+void set_shroud(bool value)
+{      
+       prefs["mp_shroud"] = value ? "yes" : "no";
+}
+
+int turns()
+{      
+       static const int default_value = 50;
+       int value = 0;
+       const string_map::const_iterator i = prefs.values.find("mp_turns");
+       if(i != prefs.values.end() && i->second.empty() == false) {
+               value = atoi(i->second.c_str());
+       }
+
+       if(value < 20 || value > 100) {
+               value = default_value;
+       }
+
+       return value;
+}
+
+void set_turns(int value)
+{      
+       std::stringstream stream;
+       stream << value;
+       prefs["mp_turns"] = stream.str();
+}
+
+int village_gold()
+{      
+       static const int default_value = 1;
+       int value = 0;
+       const string_map::const_iterator i = 
prefs.values.find("mp_village_gold");
+       if(i != prefs.values.end() && i->second.empty() == false) {
+               value = atoi(i->second.c_str());
+       }
+
+       if(value < 1 || value > 5) {
+               value = default_value;
+       }
+
+       return value;
+}
+
+void set_village_gold(int value)
+{      
+       std::stringstream stream;
+       stream << value;
+       prefs["mp_village_gold"] = stream.str();
+}
+
+int xp_modifier()
+{      
+       static const int default_value = 100;
+       int value = 0;
+       const string_map::const_iterator i = 
prefs.values.find("mp_xp_modifier");
+       if(i != prefs.values.end() && i->second.empty() == false) {
+               value = atoi(i->second.c_str());
+       }
+
+       if(value < 30 || value > 200) {
+               value = default_value;
+       }
+
+       return value;
+}
+
+void set_xp_modifier(int value)
+{      
+       std::stringstream stream;
+       stream << value;
+       prefs["mp_xp_modifier"] = stream.str();
+}
+
+int era()
+{      
+       int value = 0;
+       const string_map::const_iterator i = prefs.values.find("mp_era");
+       if(i != prefs.values.end() && i->second.empty() == false) {
+               value = atoi(i->second.c_str());
+       }
+
+       return value;
+}
+
+void set_era(int value)
+{      
+       std::stringstream stream;
+       stream << value;
+       prefs["mp_era"] = stream.str();
+}
+
+int map()
+{      
+       int value = 0;
+       const string_map::const_iterator i = prefs.values.find("mp_map");
+       if(i != prefs.values.end() && i->second.empty() == false) {
+               value = atoi(i->second.c_str());
+       }
+       return value;
+}
+
+void set_map(int value)
+{      
+       std::stringstream stream;
+       stream << value;
+       prefs["mp_map"] = stream.str();
+}
+
 bool show_ai_moves()
 {      
        return prefs["show_ai_moves"] != "no";
Index: wesnoth/src/preferences.hpp
diff -u wesnoth/src/preferences.hpp:1.42 wesnoth/src/preferences.hpp:1.43
--- wesnoth/src/preferences.hpp:1.42    Fri Oct 29 19:53:22 2004
+++ wesnoth/src/preferences.hpp Mon Dec 13 05:40:44 2004
@@ -1,4 +1,4 @@
-/* $Id: preferences.hpp,v 1.42 2004/10/29 19:53:22 ydirson Exp $ */
+/* $Id: preferences.hpp,v 1.43 2004/12/13 05:40:44 isaaccp Exp $ */
 /*
    Copyright (C) 2003 by David White <address@hidden>
    Part of the Battle for Wesnoth Project http://wesnoth.whitevine.net
@@ -98,6 +98,30 @@
 
        bool show_combat();
 
+       bool allow_observers();
+       void set_allow_observers(bool value);
+
+       bool fog();
+       void set_fog(bool value);
+
+       bool shroud();
+       void set_shroud(bool value);
+
+       int turns();
+       void set_turns(int value);
+
+       int village_gold();
+       void set_village_gold(int value);
+
+       int xp_modifier();
+       void set_xp_modifier(int value);
+
+       int era();
+       void set_era(int value);
+
+       int map();
+       void set_map(int value);
+
        bool show_ai_moves();
        void set_show_ai_moves(bool value);
 
Index: wesnoth/src/widgets/menu.hpp
diff -u wesnoth/src/widgets/menu.hpp:1.31 wesnoth/src/widgets/menu.hpp:1.32
--- wesnoth/src/widgets/menu.hpp:1.31   Tue Dec  7 18:14:55 2004
+++ wesnoth/src/widgets/menu.hpp        Mon Dec 13 05:40:44 2004
@@ -24,6 +24,7 @@
             bool click_selects=false, int max_height=-1, int max_width=-1);
 
        int selection() const;
+       void move_selection(size_t pos);
 
        // allows user to change_item while running (dangerous)
        void change_item(int pos1,int pos2,std::string str);
@@ -121,7 +122,6 @@
        void update_size();
        void move_selection_up(size_t dep);
        void move_selection_down(size_t dep);
-       void move_selection(size_t pos);
 };
 
 }




reply via email to

[Prev in Thread] Current Thread [Next in Thread]