diff --git a/mods/ra/maps/allies-06a/allies06a-AI.lua b/mods/ra/maps/allies-06a/allies06a-AI.lua index d5a8c9f1a8..a0beba1ac6 100644 --- a/mods/ra/maps/allies-06a/allies06a-AI.lua +++ b/mods/ra/maps/allies-06a/allies06a-AI.lua @@ -107,6 +107,13 @@ ProduceVehicles = function() end ProduceNaval = function() + if not shouldProduce and #Utils.Where(Map.ActorsInWorld, function(self) return self.Owner == player and self.Type == "syrd" end) < 1 then + Trigger.AfterDelay(DateTime.Minutes(1), ProduceNaval) + return + end + + shouldProduce = true + if SubPen.IsDead or SubPen.Owner ~= ussr then return end diff --git a/mods/ra/maps/allies-06a/allies06a.lua b/mods/ra/maps/allies-06a/allies06a.lua index e73c0e93df..1f9ff8c66a 100644 --- a/mods/ra/maps/allies-06a/allies06a.lua +++ b/mods/ra/maps/allies-06a/allies06a.lua @@ -110,7 +110,6 @@ CaptureRadarDome = function() end) end -infiltrated = false InfiltrateTechCenter = function() Utils.Do(SovietTechLabs, function(a) Trigger.OnInfiltrated(a, function() @@ -127,9 +126,15 @@ InfiltrateTechCenter = function() end) Proxy.Destroy() end) + + Trigger.OnCapture(a, function() + if not infiltrated then + Media.DisplayMessage("Do not capture the tech centers! Infiltrate one with a spy.") + end + end) end) - Trigger.OnAllKilled(SovietTechLabs, function() + Trigger.OnAllKilledOrCaptured(SovietTechLabs, function() if not player.IsObjectiveCompleted(InfiltrateTechCenterObj) then player.MarkFailedObjective(InfiltrateTechCenterObj) end @@ -140,6 +145,9 @@ InfiltrateRef = function() Trigger.OnInfiltrated(Refinery, function() player.MarkCompletedObjective(InfiltrateRefObj) end) + Trigger.OnCapture(Refinery, function() + player.MarkCompletedObjective(InfiltrateRefObj) + end) Trigger.OnKilled(Refinery, function() if not player.IsObjectiveCompleted(InfiltrateRefObj) then player.MarkFailedObjective(InfiltrateRefObj) @@ -180,7 +188,7 @@ WorldLoaded = function() Media.PlaySpeechNotification(player, "MissionAccomplished") end) - InfiltrateTechCenterObj = player.AddPrimaryObjective("Infiltrate one of the Soviet tech centers.") + InfiltrateTechCenterObj = player.AddPrimaryObjective("Infiltrate one of the Soviet tech centers with a spy.") CaptureRadarDomeObj = player.AddSecondaryObjective("Capture the Radar Dome at the shore.") InfiltrateRefObj = player.AddSecondaryObjective("Infiltrate the Refinery for money.")