Author: alink
Date: Tue Jul 8 22:13:22 2008
New Revision: 27851
URL: http://svn.gna.org/viewcvs/wesnoth?rev=27851&view=rev
Log:
When joining a MP game, improve the "Choose your side" dialog:
Now called "Choose your faction" and displays "Starting position: 3"
to show you which slot you will have.
Also team-color the leader preview. Faction and leader menus not TC-ed yet.
Modified:
trunk/src/multiplayer_wait.cpp
trunk/src/multiplayer_wait.hpp
Modified: trunk/src/multiplayer_wait.cpp
URL:
http://svn.gna.org/viewcvs/wesnoth/trunk/src/multiplayer_wait.cpp?rev=27851&r1=27850&r2=27851&view=diff
==============================================================================
--- trunk/src/multiplayer_wait.cpp (original)
+++ trunk/src/multiplayer_wait.cpp Tue Jul 8 22:13:22 2008
@@ -46,9 +46,10 @@
namespace mp {
wait::leader_preview_pane::leader_preview_pane(game_display& disp,
- const config::child_list& side_list) :
+ const config::child_list& side_list, const std::string& color) :
gui::preview_pane(disp.video()),
side_list_(side_list),
+ color_(color),
leader_combo_(disp, std::vector<std::string>()),
gender_combo_(disp, std::vector<std::string>()),
leaders_(side_list, &leader_combo_, &gender_combo_),
@@ -116,7 +117,7 @@
#ifdef LOW_MEM
image = utg->image();
#else
- image = utg->image() + std::string("~RC(") +
std::string(utg->flag_rgb() + ">1)");
+ image = utg->image() + std::string("~RC(") +
std::string(utg->flag_rgb() + ">" + color_ + ")");
#endif
}
@@ -253,7 +254,7 @@
throw config::error(_("No multiplayer sides available
in this game"));
return;
}
-
+
const bool allow_changes =
(*sides_list[side_choice])["allow_changes"] != "no";
//if the client is allowed to choose their team, instead of
having
@@ -283,12 +284,16 @@
choices.push_back((**side)["name"]);
}
+ std::string color =
(*sides_list[side_choice])["colour"];
+ if (color.empty())
+ color =
lexical_cast<std::string>(side_choice+1);
+
std::vector<gui::preview_pane* > preview_panes;
leader_preview_pane leader_selector(disp(),
- possible_sides);
+ possible_sides, color);
preview_panes.push_back(&leader_selector);
- const int res = gui::show_dialog(disp(), NULL, "",
_("Choose your side:"),
+ const int res = gui::show_dialog(disp(), NULL,
_("Choose your faction:"), _("Starting position: ") +
lexical_cast<std::string>(side_choice+1),
gui::OK_CANCEL, &choices,
&preview_panes);
if(res < 0) {
set_result(QUIT);
Modified: trunk/src/multiplayer_wait.hpp
URL:
http://svn.gna.org/viewcvs/wesnoth/trunk/src/multiplayer_wait.hpp?rev=27851&r1=27850&r2=27851&view=diff
==============================================================================
--- trunk/src/multiplayer_wait.hpp (original)
+++ trunk/src/multiplayer_wait.hpp Tue Jul 8 22:13:22 2008
@@ -49,7 +49,7 @@
{
public:
leader_preview_pane(game_display& disp,
- const config::child_list& side_list);
+ const config::child_list& side_list, const
std::string& color);
bool show_above() const;
bool left_side() const;
@@ -63,6 +63,7 @@
virtual void process_event();
const config::child_list side_list_;
+ const std::string color_;
gui::combo leader_combo_; // Must appear before the
leader_list_manager
gui::combo gender_combo_; // Must appear before the
leader_list_manager
leader_list_manager leaders_;
_______________________________________________
Wesnoth-commits mailing list
[email protected]
https://mail.gna.org/listinfo/wesnoth-commits