aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--engines/glk/frotz/glk_interface.cpp20
1 files changed, 12 insertions, 8 deletions
diff --git a/engines/glk/frotz/glk_interface.cpp b/engines/glk/frotz/glk_interface.cpp
index b78a067c89..74d6e457ee 100644
--- a/engines/glk/frotz/glk_interface.cpp
+++ b/engines/glk/frotz/glk_interface.cpp
@@ -477,16 +477,20 @@ void GlkInterface::gos_cancel_pending_line() {
}
void GlkInterface::showBeyondZorkTitle() {
- uint winW, winH, imgW, imgH;
- winid_t win = glk_window_open(0, 0, 0, wintype_Graphics, 0);
- glk_window_get_size(win, &winW, &winH);
+ int saveSlot = ConfMan.hasKey("save_slot") ? ConfMan.getInt("save_slot") : -1;
- if (os_picture_data(1, &imgW, &imgH)) {
- os_draw_picture(1, win, Common::Rect(0, 0, winW, winH));
- _events->waitForPress();
- }
+ if (saveSlot == -1) {
+ uint winW, winH, imgW, imgH;
+ winid_t win = glk_window_open(0, 0, 0, wintype_Graphics, 0);
+ glk_window_get_size(win, &winW, &winH);
+
+ if (os_picture_data(1, &imgW, &imgH)) {
+ os_draw_picture(1, win, Common::Rect(0, 0, winW, winH));
+ _events->waitForPress();
+ }
- glk_window_close(win, nullptr);
+ glk_window_close(win, nullptr);
+ }
}
void GlkInterface::os_draw_picture(int picture, winid_t win, const Common::Point &pos) {