mirror of https://github.com/OpenTTD/OpenTTD.git
(svn r10208) -Codechange: replace int32 with Money where appropriate.
This commit is contained in:
parent
7a72dcb3b5
commit
2ee73b50b8
|
@ -493,7 +493,7 @@ CommandCost CmdSellAircraft(TileIndex tile, uint32 flags, uint32 p1, uint32 p2)
|
|||
DoDeleteAircraft(v);
|
||||
}
|
||||
|
||||
return CommandCost(-(int32)v->value);
|
||||
return CommandCost(-v->value);
|
||||
}
|
||||
|
||||
/** Start/Stop an aircraft.
|
||||
|
|
|
@ -446,7 +446,7 @@ CommandCost CmdPurchaseLandArea(TileIndex tile, uint32 flags, uint32 p1, uint32
|
|||
|
||||
static CommandCost ClearTile_Clear(TileIndex tile, byte flags)
|
||||
{
|
||||
static const int32* clear_price_table[] = {
|
||||
static const Money* clear_price_table[] = {
|
||||
&_price.clear_1,
|
||||
&_price.purchase_land,
|
||||
&_price.clear_2,
|
||||
|
|
|
@ -602,7 +602,7 @@ CommandCost CommandCost::AddCost(CommandCost ret)
|
|||
return *this;
|
||||
}
|
||||
|
||||
CommandCost CommandCost::AddCost(int32 cost)
|
||||
CommandCost CommandCost::AddCost(Money cost)
|
||||
{
|
||||
this->cost += cost;
|
||||
return *this;
|
||||
|
@ -614,7 +614,7 @@ CommandCost CommandCost::MultiplyCost(int factor)
|
|||
return *this;
|
||||
}
|
||||
|
||||
int32 CommandCost::GetCost() const
|
||||
Money CommandCost::GetCost() const
|
||||
{
|
||||
return this->cost;
|
||||
}
|
||||
|
|
|
@ -57,10 +57,11 @@ const ScoreInfo _score_info[] = {
|
|||
|
||||
int _score_part[MAX_PLAYERS][SCORE_END];
|
||||
|
||||
int64 CalculateCompanyValue(const Player* p)
|
||||
Money CalculateCompanyValue(const Player* p)
|
||||
{
|
||||
PlayerID owner = p->index;
|
||||
int64 value;
|
||||
/* Do a little nasty by using CommandCost, so we can use the "overflow" protection of CommandCost */
|
||||
CommandCost value;
|
||||
|
||||
{
|
||||
Station *st;
|
||||
|
@ -70,7 +71,7 @@ int64 CalculateCompanyValue(const Player* p)
|
|||
if (st->owner == owner) num += CountBitsSet(st->facilities);
|
||||
}
|
||||
|
||||
value = num * _price.station_value * 25;
|
||||
value.AddCost(num * _price.station_value * 25);
|
||||
}
|
||||
|
||||
{
|
||||
|
@ -83,14 +84,16 @@ int64 CalculateCompanyValue(const Player* p)
|
|||
v->type == VEH_ROAD ||
|
||||
(v->type == VEH_AIRCRAFT && IsNormalAircraft(v)) ||
|
||||
v->type == VEH_SHIP) {
|
||||
value += v->value * 3 >> 1;
|
||||
value.AddCost(v->value * 3 >> 1);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
value += p->player_money - p->current_loan; // add real money value
|
||||
/* Add real money value */
|
||||
value.AddCost(-p->current_loan);
|
||||
value.AddCost(p->player_money);
|
||||
|
||||
return max(value, 1LL);
|
||||
return max(value.GetCost(), 1);
|
||||
}
|
||||
|
||||
/** if update is set to true, the economy is updated with this score
|
||||
|
@ -148,16 +151,12 @@ int UpdateCompanyRatingAndValue(Player *p, bool update)
|
|||
|
||||
/* Generate statistics depending on recent income statistics */
|
||||
{
|
||||
const PlayerEconomyEntry* pee;
|
||||
int numec;
|
||||
int32 min_income;
|
||||
int32 max_income;
|
||||
|
||||
numec = min(p->num_valid_stat_ent, 12);
|
||||
int numec = min(p->num_valid_stat_ent, 12);
|
||||
if (numec != 0) {
|
||||
min_income = 0x7FFFFFFF;
|
||||
max_income = 0;
|
||||
pee = p->old_economy;
|
||||
const PlayerEconomyEntry *pee = p->old_economy;
|
||||
Money min_income = pee->income + pee->expenses;
|
||||
Money max_income = pee->income + pee->expenses;
|
||||
|
||||
do {
|
||||
min_income = min(min_income, pee->income + pee->expenses);
|
||||
max_income = max(max_income, pee->income + pee->expenses);
|
||||
|
@ -658,11 +657,17 @@ static void PlayersGenStatistics()
|
|||
InvalidateWindow(WC_COMPANY_LEAGUE, 0);
|
||||
}
|
||||
|
||||
static void AddSingleInflation(int32 *value, uint16 *frac, int32 amt)
|
||||
static void AddSingleInflation(Money *value, uint16 *frac, int32 amt)
|
||||
{
|
||||
int64 tmp = (int64)*value * amt + *frac;
|
||||
*frac = GB(tmp, 0, 16);
|
||||
*value += tmp >> 16;
|
||||
/* Is it safe to add inflation ? */
|
||||
if ((MAX_UVALUE(Money) / 2 / amt) > (*value + *frac + 1)) {
|
||||
*value = MAX_UVALUE(Money);
|
||||
*frac = 0;
|
||||
} else {
|
||||
int64 tmp = (int64)*value * amt + *frac;
|
||||
*frac = GB(tmp, 0, 16);
|
||||
*value += tmp >> 16;
|
||||
}
|
||||
}
|
||||
|
||||
static void AddInflation()
|
||||
|
@ -672,10 +677,10 @@ static void AddInflation()
|
|||
* 12 -> months per year
|
||||
* This is only a good approxiamtion for small values
|
||||
*/
|
||||
int32 inf = _economy.infl_amount * 54;
|
||||
Money inf = _economy.infl_amount * 54;
|
||||
|
||||
for (uint i = 0; i != NUM_PRICES; i++) {
|
||||
AddSingleInflation((int32*)&_price + i, _price_frac + i, inf);
|
||||
AddSingleInflation((Money*)&_price + i, _price_frac + i, inf);
|
||||
}
|
||||
|
||||
_economy.max_loan_unround += BIGMULUS(_economy.max_loan_unround, inf, 16);
|
||||
|
@ -686,7 +691,7 @@ static void AddInflation()
|
|||
inf = _economy.infl_amount_pr * 54;
|
||||
for (CargoID i = 0; i < NUM_CARGO; i++) {
|
||||
AddSingleInflation(
|
||||
(int32*)_cargo_payment_rates + i,
|
||||
(Money*)_cargo_payment_rates + i,
|
||||
_cargo_payment_rates_frac + i,
|
||||
inf
|
||||
);
|
||||
|
@ -709,7 +714,7 @@ static void PlayersPayInterest()
|
|||
_current_player = p->index;
|
||||
SET_EXPENSES_TYPE(EXPENSES_LOAN_INT);
|
||||
|
||||
SubtractMoneyFromPlayer(CommandCost(BIGMULUS(p->current_loan, interest, 16)));
|
||||
SubtractMoneyFromPlayer(CommandCost((Money)BIGMULUS(p->current_loan, interest, 16)));
|
||||
|
||||
SET_EXPENSES_TYPE(EXPENSES_OTHER);
|
||||
SubtractMoneyFromPlayer(_price.station_value >> 2);
|
||||
|
@ -739,7 +744,7 @@ static byte _price_category[NUM_PRICES] = {
|
|||
2,
|
||||
};
|
||||
|
||||
static const int32 _price_base[NUM_PRICES] = {
|
||||
static const Money _price_base[NUM_PRICES] = {
|
||||
100, ///< station_value
|
||||
100, ///< build_rail
|
||||
95, ///< build_road
|
||||
|
@ -822,10 +827,10 @@ void StartupEconomy()
|
|||
{
|
||||
int i;
|
||||
|
||||
assert(sizeof(_price) == NUM_PRICES * sizeof(int32));
|
||||
assert(sizeof(_price) == NUM_PRICES * sizeof(Money));
|
||||
|
||||
for (i = 0; i != NUM_PRICES; i++) {
|
||||
int32 price = _price_base[i];
|
||||
Money price = _price_base[i];
|
||||
if (_price_category[i] != 0) {
|
||||
uint mod = _price_category[i] == 1 ? _opt.diff.vehicle_costs : _opt.diff.construction_cost;
|
||||
if (mod < 1) {
|
||||
|
@ -839,7 +844,7 @@ void StartupEconomy()
|
|||
} else {
|
||||
price >>= 8 - price_base_multiplier[i];
|
||||
}
|
||||
((int32*)&_price)[i] = price;
|
||||
((Money*)&_price)[i] = price;
|
||||
_price_frac[i] = 0;
|
||||
}
|
||||
|
||||
|
@ -1368,14 +1373,14 @@ void VehiclePayment(Vehicle *front_v)
|
|||
{
|
||||
int result = 0;
|
||||
|
||||
int profit = 0;
|
||||
int total_veh_profit = 0; // accumulates the profit across the vehicle chain (used by trains)
|
||||
int32 route_profit = 0; // the grand total amount for the route. A-D of transfer chain A-B-C-D
|
||||
int virtual_profit = 0; // virtual profit of one vehicle element for feeder systems
|
||||
int virtual_profit_total = 0; // virtual profit for entire vehicle chain
|
||||
int total_cargo_feeder_share = 0; // the feeder cash amount for the goods being loaded/unloaded in this load step
|
||||
Money profit = 0;
|
||||
Money total_veh_profit = 0; // accumulates the profit across the vehicle chain (used by trains)
|
||||
Money route_profit = 0; // the grand total amount for the route. A-D of transfer chain A-B-C-D
|
||||
Money virtual_profit = 0; // virtual profit of one vehicle element for feeder systems
|
||||
Money virtual_profit_total = 0; // virtual profit for entire vehicle chain
|
||||
Money total_cargo_feeder_share = 0; // the feeder cash amount for the goods being loaded/unloaded in this load step
|
||||
|
||||
int all_vehicles_cargo_feeder_share = front_v->cargo_feeder_share; // used to hold transfer value of complete vehicle chain - used by trains
|
||||
Money all_vehicles_cargo_feeder_share = front_v->cargo_feeder_share; // used to hold transfer value of complete vehicle chain - used by trains
|
||||
|
||||
StationID last_visited = front_v->last_station_visited;
|
||||
Station *st = GetStation(last_visited);
|
||||
|
@ -1766,7 +1771,7 @@ static void DoAcquireCompany(Player *p)
|
|||
{
|
||||
Player *owner;
|
||||
int i;
|
||||
int64 value;
|
||||
Money value;
|
||||
|
||||
SetDParam(0, p->name_1);
|
||||
SetDParam(1, p->name_2);
|
||||
|
@ -1784,13 +1789,15 @@ static void DoAcquireCompany(Player *p)
|
|||
}
|
||||
|
||||
value = CalculateCompanyValue(p) >> 2;
|
||||
PlayerID old_player = _current_player;
|
||||
for (i = 0; i != 4; i++) {
|
||||
if (p->share_owners[i] != PLAYER_SPECTATOR) {
|
||||
owner = GetPlayer(p->share_owners[i]);
|
||||
owner->player_money += value;
|
||||
owner->yearly_expenses[0][EXPENSES_OTHER] += value;
|
||||
SET_EXPENSES_TYPE(EXPENSES_OTHER);
|
||||
_current_player = p->share_owners[i];
|
||||
SubtractMoneyFromPlayer(CommandCost(-value));
|
||||
}
|
||||
}
|
||||
_current_player = old_player;
|
||||
|
||||
p->is_active = false;
|
||||
|
||||
|
@ -1855,7 +1862,7 @@ CommandCost CmdBuyShareInCompany(TileIndex tile, uint32 flags, uint32 p1, uint32
|
|||
CommandCost CmdSellShareInCompany(TileIndex tile, uint32 flags, uint32 p1, uint32 p2)
|
||||
{
|
||||
Player *p;
|
||||
int64 cost;
|
||||
Money cost;
|
||||
|
||||
/* Check if buying shares is allowed (protection against modified clients */
|
||||
if (!IsValidPlayer((PlayerID)p1) || !_patches.allow_shares) return CMD_ERROR;
|
||||
|
@ -1876,7 +1883,7 @@ CommandCost CmdSellShareInCompany(TileIndex tile, uint32 flags, uint32 p1, uint3
|
|||
*b = PLAYER_SPECTATOR;
|
||||
InvalidateWindow(WC_COMPANY, p1);
|
||||
}
|
||||
return CommandCost((int32)cost);
|
||||
return CommandCost(cost);
|
||||
}
|
||||
|
||||
/** Buy up another company.
|
||||
|
|
|
@ -92,7 +92,7 @@ void HandleOnEditText(const char *str)
|
|||
#ifdef ENABLE_NETWORK
|
||||
case 3: { // Give money, you can only give money in excess of loan
|
||||
const Player *p = GetPlayer(_current_player);
|
||||
int32 money = min(p->player_money - p->current_loan, atoi(str) / _currency->rate);
|
||||
Money money = min(p->player_money - p->current_loan, atoi(str) / _currency->rate);
|
||||
|
||||
money = clamp(money, 0, 20000000); // Clamp between 20 million and 0
|
||||
|
||||
|
|
|
@ -133,7 +133,7 @@ CommandCost CmdIncreaseLoan(TileIndex tile, uint32 flags, uint32 p1, uint32 p2)
|
|||
return_cmd_error(STR_702B_MAXIMUM_PERMITTED_LOAN);
|
||||
}
|
||||
|
||||
int32 loan;
|
||||
Money loan;
|
||||
switch (p2) {
|
||||
default: return CMD_ERROR; // Invalid method
|
||||
case 0: // Take some extra loan
|
||||
|
@ -289,7 +289,7 @@ CommandCost CmdMoneyCheat(TileIndex tile, uint32 flags, uint32 p1, uint32 p2)
|
|||
if (_networking) return CMD_ERROR;
|
||||
#endif
|
||||
SET_EXPENSES_TYPE(EXPENSES_OTHER);
|
||||
return CommandCost(-(int32)p1);
|
||||
return CommandCost(-(Money)p1);
|
||||
}
|
||||
|
||||
/** Transfer funds (money) from one player to another.
|
||||
|
@ -304,7 +304,7 @@ CommandCost CmdMoneyCheat(TileIndex tile, uint32 flags, uint32 p1, uint32 p2)
|
|||
CommandCost CmdGiveMoney(TileIndex tile, uint32 flags, uint32 p1, uint32 p2)
|
||||
{
|
||||
const Player *p = GetPlayer(_current_player);
|
||||
CommandCost amount(min((int32)p1, 20000000));
|
||||
CommandCost amount((Money)min(p1, 20000000LL));
|
||||
|
||||
SET_EXPENSES_TYPE(EXPENSES_OTHER);
|
||||
|
||||
|
|
|
@ -89,7 +89,7 @@ static void Place_LandInfo(TileIndex tile)
|
|||
Player *p;
|
||||
Window *w;
|
||||
Town *t;
|
||||
int64 old_money;
|
||||
Money old_money;
|
||||
CommandCost costclear;
|
||||
AcceptedCargo ac;
|
||||
TileDesc td;
|
||||
|
|
103
src/openttd.h
103
src/openttd.h
|
@ -69,6 +69,7 @@ typedef uint16 SignID;
|
|||
typedef uint16 GroupID;
|
||||
typedef uint16 EngineRenewID;
|
||||
typedef uint16 DestinationID;
|
||||
typedef int32 Money;
|
||||
|
||||
/* DestinationID must be at least as large as every these below, because it can
|
||||
* be any of them
|
||||
|
@ -226,53 +227,53 @@ enum {
|
|||
};
|
||||
|
||||
struct Prices {
|
||||
int32 station_value;
|
||||
int32 build_rail;
|
||||
int32 build_road;
|
||||
int32 build_signals;
|
||||
int32 build_bridge;
|
||||
int32 build_train_depot;
|
||||
int32 build_road_depot;
|
||||
int32 build_ship_depot;
|
||||
int32 build_tunnel;
|
||||
int32 train_station_track;
|
||||
int32 train_station_length;
|
||||
int32 build_airport;
|
||||
int32 build_bus_station;
|
||||
int32 build_truck_station;
|
||||
int32 build_dock;
|
||||
int32 build_railvehicle;
|
||||
int32 build_railwagon;
|
||||
int32 aircraft_base;
|
||||
int32 roadveh_base;
|
||||
int32 ship_base;
|
||||
int32 build_trees;
|
||||
int32 terraform;
|
||||
int32 clear_1;
|
||||
int32 purchase_land;
|
||||
int32 clear_2;
|
||||
int32 clear_3;
|
||||
int32 remove_trees;
|
||||
int32 remove_rail;
|
||||
int32 remove_signals;
|
||||
int32 clear_bridge;
|
||||
int32 remove_train_depot;
|
||||
int32 remove_road_depot;
|
||||
int32 remove_ship_depot;
|
||||
int32 clear_tunnel;
|
||||
int32 clear_water;
|
||||
int32 remove_rail_station;
|
||||
int32 remove_airport;
|
||||
int32 remove_bus_station;
|
||||
int32 remove_truck_station;
|
||||
int32 remove_dock;
|
||||
int32 remove_house;
|
||||
int32 remove_road;
|
||||
int32 running_rail[3];
|
||||
int32 aircraft_running;
|
||||
int32 roadveh_running;
|
||||
int32 ship_running;
|
||||
int32 build_industry;
|
||||
Money station_value;
|
||||
Money build_rail;
|
||||
Money build_road;
|
||||
Money build_signals;
|
||||
Money build_bridge;
|
||||
Money build_train_depot;
|
||||
Money build_road_depot;
|
||||
Money build_ship_depot;
|
||||
Money build_tunnel;
|
||||
Money train_station_track;
|
||||
Money train_station_length;
|
||||
Money build_airport;
|
||||
Money build_bus_station;
|
||||
Money build_truck_station;
|
||||
Money build_dock;
|
||||
Money build_railvehicle;
|
||||
Money build_railwagon;
|
||||
Money aircraft_base;
|
||||
Money roadveh_base;
|
||||
Money ship_base;
|
||||
Money build_trees;
|
||||
Money terraform;
|
||||
Money clear_1;
|
||||
Money purchase_land;
|
||||
Money clear_2;
|
||||
Money clear_3;
|
||||
Money remove_trees;
|
||||
Money remove_rail;
|
||||
Money remove_signals;
|
||||
Money clear_bridge;
|
||||
Money remove_train_depot;
|
||||
Money remove_road_depot;
|
||||
Money remove_ship_depot;
|
||||
Money clear_tunnel;
|
||||
Money clear_water;
|
||||
Money remove_rail_station;
|
||||
Money remove_airport;
|
||||
Money remove_bus_station;
|
||||
Money remove_truck_station;
|
||||
Money remove_dock;
|
||||
Money remove_house;
|
||||
Money remove_road;
|
||||
Money running_rail[3];
|
||||
Money aircraft_running;
|
||||
Money roadveh_running;
|
||||
Money ship_running;
|
||||
Money build_industry;
|
||||
};
|
||||
|
||||
#define GAME_DIFFICULTY_NUM 18
|
||||
|
@ -365,7 +366,7 @@ struct ViewportSign {
|
|||
* a possible error message/state together.
|
||||
*/
|
||||
class CommandCost {
|
||||
int32 cost; ///< The cost of this action
|
||||
Money cost; ///< The cost of this action
|
||||
StringID message; ///< Warning message for when success is unset
|
||||
bool success; ///< Whether the comment went fine up to this moment
|
||||
|
||||
|
@ -384,7 +385,7 @@ public:
|
|||
* Creates a command return value with the given start cost
|
||||
* @param cst the initial cost of this command
|
||||
*/
|
||||
CommandCost(int32 cst) : cost(cst), message(INVALID_STRING_ID), success(true) {}
|
||||
CommandCost(Money cst) : cost(cst), message(INVALID_STRING_ID), success(true) {}
|
||||
/** "Hack" to make everything compile nicely, not needed when cost is int64 */
|
||||
CommandCost(uint cst) : cost(cst), message(INVALID_STRING_ID), success(true) {}
|
||||
|
||||
|
@ -401,7 +402,7 @@ public:
|
|||
* @param cost the cost to add
|
||||
* @return this class.
|
||||
*/
|
||||
CommandCost AddCost(int32 cost);
|
||||
CommandCost AddCost(Money cost);
|
||||
|
||||
/**
|
||||
* Multiplies the cost of the command by the given factor.
|
||||
|
@ -414,7 +415,7 @@ public:
|
|||
* The costs as made up to this moment
|
||||
* @return the costs
|
||||
*/
|
||||
int32 GetCost() const;
|
||||
Money GetCost() const;
|
||||
|
||||
/**
|
||||
* Sets the global error message *if* this class has one.
|
||||
|
|
10
src/player.h
10
src/player.h
|
@ -12,8 +12,8 @@
|
|||
#include "livery.h"
|
||||
|
||||
struct PlayerEconomyEntry {
|
||||
int32 income;
|
||||
int32 expenses;
|
||||
Money income;
|
||||
Money expenses;
|
||||
int32 delivered_cargo;
|
||||
int32 performance_history; ///< player score (scale 0-1000)
|
||||
int64 company_value;
|
||||
|
@ -166,8 +166,8 @@ struct Player {
|
|||
|
||||
PlayerFace face;
|
||||
|
||||
int32 current_loan;
|
||||
int64 player_money;
|
||||
Money current_loan;
|
||||
|
||||
byte player_color;
|
||||
Livery livery[LS_END];
|
||||
|
@ -190,7 +190,7 @@ struct Player {
|
|||
byte quarters_of_bankrupcy;
|
||||
byte bankrupt_asked; ///< which players were asked about buying it?
|
||||
int16 bankrupt_timeout;
|
||||
int32 bankrupt_value;
|
||||
Money bankrupt_value;
|
||||
|
||||
bool is_active;
|
||||
bool is_ai;
|
||||
|
@ -212,7 +212,7 @@ uint16 GetDrawStringPlayerColor(PlayerID player);
|
|||
|
||||
void ChangeOwnershipOfPlayerItems(PlayerID old_player, PlayerID new_player);
|
||||
void GetNameOfOwner(Owner owner, TileIndex tile);
|
||||
int64 CalculateCompanyValue(const Player* p);
|
||||
Money CalculateCompanyValue(const Player* p);
|
||||
void InvalidatePlayerWindows(const Player* p);
|
||||
void SetLocalPlayer(PlayerID new_player);
|
||||
#define FOR_ALL_PLAYERS(p) for (p = _players; p != endof(_players); p++)
|
||||
|
|
|
@ -188,22 +188,30 @@ bool CheckPlayerHasMoney(CommandCost cost)
|
|||
|
||||
static void SubtractMoneyFromAnyPlayer(Player *p, CommandCost cost)
|
||||
{
|
||||
p->player_money -= cost.GetCost();
|
||||
CommandCost tmp((int32)p->player_money);
|
||||
tmp.AddCost(-cost.GetCost());
|
||||
p->player_money = tmp.GetCost();
|
||||
|
||||
p->yearly_expenses[0][_yearly_expenses_type] += cost.GetCost();
|
||||
tmp = CommandCost((int32)p->yearly_expenses[0][_yearly_expenses_type]);
|
||||
tmp.AddCost(cost);
|
||||
p->yearly_expenses[0][_yearly_expenses_type] = tmp.GetCost();
|
||||
|
||||
if (HASBIT(1 << EXPENSES_TRAIN_INC |
|
||||
1 << EXPENSES_ROADVEH_INC |
|
||||
1 << EXPENSES_AIRCRAFT_INC |
|
||||
1 << EXPENSES_SHIP_INC, _yearly_expenses_type)) {
|
||||
p->cur_economy.income -= cost.GetCost();
|
||||
tmp = CommandCost(p->cur_economy.income);
|
||||
tmp.AddCost(-cost.GetCost());
|
||||
p->cur_economy.income = tmp.GetCost();
|
||||
} else if (HASBIT(1 << EXPENSES_TRAIN_RUN |
|
||||
1 << EXPENSES_ROADVEH_RUN |
|
||||
1 << EXPENSES_AIRCRAFT_RUN |
|
||||
1 << EXPENSES_SHIP_RUN |
|
||||
1 << EXPENSES_PROPERTY |
|
||||
1 << EXPENSES_LOAN_INT, _yearly_expenses_type)) {
|
||||
p->cur_economy.expenses -= cost.GetCost();
|
||||
tmp = CommandCost(p->cur_economy.expenses);
|
||||
tmp.AddCost(-cost.GetCost());
|
||||
p->cur_economy.expenses = tmp.GetCost();
|
||||
}
|
||||
|
||||
InvalidatePlayerWindows(p);
|
||||
|
@ -220,7 +228,7 @@ void SubtractMoneyFromPlayerFract(PlayerID player, CommandCost cst)
|
|||
{
|
||||
Player *p = GetPlayer(player);
|
||||
byte m = p->player_money_fraction;
|
||||
int32 cost = cst.GetCost();
|
||||
Money cost = cst.GetCost();
|
||||
|
||||
p->player_money_fraction = m - (byte)cost;
|
||||
cost >>= 8;
|
||||
|
|
|
@ -373,7 +373,7 @@ CommandCost CmdSellRoadVeh(TileIndex tile, uint32 flags, uint32 p1, uint32 p2)
|
|||
DeleteVehicle(v);
|
||||
}
|
||||
|
||||
return CommandCost(-(int32)v->value);
|
||||
return CommandCost(-v->value);
|
||||
}
|
||||
|
||||
struct RoadFindDepotData {
|
||||
|
|
|
@ -929,7 +929,7 @@ CommandCost CmdSellShip(TileIndex tile, uint32 flags, uint32 p1, uint32 p2)
|
|||
DeleteVehicle(v);
|
||||
}
|
||||
|
||||
return CommandCost(-(int32)v->value);
|
||||
return CommandCost(-v->value);
|
||||
}
|
||||
|
||||
/** Start/Stop a ship.
|
||||
|
|
|
@ -39,7 +39,7 @@ struct GoodsEntry {
|
|||
byte enroute_time;
|
||||
byte last_speed;
|
||||
byte last_age;
|
||||
int32 feeder_profit;
|
||||
Money feeder_profit;
|
||||
};
|
||||
|
||||
/** A Stop for a Road Vehicle */
|
||||
|
|
|
@ -3353,9 +3353,9 @@ static void CheckIfTrainNeedsService(Vehicle *v)
|
|||
InvalidateWindowWidget(WC_VEHICLE_VIEW, v->index, STATUS_BAR);
|
||||
}
|
||||
|
||||
int32 GetTrainRunningCost(const Vehicle *v)
|
||||
Money GetTrainRunningCost(const Vehicle *v)
|
||||
{
|
||||
int32 cost = 0;
|
||||
Money cost = 0;
|
||||
|
||||
do {
|
||||
const RailVehicleInfo *rvi = RailVehInfo(v->engine_type);
|
||||
|
|
|
@ -49,7 +49,7 @@ static CommandCost DestroyCompanyHQ(PlayerID pid, uint32 flags)
|
|||
}
|
||||
|
||||
/* cost of relocating company is 1% of company value */
|
||||
return CommandCost((int32)(CalculateCompanyValue(p) / 100));
|
||||
return CommandCost(CalculateCompanyValue(p) / 100);
|
||||
}
|
||||
|
||||
void UpdateCompanyHQ(Player *p, uint score)
|
||||
|
|
|
@ -312,11 +312,11 @@ struct Vehicle {
|
|||
uint16 cargo_paid_for; // How much of the cargo currently on board has been paid for.
|
||||
byte vehicle_flags; // Used for gradual loading and other miscellaneous things (@see VehicleFlags enum)
|
||||
|
||||
int32 profit_this_year;
|
||||
int32 profit_last_year;
|
||||
int32 cargo_feeder_share; ///< value of feeder pickup to be paid for on delivery of cargo
|
||||
Money profit_this_year;
|
||||
Money profit_last_year;
|
||||
Money cargo_feeder_share; ///< value of feeder pickup to be paid for on delivery of cargo
|
||||
TileIndex cargo_loaded_at_xy; ///< tile index where feeder cargo was loaded
|
||||
uint32 value;
|
||||
Money value;
|
||||
|
||||
GroupID group_id; ///< Index of group Pool array
|
||||
|
||||
|
@ -548,7 +548,7 @@ UnitID GetFreeUnitNumber(VehicleType type);
|
|||
|
||||
void TrainConsistChanged(Vehicle *v);
|
||||
void TrainPowerChanged(Vehicle *v);
|
||||
int32 GetTrainRunningCost(const Vehicle *v);
|
||||
Money GetTrainRunningCost(const Vehicle *v);
|
||||
|
||||
int CheckTrainStoppedInDepot(const Vehicle *v);
|
||||
|
||||
|
|
Loading…
Reference in New Issue