Commit Graph

192 Commits

Author SHA1 Message Date
Torbjörn Andersson
6e2848ff98 Rewrote the cutscene player to be more like the one in Broken Sword 1. This fixes
a subtitle colour regression, but mainly it simplifies the code. The "dummy"
player has been removed. There are almost certainly regressions, but I'm hoping
it's stable enough for testing now.

svn-id: r38697
2009-02-21 15:07:05 +00:00
Torbjörn Andersson
ab4f1d69ad Since opening a compressed piece of music should no longer be an expensive
operation, we can probably keep the mutex locked throughout the entire
streamCompMusic() function. I'm not convinced that it was ever safe to unlock
and relock it partway through. In fact, that's my prime suspect for bug #2614306
("BS2: noise in music or speech").

svn-id: r38638
2009-02-20 22:47:05 +00:00
Torbjörn Andersson
478257f624 Instead of reading an entire compressed sound into a memory stream, use a
slightly extended SeekableSubReadStream to stream the sound from a file instead.
This change is experimental, so it should almost certainly not go into 0.13.

svn-id: r38637
2009-02-20 22:43:13 +00:00
Filippos Karapetis
781d7da6b1 Applied my patch for the BS1/2 video player
- Support for the MPEG2 videos in BS1/2 has been dropped. The MPEG2 videos were lossy, and support for them complicated the code a lot.
- Support for the non-existing enhanced MPEG cutscene packs for BS1 has been dropped. As a consequence, the credits player and the splitted audio stream players used for these packs has been removed
- The original Smacker videos for both games are now supported, using our Smacker player (which is based off publically available specs and FFMPEG)
- The animations now use the common video player code. Both the Smacker videos and our DXA video packs are supported

