diff options
author | Niels Martin Hansen <nielsm@indvikleren.dk> | 2018-11-01 18:46:19 +0100 |
---|---|---|
committer | Niels Martin Hansen <nielsm@indvikleren.dk> | 2018-11-25 00:48:34 +0100 |
commit | 810887af3043eed7506f5e0c3b7bc429cee8fa31 (patch) | |
tree | 848760876511e240f184e18ebc7edaf490c03ac2 /src/economy.cpp | |
parent | c618a7c093cf0a0d0ad042ce7c382706d7f65cb1 (diff) | |
download | openttd-810887af3043eed7506f5e0c3b7bc429cee8fa31.tar.xz |
Fix #6498: Use int64 for all company rating calculations
Diffstat (limited to 'src/economy.cpp')
-rw-r--r-- | src/economy.cpp | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/src/economy.cpp b/src/economy.cpp index ad9895ba9..c7ffa96cc 100644 --- a/src/economy.cpp +++ b/src/economy.cpp @@ -95,7 +95,7 @@ const ScoreInfo _score_info[] = { { 0, 0} // SCORE_TOTAL }; -int _score_part[MAX_COMPANIES][SCORE_END]; +int64 _score_part[MAX_COMPANIES][SCORE_END]; Economy _economy; Prices _price; Money _additional_cash_required; @@ -183,7 +183,7 @@ int UpdateCompanyRatingAndValue(Company *c, bool update) _score_part[owner][SCORE_VEHICLES] = num; /* Don't allow negative min_profit to show */ if (min_profit > 0) { - _score_part[owner][SCORE_MIN_PROFIT] = ClampToI32(min_profit); + _score_part[owner][SCORE_MIN_PROFIT] = min_profit; } } @@ -213,10 +213,10 @@ int UpdateCompanyRatingAndValue(Company *c, bool update) } while (++cee, --numec); if (min_income > 0) { - _score_part[owner][SCORE_MIN_INCOME] = ClampToI32(min_income); + _score_part[owner][SCORE_MIN_INCOME] = min_income; } - _score_part[owner][SCORE_MAX_INCOME] = ClampToI32(max_income); + _score_part[owner][SCORE_MAX_INCOME] = max_income; } } @@ -230,7 +230,7 @@ int UpdateCompanyRatingAndValue(Company *c, bool update) total_delivered += cee->delivered_cargo.GetSum<OverflowSafeInt64>(); } while (++cee, --numec); - _score_part[owner][SCORE_DELIVERED] = ClampToI32(total_delivered); + _score_part[owner][SCORE_DELIVERED] = total_delivered; } } @@ -242,13 +242,13 @@ int UpdateCompanyRatingAndValue(Company *c, bool update) /* Generate score for company's money */ { if (c->money > 0) { - _score_part[owner][SCORE_MONEY] = ClampToI32(c->money); + _score_part[owner][SCORE_MONEY] = c->money; } } /* Generate score for loan */ { - _score_part[owner][SCORE_LOAN] = ClampToI32(_score_info[SCORE_LOAN].needed - c->current_loan); + _score_part[owner][SCORE_LOAN] = _score_info[SCORE_LOAN].needed - c->current_loan; } /* Now we calculate the score for each item.. */ |