82 Commits

Author SHA1 Message Date
Martin Kiewitz
bd7d9965e9 SCI: removing unneeded call
was a left-over from debugging

svn-id: r53857
2010-10-26 20:56:55 +00:00
Martin Kiewitz
d078a4d235 SCI: fix gfx issues when giving out cards hoyle4
bit 2 actually triggers special drawing of cels in sierra sci

svn-id: r53855
2010-10-26 20:19:17 +00:00
Martin Kiewitz
9af803f575 SCI: kAnimate bit 2 is hoyle 4 exclusive
adjusted comments about that and also renamed the bit, also added additional TODO, because hoyle 4 has special code that gets into action, when bit 0 is not set, but bit 2 is

svn-id: r53853
2010-10-26 16:21:00 +00:00
Martin Kiewitz
a877ba0026 SCI: little cleanup kAnimate
svn-id: r53852
2010-10-26 15:29:04 +00:00
Martin Kiewitz
f9cb635b58 SCI: fixing bug #3091767 by reverting r52820
interpreters should get checked for that hoyle 4 code, comment added

svn-id: r53851
2010-10-26 14:42:24 +00:00
Martin Kiewitz
adcab043a2 SCI: fix comment in kAddToPic
svn-id: r53828
2010-10-25 16:33:04 +00:00
Martin Kiewitz
b581a866a9 SCI: fixing obvious kAddToPic regression
caused by r53068, triggered bug #3092840 (SQ5 genetix lab scaled incorrectly when laying course) - thx to digitall for bisect

svn-id: r53775
2010-10-24 21:49:22 +00:00
Max Horn
7642cd002a SCI: Fix warning about uninitialized variable
svn-id: r53140
2010-10-10 22:25:30 +00:00
Martin Kiewitz
6798b01569 SCI: add global scaling again to kAddToPic
fixes regression of r52887 - lb2 actors not scaled correctly bug #3083577

needs to get backported

svn-id: r53068
2010-10-08 10:35:25 +00:00
Martin Kiewitz
7105e294e2 SCI: little optimization in kAddToPic
definitely save to backport, belongs to r52887

svn-id: r52888
2010-09-25 19:43:36 +00:00
Martin Kiewitz
18cd3333c0 SCI: changes to kAddToPic
kAddToPic doesnt do loop/cel fixups, it also doesnt support global scaling and will only set nsRect on scaled Cels, not reusing fill() of kAnimate anymore, but doing those things separately

