diff options
author | frosch <frosch@openttd.org> | 2009-05-31 12:03:14 +0000 |
---|---|---|
committer | frosch <frosch@openttd.org> | 2009-05-31 12:03:14 +0000 |
commit | 9853c0dc224e01cf3394336ab074cbb18592bd5b (patch) | |
tree | 8beff2dc7ba4f4426c471c831bbd7b62c0b8d0e6 /src/ship_cmd.cpp | |
parent | 56988b198d6657cda7a404d2f13c0d50ec3eed06 (diff) | |
download | openttd-9853c0dc224e01cf3394336ab074cbb18592bd5b.tar.xz |
(svn r16480) -Fix (r15617): Invalidate newgrf variable caches of more vehicles in more places. Esp. they were only invalidated for trains.
Diffstat (limited to 'src/ship_cmd.cpp')
-rw-r--r-- | src/ship_cmd.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/ship_cmd.cpp b/src/ship_cmd.cpp index 1ed7a0480..a5c8b9195 100644 --- a/src/ship_cmd.cpp +++ b/src/ship_cmd.cpp @@ -814,8 +814,12 @@ CommandCost CmdBuildShip(TileIndex tile, DoCommandFlag flags, uint32 p1, uint32 v->vehicle_flags = 0; if (e->flags & ENGINE_EXCLUSIVE_PREVIEW) SetBit(v->vehicle_flags, VF_BUILT_AS_PROTOTYPE); + v->InvalidateNewGRFCacheOfChain(); + v->cargo_cap = GetVehicleProperty(v, 0x0D, svi->capacity); + v->InvalidateNewGRFCacheOfChain(); + VehicleMove(v, false); InvalidateWindowData(WC_VEHICLE_DEPOT, v->tile); @@ -948,6 +952,7 @@ CommandCost CmdRefitShip(TileIndex tile, DoCommandFlag flags, uint32 p1, uint32 v->cargo_type = new_cid; v->cargo_subtype = new_subtype; v->colourmap = PAL_NONE; // invalidate vehicle colour map + v->InvalidateNewGRFCacheOfChain(); InvalidateWindow(WC_VEHICLE_DETAILS, v->index); InvalidateWindow(WC_VEHICLE_DEPOT, v->tile); InvalidateWindowClassesData(WC_SHIPS_LIST, 0); |