From d03afadad23fced4bbb11df12a01f26cdbaf6844 Mon Sep 17 00:00:00 2001 From: darkvater Date: Sat, 11 Sep 2004 19:18:30 +0000 Subject: [PATCH] (svn r206) -Fix: [1001540] i lost all wagons. Half-assed fix for lost wagons. But now users can at least fix this problem. Consolecommand: "resetengines" --- console.c | 4 ++++ console.h | 6 ++++++ console_cmds.h | 13 +++++++++++++ engine.c | 2 ++ ttd.vcproj | 3 +++ 5 files changed, 28 insertions(+) create mode 100644 console_cmds.h diff --git a/console.c b/console.c index 83a36bb36e..1c43ae7661 100644 --- a/console.c +++ b/console.c @@ -1267,6 +1267,7 @@ return NULL; } static void IConsoleStdLibRegister() { + // functions IConsoleCmdRegister("debug_level",IConsoleStdLibDebugLevel); IConsoleCmdRegister("dump_vars",IConsoleStdLibListDumpVariables); IConsoleCmdRegister("echo",IConsoleStdLibEcho); @@ -1281,6 +1282,9 @@ static void IConsoleStdLibRegister() { IConsoleCmdRegister("list_vars",IConsoleStdLibListVariables); IConsoleCmdRegister("screenshot",IConsoleStdLibScreenShot); IConsoleCmdRegister("varinfo",IConsoleStdLibVarInfo); + IConsoleCmdRegister("resetengines",IConsoleResetEngines); + + // variables IConsoleVarRegister("cursor_rate",(void *) &_icursor_rate,ICONSOLE_VAR_BYTE); IConsoleVarRegister("con_developer",(void *) &_stdlib_con_developer,ICONSOLE_VAR_BOOLEAN); IConsoleVarRegister("developer",(void *) &_stdlib_developer,ICONSOLE_VAR_BYTE); diff --git a/console.h b/console.h index 11fc70bdbe..f2a7aded18 100644 --- a/console.h +++ b/console.h @@ -1,3 +1,5 @@ +#ifndef CONSOLE_H +#define CONSOLE_H // ** console ** // enum { @@ -88,3 +90,7 @@ void IConsoleVarDump(_iconsole_var * var, byte * dump_desc); // *** Parser *** // void IConsoleCmdExec(byte * cmdstr); + +#include "console_cmds.h" + +#endif /* CONSOLE_H */ diff --git a/console_cmds.h b/console_cmds.h new file mode 100644 index 0000000000..28346ac81e --- /dev/null +++ b/console_cmds.h @@ -0,0 +1,13 @@ +#ifndef CONSOLE_CMDS_H +#define CONSOLE_CMDS_H + +/* Console_CMDS.h is the placeholder of all the console commands + * that will be added to the game. Register the command in + * * console.c IConsoleStdLibRegister; + * then put the command in the appropiate place (eg. where it belongs, stations + * stuff in station_cmd.c, etc.), and add the function decleration here. + */ + +_iconsole_var * IConsoleResetEngines(byte argc, byte* argv[], byte argt[]); + +#endif /* CONSOLE_CMDS_H */ diff --git a/engine.c b/engine.c index 67c8b9239b..d7b6d30e0f 100644 --- a/engine.c +++ b/engine.c @@ -7,6 +7,7 @@ #include "vehicle.h" #include "news.h" #include "saveload.h" +#include "console.h" #define UPDATE_PLAYER_RAILTYPE(e,p) if ((byte)(e->railtype + 1) > p->max_railtype) p->max_railtype = e->railtype + 1; @@ -164,6 +165,7 @@ void StartupEngines() AdjustAvailAircraft(); } +_iconsole_var * IConsoleResetEngines(byte argc, byte* argv[], byte argt[]) {StartupEngines(); return 0;} uint32 _engine_refit_masks[256]; diff --git a/ttd.vcproj b/ttd.vcproj index b3b0a0a094..74dad20a43 100644 --- a/ttd.vcproj +++ b/ttd.vcproj @@ -1104,6 +1104,9 @@ + +