aboutsummaryrefslogtreecommitdiff
path: root/engines/sci/engine/kpathing.cpp
AgeCommit message (Collapse)Author
2010-01-06Removed all hardcoded screen sizesFilippos Karapetis
svn-id: r47072
2010-01-05Renamed /gui to /graphics and /sfx to /sound, to better illustrate their purposeFilippos Karapetis
svn-id: r47007
2010-01-04SCI: Add support for SCI2 to AvoidPath.Walter van Niftrik
svn-id: r46986
2010-01-03Implement kInPolygon for SCI32. GK1 now responds when you click on things.Matthew Hoops
svn-id: r46918
2009-12-28Moved the OLD_PATHFINDING define inside sci.h, together with the othersFilippos Karapetis
svn-id: r46679
2009-12-27Renamed gameName -> gameId, to keep the same vocabulary everywhereFilippos Karapetis
svn-id: r46635
2009-11-02Changed foo(void) to foo() in almost all non-backend source filesMax Horn
svn-id: r45616
2009-11-01SCI: AvoidPath: Add simpler visibility algorithm (still disabled).Walter van Niftrik
svn-id: r45590
2009-10-31SCI: AvoidPath: Switch to A*Walter van Niftrik
svn-id: r45586
2009-10-30Rewrote the avoidpath debug code to use new graphics functionsFilippos Karapetis
svn-id: r45533
2009-10-30SCI: AvoidPath: Add workaround for pathfinding problem when Patti walks toWalter van Niftrik
control room in LSL5, room 660. svn-id: r45522
2009-10-30SCI: AvoidPath: Don't discard contained-access polygon when starting pointWalter van Niftrik
is right next to it. svn-id: r45521
2009-10-21Fixed self-intersecting pathfinding polygons in SQ1, room 66. This addresses ↵Filippos Karapetis
the issue where Roger is able to walk anywhere on screen. However, there is still a separate issue in that room, which makes him stay stuck in one direction (like he's "moonwalking") and it only occurs in the new GUI svn-id: r45307
2009-10-20Changed kAvoidPath() to always avoid screen edges, after talking with ↵Filippos Karapetis
waltervn. Also, formatted the comments of the dijkstra() function svn-id: r45272
2009-10-20- Fixed the pathfinding issue for LSL5 room 640, where Patti walks ↵Filippos Karapetis
off-screen (we still need a proper way of detecting this, though...) - Made warnings where invalid pointers are dereferenced more precise svn-id: r45257
2009-10-18SCI: Make the implicit segMan param to GET_SEL32(V) and PUT_SEL32(V) explicitMax Horn
svn-id: r45234
2009-10-18SCI: AvoidPath: skip polygons without verticesWalter van Niftrik
svn-id: r45223
2009-10-13SCI: cleanupMax Horn
svn-id: r45040
2009-10-09Some const correctness changes; cleanupMax Horn
svn-id: r44850
2009-10-07SCI: Turn lookup_node & lookup_list into SegManager::lookupNode & ↵Max Horn
SegManager::lookupList svn-id: r44769
2009-10-04SCI: Rename EngineState::segMan to _segManMax Horn
svn-id: r44629
2009-09-29- Changed the unimplemented debug SCI kernel functions (InspectObj, ↵Filippos Karapetis
ShowSends, ShowObjs, ShowFree, StackUsage and Profiler) to be dummy functions - we have our own debugger, and don't use these functions for debugging - Removed the function number parameter from all kernel functions, as it's no longer needed, and removed the FAKE_FUNCT_NR hack - Removed kUnknown() and kStub() - Dummy/unknown kernel functions are no longer invoked, and a warning is shown instead, with the paremeters passed to them Note: there is an evil hack used for debugging scripts in invoke_selector(), which probably no longer works now svn-id: r44461
2009-09-27SCI: Major string handling update.Willem Jan Palenstijn
All string access to segments should now work with both raw and non-raw (reg_t) segments, using the new utility functions in segMan. There will likely be regressions. svn-id: r44388
2009-09-26SCI: Fix compile error with DEBUG_AVOIDPATHWillem Jan Palenstijn
svn-id: r44384
2009-09-14SCI: Rename SegManager::kernelDeref*() methods to SegManager::deref*()Max Horn
svn-id: r44083
2009-09-14SCI: kernelDeref*() functions are now seSegmentManager methodsMax Horn
svn-id: r44082
2009-09-06SCI: Rename resManager -> resMan; segManager -> segManMax Horn
svn-id: r43980
2009-09-02Some renaming:Filippos Karapetis
getresourceManager -> getResourceManger resourceManager -> resMan segmentManager ->segMan svn-id: r43908
2009-09-02SCI: Renamed kernel_dereference_* to kernelDeref*, and added kernelDerefStringMax Horn
svn-id: r43907
2009-09-02SCI: funct_nr is not used in 99% of all opcodes -- hide it in those (to be ↵Max Horn
removed eventually) svn-id: r43905
2009-09-01- Reverted the *vga targets back to *sci, and used the extras field again ↵Filippos Karapetis
for VGA remakes - The extras field is now filled by the fallback detector for VGA games svn-id: r43893
2009-09-01- Added MD5's for the 5 different Crazy Nick's collectionsFilippos Karapetis
- Added the MD5's of the French versions of GK2 and SQ6 (bug reports #2846842 and #2846515) - Added a different game id for QFG1 VGA (SCI1.1), to distinguish it from the older EGA version (SCI0) and added detection for the VGA version in the fallback detector - Changed some VGA SCI game IDs: lsl1sci -> lsl1vga, pq1sci -> pq1vga, sq1sci -> sq1vga, to distinguish SCI VGA remakes from SCI EGA remakes (like with QFG1VGA) svn-id: r43891
2009-09-01- Moved the Sierra game ID conversion code inside game.cpp, so that any ↵Filippos Karapetis
game-specific workarounds are tested against ScummVM IDs - Added detection for the EcoQuest 1 demo in the fallback detector - Partially reverted my previous "fix" for EcoQuest 1 CD, and turned it into a script-specific hack for that game, for now - Added handling of kDisposeScript calls made with 2 parameters, e.g. in KQ5CD and others (still untested, haven't found a test case) svn-id: r43887
2009-08-25- Replaced more cases of EngineState parametersFilippos Karapetis
- Made some version comparisons for old SCI0 versions easier to read - Removed the GET_SEL32SV macro svn-id: r43729
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-20remove \n's from error() callsJoost Peters
svn-id: r43571
2009-07-06Replaced sciprintf() calls with printf, DebugPrintf, warning and error callsFilippos Karapetis
svn-id: r42167
2009-06-07Replaced KP_ALT, SKPV_OR_ALT and UKPV_OR_ALTFilippos Karapetis
svn-id: r41340
2009-06-07Replaced/removed KP_UINT, KP_SINT, SKPV and UKPV as well as the ↵Filippos Karapetis
VIEW_PRIORITY and PRIORITY_BAND_FIRST wrappers svn-id: r41338
2009-05-31Typo.Johannes Schickel
svn-id: r41054
2009-05-30SCI: Made vocab_version static again (a global static var is bad, but a ↵Max Horn
really global var is worse); also clarified some FIXME comments that we want to avoid *any* non-const global var, no matter whether it is static or not svn-id: r41045
2009-05-30- Removed debug_mode from the engine stateFilippos Karapetis
- Turned all SCIkwarn and SCIkdebug functions to ScummVM's debugC function - Placed some debug code in appropriate defines: DEBUG_PARSER, DEBUG_AVOIDPATH and DEBUG_SOUND - Removed the "debuglog" command and the "script_checkloads_flag" and "sci_debug_flags" variables svn-id: r41033
2009-05-27SCI: Cleanup.Walter van Niftrik
svn-id: r40931
2009-05-26Turned some static tables into static const tables; added some FIXME ↵Max Horn
comments to global static vars that should be removed (many more exist in SCI, Tinsel, and some other engines) svn-id: r40908
2009-05-20removed trailing whitespacesMax Horn
svn-id: r40742
2009-05-18Removed the unused file and line parameters from the list and list node ↵Filippos Karapetis
lookup functions, and removed the LOOKUP_LIST and LOOKUP_NODE defines. Also, disabled the unused LOOKUP_SPECIES define svn-id: r40676
2009-05-13- Simplified SCI version detection a bit and clarified the different version ↵Filippos Karapetis
feature flags (not used yet) - Removed the version verification functions (they were only used for two specific cases, but the SCI executable reader is able to detect the exact SCI game version anyway, so there is no point in having these) - Removed the empty GameFlags structure and replaced it with a 32-bit integer instead svn-id: r40524
2009-05-12SCI: Removed sci_memory.h/.cppMax Horn
svn-id: r40514
2009-05-10Moved the code which retrieves the current room number in a separate ↵Filippos Karapetis
function and merged _sci1_alloc_system_colors inside _reset_graphics_input svn-id: r40412
2009-05-09SCI: AvoidPath: Got rid of a warning.Walter van Niftrik
svn-id: r40399