diff --git a/OpenRA.Mods.RA/Missions/Allies04Script.cs b/OpenRA.Mods.RA/Missions/Allies04Script.cs index 591dfa878d..9688cc442e 100644 --- a/OpenRA.Mods.RA/Missions/Allies04Script.cs +++ b/OpenRA.Mods.RA/Missions/Allies04Script.cs @@ -64,17 +64,13 @@ namespace OpenRA.Mods.RA.Missions Player neutral; World world; - Patrol[] patrols; + List patrols; CPos[] patrolPoints1; CPos[] patrolPoints2; CPos[] patrolPoints3; CPos[] patrolPoints4; CPos[] patrolPoints5; - CPos hind1EntryPoint; - PPos[] hind1Points; - CPos hind1ExitPoint; - Actor reinforcementsEntryPoint; Actor reinforcementsUnloadPoint; @@ -145,7 +141,10 @@ namespace OpenRA.Mods.RA.Missions if (world.FrameNumber == frameInfiltrated + 1500 * 6) foreach (var attacker in townAttackers.Where(a => !a.IsDead() && a.IsInWorld)) + { + attacker.CancelActivity(); attacker.QueueActivity(new AttackMove.AttackMoveActivity(attacker, new Move.Move(reinforcementsUnloadPoint.Location + new CVec(10, -15), 3))); + } } if (attackingTown) @@ -406,24 +405,19 @@ namespace OpenRA.Mods.RA.Missions }; lab = actors["Lab"]; lab.AddTrait(new Allies04InfiltrateAction(OnLabInfiltrated)); - hind1EntryPoint = actors["Hind1EntryPoint"].Location; - hind1Points = new[] - { - actors["Hind1Point1"].CenterLocation, - actors["Hind1Point2"].CenterLocation - }; - hind1ExitPoint = actors["Hind1ExitPoint"].Location; + reinforcementsEntryPoint = actors["ReinforcementsEntryPoint"]; reinforcementsUnloadPoint = actors["ReinforcementsUnloadPoint"]; - patrols = new[] + patrols = new List { new Patrol(world, new[] { "e1", "e1", "e1", "e1", "e1" }, soviets, patrolPoints1, 0), - new Patrol(world, new[] { "e1", "dog.patrol", "dog.patrol" }, soviets, patrolPoints2, 3), - new Patrol(world, new[] { "e1", "dog.patrol", "dog.patrol" }, soviets, patrolPoints3, 0), + new Patrol(world, new[] { "e1", "dog.patrol", "dog.patrol" }, soviets, patrolPoints2, 4), new Patrol(world, new[] { "e1", "dog.patrol", "dog.patrol" }, soviets, patrolPoints4, 0), new Patrol(world, new[] { "e1", "dog.patrol", "dog.patrol" }, soviets, patrolPoints5, 0), }; + if (difficulty == "Hard") + patrols.Add(new Patrol(world, new[] { "e1", "e1", "dog.patrol" }, soviets, patrolPoints3, 0)); bridgeTank = actors["BridgeTank"]; bridgeAttackPoint = actors["BridgeAttackPoint"]; diff --git a/mods/ra/maps/allies-04/map.yaml b/mods/ra/maps/allies-04/map.yaml index 28f30977e3..8ee4643255 100644 --- a/mods/ra/maps/allies-04/map.yaml +++ b/mods/ra/maps/allies-04/map.yaml @@ -1412,18 +1412,6 @@ Actors: BaseGuardTruckPos: waypoint Location: 64,36 Owner: Neutral - Hind1EntryPoint: waypoint - Location: 88,111 - Owner: Neutral - Hind1Point1: waypoint - Location: 67,91 - Owner: Neutral - Hind1Point2: waypoint - Location: 61,68 - Owner: Neutral - Hind1ExitPoint: waypoint - Location: 80,16 - Owner: Neutral Actor411: e2 Location: 73,53 Owner: Soviets @@ -1773,6 +1761,36 @@ Actors: Actor522: ss Location: 43,100 Owner: Soviets + Actor92: hosp + Location: 57,78 + Owner: Neutral + Actor523: v02 + Location: 56,87 + Owner: Neutral + Actor524: v03 + Location: 60,90 + Owner: Neutral + Actor525: c1 + Location: 55,90 + Owner: Neutral + Actor526: c9 + Location: 60,94 + Owner: Neutral + Actor527: v11 + Location: 59,94 + Owner: Neutral + Actor528: brl3 + Location: 60,95 + Owner: Neutral + Actor529: barl + Location: 59,95 + Owner: Neutral + Actor530: brl3 + Location: 58,94 + Owner: Neutral + Actor533: brl3 + Location: 54,88 + Owner: Neutral Smudges: