VegaS1234

[C++] Chat log viewer

Nov 25th, 2017
283
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.81 KB | None | 0 0
  1. #if defined(ENABLE_CHAT_LOG_VIEWER)
  2. void CPythonChat::AppendLog(DWORD bType, const char* c_szSenderLine)
  3. {
  4.     #define DIRECTORY_NAME_CHAT_LOG "chat_log"
  5.    
  6.     if (bType > CHAT_TYPE_MAX_NUM || !*c_szSenderLine)
  7.         return;
  8.  
  9.     if (GetFileAttributes(DIRECTORY_NAME_CHAT_LOG) != FILE_ATTRIBUTE_DIRECTORY)
  10.         CreateDirectory(DIRECTORY_NAME_CHAT_LOG, NULL);
  11.  
  12.     char chatLogFileName[128];
  13.     switch (bType)
  14.     {
  15.         case CHAT_TYPE_TALKING:
  16.             snprintf(chatLogFileName, sizeof(chatLogFileName), "%s/chat_log_talk.txt", DIRECTORY_NAME_CHAT_LOG);
  17.             break;     
  18.         case CHAT_TYPE_INFO:
  19.             snprintf(chatLogFileName, sizeof(chatLogFileName), "%s/chat_log_info.txt", DIRECTORY_NAME_CHAT_LOG);
  20.             break;
  21.         case CHAT_TYPE_NOTICE:
  22.             snprintf(chatLogFileName, sizeof(chatLogFileName), "%s/chat_log_notice.txt", DIRECTORY_NAME_CHAT_LOG);
  23.             break;
  24.         case CHAT_TYPE_PARTY:
  25.             snprintf(chatLogFileName, sizeof(chatLogFileName), "%s/chat_log_party.txt", DIRECTORY_NAME_CHAT_LOG);
  26.             break;
  27.         case CHAT_TYPE_GUILD:
  28.             snprintf(chatLogFileName, sizeof(chatLogFileName), "%s/chat_log_guild.txt", DIRECTORY_NAME_CHAT_LOG);
  29.             break;
  30.         case CHAT_TYPE_SHOUT:
  31.             snprintf(chatLogFileName, sizeof(chatLogFileName), "%s/chat_log_shout.txt", DIRECTORY_NAME_CHAT_LOG);
  32.             break;
  33.         case CHAT_TYPE_BIG_NOTICE:
  34.             snprintf(chatLogFileName, sizeof(chatLogFileName), "%s/chat_log_big_notice.txt", DIRECTORY_NAME_CHAT_LOG);
  35.             break;
  36.         default:
  37.             snprintf(chatLogFileName, sizeof(chatLogFileName), "%s/chat_log_default.txt", DIRECTORY_NAME_CHAT_LOG);
  38.             break;
  39.     }
  40.  
  41.     FILE * file = fopen(chatLogFileName, "a+");
  42.     if (!file)
  43.         return;
  44.  
  45.     time_t time_parser = time(0);
  46.     char outputDate[30];
  47.     strftime(outputDate, 30, "%d.%m.%Y / %H:%M:%S", localtime(&time_parser));
  48.  
  49.     fprintf(file, "%s | %s\n", outputDate, c_szSenderLine);
  50.     fflush(file);
  51.     fclose(file);
  52. }
  53. #endif
Advertisement
Add Comment
Please, Sign In to add comment