aboutsummaryrefslogtreecommitdiff
path: root/engines/sci/gui/gui_font.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'engines/sci/gui/gui_font.cpp')
-rw-r--r--engines/sci/gui/gui_font.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/engines/sci/gui/gui_font.cpp b/engines/sci/gui/gui_font.cpp
index 31bd0233cc..57e736613e 100644
--- a/engines/sci/gui/gui_font.cpp
+++ b/engines/sci/gui/gui_font.cpp
@@ -35,6 +35,11 @@ SciGuiFont::SciGuiFont(ResourceManager *resMan, GuiResourceId resourceId)
: _resourceId(resourceId) {
assert(resourceId != -1);
+ // Workaround: lsl1sci mixes its own internal fonts with the global
+ // SCI ones, so we translate them here, by removing their extra bits
+ if (!resMan->testResource(ResourceId(kResourceTypeFont, resourceId)))
+ resourceId = resourceId & 0x7ff;
+
Resource *fontResource = resMan->findResource(ResourceId(kResourceTypeFont, resourceId), false);
if (!fontResource) {
error("font resource %d not found", resourceId);