Create Engine: added method to get active mod data

This commit is contained in:
Charles Dang 2016-09-02 12:53:50 +11:00
parent fd53599f77
commit 8b60904074
2 changed files with 13 additions and 0 deletions

View file

@ -988,6 +988,18 @@ std::vector<std::string>& create_engine::active_mods()
return state_.mp_settings().active_mods;
}
std::vector<create_engine::extras_metadata_ptr> create_engine::active_mods_data()
{
const std::vector<extras_metadata_ptr>& mods = get_const_extras_by_type(MP_EXTRA::MOD);
std::vector<extras_metadata_ptr> data_vec;
std::copy_if(mods.begin(), mods.end(), std::back_inserter(data_vec), [this](extras_metadata_ptr mod) {
return dependency_manager_->is_modification_active(mod->id);
});
return data_vec;
}
const config& create_engine::curent_era_cfg() const
{
int era_index = current_level().allow_era_choice() ? current_era_index_ : 0;

View file

@ -261,6 +261,7 @@ public:
void init_active_mods();
std::vector<std::string>& active_mods();
std::vector<extras_metadata_ptr> active_mods_data();
const mp_game_settings& get_parameters();