aboutsummaryrefslogtreecommitdiff
path: root/engines/access/amazon/amazon_room.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'engines/access/amazon/amazon_room.cpp')
-rw-r--r--engines/access/amazon/amazon_room.cpp16
1 files changed, 9 insertions, 7 deletions
diff --git a/engines/access/amazon/amazon_room.cpp b/engines/access/amazon/amazon_room.cpp
index 5627325f6e..056fa8f1eb 100644
--- a/engines/access/amazon/amazon_room.cpp
+++ b/engines/access/amazon/amazon_room.cpp
@@ -122,16 +122,18 @@ void AmazonRoom::roomSet() {
}
void AmazonRoom::roomMenu() {
- _icon = _vm->_files->loadFile("ICONS.LZ");
+ byte *iconData = _vm->_files->loadFile("ICONS.LZ");
+ SpriteResource *spr = new SpriteResource(_vm, _icon, _vm->_files->_filesize);
+ delete[] iconData;
+
_vm->_screen->saveScreen();
_vm->_screen->setDisplayScan();
- _vm->_destIn = _vm->_screen;
- _vm->_screen->plotImage(_icon, 0, Common::Point(0, 177));
- _vm->_screen->plotImage(_icon, 1, Common::Point(143, 177));
+ _vm->_destIn = _vm->_screen; // TODO: Redundant
+ _vm->_screen->plotImage(spr, 0, Common::Point(0, 177));
+ _vm->_screen->plotImage(spr, 1, Common::Point(143, 177));
- _vm->_screen->restoreScan();
- delete[] _icon;
- _icon = nullptr;
+ _vm->_screen->restoreScreen();
+ delete spr;
}
} // End of namespace Amazon