Commit Graph

559 Commits

Author SHA1 Message Date
Torbjörn Andersson
b7911ef0f4 DRASCULA: Play the English "von Braun" track
The workaround is no longer needed since we provide the previously
missing track. It shouldn't break the game if you play from the CD
either, as the timing appears to be hardwired rather than keyed to
the music.

svn-id: r52866
2010-09-23 20:01:08 +00:00
Torbjörn Andersson
c63553c234 DRASCULA: Keep keyboard buffer flushed while waiting for conversation
Otherwise buffered-up key presses can cause dialog to be skipped once
the player finally picks a conversation option.

svn-id: r52850
2010-09-21 20:51:45 +00:00
Torbjörn Andersson
76f2d3d78b DRASCULA: Fix bug #3069977 ("Grafic Glitches in text")
If response() loads an image into backSurface, we need to restore the
conversation charset to it once we're done. This may very well fix a
few other similar bugs, but I haven't verified that.

svn-id: r52845
2010-09-21 17:57:02 +00:00
Torbjörn Andersson
88e25e6f25 DRASCULA: Fix invalid memory access on inventory screen
When clicking outside of all inventory objects, the whichObject()
function would return 43, which is an invalid inventoryObjects[]
index. I think that's what caused it to crash for me. There are a
few other inventoryObjects[]-related changes as well.

svn-id: r52843
2010-09-21 17:18:32 +00:00
Alejandro Marzini
fb4086cadb Merged from trunk, from Rev 50841 to HEAD
svn-id: r51495
2010-07-30 05:28:09 +00:00
Torbjörn Andersson
f98fa72ef3 Changed abs() to ABS() in a few places.
svn-id: r50890
2010-07-14 17:02:14 +00:00
Alejandro Marzini
609e08d5db Merged from trunk, from Rev 49499 to HEAD
svn-id: r50840
2010-07-13 04:31:15 +00:00
Willem Jan Palenstijn
7c7054dbd1 Remove unnecessary svn:executable properties
svn-id: r49870
2010-06-15 17:14:38 +00:00
Eugene Sandulenko
44a39ffbc6 AdvancedDetector: Add new parameter directoryGlobs.
Without this parameter mass detection gave tons of false alarms.
Use globbing for narrowing down the depth search.

svn-id: r49788
2010-06-15 10:59:23 +00:00
Eugene Sandulenko
2e20a48f90 Drascula: improve responsivity during pauses and palette updates.
svn-id: r49722
2010-06-15 10:24:38 +00:00
Eugene Sandulenko
508256a71e Drascula: Fix bug #2011470.
Bug #2011470: "DRASCULA: slowdown when you hold mouse buttons" fixed
by changing right mouse semantic. Now the items menu showed on
button up instead mouse down like earlier.

svn-id: r49721
2010-06-15 10:24:19 +00:00
Eugene Sandulenko
08c5d37da4 Drascula: Fix bug #2827166.
Bug #2827166: "DRASCULA: Repeating conversations". It looked like
bug in original engine.

svn-id: r49720
2010-06-15 10:23:58 +00:00
Eugene Sandulenko
e71caf8600 Drascula: Fix bug #2827169.
Bug #2827169: "DRASCULA: gfx glitch in pendulum room" fixed by
rearranging draw sequence.

svn-id: r49719
2010-06-15 10:23:36 +00:00
Eugene Sandulenko
02a76b2e91 Drascula: add even more responsiveness
svn-id: r49718
2010-06-15 10:23:17 +00:00
Eugene Sandulenko
ba25faaf42 Drascula: more responsiveness.
svn-id: r49717
2010-06-15 10:22:56 +00:00
Eugene Sandulenko
e4d77cf098 Drascula: Add responsiveness while talking.
svn-id: r49716
2010-06-15 10:22:39 +00:00
Eugene Sandulenko
f53211fbad Drascula: Move more cursor-related blits to cursorSurface.
svn-id: r49715
2010-06-15 10:22:19 +00:00
Eugene Sandulenko
1850d53793 Drascula: Plug memory leak
svn-id: r49714
2010-06-15 10:21:59 +00:00
Eugene Sandulenko
671ed4873f Drascula: Fixed bug #2826608.
Bug #2826608: "DRASCULA: Cursor GFX error" fixed by introducing
separate buffer for cursors. This also fixes the root cause of
the problem.

