#include "StdAfx.h" #include ".\synctimer.h" cSyncTimer* cSyncTimer::mpSyncTimer = NULL; cSyncTimer::cSyncTimer(void) { /// ½Ì±ÛÅæ - 2¹øÀÌ»ó °´Ã¼¸¦ »ý¼º ÇÏ·Á°í ÇÒ°æ¿ì Äֿܼ¡ ¿¡·¯ Âï¾îÁÜ if( mpSyncTimer ) { MessageBox(NULL,_T("cSyncTimer : ÀÌ Å¬·¡½º´Â °´Ã¼°¡ À¯ÀÏÇѰ´Ã¼(singleton)À̾î¾ß ÇÕ´Ï´Ù.\ ÀÌÀü °´Ã¼¸¦ »ç¿ëÇÏ´øÁö ÀÌÀü °´Ã¼¸¦ Áö¿ì°í »ý¼ºÇϽʽÿÀ."),_T("°æ°í"),MB_OK); } else { mpSyncTimer = this; } mServerTime = 0; mLoseTimer = 0; } cSyncTimer::~cSyncTimer(void) { } long cSyncTimer::SetServerTime( unsigned long time ) { /// ÃʱⰪÀΰæ¿ì óÀ½ ³Ñ¾î¿Â °ªÀ¸·Î ¼ÂÆÃ if( mServerTime == 0 ) { mServerTime = time; } /// ½Ã°£Â÷¸¦ °è»êÇØ ±âÁ¸ ½Ã°£º¸´Ù ³Ñ¾î¿Â ½Ã°£ÀÌ´õ µ¿±âÈ­°¡ ¸Â´Â°æ¿ì ¼ÂÆÃ else if( time - mServerTime < 0 ) { mServerTime = time; } return mServerTime; } void cSyncTimer::process( float time ) { if( mServerTime != 0 ) { mServerTime += (unsigned long)(time*1000); } }