From 8290a798fc3d8f941e87e2c52183967d223034fc Mon Sep 17 00:00:00 2001 From: bjarni Date: Sat, 23 Feb 2008 22:23:06 +0000 Subject: [PATCH] (svn r12231) -Cleanup (r12230): [autoreplace] moved Vehicle::NeedsAutorenewing() and added comments --- src/autoreplace_cmd.cpp | 9 --------- src/vehicle.cpp | 18 ++++++++++++++++++ 2 files changed, 18 insertions(+), 9 deletions(-) diff --git a/src/autoreplace_cmd.cpp b/src/autoreplace_cmd.cpp index 90ff7fafe5..6f1b65cb2f 100644 --- a/src/autoreplace_cmd.cpp +++ b/src/autoreplace_cmd.cpp @@ -25,15 +25,6 @@ #include "table/strings.h" -bool Vehicle::NeedsAutorenewing(const Player *p) const -{ - assert(p == GetPlayer(this->owner)); - - if (!p->engine_renew) return false; - if (this->age - this->max_age < (p->engine_renew_months * 30)) return false; - - return true; -} /* * move the cargo from one engine to another if possible diff --git a/src/vehicle.cpp b/src/vehicle.cpp index 170a88ae21..e91f243a5a 100644 --- a/src/vehicle.cpp +++ b/src/vehicle.cpp @@ -93,6 +93,24 @@ const uint32 _send_to_depot_proc_table[] = { /* Initialize the vehicle-pool */ DEFINE_OLD_POOL_GENERIC(Vehicle, Vehicle) +/** Function to tell if a vehicle needs to be autorenewed + * @param *p The vehicle owner + * @return true if the vehicle is old enough for replacement + */ +bool Vehicle::NeedsAutorenewing(const Player *p) const +{ + /* We can always generate the Player pointer when we have the vehicle. + * However this takes time and since the Player pointer is often present + * when this function is called then it's faster to pass the pointer as an + * argument rather than finding it again. */ + assert(p == GetPlayer(this->owner)); + + if (!p->engine_renew) return false; + if (this->age - this->max_age < (p->engine_renew_months * 30)) return false; + + return true; +} + void VehicleServiceInDepot(Vehicle *v) { v->date_of_last_service = _date;