svn-id: r49713
2010-06-15 10:21:42 +00:00
Eugene Sandulenko
0796580c3e Drascula: Made actors animation more smooth.
svn-id: r49712
2010-06-15 10:21:18 +00:00
Eugene Sandulenko
07cc483e13 Drascula: Restore cursors before automated converse responses
svn-id: r49711
2010-06-15 10:21:01 +00:00
Eugene Sandulenko
a9b9da5d72 Drascula: Fix bug #2826610.
Bug #2826610: "DRASCULA: Graveyard GFX error". Actually it was fixed
by previous commit. Added more responsiveness for this animation.

svn-id: r49710
2010-06-15 10:20:44 +00:00
Eugene Sandulenko
e8b72467e1 Drascula: ease load on backend.
svn-id: r49709
2010-06-15 10:20:26 +00:00
Eugene Sandulenko
27c27c82b1 Drascula: add more pic-related debug output.
svn-id: r49708
2010-06-15 10:20:10 +00:00
Eugene Sandulenko
b743cc316e Drascula: Fix bug #2929931.
Bug #2929931: "DRASCULA: Graphic Glitches". Cursor graphics was
not loaded at needed time.

svn-id: r49707
2010-06-15 10:19:48 +00:00
Eugene Sandulenko
eac1fdc7ca Drascula: added more debug output
svn-id: r49706
2010-06-15 10:19:25 +00:00
Eugene Sandulenko
6d4ad23b55 Drascula: Fix bug #2854303.
Bug #2854303: "DRASCULA: Glitch when using cross on vampire guard".
Apparently during refactoring of animation-related code duplication
the conversion was incorrect. Rewrote relevant function.

svn-id: r49704
2010-06-15 10:18:51 +00:00
Eugene Sandulenko
2ccb5bb025 Drascula: Added debug console. Implemented a (buggy) room comand.
svn-id: r49703
2010-06-15 10:18:34 +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
Eugene Sandulenko
b78663f6fb Drascula: Added animation-related debug output.
svn-id: r49701
2010-06-15 10:17:51 +00:00
Eugene Sandulenko
c933bec975 Drascula: Optimized blitting code.
svn-id: r49700
2010-06-15 10:17:34 +00:00
Alejandro Marzini
e1ef3cd9fc Renamed getAudioCD to getAudioCDManager.
svn-id: r49678
2010-06-15 04:13:12 +00:00
Eugene Sandulenko
4d517ed0e9 Extended advancedDetector with depth parameter.
Now AD can search nested directories. By default it is turned off,
but there is new parameter to ADParameters struct. Usually value
of 2 is good enough for all purposes.

svn-id: r49653
2010-06-14 14:50:23 +00:00
Alejandro Marzini
e991cd8c53 - Revised abstract AudioCDManager.
- Removed AudioCDManager Singleton, and changed code for using AudioCDManager in OSystem.
- Added initialization code for new AudioCDManager in BaseBackend and OSystem_SDL.

svn-id: r49548
2010-06-09 20:09:57 +00:00
Eugene Sandulenko
afd909d69e Fix bug #2827172: DRASCULA: Cursor appears ontop of ending and credits
svn-id: r49194
2010-05-24 16:59:06 +00:00
Eugene Sandulenko
e39bf47717 Fix crash when there is no drascula.dat file
svn-id: r49193
2010-05-24 16:58:42 +00:00
Max Horn
b3e404109c Move initGraphics and initCommonGFX from to new header.
These functions are only used internally be Engine subclasses, and
by moving them to a separate header we can reduce indirect header
dependencies.

svn-id: r48934
2010-05-04 11:58:12 +00:00
Torbjörn Andersson
763b1c7cb0 Fixed a glitch when a one-word text (e.g. "TOTENKOPF" in the first room, when
playing the German translation) doesn't fit on the screen at the desired
position.

svn-id: r48850
2010-04-29 03:54:20 +00:00
Torbjörn Andersson
2b4093a41f Committed my proposed fix for bug #2970211 ("DRASCULA: missing german
translation"), after a brief discussion with Fingolfin to make sure I wasn't
doing something silly.

