Oystein Eftevaag
a698cdfcfc
Catalog the PAK files by base name instead of full path name so we can properly unload them. The method may be slightly hackish, but I don't see how else to do it since we apparently support recursive PAK files so the File object can't be instantiated directly using the FilesystemNode. It's this, or add a function to File that gives us just the base name of the file.
...
svn-id: r23762
2006-08-26 18:37:49 +00:00
Johannes Schickel
7d0435f23c
- adding LPGL headers to adlib sound specific files
...
- stating about dual license of adlib sound specific files
svn-id: r23708
2006-08-15 18:04:01 +00:00
Johannes Schickel
eee50637b8
Little Common::String usage 'fix'.
...
svn-id: r23698
2006-08-08 21:34:19 +00:00
Torbjörn Andersson
44dd6a386e
Committed my own patch #1533833 (minus one line that was left over from an
...
earlier experimental version) after discussing it with LordHoto. This works
around a bug in the "Pool of Sorrow" Adlib data which caused the channels to
drift more and more out of sync for each time the music looped. The patch
forces the channels involved to jump in sync. As with all such workarounds, it
may cause regressions. But it shouldn't.
svn-id: r23659
2006-08-03 13:11:16 +00:00
Torbjörn Andersson
e0cd675a47
Since the XMIDI music no longer automatically loops, there's no need to fade it
...
out just as it's reaching its most dramatic point.
svn-id: r23657
2006-08-03 11:13:06 +00:00
Torbjörn Andersson
6a40e7f789
This is a grossly over-simplified, yet hopefully sufficient for Kyrandia, way
...
of handling XMIDI loops. If anyone feels like doing it properly in
midiparser_xmidi.cpp, the Exult project probably has one of the better
reference implementations. For now, though, I don't see any real need to, and
this change is clearly flagged as a hack.
svn-id: r23656
2006-08-03 11:12:05 +00:00
Torbjörn Andersson
7d53480025
Kyra 2 has two types of XMIDI files: XMI and C55. It seems C55 are for the
...
General MIDI instrument set, so use them unless we're in MT-32 mode. This makes
the music sound a bit closer (at least to me) to what DOSbox plays.
svn-id: r23653
2006-08-01 13:42:33 +00:00
Torbjörn Andersson
56c59d1da6
Don't start the Kyra 2 menu music until the first frame has faded up, to better
...
match the original behaviour.
svn-id: r23652
2006-08-01 10:25:10 +00:00
Torbjörn Andersson
afe26b5ea5
Until the native Kyra 2 Adlib music is supported, enable the automagic MIDI-to-
...
Adlib converter.
svn-id: r23651
2006-08-01 07:44:38 +00:00
Torbjörn Andersson
c32c7e00c4
Don't set the MIDI volume to 255 at the end of a fade-out. At least on my
...
hardware, that causes an annoying spike in the volume. We already reset the
volume to 255 at the beginning of a new track anyway, as far as I can tell.
svn-id: r23650
2006-08-01 03:29:32 +00:00
Oystein Eftevaag
ec8f1b092d
Committing patch '[ 1531177 ] Kyra2 mock-up' by eriktorbjorn, with the addition of playing the music tracks as well (Only MIDI works for now though)
...
svn-id: r23649
2006-07-31 23:05:01 +00:00
Johannes Schickel
01b3a0b568
Yet more kyra3 init code.
...
svn-id: r23648
2006-07-31 16:37:34 +00:00
Max Horn
4a80db4c7b
* Added copyright string to all engine plugins
...
* Modified about dialog to list all available plugins with their resp. copyright
* Modified about dialog credits to show the GPL last (like movie end credits do with their legal text, too)
svn-id: r23645
2006-07-31 13:41:21 +00:00
Max Horn
a1bb64e24b
Const correctness
...
svn-id: r23644
2006-07-31 13:37:47 +00:00
Johannes Schickel
64c6399bd7
removing never used buffer.
...
svn-id: r23638
2006-07-30 15:05:36 +00:00
Johannes Schickel
3846565058
Implements item shape loading for kyra3.
...
svn-id: r23637
2006-07-30 14:53:28 +00:00
Torbjörn Andersson
066aa14f97
It's play(), not open(), that encounters the CMDS tag. At least in the intro
...
movie, which is the only one we currently play.
svn-id: r23626
2006-07-30 09:10:54 +00:00
Johannes Schickel
6cc1a57d3b
- fixes bug in fileData (introduced with last commit)
...
- show mouse cursor in Screen::setMouseCursor if it's allready shown
- a little bit more kyra3 init stuff
svn-id: r23623
2006-07-30 08:22:39 +00:00
Johannes Schickel
92649de672
- fixes copyright of kyra3.h
...
- implements a bit more init functions for kyra3
- removes hacked mouse cursor
- changes Resource::fileData to accept a null pointer for size
svn-id: r23622
2006-07-30 07:51:11 +00:00
Torbjörn Andersson
f51fc44e66
Added _quitFlag test to Kyra 2 animation and to waitForEvent().
...
svn-id: r23617
2006-07-29 05:59:44 +00:00
Johannes Schickel
f8d4994dc2
Little cleanup.
...
svn-id: r23616
2006-07-28 17:42:33 +00:00
Oystein Eftevaag
3c4b13ed33
Moves the kyra2 code to kyra2.cpp and kyra2.h, renames WSAMovieV3 to WSAMovie2 (kyra2 uses the same format), renames a define in kyra3.h for consistency, and adds a case for CMDS in the VQA player to avoid the constant warning (the tag is always present and empty). Credit/blame for the last one goes to Clemmy :). Starting kyra2 will now show the title animation.
...
svn-id: r23614
2006-07-28 11:42:53 +00:00
Johannes Schickel
a69ac7717d
Oops it should never be renamed to c1_* but to o1_* changing this now.
...
svn-id: r23613
2006-07-27 20:39:52 +00:00
Johannes Schickel
ee5621137f
- renaming all opcodes from cmd_* to c1_*
...
- changing ScriptHelper functions so it will be useable for kyra2 and kyra3 too
- unbreaking savegames (increasing the VERSION number since the game flags table got resized to be useable for kyra3)
svn-id: r23612
2006-07-27 20:30:51 +00:00
Johannes Schickel
8a0ec2a3e5
- moving KyraEngine_v3 declaration to newly added kyra3.h
...
- implements a little bit init stuff
- implements some music handling
svn-id: r23610
2006-07-27 18:29:14 +00:00
Johannes Schickel
d9e5134919
Workaround for bug #1498221 ("KYRA1: Glitches when meeting Zanthia").
...
svn-id: r23608
2006-07-27 00:09:13 +00:00
Johannes Schickel
bcc892ec81
Make the midi player threadsafe (this should fix bug #1506583 "KYRA1: Crash on exceeded polyphony").
...
svn-id: r23605
2006-07-26 22:24:33 +00:00
Torbjörn Andersson
eb7cda50aa
Fade out the music when using the Kyra 3 menu to exit. (The original does, and
...
it might make a useful test case for the fade-out code.)
svn-id: r23604
2006-07-26 20:39:27 +00:00
Torbjörn Andersson
e9f1323221
End the Kyra 3 menu screen if _quitFlag is set.
...
svn-id: r23603
2006-07-26 20:30:57 +00:00
Torbjörn Andersson
ec6a9b0071
Removed unnecessary #include
...
svn-id: r23598
2006-07-26 06:36:58 +00:00
Johannes Schickel
d2befe0c6f
Skips scroll down sequence then the user wishes to skip the intro.
...
svn-id: r23596
2006-07-26 05:33:48 +00:00
Johannes Schickel
5ccb436cad
Nicer quit handling in the intro sequences.
...
svn-id: r23594
2006-07-26 05:27:34 +00:00
Johannes Schickel
37d050e9da
Add support for looping the kyra3 main menu.
...
svn-id: r23593
2006-07-25 15:11:42 +00:00
Max Horn
4fcdbb9349
String class usage cleanup
...
svn-id: r23582
2006-07-23 15:08:48 +00:00
Torbjörn Andersson
b845eb9b99
Initialise the screen before creating the music driver. The MT-32 driver wants
...
to draw to the screen.
svn-id: r23574
2006-07-23 07:06:26 +00:00
Johannes Schickel
4ae5cef491
- let md5_file accept a FilesystemNode too
...
- changes some engine detectors to use it
svn-id: r23559
2006-07-22 14:59:44 +00:00
Johannes Schickel
7caf96af6f
Changes usage of FilesystemNode::name to FilesystemNode::displayName in the detector code.
...
svn-id: r23554
2006-07-22 14:28:39 +00:00
Johannes Schickel
eb23d7b9a0
Changing usage of FSNode::displayName to FSNode::path
...
svn-id: r23549
2006-07-22 00:44:56 +00:00
Johannes Schickel
29f99a029e
Using path instead of displayName.
...
svn-id: r23541
2006-07-20 21:41:59 +00:00
Johannes Schickel
73869dca9f
- don't error on CHAPTER1.VRM miss anymore
...
- nicer error messages when no font files are found
- implements nicer way to load fonts
svn-id: r23531
2006-07-16 19:44:39 +00:00
Johannes Schickel
1a31d7da7e
Should fix loading of pakfiles.
...
svn-id: r23516
2006-07-15 21:22:07 +00:00
Johannes Schickel
1ad8d3ee6e
Adds filesize check for kyra.dat, this forces to upgrade always to the newest version though.
...
svn-id: r23514
2006-07-15 20:46:27 +00:00
Johannes Schickel
ea0e3a806c
Get rid of some asserts and adds error messages instead.
...
svn-id: r23513
2006-07-15 20:37:32 +00:00
Johannes Schickel
d630b3e722
Little cleanup.
...
svn-id: r23512
2006-07-15 20:32:54 +00:00
Johannes Schickel
04503d462d
Use the FS Api to load all .PAK and .APK files. (I just made a few quick tests, but before this should be integrated to branch-0-9-0 there should be a test for it on *every* platform, since I'm not quite sure if FilesystemNode::displayName is useable for this...)
...
svn-id: r23511
2006-07-15 20:30:36 +00:00
Johannes Schickel
a8e3e929e8
A little cleanup (merges kyra1_games, kyra2_games, kyra3_games into kyra_games)
...
svn-id: r23510
2006-07-15 20:09:45 +00:00
Johannes Schickel
f5d8055777
Changes names of Kyra2 and Kyra3 detected games.
...
svn-id: r23509
2006-07-15 20:00:08 +00:00
Torbjörn Andersson
6358547a43
More whitespace changes.
...
svn-id: r23496
2006-07-14 13:33:58 +00:00
Johannes Schickel
db2ffa4285
Changes init error handling of kyra engine (engine fails at Engine_KYRA_create now instead of KyraEngine::init, also adds check for invalid game path like the scumm
...
engine does).
svn-id: r23426
2006-07-08 14:51:26 +00:00
Johannes Schickel
abdebd3bfd
- fixes some c/p errors from my last commit
...
- fixes embedded pak loading
svn-id: r23425
2006-07-08 14:25:23 +00:00
Johannes Schickel
57621c9245
Implements loading of 'westwood.001' for kyra3 (no need to run the installer anymore).
...
(thanks to eriktorbjorn for his code to extract files from westwood.001)
svn-id: r23423
2006-07-08 13:56:56 +00:00
Johannes Schickel
93e9dee0d1
Adds a message dialog if kyra.dat is missing which tells the user to download the kyra.dat file.
...
svn-id: r23421
2006-07-08 12:23:44 +00:00
Johannes Schickel
ac8607f433
Fixes save/load of kyra engine.
...
svn-id: r23287
2006-06-24 12:03:30 +00:00
Max Horn
ff15667544
These FIXME comments can go, I think :)
...
svn-id: r23277
2006-06-24 09:34:24 +00:00
Max Horn
ca2a6d7cd1
Fixing a leak in the Kyra engine (the savefile manager allocated by class Engine was never freed)
...
svn-id: r23276
2006-06-24 09:29:57 +00:00
Max Horn
9a955180a4
* Renamed config.mak to config.mk
...
* Renamed common.rules to rules.mk
* Removed explicit declaration of MODULE_DIRS in various spots (instead we let rules.mk compute it)
svn-id: r23275
2006-06-24 08:48:11 +00:00
Max Horn
d210b19aec
Move backends/fs/fs.h and .cpp to common/fs/fs.h and .cpp
...
Rationale: backend implementations belong to backends/, but portable APIs meant to be used by high level code is for common / sound / graphics / ... (compare also with backends/midi vs. sound/mididrv.h)
svn-id: r23274
2006-06-24 08:07:48 +00:00
Oystein Eftevaag
499b5491eb
Makes sure updateScreen() is called once in a while in the menu polling loop, to give backends some drawing time for virtual keyboards etc
...
svn-id: r23169
2006-06-18 10:39:57 +00:00
Johannes Schickel
9dd02260a6
removes _selectedMenuItem again.
...
svn-id: r22944
2006-06-05 19:43:44 +00:00
Chris Apers
81e0a00966
Fixed PalmOS ARM crashes
...
svn-id: r22942
2006-06-05 19:33:10 +00:00
Johannes Schickel
8b24dc9bdf
wrong palettes should be really fixed now.
...
svn-id: r22912
2006-06-04 12:30:29 +00:00
Johannes Schickel
c590229796
Should fix strange palettes in some rooms.
...
svn-id: r22910
2006-06-04 12:16:12 +00:00
Torbjörn Andersson
7b2362702f
This hack is no longer needed to make the mouse cursor visible on the Kyra 3
...
main menu.
svn-id: r22905
2006-06-03 19:43:57 +00:00
Johannes Schickel
392fe0cad1
Don't allow creation of save file when the user quits the game while the intro.
...
svn-id: r22904
2006-06-03 18:38:36 +00:00
Johannes Schickel
4a6b2a3276
Fixes visible mouse cursor in the intro with classic theme.
...
svn-id: r22903
2006-06-03 18:34:57 +00:00
Johannes Schickel
35e7eacc3f
Changes some char* usage to Common::String.
...
svn-id: r22902
2006-06-03 18:30:07 +00:00
Johannes Schickel
6cfb416d44
- Replaces usage of PAKChunk* with PAKChunk for Common::List, should solve some strange MSVC6 warnings/(errors).
...
svn-id: r22900
2006-06-03 17:58:13 +00:00
Johannes Schickel
369e79bfba
Implements cmd_fadeEntirePalette, should fix some missing palette fades.
...
svn-id: r22888
2006-06-03 15:13:18 +00:00
Johannes Schickel
48af506189
Fix for bug # 1497965 ("KYRA1: Skipping dialogue requires two clicks").
...
svn-id: r22848
2006-06-03 00:30:28 +00:00
Johannes Schickel
97b3b74ea1
Oops. sfx should be on per default.
...
svn-id: r22845
2006-06-02 23:01:33 +00:00
Johannes Schickel
6ac60c9c7b
Fix for bug # 1497961 ("KYRA1: in-game "Music" option not working").
...
svn-id: r22844
2006-06-02 22:57:02 +00:00
Torbjörn Andersson
4c9b3ce5e3
Call setWalkspeed() after reading config settings, and after loading savegames,
...
so that _timers[] is properly synced with _configWalkspeed. Should fix bug
#1498660 .
svn-id: r22814
2006-06-01 09:49:56 +00:00
Lars Persson
44d48ed594
GCC 2.9x fix for Symbian OS, for accessing class within Common namespace
...
svn-id: r22807
2006-05-31 19:55:29 +00:00
Torbjörn Andersson
2ce9edd7f7
Fixed subtitles Y coordinate in characterSays(). I have no way of confirming
...
this, but it seems obvious to me that it's trying to subtract the character's
scaled height, and this is how that's calculated elsewhere as far as I can see.
svn-id: r22769
2006-05-30 12:13:34 +00:00
Oystein Eftevaag
5d562eb3c5
Committed patch [ 1496602 ] KYRA: typo on Kyra2 file list
...
, thanks to Bellut
svn-id: r22729
2006-05-29 01:55:42 +00:00
Torbjörn Andersson
bc5b877aa9
Got rid of _selectedMenuItem to make LordHoto happier.
...
svn-id: r22725
2006-05-28 16:29:31 +00:00
Torbjörn Andersson
e4989b37b7
Mock-up version of the Kyra 3 main menu. Just enough to be able to select the
...
intro cutscene.
svn-id: r22724
2006-05-28 16:22:12 +00:00
Johannes Schickel
28114e3007
Sets a blank palette at startup.
...
svn-id: r22719
2006-05-28 12:33:41 +00:00
Johannes Schickel
d28d6fe4fb
cleanup
...
svn-id: r22717
2006-05-28 12:23:49 +00:00
Johannes Schickel
1750be5b5a
- makes Screen::getPagePtr private
...
- introduces Screen::getCPagePtr and Screen::getPageRect (which should ease the introduction of dirty rect handling)
- moves KyraEngine::loadBitmap to Screen
svn-id: r22716
2006-05-28 12:19:45 +00:00
Oystein Eftevaag
a442af2703
Another couple of fixes for the spanish floppy version (menu strings specifically)
...
svn-id: r22714
2006-05-28 12:10:11 +00:00
Johannes Schickel
a822d8e6e0
adds GF_ITALIAN to the list of language flags.
...
svn-id: r22713
2006-05-28 11:55:42 +00:00
Johannes Schickel
a02f239659
cleanup
...
svn-id: r22712
2006-05-28 11:53:20 +00:00
Johannes Schickel
1d969e8acd
removes some tabs.
...
svn-id: r22710
2006-05-28 11:48:14 +00:00
Johannes Schickel
6552881322
This could fix detecting unknown non-english versions which contain a MAIN_ENG.CPS and a language specific image.
...
svn-id: r22709
2006-05-28 11:46:22 +00:00
Johannes Schickel
727f66de39
Commits Chriliths patch for fixing Kyra on PalmOS.
...
svn-id: r22708
2006-05-28 11:43:04 +00:00
Johannes Schickel
073f859de9
Fixes bug # 1494945 ("KYRA1: Actor disappearing in an animation").
...
svn-id: r22707
2006-05-28 11:33:17 +00:00
Torbjörn Andersson
b17f0e8b6d
The Kyra settings are now stored in the config file instead of the savegames.
...
The settings in older savegames are ignored.
svn-id: r22705
2006-05-28 09:21:32 +00:00
Oystein Eftevaag
dbaf5206ae
Added speechEnabled() and textEnabled() to simplify the text/speech config checks a bit, and added checks some more places
...
svn-id: r22703
2006-05-28 06:07:54 +00:00
Oystein Eftevaag
3a1dec3ad1
Added checks for sound/text config in Brandons responses to using the amulet
...
svn-id: r22699
2006-05-28 05:09:09 +00:00
Oystein Eftevaag
8161aa8adb
Adding a safety check before the stopHandle call().. May or may not be necessary.
...
svn-id: r22698
2006-05-28 04:53:22 +00:00
Oystein Eftevaag
77910d4163
Fix for [ 1472007 ] KYRA1: Bypassing cutscenes with ESC doesn't stop speech
...
svn-id: r22697
2006-05-28 04:46:34 +00:00
Oystein Eftevaag
9a7f92d558
Kyra.dat wasn't being loaded for the kyra1 demo (which is needed). Fixed.
...
svn-id: r22696
2006-05-28 04:08:25 +00:00
Oystein Eftevaag
76d722d941
Fixes bug [ 1480746 ] KYRA1: menu triggers assertion, and sets the text/speech config options correctly for CD versions
...
svn-id: r22693
2006-05-28 02:51:03 +00:00
Torbjörn Andersson
813e3d1aac
Maintain the same screen update frequency while waiting for speech to finish.
...
This should take care of half of bug #1494934 . The other half was fixed in the
SDL backend earlier.
svn-id: r22683
2006-05-27 13:33:27 +00:00
Torbjörn Andersson
c1c5080fcd
Draw the selected menu item (currently always the first one) highlighted, i.e.
...
white instead of yellow.
svn-id: r22676
2006-05-27 11:59:40 +00:00
Torbjörn Andersson
da7140c3cf
This produces the correct character spacing for the main menu.
...
svn-id: r22664
2006-05-26 16:02:37 +00:00
Torbjörn Andersson
fba9e15916
We don't have a mouse cursor yet, but this is probably the point where it
...
should be shown.
svn-id: r22663
2006-05-26 15:55:42 +00:00
Torbjörn Andersson
5bbdde5479
Removed hack to flush mouse events. No longer needed, apparently.
...
svn-id: r22662
2006-05-26 15:44:46 +00:00
Johannes Schickel
f548f97666
Fixes input handling while moving.
...
svn-id: r22661
2006-05-26 14:21:53 +00:00
Johannes Schickel
3485102a7e
- redraw inventory before entering a room
...
- some cleanup
svn-id: r22660
2006-05-26 14:16:42 +00:00
Torbjörn Andersson
8062eb6ec3
Set and show/hide mouse cursors through a "cursor manager" (analogous to the
...
recently added (cursor) palette manager) so that the cursor can be properly
restored after returning from the GUI.
If there's any C++ magic that can keep the backend functions from being called
by anything else than these managing classes, that would probably be a good
idea. Also, since the cursor manager keeps a copy of the cursor image, perhaps
there are at least some backends that will no longer need to?
svn-id: r22639
2006-05-25 22:51:42 +00:00
Torbjörn Andersson
2353454adf
Fade down the palette and the music in playVQA(). (We can't fade down the
...
palette before that, I think, because then we don't have any good palette to
make a backup copy of.)
svn-id: r22625
2006-05-25 11:10:49 +00:00
Torbjörn Andersson
1162a759c0
Added support for fading digital music in or out.
...
svn-id: r22624
2006-05-25 09:53:51 +00:00
Johannes Schickel
197b1f4e88
Some more _quitFlag checks, makes quitting while end sequence faster.
...
svn-id: r22623
2006-05-25 08:07:20 +00:00
Johannes Schickel
259e06a69b
- Adds some _quitFlag checks
...
- deletes Screen::drawPixel
svn-id: r22622
2006-05-25 08:02:17 +00:00
Johannes Schickel
a052d89f8b
Fixes bead movement speed in end scene.
...
svn-id: r22621
2006-05-25 07:53:58 +00:00
Johannes Schickel
8d954b7ae5
Fixes bug # 1471893 ("KYRA1: Graphics glitch when Malcolm turns to stone").
...
svn-id: r22612
2006-05-24 14:34:38 +00:00
Johannes Schickel
f2641ce081
Removes debug printf.
...
svn-id: r22610
2006-05-24 14:18:45 +00:00
Torbjörn Andersson
3a025038da
Check _quitFlag during the first parts of the Kyra 3 main menu animation.
...
svn-id: r22587
2006-05-23 20:10:01 +00:00
Torbjörn Andersson
dafc2c8ceb
Fix for saving the palette before playing a VQA movie. (Suggested by LordHoto.)
...
svn-id: r22586
2006-05-23 20:05:38 +00:00
Torbjörn Andersson
7090f051a0
Fix debug messages.
...
svn-id: r22570
2006-05-22 07:52:10 +00:00
Torbjörn Andersson
c40a8b48a1
Cleanup.
...
svn-id: r22569
2006-05-22 07:27:20 +00:00
Torbjörn Andersson
57efbacb9a
Palette handling simplification, suggested by LordHoto.
...
svn-id: r22567
2006-05-21 20:41:53 +00:00
Torbjörn Andersson
a1f5bddaa8
If possible, sync the frame to getSoundElapsedTime().
...
svn-id: r22566
2006-05-21 20:25:22 +00:00
Torbjörn Andersson
71ba5c0f58
Grotesque hack to support the jung2.vqa movie. Either the VQA is less well
...
understood than I hoped, or the offset to the first frame of the movie is
completely out to lunch. Scan the file for the first VQFR chunk and use that
offset instead.
svn-id: r22565
2006-05-21 20:08:14 +00:00
Torbjörn Andersson
bda33949e4
The unsupported cutscene is called "jung", not "junk". (It just happens to look
...
like junk at the moment.)
svn-id: r22564
2006-05-21 19:08:10 +00:00
Torbjörn Andersson
b98a67d1eb
More VQA fixes:
...
* Use setScreenPalette() rather than calling the backend directly. (As an extra
bonus, the VQA player now only needs to store 3 bytes per colour.)
* Hide the mouse cursor while the movie is playing.
svn-id: r22563
2006-05-21 19:03:27 +00:00
Torbjörn Andersson
9fad465cf6
At LordHoto's request...
...
* The VQA move player isn't as similar to the WSA movie player as we first
envisioned, so the VQA player no longer inherits from Movie. It does retain
a fairly similar calling interface, though.
* Use the Kyra engine's idea of screen dimensions, rather than the backend's.
svn-id: r22561
2006-05-21 18:16:34 +00:00
Torbjörn Andersson
b2d8f804cd
Some minor VQA player fixes:
...
* The playVQA() function now takes the name of the cutscene, rather than the
filename. This is so that playVQA("FOO") will be able to play FOO0.VQA,
FOO1.VQA or FOO2.VQA, depending on which movie size is selected.
* The VQA player centers movies by default, so don't set the position to 0,0.
* Ask the backend for screen dimensions (for centering the movie) rather than
hard-coding them.
svn-id: r22560
2006-05-21 17:28:03 +00:00
Johannes Schickel
344cc2f475
- allows kyra3 to exit again
...
- implements language selection for kyra3
svn-id: r22559
2006-05-21 16:06:29 +00:00
Johannes Schickel
ef6645c5ba
- reworks quit handling (no _system->quit() anymore)
...
- fixes some deinitalization problems
svn-id: r22558
2006-05-21 15:41:32 +00:00
Johannes Schickel
c47dadeb1f
- adds debugC calls to KyraEngine_v3 functions
...
- finishes KyraEngine_v3::gui_printString
svn-id: r22557
2006-05-21 15:20:12 +00:00
Johannes Schickel
3af8e4ea4a
Implements kyra3 main menu drawing.
...
svn-id: r22556
2006-05-21 15:02:12 +00:00
Johannes Schickel
dce7af1f5c
makes destructor of KyraEngine virtual
...
svn-id: r22547
2006-05-20 15:02:39 +00:00
Torbjörn Andersson
3a028875a1
Using assert(_something->init()) is a bad idea. Assertions can be disabled.
...
svn-id: r22533
2006-05-19 07:34:24 +00:00
Max Horn
909cd8c93a
Added some FIXMEs to the kyra engine
...
svn-id: r22531
2006-05-19 07:20:27 +00:00
Max Horn
d113bf3a08
Fix warning
...
svn-id: r22530
2006-05-19 07:12:38 +00:00
Johannes Schickel
570b9e2c9d
- load fonts for kyra3
...
- adds screen dim tables for kyra3
- adds palette / screen backup for the vqa player
- small changes in the vqa player to use the Kyra::Screen functions
- adds (partially implemented/unimplemented) main menu drawing/handling functions (nothing to see yet)
svn-id: r22528
2006-05-18 22:46:34 +00:00
Torbjörn Andersson
2531fd5873
Added player for the Kyra 3 VQA cutscenes, based on my earlier prototype. It
...
could use some cleanup, and there are a couple of TODOs sprinkled throughout
the code, but it seems to work reasonably well. Until the Kyra 3 main menu is
implemented, it won't actually be used though.
It uses the appendable audio stream class, which I have moved out of the SCUMM
engine.
svn-id: r22526
2006-05-18 21:46:07 +00:00
Johannes Schickel
c65d45146c
fixes kyra2 gameflag init
...
svn-id: r22514
2006-05-18 11:36:29 +00:00
Torbjörn Andersson
b9206a3e98
Removed leftover printf()
...
svn-id: r22513
2006-05-18 11:35:08 +00:00
Torbjörn Andersson
a3fc0682f4
Cleanup.
...
svn-id: r22512
2006-05-18 11:32:59 +00:00
Torbjörn Andersson
65091f7370
Added (optional) looping to the digital sound class.
...
svn-id: r22504
2006-05-17 21:14:19 +00:00
Torbjörn Andersson
6bf1e10768
Fixed two off-by-one errors. One would cause the same frame of the Kyra 3 to be
...
displayed twice in a row. The other, more serious one, would cause ScummVM to
crash when reaching the end of the music. Now the music loops properly. (It
does fade down before looping, but that's how it is in the original as well.
It's just the way the music is recorded.)
svn-id: r22503
2006-05-17 20:54:51 +00:00
Torbjörn Andersson
0099932d0d
Loop the Kyra 3 animation indefinitely.
...
svn-id: r22502
2006-05-17 20:35:25 +00:00
Torbjörn Andersson
4da20ba369
Maybe the svn:keywords were already set? Maybe this will fix the file headers instead.
...
svn-id: r22501
2006-05-17 20:25:08 +00:00
Torbjörn Andersson
c27b1201d4
Fixed crackling in Kyra 3 sound. (At least what little of it ScummVM currently
...
plays before finishing.)
svn-id: r22499
2006-05-17 19:42:55 +00:00
Johannes Schickel
f7c29ccc8b
- adds AUD file player (has still some problems with playing)
...
- adds a new sound class SoundDigital (only used for Kyra3) (needs more work though)
svn-id: r22497
2006-05-17 18:07:02 +00:00
Eugene Sandulenko
ba2a6152c7
Set gameflags for kyra3 properly.
...
svn-id: r22493
2006-05-16 17:38:04 +00:00
Johannes Schickel
3d10ecf1ae
Removes ENABLE_KYRA2 and ENABLE_KYRA3.
...
svn-id: r22492
2006-05-16 16:31:23 +00:00
Johannes Schickel
47a39a8401
Oops forgot some define checks
...
svn-id: r22491
2006-05-16 16:15:33 +00:00
Johannes Schickel
c8aa32d095
- implements kyrandia 3 wsa loader
...
- fixes initalisation problems
- adds setX, setY, setDrawPage to Kyra::Movie instead of directly accessing _x, _y and _drawPage
svn-id: r22490
2006-05-16 16:04:24 +00:00
Johannes Schickel
a5b4fb7f18
- little cleanups
...
- adds kyra3 dummies
svn-id: r22425
2006-05-12 23:57:53 +00:00
Johannes Schickel
be6b640b92
Adds clipping to the workaround in "preserveOrRestoreBackground", so it does not overwrite the interface.
...
svn-id: r22404
2006-05-10 20:45:42 +00:00
Johannes Schickel
56e03a85dd
Adds workaround for bug # 1477364 ("KYRA1: Water dripping freezes") until a proper solution is found.
...
svn-id: r22403
2006-05-10 20:30:58 +00:00
Johannes Schickel
e6350f8afa
Enables OSystem::kFeatureAutoComputeDirtyRects until proper dirty rect managment is implemented.
...
svn-id: r22402
2006-05-10 20:28:27 +00:00
Torbjörn Andersson
816fd39d58
Added delay() to delayWithTicks() as well. This function is quite similar to
...
some of the custom delay loops in script_v1.cpp. Could it be used there?
svn-id: r22394
2006-05-08 16:04:08 +00:00
Torbjörn Andersson
575eb8b775
Replaced a bunch of delay loops with a new delayUntil() function. Now all of
...
them will at least sleep if the remaining delay is at least 10 ms. (Personally,
I don't like the idea of busy-waiting even 9 ms, but now that it's in its own
function, it becomes much easier if we want to change that behaviour. There are
still plenty of custom delay loops left, though.)
svn-id: r22393
2006-05-08 15:40:30 +00:00
Torbjörn Andersson
73f0a23bee
Added comment about switch case fallthrough. I assume this one is deliberate,
...
but they're easy to miss at a casual glance.
svn-id: r22392
2006-05-08 14:49:54 +00:00
Torbjörn Andersson
484b480b45
As LordHoto pointed out, placeItem is already initialised to false, so we only
...
need to set it to true.
svn-id: r22391
2006-05-08 13:52:44 +00:00
Torbjörn Andersson
c5d912fa1c
Small cleanup. It's not that I mind fallthroughs - as long as they are clearly
...
labelled as being intentional - but to save just one line of code? That hardly
seems worth it.
svn-id: r22390
2006-05-08 13:42:29 +00:00
Torbjörn Andersson
e2656a276a
Changed abs() to ABS()
...
svn-id: r22389
2006-05-08 13:34:21 +00:00
Torbjörn Andersson
8179d3e80b
Missed a couple of switch cleanups.
...
svn-id: r22385
2006-05-08 10:29:20 +00:00
Torbjörn Andersson
cf42a24833
Cleanup: Use ScummVM indentation style for switch() cases. In some cases, I
...
have added or removed "break"s, but not in any way which should change the
program's behaviour. I.e. I've added "break" to the final case, and after
calling quitGame(), and I've removed "break" after "return".
svn-id: r22383
2006-05-08 10:16:19 +00:00
Johannes Schickel
027fb7febe
Fixes playing of credits music.
...
svn-id: r22378
2006-05-07 19:20:19 +00:00
Johannes Schickel
40189ab7e6
Adds (partial) support for italian floppy. (still hardcoded strings are missing) (Bug # 1409244 ("KYRA: GFX problems with ITALIAN floppy")).
...
svn-id: r22333
2006-05-04 11:19:48 +00:00
Johannes Schickel
e5b2d9a527
Fixes typo.
...
svn-id: r22310
2006-05-03 14:26:59 +00:00
Johannes Schickel
6776fb3296
- moves detection code to plugin.cpp.
...
- splits game table for kyra1 and kyra2.
svn-id: r22309
2006-05-03 14:24:48 +00:00
Johannes Schickel
96fd5e1fbc
- modifies loadBitmap not to crash if a image isn't found
...
- starts to clean up the engine initalisation code
svn-id: r22308
2006-05-03 13:40:21 +00:00
Johannes Schickel
1d6a1bf157
Fix for bug # 1480744 ("KYRA1: mouse cursor vanishes").
...
svn-id: r22307
2006-05-03 13:19:21 +00:00
Johannes Schickel
73dbd28873
Just add kyra2 to kyra_list if ENABLE_KYRA2 is defined.
...
svn-id: r22256
2006-05-01 13:05:18 +00:00
Johannes Schickel
f84699ffbd
Makes malcolm walking into the kyragem room after some time. (fixes half of bug #1471893 ("KYRA1: Graphics glitch when Malcolm turns to stone"))
...
svn-id: r22255
2006-05-01 12:57:24 +00:00
Oystein Eftevaag
ff7955f4d3
Adds archive file list, MD5 for my CD version, and a few function stubs for Hand of Fate, to use as a basis for further work
...
svn-id: r22252
2006-05-01 00:25:41 +00:00
Max Horn
27307acd7c
Moved the AudioCDManager as well as class AudioStream and its (standard) subclasses to namespace Audio
...
svn-id: r22231
2006-04-29 22:33:31 +00:00
Max Horn
bf73598811
* Changed the createEngine() factory function of our plugins to return an error code (the engine is now passed indirectly via a double pointer)
...
* Removed Engine_Empty (obsolete now that engines can return actual error codes)
svn-id: r22199
2006-04-29 00:27:20 +00:00
Oystein Eftevaag
47068bde51
Typo
...
svn-id: r22190
2006-04-27 00:42:12 +00:00
Oystein Eftevaag
9ec94f6fcb
Move the detector code out of the constructor and into init() to do error handling (specifically the GUI error message if no game is found in the specified directory), and cleans up the constructor/destructor a bit to allow a clean exit.
...
svn-id: r22189
2006-04-27 00:39:10 +00:00
Eugene Sandulenko
bf53520130
- Check if path specified for a game in scummvm.ini really exists and complain
...
if it does not
- Give more understandable feedback to user when SCUMM module can't find
a game
- Put TODO to kyra engine as their current detection scheme does not let
easily tell if game data really present in specified directory
svn-id: r22163
2006-04-25 23:07:59 +00:00
Oystein Eftevaag
d5c8a791a6
Fixes some coordinate initialization in the menus, and makes sure the initial savegame is created when kyrandia is started for the first time
...
svn-id: r22153
2006-04-25 15:42:37 +00:00
Oystein Eftevaag
9b589e06cd
Adds some code to dynamically resize and readjust the menus if the text strings of the current language are too long, to avoid overlaps etc.
...
svn-id: r22148
2006-04-25 11:58:21 +00:00
Oystein Eftevaag
f25cb2e735
Uses kyra.dat for GUI strings instead of hardcoding them, which means localized strings are now supported for the menus. Note that the size of the menus are not yet calculated to account for the longer strings in some languages
...
svn-id: r22105
2006-04-23 14:43:16 +00:00
Johannes Schickel
b756c3e899
Fixes use of textspeed settings if voice+text mode is enabled. (thanks to salty-horse)
...
svn-id: r21999
2006-04-18 02:08:51 +00:00
Johannes Schickel
0eee3fe591
- Implements copyRegion without transparency checking
...
- Uses copyRegion without transparency checking to fix credits drawing bugs
svn-id: r21989
2006-04-17 19:52:31 +00:00
Johannes Schickel
2fb0ce8c57
Simplifies credits.txt loading.
...
svn-id: r21988
2006-04-17 19:39:31 +00:00
Johannes Schickel
592e37accd
Fixes bug #1471895 ("KYRA1: Kyragem goes black at the very end").
...
svn-id: r21987
2006-04-17 19:33:08 +00:00
Torbjörn Andersson
6e2a18e28d
Rewrote the timing of the Kyra end credits so that it doesn't matter that the
...
variables are signed. Otherwise the credits may hang on a slow system.
svn-id: r21986
2006-04-17 19:31:05 +00:00
Oystein Eftevaag
bdd5a25c16
Implements the end credits, and disables fast forwarding in the intro.
...
svn-id: r21980
2006-04-17 17:39:08 +00:00
Max Horn
ba1b25305e
Removed the directory parameter from md5_file
...
svn-id: r21937
2006-04-16 12:50:39 +00:00
Max Horn
68cb7f52c8
- Renamed ConfigManager::getActiveDomain to getActiveDomainName, and added a new getActiveDomain method that returns a pointer to the actual active *domain*
...
- Added Engine::_targetName whose value is computed from the name of the active domain
- Removed GameDetector::_targetName, instead code now uses either Engine::_targetName or the name of the active domain
- This in turn allowed for removing usage of GameDetector in many places
svn-id: r21916
2006-04-15 20:36:41 +00:00
Max Horn
1470dadb1d
Changed File::open to take a Common::String as file name parameter
...
svn-id: r21867
2006-04-14 01:48:51 +00:00
Max Horn
cf202049ff
Fixing mismatch between format strings and data on some systems
...
svn-id: r21827
2006-04-12 14:54:12 +00:00
Jonathan Gray
eb3ae7d726
sizeof(void *) != sizeof(int) for a large number of systems.
...
Fix a lot of debug/error statements that were using %d/%x
for the result of pointer arithmetic.
As C++ apparently has no format string for ptrdiff_t use
%lu/%lx as appropriate.
svn-id: r21824
2006-04-12 10:01:41 +00:00
Max Horn
94e647235f
Fix const correctness in Kyra's StaticResource::loadStrings and StaticResource::loadPaletteTable (notice the difference between a pointer pointing to a pointer pointing to const memory, vs. a pointer pointing to a *constant* pointer pointing to const memory)
...
svn-id: r21708
2006-04-09 00:44:08 +00:00
Eugene Sandulenko
5a2ad04a9e
Introduced language EN_ANY used for general English game entries. EN_USA and
...
EN_GRB should be used for games which have both variants. Currently it is
MM NES and BASS. All other are switched to EN_ANY.
svn-id: r21702
2006-04-08 23:12:56 +00:00
Max Horn
e7a8bb6abf
Modified the REGISTER_PLUGIN macro so that it allows (and requires) a trailing semicolon (this helps certain tools to parse our code better)
...
svn-id: r21689
2006-04-08 12:06:07 +00:00
Max Horn
8cf8acfd63
Renamed various *GameSettings to GameSettings (our namespaces are enough to distinguish them)
...
svn-id: r21686
2006-04-08 11:21:04 +00:00
Eugene Sandulenko
8fa9bd6728
Removed extra exclamation marks in warning() calls as well.
...
svn-id: r21608
2006-04-04 22:21:10 +00:00
Eugene Sandulenko
d292c0ec55
Since our debug() adds an exclamation mark at the message end, remove
...
it in several calls to avoid duplication!!11!
svn-id: r21607
2006-04-04 22:04:51 +00:00
Torbjörn Andersson
80b3f9217d
Don't try to copy str to _talkBuffer if str is pointing to _talkBuffer. Apart
...
from being unnecessary, the result of strcpy() on overlapping memory areas is
unpredictable.
svn-id: r21562
2006-04-02 18:58:07 +00:00
Max Horn
8cdee5a931
Do not #include endian.h in scummsys.h (cuts down deps on endian.h from ~400 to ~250). Many greetings to eriktorbjorn, and have fun recompiling.
...
svn-id: r21500
2006-03-29 15:59:37 +00:00
Max Horn
0da5fb4c1c
Alphabetical build order
...
svn-id: r21499
2006-03-29 15:51:13 +00:00
Johannes Schickel
c09d1ea520
- Commits heaviliy modifed patch #1459951 ("KYRA: Combining MIDI music with Adlib sfx") (created a wrapper class for two different sound drivers instead of adding a new variable to the KyraEngine class and chaning stuff there)
...
- Prevents to play track 0 for non mt-32 midi devices (got ugly sound output with windows midi)
svn-id: r21479
2006-03-28 15:15:36 +00:00
Max Horn
9f93e5bb81
Renamed various container isEmpty() methods to empty() to match STL conventions
...
svn-id: r21472
2006-03-28 09:42:54 +00:00
Johannes Schickel
518c7b871f
Comments out unneeded code in enterNewScene (only used for cd audio version).
...
Fixes bug with stopping pegasus music before the animation finished.
svn-id: r21469
2006-03-27 18:20:19 +00:00
Torbjörn Andersson
23c692f09f
Cleaned up update_playRhythmSection(). It's almost possible to understand what
...
it's intended to do now.
Renamed _unkOutputByte2 to _vibratoAndAMDepthBits. It's a pretty terrible name,
but that's what it is: the two most significant bits of the Adlib BD register.
Renamed _rhythmSection to _rhythmSectionBits for consistency: It's the five
least significant bits of the Adlib BD register.
(The remaining bit is the rhythm on/off bit. I don't think we store that one in
any variable.)
svn-id: r21463
2006-03-26 22:11:40 +00:00
Torbjörn Andersson
737c52590b
I believe that the purpose of updateCallback45() is to add a signed value to a
...
channel's unsigned tempo. Rewrote the function to make this clearer, and
renamed it update_changeChannelTempo().
svn-id: r21448
2006-03-25 10:11:38 +00:00
Torbjörn Andersson
2c279848d8
More renamings:
...
unk11 -> durationRandomness
updateCallback12() -> update_setupNoteAndDuration()
updateCallback26() -> update_setupDuration()
updateCallback44() -> update_setDurationRandomness()
svn-id: r21447
2006-03-25 09:55:28 +00:00
Eugene Sandulenko
22042bc637
- Implemented case insensitive file reading. Left old system as a fallback
...
in case some engine writer decide to do something unwise
- Removed used of ConfMan.getKey("path") in file-related cases, because
now File class handles that
- Fixed bug in ScummEngine_v80he::o80_getFileSize() where path delimiters
weren't translated
svn-id: r21443
2006-03-25 04:17:17 +00:00
Andrew Kurushin
212b150b6f
Fix MSVC warnings
...
svn-id: r21440
2006-03-24 18:30:34 +00:00