@@ -1133,27 +1133,26 @@ DEF_CONSOLE_CMD(ConStartAI)
}
if (_networking && !_settings_game.ai.ai_in_multiplayer) {
IConsoleWarning("AIs are not allowed in multiplayer by configuration.");
IConsoleWarning("Switch AI -> AI in multiplayer to True.");
return true;
if (!AI::CanStartNew()) {
IConsoleWarning("Can't start a new AI.");
int n = 0;
Company *c;
/* Find the next free slot */
FOR_ALL_COMPANIES(c) {
for (const Company *c : Company::Iterate()) {
if (c->index != n) break;
n++;
AIConfig *config = AIConfig::GetConfig((CompanyID)n);
if (argc >= 2) {
config->Change(argv[1], -1, true);
if (!config->HasScript()) {
IConsoleWarning("Failed to load the specified AI");
if (argc == 3) {
@@ -1526,26 +1525,25 @@ DEF_CONSOLE_CMD(ConListAliases)
DEF_CONSOLE_CMD(ConCompanies)
{
if (argc == 0) {
IConsoleHelp("List the details of all companies in the game. Usage 'companies'");
/* Grab the company name */
char company_name[512];
SetDParam(0, c->index);
GetString(company_name, STR_COMPANY_NAME, lastof(company_name));
const char *password_state = "";
if (c->is_ai) {
password_state = "AI";
} else if (_network_server) {
password_state = StrEmpty(_network_company_states[c->index].password) ? "unprotected" : "protected";