aboutsummaryrefslogtreecommitdiff
path: root/engines/made/made.cpp
diff options
context:
space:
mode:
authorBenjamin Haisch2008-05-02 12:08:06 +0000
committerBenjamin Haisch2008-05-02 12:08:06 +0000
commitd1ef9aa2131502cd4d1e9cc0e36c330fa7a259cd (patch)
tree7efea3353e34769f8e5c1a2f1dbf6f63c0fe9eaa /engines/made/made.cpp
parent6fb9c2b84f9fa34504eefb3cf92917b72fd483b6 (diff)
downloadscummvm-rg350-d1ef9aa2131502cd4d1e9cc0e36c330fa7a259cd.tar.gz
scummvm-rg350-d1ef9aa2131502cd4d1e9cc0e36c330fa7a259cd.tar.bz2
scummvm-rg350-d1ef9aa2131502cd4d1e9cc0e36c330fa7a259cd.zip
- Added patch #1955698: MADE: Add "The Manhole" Detection
- Added detection for Leather Goddesses of Phobos 2 Note that these two games will definitely not work as expected and will probably crash! svn-id: r31810
Diffstat (limited to 'engines/made/made.cpp')
-rw-r--r--engines/made/made.cpp40
1 files changed, 25 insertions, 15 deletions
diff --git a/engines/made/made.cpp b/engines/made/made.cpp
index 6eacbd759a..e82b2957cf 100644
--- a/engines/made/made.cpp
+++ b/engines/made/made.cpp
@@ -86,7 +86,7 @@ MadeEngine::MadeEngine(OSystem *syst, const MadeGameDescription *gameDesc) : Eng
_pmvPlayer = new PmvPlayer(this, _mixer);
_res = new ProjectReader();
_screen = new Screen(this);
- _dat = new GameDatabase();
+ _dat = new GameDatabase(this);
_script = new ScriptInterpreter(this);
int midiDriver = MidiDriver::detectMusicDriver(MDT_MIDI | MDT_ADLIB | MDT_PREFER_MIDI);
@@ -159,21 +159,31 @@ int MadeEngine::go() {
for (int i = 0; i < ARRAYSIZE(_timers); i++)
_timers[i] = -1;
-
- if (getFeatures() & GF_DEMO) {
- _dat->open("demo.dat");
- _res->open("demo.prj");
- } else if (getFeatures() & GF_CD) {
- _dat->open("rtzcd.dat");
- _res->open("rtzcd.prj");
- } else if (getFeatures() & GF_CD_COMPRESSED) {
- _dat->openFromRed("rtzcd.red", "rtzcd.dat");
- _res->open("rtzcd.prj");
- } else if (getFeatures() & GF_FLOPPY) {
- _dat->open("rtz.dat");
- _res->open("rtz.prj");
+
+ if (getGameID() == GID_RTZ) {
+ if (getFeatures() & GF_DEMO) {
+ _dat->open("demo.dat");
+ _res->open("demo.prj");
+ } else if (getFeatures() & GF_CD) {
+ _dat->open("rtzcd.dat");
+ _res->open("rtzcd.prj");
+ } else if (getFeatures() & GF_CD_COMPRESSED) {
+ _dat->openFromRed("rtzcd.red", "rtzcd.dat");
+ _res->open("rtzcd.prj");
+ } else if (getFeatures() & GF_FLOPPY) {
+ _dat->open("rtz.dat");
+ _res->open("rtz.prj");
+ } else {
+ error("Unknown RTZ game features");
+ }
+ } else if (getGameID() == GID_MANHOLE) {
+ _dat->open("manhole.dat");
+ _res->open("manhole.prj");
+ } else if (getGameID() == GID_LGOP2) {
+ _dat->open("lgop2.dat");
+ _res->open("lgop2.prj");
} else {
- error("Unknown game features");
+ error ("Unknown MADE game");
}
_eventMouseX = _eventMouseY = 0;