[Scummvm-cvs-logs] SF.net SVN: scummvm: [22009] scummvm/trunk/engines/sword1
eriktorbjorn at users.sourceforge.net
eriktorbjorn at users.sourceforge.net
Tue Apr 18 11:25:02 CEST 2006
Revision: 22009
Author: eriktorbjorn
Date: 2006-04-18 11:23:57 -0700 (Tue, 18 Apr 2006)
ViewCVS: http://svn.sourceforge.net/scummvm/?rev=22009&view=rev
Log Message:
-----------
Added support for the --save-slot option for Broken Sword 1. (Feature request
#1460977.)
Modified Paths:
--------------
scummvm/trunk/engines/sword1/control.h
scummvm/trunk/engines/sword1/sword1.cpp
Modified: scummvm/trunk/engines/sword1/control.h
===================================================================
--- scummvm/trunk/engines/sword1/control.h 2006-04-18 13:32:51 UTC (rev 22008)
+++ scummvm/trunk/engines/sword1/control.h 2006-04-18 18:23:57 UTC (rev 22009)
@@ -83,11 +83,11 @@
void doRestore(void);
void askForCd(void);
bool savegamesExist(void);
+ bool restoreGameFromFile(uint8 slot);
private:
int displayMessage(const char *altButton, const char *message, ...);
void saveGameToFile(uint8 slot);
- bool restoreGameFromFile(uint8 slot);
void readSavegameDescriptions(void);
void writeSavegameDescriptions(void);
void showSavegameNames(void);
Modified: scummvm/trunk/engines/sword1/sword1.cpp
===================================================================
--- scummvm/trunk/engines/sword1/sword1.cpp 2006-04-18 13:32:51 UTC (rev 22008)
+++ scummvm/trunk/engines/sword1/sword1.cpp 2006-04-18 18:23:57 UTC (rev 22009)
@@ -445,19 +445,23 @@
}
int SwordEngine::go() {
-
uint16 startPos = ConfMan.getInt("boot_param");
- if (startPos)
+ if (startPos) {
_logic->startPositions(startPos);
- else {
- if (_control->savegamesExist()) {
+ } else {
+ int saveSlot = ConfMan.getInt("save_slot");
+ if (_control->restoreGameFromFile(saveSlot - 1)) {
+ _control->doRestore();
+ } else if (_control->savegamesExist()) {
_systemVars.controlPanelMode = CP_NEWGAME;
if (_control->runPanel() == CONTROL_GAME_RESTORED)
_control->doRestore();
else if (!_systemVars.engineQuit)
_logic->startPositions(0);
- } else // no savegames, start new game.
+ } else {
+ // no savegames, start new game.
_logic->startPositions(0);
+ }
}
_systemVars.controlPanelMode = CP_NORMAL;
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
More information about the Scummvm-git-logs
mailing list