bindings bug fix

If binding was blocked in one world, it stayed being blocked in other.
This commit is contained in:
ChancellorIkseew 2024-11-02 05:09:55 +10:00
parent 63304712f3
commit 7763157cdc
3 changed files with 10 additions and 0 deletions

View File

@ -60,6 +60,8 @@ static int l_close_world(lua::State* L) {
if (save_world) {
controller->saveWorld();
}
// unblock all bindings
Events::enableBindings();
// destroy LevelScreen and run quit callbacks
engine->setScreen(nullptr);
// create and go to menu screen

View File

@ -231,3 +231,10 @@ void Events::loadBindings(
}
}
}
void Events::enableBindings() {
for (auto& entry : bindings) {
auto& binding = entry.second;
binding.enable = true;
}
}

View File

@ -60,4 +60,5 @@ public:
const std::string& filename, const std::string& source,
BindType bindType
);
static void enableBindings();
};