X-Git-Url: http://git.localhorst.tv/?a=blobdiff_plain;f=src%2Fserver%2FServerState.cpp;h=3e2869fc56b1da8afec9c2faccaf71c9eed97593;hb=4e3afb4c7631591b80cb7740a9b6f46da69b7ae4;hp=23740be1b963e612253fe1e05e4942ffeb32421d;hpb=3a487f44c26f9bb9d1a1c831406b6497b2b3b425;p=blank.git diff --git a/src/server/ServerState.cpp b/src/server/ServerState.cpp index 23740be..3e2869f 100644 --- a/src/server/ServerState.cpp +++ b/src/server/ServerState.cpp @@ -21,20 +21,23 @@ ServerState::ServerState( : env(env) , shapes() , block_types() +, models() , world(block_types, wc) , generator(gc) , chunk_loader(world.Chunks(), generator, ws) -, skeletons() -, spawner(world, skeletons, env.rng) +, spawner(world, models, env.rng) , server(config.net, world, wc, ws) , loop_timer(16) { TextureIndex tex_index; env.loader.LoadShapes("default", shapes); - env.loader.LoadBlockTypes("default", block_types, tex_index); + env.loader.LoadBlockTypes("default", block_types, tex_index, shapes); + env.loader.LoadModels("default", models, tex_index, shapes); + if (models.size() < 2) { + throw std::runtime_error("need at least two models to run"); + } generator.LoadTypes(block_types); - skeletons.LoadHeadless(); - spawner.LimitSkeletons(1, skeletons.size()); - server.SetPlayerModel(skeletons[0]); + spawner.LimitModels(1, models.size()); + server.SetPlayerModel(models[0]); loop_timer.Start();