mirror of
https://github.com/OpenTTD/OpenTTD.git
synced 2025-03-06 22:28:56 +00:00
(svn r19515) -Add: Client setting 'gui.newgrf_developer_tools' to enable otherwise hidden features.
-Add: Console command 'reload_newgrfs'; only available when newgrf developer tools are enabled.
This commit is contained in:
parent
9a00f6961f
commit
03249ebcfb
@ -34,6 +34,7 @@
|
||||
#include "gamelog.h"
|
||||
#include "ai/ai.hpp"
|
||||
#include "ai/ai_config.hpp"
|
||||
#include "newgrf.h"
|
||||
#include "console_func.h"
|
||||
|
||||
#ifdef ENABLE_NETWORK
|
||||
@ -110,6 +111,22 @@ DEF_CONSOLE_HOOK(ConHookNoNetwork)
|
||||
# define ConHookNoNetwork NULL
|
||||
#endif /* ENABLE_NETWORK */
|
||||
|
||||
DEF_CONSOLE_HOOK(ConHookNewGRFDeveloperTool)
|
||||
{
|
||||
if (_settings_client.gui.newgrf_developer_tools) {
|
||||
if (_game_mode == GM_MENU) {
|
||||
if (echo) IConsoleError("This command is only available in game and editor.");
|
||||
return CHR_DISALLOW;
|
||||
}
|
||||
#ifdef ENABLE_NETWORK
|
||||
return ConHookNoNetwork(echo);
|
||||
#else
|
||||
return CHR_ALLOW;
|
||||
#endif
|
||||
}
|
||||
return CHR_HIDE;
|
||||
}
|
||||
|
||||
static void IConsoleHelp(const char *str)
|
||||
{
|
||||
IConsolePrintF(CC_WARNING, "- %s", str);
|
||||
@ -1686,6 +1703,17 @@ DEF_CONSOLE_CMD(ConGamelogPrint)
|
||||
return true;
|
||||
}
|
||||
|
||||
DEF_CONSOLE_CMD(ConNewGRFReload)
|
||||
{
|
||||
if (argc == 0) {
|
||||
IConsoleHelp("Reloads all active NewGRFs from disk. Equivalent to reapplying NewGRFs via the settings, but without asking for confirmation. This might crash OpenTTD!");
|
||||
return true;
|
||||
}
|
||||
|
||||
ReloadNewGRFData();
|
||||
return true;
|
||||
}
|
||||
|
||||
#ifdef _DEBUG
|
||||
/******************
|
||||
* debug commands
|
||||
@ -1826,4 +1854,7 @@ void IConsoleStdLibRegister()
|
||||
#ifdef _DEBUG
|
||||
IConsoleDebugLibRegister();
|
||||
#endif
|
||||
|
||||
/* NewGRF development stuff */
|
||||
IConsoleCmdRegister("reload_newgrfs", ConNewGRFReload, ConHookNewGRFDeveloperTool);
|
||||
}
|
||||
|
@ -108,6 +108,7 @@ struct GUISettings {
|
||||
|
||||
uint8 developer; ///< print non-fatal warnings in console (>= 1), copy debug output to console (== 2)
|
||||
bool show_date_in_logs; ///< whether to show dates in console logs
|
||||
bool newgrf_developer_tools; ///< activate NewGRF developer tools
|
||||
};
|
||||
|
||||
/** Settings related to currency/unit systems. */
|
||||
|
@ -605,6 +605,7 @@ const SettingDesc _settings[] = {
|
||||
SDTC_BOOL(gui.show_date_in_logs, S, 0, false, STR_NULL, NULL),
|
||||
#endif
|
||||
SDTC_VAR(gui.developer, SLE_UINT8, S, 0, 1, 0, 2, 0, STR_NULL, NULL),
|
||||
SDTC_BOOL(gui.newgrf_developer_tools, S, 0, false, STR_NULL, NULL),
|
||||
SDTC_VAR(gui.console_backlog_timeout, SLE_UINT16, S, 0, 100, 10, 65500, 0, STR_NULL, NULL),
|
||||
SDTC_VAR(gui.console_backlog_length, SLE_UINT16, S, 0, 100, 10, 65500, 0, STR_NULL, NULL),
|
||||
#ifdef ENABLE_NETWORK
|
||||
|
Loading…
Reference in New Issue
Block a user