(svn r4659) - Backport from trunk (r4158):

Fix: [autoreplace] cost for refitting the new vehicle is now
  added to the cost animation. The player always paid for it, but
  it was not displayed until now
This commit is contained in:
Darkvater 2006-05-02 12:17:16 +00:00
parent c59beffe6b
commit 39ebb55b9b

View File

@ -1634,7 +1634,11 @@ static int32 ReplaceVehicle(Vehicle **w, byte flags)
/* refit if needed */
if (new_v->type != VEH_Road) { // road vehicles can't be refitted
if (old_v->cargo_type != new_v->cargo_type && old_v->cargo_cap != 0 && new_v->cargo_cap != 0) {// some train engines do not have cargo capacity
DoCommand(0, 0, new_v->index, old_v->cargo_type, DC_EXEC, CMD_REFIT_VEH(new_v->type));
// we add the refit cost to cost, so it's added to the cost animation
// it's not in the calculation of having enough money to actually do the replace since it's rather hard to do by design, but since
// we pay for it, it's nice to make the cost animation include it
int32 temp_cost = DoCommand(0, 0, new_v->index, old_v->cargo_type, DC_EXEC, CMD_REFIT_VEH(new_v->type));
if (!CmdFailed(temp_cost)) cost += temp_cost;
}
}