add test.close_world(bool)

This commit is contained in:
MihailRis
2024-12-10 19:14:51 +03:00
parent 9b4dd8f65e
commit d3f74b56fa
8 changed files with 30 additions and 11 deletions
+3 -2
View File
@@ -54,8 +54,9 @@ void LevelController::update(float delta, bool input, bool pause) {
}
void LevelController::saveWorld() {
level->getWorld()->wfile->createDirectories();
logger.info() << "writing world";
auto world = level->getWorld();
logger.info() << "writing world '" << world->getName() << "'";
world->wfile->createDirectories();
scripting::on_world_save();
level->onSave();
level->getWorld()->write(level.get());
+1 -4
View File
@@ -69,10 +69,7 @@ static int l_close_world(lua::State* L) {
if (save_world) {
controller->saveWorld();
}
// destroy LevelScreen and run quit callbacks
engine->setScreen(nullptr);
// create and go to menu screen
engine->setScreen(std::make_shared<MenuScreen>(engine));
engine->onWorldClosed();
return 0;
}