aboutsummaryrefslogtreecommitdiff
path: root/engines/scumm/script.cpp
AgeCommit message (Collapse)Author
2011-05-13SCUMM: Turned ResTypeData into a Common::Array<Resource>, subsuming its ↵Max Horn
_resource member
2011-05-13SCUMM: Remove ResTypeData::_numMax Horn
2011-05-13SCUMM: Add a Resource class, refactor res code around itMax Horn
2011-05-13SCUMM: Rename ResTypeData::num to _numMax Horn
2011-05-13SCUMM: Get rid of the MemBlkHeader hackMax Horn
This uncovered at least one potentially serious bug in the inventory code, which still needs to be investigated and fixed.
2011-05-13SCUMM: Refactor how resource (types) are srepresentedMax Horn
Previously, we had a couple of arrays of size N (where N = number of resource types), one for each attribute of a resource type (such as as the number of resources of that type. Now, we have one array of size N, whose elements are a record aggregating all the attributes of each resource type.
2011-05-12GIT: Clean up: Suppress SVN tags, now uselessstrangerke
2011-04-12COMMON: Replace MKID_BE by MKTAGMax Horn
MKID_BE relied on unspecified behavior of the C++ compiler, and as such was always a bit unsafe. The new MKTAG macro is slightly less elegant, but does no longer depend on the behavior of the compiler. Inspired by FFmpeg, which has an almost identical macro.
2011-04-05SCUMM: CleanupMax Horn
2011-04-05SCUMM: Fix off-by-one mistakes in out-of-bounds checks; name some constantsMax Horn
2011-04-04SCUMM: Check for cutSceneStackPointer underflowsMax Horn
2010-11-01ENGINES: Replace many printfs by warning/debug/debugNMax Horn
svn-id: r54031
2010-10-18SCUMM: Fix potential bug in ScummEngine::resStrLen.Max Horn
In particular, it might happen that ScummEngine::resStrLen is called while the _scriptPointer is stale. In that case, it would be working with the stale pointer. If the code calling it then uses fetchScript*() methods to read the string whose length was just computed, then it would read potentially *different* data (e.g. copyScriptString or loadPtrToResource could have been affected). I am not sure if this actually could have caused bugs somewhere; it might even be provable that a script relocation cannot happen in all places that invoke resStrLen. But for now it's much easier to make the code safe than to verify that theory ;). Also simplified some related code. svn-id: r53572
2010-10-18SCUMM: Move common code from ScummEngine::fetchScript* to new method.Max Horn
The new method is called refreshScriptPointer(). Also renamed getScriptEntryPoint() to resetScriptPointer() in an attempt to highlight both the similarity and difference between the two. svn-id: r53571
2010-08-16SCUMM: Move setResult/getResultPos to script_v5.cppMax Horn
svn-id: r52129
2010-08-11SCUMM: _resultVarNumber and related methods are specific to v0-v5Max Horn
svn-id: r51974
2010-01-28Fix regressions in Let's Explore the Jungle with Buzzy.Travis Howell
svn-id: r47622
2009-10-22Fix objects structure and object scripts in PCE version of Loom.Travis Howell
svn-id: r45335
2009-07-29SCUMM: Fix verb/sentence handling in Indy3 mac (there, a double click must ↵Max Horn
be used to trigger a verb/sentence) svn-id: r42907
2009-07-29SCUMM: Enable looping in Indy3Mac sound effectsMax Horn
svn-id: r42898
2009-07-29SCUMM: Rewrote ScummEngine::inventoryScriptIndy3Mac for clarityMax Horn
svn-id: r42889
2009-07-25Add patch #2821100 - MM C64 Objects / Verb fixes, with minor clean up applied.Travis Howell
svn-id: r42737
2009-07-15Hack is no longer required, due to revision 42498.Travis Howell
svn-id: r42499
2009-07-04Fix mismatching format arguments.Johannes Schickel
svn-id: r42105
2009-04-16SCUMM: Got rid of o6_invalidMax Horn
svn-id: r39957
2009-04-16SCUMM: Switched opcode tables to use Common::Functor0 (a bit like Kyra does it)Max Horn
svn-id: r39956
2009-03-20SCUMM: Split intern.h into multiple headersMax Horn
svn-id: r39567
2009-02-17Clear cutsceneOverride for all scripts (except current), when restarting any ↵Travis Howell
game, fixes bugs: #1923193 - MONKEY: cannot restart during the intro #2518226 - FT demo: debugger at end of demo svn-id: r38398
2009-02-13Revert talkspeed changes, while still only using the game specific talkspeed ↵Travis Howell
setting (if it exists). And clarify the talkspeed differences between games in the README. svn-id: r36299
2008-11-20cleanupMax Horn
svn-id: r35131
2008-11-15Fix for bug #2251765: FT: Talk speed inconsistencyMax Horn
svn-id: r35082
2008-09-17Patch #2060517: SCUMM: engine sets incorrect talkspeed valueMax Horn
svn-id: r34596
2008-08-06SCUMM: Renamed inventoryScript -> inventoryScriptIndy3MacMax Horn
svn-id: r33654
2007-09-19Merged common/stdafx.h into common/scummsys.h. All referencing files have ↵Nicola Mettifogo
been updated. svn-id: r28966
2007-06-29Introduced ClickArea enum, some related cleanup in runInputScript and ↵Max Horn
checkExecVerbs svn-id: r27778
2007-05-30Updated legal headers in source files, based on what Pidgin (the IM client ↵Max Horn
formerly knowns as Gaim) does; added new (incomplete) COPYRIGHT file; updated copyright dates in a few spots svn-id: r27024
2007-04-01Reverted my roomoffs changes (broke the Loom intro), and instead added the ↵Max Horn
constant RES_INVALID_OFFSET to indicate an invalid room offset svn-id: r26353
2007-03-04Fix script error in PC Engine version of Loom.Travis Howell
svn-id: r25958
2007-03-03Fix level selection in PC Engine version of Loom.Travis Howell
svn-id: r25954
2006-11-20Add stopObjectCode() differences in SCUMM 1 - 5 games. The nested script ↵Travis Howell
stack wasn't been checked. svn-id: r24751
2006-11-19The script freezeCount isn't used by SCUMM 1/2 games at allTravis Howell
svn-id: r24741
2006-10-30Fix bug #771499 - ZAK: Lotto numbers never picked. The freezeCount isn't ↵Travis Howell
checked in runScriptNested(), when restarting script in SCUMM 1/2. svn-id: r24575
2006-10-29SCUMM: The didexec flag did not exist in V0-V2; minor cleanupMax Horn
svn-id: r24571
2006-10-02Workaround for bug #1555938 ("MI2: Inventory object cloning"), as suggested byTorbjörn Andersson
Fingolfin. svn-id: r24080
2006-09-23Removed CHECK_HEAPMax Horn
svn-id: r23979
2006-09-17Renamed ScummEngine::res to _res and allocate the ResourceManager on the ↵Max Horn
heap (i.e. _res is a pointer now) svn-id: r23922
2006-09-16Replaced checkRange by assertRange, which has (a) an (IMO) more logical ↵Max Horn
order of parameters, and (b) removes lots of useless duplicate information in error messages svn-id: r23885
2006-09-02Fix string formating in Russian versions of HE72+ gamesTravis Howell
svn-id: r23820
2006-08-21cleanup & check for sentence overflowsMax Horn
svn-id: r23736
2006-06-17Limit vm.numNestedScripts to positive value, when subtracting slot in ↵Travis Howell
runScriptNested(). Fixes restart, after ending sequence in freddi4 svn-id: r23153