mirror of
https://github.com/libretro/scummvm.git
synced 2024-12-16 06:39:17 +00:00
LAB: Add support for loading games from the launcher
This commit is contained in:
parent
bb34bc94ec
commit
4548cbddb5
@ -145,13 +145,13 @@ public:
|
||||
|
||||
bool LabMetaEngine::hasFeature(MetaEngineFeature f) const {
|
||||
return
|
||||
(f == kSupportsListSaves) ||
|
||||
//(f == kSupportsLoadingDuringStartup) ||
|
||||
(f == kSupportsDeleteSave) ||
|
||||
(f == kSavesSupportMetaInfo) ||
|
||||
(f == kSavesSupportThumbnail) ||
|
||||
(f == kSavesSupportCreationDate) ||
|
||||
(f == kSavesSupportPlayTime);
|
||||
(f == kSupportsListSaves) ||
|
||||
(f == kSupportsLoadingDuringStartup) ||
|
||||
(f == kSupportsDeleteSave) ||
|
||||
(f == kSavesSupportMetaInfo) ||
|
||||
(f == kSavesSupportThumbnail) ||
|
||||
(f == kSavesSupportCreationDate) ||
|
||||
(f == kSavesSupportPlayTime);
|
||||
}
|
||||
|
||||
bool Lab::LabEngine::hasFeature(EngineFeature f) const {
|
||||
|
@ -28,8 +28,9 @@
|
||||
*
|
||||
*/
|
||||
|
||||
#include "lab/lab.h"
|
||||
#include "common/config-manager.h"
|
||||
|
||||
#include "lab/lab.h"
|
||||
#include "lab/anim.h"
|
||||
#include "lab/dispman.h"
|
||||
#include "lab/eventman.h"
|
||||
@ -404,6 +405,18 @@ void LabEngine::mainGameLoop() {
|
||||
|
||||
perFlipButton(actionMode);
|
||||
|
||||
// Load saved slot from the launcher, if requested
|
||||
if (ConfMan.hasKey("save_slot")) {
|
||||
loadGame(ConfMan.getInt("save_slot"));
|
||||
|
||||
// Since the intro hasn't been shown, init the background music here
|
||||
if (getPlatform() != Common::kPlatformAmiga)
|
||||
_music->changeMusic("Music:BackGrou", false, false);
|
||||
else
|
||||
_music->changeMusic("Music:BackGround", false, false);
|
||||
_music->checkRoomMusic();
|
||||
}
|
||||
|
||||
// Set up initial picture.
|
||||
while (1) {
|
||||
_event->processInput();
|
||||
@ -1020,11 +1033,14 @@ void LabEngine::go() {
|
||||
else
|
||||
_msgFont = _resource->getFont("F:Map.fon");
|
||||
|
||||
_event->mouseHide();
|
||||
Intro *intro = new Intro(this);
|
||||
intro->play();
|
||||
delete intro;
|
||||
_event->mouseShow();
|
||||
// If the user has requested to load a game from the launcher, skip the intro
|
||||
if (!ConfMan.hasKey("save_slot")) {
|
||||
_event->mouseHide();
|
||||
Intro *intro = new Intro(this);
|
||||
intro->play();
|
||||
delete intro;
|
||||
_event->mouseShow();
|
||||
}
|
||||
|
||||
mainGameLoop();
|
||||
|
||||
|
@ -114,7 +114,8 @@ bool readSaveGameHeader(Common::InSaveFile *in, SaveGameHeader &header) {
|
||||
header._descr.setSaveTime(hour, minutes);
|
||||
|
||||
header._descr.setPlayTime(playTime * 1000);
|
||||
g_engine->setTotalPlayTime(playTime * 1000);
|
||||
if (g_engine)
|
||||
g_engine->setTotalPlayTime(playTime * 1000);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user