fixes kq6 - 2nd window shown instead of peppermint bush (bug #3070465)

should be save to backport

svn-id: r52887
2010-09-25 19:28:56 +00:00
Lars Skovlund
0e86f6aa61 Make r52818 general on trunk
svn-id: r52820
2010-09-20 18:45:52 +00:00
Lars Skovlund
bd9f9bb06e SCI: Handle bit 2 of scaleSignal by not updating nsRect values when
it's set. Currently game-specific for Hoyle4; fixes bug #3038424. But
other SCI1.1 games should be tested with a general version of this to
see whether it fixes relevant bugs.

svn-id: r52818
2010-09-20 18:31:59 +00:00
Martin Kiewitz
d5d5dde56b SCI: dont do global scaling on non-scaleable views
lb2floppy: scripts get confused in the rat scene, when scaleX/Y are set with applied global scaling. This results in kInitBresen to get called almost endlessly, which results in ego slowing down to a crawl and not being able to reach the upper right exit - fixes bug #3050606

svn-id: r52559
2010-09-05 12:55:15 +00:00
Filippos Karapetis
9096848e4b SCI: Throttle the invocations of Engine::shouldQuit()
SCI constantly invoked Engine::shouldQuit(), which in
turn called 2 virtual functions. This added a significant
overhead, as this was called constantly without any
throttling whatsoever. Now, the invocation of shouldQuit()
is throttled to be on each frame update (i.e. at a rate of
60fps). Thanks to wjp for profiling this.

svn-id: r52431
2010-08-29 00:39:33 +00:00
Martin Kiewitz
6de3b6c55c SCI: adding detection for freddy pharkas "fred"
fixes blop not appearing during intro song, because game thought we were too slow (bug #3051514)

svn-id: r52392
2010-08-25 17:49:03 +00:00
Martin Kiewitz
06139e2be7 SCI: properly doing kAnimate loop/cel fixing
really weird, but it works now. Bug #3037578 (kq5 trunk), bug #3043286 (lb1 knight)

svn-id: r52007
2010-08-11 21:47:44 +00:00
Martin Kiewitz
7e3b2bedb6 SCI: revert r51969
broke laura bow 1, need to figure out whats exactly wrong

svn-id: r52004
2010-08-11 21:16:45 +00:00
Martin Kiewitz
ab35ae03c3 SCI: kAddToPic only wrote nsRect in sci1.1
fixes regression of r51952 and bug #3042957

svn-id: r51971
2010-08-11 12:01:56 +00:00
Martin Kiewitz
42c3cc4c08 SCI: kAnimate invalid loop/cels now correctly fixed
fixes kq5 trunk getting closed again during intro - is actually a script bug that sets cel to some really high number - bug #3037578, may also fix other similar issues

svn-id: r51969
2010-08-11 05:20:29 +00:00
Martin Kiewitz
a201b2e506 SCI: kAddToPic(list) set fixed priority flag
svn-id: r51954
2010-08-10 17:16:38 +00:00
Martin Kiewitz
684afb6236 SCI: add scaling support to kAddToPic
fixes laurabow2 bug #3041226

svn-id: r51952
2010-08-10 15:54:34 +00:00
Martin Kiewitz
197f6c2228 SCI: adding workaround for kq5
when giving the tambourine to the monster - bug #3041262

svn-id: r51950
2010-08-10 13:18:13 +00:00
Martin Kiewitz
dc08c733db SCI: adding jones/talkie speed throttler view
fixes bug #3038989, regression of r51544

svn-id: r51714
2010-08-03 20:46:28 +00:00
Martin Kiewitz
09f4562551 SCI: adding non-scaleable view capability
fixes laura bow 2 (especially floppy but CD is also affected somewhat by this)

svn-id: r51660
2010-08-02 21:04:09 +00:00
Martin Kiewitz
3e29e9ffae SCI: adding detection for benchmark views
and enable speed throttler when just one regular cel was drawn, fixes eco quest 2 ego getting light-speed fast in village (bug #3036805)

=this could cause regressions like disabled animations in games=

svn-id: r51544
2010-07-31 16:41:42 +00:00
Martin Kiewitz
e40ee138af SCI: kAnimate - limit update of nsRect when scaled
only set nsRect when being drawn later (scaled only), fixes sq5 instant-death in elevator shaft

svn-id: r51534
2010-07-31 08:05:23 +00:00
Martin Kiewitz
5dac7ba6ba SCI: fix kAddToPic called with view data
and adding workaround for pq2 when showing windows with pictures
change to kAddToPic fixes bad coordinates of cels when restoring the game (should also fix lsl2)

svn-id: r51526
2010-07-31 00:48:03 +00:00
Johannes Schickel
fd0f5696a5 SCI: Add comment about stability requirements in makeSortedList.
svn-id: r51523
2010-07-30 23:24:45 +00:00
Martin Kiewitz
6b63c951eb SCI: updating screen within kAnimate as well - fixes pseudo hang in eq1 credits (bug #3036154)
svn-id: r51459
2010-07-29 10:48:54 +00:00
Martin Kiewitz
97b1cd34cf SCI: sci1.1 priority bands now changing in kDrawPic
fixes qfg3: right guard on top of the palace having wrong priority
fixes sq5 and all sorts of sci1.1 games: when loading wrong priority for some actors that fixed itself after one frame

svn-id: r51397
2010-07-27 23:20:43 +00:00
Filippos Karapetis
aa15d5fcd1 SCI: Remove sanity check introduced in rev 51154. When a node is deleted via kDeleteKey, the successor is set to NULL, thus list processing stops (which is what SSCI is doing).
svn-id: r51157
2010-07-22 18:14:43 +00:00
Filippos Karapetis
91e909a25c SCI: Added a sanity check for rev 51152. If a node has been deleted, it shouldn't have a successor node
svn-id: r51154
2010-07-22 17:53:32 +00:00
Filippos Karapetis
634d959897 SCI: Fixed the crash in LSL2, room 42 (when arriving at the island). kAnimate may refer to unfrozen objects which have been deleted, thus handle that case accordingly.
svn-id: r51152
2010-07-22 17:25:21 +00:00
Max Horn
b743fcc9f5 SCI: Rename listEntry -> 'it' for better readability
svn-id: r50498
2010-06-29 14:54:47 +00:00
Max Horn
c8dca083d8 SCI: Simplify List::iterator usage in GfxAnimate
svn-id: r50497
2010-06-29 14:54:31 +00:00
Max Horn
32b69ccd9d SCI: Simplify GfxAnimate code, get rid of _listData
svn-id: r50496
2010-06-29 14:54:15 +00:00
Martin Kiewitz
bc77740306 SCI: kAnimate resetting _lastCastCount all the time
svn-id: r50453
2010-06-28 18:07:40 +00:00
Max Horn
9f48a37671 SCI: Add const qualifiers to many GfxView methods and their return values.
This helps to ensure proper data encapsulation.
Also reformatted some overlong comments to 80 chars per line, and
fixed some other code formatting issues.

svn-id: r50421
2010-06-28 11:20:14 +00:00
Willem Jan Palenstijn
af755b0b3d Further improve readability
svn-id: r50345
2010-06-26 21:36:25 +00:00
Willem Jan Palenstijn
caded4f892 Improve readability
svn-id: r50340
2010-06-26 20:28:42 +00:00
Filippos Karapetis
aedc77f0bd When loading a game, stop all running VMs recursively, and also stop kAnimate's current recursion. This fixes the invalid execution stack frame in SQ1, when loading from the death screen after dying from the acid drops in Kerona. This should also fix the invalid hunk pointers, thus the warning about invalid hunk pointers has been turned into an error, as it shouldn't occur anymore
svn-id: r50277
2010-06-25 17:25:00 +00:00
Martin Kiewitz
51ba34df0e SCI: we extended the showBits() rect all the way depending on where the object moved, fixed - fixes kq6cd flickering coin and pq1 flickering locker issue
svn-id: r50190
2010-06-23 20:13:33 +00:00
Filippos Karapetis
0a102981f0 Moved the SelectorCache struct inside selector.h, where it belongs, and fixed some header dependencies in the process
svn-id: r50183
2010-06-23 15:23:37 +00:00
Martin Kiewitz
c1d3fd670c SCI: global scaling implemented (hopefully, i'm not sure if it works 100% :P) thx to waltervn for telling me the vocab 994 stuff used for disassembly
svn-id: r50181
2010-06-23 14:06:31 +00:00
Martin Kiewitz
eeba2812c1 SCI: adding some more global scaling code, adding vanishingY and vanishingX as selectors
svn-id: r50180
2010-06-23 13:42:09 +00:00
Martin Kiewitz
3bc011357b SCI: some initial work on global scaling
svn-id: r50179
2010-06-23 12:58:14 +00:00
Martin Kiewitz
7ce739f51b SCI: kPalVary - cleanup and some more code
svn-id: r50081
2010-06-20 15:01:31 +00:00
Filippos Karapetis
680f7c897a Fixed a problem in kAnimate which occurred when a list was modified by a call (e.g. in KQ1 demo, PQ2)
svn-id: r50022
2010-06-18 15:40:18 +00:00
Filippos Karapetis
01d53a6216 Disabled two cases of findObjectByName() in SCI0 early games
svn-id: r49639
2010-06-13 22:01:10 +00:00