Clone of PhatAC @ https://github.com/floaterxk/PhatAC

Globals.cpp 2.1KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134
  1. #include "StdAfx.h"
  2. #include "Globals.h"
  3. bool g_bDebugToggle = false;
  4. CGlobals *g_pGlobals = NULL;
  5. CGlobals::CGlobals()
  6. {
  7. m_hWnd = NULL;
  8. m_hConsoleWnd = NULL;
  9. QueryPerformanceFrequency((LARGE_INTEGER *)&m_CounterFreq);
  10. QueryPerformanceCounter((LARGE_INTEGER *)&m_CounterStart);
  11. QueryPerformanceCounter((LARGE_INTEGER *)&m_CounterTime);
  12. int GameDirLen = GetCurrentDirectory(MAX_PATH, m_GameDir);
  13. if (GameDirLen > 0)
  14. {
  15. if (m_GameDir[GameDirLen - 1] == '\\')
  16. {
  17. m_GameDir[GameDirLen - 1] = 0;
  18. }
  19. }
  20. ResetPackets();
  21. Update();
  22. }
  23. CGlobals::~CGlobals()
  24. {
  25. }
  26. const char *CGlobals::GetGameDirectory()
  27. {
  28. return (char *)m_GameDir;
  29. }
  30. std::string CGlobals::GetGameFile(const char *filename)
  31. {
  32. std::string filepath = GetGameDirectory();
  33. filepath += "\\";
  34. filepath += filename;
  35. return filepath;
  36. }
  37. void CGlobals::SetWindowHandle(HWND hWnd)
  38. {
  39. m_hWnd = hWnd;
  40. }
  41. HWND CGlobals::GetWindowHandle()
  42. {
  43. return (HWND)m_hWnd;
  44. }
  45. void CGlobals::SetConsoleWindowHandle(HWND hConsoleWnd)
  46. {
  47. m_hConsoleWnd = hConsoleWnd;
  48. }
  49. HWND CGlobals::GetConsoleWindowHandle()
  50. {
  51. return (HWND)m_hConsoleWnd;
  52. }
  53. void CGlobals::SetClientCount(WORD wCount)
  54. {
  55. m_wClientCount = wCount;
  56. }
  57. WORD CGlobals::GetClientCount()
  58. {
  59. return (WORD)m_wClientCount;
  60. }
  61. void CGlobals::PacketSent(DWORD dwLength)
  62. {
  63. m_cPacketSendCount++;
  64. m_cPacketSendSize += dwLength;
  65. }
  66. void CGlobals::PacketRecv(DWORD dwLength)
  67. {
  68. m_cPacketRecvCount++;
  69. m_cPacketRecvSize += dwLength;
  70. }
  71. UINT64 CGlobals::GetPacketSendCount()
  72. {
  73. return m_cPacketSendCount;
  74. }
  75. UINT64 CGlobals::GetPacketRecvCount()
  76. {
  77. return m_cPacketRecvCount;
  78. }
  79. UINT64 CGlobals::GetPacketSendSize()
  80. {
  81. return m_cPacketSendSize;
  82. }
  83. UINT64 CGlobals::GetPacketRecvSize()
  84. {
  85. return m_cPacketRecvSize;
  86. }
  87. void CGlobals::ResetPackets()
  88. {
  89. m_cPacketSendCount = 0;
  90. m_cPacketRecvCount = 0;
  91. m_cPacketSendSize = 0;
  92. m_cPacketRecvSize = 0;
  93. }
  94. double CGlobals::Time()
  95. {
  96. return m_fTime;
  97. }
  98. double g_TimeAdjustment = 0;
  99. void CGlobals::Update()
  100. {
  101. QueryPerformanceCounter((LARGE_INTEGER *)&m_CounterTime);
  102. m_fTime = (m_CounterTime - m_CounterStart) / (double)m_CounterFreq;
  103. m_fTime += 24000.0 + g_TimeAdjustment;
  104. }