X-Git-Url: https://git.localhorst.tv/?a=blobdiff_plain;f=src%2Fstandalone%2FMasterState.cpp;h=9d95966953590d7b5ab146f36cb4439b64f68505;hb=7e782291e0ce39eb2d4e8c1df28f682c313e6f8d;hp=81994142cb8981c548550a8e9e588f2ba67668fa;hpb=a26ca06878d45d3ce77cbc28b574f2553e121944;p=blank.git diff --git a/src/standalone/MasterState.cpp b/src/standalone/MasterState.cpp index 8199414..9d95966 100644 --- a/src/standalone/MasterState.cpp +++ b/src/standalone/MasterState.cpp @@ -23,6 +23,7 @@ MasterState::MasterState( , env(env) , shapes() , block_types() +, models() , save(save) , world(block_types, wc) , spawn_index(world.Chunks().MakeIndex(wc.spawn, 3)) @@ -35,17 +36,18 @@ MasterState::MasterState( , generator(gc) , chunk_loader(world.Chunks(), generator, save) , chunk_renderer(player.GetChunks()) -, skeletons() -, spawner(world, skeletons, env.rng) +, spawner(world, models, env.rng) , sky(env.loader.LoadCubeMap("skybox")) , preload(env, chunk_loader, chunk_renderer) , unload(env, world.Chunks(), save) { TextureIndex tex_index; env.loader.LoadShapes("default", shapes); env.loader.LoadBlockTypes("default", block_types, tex_index, shapes); - skeletons.Load(shapes); - spawner.LimitSkeletons(0, skeletons.size()); - spawner.LoadTextures(tex_index); + env.loader.LoadModels("default", models, tex_index, shapes); + if (models.size() < 2) { + throw std::runtime_error("need at least two models to run"); + } + spawner.LimitModels(0, models.size()); interface.SetInventorySlots(block_types.size() - 1); generator.LoadTypes(block_types); chunk_renderer.LoadTextures(env.loader, tex_index);