svn-id: r48833
2010-04-28 20:47:49 +00:00
Max Horn
a1840bd573 AUDIO: Rename Mixer::playInputStream to playStream
svn-id: r48637
2010-04-12 09:14:17 +00:00
Max Horn
d78dba3bca COMMON: Move Common::RandomSource to common/random.*
svn-id: r48279
2010-03-18 15:07:11 +00:00
Max Horn
fc50408ce3 DRASCULA: Simplify playFLI and its subroutines
svn-id: r48217
2010-03-09 23:36:18 +00:00
Max Horn
c6f752ce30 DRASCULA: Simplified some code, cleanup
svn-id: r48216
2010-03-09 23:35:56 +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
Max Horn
584a58fbce Reduce header interdependencies
svn-id: r48010
2010-02-08 21:51:36 +00:00
Max Horn
b3da11ba8a Introduce factory function makeArjArchive, hide ArjArchive class implementation
svn-id: r48009
2010-02-08 21:46:50 +00:00
Torbjörn Andersson
7317aa0de0 Renamed variable to fix warning.
svn-id: r48001
2010-02-08 19:46:25 +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
0aefdb7826 Moved ArjFile to drascula.
svn-id: r47999
2010-02-08 17:48:35 +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
a9a0fdc694 Reduced references to _arj to the minimum. It is passed as a
SeekableReadStream everywhere.

svn-id: r47993
2010-02-08 16:13:31 +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
Nicola Mettifogo
c453f214e6 Close the FLI file only from the routine that opened it.
svn-id: r47990
2010-02-08 16:12:22 +00:00
Johannes Schickel
a505d32eff Replace use of Audio::makeRawMemoryStream by Audio::makeRawStream.
svn-id: r47716
2010-01-30 15:26:54 +00:00
Max Horn
1565f14bc1 Moved audio stream implementations (for MP3, FLAC, etc.) to new dir sound/decoders/
svn-id: r47579
2010-01-26 22:48:45 +00:00
Johannes Schickel
aed02365ec Strip trailing spaces/tabs.
svn-id: r47541
2010-01-25 01:39:44 +00:00
Max Horn
4b996e7de7 Reorder params to Audio::makeRawMemoryStream
svn-id: r47492
2010-01-23 23:55:35 +00:00
Max Horn
dc5e08e623 Move raw audio flags from sound/mixer.h to sound/raw.h
svn-id: r47395
2010-01-19 22:30:33 +00:00
Max Horn
5ee6c79b5d Convert more engines from Mixer::playRaw to Mixer::playInputStream
svn-id: r47377
2010-01-19 11:22:14 +00:00
Max Horn
557bb394de Get rid of Mixer::FLAG_AUTOFREE.
Also fix several recently introduced new/delete vs. malloc/free mismatches.

svn-id: r47369
2010-01-19 00:56:29 +00:00
Marcus Comstedt
40f9506163 The default keycolor for mouse pointers used to be 255.
This makes sense as a default for CLUT8 modes, but not really
for anything else.  As part of the gsoc2009-16bit merge, the
default was changed to "all ones", with extra code in the SDL
backend to truncate this to the depth of the mode.  However,
"all ones" (white) still isn't a very useful default for RGB modes.
So rather than jumping through hoops to provide a bad default,
it's better to remove the default altogether.  Engines which relied
on the old default of 255 have been updated to specify it explicitly.

svn-id: r47118
2010-01-07 15:07:36 +00:00
Johannes Schickel
c439937d46 Consistency change: Use uniform copyright strings in getOriginalCopyright.
svn-id: r46543
2009-12-25 03:31:19 +00:00
Max Horn
df651bf20f Added Doxygen comments for the various engine namespaces (currently mostly without details; help filling these out is welcome)
svn-id: r46128
2009-11-24 22:10:14 +00:00
Johannes Schickel
56181a475c Change "=" to ":=" in some module.mk files for consistency.
svn-id: r45364
2009-10-24 21:55:53 +00:00
Johannes Schickel
b33b90ecd0 Made AGOS, DRASCULA, GOB, GROOVIE, MADE, SCUMM and TINSEL properly stop CD audio playback on engine quit. (This only problem affected playback from CD, not from ripped audio files)
svn-id: r43512
2009-08-18 15:31:26 +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
Torbjörn Andersson
f11435bb6d 78 bytes isn't enough for some of the longer conversation options. 128 might
not be enough either, but at least it fixes bug #2827170 ("DRASCULA:
Conversation error").

svn-id: r42801
2009-07-26 10:10:08 +00:00
Torbjörn Andersson
7d238d8779 Make sure that "buf" is properly terminated. Actually, we could probably get
rid of "buf" completely, and replace it with face = syncChar[p] - '0', assuming
that syncChar only contains digits. But for now, let's make a minimal change.
This might fix bug #2826611 ("DRASCULA: Crash when smashing church window").

