aboutsummaryrefslogtreecommitdiff
path: root/engines/kyra/screen_eob.cpp
diff options
context:
space:
mode:
authorathrxx2011-08-17 18:46:29 +0200
committerJohannes Schickel2011-12-26 16:18:14 +0100
commitf7032c126dd097e8083e0fc740c7c856e0f2dd58 (patch)
tree0d3c6917f6c27d63326ed62954e35e1c3b7df4d2 /engines/kyra/screen_eob.cpp
parentb3c8173bd46ddc831344848723598846bd5c41e8 (diff)
downloadscummvm-rg350-f7032c126dd097e8083e0fc740c7c856e0f2dd58.tar.gz
scummvm-rg350-f7032c126dd097e8083e0fc740c7c856e0f2dd58.tar.bz2
scummvm-rg350-f7032c126dd097e8083e0fc740c7c856e0f2dd58.zip
KYRA: (EOB) - fix some bugs
- fix monster movement - fix character level gain - add some static res for party transfer
Diffstat (limited to 'engines/kyra/screen_eob.cpp')
-rw-r--r--engines/kyra/screen_eob.cpp24
1 files changed, 13 insertions, 11 deletions
diff --git a/engines/kyra/screen_eob.cpp b/engines/kyra/screen_eob.cpp
index c9ee9119db..d29af69f0a 100644
--- a/engines/kyra/screen_eob.cpp
+++ b/engines/kyra/screen_eob.cpp
@@ -151,9 +151,6 @@ void Screen_Eob::loadShapeSetBitmap(const char *file, int tempPage, int destPage
}
void Screen_Eob::loadEobBitmap(const char *file, const uint8 *ditheringData, int tempPage, int destPage, int copyToPage) {
- //Common::String tmp = file;
- //if (_vm->game() == GI_EOB1 && tmp.equalsIgnoreCase("spider"))
- // tmp += "1";
Common::String tmp = Common::String::format("%s.CPS", file);
Common::SeekableReadStream *s = _vm->resource()->createReadStream(tmp);
bool loadAlternative = false;
@@ -170,15 +167,20 @@ void Screen_Eob::loadEobBitmap(const char *file, const uint8 *ditheringData, int
}
if (loadAlternative) {
- tmp.setChar('X', 0);
- s = _vm->resource()->createReadStream(tmp);
- if (!s)
- error("Screen_Eob::loadEobBitmap(): CPS file loading failed.");
- s->seek(768);
- loadFileDataToPage(s, destPage, 64000);
- delete s;
+ if (_vm->game() == GI_EOB1) {
+ tmp.insertChar('1', tmp.size() - 4);
+ loadBitmap(tmp.c_str(), tempPage, destPage, 0);
+ } else {
+ tmp.setChar('X', 0);
+ s = _vm->resource()->createReadStream(tmp);
+ if (!s)
+ error("Screen_Eob::loadEobBitmap(): CPS file loading failed.");
+ s->seek(768);
+ loadFileDataToPage(s, destPage, 64000);
+ delete s;
+ }
}
-
+
if (copyToPage == -1) {
return;
} else if (copyToPage == 0) {