diff --git a/client/mapView/MapView.cpp b/client/mapView/MapView.cpp index a666e23fa..dd5e3d750 100644 --- a/client/mapView/MapView.cpp +++ b/client/mapView/MapView.cpp @@ -160,6 +160,7 @@ void MapView::onViewMapActivated() PuzzleMapView::PuzzleMapView(const Point & offset, const Point & dimensions, const int3 & tileToCenter) : BasicMapView(offset, dimensions) { - controller->setViewCenter(tileToCenter); controller->activatePuzzleMapContext(tileToCenter); + controller->setViewCenter(tileToCenter); + } diff --git a/client/mapView/MapViewController.cpp b/client/mapView/MapViewController.cpp index ced9e1d80..099ba4979 100644 --- a/client/mapView/MapViewController.cpp +++ b/client/mapView/MapViewController.cpp @@ -63,7 +63,7 @@ void MapViewController::setViewCenter(const Point & position, int level) model->setViewCenter(betterPosition); model->setLevel(vstd::clamp(level, 0, context->getMapSize().z)); - if(adventureInt) // may be called before adventureInt is initialized + if(adventureInt && !puzzleMapContext) // may be called before adventureInt is initialized adventureInt->onMapViewMoved(model->getTilesTotalRect(), model->getLevel()); }