aboutsummaryrefslogtreecommitdiff
path: root/engines/dreamweb/saveload.cpp
diff options
context:
space:
mode:
authorWillem Jan Palenstijn2011-12-11 15:45:53 +0100
committerWillem Jan Palenstijn2011-12-11 15:45:53 +0100
commit05a27138744e3d5fe80602c2c97b6bea547863d9 (patch)
treee901ae5c490d32590e9819d0d2e3df87b496659e /engines/dreamweb/saveload.cpp
parent11adaf6d695c1c6b436ce2cd18d4c59f729c542d (diff)
downloadscummvm-rg350-05a27138744e3d5fe80602c2c97b6bea547863d9.tar.gz
scummvm-rg350-05a27138744e3d5fe80602c2c97b6bea547863d9.tar.bz2
scummvm-rg350-05a27138744e3d5fe80602c2c97b6bea547863d9.zip
DREAMWEB: Convert checkInput
Diffstat (limited to 'engines/dreamweb/saveload.cpp')
-rw-r--r--engines/dreamweb/saveload.cpp37
1 files changed, 37 insertions, 0 deletions
diff --git a/engines/dreamweb/saveload.cpp b/engines/dreamweb/saveload.cpp
index 9060a3f000..2a8b8bec3d 100644
--- a/engines/dreamweb/saveload.cpp
+++ b/engines/dreamweb/saveload.cpp
@@ -481,4 +481,41 @@ void DreamBase::showNames() {
}
}
+void DreamGenContext::checkInput() {
+ if (data.byte(kLoadingorsave) == 3)
+ return;
+
+ readKey();
+
+ char *name = (char *)data.ptr(kSavenames + 17*data.byte(kCurrentslot) + 1, 16);
+
+ if (data.byte(kCurrentkey) == 0) {
+ return;
+ } else if (data.byte(kCurrentkey) == 13) {
+ data.byte(kLoadingorsave) = 3;
+ } else if (data.byte(kCurrentkey) == 8) {
+ if (data.byte(kCursorpos) == 0)
+ return;
+
+ --data.byte(kCursorpos);
+ name[data.byte(kCursorpos)] = 0;
+ name[data.byte(kCursorpos)+1] = 1;
+ } else {
+ if (data.byte(kCursorpos) == 14)
+ return;
+
+ name[data.byte(kCursorpos)] = data.byte(kCurrentkey);
+ name[data.byte(kCursorpos)+1] = 0;
+ name[data.byte(kCursorpos)+2] = 1;
+ ++data.byte(kCursorpos);
+ }
+
+ showOpBox();
+ showNames();
+ showSlots();
+ showSaveOps();
+ workToScreenM();
+}
+
+
} // End of namespace DreamGen