Patch #616092: Full Throttle dialog fix

svn-id: r5058
This commit is contained in:
James Brown 2002-10-01 09:27:09 +00:00
parent d6db8560c6
commit 4d24a0bfbe
4 changed files with 14 additions and 1 deletions

View File

@ -2077,6 +2077,12 @@ void Scumm::o6_verbOps()
VerbSlot *vs;
byte *ptr, op;
// Full Throttle implements conversation by creating new verbs, one
// for each option, but it never tells when to actually draw them.
if (_gameId == GID_FT)
_verbRedraw = true;
op = fetchScriptByte();
if (op == 196) {
_curVerb = pop();

View File

@ -756,7 +756,7 @@ public:
uint32 _IM00_offs, _PALS_offs;
//ender: fullscreen
bool _fullRedraw, _BgNeedsRedraw, _shakeEnabled;
bool _fullRedraw, _BgNeedsRedraw, _shakeEnabled, _verbRedraw;
bool _screenEffectFlag, _completeScreenRedraw;
int _cursorHotspotX, _cursorHotspotY, _cursorWidth, _cursorHeight;

View File

@ -471,6 +471,10 @@ int Scumm::scummLoop(int delta)
}
processDrawQue();
if (_verbRedraw)
redrawVerbs();
setActorRedrawFlags(true, true);
resetActorBgs();
@ -1480,6 +1484,8 @@ void Scumm::launch()
_maxHeapThreshold = 450000;
_minHeapThreshold = 400000;
_verbRedraw = false;
// Create a primary virtual screen
_videoBuffer = (byte *)calloc((_realWidth + 8) * _realHeight, 1);

View File

@ -31,6 +31,7 @@ void Scumm::redrawVerbs()
for (i = 0; i < _maxVerbs; i++)
drawVerb(i, 0);
verbMouseOver(0);
_verbRedraw = false;
}
void Scumm::checkExecVerbs()