summaryrefslogtreecommitdiffhomepage
path: root/StarsEx/MsnSelectDlg.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'StarsEx/MsnSelectDlg.cpp')
-rw-r--r--StarsEx/MsnSelectDlg.cpp42
1 files changed, 26 insertions, 16 deletions
diff --git a/StarsEx/MsnSelectDlg.cpp b/StarsEx/MsnSelectDlg.cpp
index 8c720c8..1f61d9a 100644
--- a/StarsEx/MsnSelectDlg.cpp
+++ b/StarsEx/MsnSelectDlg.cpp
@@ -12,25 +12,27 @@
*/
#include "MsnSelectDlg.h"
-#include "MsnEditDlg.h"
-#include "MsnEditNavDlg.h"
-#include "ConfirmDlg.h"
-#include "MenuScreen.h"
-#include "Starshatter.h"
-#include "Campaign.h"
-#include "Mission.h"
-#include "Game.h"
-#include "ContentBundle.h"
#include "Button.h"
+#include "Campaign.h"
+#include "Clock.h"
#include "ComboBox.h"
-#include "ListBox.h"
-#include "Slider.h"
-#include "Video.h"
+#include "ConfirmDlg.h"
+#include "ContentBundle.h"
+#include "FormatUtil.h"
+#include "Game.h"
#include "Keyboard.h"
+#include "ListBox.h"
+#include "MenuScreen.h"
+#include "Mission.h"
#include "Mouse.h"
+#include "MsnEditDlg.h"
+#include "MsnEditNavDlg.h"
#include "ParseUtil.h"
-#include "FormatUtil.h"
+#include "Slider.h"
+#include "Stardate.h"
+#include "Starshatter.h"
+#include "Video.h"
// +--------------------------------------------------------------------+
// DECLARE MAPPING FUNCTIONS:
@@ -393,6 +395,9 @@ MsnSelectDlg::OnNew(AWEvent* event)
navdlg->SetMission(info->mission);
navdlg->SetMissionInfo(info);
}
+ starshatter::engine::SetOperationStart(info->mission->Stardate());
+ starshatter::engine::SetMissionStart(info->mission->Start());
+ Clock::GetInstance()->ResetGameTime();
}
void
@@ -418,6 +423,9 @@ MsnSelectDlg::OnEdit(AWEvent* event)
editor->SetMissionInfo(c->GetMissionInfo(mission_id));
editor->SetMission(m);
+ starshatter::engine::SetOperationStart(m->Stardate());
+ starshatter::engine::SetMissionStart(m->Start());
+ Clock::GetInstance()->ResetGameTime();
manager->ShowMsnEditDlg();
}
}
@@ -479,11 +487,13 @@ MsnSelectDlg::OnAccept(AWEvent* event)
{
if (selected_mission >= 0) {
Mouse::Show(false);
-
- int id = campaign->GetMissionList()[selected_mission]->id;
+ const auto id = campaign->GetMissionList()[selected_mission]->id;
campaign->SetMissionId(id);
campaign->ReloadMission(id);
-
+ const auto* mission = campaign->GetMission();
+ starshatter::engine::SetOperationStart(mission->Stardate());
+ starshatter::engine::SetMissionStart(mission->Start());
+ Clock::GetInstance()->ResetGameTime();
stars->SetGameMode(Game::PREP_MODE);
}
}