Add --noaddons command line option.

This option prevents any add-ons from being loaded.
This commit is contained in:
Fabian Müller 2014-11-06 02:43:33 +01:00
parent fb793a10ce
commit ca0674d684
4 changed files with 9 additions and 1 deletions

View file

@ -380,6 +380,7 @@ Version 1.13.0-dev:
* Fix bug #21400: Use unit 'image' with higher priority than 'image_icon' for animation
frames with no specified image.
* New filesystem implementation based on boost filesystem
* Added "--noaddons" command-line argument, prevents any add-ons from being loaded.
* Added "--render-image" command-line argument, similar to --screenshot, but instead of a map,
it takes a wesnoth imagepath and generates at bitmap with the filters applied.
* New gettext implementation based on boost locale. This raises min boost requirement to 1.48,

View file

@ -105,6 +105,7 @@ commandline_options::commandline_options (const std::vector<std::string>& args)
multiplayer_side(),
multiplayer_turns(),
max_fps(),
noaddons(false),
nocache(false),
nodelay(false),
nogui(false),
@ -173,6 +174,7 @@ commandline_options::commandline_options (const std::vector<std::string>& args)
("help,h", "prints this message and exits.")
("language,L", po::value<std::string>(), "uses language <arg> (symbol) this session. Example: --language ang_GB@latin")
("load,l", po::value<std::string>(), "loads the save <arg> from the standard save game directory. When launching the map editor via -e, the map <arg> is loaded, relative to the current directory. If it is a directory, the editor will start with a load map dialog opened there.")
("noaddons", "disables the loading of all add-ons.")
("nocache", "disables caching of game data.")
("nodelay", "runs the game without any delays.")
("nomusic", "runs the game without music.")
@ -367,6 +369,8 @@ commandline_options::commandline_options (const std::vector<std::string>& args)
multiplayer_repeat = vm["multiplayer-repeat"].as<unsigned int>();
if (vm.count("new-widgets"))
new_widgets = true;
if (vm.count("noaddons"))
noaddons = true;
if (vm.count("nocache"))
nocache = true;
if (vm.count("nodelay"))

View file

@ -124,6 +124,8 @@ public:
boost::optional<std::string> multiplayer_turns;
/// Max FPS specified by --max-fps option.
boost::optional<int> max_fps;
/// True if --noaddons was given on the command line. Disables the loading of all add-ons.
bool noaddons;
/// True if --nocache was given on the command line. Disables cache usage.
bool nocache;
/// True if --nodelay was given on the command line.

View file

@ -138,7 +138,8 @@ void game_config_manager::load_game_config(FORCE_RELOAD_CONFIG force_reload,
config core_terrain_rules;
core_terrain_rules.splice_children(game_config_, "terrain_graphics");
load_addons_cfg();
if (!cmdline_opts_.noaddons)
load_addons_cfg();
// If multiplayer campaign is being loaded, [scenario] tags should
// become [multiplayer] tags and campaign's id should be added to them