diff options
-rw-r--r-- | engines/parallaction/disk.cpp | 19 | ||||
-rw-r--r-- | engines/parallaction/disk.h | 2 | ||||
-rw-r--r-- | engines/parallaction/graphics.cpp | 2 | ||||
-rw-r--r-- | engines/parallaction/zone.cpp | 14 |
4 files changed, 23 insertions, 14 deletions
diff --git a/engines/parallaction/disk.cpp b/engines/parallaction/disk.cpp index 9bc9f0f8cf..d8ab4d8662 100644 --- a/engines/parallaction/disk.cpp +++ b/engines/parallaction/disk.cpp @@ -89,5 +89,24 @@ void openLocation(const char *name, char* script) { } +void loadHead(const char* name, StaticCnv* cnv) { + + char path[PATH_LEN]; + + if (!scumm_strnicmp(name, "mini", 4)) { + name += 4; + } + + snprintf(path, 8, "%shead", name); + path[8] = '\0'; + + _vm->_graphics->loadExternalStaticCnv(path, cnv); + +} + + +void loadPointer(StaticCnv* cnv) { + _vm->_graphics->loadExternalStaticCnv("pointer", cnv); +} } // namespace Parallaction diff --git a/engines/parallaction/disk.h b/engines/parallaction/disk.h index f35f9dd6ff..bf22ee3487 100644 --- a/engines/parallaction/disk.h +++ b/engines/parallaction/disk.h @@ -74,6 +74,8 @@ public: void openLocation(const char *name, char* script); void openTalk(const char *name, Cnv *cnv); +void loadPointer(StaticCnv* cnv); +void loadHead(const char* name, StaticCnv* cnv); } // namespace Parallaction diff --git a/engines/parallaction/graphics.cpp b/engines/parallaction/graphics.cpp index a75c76f786..0bea64318e 100644 --- a/engines/parallaction/graphics.cpp +++ b/engines/parallaction/graphics.cpp @@ -509,7 +509,7 @@ void jobEraseLabel(void *parm, Job *j) { void Graphics::initMouse(uint16 arg_0) { - loadExternalStaticCnv("pointer", &_mouseComposedArrow); + loadPointer(&_mouseComposedArrow); byte temp[16*16]; memcpy(temp, _mouseArrow, 16*16); diff --git a/engines/parallaction/zone.cpp b/engines/parallaction/zone.cpp index ee83d71a59..f89d49bbbd 100644 --- a/engines/parallaction/zone.cpp +++ b/engines/parallaction/zone.cpp @@ -416,20 +416,8 @@ void displayItemComment(ExamineData *data) { _vm->_graphics->flatBlitCnv(&data->_cnv, 140, (SCREEN_HEIGHT - data->_cnv._height)/2, Graphics::kBitFront, data->_cnv._data1); _vm->_graphics->freeStaticCnv(&data->_cnv); - char *v4 = _vm->_characterName; - if (!scumm_strnicmp(v4, "mini", 4)) { - v4 += 4; - } - StaticCnv cnv; - - sprintf(v68, "%shead", v4); - - // WORKAROUND - // dos file names are in 8.3 format - v68[8] = '\0'; - - _vm->_graphics->loadExternalStaticCnv(v68, &cnv); + loadHead(_vm->_characterName, &cnv); int16 v6A = 0, v6C = 0; |