File diff r6951:4f69e3e27c06 → r6952:db104ead2672
src/players.cpp
Show inline comments
 
@@ -188,8 +188,7 @@ bool CheckPlayerHasMoney(CommandCost cos
 

	
 
static void SubtractMoneyFromAnyPlayer(Player *p, CommandCost cost)
 
{
 
	p->money64 -= cost.GetCost();
 
	UpdatePlayerMoney32(p);
 
	p->player_money -= cost.GetCost();
 

	
 
	p->yearly_expenses[0][_yearly_expenses_type] += cost.GetCost();
 

	
 
@@ -229,18 +228,6 @@ void SubtractMoneyFromPlayerFract(Player
 
	if (cost != 0) SubtractMoneyFromAnyPlayer(p, CommandCost(cost));
 
}
 

	
 
/** the player_money field is kept as it is, but money64 contains the actual amount of money. */
 
void UpdatePlayerMoney32(Player *p)
 
{
 
	if (p->money64 < -2000000000) {
 
		p->player_money = -2000000000;
 
	} else if (p->money64 > 2000000000) {
 
		p->player_money = 2000000000;
 
	} else {
 
		p->player_money = (int32)p->money64;
 
	}
 
}
 

	
 
void GetNameOfOwner(Owner owner, TileIndex tile)
 
{
 
	SetDParam(2, owner);
 
@@ -474,7 +461,7 @@ Player *DoStartupNewPlayer(bool is_ai)
 
	p->name_1 = STR_SV_UNNAMED;
 
	p->is_active = true;
 

	
 
	p->money64 = p->player_money = p->current_loan = 100000;
 
	p->player_money = p->current_loan = 100000;
 

	
 
	p->is_ai = is_ai;
 
	p->ai.state = 5; // AIS_WANT_NEW_ROUTE
 
@@ -1135,8 +1122,8 @@ static const SaveLoad _player_desc[] = {
 
	    SLE_VAR(Player, face,            SLE_UINT32),
 

	
 
	/* money was changed to a 64 bit field in savegame version 1. */
 
	SLE_CONDVAR(Player, money64,               SLE_VAR_I64 | SLE_FILE_I32, 0, 0),
 
	SLE_CONDVAR(Player, money64,               SLE_INT64, 1, SL_MAX_VERSION),
 
	SLE_CONDVAR(Player, player_money,          SLE_VAR_I64 | SLE_FILE_I32, 0, 0),
 
	SLE_CONDVAR(Player, player_money,          SLE_INT64, 1, SL_MAX_VERSION),
 

	
 
	    SLE_VAR(Player, current_loan,          SLE_INT32),
 

	
 
@@ -1318,7 +1305,6 @@ static void Load_PLYR()
 
		Player *p = GetPlayer((PlayerID)index);
 
		SaveLoad_PLYR(p);
 
		_player_colors[index] = p->player_color;
 
		UpdatePlayerMoney32(p);
 

	
 
		/* This is needed so an AI is attached to a loaded AI */
 
		if (p->is_ai && (!_networking || _network_server) && _ai.enabled)