/*********************************************************************//**
*	Globalni cas.
*	Modul zjistuje aktualni cas. Dokaze ho zastavit, resetovat a posunout.
*	Vyuziva se pri zastaveni hry zobrazenim hlavniho menu apod.
*
*	author: Michal Jirous
*	date: 09.04.2009
*	file: globaltime.h
**********************************************************************/

#include "globaltime.h"

Uint32	g_tGlobalTime = 0;	//pomocna promenna
Uint32	g_tOffset = 0;	//zpozdeni oproti realnemu casu
//time_t  g_tRunningTime = 0;
bool g_bTimeStopped = false;

void global_time::timeStart()
{
	g_bTimeStopped = false;
	g_tOffset += getGlobalTime() - g_tGlobalTime;
}

void global_time::timeStop()
{
	g_tGlobalTime = getGlobalTime();
	g_bTimeStopped = true;
}

Uint32	global_time::getGlobalTime()
{
	if( g_bTimeStopped )
		return g_tGlobalTime;
	else
		return SDL_GetTicks() - g_tOffset;
}

void global_time::addDelay( int seconds )
{
	g_tOffset+= seconds* 1000;
}

void global_time::resetTime()
{
	g_bTimeStopped = false;
	g_tOffset = SDL_GetTicks();	
	g_tGlobalTime = SDL_GetTicks();
}


