One more thing. I found Glest sometime stopped at TextRenderer2DGl::begin() called from Game::Renderer::renderTextShadow(). I think Renderer::renderConsole() makes "rendering" variable in textRenderer conflict. It calls renderTextShadow() after textRenderer->begin(). Right?
I think i have the same problem. You get it when you select a building and then rightclick somewhere on the ground (not only in tutorials).
glest.debug: shared_lib/sources/graphics/gl/text_renderer_gl.cpp:29: virtual void Shared::Graphics::Gl::TextRenderer2DGl::begin(const Shared::Graphics::Font2D*): Assertion `!rendering' failed.
Aborted
i was able to work around the problem with the ok messages.
source/glest_game/game/script_manager.cpp:
paste this
in the if-clause at line 102 ( if(!messageQueue.empty()) ):
if(messageQueue.size() > 1){
messageQueue.pop();
messageBox.setText(wrapString(lang.getScenarioString(messageQueue.front().getText()), messageWrapCount));
messageBox.setHeader(lang.getScenarioString(messageQueue.front().getHeader()));
}else{
messageBox.setText(wrapString(lang.getScenarioString(messageQueue.front().getText()), messageWrapCount));
messageBox.setHeader(lang.getScenarioString(messageQueue.front().getHeader()));
messageQueue.pop();
}
or use this patch in source/glest_game/game:
http://http://www1.inf.tu-dresden.de/~s1445051/rev173_script_manager.patchThe problem was a queue with only one element. You first delete it with pop and then tried to get the next with front which fails.
From my workaround i would expect the last message twice but it's all fine. Don't know why. My first thought was to move pop at the end of the if-clause but then you get the first message twice and the last is missing. That's somehow weird.