(svn 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
authorbjarni
Wed, 29 Mar 2006 20:41:15 +0000
changeset 3363 7358eaff0d70
parent 3362 5fc13da0a8fd
child 3364 5966447c5f69
(svn 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
vehicle.c
--- a/vehicle.c	Wed Mar 29 20:35:39 2006 +0000
+++ b/vehicle.c	Wed Mar 29 20:41:15 2006 +0000
@@ -1638,7 +1638,11 @@
 		/* 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;
 			}
 		}