1 /* 2 * Kuklomenos 3 * Copyright (C) 2008-2009 Martin Bays <mbays@sdf.lonestar.org> 4 * 5 * This program is free software: you can redistribute it and/or modify 6 * it under the terms of the GNU General Public License as published by 7 * the Free Software Foundation, either version 3 of the License, or 8 * (at your option) any later version. 9 * 10 * This program is distributed in the hope that it will be useful, 11 * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 * GNU General Public License for more details. 14 * 15 * You should have received a copy of the GNU General Public License 16 * along with this program. If not, see http://www.gnu.org/licenses/. 17 */ 18 19 #include "clock.h" 20 GameClock(int rate)21GameClock::GameClock(int rate) : 22 rate(rate), 23 paused(false), 24 ticks(0) 25 {} 26 scale(int time)27int GameClock::scale(int time) 28 { 29 if (paused) 30 return 0; 31 else 32 return time * rate / 1000; 33 } 34 update(int time)35void GameClock::update(int time) 36 { 37 ticks += scale(time); 38 } updatePreScaled(int time)39void GameClock::updatePreScaled(int time) 40 { 41 ticks += time; 42 } 43 44 45