mirror of https://github.com/OpenTTD/OpenTTD.git
(svn r21142) -Codechange: replace magic bridge length constants with proper constants (uni657)
This commit is contained in:
parent
65e6c9fd12
commit
ed18d02e9a
|
@ -152,7 +152,7 @@ static void _DoCommandReturnBuildBridge1(class AIInstance *instance)
|
||||||
if (!IsValidBridge(bridge_id)) return -1;
|
if (!IsValidBridge(bridge_id)) return -1;
|
||||||
|
|
||||||
uint max = ::GetBridgeSpec(bridge_id)->max_length;
|
uint max = ::GetBridgeSpec(bridge_id)->max_length;
|
||||||
if (max >= 16 && _settings_game.construction.longbridges) max = 100;
|
if (max >= MAX_BRIDGE_LENGTH && _settings_game.construction.longbridges) max = MAX_BRIDGE_LENGTH_LONGBRIDGES;
|
||||||
return max + 2;
|
return max + 2;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -72,4 +72,7 @@ int CalcBridgeLenCostFactor(int x);
|
||||||
|
|
||||||
void ResetBridges();
|
void ResetBridges();
|
||||||
|
|
||||||
|
static const uint MAX_BRIDGE_LENGTH = 16; ///< Maximum length of the bridge
|
||||||
|
static const uint MAX_BRIDGE_LENGTH_LONGBRIDGES = 100; ///< Maximum length of the bridge with longbridges enabled
|
||||||
|
|
||||||
#endif /* BRIDGE_H */
|
#endif /* BRIDGE_H */
|
||||||
|
|
|
@ -173,7 +173,7 @@ static CommandCost CheckBridgeSlopeSouth(Axis axis, Slope *tileh, uint *z)
|
||||||
CommandCost CheckBridgeAvailability(BridgeType bridge_type, uint bridge_len, DoCommandFlag flags)
|
CommandCost CheckBridgeAvailability(BridgeType bridge_type, uint bridge_len, DoCommandFlag flags)
|
||||||
{
|
{
|
||||||
if (flags & DC_QUERY_COST) {
|
if (flags & DC_QUERY_COST) {
|
||||||
if (bridge_len <= (_settings_game.construction.longbridges ? 100U : 16U)) return CommandCost();
|
if (bridge_len <= (_settings_game.construction.longbridges ? MAX_BRIDGE_LENGTH_LONGBRIDGES : MAX_BRIDGE_LENGTH)) return CommandCost();
|
||||||
return_cmd_error(STR_ERROR_BRIDGE_TOO_LONG);
|
return_cmd_error(STR_ERROR_BRIDGE_TOO_LONG);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -183,7 +183,7 @@ CommandCost CheckBridgeAvailability(BridgeType bridge_type, uint bridge_len, DoC
|
||||||
if (b->avail_year > _cur_year) return CMD_ERROR;
|
if (b->avail_year > _cur_year) return CMD_ERROR;
|
||||||
|
|
||||||
uint max = b->max_length;
|
uint max = b->max_length;
|
||||||
if (max >= 16 && _settings_game.construction.longbridges) max = 100;
|
if (max >= MAX_BRIDGE_LENGTH && _settings_game.construction.longbridges) max = MAX_BRIDGE_LENGTH_LONGBRIDGES;
|
||||||
|
|
||||||
if (b->min_length > bridge_len) return CMD_ERROR;
|
if (b->min_length > bridge_len) return CMD_ERROR;
|
||||||
if (bridge_len <= max) return CommandCost();
|
if (bridge_len <= max) return CommandCost();
|
||||||
|
@ -257,7 +257,7 @@ CommandCost CmdBuildBridge(TileIndex end_tile, DoCommandFlag flags, uint32 p1, u
|
||||||
CommandCost ret = CheckBridgeAvailability(bridge_type, bridge_len, flags);
|
CommandCost ret = CheckBridgeAvailability(bridge_type, bridge_len, flags);
|
||||||
if (ret.Failed()) return ret;
|
if (ret.Failed()) return ret;
|
||||||
} else {
|
} else {
|
||||||
if (bridge_len > (_settings_game.construction.longbridges ? 100U : 16U)) return_cmd_error(STR_ERROR_BRIDGE_TOO_LONG);
|
if (bridge_len > (_settings_game.construction.longbridges ? MAX_BRIDGE_LENGTH_LONGBRIDGES : MAX_BRIDGE_LENGTH)) return_cmd_error(STR_ERROR_BRIDGE_TOO_LONG);
|
||||||
}
|
}
|
||||||
|
|
||||||
uint z_start;
|
uint z_start;
|
||||||
|
|
Loading…
Reference in New Issue