[Scummvm-tracker] [ScummVM] #10860: QFG4: Lock up when casting Trigger after Summon Staff
ScummVM
trac at scummvm.org
Mon Jan 7 17:18:36 CET 2019
#10860: QFG4: Lock up when casting Trigger after Summon Staff
--------------------------------+----------------------------
Reporter: tomasz89 | Owner: (none)
Type: defect | Status: new
Priority: normal | Component: Engine: SCI
Resolution: | Keywords: SCI32 original
Game: Quest for Glory 4 |
--------------------------------+----------------------------
Comment (by Vhati):
I patched them to super::dispose() always, and that made both spells'
effects consistently visible.
Another bug.
The cursor lingers after the first casting.
Then it advances after the second casting.
I don't know why they're different.
Somehow it's not getting cached or the cache is erased.
\\
\\
handsOff() calls proc0_7() to cache the cursor and sets global438=1 to
ensure that consecutive handsOff() calls don't re-cache.
script 0 - proc0_7()
{{{
(procedure (proc0_7)
(if
(not
# Open, Trigger, Fetch are ALWAYS exempted!?
(proc64999_5 ((User curEvent?) message?) 80 82 87)
)
(if (g69_mainIconBar curIcon?)
(= gl204_myCachedCursor (g69_mainIconBar
curIcon?))
)
else
(= gl204_myCachedCursor 0)
)
)
}}}
\\
\\
handsOn() resets global438 and calls proc0_8(), which restores the cursor
and clears the cache.
script 0 - proc0_8()
{{{
(procedure (proc0_8)
(if g204_myCachedCursor
(g69_mainIconBar curIcon: g204_myCachedCursor)
(g1_Glory setCursor: (global69 getCursor:))
(= g204_myCachedCursor 0)
# If the cached icon was for the item button,
# but it's not showing an active item, advance the cursor.
(if
(and
(==
(g69_mainIconBar curIcon?)
(g69_mainIconBar at: 6)
)
(not (g69_mainIconBar curInvIcon?))
)
(g69_mainIconBar advanceCurIcon:)
)
)
)
}}}
--
Ticket URL: <https://bugs.scummvm.org/ticket/10860#comment:13>
ScummVM <https://bugs.scummvm.org>
ScummVM
More information about the Scummvm-tracker
mailing list