# HG changeset patch # User rubidium # Date 1282251510 0 # Node ID f3b72d36846c0410753f785dc8e2a214f011b5e8 # Parent 67b39929d6a258d61f5dc2c4bed138df38d486b2 (svn r20574) -Codechange: a little over 1 million vehicles should be enough for the forseeable future diff --git a/src/ai/api/ai_types.hpp b/src/ai/api/ai_types.hpp --- a/src/ai/api/ai_types.hpp +++ b/src/ai/api/ai_types.hpp @@ -97,7 +97,7 @@ typedef uint16 SubsidyID; ///< The ID of a subsidy. typedef uint32 TileIndex; ///< The ID of a tile (just named differently). typedef uint16 TownID; ///< The ID of a town. -typedef uint16 VehicleID; ///< The ID of a vehicle. +typedef uint32 VehicleID; ///< The ID of a vehicle. /* Types we defined ourself, as the OpenTTD core doesn't have them (yet) */ typedef uint AIErrorType; ///< The types of errors inside the NoAI framework. diff --git a/src/ai/api/ai_vehicle.hpp b/src/ai/api/ai_vehicle.hpp --- a/src/ai/api/ai_vehicle.hpp +++ b/src/ai/api/ai_vehicle.hpp @@ -97,7 +97,7 @@ VS_INVALID = 0xFF, ///< An invalid vehicle state. }; - static const VehicleID VEHICLE_INVALID = 0xFFFF; ///< Invalid VehicleID. + static const VehicleID VEHICLE_INVALID = 0xFFFFF; ///< Invalid VehicleID. /** * Checks whether the given vehicle is valid and owned by you. diff --git a/src/cargopacket.h b/src/cargopacket.h --- a/src/cargopacket.h +++ b/src/cargopacket.h @@ -23,8 +23,8 @@ typedef uint32 CargoPacketID; struct CargoPacket; -/** Type of the pool for cargo packets. */ -typedef Pool CargoPacketPool; +/** Type of the pool for cargo packets for a little over 16 million packets. */ +typedef Pool CargoPacketPool; /** The actual pool with cargo packets */ extern CargoPacketPool _cargopacket_pool; diff --git a/src/script/squirrel.hpp b/src/script/squirrel.hpp --- a/src/script/squirrel.hpp +++ b/src/script/squirrel.hpp @@ -89,6 +89,12 @@ * Adds a const to the stack. Depending on the current state this means * either a const to a class or to the global space. */ + void AddConst(const char *var_name, uint value) { this->AddConst(var_name, (int)value); } + + /** + * Adds a const to the stack. Depending on the current state this means + * either a const to a class or to the global space. + */ void AddConst(const char *var_name, bool value); /** @@ -126,6 +132,7 @@ void InsertResult(bool result); void InsertResult(int result); + void InsertResult(uint result) { this->InsertResult((int)result); } /** * Call a method of an instance, in various flavors. diff --git a/src/vehicle_base.h b/src/vehicle_base.h --- a/src/vehicle_base.h +++ b/src/vehicle_base.h @@ -53,7 +53,8 @@ uint32 cached_var43; ///< Cache for NewGRF var 43 }; -typedef Pool VehiclePool; +/** A vehicle pool for a little over 1 million vehicles. */ +typedef Pool VehiclePool; extern VehiclePool _vehicle_pool; /* Some declarations of functions, so we can make them friendly */ diff --git a/src/vehicle_type.h b/src/vehicle_type.h --- a/src/vehicle_type.h +++ b/src/vehicle_type.h @@ -14,7 +14,7 @@ #include "core/enum_type.hpp" -typedef uint16 VehicleID; +typedef uint32 VehicleID; /** Available vehicle types. */ enum VehicleType { @@ -45,7 +45,7 @@ VehicleTypeByte type; ///< Type of vehicle }; -static const VehicleID INVALID_VEHICLE = 0xFFFF; ///< Constant representing a non-existing vehicle. +static const VehicleID INVALID_VEHICLE = 0xFFFFF; ///< Constant representing a non-existing vehicle. /** Pathfinding option states */ enum VehiclePathFinders {