mirror of https://github.com/OpenTTD/OpenTTD.git
(svn r3248) - Codechange: Change interface of CanRefitTo() to supply the engine type directly instead of getting it from a vehicle. This allows the function to be used before vehicles are involved.
This commit is contained in:
parent
4191adb92c
commit
fde99748c0
|
@ -496,7 +496,7 @@ int32 CmdRefitAircraft(int x, int y, uint32 flags, uint32 p1, uint32 p2)
|
|||
avi = AircraftVehInfo(v->engine_type);
|
||||
|
||||
/* Check cargo */
|
||||
if (new_cid > NUM_CARGO || !CanRefitTo(v, new_cid)) return CMD_ERROR;
|
||||
if (new_cid > NUM_CARGO || !CanRefitTo(v->engine_type, new_cid)) return CMD_ERROR;
|
||||
|
||||
SET_EXPENSES_TYPE(EXPENSES_AIRCRAFT_RUN);
|
||||
|
||||
|
|
|
@ -1056,7 +1056,7 @@ int32 CmdRefitShip(int x, int y, uint32 flags, uint32 p1, uint32 p2)
|
|||
|
||||
/* Check cargo */
|
||||
if (!ShipVehInfo(v->engine_type)->refittable) return CMD_ERROR;
|
||||
if (new_cid > NUM_CARGO || !CanRefitTo(v, new_cid)) return CMD_ERROR;
|
||||
if (new_cid > NUM_CARGO || !CanRefitTo(v->engine_type, new_cid)) return CMD_ERROR;
|
||||
|
||||
SET_EXPENSES_TYPE(EXPENSES_SHIP_RUN);
|
||||
|
||||
|
|
|
@ -1717,7 +1717,7 @@ int32 CmdRefitRailVehicle(int x, int y, uint32 flags, uint32 p1, uint32 p2)
|
|||
/* XXX: We also refit all the attached wagons en-masse if they
|
||||
* can be refitted. This is how TTDPatch does it. TODO: Have
|
||||
* some nice [Refit] button near each wagon. --pasky */
|
||||
if (!CanRefitTo(v, new_cid)) continue;
|
||||
if (!CanRefitTo(v->engine_type, new_cid)) continue;
|
||||
|
||||
if (v->cargo_cap != 0) {
|
||||
const RailVehicleInfo *rvi = RailVehInfo(v->engine_type);
|
||||
|
|
|
@ -680,15 +680,15 @@ bool CanFillVehicle(Vehicle *v)
|
|||
return false;
|
||||
}
|
||||
|
||||
/** Check if a given vehicle (type) can be refitted to a given cargo
|
||||
* @param *v vehicle to check
|
||||
/** Check if a given engine type can be refitted to a given cargo
|
||||
* @param engine_type Engine type to check
|
||||
* @param cid_to check refit to this cargo-type
|
||||
* @return true if it is possible, false otherwise
|
||||
*/
|
||||
bool CanRefitTo(const Vehicle *v, CargoID cid_to)
|
||||
bool CanRefitTo(EngineID engine_type, CargoID cid_to)
|
||||
{
|
||||
CargoID cid = _global_cargo_id[_opt_ptr->landscape][cid_to];
|
||||
return HASBIT(_engine_info[v->engine_type].refit_mask, cid) != 0;
|
||||
return HASBIT(_engine_info[engine_type].refit_mask, cid) != 0;
|
||||
}
|
||||
|
||||
static void DoDrawVehicle(const Vehicle *v)
|
||||
|
|
|
@ -273,7 +273,7 @@ Vehicle *FindVehicleOnTileZ(TileIndex tile, byte z);
|
|||
void InitializeTrains(void);
|
||||
|
||||
bool CanFillVehicle(Vehicle *v);
|
||||
bool CanRefitTo(const Vehicle *v, CargoID cid_to);
|
||||
bool CanRefitTo(EngineID engine_type, CargoID cid_to);
|
||||
|
||||
void ViewportAddVehicles(DrawPixelInfo *dpi);
|
||||
|
||||
|
|
Loading…
Reference in New Issue