From 29c670b199e4fddaa7e5718a136e9dba48814466 Mon Sep 17 00:00:00 2001 From: Nipun Garg Date: Sat, 8 Jun 2019 00:18:30 +0530 Subject: HDB: Add getTileIndex and getPicture to DrawMan --- engines/hdb/draw-manager.cpp | 16 ++++++++++++++++ engines/hdb/draw-manager.h | 2 ++ 2 files changed, 18 insertions(+) diff --git a/engines/hdb/draw-manager.cpp b/engines/hdb/draw-manager.cpp index d8bfa3101c..b39d338484 100644 --- a/engines/hdb/draw-manager.cpp +++ b/engines/hdb/draw-manager.cpp @@ -102,6 +102,22 @@ Tile *DrawMan::getTile(int index) { return _tLookupArray[index].tData; } +int DrawMan::getTileIndex(const char *name) { + for (int i = 0; i < _numTiles; i++) { + if (_tLookupArray[i].filename == name) { + return i; + } + } + return -1; +} + +Picture *DrawMan::getPicture(const char *name) { + Common::SeekableReadStream *stream = g_hdb->_fileMan->findFirstData(name, TYPE_PIC); + Picture *picture = new Picture; + picture->load(stream); + return picture; +} + int DrawMan::isSky(int index) { if (!index) { return 0; diff --git a/engines/hdb/draw-manager.h b/engines/hdb/draw-manager.h index 3c061cce18..3db0542856 100644 --- a/engines/hdb/draw-manager.h +++ b/engines/hdb/draw-manager.h @@ -50,6 +50,8 @@ public: bool init(); Tile *getTile(int index); + int getTileIndex(const char *name); + Picture *getPicture(const char *name); int isSky(int skyIndex); private: -- cgit v1.2.3