summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTELK <telk5093@gmail.com>2019-08-05 03:35:56 +0900
committerNiels Martin Hansen <nielsm@indvikleren.dk>2019-08-04 20:35:56 +0200
commitbcc73bd40dc9ac2b48f9982871b9befc970cbb91 (patch)
tree7225ee4c31ba5af3ec699588e3b507e1aa637e7c
parentafbf6a59182d9b1ca36b9dab9bd391ad0ae6222f (diff)
downloadopenttd-bcc73bd40dc9ac2b48f9982871b9befc970cbb91.tar.xz
Add: 'getsysdate' console command (#7658)
Add `getsysdate` console command to display system's local time, which is might be useful to check current time in script logging.
-rw-r--r--src/console_cmds.cpp20
1 files changed, 18 insertions, 2 deletions
diff --git a/src/console_cmds.cpp b/src/console_cmds.cpp
index 740bbdde8..13784178f 100644
--- a/src/console_cmds.cpp
+++ b/src/console_cmds.cpp
@@ -39,6 +39,7 @@
#include "engine_base.h"
#include "game/game.hpp"
#include "table/strings.h"
+#include <time.h>
#include "safeguards.h"
@@ -1302,13 +1303,27 @@ DEF_CONSOLE_CMD(ConGetSeed)
DEF_CONSOLE_CMD(ConGetDate)
{
if (argc == 0) {
- IConsoleHelp("Returns the current date (day-month-year) of the game. Usage: 'getdate'");
+ IConsoleHelp("Returns the current date (year-month-day) of the game. Usage: 'getdate'");
return true;
}
YearMonthDay ymd;
ConvertDateToYMD(_date, &ymd);
- IConsolePrintF(CC_DEFAULT, "Date: %d-%d-%d", ymd.day, ymd.month + 1, ymd.year);
+ IConsolePrintF(CC_DEFAULT, "Date: %04d-%02d-%02d", ymd.year, ymd.month + 1, ymd.day);
+ return true;
+}
+
+DEF_CONSOLE_CMD(ConGetSysDate)
+{
+ if (argc == 0) {
+ IConsoleHelp("Returns the current date (year-month-day) of your system. Usage: 'getsysdate'");
+ return true;
+ }
+
+ time_t t;
+ time(&t);
+ auto timeinfo = localtime(&t);
+ IConsolePrintF(CC_DEFAULT, "System Date: %04d-%02d-%02d %02d:%02d:%02d", timeinfo->tm_year + 1900, timeinfo->tm_mon + 1, timeinfo->tm_mday, timeinfo->tm_hour, timeinfo->tm_min, timeinfo->tm_sec);
return true;
}
@@ -1925,6 +1940,7 @@ void IConsoleStdLibRegister()
IConsoleCmdRegister("restart", ConRestart);
IConsoleCmdRegister("getseed", ConGetSeed);
IConsoleCmdRegister("getdate", ConGetDate);
+ IConsoleCmdRegister("getsysdate", ConGetSysDate);
IConsoleCmdRegister("quit", ConExit);
IConsoleCmdRegister("resetengines", ConResetEngines, ConHookNoNetwork);
IConsoleCmdRegister("reset_enginepool", ConResetEnginePool, ConHookNoNetwork);