diff --git a/src/level/robotmain.cpp b/src/level/robotmain.cpp index 615e1eee..f583ceda 100644 --- a/src/level/robotmain.cpp +++ b/src/level/robotmain.cpp @@ -3814,6 +3814,12 @@ void CRobotMain::CreateScene(bool soluce, bool fixScene, bool resetObject) m_build |= m_playerProfile->GetFreeGameBuildUnlock(); } + if (~m_researchDone[0] & RESEARCH_PHAZER && (m_levelCategory == LevelCategory::FreeGame || m_levelCategory == LevelCategory::GamePlus) && m_playerProfile->GetLevelPassed(LevelCategory::Missions, 9, 0)) + { + m_build |= BUILD_RESEARCH; + m_researchEnable |= RESEARCH_PHAZER; + } + m_researchEnable |= m_researchDone[0]; if (!resetObject)