mirror of https://github.com/OpenTTD/OpenTTD.git
(svn r14903) -Fix: First create all articulated parts of roadvehicles, then call callback 36 capacity, also call it for all articulated parts.
This commit is contained in:
parent
cf1e926e37
commit
aedc0c1302
|
@ -277,7 +277,7 @@ void AddArticulatedParts(Vehicle **vl, VehicleType type)
|
|||
|
||||
u->spritenum = rvi_artic->image_index;
|
||||
u->cargo_type = rvi_artic->cargo_type;
|
||||
u->cargo_cap = rvi_artic->capacity;
|
||||
u->cargo_cap = rvi_artic->capacity; // Callback 36 is called when the consist is finished
|
||||
|
||||
SetArticulatedPart(u);
|
||||
} break;
|
||||
|
@ -296,7 +296,7 @@ void AddArticulatedParts(Vehicle **vl, VehicleType type)
|
|||
|
||||
u->spritenum = rvi_artic->image_index;
|
||||
u->cargo_type = rvi_artic->cargo_type;
|
||||
u->cargo_cap = rvi_artic->capacity;
|
||||
u->cargo_cap = rvi_artic->capacity; // Callback 36 is called when the consist is finished
|
||||
|
||||
SetRoadVehArticPart(u);
|
||||
} break;
|
||||
|
|
|
@ -274,10 +274,15 @@ CommandCost CmdBuildRoadVeh(TileIndex tile, uint32 flags, uint32 p1, uint32 p2,
|
|||
v->vehicle_flags = 0;
|
||||
if (e->flags & ENGINE_EXCLUSIVE_PREVIEW) SetBit(v->vehicle_flags, VF_BUILT_AS_PROTOTYPE);
|
||||
|
||||
v->cargo_cap = GetVehicleProperty(v, 0x0F, rvi->capacity);
|
||||
v->cargo_cap = rvi->capacity;
|
||||
|
||||
AddArticulatedParts(vl, VEH_ROAD);
|
||||
|
||||
/* Call callback 36s after the whole consist has been constructed */
|
||||
for (Vehicle *u = v; u != NULL; u = u->Next()) {
|
||||
u->cargo_cap = GetVehicleProperty(u, 0x0F, u->cargo_cap);
|
||||
}
|
||||
|
||||
VehiclePositionChanged(v);
|
||||
|
||||
InvalidateWindowData(WC_VEHICLE_DEPOT, v->tile);
|
||||
|
|
Loading…
Reference in New Issue