Fixed gui loop

svn-id: r3807
This commit is contained in:
Vincent Hamm 2002-03-24 00:44:28 +00:00
parent f5741df25c
commit 2a97cf0dde
2 changed files with 16 additions and 10 deletions

View file

@ -1072,7 +1072,7 @@ void Scumm::launch()
setupSound();
runScript(1,0,0,&_bootParam);
// runScript(1,0,0,&_bootParam);
// _scummTimer = 0;

24
sdl.cpp
View file

@ -952,12 +952,15 @@ int main(int argc, char* argv[]) {
scumm->_system = &_system;
scumm->launch();
_system.last_time = SDL_GetTicks();
scumm->runScript(1,0,0,&scumm->_bootParam);
// scumm->scummMain(argc, argv); // Todo: need to change that as well
gui.init(scumm); /* Reinit GUI after loading a game */
_system.last_time = SDL_GetTicks();
scumm->mainRun();
@ -1983,14 +1986,17 @@ void Scale_2xSaI (uint8 *srcPtr, uint32 srcPitch, uint8 * /* deltaPtr */,
int OSystem::waitTick(int delta)
{
updateScreen(scumm);
new_time = SDL_GetTicks();
waitForTimer(scumm, delta * 15 + last_time - new_time);
last_time = SDL_GetTicks();
if (gui._active) {
gui.loop();
delta = 5;
}
do
{
updateScreen(scumm);
new_time = SDL_GetTicks();
waitForTimer(scumm, delta * 15 + last_time - new_time);
last_time = SDL_GetTicks();
if (gui._active) {
gui.loop();
delta = 5;
}
}while(gui._active);
return(delta);
}