diff options
author | Nipun Garg | 2019-06-08 00:18:30 +0530 |
---|---|---|
committer | Eugene Sandulenko | 2019-09-03 17:16:45 +0200 |
commit | 29c670b199e4fddaa7e5718a136e9dba48814466 (patch) | |
tree | 3cc49503719be1c550d7b019e6c5a1dc9666ab71 | |
parent | 76abfae403eadc8f9ace8a5e0d34d39dc07b3d5a (diff) | |
download | scummvm-rg350-29c670b199e4fddaa7e5718a136e9dba48814466.tar.gz scummvm-rg350-29c670b199e4fddaa7e5718a136e9dba48814466.tar.bz2 scummvm-rg350-29c670b199e4fddaa7e5718a136e9dba48814466.zip |
HDB: Add getTileIndex and getPicture to DrawMan
-rw-r--r-- | engines/hdb/draw-manager.cpp | 16 | ||||
-rw-r--r-- | engines/hdb/draw-manager.h | 2 |
2 files changed, 18 insertions, 0 deletions
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: |