First working console

This commit is contained in:
Lion Kortlepel
2021-09-16 03:40:24 +02:00
parent ba0678dade
commit 2cf368c2b0
5 changed files with 33 additions and 18 deletions

View File

@@ -57,8 +57,16 @@ TConsole::TConsole() {
Application::GracefullyShutdown();
} else if (cmd == "clear" || cmd == "cls") {
// TODO: clear screen
mLuaEngine.EnqueueScript(mStateId, std::make_shared<std::string>(cmd));
} else {
while (!mLuaEngine) {
std::this_thread::sleep_for(std::chrono::milliseconds(10));
}
auto Future = mLuaEngine->EnqueueScript(mStateId, std::make_shared<std::string>(cmd));
// wait for it to finish
while (!Future->Ready) {
std::this_thread::sleep_for(std::chrono::milliseconds(10));
}
mCommandline.write("Result ready.");
}
};
}
@@ -75,4 +83,5 @@ void TConsole::WriteRaw(const std::string& str) {
void TConsole::InitializeLuaConsole(TLuaEngine& Engine) {
Engine.EnsureStateExists(mStateId, "<>");
mLuaEngine = &Engine;
}