summaryrefslogtreecommitdiff
path: root/src/aircraft_cmd.cpp
diff options
context:
space:
mode:
authorfrosch <frosch@openttd.org>2009-08-08 18:45:12 +0000
committerfrosch <frosch@openttd.org>2009-08-08 18:45:12 +0000
commitefcaefd178410c303ae17db17200c300e4379298 (patch)
tree1c48cba6fda8b05d4663d3164ef58d008ca7ca95 /src/aircraft_cmd.cpp
parent87014fec05a845cc9eab22ac33b2d7e7440b0dcc (diff)
downloadopenttd-efcaefd178410c303ae17db17200c300e4379298.tar.xz
(svn r17121) -Fix [FS#3060]: Update vehicle position cache when the vehicle sprite changes.
Diffstat (limited to 'src/aircraft_cmd.cpp')
-rw-r--r--src/aircraft_cmd.cpp7
1 files changed, 2 insertions, 5 deletions
diff --git a/src/aircraft_cmd.cpp b/src/aircraft_cmd.cpp
index 87f462fd0..9581f45c6 100644
--- a/src/aircraft_cmd.cpp
+++ b/src/aircraft_cmd.cpp
@@ -687,11 +687,9 @@ void SetAircraftPosition(Aircraft *v, int x, int y, int z)
v->y_pos = y;
v->z_pos = z;
- v->cur_image = v->GetImage(v->direction);
+ v->UpdateViewport(true, false);
if (v->subtype == AIR_HELICOPTER) v->Next()->Next()->cur_image = GetRotorImage(v);
- VehicleMove(v, true);
-
Aircraft *u = v->Next();
int safe_x = Clamp(x, 0, MapMaxX() * TILE_SIZE);
@@ -1278,9 +1276,8 @@ TileIndex Aircraft::GetOrderStationLocation(StationID station)
void Aircraft::MarkDirty()
{
- this->cur_image = this->GetImage(this->direction);
+ this->UpdateViewport(false, false);
if (this->subtype == AIR_HELICOPTER) this->Next()->Next()->cur_image = GetRotorImage(this);
- MarkSingleVehicleDirty(this);
}
static void CrashAirplane(Aircraft *v)