From 80045e966189a2899c2feb1d86ff7ed6f62277a3 Mon Sep 17 00:00:00 2001 From: Johannes Schickel Date: Sun, 21 Oct 2007 21:38:23 +0000 Subject: Fixes timers in Kyra1. (Initialized them twice oops...) svn-id: r29245 --- engines/kyra/kyra_v1.cpp | 1 - engines/kyra/timer.cpp | 6 ++++++ 2 files changed, 6 insertions(+), 1 deletion(-) (limited to 'engines/kyra') diff --git a/engines/kyra/kyra_v1.cpp b/engines/kyra/kyra_v1.cpp index 6f9d4062b9..f9432fb9ba 100644 --- a/engines/kyra/kyra_v1.cpp +++ b/engines/kyra/kyra_v1.cpp @@ -381,7 +381,6 @@ void KyraEngine_v1::startup() { loadButtonShapes(); initMainButtonList(); loadMainScreen(); - setupTimers(); _screen->loadPalette("PALETTE.COL", _screen->_currentPalette); // XXX diff --git a/engines/kyra/timer.cpp b/engines/kyra/timer.cpp index dff191cbe0..458b6fc8b0 100644 --- a/engines/kyra/timer.cpp +++ b/engines/kyra/timer.cpp @@ -73,6 +73,12 @@ void TimerManager::reset() { void TimerManager::addTimer(uint8 id, TimerFunc *func, int countdown, bool enabled) { debugC(9, kDebugLevelTimer, "TimerManager::addTimer(%d, %p, %d, %d)", id, (const void*)func, countdown, enabled); + Iterator timer = Common::find_if(_timers.begin(), _timers.end(), TimerEqual(id)); + if (timer != _timers.end()) { + warning("Adding allready existing timer %d", id); + return; + } + TimerEntry newTimer; newTimer.id = id; -- cgit v1.2.3