# HG changeset patch # User yexo # Date 2010-01-05 14:26:15 # Node ID 37285dcc663e92260ff0c64ea0fdf9219ba8c3a7 # Parent 7131221379436b86e11290a1bf0133e9e3fa6283 (svn r18730) -Fix [FS#3414]: new viewports didn't center on the correct position diff --git a/src/viewport_gui.cpp b/src/viewport_gui.cpp --- a/src/viewport_gui.cpp +++ b/src/viewport_gui.cpp @@ -74,14 +74,14 @@ public: const Window *w = FindWindowById(WC_MAIN_WINDOW, 0); /* center on same place as main window (zoom is maximum, no adjustment needed) */ - pt.x = w->viewport->scrollpos_x + w->viewport->virtual_height / 2; + pt.x = w->viewport->scrollpos_x + w->viewport->virtual_width / 2; pt.y = w->viewport->scrollpos_y + w->viewport->virtual_height / 2; } else { pt = RemapCoords(TileX(tile) * TILE_SIZE + TILE_SIZE / 2, TileY(tile) * TILE_SIZE + TILE_SIZE / 2, TileHeight(tile)); } - this->viewport->scrollpos_x = pt.x - (nvp->pos_x - ((nvp->current_x - 1) / 2)); - this->viewport->scrollpos_y = pt.y - (nvp->pos_y - ((nvp->current_y - 1) / 2)); + this->viewport->scrollpos_x = pt.x - this->viewport->virtual_width / 2; + this->viewport->scrollpos_y = pt.y - this->viewport->virtual_height / 2; this->viewport->dest_scrollpos_x = this->viewport->scrollpos_x; this->viewport->dest_scrollpos_y = this->viewport->scrollpos_y; }