void CGraphics_SDL::TakeScreenshot(const char *pFilename) { char aDate[20]; str_timestamp(aDate, sizeof(aDate)); str_format(m_aScreenshotName, sizeof(m_aScreenshotName), "screenshots/%s_%s.png", pFilename?pFilename:"screenshot", aDate); m_DoScreenshot = true; }
void CGameConsole::Dump(int Type) { CInstance *pConsole = Type == CONSOLETYPE_REMOTE ? &m_RemoteConsole : &m_LocalConsole; char aFilename[128]; char aDate[20]; str_timestamp(aDate, sizeof(aDate)); str_format(aFilename, sizeof(aFilename), "dumps/%s_dump_%s.txt", Type==CONSOLETYPE_REMOTE?"remote_console":"local_console", aDate); IOHANDLE io = Storage()->OpenFile(aFilename, IOFLAG_WRITE, IStorage::TYPE_SAVE); if(io) { #if defined(CONF_FAMILY_WINDOWS) static const char Newline[] = "\r\n"; #else static const char Newline[] = "\n"; #endif for(CInstance::CBacklogEntry *pEntry = pConsole->m_Backlog.First(); pEntry; pEntry = pConsole->m_Backlog.Next(pEntry)) { io_write(io, pEntry->m_aText, str_length(pEntry->m_aText)); io_write(io, Newline, sizeof(Newline)-1); } io_close(io); } }
static void Con_DbgDumpmem(IConsole::IResult *pResult, void *pUserData, int ClientID) { CEngine *pEngine = static_cast<CEngine *>(pUserData); char aBuf[32]; str_timestamp(aBuf, sizeof(aBuf)); char aFilename[128]; str_format(aFilename, sizeof(aFilename), "dumps/memory_%s.txt", aBuf); mem_debug_dump(pEngine->m_pStorage->OpenFile(aFilename, IOFLAG_WRITE, IStorage::TYPE_SAVE)); }
void CGraphics_SDL::TakeScreenshot(const char *pFilename) { char aDate[20]; str_timestamp(aDate, sizeof(aDate)); if (str_comp(aDate, m_aScreenshotDate) == 0) m_ScreenshotNum++; else m_ScreenshotNum = 0; str_copy(m_aScreenshotDate, aDate, sizeof(m_aScreenshotDate)); str_format(m_aScreenshotName, sizeof(m_aScreenshotName), "screenshots/%s_%s_%i.png", pFilename?pFilename:"screenshot", aDate, m_ScreenshotNum); m_DoScreenshot = true; }
static void Con_SaveConfig(IConsole::IResult *pResult, void *pUserData) { char aFilename[128]; if(pResult->NumArguments()) str_format(aFilename, sizeof(aFilename), "configs/%s.cfg", pResult->GetString(0)); else { char aDate[20]; str_timestamp(aDate, sizeof(aDate)); str_format(aFilename, sizeof(aFilename), "configs/config_%s.cfg", aDate); } ((CConfig*)pUserData)->Save(aFilename); }
static void Con_DbgLognetwork(IConsole::IResult *pResult, void *pUserData, int ClientID) { CEngine *pEngine = static_cast<CEngine *>(pUserData); if(pEngine->m_Logging) { CNetBase::CloseLog(); pEngine->m_Logging = false; } else { char aBuf[32]; str_timestamp(aBuf, sizeof(aBuf)); char aFilenameSent[128], aFilenameRecv[128]; str_format(aFilenameSent, sizeof(aFilenameSent), "dumps/network_sent_%s.txt", aBuf); str_format(aFilenameRecv, sizeof(aFilenameRecv), "dumps/network_recv_%s.txt", aBuf); CNetBase::OpenLog(pEngine->m_pStorage->OpenFile(aFilenameSent, IOFLAG_WRITE, IStorage::TYPE_SAVE), pEngine->m_pStorage->OpenFile(aFilenameRecv, IOFLAG_WRITE, IStorage::TYPE_SAVE)); pEngine->m_Logging = true; } }