aboutsummaryrefslogtreecommitdiff
path: root/engines/sci/graphics/animate.cpp
AgeCommit message (Collapse)Author
2010-10-08SCI: add global scaling again to kAddToPicMartin Kiewitz
fixes regression of r52887 - lb2 actors not scaled correctly bug #3083577 needs to get backported svn-id: r53068
2010-09-25SCI: little optimization in kAddToPicMartin Kiewitz
definitely save to backport, belongs to r52887 svn-id: r52888
2010-09-25SCI: changes to kAddToPicMartin Kiewitz
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-20Make r52818 general on trunkLars Skovlund
svn-id: r52820
2010-09-20SCI: Handle bit 2 of scaleSignal by not updating nsRect values whenLars Skovlund
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-05SCI: dont do global scaling on non-scaleable viewsMartin Kiewitz
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-08-29SCI: Throttle the invocations of Engine::shouldQuit()Filippos Karapetis
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-25SCI: adding detection for freddy pharkas "fred"Martin Kiewitz
fixes blop not appearing during intro song, because game thought we were too slow (bug #3051514) svn-id: r52392
2010-08-11SCI: properly doing kAnimate loop/cel fixingMartin Kiewitz
really weird, but it works now. Bug #3037578 (kq5 trunk), bug #3043286 (lb1 knight) svn-id: r52007
2010-08-11SCI: revert r51969Martin Kiewitz
broke laura bow 1, need to figure out whats exactly wrong svn-id: r52004
2010-08-11SCI: kAddToPic only wrote nsRect in sci1.1Martin Kiewitz
fixes regression of r51952 and bug #3042957 svn-id: r51971
2010-08-11SCI: kAnimate invalid loop/cels now correctly fixedMartin Kiewitz
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-10SCI: kAddToPic(list) set fixed priority flagMartin Kiewitz
svn-id: r51954
2010-08-10SCI: add scaling support to kAddToPicMartin Kiewitz
fixes laurabow2 bug #3041226 svn-id: r51952
2010-08-10SCI: adding workaround for kq5Martin Kiewitz
when giving the tambourine to the monster - bug #3041262 svn-id: r51950
2010-08-03SCI: adding jones/talkie speed throttler viewMartin Kiewitz
fixes bug #3038989, regression of r51544 svn-id: r51714
2010-08-02SCI: adding non-scaleable view capabilityMartin Kiewitz
fixes laura bow 2 (especially floppy but CD is also affected somewhat by this) svn-id: r51660
2010-07-31SCI: adding detection for benchmark viewsMartin Kiewitz
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-31SCI: kAnimate - limit update of nsRect when scaledMartin Kiewitz
only set nsRect when being drawn later (scaled only), fixes sq5 instant-death in elevator shaft svn-id: r51534
2010-07-31SCI: fix kAddToPic called with view dataMartin Kiewitz
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-30SCI: Add comment about stability requirements in makeSortedList.Johannes Schickel
svn-id: r51523
2010-07-29SCI: updating screen within kAnimate as well - fixes pseudo hang in eq1 ↵Martin Kiewitz
credits (bug #3036154) svn-id: r51459
2010-07-27SCI: sci1.1 priority bands now changing in kDrawPicMartin Kiewitz
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-22SCI: Remove sanity check introduced in rev 51154. When a node is deleted via ↵Filippos Karapetis
kDeleteKey, the successor is set to NULL, thus list processing stops (which is what SSCI is doing). svn-id: r51157
2010-07-22SCI: Added a sanity check for rev 51152. If a node has been deleted, it ↵Filippos Karapetis
shouldn't have a successor node svn-id: r51154
2010-07-22SCI: Fixed the crash in LSL2, room 42 (when arriving at the island). ↵Filippos Karapetis
kAnimate may refer to unfrozen objects which have been deleted, thus handle that case accordingly. svn-id: r51152
2010-06-29SCI: Rename listEntry -> 'it' for better readabilityMax Horn
svn-id: r50498
2010-06-29SCI: Simplify List::iterator usage in GfxAnimateMax Horn
svn-id: r50497
2010-06-29SCI: Simplify GfxAnimate code, get rid of _listDataMax Horn
svn-id: r50496
2010-06-28SCI: kAnimate resetting _lastCastCount all the timeMartin Kiewitz
svn-id: r50453
2010-06-28SCI: Add const qualifiers to many GfxView methods and their return values.Max Horn
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-26Further improve readabilityWillem Jan Palenstijn
svn-id: r50345
2010-06-26Improve readabilityWillem Jan Palenstijn
svn-id: r50340
2010-06-25When loading a game, stop all running VMs recursively, and also stop ↵Filippos Karapetis
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-23SCI: we extended the showBits() rect all the way depending on where the ↵Martin Kiewitz
object moved, fixed - fixes kq6cd flickering coin and pq1 flickering locker issue svn-id: r50190
2010-06-23Moved the SelectorCache struct inside selector.h, where it belongs, and ↵Filippos Karapetis
fixed some header dependencies in the process svn-id: r50183
2010-06-23SCI: global scaling implemented (hopefully, i'm not sure if it works 100% ↵Martin Kiewitz
:P) thx to waltervn for telling me the vocab 994 stuff used for disassembly svn-id: r50181
2010-06-23SCI: adding some more global scaling code, adding vanishingY and vanishingX ↵Martin Kiewitz
as selectors svn-id: r50180
2010-06-23SCI: some initial work on global scalingMartin Kiewitz
svn-id: r50179
2010-06-20SCI: kPalVary - cleanup and some more codeMartin Kiewitz
svn-id: r50081
2010-06-18Fixed a problem in kAnimate which occurred when a list was modified by a ↵Filippos Karapetis
call (e.g. in KQ1 demo, PQ2) svn-id: r50022
2010-06-13Disabled two cases of findObjectByName() in SCI0 early gamesFilippos Karapetis
svn-id: r49639
2010-06-10Use the SELECTOR() macro for readabilityFilippos Karapetis
svn-id: r49563
2010-06-09Globals from script 0 are now initialized in script_init_engine(), and are ↵Filippos Karapetis
accessed from the relevant variables pointer. Removed direct reference to script 0 from the engine state svn-id: r49536
2010-05-29Mass renaming of selector-related functions, and removed some defines which ↵Filippos Karapetis
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-24SCI: sort according to original order in kAnimate, when y and z are the same ↵Martin Kiewitz
- fixes iceman half-open compartment in room 35 svn-id: r49189
2010-05-15SCI: SCI_SCREEN_MASK_* now GFX_SCREEN_MASK_*, using enum - added new enum ↵Martin Kiewitz
GFX_SCREEN_UPSCALED_* svn-id: r49039
2010-04-30SCI: animate cleanupMartin Kiewitz
svn-id: r48876
2010-04-24SCI: reverting r48787 port updates were actually introduced (heard that ↵Martin Kiewitz
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-24SCI: r48786 port updates were actually introduced during SCI01, qfg2 and ↵Martin Kiewitz
xmas90ega only. We enable port updates only for non-multilingual SCI01 games now - fixes percentage bar for qfg1 japanese as well svn-id: r48787