aboutsummaryrefslogtreecommitdiff
path: root/engines/cruise/cell.cpp
diff options
context:
space:
mode:
authorPaul Gilbert2009-02-09 11:30:18 +0000
committerPaul Gilbert2009-02-09 11:30:18 +0000
commit7238358e6ebed522dd4e2254ba996b69884be02c (patch)
tree02cde501bdc06720b67535448351322d85319570 /engines/cruise/cell.cpp
parent8b4c44373c36de45bc543ac7398df4eb8a4dddbf (diff)
downloadscummvm-rg350-7238358e6ebed522dd4e2254ba996b69884be02c.tar.gz
scummvm-rg350-7238358e6ebed522dd4e2254ba996b69884be02c.tar.bz2
scummvm-rg350-7238358e6ebed522dd4e2254ba996b69884be02c.zip
Changed the save/load process to use a common serialiser
svn-id: r36253
Diffstat (limited to 'engines/cruise/cell.cpp')
-rw-r--r--engines/cruise/cell.cpp99
1 files changed, 0 insertions, 99 deletions
diff --git a/engines/cruise/cell.cpp b/engines/cruise/cell.cpp
index afeb819945..8eaeb6d15c 100644
--- a/engines/cruise/cell.cpp
+++ b/engines/cruise/cell.cpp
@@ -44,105 +44,6 @@ void freeMessageList(cellStruct *objPtr) {
free(objPtr);
} */
}
-void saveCell(Common::OutSaveFile& currentSaveFile) {
-
- int count = 0;
- cellStruct *t = cellHead.next;
-
- while (t) {
- count++;
- t = t->next;
- }
-
- currentSaveFile.writeSint16LE(count);
-
- t = cellHead.next;
- while (t) {
- char dummy[2] = { 0, 0};
-
- currentSaveFile.write(dummy, 2);
- currentSaveFile.write(dummy, 2);
-
- currentSaveFile.writeSint16LE(t->idx);
- currentSaveFile.writeSint16LE(t->type);
- currentSaveFile.writeSint16LE(t->overlay);
- currentSaveFile.writeSint16LE(t->x);
- currentSaveFile.writeSint16LE(t->field_C);
- currentSaveFile.writeSint16LE(t->spriteIdx);
- currentSaveFile.writeSint16LE(t->color);
- currentSaveFile.writeSint16LE(t->backgroundPlane);
- currentSaveFile.writeSint16LE(t->freeze);
- currentSaveFile.writeSint16LE(t->parent);
- currentSaveFile.writeSint16LE(t->parentOverlay);
- currentSaveFile.writeSint16LE(t->parentType);
- currentSaveFile.writeSint16LE(t->followObjectOverlayIdx);
- currentSaveFile.writeSint16LE(t->followObjectIdx);
- currentSaveFile.writeSint16LE(t->animStart);
- currentSaveFile.writeSint16LE(t->animEnd);
- currentSaveFile.writeSint16LE(t->animWait);
- currentSaveFile.writeSint16LE(t->animStep);
- currentSaveFile.writeSint16LE(t->animChange);
- currentSaveFile.writeSint16LE(t->animType);
- currentSaveFile.writeSint16LE(t->animSignal);
- currentSaveFile.writeSint16LE(t->animCounter);
- currentSaveFile.writeSint16LE(t->animLoop);
- currentSaveFile.write(dummy, 2);
-
- t = t->next;
- }
-}
-
-void loadSavegameDataSub2(Common::InSaveFile& currentSaveFile) {
- unsigned short int n_chunks;
- int i;
- cellStruct *p;
- cellStruct *t;
-
- cellHead.next = NULL; // Not in ASM code, but I guess the variable is defaulted
- // to this value in the .exe
-
- n_chunks = currentSaveFile.readSint16LE();
-
- p = &cellHead;
-
- for (i = 0; i < n_chunks; i++) {
- t = (cellStruct *) mallocAndZero(sizeof(cellStruct));
-
- currentSaveFile.skip(2);
- currentSaveFile.skip(2);
-
- t->idx = currentSaveFile.readSint16LE();
- t->type = currentSaveFile.readSint16LE();
- t->overlay = currentSaveFile.readSint16LE();
- t->x = currentSaveFile.readSint16LE();
- t->field_C = currentSaveFile.readSint16LE();
- t->spriteIdx = currentSaveFile.readSint16LE();
- t->color = currentSaveFile.readSint16LE();
- t->backgroundPlane = currentSaveFile.readSint16LE();
- t->freeze = currentSaveFile.readSint16LE();
- t->parent = currentSaveFile.readSint16LE();
- t->parentOverlay = currentSaveFile.readSint16LE();
- t->parentType = currentSaveFile.readSint16LE();
- t->followObjectOverlayIdx = currentSaveFile.readSint16LE();
- t->followObjectIdx = currentSaveFile.readSint16LE();
- t->animStart = currentSaveFile.readSint16LE();
- t->animEnd = currentSaveFile.readSint16LE();
- t->animWait = currentSaveFile.readSint16LE();
- t->animStep = currentSaveFile.readSint16LE();
- t->animChange = currentSaveFile.readSint16LE();
- t->animType = currentSaveFile.readSint16LE();
- t->animSignal = currentSaveFile.readSint16LE();
- t->animCounter = currentSaveFile.readSint16LE();
- t->animLoop = currentSaveFile.readSint16LE();
- currentSaveFile.skip(2);
-
- t->next = NULL;
- p->next = t;
- t->prev = cellHead.prev;
- cellHead.prev = t;
- p = t;
- }
-}
cellStruct *addCell(cellStruct *pHead, int16 overlayIdx, int16 objIdx, int16 type, int16 backgroundPlane, int16 scriptOverlay, int16 scriptNumber, int16 scriptType) {
int16 var;