[Scummvm-cvs-logs] SF.net SVN: scummvm: [29053] scummvm/trunk/engines/saga
h00ligan at users.sourceforge.net
h00ligan at users.sourceforge.net
Sun Sep 23 17:53:49 CEST 2007
Revision: 29053
http://scummvm.svn.sourceforge.net/scummvm/?rev=29053&view=rev
Author: h00ligan
Date: 2007-09-23 08:53:49 -0700 (Sun, 23 Sep 2007)
Log Message:
-----------
remove _saveMarks from SAGA load and save implementation
Modified Paths:
--------------
scummvm/trunk/engines/saga/saga.h
scummvm/trunk/engines/saga/saveload.cpp
Modified: scummvm/trunk/engines/saga/saga.h
===================================================================
--- scummvm/trunk/engines/saga/saga.h 2007-09-23 15:09:48 UTC (rev 29052)
+++ scummvm/trunk/engines/saga/saga.h 2007-09-23 15:53:49 UTC (rev 29053)
@@ -616,7 +616,6 @@
private:
uint _saveFilesCount;
SaveFileData _saveFiles[MAX_SAVES];
- bool _saveMarks[MAX_SAVES];
SaveGameHeader _saveHeader;
bool _leftMouseButtonPressed;
Modified: scummvm/trunk/engines/saga/saveload.cpp
===================================================================
--- scummvm/trunk/engines/saga/saveload.cpp 2007-09-23 15:09:48 UTC (rev 29052)
+++ scummvm/trunk/engines/saga/saveload.cpp 2007-09-23 15:53:49 UTC (rev 29053)
@@ -90,54 +90,37 @@
uint SagaEngine::getNewSaveSlotNumber() {
uint i, j;
bool found;
- if (isSaveListFull()) {
- error("getNewSaveSlotNumber save list is full");
- }
for (i = 0; i < MAX_SAVES; i++) {
- if (!_saveMarks[i]) {
- found = false;
- for (j = 0; j < _saveFilesCount; j++) {
- if (_saveFiles[j].slotNumber == i) {
- found = true;
- break;
- }
+ found = false;
+ for (j = 0; j < _saveFilesCount; j++) {
+ if (_saveFiles[j].slotNumber == i) {
+ found = true;
+ break;
}
- if (!found) {
- return i;
- }
}
+ if (!found) {
+ return i;
+ }
}
error("getNewSaveSlotNumber save list is full");
}
void SagaEngine::fillSaveList() {
- assert(_saveMarks);
int i;
Common::InSaveFile *in;
Common::StringList filenames;
char slot[2];
- int slotNum;
+ int slotNumber;
char *name;
name = calcSaveFileName(MAX_SAVES);
name[strlen(name) - 2] = '*';
name[strlen(name) - 1] = 0;
- memset(_saveMarks, false, MAX_SAVES * sizeof(bool)); //assume no savegames for this title
filenames = _saveFileMan->listSavefiles(name);
- for (Common::StringList::iterator file = filenames.begin(); file != filenames.end(); file++){
- //Obtain the last 2 digits of the filename, since they correspond to the save slot
- slot[0] = file->c_str()[file->size()-2];
- slot[1] = file->c_str()[file->size()-1];
-
- slotNum = atoi(slot);
- if (slotNum >= 0 && slotNum < MAX_SAVES)
- _saveMarks[slotNum] = true; //mark this slot as valid
- }
-
for (i = 0; i < MAX_SAVES; i++) {
_saveFiles[i].name[0] = 0;
_saveFiles[i].slotNumber = (uint)-1;
@@ -145,10 +128,14 @@
_saveFilesCount = 0;
- i = 0;
- while (i < MAX_SAVES) {
- if (_saveMarks[i]) {
- name = calcSaveFileName(i);
+ for (Common::StringList::iterator file = filenames.begin(); file != filenames.end(); file++){
+ //Obtain the last 2 digits of the filename, since they correspond to the save slot
+ slot[0] = file->c_str()[file->size()-2];
+ slot[1] = file->c_str()[file->size()-1];
+
+ slotNumber = atoi(slot);
+ if (slotNumber >= 0 && slotNumber < MAX_SAVES) {
+ name = calcSaveFileName(slotNumber);
if ((in = _saveFileMan->openForLoading(name)) != NULL) {
_saveHeader.type = in->readUint32BE();
_saveHeader.size = in->readUint32LE();
@@ -161,12 +148,11 @@
continue;
}
strcpy(_saveFiles[_saveFilesCount].name, _saveHeader.name);
- _saveFiles[_saveFilesCount].slotNumber = i;
+ _saveFiles[_saveFilesCount].slotNumber = slotNumber;
delete in;
_saveFilesCount++;
}
}
- i++;
}
}
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