Skip to content
Permalink
Browse files

BLADERUNNER: Fix wrong order for GPS map selection

  • Loading branch information...
antoniou79 committed Nov 8, 2019
1 parent f74f8e3 commit 4af463476b1ded9dd94ee53d19dc071a2c4a4753
Showing with 15 additions and 6 deletions.
  1. +15 −6 engines/bladerunner/ui/spinner.cpp
@@ -105,15 +105,24 @@ int Spinner::chooseDestination(int loopId, bool immediately) {
_destinations = nullptr;
int spinnerLoopId = 4;

if (mapmask & 1) {
_destinations = getDestinationsNear();
spinnerLoopId = 0;
// mapmask determines which map version will be displayed
// Depending on which destinations are available, mapmaks will have value:
// 1: For the near view (first chapter locations, and animoid row for some reason)
// 3: For medium view locations (includes the near view ones)
// 7: For far view locations (includes all the previous ones)
// This values are determined in mapmaskv table
//
// Since the checks below use bitwise AND, we need to check in order
// from the "far" version to the "near" version
if (mapmask & 4) {
_destinations = getDestinationsFar();
spinnerLoopId = 4;
} else if (mapmask & 2) {
_destinations = getDestinationsMedium();
spinnerLoopId = 2;
} else if (mapmask & 4) {
_destinations = getDestinationsFar();
spinnerLoopId = 4;
} else if (mapmask & 1) {
_destinations = getDestinationsNear();
spinnerLoopId = 0;
} else {
return -1;
}

0 comments on commit 4af4634

Please sign in to comment.
You can’t perform that action at this time.