From d73ed7670aa203f798a3dec0ef7cede1e59a2b47 Mon Sep 17 00:00:00 2001 From: Paul Chote Date: Thu, 27 Feb 2020 21:18:43 +0000 Subject: [PATCH] Port missions to the new Paratroopers API. --- mods/ra/maps/allies-03a/allies03a.lua | 17 ++++++++----- mods/ra/maps/allies-03b/allies03b.lua | 8 ++++--- mods/ra/maps/allies-04/allies04.lua | 8 ++++--- mods/ra/maps/allies-06a/allies06a.lua | 2 +- mods/ra/maps/allies-07/allies07-AI.lua | 8 ++++--- mods/ra/maps/allies-08a/allies08a-AI.lua | 9 +++---- mods/ra/maps/allies-08b/allies08b-AI.lua | 8 ++++--- .../maps/desert-shellmap/desert-shellmap.lua | 8 ++++--- mods/ra/maps/evacuation/evacuation.lua | 24 ++++++++++++------- mods/ra/maps/exodus/exodus.lua | 2 +- mods/ra/maps/fort-lonestar/fort-lonestar.lua | 18 +++++++++----- mods/ra/maps/intervention/intervention.lua | 19 +++++++++------ mods/ra/maps/soviet-02a/soviet02a.lua | 4 ++-- mods/ra/maps/soviet-02b/soviet02b.lua | 6 ++--- mods/ra/maps/soviet-03/soviet03.lua | 2 +- .../soviet05-reinforcements_teams.lua | 4 ++-- mods/ra/maps/soviet-08a/soviet08a.lua | 2 +- .../scu35ea.lua | 24 +++++++++++-------- mods/ra/maps/survival01/survival01.lua | 21 +++++++++------- mods/ra/maps/survival02/survival02.lua | 8 +++++-- mods/ra/maps/top-o-the-world/scu36ea.lua | 17 +++++++++---- 21 files changed, 138 insertions(+), 81 deletions(-) diff --git a/mods/ra/maps/allies-03a/allies03a.lua b/mods/ra/maps/allies-03a/allies03a.lua index 611c4b9fc5..03190ac86d 100644 --- a/mods/ra/maps/allies-03a/allies03a.lua +++ b/mods/ra/maps/allies-03a/allies03a.lua @@ -72,14 +72,19 @@ end SendUSSRParadrops = function() local powerproxy = Actor.Create("powerproxy.paratroopers", false, { Owner = ussr }) - local unitsA = powerproxy.SendParatroopers(ParadropLZ.CenterPosition, false, 128 + 32) - local unitsB = powerproxy.SendParatroopers(ParadropLZ.CenterPosition, false, 128 - 32) - Utils.Do(unitsA, function(unit) - IdleHunt(unit) + local aircraftA = powerproxy.ActivateParatroopers(ParadropLZ.CenterPosition, 128 + 32) + Utils.Do(aircraftA, function(a) + Trigger.OnPassengerExited(a, function(t, p) + IdleHunt(p) + end) end) - Utils.Do(unitsB, function(unit) - IdleHunt(unit) + + local aircraftB = powerproxy.ActivateParatroopers(ParadropLZ.CenterPosition, 128 - 32) + Utils.Do(aircraftB, function(a) + Trigger.OnPassengerExited(a, function(t, p) + IdleHunt(p) + end) end) powerproxy.Destroy() diff --git a/mods/ra/maps/allies-03b/allies03b.lua b/mods/ra/maps/allies-03b/allies03b.lua index 373f977f35..439db1e9b6 100644 --- a/mods/ra/maps/allies-03b/allies03b.lua +++ b/mods/ra/maps/allies-03b/allies03b.lua @@ -95,9 +95,11 @@ end SendUSSRParadrops = function(facing, dropzone) local paraproxy = Actor.Create("powerproxy.paratroopers", false, { Owner = ussr }) - local units = paraproxy.SendParatroopers(dropzone.CenterPosition, false, facing) - Utils.Do(units, function(unit) - IdleHunt(unit) + local aircraft = paraproxy.ActivateParatroopers(dropzone.CenterPosition, facing) + Utils.Do(aircraft, function(a) + Trigger.OnPassengerExited(a, function(t, p) + IdleHunt(p) + end) end) paraproxy.Destroy() diff --git a/mods/ra/maps/allies-04/allies04.lua b/mods/ra/maps/allies-04/allies04.lua index 15fa105ed5..a58a929ae8 100644 --- a/mods/ra/maps/allies-04/allies04.lua +++ b/mods/ra/maps/allies-04/allies04.lua @@ -57,9 +57,11 @@ ParadropLZs = { ParadropPoint1.CenterPosition, ParadropPoint2.CenterPosition, Pa Paradropped = 0 Paradrop = function() Trigger.AfterDelay(Utils.RandomInteger(ParadropDelay[1], ParadropDelay[2]), function() - local units = PowerProxy.SendParatroopers(Utils.Random(ParadropLZs)) - Utils.Do(units, function(unit) - Trigger.OnAddedToWorld(unit, IdleHunt) + local aircraft = PowerProxy.ActivateParatroopers(Utils.Random(ParadropLZs)) + Utils.Do(aircraft, function(a) + Trigger.OnPassengerExited(a, function(t, p) + IdleHunt(p) + end) end) Paradropped = Paradropped + 1 diff --git a/mods/ra/maps/allies-06a/allies06a.lua b/mods/ra/maps/allies-06a/allies06a.lua index 0376b7b9b6..7df15d793a 100644 --- a/mods/ra/maps/allies-06a/allies06a.lua +++ b/mods/ra/maps/allies-06a/allies06a.lua @@ -143,7 +143,7 @@ InfiltrateTechCenter = function() local Proxy = Actor.Create("powerproxy.paratroopers", false, { Owner = ussr }) Utils.Do(ParadropWaypoints[Map.LobbyOption("difficulty")], function(waypoint) - Proxy.SendParatroopers(waypoint.CenterPosition, false, Facing.South) + Proxy.ActivateParatroopers(waypoint.CenterPosition, Facing.South) end) Proxy.Destroy() end) diff --git a/mods/ra/maps/allies-07/allies07-AI.lua b/mods/ra/maps/allies-07/allies07-AI.lua index 625c997787..633dbcf2af 100644 --- a/mods/ra/maps/allies-07/allies07-AI.lua +++ b/mods/ra/maps/allies-07/allies07-AI.lua @@ -37,9 +37,11 @@ Paradropped = 0 Paradrop = function() Trigger.AfterDelay(Utils.RandomInteger(ParadropDelay[1], ParadropDelay[2]), function() - local units = PowerProxy.SendParatroopers(Utils.Random(ParadropLZs)) - Utils.Do(units, function(unit) - Trigger.OnAddedToWorld(unit, IdleHunt) + local aircraft = PowerProxy.ActivateParatroopers(Utils.Random(ParadropLZs)) + Utils.Do(aircraft, function(a) + Trigger.OnPassengerExited(a, function(t, p) + IdleHunt(p) + end) end) Paradropped = Paradropped + 1 diff --git a/mods/ra/maps/allies-08a/allies08a-AI.lua b/mods/ra/maps/allies-08a/allies08a-AI.lua index 31760fe27c..4221de2dec 100644 --- a/mods/ra/maps/allies-08a/allies08a-AI.lua +++ b/mods/ra/maps/allies-08a/allies08a-AI.lua @@ -189,11 +189,12 @@ WTransWaves = function() end Paradrop = function() - local units = PowerProxy.SendParatroopers(Utils.Random(ParadropLZs)) - Utils.Do(units, function(unit) - Trigger.OnAddedToWorld(unit, IdleHunt) + local aircraft = PowerProxy.ActivateParatroopers(Utils.Random(ParadropLZs)) + Utils.Do(aircraft, function(a) + Trigger.OnPassengerExited(a, function(t, p) + IdleHunt(p) + end) end) - Trigger.AfterDelay(DateTime.Minutes(ParadropDelays), Paradrop) end diff --git a/mods/ra/maps/allies-08b/allies08b-AI.lua b/mods/ra/maps/allies-08b/allies08b-AI.lua index 1354ef83d8..880558caff 100644 --- a/mods/ra/maps/allies-08b/allies08b-AI.lua +++ b/mods/ra/maps/allies-08b/allies08b-AI.lua @@ -188,9 +188,11 @@ WTransWaves = function() end Paradrop = function() - local units = PowerProxy.SendParatroopers(Utils.Random(ParadropLZs)) - Utils.Do(units, function(unit) - Trigger.OnAddedToWorld(unit, IdleHunt) + local aircraft = PowerProxy.ActivateParatroopers(Utils.Random(ParadropLZs)) + Utils.Do(aircraft, function(a) + Trigger.OnPassengerExited(a, function(t, p) + IdleHunt(p) + end) end) Trigger.AfterDelay(DateTime.Minutes(ParadropDelays), Paradrop) diff --git a/mods/ra/maps/desert-shellmap/desert-shellmap.lua b/mods/ra/maps/desert-shellmap/desert-shellmap.lua index beaf8a3bc6..4d302b1ea5 100644 --- a/mods/ra/maps/desert-shellmap/desert-shellmap.lua +++ b/mods/ra/maps/desert-shellmap/desert-shellmap.lua @@ -119,10 +119,12 @@ end ParadropSovietUnits = function() local lz = Utils.Random(ParadropWaypoints) - local units = powerproxy.SendParatroopers(lz.CenterPosition) + local aircraft = powerproxy.ActivateParatroopers(lz.CenterPosition) - Utils.Do(units, function(a) - BindActorTriggers(a) + Utils.Do(aircraft, function(a) + Trigger.OnPassengerExited(a, function(t, p) + BindActorTriggers(p) + end) end) Trigger.AfterDelay(DateTime.Seconds(35), ParadropSovietUnits) diff --git a/mods/ra/maps/evacuation/evacuation.lua b/mods/ra/maps/evacuation/evacuation.lua index 0f062b9f02..9be6f24185 100644 --- a/mods/ra/maps/evacuation/evacuation.lua +++ b/mods/ra/maps/evacuation/evacuation.lua @@ -72,6 +72,14 @@ ReinforcementsDelay = DateTime.Minutes(16) ReinforcementsUnits = { "2tnk", "2tnk", "2tnk", "2tnk", "2tnk", "2tnk", "1tnk", "1tnk", "jeep", "e1", "e1", "e1", "e1", "e3", "e3", "mcv", "truk", "truk", "truk", "truk", "truk", "truk" } +IdleHunt = function(actor) + Trigger.OnIdle(actor, function(a) + if a.IsInWorld then + a.Hunt() + end + end) +end + SpawnAlliedReinforcements = function() if allies2.IsLocalPlayer then UserInterface.SetMissionText("") @@ -115,16 +123,16 @@ end SendParatroopers = function() Utils.Do(Paratroopers, function(para) local proxy = Actor.Create(para.proxy, false, { Owner = soviets }) - local units = proxy.SendParatroopersFrom(para.entry, para.drop) - proxy.Destroy() - - Utils.Do(units, function(unit) - Trigger.OnIdle(unit, function(a) - if a.IsInWorld then - a.Hunt() - end + local target = Map.CenterOfCell(para.drop) + local dir = target - Map.CenterOfCell(para.entry) + + local aircraft = proxy.ActivateParatroopers(target, dir.facing) + Utils.Do(aircraft, function(a) + Trigger.OnPassengerExited(a, function(t, p) + IdleHunt(p) end) end) + proxy.Destroy() end) end diff --git a/mods/ra/maps/exodus/exodus.lua b/mods/ra/maps/exodus/exodus.lua index cc4afc4ba4..02bb0f6d55 100644 --- a/mods/ra/maps/exodus/exodus.lua +++ b/mods/ra/maps/exodus/exodus.lua @@ -185,7 +185,7 @@ SendSovietParadrop = function() local lz = Map.CenterOfCell(randomParadropCell) local powerproxy = Actor.Create("powerproxy.paratroopers", false, { Owner = soviets }) - powerproxy.SendParatroopers(lz) + powerproxy.ActivateParatroopers(lz) powerproxy.Destroy() Trigger.AfterDelay(sovietParadropTicks, SendSovietParadrop) diff --git a/mods/ra/maps/fort-lonestar/fort-lonestar.lua b/mods/ra/maps/fort-lonestar/fort-lonestar.lua index 5c9c7a1cb0..e7c015e266 100644 --- a/mods/ra/maps/fort-lonestar/fort-lonestar.lua +++ b/mods/ra/maps/fort-lonestar/fort-lonestar.lua @@ -91,6 +91,14 @@ if Map.LobbyOption("difficulty") == "tough" or Map.LobbyOption("difficulty") == Waves[11] = { delay = 1500, units = { Vehicles, Infantry, Patrol, Patrol, Patrol, Infantry, LongRange, Tank, Boss, Infantry, Infantry, Patrol } } end +IdleHunt = function(actor) + Trigger.OnIdle(actor, function(a) + if a.IsInWorld then + a.Hunt() + end + end) +end + SendUnits = function(entryCell, unitTypes, targetCell, extraData) Reinforcements.Reinforce(soviets, unitTypes, { entryCell }, 40, function(a) if not a.HasProperty("AttackMove") then @@ -138,12 +146,10 @@ SendWave = function() if (Wave < #Waves) then if Utils.RandomInteger(1, 100) < ParaChance then - local units = ParaProxy.SendParatroopers(Utils.Random(ParadropWaypoints).CenterPosition) - Utils.Do(units, function(unit) - Trigger.OnIdle(unit, function(a) - if a.IsInWorld then - a.Hunt() - end + local aircraft = ParaProxy.ActivateParatroopers(Utils.Random(ParadropWaypoints).CenterPosition) + Utils.Do(aircraft, function(a) + Trigger.OnPassengerExited(a, function(t, p) + IdleHunt(p) end) end) diff --git a/mods/ra/maps/intervention/intervention.lua b/mods/ra/maps/intervention/intervention.lua index bd0504ead3..e45a27b65e 100644 --- a/mods/ra/maps/intervention/intervention.lua +++ b/mods/ra/maps/intervention/intervention.lua @@ -62,15 +62,20 @@ GroundPatrolUnits = { "3tnk", "3tnk" } } +IdleHunt = function(actor) + Trigger.OnIdle(actor, function(a) + if a.IsInWorld then + a.Hunt() + end + end) +end + ParadropSovietUnits = function() local powerproxy = Actor.Create("powerproxy.paratroopers", false, { Owner = soviets }) - local units = powerproxy.SendParatroopers(MCVDeployLocation.CenterPosition, false, 256 - 53) - - Utils.Do(units, function(a) - Trigger.OnIdle(a, function(actor) - if actor.IsInWorld then - actor.Hunt() - end + local aircraft = powerproxy.ActivateParatroopers(MCVDeployLocation.CenterPosition, 256 - 53) + Utils.Do(aircraft, function(a) + Trigger.OnPassengerExited(a, function(t, p) + IdleHunt(p) end) end) diff --git a/mods/ra/maps/soviet-02a/soviet02a.lua b/mods/ra/maps/soviet-02a/soviet02a.lua index 3df881494f..5097a82b2c 100644 --- a/mods/ra/maps/soviet-02a/soviet02a.lua +++ b/mods/ra/maps/soviet-02a/soviet02a.lua @@ -123,8 +123,8 @@ WorldLoaded = function() -- When destroying the allied radar dome or the refinery drop 2 badgers with 5 grenadiers each Trigger.OnAnyKilled({ AlliedDome, AlliedProc }, function() local powerproxy = Actor.Create("powerproxy.paratroopers", true, { Owner = player }) - powerproxy.SendParatroopers(ParadropLZ.CenterPosition, false, Facing.South) - powerproxy.SendParatroopers(ParadropLZ.CenterPosition, false, Facing.SouthEast) + powerproxy.ActivateParatroopers(ParadropLZ.CenterPosition, Facing.South) + powerproxy.ActivateParatroopers(ParadropLZ.CenterPosition, Facing.SouthEast) powerproxy.Destroy() end) end diff --git a/mods/ra/maps/soviet-02b/soviet02b.lua b/mods/ra/maps/soviet-02b/soviet02b.lua index f2aa71929b..9911887750 100644 --- a/mods/ra/maps/soviet-02b/soviet02b.lua +++ b/mods/ra/maps/soviet-02b/soviet02b.lua @@ -17,16 +17,16 @@ EnemyBaseEntranceShroudTrigger = { CPos.New(80, 73), CPos.New(81, 73), CPos.New( SendUSSRParadrops = function() paraproxy1 = Actor.Create("powerproxy.paratroopers", false, { Owner = player }) - paraproxy1.SendParatroopers(ParachuteBaseEntrance.CenterPosition, false, Facing.North) + paraproxy1.ActivateParatroopers(ParachuteBaseEntrance.CenterPosition, Facing.North) paraproxy1.Destroy() end SendUSSRParadropsBase = function() paraproxy2 = Actor.Create("powerproxy.paratroopers2", false, { Owner = player }) - paraproxy2.SendParatroopers(ParachuteBase1.CenterPosition, false, Facing.East) + paraproxy2.ActivateParatroopers(ParachuteBase1.CenterPosition, Facing.East) paraproxy2.Destroy() paraproxy3 = Actor.Create("powerproxy.paratroopers3", false, { Owner = player }) - paraproxy3.SendParatroopers(ParachuteBase2.CenterPosition, false, Facing.East) + paraproxy3.ActivateParatroopers(ParachuteBase2.CenterPosition, Facing.East) paraproxy3.Destroy() end diff --git a/mods/ra/maps/soviet-03/soviet03.lua b/mods/ra/maps/soviet-03/soviet03.lua index 8cb9b9d57d..2c4e8b5c96 100644 --- a/mods/ra/maps/soviet-03/soviet03.lua +++ b/mods/ra/maps/soviet-03/soviet03.lua @@ -96,7 +96,7 @@ end SendUSSRParadrops = function() paraproxy = Actor.Create("powerproxy.paratroopers", false, { Owner = player }) - paraproxy.SendParatroopers(ReinforcementDropOff.CenterPosition, false, 0) + paraproxy.ActivateParatroopers(ReinforcementDropOff.CenterPosition, 0) paraproxy.Destroy() end diff --git a/mods/ra/maps/soviet-05/soviet05-reinforcements_teams.lua b/mods/ra/maps/soviet-05/soviet05-reinforcements_teams.lua index f1dcc7fe55..80b96b86cd 100644 --- a/mods/ra/maps/soviet-05/soviet05-reinforcements_teams.lua +++ b/mods/ra/maps/soviet-05/soviet05-reinforcements_teams.lua @@ -46,13 +46,13 @@ TanksGGWaypoints = { PatrolPoint2, BetweenBasesPoint, PrepGGArmyPoint } Para = function() local powerproxy = Actor.Create("powerproxy.paratroopers", false, { Owner = player }) - local units = powerproxy.SendParatroopers(ParaPoint.CenterPosition, false, 28) + powerproxy.ActivateParatroopers(ParaPoint.CenterPosition, 28) powerproxy.Destroy() end Para2 = function() local powerproxy = Actor.Create("powerproxy.paratroopers", false, { Owner = player }) - local units = powerproxy.SendParatroopers(USSRExpansionPoint.CenterPosition, false, 28) + powerproxy.ActivateParatroopers(USSRExpansionPoint.CenterPosition, 28) powerproxy.Destroy() end diff --git a/mods/ra/maps/soviet-08a/soviet08a.lua b/mods/ra/maps/soviet-08a/soviet08a.lua index 359ab08aa9..b4927b076c 100644 --- a/mods/ra/maps/soviet-08a/soviet08a.lua +++ b/mods/ra/maps/soviet-08a/soviet08a.lua @@ -53,7 +53,7 @@ end AddParadropReinforcementTrigger = function() Trigger.AfterDelay(DateTime.Seconds(90), function() Media.PlaySpeechNotification(ussr, "ReinforcementsArrived") - scripteddrop.SendParatroopers(ScriptedParadrop.CenterPosition, false, 10) + scripteddrop.ActivateParatroopers(ScriptedParadrop.CenterPosition, 10) end) end diff --git a/mods/ra/maps/soviet-soldier-volkov-n-chitzkoi/scu35ea.lua b/mods/ra/maps/soviet-soldier-volkov-n-chitzkoi/scu35ea.lua index 40d7ac3894..3eeca93867 100644 --- a/mods/ra/maps/soviet-soldier-volkov-n-chitzkoi/scu35ea.lua +++ b/mods/ra/maps/soviet-soldier-volkov-n-chitzkoi/scu35ea.lua @@ -37,6 +37,14 @@ TanyaTrigger = { CPos.New(59, 43), CPos.New(60, 43), CPos.New(61, 43), CPos.New( GreeceHarvestersAreDead = false AlloyFacilityDestroyed = false +IdleHunt = function(actor) + Trigger.OnIdle(actor, function(a) + if a.IsInWorld then + a.Hunt() + end + end) +end + WorldLoaded = function() --Players Setup @@ -324,20 +332,16 @@ WorldLoaded = function() Trigger.OnEnteredFootprint(ParaTrigger, function(unit, id) if unit.Owner == player then local powerproxy = Actor.Create("powerproxy.pararifles", true, { Owner = greece }) - local paratroopers = powerproxy.SendParatroopers(waypoint89.CenterPosition, false, Facing.South) + local aircraft = powerproxy.ActivateParatroopers(waypoint89.CenterPosition, Facing.South) local prtcamera = Actor.Create("camera", true, { Owner = player, Location = waypoint89.Location }) + Utils.Do(aircraft, function(a) + Trigger.OnPassengerExited(a, function(t, p) + IdleHunt(p) + end) + end) Trigger.AfterDelay(DateTime.Seconds(10), function() if prtcamera.IsInWorld then prtcamera.Destroy() end end) - Utils.Do(paratroopers, function(unit) - if not unit.IsDead then - Trigger.OnIdle(unit, function(unit) - if unit.IsInWorld then - unit.Hunt() - end - end) - end - end) if Map.LobbyOption("difficulty") == "hard" and not RiflemanGuard01.IsDead then Trigger.ClearAll(RiflemanGuard01) ProduceInfantry() --Greece will start infantry production right away if the difficulty is set to hard diff --git a/mods/ra/maps/survival01/survival01.lua b/mods/ra/maps/survival01/survival01.lua index 0b56b1288e..357c02660c 100644 --- a/mods/ra/maps/survival01/survival01.lua +++ b/mods/ra/maps/survival01/survival01.lua @@ -182,14 +182,19 @@ FinishTimer = function() Trigger.AfterDelay(DateTime.Seconds(10), function() UserInterface.SetMissionText("") end) end -SendSovietParadrops = function(table) - local units = powerproxy.SendParatroopers(table[2].CenterPosition, false, table[1]) +IdleHunt = function(unit) + Trigger.OnIdle(unit, function(a) + if a.IsInWorld then + a.Hunt() + end + end) +end - Utils.Do(units, function(unit) - Trigger.OnIdle(unit, function(a) - if a.IsInWorld then - a.Hunt() - end +SendSovietParadrops = function(table) + local aircraft = powerproxy.ActivateParatroopers(table[2].CenterPosition, table[1]) + Utils.Do(aircraft, function(a) + Trigger.OnPassengerExited(a, function(t, p) + IdleHunt(p) end) end) end @@ -285,7 +290,7 @@ end DropAlliedArtillery = function(facing, dropzone) local proxy = Actor.Create("powerproxy.allied", true, { Owner = allies }) - proxy.SendParatroopers(dropzone, false, facing) + proxy.ActivateParatroopers(dropzone, facing) proxy.Destroy() end diff --git a/mods/ra/maps/survival02/survival02.lua b/mods/ra/maps/survival02/survival02.lua index c0bd84692b..74e1b24ae1 100644 --- a/mods/ra/maps/survival02/survival02.lua +++ b/mods/ra/maps/survival02/survival02.lua @@ -129,8 +129,12 @@ end SendSovietParadrops = function(table) local paraproxy = Actor.Create(table.type, false, { Owner = soviets }) - units = paraproxy.SendParatroopers(table.target.CenterPosition) - Utils.Do(units, function(unit) IdleHunt(unit) end) + local aircraft = paraproxy.ActivateParatroopers(table.target.CenterPosition) + Utils.Do(aircraft, function(a) + Trigger.OnPassengerExited(a, function(t, p) + IdleHunt(p) + end) + end) paraproxy.Destroy() end diff --git a/mods/ra/maps/top-o-the-world/scu36ea.lua b/mods/ra/maps/top-o-the-world/scu36ea.lua index 8bfeaca85d..e88855eba7 100644 --- a/mods/ra/maps/top-o-the-world/scu36ea.lua +++ b/mods/ra/maps/top-o-the-world/scu36ea.lua @@ -216,11 +216,20 @@ WorldLoaded = function() Trigger.AfterDelay(DateTime.Minutes(9), function() local powerproxy01 = Actor.Create("powerproxy.paratroopers", true, { Owner = greece }) - local paratroopers01 = powerproxy01.SendParatroopers(AlliedParadropLZ01.CenterPosition, false, Facing.SouthWest) + local aircraft01 = powerproxy01.ActivateParatroopers(AlliedParadropLZ01.CenterPosition, Facing.SouthWest) + Utils.Do(aircraft01, function(a) + Trigger.OnPassengerExited(a, function(t, p) + HuntObjectiveTruck(p) + end) + end) + local powerproxy02 = Actor.Create("powerproxy.paratroopers", true, { Owner = goodguy }) - local paratroopers02 = powerproxy02.SendParatroopers(AlliedParadropLZ02.CenterPosition, false, Facing.SouthWest) - Utils.Do(paratroopers01, HuntObjectiveTruck) - Utils.Do(paratroopers02, HuntObjectiveTruck) + local aircraft02 = powerproxy02.ActivateParatroopers(AlliedParadropLZ02.CenterPosition, Facing.SouthWest) + Utils.Do(aircraft02, function(a) + Trigger.OnPassengerExited(a, function(t, p) + HuntObjectiveTruck(p) + end) + end) end) Trigger.AfterDelay(0, function()