diff options
Diffstat (limited to 'engines/sci/gfx')
-rw-r--r-- | engines/sci/gfx/gfx_resmgr.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/engines/sci/gfx/gfx_resmgr.cpp b/engines/sci/gfx/gfx_resmgr.cpp index 5a1556ca41..4a97d94f31 100644 --- a/engines/sci/gfx/gfx_resmgr.cpp +++ b/engines/sci/gfx/gfx_resmgr.cpp @@ -616,6 +616,12 @@ gfx_bitmap_font_t *GfxResManager::getFont(int num, bool scaled) { gfx_resource_t *res = NULL; int hash = getOptionsHash(GFX_RESOURCE_TYPE_FONT); + // Workaround: LSL1VGA mixes its own internal fonts with the global + // SCI ones, so we translate them here + if (!resMap.contains(num) && num >= 2048) + if (!_resManager->testResource(ResourceId(kResourceTypeFont, num))) + num = num - 2048; + res = resMap.contains(num) ? resMap[num] : NULL; if (!res || res->mode != hash) { |