Commit Graph
142 Commits
Author SHA1 Message Date
Filippos Karapetis e320103926 SCI: Refactored readPoint() to accept a segment reference to the polygon data, thus removing the check for invalid segment types. Also, added a sanity check to verify that the memory reference to polygon data is big enough to hold all the expected polygon vertices (thanks to waltervn)
svn-id: r52176
2010-08-17 23:55:07 +00:00
Filippos Karapetis d8b0b445f3 Limited the sanity check in rev #52174 to invalid segment types only (apparently, polygon data may be placed in non-dynmem segments too)
svn-id: r52175
2010-08-17 23:11:30 +00:00
Filippos Karapetis 3c010fc2f9 SCI: Fixed bug #3034501 - "LSL6: Segfault while leaving the penthouse"
svn-id: r52174
2010-08-17 22:51:24 +00:00
Filippos Karapetis d365b71945 SCI: Turned a warning into an error
svn-id: r51838
2010-08-07 16:42:10 +00:00
Filippos Karapetis 82bf2437e3 SCI: also break in AvoidPath instead of continuing, when the start point is contained in multiple polygons, otherwise we'll end up in an infinite loop
svn-id: r51458
2010-07-29 09:08:20 +00:00
Filippos Karapetis c099127c3d SCI: Break out instead of continuing when an end point is contained in multiple polygons, while running the avoidpath algorithm (or we'll end up in an infinite loop). Fixes bug #3036299 - "LB2CD: Game Hangs at Speakeasy"
svn-id: r51450
2010-07-28 23:30:59 +00:00
Filippos Karapetis 9e164f429d SCI: Changed another warning into debug output
svn-id: r51445
2010-07-28 23:01:28 +00:00
Filippos Karapetis a2b6b84bfb SCI: Changed a warning into a debug message
svn-id: r51444
2010-07-28 22:41:03 +00:00
Filippos Karapetis 9862f3fe24 SCI: Moved the SCI32 kernel functions out of kernel32.cpp and into their respective files
svn-id: r51108
2010-07-21 21:18:21 +00:00
Max Horn 6ee82a2027 SCI: Introduce SciGameId enum
svn-id: r50273
2010-06-25 16:16:29 +00:00
Filippos Karapetis 56bf0c0e63 Fixed kMergePoly after discussing with waltervn so that it correctly returns a pointer to an empty (for now) polygon array. This means that you can walk over enemy bodies after killing them in QFG1VGA, but at least it fixes the crashes after killing monsters
svn-id: r50160
2010-06-22 18:33:19 +00:00
Max Horn 5a95c2a652 SCI: Doxygenify some comments
svn-id: r50013
2010-06-18 09:37:25 +00:00
Max Horn 359be0c066 SCI: Change SciEngine's 'char *getGameID()' to 'Common::String getGameId()'
svn-id: r49968
2010-06-17 23:14:34 +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
Filippos Karapetis e694b66e4f Added comments to kMergePoly()
svn-id: r49289
2010-05-28 10:52:22 +00:00
Filippos Karapetis 967d9ea308 Added a stub for kMergePoly, to avoid crashing in QFG1VGA after killing a monster
svn-id: r49288
2010-05-28 10:45:20 +00:00
Filippos Karapetis c874ff15a8 Cleaned up the game ID code:
- The game ID is now obtained from ScummVM ID directly, not by converting Sierra's internal ID
- Moved the code which reads the internal Sierra ID inside the resource manager
- Moved the code which converts the internal Sierra ID to ScummVM's IDs together with the rest of the detection code

svn-id: r49152
2010-05-23 10:28:03 +00:00
Max Horn 970745e60c Move DebugChannel related code to new header
svn-id: r48935
2010-05-04 11:59:22 +00:00
Max Horn 460d69e885 COMMON: Move DebugChannel stuff into a new DebugMan singleton
svn-id: r48821
2010-04-27 21:40:52 +00:00
Max Horn 903b694574 SCI: Cleanup resource.h
svn-id: r48084
2010-02-17 23:37:32 +00:00
Max Horn 721a57a661 SCI: Move Gui/Gfx related permanent objects from EngineState to SciEngine
svn-id: r48047
2010-02-13 17:43:31 +00:00
Walter van Niftrik 635c7d970c SCI: Fix VM crash when NULL_REG is passed to AvoidPath (SCI32).
svn-id: r47964
2010-02-07 14:32:49 +00:00
Filippos Karapetis b2e8777e1e Silenced warning that intersectionX and intersectionY could be uninitialized
svn-id: r47928
2010-02-06 10:43:54 +00:00
Max Horn f86618f92b SCI: Add a 'SELECTOR' macro
svn-id: r47918
2010-02-05 22:55:18 +00:00
Walter van Niftrik 19910ec279 SCI: Add implementation for Intersections().
svn-id: r47901
2010-02-05 12:57:05 +00:00
Martin Kiewitz 00ac235331 SCI: making pathfinding debug support also work in sci32 (though it just shows the path for 2.5 seconds there)
svn-id: r47888
2010-02-04 20:43:00 +00:00
Martin Kiewitz e74bd30a2e SCI: putting most kGraph functions into GfxPaint16
svn-id: r47887
2010-02-04 20:18:01 +00:00
Walter van Niftrik b0b7764178 SCI: Add stub for kIntersections()
svn-id: r47784
2010-01-31 22:38:07 +00:00
Martin Kiewitz 7184fa3bad SCI: renamed kernelFind() to kernelFindColor, so that it isnt that confusing :P
svn-id: r47753
2010-01-31 16:26:15 +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
Walter van Niftrik 1bb011a3aa SCI: Removed old pathfinding code
svn-id: r47701
2010-01-30 04:19:55 +00:00
Walter van Niftrik d82b01cee9 SCI: AvoidPath: Allow solitary screen-edge vertices in path.
svn-id: r47698
2010-01-30 03:37:26 +00:00
Walter van Niftrik 49cfbbaffc SCI: Hook up AvoidPath debug mode to pathfinding debug channel.
svn-id: r47692
2010-01-30 01:02:29 +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
Walter van Niftrik 473d8b7c2f SCI: Add string support for odd-offset pointers into reg_t-based segments.
svn-id: r47572
2010-01-26 19:51:08 +00:00
Johannes Schickel aed02365ec Strip trailing spaces/tabs.
svn-id: r47541
2010-01-25 01:39:44 +00:00
Walter van Niftrik 403c2f31bb SCI: Fix default optimization level in AvoidPath
svn-id: r47239
2010-01-10 23:55:15 +00:00
Filippos Karapetis a637f50862 Silenced warnings ("this" isn't defined on object instantiation, and commented out some unused variables)
svn-id: r47237
2010-01-10 21:13:38 +00:00
Filippos Karapetis bcf7535c97 Removed all hardcoded screen sizes
svn-id: r47072
2010-01-06 12:17:03 +00:00
Filippos Karapetis 84cd8d2dc7 Renamed /gui to /graphics and /sfx to /sound, to better illustrate their purpose
svn-id: r47007
2010-01-05 01:22:16 +00:00
Walter van Niftrik 184090cb46 SCI: Add support for SCI2 to AvoidPath.
svn-id: r46986
2010-01-04 20:52:25 +00:00
Matthew Hoops 986a75b7ee Implement kInPolygon for SCI32. GK1 now responds when you click on things.
svn-id: r46918
2010-01-03 05:29:30 +00:00
Filippos Karapetis 871d5c534d Moved the OLD_PATHFINDING define inside sci.h, together with the others
svn-id: r46679
2009-12-28 17:17:22 +00:00
Filippos Karapetis fabe51c129 Renamed gameName -> gameId, to keep the same vocabulary everywhere
svn-id: r46635
2009-12-27 12:54:03 +00:00
Max Horn 51933629d1 Changed foo(void) to foo() in almost all non-backend source files
svn-id: r45616
2009-11-02 21:54:57 +00:00
Walter van Niftrik 6522df6d6d SCI: AvoidPath: Add simpler visibility algorithm (still disabled).
svn-id: r45590
2009-11-01 03:32:28 +00:00
Walter van Niftrik 4d2cfd5449 SCI: AvoidPath: Switch to A*
svn-id: r45586
2009-10-31 21:21:23 +00:00
Filippos Karapetis 932cd54bbe Rewrote the avoidpath debug code to use new graphics functions
svn-id: r45533
2009-10-30 11:26:00 +00:00
Walter van Niftrik 27df03a18e SCI: AvoidPath: Add workaround for pathfinding problem when Patti walks to
control room in LSL5, room 660.

svn-id: r45522
2009-10-30 04:47:02 +00:00
Walter van Niftrik dba613ecd2 SCI: AvoidPath: Don't discard contained-access polygon when starting point
is right next to it.

svn-id: r45521
2009-10-30 03:54:50 +00:00