svn-id: r42776
2009-07-25 17:48:51 +00:00
Torbjörn Andersson
0e2c8b9be5 Don't hog the CPU while waiting for the player to pick a conversation option.
svn-id: r42757
2009-07-25 13:17:31 +00:00
Torbjörn Andersson
2e13d89233 Added word-wrapping to Drascula's conversation options. Fixes bug #2826607.
svn-id: r42755
2009-07-25 13:07:50 +00:00
Johannes Schickel
7e71865e91 Move the event recorder to its own class (EventRecoder inside common/EventRecorder.[h/cpp]).
svn-id: r42751
2009-07-25 12:59:46 +00:00
Eugene Sandulenko
1bd6f6c99f Added game GUI options to advancedDetector and updated all engines
svn-id: r41272
2009-06-06 17:56:41 +00:00
Max Horn
65b5d31814 COMMON: Removed Stream::ioFailed() and clearIOFailed(), as they are deprecated; however, retained ioFailed in SeekableReadStream and File for now (so for now this mainly affects WriteStream subclasses)
svn-id: r40725
2009-05-19 11:42:14 +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
Jordi Vilalta Prat
047f116515 Renamed MetaEngine::getCopyright() to getOriginalCopyright() to better match the meaning of the returned string, as discussed some time ago in scummvm-devel
svn-id: r39132
2009-03-05 12:04:58 +00:00
Max Horn
dd98126423 Engines: Fused several init&go methods into a single run method
svn-id: r39003
2009-03-01 04:42:46 +00:00
Max Horn
3fcbda829a Merged Engine::go() and ::init() into a new run() method (currently implemented by calling the existing init&go methods; to be cleaned up by engine authors
svn-id: r39002
2009-03-01 04:30:55 +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
Willem Jan Palenstijn
3f39213335 ignore any keypresses in the volume control dialog
svn-id: r38183
2009-02-14 22:46:54 +00:00
Max Horn
28cf213605 Moved AdvancedDetector from common/ to engines/
svn-id: r36132
2009-01-29 22:13:01 +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
Filippos Karapetis
ad3ee36805 Got rid of updateAnim2()
svn-id: r35747
2009-01-05 20:17:33 +00:00
Eugene Sandulenko
696897b058 Whoa! Removing trailing spaces.
svn-id: r35648
2009-01-01 15:06:43 +00:00
Torbjörn Andersson
87db0af8a0 Removed unused variable.
svn-id: r35223
2008-12-03 19:20:59 +00:00
Filippos Karapetis
157e051280 Applied wjpalenstijn's patch to fix bug #2111826 - "DRASCULA: Inserting save game names lags"
svn-id: r35221
2008-12-03 17:35:37 +00:00
Filippos Karapetis
b471aab57d Make sure that savegame names are 0-terminated
svn-id: r35220
2008-12-03 16:44:46 +00:00
Filippos Karapetis
29f59d07f4 Simplify line reading with the simpler readLine(), instead of readLine_NEW
svn-id: r35216
2008-12-03 11:47:57 +00:00
Filippos Karapetis
e7050a0c65 readLine_OLD -> readLine_NEW
svn-id: r35213
2008-12-03 08:59:12 +00:00
Johannes Schickel
2ef8a32a01 Fixed various g++ warnings ("format not a string literal and no format arguments").
svn-id: r35096
2008-11-16 20:20:31 +00:00
Johannes Schickel
5a0556f09c Committed my patch #2123680 "SDL: Backend transaction / rollback support".
svn-id: r35062
2008-11-14 22:08:10 +00:00
Max Horn
40136f2590 Switched various Engine APIs to use Common::Error
svn-id: r34916
2008-11-06 17:05:54 +00:00
Eugene Sandulenko
c7dd0bc853 Use better "silence" without clicks when speech is disabled.
svn-id: r34676
2008-09-28 22:19:11 +00:00
Eugene Sandulenko
294b953843 - Renamed withVoices to _subtitlesDisabled as it reflect the true meaning.
- Allowed to disable subtitles from options dialogs including RTL.

svn-id: r34675
2008-09-28 22:07:16 +00:00
Eugene Sandulenko
a2ddc7ffa2 Fix bug #2043489: DRASCULA: Cannot disable speech
svn-id: r34674
2008-09-28 21:53:14 +00:00
Max Horn
bf76057ec4 Removed tons of unused 'length' variables, to silence compiler warnings
svn-id: r34585
2008-09-16 20:12:25 +00:00
Filippos Karapetis
6a4d96649e - Moved some includes away from drascula.h
- Moved grr() to talk.cpp
- Removed the unnecessary parameter length from isTalkFinished()

svn-id: r34577
2008-09-16 11:49:40 +00:00