From bea4cc4e4e06d899a338d74b5387447ef987bfe4 Mon Sep 17 00:00:00 2001 From: Paul Gilbert Date: Tue, 7 Apr 2020 18:37:06 -0700 Subject: [PATCH] ULTIMA4: Added frame delay --- engines/ultima/ultima4/events/event_scummvm.cpp | 4 ++++ engines/ultima/ultima4/gfx/screen.cpp | 3 ++- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/engines/ultima/ultima4/events/event_scummvm.cpp b/engines/ultima/ultima4/events/event_scummvm.cpp index 411021b93c3..3306226c041 100644 --- a/engines/ultima/ultima4/events/event_scummvm.cpp +++ b/engines/ultima/ultima4/events/event_scummvm.cpp @@ -333,6 +333,10 @@ void EventHandler::run() { break; } + // Brief delay + g_system->delayMillis(10); + + // Check for frame expiry uint32 time = g_system->getMillis(); if (time >= (_lastTickTime + FRAME_TIME)) { _lastTickTime = time; diff --git a/engines/ultima/ultima4/gfx/screen.cpp b/engines/ultima/ultima4/gfx/screen.cpp index 8f8ef0abb8f..0d3282b9ede 100644 --- a/engines/ultima/ultima4/gfx/screen.cpp +++ b/engines/ultima/ultima4/gfx/screen.cpp @@ -106,10 +106,11 @@ void Screen::loadCursors() { void Screen::setCursor(MouseCursor cursor) { const Cursor *c = _cursors[cursor]; - const uint TRANSPARENT = g_screen->format.RGBToColor(0x80, 0x80, 0x80); if (c && cursor != _currentCursor) { _currentCursor = cursor; + + const uint TRANSPARENT = g_screen->format.RGBToColor(0x80, 0x80, 0x80); CursorMan.replaceCursor(c->getPixels(), CURSOR_SIZE, CURSOR_SIZE, c->_hotspot.x, c->_hotspot.y, TRANSPARENT, false, &g_screen->format); }