aboutsummaryrefslogtreecommitdiff
path: root/engines/cge/cge.cpp
diff options
context:
space:
mode:
authorPaul Gilbert2011-07-16 21:12:19 +1000
committerPaul Gilbert2011-07-16 21:12:19 +1000
commit00061bc5dd6492fcb3be9781b134f1928f69205b (patch)
treea653973344d39be8659ad4940b3687be04260104 /engines/cge/cge.cpp
parentce070cdd3c664bc5fca80770a40e669fd07a83a0 (diff)
downloadscummvm-rg350-00061bc5dd6492fcb3be9781b134f1928f69205b.tar.gz
scummvm-rg350-00061bc5dd6492fcb3be9781b134f1928f69205b.tar.bz2
scummvm-rg350-00061bc5dd6492fcb3be9781b134f1928f69205b.zip
CGE: Added support for GMM save/load and launcher loading
Diffstat (limited to 'engines/cge/cge.cpp')
-rw-r--r--engines/cge/cge.cpp20
1 files changed, 17 insertions, 3 deletions
diff --git a/engines/cge/cge.cpp b/engines/cge/cge.cpp
index 6924f0b14e..bb5b786330 100644
--- a/engines/cge/cge.cpp
+++ b/engines/cge/cge.cpp
@@ -126,6 +126,7 @@ void CGEEngine::setup() {
for (int i = 0; i < 4; i++)
_flag[i] = false;
+ _startGameSlot = ConfMan.hasKey("save_slot") ? ConfMan.getInt("save_slot") : -1;
}
CGEEngine::~CGEEngine() {
@@ -173,12 +174,25 @@ Common::Error CGEEngine::run() {
// Setup necessary game objects
setup();
- // Additional setup.
- debug("CGEEngine::init");
-
+ // Run the game
cge_main();
return Common::kNoError;
}
+bool CGEEngine::hasFeature(EngineFeature f) const {
+ return
+ (f == kSupportsRTL) ||
+ (f == kSupportsLoadingDuringRuntime) ||
+ (f == kSupportsSavingDuringRuntime);
+}
+
+bool CGEEngine::canLoadGameStateCurrently() {
+ return (_startupMode == 0) && _mouse->_active;
+}
+
+bool CGEEngine::canSaveGameStateCurrently() {
+ return (_startupMode == 0) && _mouse->_active;
+}
+
} // End of namespace CGE