Commit Graph

102 Commits

Author SHA1 Message Date
David Turner
73a440cfe2 DRASCULA: Fix Memory Leaks in Rooms Table.
Minor whitespace fixes as well.

svn-id: r55560
2011-01-27 07:58:57 +00:00
Eugene Sandulenko
9b9e8f7d8d DRASCULA: Fix some code analysis warnings (bug #3087830)
svn-id: r53473
2010-10-15 09:08:54 +00:00
Eugene Sandulenko
f992721361 Drascula: hid room updater-related debug output to deeper level
svn-id: r49702
2010-06-15 10:18:08 +00:00
Max Horn
da81c58af1 DRASCULA: Some cleanup; turn some global C++ objects into members of DrasculaEngine
svn-id: r48215
2010-03-09 23:35:30 +00:00
Nicola Mettifogo
3a1e7ccbae Moved text parsing to a new class.
svn-id: r48013
2010-02-09 01:22:24 +00:00
Nicola Mettifogo
56bf7a20d3 Renamed ArjFile to ArchiveMan, and _arj to _archives.
svn-id: r48000
2010-02-08 18:17:32 +00:00
Nicola Mettifogo
b658c61155 Let ArjFile return a SeekableReadStream instead of implementing
the same interface itself. The caller is now responsible for
deleting the returned streams.

svn-id: r47994
2010-02-08 16:14:04 +00:00
Nicola Mettifogo
1fe0facb24 Pass the input stream to text parser functions.
svn-id: r47992
2010-02-08 16:13:09 +00:00
Nicola Mettifogo
0b06fb2a88 The text parser functions can create their temporary buffers on the stack.
svn-id: r47991
2010-02-08 16:12:45 +00:00
Filippos Karapetis
4af0cfbdbd Cleanup
svn-id: r43056
2009-08-04 21:56:59 +00:00
Filippos Karapetis
d14f0ccfb5 Removed the superfluous VGA buffer, replacing it with direct writes to the video buffer
svn-id: r43048
2009-08-04 17:22:18 +00:00
Eugene Sandulenko
d116a94e2b Normalized types for several variables. Formatting
svn-id: r40521
2009-05-13 11:59:49 +00:00
Eugene Sandulenko
17a68490be Replace verb numbers with constants in selectVerb() call
svn-id: r40476
2009-05-12 10:02:18 +00:00
Johannes Schickel
5417f6bacb - Replace OSystem::clearScreen with OSystem::fillScreen as discussed on -devel.
- Update BaseBackend and DC port to properly implement OSystem::fillScreen (now only PalmOS has to be updated).
- Update all client code which relied on OSystem::clearScreen so far.

svn-id: r38304
2009-02-15 21:20:21 +00:00
Max Horn
ac59693be2 A ton of code formatting fixes; also fixed warnings about single line loops like 'while(cond);' by inserting newlines
svn-id: r36127
2009-01-29 05:26:12 +00:00
Eugene Sandulenko
696897b058 Whoa! Removing trailing spaces.
svn-id: r35648
2009-01-01 15:06:43 +00:00
Filippos Karapetis
cbf561a0a0 - Moved more animation data inside drascula.dat
- Merged copyRect and copyRectClip
- Added enums for all the possible character directions and removed duplicate directions
- Extended the talk sequence commands a bit
- Removed unnecessary buffer faceBuffer and the unneeded casts between byte * and char * that were used

svn-id: r34503
2008-09-12 12:54:16 +00:00
Filippos Karapetis
6fd2cb99db Cleanup
svn-id: r34494
2008-09-11 15:35:56 +00:00
Filippos Karapetis
a12e2b8037 - Merged openDoor() and closeDoor()
- Cleaned up updateDoor()
- Bugfixes to exitRoom() and gotoObject()
- Moved cursor-related functions to interface.cpp
- alapuertakeva -> roomExits

svn-id: r34493
2008-09-11 14:49:04 +00:00
Filippos Karapetis
fa3d3e3643 - The game's cursor is now handled via ScummVM's cursor manager, instead of the game itself (this means that there might be regressions where the cursor is visible when it shouldn't be)
- Removed the textSurface pointer, which was used in the Spanish version. Non-Spanish versions of the game hold the font data in the tableSurface buffer (which contains picture 96). The font data for Spanish versions is in picture 974. Now both versions load their font data from the tableSurface buffer
- hay_que_load -> loadedDifferentChapter
- Merged withoutVerb() and selectVerb()
This is a big change, it might lead to regressions!

svn-id: r34488
2008-09-11 09:31:45 +00:00
Filippos Karapetis
77cd9d6230 Removed the unused variable changeColor
svn-id: r34480
2008-09-10 13:06:40 +00:00
Filippos Karapetis
f5fecc864f Merged all the methods to assign and set default palettes
svn-id: r34479
2008-09-10 12:03:42 +00:00
Filippos Karapetis
3202ef4dd1 Reduced game memory usage by about 400KB by only loading the current language strings, not all strings
svn-id: r34472
2008-09-10 08:25:12 +00:00
Filippos Karapetis
932399481a - Cleanup and simplification
- Moved several simple animations out of animation.cpp
- Moved some animations with talk sequences inside drascula.dat
- A new version of drascula.dat is needed (will be uploaded shortly)

svn-id: r34464
2008-09-09 15:59:06 +00:00
Filippos Karapetis
2ddadd7a45 Cleanup of exitRoom()
svn-id: r34463
2008-09-09 12:57:57 +00:00
Filippos Karapetis
dbbfaa4c83 talk_dr_grande -> talk_drascula_big
talk_baul -> talk_trunk

svn-id: r34182
2008-08-26 08:35:02 +00:00
Filippos Karapetis
0a2a468d83 Simplified several calls to copyBackground()
svn-id: r34181
2008-08-26 08:21:21 +00:00
Filippos Karapetis
e2fe740e35 Fix for original game bug with the wall plug in chapter 5.
Fixes bug #2059621 - DRASCULA: Plug bug

svn-id: r34160
2008-08-25 15:58:45 +00:00
Filippos Karapetis
9654ee4fa3 Possible fix for (for the drascula engine) for bug #2001583 - "WINCE: CRUISE and DRASCULA engines can not be compiled"
svn-id: r32777
2008-06-25 08:36:07 +00:00
Filippos Karapetis
b652c20114 Fixed regression in the pendulum room, preventing the player from selecting John's hands (new version of drascula.dat needed)
svn-id: r32657
2008-06-10 22:14:47 +00:00
Filippos Karapetis
985903a071 Use the array sizes loaded from drascula.dat, instead of ARRAYSIZE
svn-id: r32650
2008-06-10 21:06:39 +00:00
Filippos Karapetis
930ba6d02d drawSurface1 -> bgSurface
svn-id: r32644
2008-06-10 18:54:32 +00:00
Filippos Karapetis
a353776f2f - drascula.dat is now read completely
- Removed the rest of the game static data (staticdata.h)
- Some naming convention fixes (added underscore to some shared variables)
- Renamed objeto -> object

svn-id: r32628
2008-06-09 10:11:42 +00:00
Filippos Karapetis
dcde2f7a96 The pendulumSurface pointer is only used in update_102()
svn-id: r32614
2008-06-08 11:26:48 +00:00
Eugene Sandulenko
e14f81391c Shuffled around more code. Now the files look more manageable.
svn-id: r32599
2008-06-07 19:40:43 +00:00
Filippos Karapetis
00dba1cebc - Cleanup
- Removed the unneeded AuxBuffLast buffer (this one is really not necessary :) )
- Simplified some more room actions

svn-id: r32583
2008-06-06 19:37:36 +00:00
Eugene Sandulenko
3b1e4fc15f Move more room code into roomActions[].
svn-id: r32582
2008-06-06 19:29:59 +00:00
Filippos Karapetis
31bb8c01c7 Removed the useless textSurface buffer
frame_x -> frameX
candleX, candleY, pianistX and drunkX are used in more than one place

svn-id: r32580
2008-06-06 18:28:50 +00:00
Filippos Karapetis
7c4e375b39 - Cleaned up the code that makes the in-game screensaver pop up
- Grouped all the frame_* variables
- Removed the unused mouseY_ant variable

Renamed:
x_dr/y_dr -> drasculaX/drasculaY
x_bj/y_bj -> bjX/bjY
vb -> VonBraun
wolf -> werewolf
pos_cabina -> cabinPos
dir_lectura -> pal
plt -> colorCount
palNegra -> blackPalette
cont_sv -> framesWithoutAction

svn-id: r32577
2008-06-06 14:50:19 +00:00
Filippos Karapetis
fa8981e1e2 Simplified the room preupdaters and updaters
svn-id: r32573
2008-06-06 09:53:33 +00:00
Eugene Sandulenko
a478ef04ae Fix regressions introduced in r32571
svn-id: r32572
2008-06-06 09:18:49 +00:00
Filippos Karapetis
547e25667b Removed the empty specialized parsers for rooms 19, 44, 61 and 63
svn-id: r32571
2008-06-06 07:48:00 +00:00
Filippos Karapetis
bc76980ae6 Added the rest of the rooms to the room parser
svn-id: r32570
2008-06-06 07:42:00 +00:00
Eugene Sandulenko
095c1544db Further unification of room code.
svn-id: r32567
2008-06-06 06:35:25 +00:00
Filippos Karapetis
3c7e0f5f8d Fixed regression: rooms 0, 56 and 60 are not called by the default room parser (13 and 21 too, but there are no default actions associated with them)
svn-id: r32562
2008-06-05 21:12:02 +00:00
Eugene Sandulenko
b7ac2f99f6 Optimize a bit roomParse, though ideal would be a binary search, but I am
too lazy for that.

svn-id: r32561
2008-06-05 20:35:45 +00:00
Eugene Sandulenko
35cdc7aae4 Converted most of checkAction() to pseudorooms 200 and 201, putting
them into roomActions.

svn-id: r32560
2008-06-05 20:28:50 +00:00
Eugene Sandulenko
9cbf46a7a4 Merged all roomXXActions into single array. Thus simplified room parsers.
svn-id: r32559
2008-06-05 19:29:30 +00:00
Eugene Sandulenko
a921549370 Pendulum room is room #102
svn-id: r32558
2008-06-05 19:04:58 +00:00
Filippos Karapetis
5f573fea11 Added enums for all items up to chapter 3 and some of chapter 4
svn-id: r32556
2008-06-05 15:03:48 +00:00