SWORD1: Switch to the new play time counting of the Engine class.

svn-id: r53924
This commit is contained in:
Johannes Schickel 2010-10-29 16:53:46 +00:00
parent 447ca7ea69
commit a5c28de26b
4 changed files with 6 additions and 12 deletions

View File

@ -1118,8 +1118,7 @@ void Control::saveGameToFile(uint8 slot) {
outf->writeUint32BE(saveDate);
outf->writeUint16BE(saveTime);
uint32 currentTime = _system->getMillis() / 1000;
outf->writeUint32BE(currentTime - SwordEngine::_systemVars.engineStartTime);
outf->writeUint32BE(g_engine->getTotalPlayTime() / 1000);
_objMan->saveLiveList(liveBuf);
for (cnt = 0; cnt < TOTAL_SECTIONS; cnt++)
@ -1181,10 +1180,9 @@ bool Control::restoreGameFromFile(uint8 slot) {
inf->readUint16BE(); // save time
if (saveVersion < 2) { // Before version 2 we didn't had play time feature
SwordEngine::_systemVars.engineStartTime = _system->getMillis() / 1000; // Start counting
g_engine->setTotalPlayTime(0);
} else {
uint32 currentTime = _system->getMillis() / 1000;
SwordEngine::_systemVars.engineStartTime = currentTime - inf->readUint32BE(); // Engine start time
g_engine->setTotalPlayTime(inf->readUint32BE() * 1000);
}
_restoreBuf = (uint8*)malloc(

View File

@ -309,12 +309,9 @@ SaveStateDescriptor SwordMetaEngine::querySaveMetaInfos(const char *target, int
desc.setSaveTime(hour, minutes);
if (versionSave > 1) {
minutes = playTime / 60;
hour = minutes / 60;
minutes %= 60;
desc.setPlayTime(hour, minutes);
desc.setPlayTime(playTime * 1000);
} else { //We have no playtime data
desc.setPlayTime(0, 0);
desc.setPlayTime(0);
}
delete in;

View File

@ -563,7 +563,7 @@ void SwordEngine::checkCdFiles() { // check if we're running from cd, hdd or wha
Common::Error SwordEngine::go() {
_control->checkForOldSaveGames();
SwordEngine::_systemVars.engineStartTime = _system->getMillis() / 1000;
setTotalPlayTime(0);
uint16 startPos = ConfMan.getInt("boot_param");
_control->readSavegameDescriptions();

View File

@ -74,7 +74,6 @@ struct SystemVars {
uint8 showText;
uint8 language;
bool isDemo;
uint32 engineStartTime; // Used for playtime
Common::Platform platform;
};