aboutsummaryrefslogtreecommitdiff
path: root/engines/sci/engine/script.cpp
AgeCommit message (Collapse)Author
2010-06-03Moved several object-related defines inside vm.h into segment.h, where the ↵Filippos Karapetis
Object class resides. Also, removed several unused defines svn-id: r49406
2010-05-31Merged all the script relocation code inside script_instantiate(), and ↵Filippos Karapetis
changed the warning when reading an invalid species into an error (as it's severe, and if it happens it means something is seriously wrong) svn-id: r49361
2010-05-31Merged several script instantiation-related functions inside ↵Filippos Karapetis
script_instantiate() svn-id: r49343
2010-05-30SCI: Merge setLockers(1) call into Script::initMax Horn
svn-id: r49337
2010-05-30SCI: Script exports and synonyms are now initialized when a script is ↵Filippos Karapetis
loaded. Removed a sanity check inside script_instantiate_sci0 for a bug which no longer exists svn-id: r49336
2010-05-30CleanupFilippos Karapetis
svn-id: r49334
2010-05-30- Merged the SCI0 scriptRelocate() and SCI11 heapRelocate() functions inside ↵Filippos Karapetis
relocate(). scriptRelocate checked one more relocation entry, which seems wrong, so we're now checking for the correct number of relocations in all SCI versions - Re-added the error when script + heap exceed 64KB (better than an assert) - this should theoretically never happen, and it never has for the games tested - Removed the relocated sanity check - again, it shouldn't occur (else something else is wrong) svn-id: r49332
2010-05-30Moved setScriptSize() inside Script::init(), and removed a FIXME - the ↵Filippos Karapetis
SCI1.1 word-align is done inside Script::init() svn-id: r49330
2010-05-30Unified the script loading code, and marked an issue with the SCI11 heap ↵Filippos Karapetis
addresses svn-id: r49329
2010-05-30Limit access to the _bufSize, _scriptSize and _heapSize members of the ↵Filippos Karapetis
Script class svn-id: r49327
2010-05-29Limit access to the _classTable array (now it's directly accessible only ↵Filippos Karapetis
inside saveLoadWithSerializer() svn-id: r49318
2010-05-29Removed the scriptRelocateExportsSci11() hack. The open spell in QFG1VGA ↵Filippos Karapetis
works now (thanks to waltervn for all his help on this) svn-id: r49311
2010-05-27SCI: fixing -propDict- selector on instances to contain -propDict- of the ↵Martin Kiewitz
corresponding class - fixes sq4cd/room 381 talk-clicking on robot - thx to waltervn & wjp svn-id: r49263
2010-05-26SCI: More const related changes; remove unnecessary casts which hide const ↵Max Horn
issues svn-id: r49248
2010-05-26More work on controlling access to members of the Object class:Filippos Karapetis
- Moved the code for initializing the object class, species and base object inside the Object class - Made propertyOffsetToId() a method of the Object class - Made relocateObject() a method of the Object class - The Object getVariable() method now returns a reference to the requested variable Only SegManager::reconstructScripts() is left needing direct access to the members of the Object class svn-id: r49228
2010-05-21Slight cleanupFilippos Karapetis
svn-id: r49129
2010-05-19Fixed silly typo in #49099. Iceman works again (thanks m_kiewitz)Filippos Karapetis
svn-id: r49104
2010-05-19Fixed signed/unsigned warning, changed to CamelCaseFilippos Karapetis
svn-id: r49100
2010-05-19Cleaned up script_instantiate_sci0()Filippos Karapetis
svn-id: r49099
2010-05-18Add initial support for KQ6 Mac. Wrapper functions for read/writing to ↵Matthew Hoops
pointers are now used (found in util.*) for code that has different endianness in SCI1.1+ Mac games. Add support for Mac 'snd ' and 'CURS' resources. QFG1 Mac is not yet playable due to script compression. svn-id: r49070
2010-04-24SCI: Fix regression in locals init for re-used segmentsWalter van Niftrik
svn-id: r48783
2010-02-13SCI: Move GameFeatures from EngineState to SciEngineMax Horn
svn-id: r48049
2010-02-03Placed all the game feature detection code in a separate classFilippos Karapetis
svn-id: r47850
2010-02-03SCI: Move more stuff aroundMax Horn
svn-id: r47836
2010-02-02SCI: Move some code around (no code changes)Max Horn
svn-id: r47823
2010-01-29SCI: Reduce header interdependencies a bitMax Horn
svn-id: r47666
2010-01-28SCI: Add debug opcodesWalter van Niftrik
svn-id: r47646
2010-01-25Strip trailing spaces/tabs.Johannes Schickel
svn-id: r47541
2010-01-15SCI: changed scalesignal to scaleSignal - selector works now :)Martin Kiewitz
svn-id: r47312
2010-01-15SCI: adding scalesignal selectorMartin Kiewitz
svn-id: r47306
2010-01-05SCI: adjusting cel drawing according to left/top of planeMartin Kiewitz
svn-id: r47002
2009-12-27Now using m_kiewitz's picture code to show pictures in SCI32. Also took some ↵Filippos Karapetis
bits off a similar patch from clone2727. The Sierra logo screen and the menu screen in GK1 should now be shown fully! svn-id: r46609
2009-12-21SCI32:Matthew Hoops
- Fully implement kArray and kIsHiRes and mostly implement kString (printf and atoi subfunctions still missing). - Add a dummy SciGui class for SCI32 to bypass the views. Gabriel Knight 1 will now play the Sierra logo music and the main menu music. - Some other minor SCI32 changes. svn-id: r46462
2009-11-20Changed the lofs detection to iterate through all the methods of the Game ↵Filippos Karapetis
object again, instead of a specific selector - fixes Jones svn-id: r46006
2009-11-20Selector cleanup: rearranged all selectors to be in the same order as in ↵Filippos Karapetis
Sierra's dictionary files, and removed several unused selectors svn-id: r46005
2009-11-20Some corrections for the lofs autodetection - SQ4 floppy works againFilippos Karapetis
svn-id: r46002
2009-11-04Added references to the scaleX and scaleY selectors, used for SCI1.1 view ↵Filippos Karapetis
scaling svn-id: r45659
2009-10-08Started rewriting the check for the graphics functions type (still not ↵Filippos Karapetis
finished) svn-id: r44787
2009-09-27SCI: Fix scrolling in SCI1 list controls.Walter van Niftrik
svn-id: r44429
2009-09-23- Moved the SCI version in a global variableFilippos Karapetis
- Changed all the SCI version checks to use getSciVersion() - Also made getSciVersionDesc a global function (removes some ugly accessing of the SCI engine) The fallback detector should work correctly now svn-id: r44269
2009-09-17SCI: Rename selector_map_t -> SelectorCache and _selectorMap -> _selectorCacheMax Horn
svn-id: r44152
2009-09-02Some renaming:Filippos Karapetis
getresourceManager -> getResourceManger resourceManager -> resMan segmentManager ->segMan svn-id: r43908
2009-08-30SCI: Add lofs detection.Walter van Niftrik
svn-id: r43824
2009-08-30SCI: Add SetCursor detection. Cleanup.Walter van Niftrik
svn-id: r43812
2009-08-28- Removed the unused selectors "prevSignal", "who" and "distance" from the ↵Filippos Karapetis
quick access selector array - Added the "motionCue" and "egoMoveSpeed" selectors to the selector array, to limit the places where findSelector() is used only in debugging functions - Reordered the selector initialization in mapSelectors(), so that their order matches the order found in vocab.997 svn-id: r43779
2009-08-28Removed the unused selectors (edgeHit, semanticFail and baseSetter)Filippos Karapetis
svn-id: r43776
2009-08-26- Fix the opcode formats for some opcodes in SCI32 (some arguments are now ↵Matthew Hoops
words instead of bytes). - Fix the SCI2.1 kernel table. - Add DoSound detection for SCI2. svn-id: r43762
2009-08-26Committed a slight patch by clone2727, which contains debug code to dump the ↵Filippos Karapetis
selector table from a game. This is very useful to construct selector tables for games which don't have a vocab.997 resource, using dumped tables from similar versions or games svn-id: r43760
2009-08-25- Simplified the parameters of some functionsFilippos Karapetis
- Replaced some EngineState parameters - The SCI version is now obtained from the resource manager or the segment manager, thereby simplifying several functions - Plugged 2 leaks in the fallback detector - Renamed the segment manager and resource manager to "segmentManager" and "resourceManager" in all places, for consistency svn-id: r43722
2009-08-16SCI: Stage 1 of the game detection overhaul. The end goal is to autodetectWalter van Niftrik
as much as possible. All SCI_VERSION_* information was removed from detection.cpp (much of it was incorrect anyway). svn-id: r43449