Cleaned up all the places I was doing push_back({constructorvar1, constructorvar2}) to use emplace_back(constructorvar1, constructorvar2) every other use should be only for actually copying.
This commit is contained in:
parent
18a5f6bfa9
commit
3344181a47
6 changed files with 18 additions and 23 deletions
|
@ -10,22 +10,20 @@ LevelManager::LevelManager() {
|
|||
}
|
||||
|
||||
size_t LevelManager::create_level() {
|
||||
GameLevel level;
|
||||
level.index = $levels.size();
|
||||
auto world = make_shared<DinkyECS::World>();
|
||||
save::load_configs(*world);
|
||||
|
||||
level.world = make_shared<DinkyECS::World>();
|
||||
save::load_configs(*level.world);
|
||||
auto map = make_shared<Map>(GAME_MAP_X, GAME_MAP_Y);
|
||||
WorldBuilder builder(*map);
|
||||
builder.generate(*world);
|
||||
|
||||
level.map = make_shared<Map>(GAME_MAP_X, GAME_MAP_Y);
|
||||
WorldBuilder builder(*level.map);
|
||||
builder.generate(*level.world);
|
||||
size_t index = $levels.size();
|
||||
|
||||
level.lights = make_shared<LightRender>(level.map->width(), level.map->height());
|
||||
$levels.emplace_back(index, map, world,
|
||||
make_shared<LightRender>(map->width(), map->height()));
|
||||
|
||||
$levels.push_back(level);
|
||||
|
||||
dbc::check(level.index == $levels.size() - 1, "Level index is not the same as $levels.size() - 1, off by one error");
|
||||
return level.index;
|
||||
dbc::check(index == $levels.size() - 1, "Level index is not the same as $levels.size() - 1, off by one error");
|
||||
return index;
|
||||
}
|
||||
|
||||
GameLevel &LevelManager::next() {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue