diff --git a/CMakeLists.txt b/CMakeLists.txt
index 336498f..d01b8a5 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -52,6 +52,7 @@ add_executable(wxMASSManager WIN32
GUI/EvtNameChangeDialog.h
GUI/EvtNameChangeDialog.cpp
Maps/LastMissionId.h
+ Maps/StoryProgress.h
Mass/Mass.h
Mass/Mass.cpp
MassBuilderManager/MassBuilderManager.h
diff --git a/GUI/EvtMainFrame.cpp b/GUI/EvtMainFrame.cpp
index 87488f1..77edaf7 100644
--- a/GUI/EvtMainFrame.cpp
+++ b/GUI/EvtMainFrame.cpp
@@ -37,6 +37,7 @@
#include "EvtMainFrame.h"
#include "../Maps/LastMissionId.h"
+#include "../Maps/StoryProgress.h"
EvtMainFrame::EvtMainFrame(wxWindow* parent):
MainFrame(parent),
@@ -621,7 +622,7 @@ void EvtMainFrame::updateProfileStats() {
Profile* current_profile = _profileManager.currentProfile();
_companyName->SetLabel(current_profile->getCompanyName());
_credits->SetLabel(wxString::Format("%i", current_profile->getCredits()));
- _storyProgress->SetLabel(wxString::Format("%i", current_profile->getStoryProgress()));
+ _storyProgress->SetLabel(wxString::Format("%s", story_progress_map.find(current_profile->getStoryProgress()) != story_progress_map.end() ? story_progress_map.at(current_profile->storyProgress()) : std::to_string(current_profile->storyProgress())));
_lastMissionId->SetLabel(wxString::Format("%s", mission_id_map.find(current_profile->getLastMissionId()) != mission_id_map.end() ? mission_id_map.at(current_profile->lastMissionId()) : std::to_string(current_profile->lastMissionId())));
}
diff --git a/GUI/MainFrame.cpp b/GUI/MainFrame.cpp
index a8ca7f4..da17537 100644
--- a/GUI/MainFrame.cpp
+++ b/GUI/MainFrame.cpp
@@ -84,13 +84,13 @@ MainFrame::MainFrame( wxWindow* parent, wxWindowID id, const wxString& title, co
_storyProgressLabel = new wxStaticText( sbSizerGeneralInfo->GetStaticBox(), wxID_ANY, wxT("Story progress:"), wxDefaultPosition, wxDefaultSize, 0 );
_storyProgressLabel->Wrap( -1 );
- _storyProgressLabel->SetToolTip( wxT("What this value does or corresponds to is unknown at this point in time. It is only listed here for the sake of completion.") );
+ _storyProgressLabel->SetToolTip( wxT("The current point in the story.") );
fgSizerGeneralStats->Add( _storyProgressLabel, 0, wxALL, 5 );
_storyProgress = new wxStaticText( sbSizerGeneralInfo->GetStaticBox(), wxID_ANY, wxT("0"), wxDefaultPosition, wxDefaultSize, 0 );
_storyProgress->Wrap( -1 );
- _storyProgress->SetToolTip( wxT("What this value does or corresponds to is unknown at this point in time. It is only listed here for the sake of completion.") );
+ _storyProgress->SetToolTip( wxT("The current point in the story.") );
fgSizerGeneralStats->Add( _storyProgress, 0, wxALL|wxEXPAND, 5 );
diff --git a/GUI/MainFrame.fbp b/GUI/MainFrame.fbp
index e57c8f3..fb7671c 100644
--- a/GUI/MainFrame.fbp
+++ b/GUI/MainFrame.fbp
@@ -849,7 +849,7 @@
; ; forward_declare
0
- What this value does or corresponds to is unknown at this point in time. It is only listed here for the sake of completion.
+ The current point in the story.
@@ -910,7 +910,7 @@
; ; forward_declare
0
- What this value does or corresponds to is unknown at this point in time. It is only listed here for the sake of completion.
+ The current point in the story.
diff --git a/Maps/StoryProgress.h b/Maps/StoryProgress.h
new file mode 100644
index 0000000..1188ce1
--- /dev/null
+++ b/Maps/StoryProgress.h
@@ -0,0 +1,73 @@
+// wxMASSManager
+// Copyright (C) 2020 Guillaume Jacquemin
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with this program. If not, see .
+
+#pragma once
+
+#include
+
+#include