Unfortunately, the Scumm engine is still full of strcpy calls, although we tried to get rid of these in many of the other engines. I'll try to kill the other (numerous) use cases, too, but that needn't go into this PR.
The new GUI code has a variable of the exact same name in the base class scope. It does not cause issues for me, but I guess it would at least provoke a warning on some compiler. We really don't need to wait for that...
I also renamed the _savegameThumbnailPalette, just for consistency.
From now on we're reasoning in terms of text speed, just like the interpreter does,
which means: delay == 9 - speed.
This allows us to sync the internal GUI and the ScummVM GUI more easily, and
allows for a better correspondence to the original interpreters.
Make sure GM init is only done with an actual GM setup.
These are mostly the same checks we already do in the
engine, but it still seems better to do this
In SAMNMAX the player wouldn't properly distinguish between GM and AdLib, because the sound all have the same 'Midi' tag. Now, this gets tested in a way than works for all targets.
Set PuppetTransitions after move commands.
move does a force render. Combined with puppetTransitions it just waits and causes a timeout on the buildbot.
C.H.A.O.S. Continuum got stuck when trying to read PICT files. Now the
game interface will still react to user input.
Stubbing readPict makes lingo code not error out and continue.
The underlying `set the picture for cast` is already stubbed.
The game C.H.A.O.S. Continuum (D3, win) uses an XOBJ to play Quicktime Video.
Implements the methods that are called in game.
In contrast to the documentation the mMovieDone function returns true when the movie is _not_ done. Otherwise movies are disposed of while playing.
The videos don't use sound.