Author: zaroth
Date: Thu Jun 9 11:53:10 2011
New Revision: 49819
URL: http://svn.gna.org/viewcvs/wesnoth?rev=49819&view=rev
Log:
Added exit-at-end and turns options to commandline_options
Modified:
trunk/src/commandline_options.cpp
trunk/src/commandline_options.hpp
trunk/src/game_controller.cpp
trunk/src/tests/test_commandline_options.cpp
Modified: trunk/src/commandline_options.cpp
URL:
http://svn.gna.org/viewcvs/wesnoth/trunk/src/commandline_options.cpp?rev=49819&r1=49818&r2=49819&view=diff
==============================================================================
--- trunk/src/commandline_options.cpp (original)
+++ trunk/src/commandline_options.cpp Thu Jun 9 11:53:10 2011
@@ -63,8 +63,10 @@
multiplayer_algorithm(),
multiplayer_controller(),
multiplayer_era(),
+ multiplayer_exit_at_end(),
multiplayer_label(),
multiplayer_parm(),
+ multiplayer_scenario(),
multiplayer_side(),
multiplayer_turns(),
max_fps(),
@@ -170,7 +172,9 @@
multiplayer_opts.add_options()
("multiplayer,m", "Starts a multiplayer game. There are
additional options that can be used as explained below:")
("ai-config", po::value<std::vector<std::string>
>()->composing(), "arg should have format side:value\nselects a configuration
file to load for this side.")
+ ("exit-at-end", "exit Wesnoth at the end of the scenario.")
("nogui", "runs the game without the GUI.")
+ ("turns", po::value<std::string>(), "sets the number of turns.
The default is \"50\".")
;
po::options_description preprocessor_opts("Preprocessor mode options");
@@ -233,6 +237,8 @@
#endif
if (vm.count("editor"))
editor = vm["editor"].as<std::string>();
+ if (vm.count("exit-at-end"))
+ multiplayer_exit_at_end = true;
if (vm.count("fps"))
fps = true;
if (vm.count("fullscreen"))
@@ -313,6 +319,8 @@
server = vm["server"].as<std::string>();
if (vm.count("test"))
test = vm["test"].as<std::string>();
+ if (vm.count("turns"))
+ multiplayer_turns = vm["turns"].as<std::string>();
if (vm.count("smallgui"))
smallgui = true;
if (vm.count("validcache"))
Modified: trunk/src/commandline_options.hpp
URL:
http://svn.gna.org/viewcvs/wesnoth/trunk/src/commandline_options.hpp?rev=49819&r1=49818&r2=49819&view=diff
==============================================================================
--- trunk/src/commandline_options.hpp (original)
+++ trunk/src/commandline_options.hpp Thu Jun 9 11:53:10 2011
@@ -84,10 +84,14 @@
boost::optional<std::vector<boost::tuple<int, std::string> > >
multiplayer_controller;
/// Non-empty if --era was given on the command line. Dependant on
--multiplayer.
boost::optional<std::string> multiplayer_era;
+ /// True if --exit-at-and was given on the command line. Dependant on
--multiplayer.
+ bool multiplayer_exit_at_end;
/// Non-empty if --label was given on the command line. Dependant on
--multiplayer.
boost::optional<std::string> multiplayer_label;
/// Non-empty if --parm was given on the command line. Vector of pairs
(side number, parm name, parm value). Dependant on --multiplayer.
boost::optional<std::vector<boost::tuple<int, std::string, std::string>
> > multiplayer_parm;
+ /// Non-empty if --scenario was given on the command line. Dependant on
--multiplayer.
+ boost::optional<std::string> multiplayer_scenario;
/// Non-empty if --side was given on the command line. Vector of pairs
(side number, faction id). Dependant on --multiplayer.
boost::optional<std::vector<boost::tuple<int, std::string> > >
multiplayer_side;
/// Non-empty if --turns was given on the command line. Dependant on
--multiplayer.
Modified: trunk/src/game_controller.cpp
URL:
http://svn.gna.org/viewcvs/wesnoth/trunk/src/game_controller.cpp?rev=49819&r1=49818&r2=49819&view=diff
==============================================================================
--- trunk/src/game_controller.cpp (original)
+++ trunk/src/game_controller.cpp Thu Jun 9 11:53:10 2011
@@ -464,6 +464,11 @@
size_t sides_counted = 0;
+ if (cmdline_opts_.multiplayer_exit_at_end)
+ game_config::exit_at_end = true;
+ if (cmdline_opts_.multiplayer_turns)
+ turns = *cmdline_opts_.multiplayer_turns;
+
for(++arg_; arg_ < argc_; ++arg_) {
const std::string val(argv_[arg_]);
if(val.empty()) {
@@ -490,8 +495,6 @@
if(name == "--scenario") {
scenario = value;
- } else if(name == "--turns") {
- turns = value;
} else if(name == "--era") {
era = value;
} else if(name == "--label") {
@@ -516,10 +519,6 @@
std::cerr << "unrecognized option: '" << name
<< "'\n";
return false;
}
- } else {
- if (val == "--exit-at-end") {
- game_config::exit_at_end = true;
- }
}
}
Modified: trunk/src/tests/test_commandline_options.cpp
URL:
http://svn.gna.org/viewcvs/wesnoth/trunk/src/tests/test_commandline_options.cpp?rev=49819&r1=49818&r2=49819&view=diff
==============================================================================
--- trunk/src/tests/test_commandline_options.cpp (original)
+++ trunk/src/tests/test_commandline_options.cpp Thu Jun 9 11:53:10 2011
@@ -53,6 +53,7 @@
BOOST_CHECK(!co.multiplayer_algorithm);
BOOST_CHECK(!co.multiplayer_controller);
BOOST_CHECK(!co.multiplayer_era);
+ BOOST_CHECK(!co.multiplayer_exit_at_end);
BOOST_CHECK(!co.multiplayer_label);
BOOST_CHECK(!co.multiplayer_parm);
BOOST_CHECK(!co.multiplayer_side);
@@ -80,6 +81,7 @@
BOOST_CHECK(!co.proxy_user);
BOOST_CHECK(!co.resolution);
BOOST_CHECK(!co.rng_seed);
+ BOOST_CHECK(!co.multiplayer_scenario);
BOOST_CHECK(!co.server);
BOOST_CHECK(!co.screenshot);
BOOST_CHECK(!co.screenshot_map_file);
@@ -134,8 +136,10 @@
BOOST_CHECK(!co.multiplayer_algorithm);
BOOST_CHECK(!co.multiplayer_controller);
BOOST_CHECK(!co.multiplayer_era);
+ BOOST_CHECK(!co.multiplayer_exit_at_end);
BOOST_CHECK(!co.multiplayer_label);
BOOST_CHECK(!co.multiplayer_parm);
+ BOOST_CHECK(!co.multiplayer_scenario);
BOOST_CHECK(!co.multiplayer_side);
BOOST_CHECK(!co.multiplayer_turns);
BOOST_CHECK(!co.max_fps);
@@ -194,6 +198,7 @@
"--debug-dot-level=dlfoo",
#endif
"--editor=editfoo",
+ "--exit-at-end",
"--fps",
"--fullscreen",
"--gunzip=gunzipfoo.gz",
@@ -231,6 +236,7 @@
"--server=servfoo",
"--smallgui",
"--test=testfoo",
+ "--turns=42",
"--validcache",
"--version",
"--windowed",
@@ -278,10 +284,12 @@
BOOST_CHECK(!co.multiplayer_algorithm);
BOOST_CHECK(!co.multiplayer_controller);
BOOST_CHECK(!co.multiplayer_era);
+ BOOST_CHECK(co.multiplayer_exit_at_end);
BOOST_CHECK(!co.multiplayer_label);
BOOST_CHECK(!co.multiplayer_parm);
+ BOOST_CHECK(!co.multiplayer_scenario);
BOOST_CHECK(!co.multiplayer_side);
- BOOST_CHECK(!co.multiplayer_turns);
+ BOOST_CHECK(co.multiplayer_turns && *co.multiplayer_turns == "42");
BOOST_CHECK(co.max_fps && *co.max_fps == 100);
BOOST_CHECK(co.nocache);
BOOST_CHECK(co.nodelay);
@@ -354,8 +362,10 @@
BOOST_CHECK(!co.multiplayer_algorithm);
BOOST_CHECK(!co.multiplayer_controller);
BOOST_CHECK(!co.multiplayer_era);
+ BOOST_CHECK(!co.multiplayer_exit_at_end);
BOOST_CHECK(!co.multiplayer_label);
BOOST_CHECK(!co.multiplayer_parm);
+ BOOST_CHECK(!co.multiplayer_scenario);
BOOST_CHECK(!co.multiplayer_side);
BOOST_CHECK(!co.multiplayer_turns);
BOOST_CHECK(!co.max_fps);
_______________________________________________
Wesnoth-commits mailing list
[email protected]
https://mail.gna.org/listinfo/wesnoth-commits