Commit Graph

490 Commits

Author SHA1 Message Date
Max Horn
2149a2383d Reduce indirect header dependencies further
svn-id: r48936
2010-05-04 12:00:16 +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
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
Max Horn
5568a8473b Get rid of Engine::_gameDataDir.
This greatly reduces indirect dependencies on several header files
from common.

svn-id: r48933
2010-05-04 11:56:52 +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
Robert Špalek
196f033e93 Fix static initialization
svn-id: r48722
2010-04-19 16:38:41 +00:00
Max Horn
a1840bd573 AUDIO: Rename Mixer::playInputStream to playStream
svn-id: r48637
2010-04-12 09:14:17 +00:00
Robert Špalek
c66e47cad4 Fix bug 2983187 on continuing palette change
svn-id: r48615
2010-04-11 06:02:41 +00:00
Robert Špalek
33cc92d414 Fixed bug 2976767 on corrupted char glyphs.
After unfinished translation of the game, several inaccessible characters
have been left in the game files.  Since the font does not contain all 256
characters, trying to draw them brings them random jump.  I now properly
skip these characters.

svn-id: r48462
2010-04-02 01:00:35 +00:00
Robert Špalek
2d8b25f656 Dragon History: fixing properly bug 2976774
The previous bugfix just hid the problem by removing an assert, but it might demonstrate
itself in another way later.  This is a proper bugfix.

svn-id: r48460
2010-04-01 22:01:40 +00:00
David Turner
1fb60b4990 Basic correction for bug #2976774 "DRACI: Segfault Crash When Leaving Inventory".
This patch corrects the valgrind fault, but may not be the ultimate fix.

This should be reviewed before backport to v1.1.0 branch.

svn-id: r48434
2010-03-31 03:19:01 +00:00
Max Horn
92c896d883 Patch #2973290: Semicolon cleanup
svn-id: r48359
2010-03-22 20:28:08 +00:00
Max Horn
cac0ac66e2 COMMON: Get rid of Common::StringList
svn-id: r48287
2010-03-18 15:54:40 +00:00
Max Horn
d78dba3bca COMMON: Move Common::RandomSource to common/random.*
svn-id: r48279
2010-03-18 15:07:11 +00:00
Jordi Vilalta Prat
05f942917e DRACI: Don't try to set the volume for channels that couldn't be allocated (fixes bug #2907954: "DRAGON: Crash in Intro")
svn-id: r48147
2010-02-27 15:54:31 +00:00
Yotam Barnoy
ef330ed9b4 Patch for bug 2943361 by littleboy, adding full kb modifier support to all engines + GUI and proper keypad handling
svn-id: r48101
2010-02-21 04:04:13 +00:00
Max Horn
ba1d97211f Remove last traces of File::addDefaultDirectory
svn-id: r48027
2010-02-09 22:37:13 +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
cebaa0b0d3 Started to get rid of Audio::FLAG_LOOP
svn-id: r47397
2010-01-19 23:50:33 +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
b227c660c6 Remove loop start/end params from Mixer::playRaw; convert some code from Mixer::playRaw to Mixer::playInputStream
svn-id: r47375
2010-01-19 11:20:58 +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
Johannes Schickel
0d995c5920 Rename all "Adlib" uses to "AdLib" to match the real name of the sound card / company.
Check this for reference:
http://en.wikipedia.org/wiki/Ad_Lib,_Inc.
http://www.crossfire-designs.de/images/articles/soundcards/adlib.jpg (note the upper left of the card)

This commit does not touch "adlib" and "ADLIB" uses!

Also it does not update all the SCUMM detection entries, which still use "Adlib".

svn-id: r47279
2010-01-12 21:07:56 +00:00
Robert Špalek
96068d30d9 Handle properly shouldQuit()
svn-id: r47215
2010-01-10 01:25:37 +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
9e04ca3633 Silence gcc warning.
svn-id: r46326
2009-12-09 23:05:36 +00:00
Johannes Schickel
2f372d79d5 Fix compilation for systems without USE_RGB_COLOR defined.
svn-id: r46323
2009-12-09 22:50:12 +00:00
Max Horn
f3420c6372 DRACI: Reduce header interdependencies; some cleanup
svn-id: r46320
2009-12-09 21:03:22 +00:00
Max Horn
c8873d8492 Changed MidiDriver::createMidi to take a MidiDriverType instead of an int
svn-id: r46316
2009-12-09 18:12:51 +00:00
Johannes Schickel
e3d1d914ac Attempt to fix MSVC warning C4121.
svn-id: r46299
2009-12-08 22:07:17 +00:00
Torbjörn Andersson
184a741757 For consistency, make F5 bring up the main menu in the Draci engine too, just
like megath just did in the TeenAgent engine.

svn-id: r46284
2009-12-07 20:32:54 +00:00
Lars Persson
61d68b9d4a Removed <cmath> includes since a) not a part of Symbian OS b) Compiles fine without it (at least with Symbian OS GCCE 3.4.3 and CW 2)
svn-id: r46213
2009-11-30 08:09:39 +00:00
Robert Špalek
63a6480057 Hopefully fix switching to the map right after switching the location
It seems that the mouse was simply on the below line and triggered the switch
to the map without the user realizing.

