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
Filippos Karapetis
eb4ec596cd
Use the SELECTOR() macro for readability
...
svn-id: r49563
2010-06-10 09:18:57 +00:00
Filippos Karapetis
536b2614e8
Globals from script 0 are now initialized in script_init_engine(), and are accessed from the relevant variables pointer. Removed direct reference to script 0 from the engine state
...
svn-id: r49536
2010-06-09 09:17:48 +00:00
Filippos Karapetis
67de5b1bd3
Mass renaming of selector-related functions, and removed some defines which were just cloaking functions with a different name
...
- GET_SEL32 -> readSelector
- GET_SEL32V -> readSelectorValue
- PUT_SEL32 -> writeSelector
- PUT_SEL32V -> writeSelectorValue
Also, changed some selector-related function names and variables to CamelCase
svn-id: r49317
2010-05-29 23:37:15 +00:00
Martin Kiewitz
e9db62b272
SCI: sort according to original order in kAnimate, when y and z are the same - fixes iceman half-open compartment in room 35
...
svn-id: r49189
2010-05-24 15:39:30 +00:00
Martin Kiewitz
59a255226f
SCI: SCI_SCREEN_MASK_* now GFX_SCREEN_MASK_*, using enum - added new enum GFX_SCREEN_UPSCALED_*
...
svn-id: r49039
2010-05-15 08:57:13 +00:00
Martin Kiewitz
beba3bf8a4
SCI: animate cleanup
...
svn-id: r48876
2010-04-30 15:08:51 +00:00
Martin Kiewitz
194bdd9b83
SCI: reverting r48787 port updates were actually introduced (heard that before) in SCI1. I used the outdated wiki before and that one lists qfg2 and xmas90ega being SCI01. They are actually SCI1
...
svn-id: r48789
2010-04-24 21:45:17 +00:00
Martin Kiewitz
cbd8faa82e
SCI: r48786 port updates were actually introduced during SCI01, qfg2 and xmas90ega only. We enable port updates only for non-multilingual SCI01 games now - fixes percentage bar for qfg1 japanese as well
...
svn-id: r48787
2010-04-24 20:41:26 +00:00
Martin Kiewitz
0422560c5c
SCI: beginUpdate()/endUpdate() of ports were introduced inside kAnimate() in SCI01 - fixes percentage bar not showing up in qfg1ega
...
svn-id: r48786
2010-04-24 20:08:03 +00:00
Filippos Karapetis
dd6fbd887d
Added a sanity check for the current list node inside GfxAnimate::invoke(). This should fix the crash in LSL2 as described in patch #2987942 , without adding additional lookups
...
svn-id: r48670
2010-04-16 12:58:14 +00:00
Max Horn
e45f0f309a
SCI: Remove EngineState::_kernel, use SciEngine::_kernel instead
...
svn-id: r48050
2010-02-13 17:45:40 +00:00
Max Horn
f86618f92b
SCI: Add a 'SELECTOR' macro
...
svn-id: r47918
2010-02-05 22:55:18 +00:00
Martin Kiewitz
71fb77a5aa
SCI: priority band specific stuff now gets called directly w/o SciGui
...
svn-id: r47916
2010-02-05 22:20:46 +00:00
Martin Kiewitz
f8f490c565
SCI: calling most of the cursor functions directly via _gfxCursor instead of SciGui/32
...
svn-id: r47903
2010-02-05 14:48:51 +00:00
Martin Kiewitz
6c204cc890
SCI: renamed class Cursor to GfxCursor
...
svn-id: r47902
2010-02-05 13:05:26 +00:00
Martin Kiewitz
cabd18da9e
SCI: renaming class View to GfxView
...
svn-id: r47891
2010-02-04 22:17:58 +00:00
Martin Kiewitz
c336204a3f
SCI: renaming Transitions to GfxTransitions
...
svn-id: r47890
2010-02-04 21:04:47 +00:00
Martin Kiewitz
72c2d360f7
SCI: renamed SciPalette to GfxPalette, Screen to GfxScreen, GfxPalette is now called directly w/o SciGui
...
svn-id: r47752
2010-01-31 16:21:11 +00:00
Martin Kiewitz
c991a5bceb
SCI: renamed SciGuiAnimate to GfxAnimate, moved code from SciGui into this class, now getting called directly
...
svn-id: r47751
2010-01-31 15:07:36 +00:00
Martin Kiewitz
7929255cd9
SCI: cleaned up graphics classes, removed gfx&windowmgr, added gfxports, gfxcompare, gfxpaint16, gfxcache. kernel uses gfxports directly w/o going through SciGui
...
svn-id: r47745
2010-01-31 12:35:15 +00:00
Max Horn
4ffec28103
SCI: Move selector stuff to new header; reorder k_argc & k_argp param of invoke_selector
...
svn-id: r47665
2010-01-29 11:03:54 +00:00