diff options
author | Strangerke | 2011-09-16 06:45:28 +0200 |
---|---|---|
committer | Strangerke | 2011-09-16 06:45:53 +0200 |
commit | 15bf8050b822db25c3ab4802c0e8438d0151a3cd (patch) | |
tree | cf82ca75733fcadba2c484160cbecba55385f581 /engines/cge/cge_main.cpp | |
parent | a607247262a7dcb5698d601da9529a856aa7a411 (diff) | |
download | scummvm-rg350-15bf8050b822db25c3ab4802c0e8438d0151a3cd.tar.gz scummvm-rg350-15bf8050b822db25c3ab4802c0e8438d0151a3cd.tar.bz2 scummvm-rg350-15bf8050b822db25c3ab4802c0e8438d0151a3cd.zip |
CGE: Move two globals functions to CGEEngine
Diffstat (limited to 'engines/cge/cge_main.cpp')
-rw-r--r-- | engines/cge/cge_main.cpp | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/engines/cge/cge_main.cpp b/engines/cge/cge_main.cpp index 86ea267c80..c5450aefd3 100644 --- a/engines/cge/cge_main.cpp +++ b/engines/cge/cge_main.cpp @@ -1221,6 +1221,24 @@ void CGEEngine::loadScript(const char *fname) { error("Bad INI line %d [%s]", lcnt, fname); } +Sprite *CGEEngine::locate(int ref) { + Sprite *spr = _vga->_showQ->locate(ref); + return (spr) ? spr : _vga->_spareQ->locate(ref); +} + +Sprite *CGEEngine::spriteAt(int x, int y) { + Sprite *spr = NULL, * tail = _vga->_showQ->last(); + if (tail) { + for (spr = tail->_prev; spr; spr = spr->_prev) { + if (! spr->_flags._hide && ! spr->_flags._tran) { + if (spr->shp()->solidAt(x - spr->_x, y - spr->_y)) + break; + } + } + } + return spr; +} + void CGEEngine::mainLoop() { _vga->show(); _snail_->runCom(); |