aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--engines/sherlock/scalpel/3do/scalpel_3do_screen.cpp1
-rw-r--r--engines/sherlock/scalpel/scalpel_map.cpp4
2 files changed, 3 insertions, 2 deletions
diff --git a/engines/sherlock/scalpel/3do/scalpel_3do_screen.cpp b/engines/sherlock/scalpel/3do/scalpel_3do_screen.cpp
index 163f10d091..fb2f6f862b 100644
--- a/engines/sherlock/scalpel/3do/scalpel_3do_screen.cpp
+++ b/engines/sherlock/scalpel/3do/scalpel_3do_screen.cpp
@@ -46,6 +46,7 @@ void Scalpel3DOScreen::SHblitFrom(const Graphics::Surface &src, const Common::Po
}
Common::Rect srcRect = srcBounds;
+ srcRect.clip(320, 200);
Common::Rect destRect(pt.x, pt.y, pt.x + srcRect.width(), pt.y + srcRect.height());
if (!srcRect.isValidRect() || !clip(srcRect, destRect))
diff --git a/engines/sherlock/scalpel/scalpel_map.cpp b/engines/sherlock/scalpel/scalpel_map.cpp
index ba14b5b300..bf845c38b9 100644
--- a/engines/sherlock/scalpel/scalpel_map.cpp
+++ b/engines/sherlock/scalpel/scalpel_map.cpp
@@ -56,7 +56,7 @@ const byte *MapPaths::getPath(int srcLocation, int destLocation) {
/*----------------------------------------------------------------*/
-ScalpelMap::ScalpelMap(SherlockEngine *vm): Map(vm), _topLine(g_system->getWidth(), 12) {
+ScalpelMap::ScalpelMap(SherlockEngine *vm): Map(vm), _topLine(g_system->getWidth(), 12, g_system->getScreenFormat()) {
_mapCursors = nullptr;
_shapes = nullptr;
_iconShapes = nullptr;
@@ -332,7 +332,7 @@ void ScalpelMap::setupSprites() {
_cursorIndex = 0;
events.setCursor((*_mapCursors)[_cursorIndex]._frame);
- _iconSave.create((*_shapes)[4]._width, (*_shapes)[4]._height);
+ _iconSave.create((*_shapes)[4]._width, (*_shapes)[4]._height, g_system->getScreenFormat());
Person &p = people[HOLMES];
p._description = " ";
p._type = CHARACTER;