mirror of
https://github.com/OpenTTD/OpenTTD.git
synced 2025-03-10 08:00:05 +00:00
Remove: autoclean_unprotected settings; all companies will be protected
This commit is contained in:
parent
4f3db8eeaf
commit
a002803d1c
@ -1829,13 +1829,6 @@ DEF_CONSOLE_CMD(ConCompanies)
|
|||||||
SetDParam(0, c->index);
|
SetDParam(0, c->index);
|
||||||
std::string company_name = GetString(STR_COMPANY_NAME);
|
std::string company_name = GetString(STR_COMPANY_NAME);
|
||||||
|
|
||||||
const char *password_state = "";
|
|
||||||
if (c->is_ai) {
|
|
||||||
password_state = "AI";
|
|
||||||
} else if (_network_server) {
|
|
||||||
password_state = _network_company_states[c->index].password.empty() ? "unprotected" : "protected";
|
|
||||||
}
|
|
||||||
|
|
||||||
std::string colour = GetString(STR_COLOUR_DARK_BLUE + _company_colours[c->index]);
|
std::string colour = GetString(STR_COLOUR_DARK_BLUE + _company_colours[c->index]);
|
||||||
IConsolePrint(CC_INFO, "#:{}({}) Company Name: '{}' Year Founded: {} Money: {} Loan: {} Value: {} (T:{}, R:{}, P:{}, S:{}) {}",
|
IConsolePrint(CC_INFO, "#:{}({}) Company Name: '{}' Year Founded: {} Money: {} Loan: {} Value: {} (T:{}, R:{}, P:{}, S:{}) {}",
|
||||||
c->index + 1, colour, company_name,
|
c->index + 1, colour, company_name,
|
||||||
@ -1844,7 +1837,7 @@ DEF_CONSOLE_CMD(ConCompanies)
|
|||||||
c->group_all[VEH_ROAD].num_vehicle,
|
c->group_all[VEH_ROAD].num_vehicle,
|
||||||
c->group_all[VEH_AIRCRAFT].num_vehicle,
|
c->group_all[VEH_AIRCRAFT].num_vehicle,
|
||||||
c->group_all[VEH_SHIP].num_vehicle,
|
c->group_all[VEH_SHIP].num_vehicle,
|
||||||
password_state);
|
c->is_ai ? "AI" : "");
|
||||||
}
|
}
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
@ -2828,7 +2821,6 @@ void IConsoleStdLibRegister()
|
|||||||
IConsole::AliasRegister("pause_on_join", "setting pause_on_join %+");
|
IConsole::AliasRegister("pause_on_join", "setting pause_on_join %+");
|
||||||
IConsole::AliasRegister("autoclean_companies", "setting autoclean_companies %+");
|
IConsole::AliasRegister("autoclean_companies", "setting autoclean_companies %+");
|
||||||
IConsole::AliasRegister("autoclean_protected", "setting autoclean_protected %+");
|
IConsole::AliasRegister("autoclean_protected", "setting autoclean_protected %+");
|
||||||
IConsole::AliasRegister("autoclean_unprotected", "setting autoclean_unprotected %+");
|
|
||||||
IConsole::AliasRegister("restart_game_year", "setting restart_game_year %+");
|
IConsole::AliasRegister("restart_game_year", "setting restart_game_year %+");
|
||||||
IConsole::AliasRegister("min_players", "setting min_active_clients %+");
|
IConsole::AliasRegister("min_players", "setting min_active_clients %+");
|
||||||
IConsole::AliasRegister("reload_cfg", "setting reload_cfg %+");
|
IConsole::AliasRegister("reload_cfg", "setting reload_cfg %+");
|
||||||
|
@ -1633,11 +1633,10 @@ void NetworkUpdateClientInfo(ClientID client_id)
|
|||||||
NetworkAdminClientUpdate(ci);
|
NetworkAdminClientUpdate(ci);
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Check if the server has autoclean_companies activated
|
/**
|
||||||
* Two things happen:
|
* Remove companies that have not been used depending on the \c autoclean_companies setting
|
||||||
* 1) If a company is not protected, it is closed after 1 year (for example)
|
* and values for \c autoclean_protected, which removes any company, and
|
||||||
* 2) If a company is protected, protection is disabled after 3 years (for example)
|
* \c autoclean_novehicles, which removes companies without vehicles.
|
||||||
* (and item 1. happens a year later)
|
|
||||||
*/
|
*/
|
||||||
static void NetworkAutoCleanCompanies()
|
static void NetworkAutoCleanCompanies()
|
||||||
{
|
{
|
||||||
@ -1672,19 +1671,11 @@ static void NetworkAutoCleanCompanies()
|
|||||||
/* The company is empty for one month more */
|
/* The company is empty for one month more */
|
||||||
if (c->months_empty != std::numeric_limits<decltype(c->months_empty)>::max()) c->months_empty++;
|
if (c->months_empty != std::numeric_limits<decltype(c->months_empty)>::max()) c->months_empty++;
|
||||||
|
|
||||||
/* Is the company empty for autoclean_unprotected-months, and is there no protection? */
|
/* Is the company empty for autoclean_protected-months? */
|
||||||
if (_settings_client.network.autoclean_unprotected != 0 && c->months_empty > _settings_client.network.autoclean_unprotected && _network_company_states[c->index].password.empty()) {
|
if (_settings_client.network.autoclean_protected != 0 && c->months_empty > _settings_client.network.autoclean_protected) {
|
||||||
/* Shut the company down */
|
/* Shut the company down */
|
||||||
Command<CMD_COMPANY_CTRL>::Post(CCA_DELETE, c->index, CRR_AUTOCLEAN, INVALID_CLIENT_ID);
|
Command<CMD_COMPANY_CTRL>::Post(CCA_DELETE, c->index, CRR_AUTOCLEAN, INVALID_CLIENT_ID);
|
||||||
IConsolePrint(CC_INFO, "Auto-cleaned company #{} with no password.", c->index + 1);
|
IConsolePrint(CC_INFO, "Auto-cleaned company #{}.", c->index + 1);
|
||||||
}
|
|
||||||
/* Is the company empty for autoclean_protected-months, and there is a protection? */
|
|
||||||
if (_settings_client.network.autoclean_protected != 0 && c->months_empty > _settings_client.network.autoclean_protected && !_network_company_states[c->index].password.empty()) {
|
|
||||||
/* Unprotect the company */
|
|
||||||
_network_company_states[c->index].password.clear();
|
|
||||||
IConsolePrint(CC_INFO, "Auto-removed protection from company #{}.", c->index + 1);
|
|
||||||
c->months_empty = 0;
|
|
||||||
NetworkServerUpdateCompanyPassworded(c->index, false);
|
|
||||||
}
|
}
|
||||||
/* Is the company empty for autoclean_novehicles-months, and has no vehicles? */
|
/* Is the company empty for autoclean_novehicles-months, and has no vehicles? */
|
||||||
if (_settings_client.network.autoclean_novehicles != 0 && c->months_empty > _settings_client.network.autoclean_novehicles && !HasBit(has_vehicles, c->index)) {
|
if (_settings_client.network.autoclean_novehicles != 0 && c->months_empty > _settings_client.network.autoclean_novehicles && !HasBit(has_vehicles, c->index)) {
|
||||||
|
@ -324,8 +324,7 @@ struct NetworkSettings {
|
|||||||
std::string connect_to_ip; ///< default for the "Add server" query
|
std::string connect_to_ip; ///< default for the "Add server" query
|
||||||
std::string network_id; ///< network ID for servers
|
std::string network_id; ///< network ID for servers
|
||||||
bool autoclean_companies; ///< automatically remove companies that are not in use
|
bool autoclean_companies; ///< automatically remove companies that are not in use
|
||||||
uint8_t autoclean_unprotected; ///< remove passwordless companies after this many months
|
uint8_t autoclean_protected; ///< Remove companies after this many months.
|
||||||
uint8_t autoclean_protected; ///< remove the password from passworded companies after this many months
|
|
||||||
uint8_t autoclean_novehicles; ///< remove companies with no vehicles after this many months
|
uint8_t autoclean_novehicles; ///< remove companies with no vehicles after this many months
|
||||||
uint8_t max_companies; ///< maximum amount of companies
|
uint8_t max_companies; ///< maximum amount of companies
|
||||||
uint8_t max_clients; ///< maximum amount of clients
|
uint8_t max_clients; ///< maximum amount of clients
|
||||||
|
@ -193,14 +193,6 @@ var = network.autoclean_companies
|
|||||||
flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_NETWORK_ONLY
|
flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_NETWORK_ONLY
|
||||||
def = false
|
def = false
|
||||||
|
|
||||||
[SDTC_VAR]
|
|
||||||
var = network.autoclean_unprotected
|
|
||||||
type = SLE_UINT8
|
|
||||||
flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_0_IS_SPECIAL | SF_NETWORK_ONLY
|
|
||||||
def = 12
|
|
||||||
min = 0
|
|
||||||
max = 240
|
|
||||||
|
|
||||||
[SDTC_VAR]
|
[SDTC_VAR]
|
||||||
var = network.autoclean_protected
|
var = network.autoclean_protected
|
||||||
type = SLE_UINT8
|
type = SLE_UINT8
|
||||||
|
Loading…
Reference in New Issue
Block a user