svn-id: r38236
2009-02-15 13:29:48 +00:00
Travis Howell
9f2d6d82ca Make the subtitle settings in Options section of the global main menu optional, and enable only for game engines where subtitles settings are synced.
svn-id: r36237
2009-02-07 06:47:19 +00:00
Torbjörn Andersson
7cab911532 Disable the "press c for credits" hotkey (which wasn't in the original anyway)
because of strange rumors about the credits running spontaneously every few
minutes. I don't know if this is a temporary or permanent measure.

svn-id: r36155
2009-01-31 07:57:41 +00:00
Max Horn
abc06ca18e Moved Graphics::PixelFormat into its own header file; turned RGBToColor etc. into methods, and added an operator==
svn-id: r35993
2009-01-22 04:35:10 +00:00
Eugene Sandulenko
696897b058 Whoa! Removing trailing spaces.
svn-id: r35648
2009-01-01 15:06:43 +00:00
Torbjörn Andersson
a0250fe0b1 Replaced the old stack macros with ScummVM's FixedStack class.
svn-id: r35603
2008-12-29 11:55:09 +00:00
Eugene Sandulenko
829cbc4110 Move all video players to separate directory
svn-id: r35470
2008-12-21 21:08:17 +00:00
Travis Howell
9c20a533bb Enable Smacker support, and switch later HE games to Smacker support (since they aren't supported yet).
svn-id: r35368
2008-12-14 23:41:48 +00:00
Torbjörn Andersson
1edc1789b1 Changed readLine_OLD() to readLine_NEW(). I guess both this and the previous
readLine() change could be more robust, but at least it should be no worse than
it was before.

svn-id: r35226
2008-12-03 21:52:51 +00:00
Torbjörn Andersson
a871e01151 Converted the credits scroller to use readLine_NEW() instead of readLine_OLD().
svn-id: r35224
2008-12-03 21:30:41 +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
Torbjörn Andersson
926193c9c3 Only hide the cursor for in-game pausing. Pausing from the outside is assumed to
bring up the GUI, which has its own cursor. (This fixes the cursor disappearing
when pausing on one of the engine's own dialog windows.)

svn-id: r34977
2008-11-09 20:35:06 +00:00
Filippos Karapetis
7d8e4ca59b Added a getMaximumSaveSlot() implementation for sword1 and sword2
svn-id: r34969
2008-11-09 19:30:09 +00:00
Torbjörn Andersson
b7991b6ad8 Removed some code that was added earlier to deal with dimming/undimming the
palette when pausing the game in a mid-fade. The game can only be paused in
mid-fade from the outside, and then the palette isn't dimmed/undimmed.

svn-id: r34958
2008-11-09 14:35:45 +00:00
Torbjörn Andersson
d896c892e5 Allow pausing (from the outside) during credits and palette fades. Refactored the
code to distinguish outside pausing from in-game pausing, to avoid cursor-related
problems. The screen is now only dimmed during in-game pausing.

svn-id: r34957
2008-11-09 14:32:24 +00:00
Torbjörn Andersson
2e9e68fc8e Fixed pausing during credits.
svn-id: r34956
2008-11-09 13:50:41 +00:00
Torbjörn Andersson
db3438f2c9 Allow pausing during cutscene movies. (This will need an update to the mixer's
getSoundElapsedTime() function to work better.)

svn-id: r34954
2008-11-09 13:20:43 +00:00
Torbjörn Andersson
18414f0a0a Moved sound-related settings to syncSoundSettings() for the global options dialog.
svn-id: r34947
2008-11-09 11:52:52 +00:00
Max Horn
40136f2590 Switched various Engine APIs to use Common::Error
svn-id: r34916
2008-11-06 17:05:54 +00:00
Max Horn
edf9f24926 Got rid of OSystem::colorToRGB and RGBToColor; added implementations for OSystem::getOverlayFormat to several ports (pending testing by the porters)
svn-id: r34912
2008-11-06 15:02:50 +00:00
Max Horn
f32be87633 Turned enum PluginError into Common::Error, which in the future is to be used in more places. Help with this is highly welcome
svn-id: r34906
2008-11-05 17:24:56 +00:00
Max Horn
fe2935ad4b Got rid of the unused 'filename' attribute in SaveStateDescriptor
svn-id: r34905
2008-11-05 15:41:12 +00:00
Max Horn
61aadb378d Fixed the EngineFeature vs. MetaEngineFeature mess, clarified some EngineFeature comments
svn-id: r34896
2008-11-04 16:11:40 +00:00
Filippos Karapetis
b7a219ebc6 Renamed engine feature kSupportsDirectLoad to kSupportsLoadingDuringStartup, as discussed in patch #2122869
svn-id: r34854
2008-10-26 16:42:08 +00:00
Torbjörn Andersson
dc75da4348 Use the save file manager's listSavefiles() function to find out if any savegames
exist at all. (The old method was to potentially try and open a hundred files,
though it would stop after finding the first one.)

svn-id: r34790
2008-10-13 04:24:18 +00:00
Max Horn
3248906156 Engine class changed:
- Moved initCommonGFX() && GUIErrorMessage() out of class Engine
- got rid of the _autosavePeriod member (this prevented users from
  changing the autosave period during runtime)
- Got rid of an evil 'using GUI::Dialog' statement
- Clarified some Doxygen comments

svn-id: r34720
2008-10-02 17:48:01 +00:00
Max Horn
c7fde102e3 Renamed FilesystemNode -> FSNode
svn-id: r34716
2008-10-02 16:58:59 +00:00
Max Horn
9b160804ab Renamed Engine::quit to Engine::shouldQuit (previously, it was easily confused with Engine::quitGame); also cleaned up engine.h a bit
svn-id: r34700
2008-09-30 12:27:38 +00:00
Max Horn
655ce26b3f Big patch changing the signature of various Stream methods (some ports may need to be slightly tweaked to fix overloading errors/warnings)
svn-id: r34514
2008-09-13 16:51:46 +00:00
Johannes Schickel
0a35842954 Committed my patch #2105593 "Launcher/MetaEngine: Finnished removeSaveState".
svn-id: r34495
2008-09-11 19:47:45 +00:00
Max Horn
2bc093828f Replaced Engine::_gameDataPath (a String) by Engine::_gameDataDir (an FSNode); adapted code to that (by using getChild() to get subdirs, not string concatenation
svn-id: r34434
2008-09-07 22:10:58 +00:00
Torbjörn Andersson
ba07d1dd0a Use readLine() instead of readLine_OLD().
svn-id: r34336
2008-09-04 21:40:32 +00:00
Max Horn
57e724bfc3 Renamed SeekableReadStream::readLine to SeekableReadStream::readLine_OLD; added a new alternate SeekableReadStream::readLine() instead
svn-id: r34315
2008-09-03 17:53:25 +00:00
Max Horn
d3642080de Moved check for shouldRTL() from engines to scummvm_main
svn-id: r34310
2008-09-03 16:56:40 +00:00
Max Horn
531bcf847c Moved FilesystemNode / FSList to namespace Common; also got rid of some 'typedef Common::String String;' name aliases
svn-id: r34302
2008-09-03 11:22:51 +00:00
Christopher Page
ec8dac5540 Added a MetaEngineFeature for RTL support, the RTL button is disabled in the GMM if the engine doesn't support it
svn-id: r33921
2008-08-16 02:53:16 +00:00
Christopher Page
9d3cdcb2da Defined some MetaEngineFeatures for the engines, the launcher uses these features to allow/disallow loading and deleting saves
svn-id: r33909
2008-08-15 18:15:14 +00:00
Christopher Page
4198ee9623 Merged revisions 33188-33189,33191-33193,33196,33198,33202-33203,33206,33210,33212,33218-33220,33222,33224-33226,33229-33243,33246,33248-33250,33252,33258-33261,33263,33266,33270,33272-33283,33285,33287-33290,33295-33298,33321,33325-33330,33332-33335,33337-33340,33342,33345,33347,33349-33350,33352-33357,33359-33367,33369-33371,33373,33375-33377,33379-33380,33383-33385,33387-33389,33392-33394,33400-33402,33404-33405,33407-33410,33412-33416,33418-33419,33425-33427,33432,33436-33438,33444,33446,33452-33453,33455-33459,33463-33464,33466-33471,33473-33474,33478,33490,33492,33495-33496,33509-33512,33518-33519,33522-33527,33529-33530,33537,33541,33544,33546,33550,33552-33554,33556,33558,33561-33562,33565,33568,33570,33574,33576,33578-33581,33584-33587,33590,33596,33604-33611,33614-33615,33617-33618,33620-33621 via svnmerge from
https://scummvm.svn.sourceforge.net/svnroot/scummvm/scummvm/trunk
 

svn-id: r33624
2008-08-04 22:34:07 +00:00
Max Horn
0be985ce83 Changed class File (and derived classes) to only support read-only access; added a new class DumpFile for writing
svn-id: r33412
2008-07-29 16:09:10 +00:00
Christopher Page
cf97920930 Added --list-saves support for SWORD2
svn-id: r33396
2008-07-29 05:05:04 +00:00
Christopher Page
09f4fd946e Merged revisions 33052-33053,33056-33058,33061-33064,33068,33070,33072,33075,33078-33079,33083,33086-33087,33089,33094-33096,33098-33099,33104,33108-33109,33114-33117,33120,33135-33146,33160,33162,33165,33167-33169 via svnmerge from
https://scummvm.svn.sourceforge.net/svnroot/scummvm/scummvm/trunk

svn-id: r33183
2008-07-21 22:46:39 +00:00
Torbjörn Andersson
702e26965c Don't crash if you try to use music file #2 as music file #1. When the music
wasn't found, it would close the file even if something else was already
playing from it. (Some music is in both files.)

svn-id: r33094
2008-07-18 04:16:00 +00:00
Christopher Page
7f480ac571 Quit and RTL code is more modular now. EVENT_RTL no longer sets _shouldQuit, shouldQuit is only set if there's an EVENT_QUIT. EVENT_RTL and EVENT_QUIT are completely separate from each other. Engine::quit() method now checks both _shouldQuit and _shouldRTL to determine if the engine should exit. There is no longer a need for resetQuit(), so it's removed
svn-id: r33082
2008-07-16 04:22:56 +00:00
Christopher Page
796e606971 SWORD2 works with the new GMM implementation
svn-id: r33044
2008-07-13 22:00:39 +00:00
Christopher Page
d2c0b9d003 Sword2 now uses the new _quit flag
svn-id: r32794
2008-06-26 04:54:29 +00:00
Johannes Schickel
73da6ab51e - Removed -Wconversion from compiler options for g++ 4.3, it's behavior has fundamently changed in g++ 4.3
- Added -Wno-empty-body and -Wno-parentheses as compiler flags for g++ 4.3 for *now* (we should think of removing -Wparentheses though)
- Fixed some warnings for g++ 4.3 (only for the engines I'm using)

svn-id: r32540
2008-06-04 17:20:25 +00:00
Torbjörn Andersson
7833dd87a5 Rewrote dimPalette() so that the dimming is now a "filter" between the Screen
class and the backend, i.e. as far as the game engine is concerned the palette
remains unchanged. (This is similar how to the SCUMM engine handles the "noir"
mode in Sam & Max.)

This is one small step towards allowing the game to be paused anywhere.

svn-id: r32369
2008-05-29 20:32:27 +00:00