diff options
author | Yexo <yexo@openttd.org> | 2010-03-13 00:15:24 +0000 |
---|---|---|
committer | Yexo <yexo@openttd.org> | 2010-03-13 00:15:24 +0000 |
commit | dfa528d058e5499558e7fd8dca3b292851f7625a (patch) | |
tree | 7965c3366300677028430c11012a986ddf18ffc2 /src/ai | |
parent | d0b496feb63980b1ec9bf402b7fa2c236e07f999 (diff) | |
download | openttd-dfa528d058e5499558e7fd8dca3b292851f7625a.tar.xz |
(svn r19395) -Fix [FS#3669]: the AI Debug window didn't open if an AI or library fails to compile when loading a savegame
Diffstat (limited to 'src/ai')
-rw-r--r-- | src/ai/ai_gui.cpp | 12 | ||||
-rw-r--r-- | src/ai/ai_gui.hpp | 2 |
2 files changed, 14 insertions, 0 deletions
diff --git a/src/ai/ai_gui.cpp b/src/ai/ai_gui.cpp index c7ff796d9..a297f74aa 100644 --- a/src/ai/ai_gui.cpp +++ b/src/ai/ai_gui.cpp @@ -1024,3 +1024,15 @@ void InitializeAIGui() { AIDebugWindow::ai_debug_company = INVALID_COMPANY; } + +/** Open the AI debug window if one of the AI scripts has crashed. */ +void ShowAIDebugWindowIfAIError() +{ + Company *c; + FOR_ALL_COMPANIES(c) { + if (c->is_ai && c->ai_instance->IsDead()) { + ShowAIDebugWindow(c->index); + break; + } + } +} diff --git a/src/ai/ai_gui.hpp b/src/ai/ai_gui.hpp index e76681636..0a47e992b 100644 --- a/src/ai/ai_gui.hpp +++ b/src/ai/ai_gui.hpp @@ -17,6 +17,7 @@ #ifdef ENABLE_AI void ShowAIDebugWindow(CompanyID show_company = INVALID_COMPANY); void ShowAIConfigWindow(); +void ShowAIDebugWindowIfAIError(); #else #include "table/strings.h" @@ -25,6 +26,7 @@ static inline void ShowAIConfigWindow() ShowErrorMessage(STR_ERROR_NO_AI, STR_ERROR_NO_AI_SUB, WL_INFO); } static inline void ShowAIDebugWindow(CompanyID show_company = INVALID_COMPANY) {ShowAIConfigWindow();} +static inline void ShowAIDebugWindowIfAIError() {} #endif /* ENABLE_AI */ #endif /* AI_GUI_HPP */ |