This is very likely my fuckup - when redoing the graphics system I removed all cases where flush() and so on was called because I was unhappy with them.
My rewrite aimed to make the graphics object deletable and recreatable. It should now be (relatively) easy to delete g_gr and immediately create it again - maybe not even this is necessary, as long as the surface cache is deleted and recreated and the screen object and the SDL Window we should be fine. It is important that the ImageCache should *not* be recreated as the UI relies on it being valid for all times. Oh, and there must not be any inMemoryImages in existance - we should be able to guarantee this in the menu, but maybe not in the game itself.
This is very likely my fuckup - when redoing the graphics system I removed all cases where flush() and so on was called because I was unhappy with them.
My rewrite aimed to make the graphics object deletable and recreatable. It should now be (relatively) easy to delete g_gr and immediately create it again - maybe not even this is necessary, as long as the surface cache is deleted and recreated and the screen object and the SDL Window we should be fine. It is important that the ImageCache should *not* be recreated as the UI relies on it being valid for all times. Oh, and there must not be any inMemoryImages in existance - we should be able to guarantee this in the menu, but maybe not in the game itself.