svn-id: r46171
2009-11-28 00:57:42 +00:00
Robert Špalek
87c26fe54b Fixed bug with exhausting sound handles
It was caused by forever re-starting the same sample when the animation was
stopped and the same frame got displayed over and over, each time triggering
playing the same sample.

svn-id: r46168
2009-11-28 00:07:22 +00:00
Robert Špalek
4e830d821c Fix SIGSEGV found by ValGrind
svn-id: r46142
2009-11-26 00:09:17 +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
Max Horn
e34f1415db DRACI: Reduce header interdependency
svn-id: r46117
2009-11-23 23:54:20 +00:00
Robert Špalek
95d4c62efb Fixed breaking long lines instead of using smaller font (which is sometimes not enough)
svn-id: r46101
2009-11-23 06:44:40 +00:00
Robert Špalek
604ed73b87 Move setIsReloaded(false) in enterNewRoom() to the right place.
Last commit moved it below, but that cancelled GPL2 programs run right
after loading the game.

svn-id: r46099
2009-11-22 21:27:30 +00:00
Robert Špalek
f6f8b66d45 Remove obsolete and unneeded logic bypassing reloading a location.
I have tested that this could only possibly happen when the game has been
loaded with last location being the map.  Then pressing Escape calls
enterNewRoom() and this superfluous optimization takes place.  It is harmless
to simply reload the map.  After having removed it, enterNewRoom() needs not
return any return value, because the test at the tail can be done by the
caller.  I have then restructured the code a little to make it cleaner.

svn-id: r46098
2009-11-22 21:12:23 +00:00
Robert Špalek
d3d16422e0 Further cleaned up the hack with removing old animations.
Now only a long-term (complete rewrite) TODO is left in the code, but nothing
urgent to solve.

svn-id: r46097
2009-11-22 20:44:37 +00:00
Robert Špalek
772b89682d Make sure hands are empty after loading the game
(otherwise we could have in our hands an unreachable object).  This works
thanks to moving clearing _currentItem into putItem(), which gets called
in inventoryReload().

svn-id: r46096
2009-11-22 20:25:27 +00:00
Robert Špalek
00063b1423 Clearing object animations in a cleaner way
Verified that we really do not need object animations even if they are in
a different location, and clearing them thus regardless of their location.
Although the game was not crashing due to previous work-arounds at this
moment, this cleanup obliterates the most horrible hack and makes sure
animations will never get stale.

svn-id: r46095
2009-11-22 20:17:39 +00:00
Robert Špalek
3d687d07f5 Fixed assert() on already loaded animation
Now the game seems fully playable with crazy loading all the time, even
though it is a hacky solution.  Updated the TODOs

svn-id: r46094
2009-11-22 20:02:13 +00:00
Robert Špalek
4bd395a1ee Updated an urgent TODO to make the game playable
svn-id: r46070
2009-11-22 09:21:40 +00:00
Robert Špalek
2397efd730 Fix SIGSEGV by an absolutely brutally horrible hack
I have thoroughly documented why this hack is needed and added ideas how to
fix it properly.

svn-id: r46068
2009-11-22 09:13:05 +00:00
Robert Špalek
3ddf90a872 Only enable changing rooms by left/right arrows when debugging
svn-id: r46059
2009-11-22 05:42:46 +00:00