anchor.diff:      procedure BackClick(Sender: TObject);
       procedure Scroll_Toggle(Sender: TObject);
   
  +    procedure SelectMap(aMapIndex: Byte);
       procedure Campaign_SelectMap(Sender: TObject);
       procedure UpdateDifficultyLevel;
       procedure StartClick(Sender: TObject);
  
positive.code: end;
  
  
  procedure TKMMenuCampaign.Campaign_SelectMap(Sender: TObject);
  var
    I: Integer;
    Color: Cardinal;
  begin
    if TKMControl(Sender).Tag > fCampaign.UnlockedMap then exit; //Skip closed maps
  
    fMapIndex := TKMControl(Sender).Tag;
  
    UpdateDifficultyLevel;
    
    // Place highlight
    for I := 0 to High(Image_CampaignFlags) do
    begin
      Image_CampaignFlags[I].Highlight := (fMapIndex = I);
      Color := icLightGray2;
      if I < fCampaign.MapCount then
        Color := DIFFICULTY_LEVELS_COLOR[fCampaign.MapsProgressData[I].BestCompleteDifficulty];
      Label_CampaignFlags[I].FontColor := Color;
    end;
  
    //Connect by sub-nodes
  
negative.code:     gVideoPlayer.SetCallback(PlayBriefingAudioTrack); // Start briefing audio after logo and intro videos
      gVideoPlayer.Play;
    end;
  
    // Start briefing audio immidiately, if video was not started (disabled / no video file etc)
    if not gVideoPlayer.IsActive then
      PlayBriefingAudioTrack;
  end;
  
  procedure TKMMenuCampaign.BackClick(Sender: TObject);
  