From 3ab5996729a2a2b9c595e919af0cfee3a4a8baba Mon Sep 17 00:00:00 2001 From: abcdefg30 Date: Mon, 19 Aug 2019 00:21:02 +0200 Subject: [PATCH] BindActorTriggers for APC passengers --- mods/ra/maps/desert-shellmap/desert-shellmap.lua | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/mods/ra/maps/desert-shellmap/desert-shellmap.lua b/mods/ra/maps/desert-shellmap/desert-shellmap.lua index f001a67bb9f2..08df29cd32bd 100644 --- a/mods/ra/maps/desert-shellmap/desert-shellmap.lua +++ b/mods/ra/maps/desert-shellmap/desert-shellmap.lua @@ -65,6 +65,19 @@ BindActorTriggers = function(a) Trigger.OnDamaged(a, function() if a.HasPassengers then a.Stop() + + -- HACK: UnloadPassengers does not return the unloaded passengers, but we need to bind the triggers + local actors = { } + while a.HasPassengers do + local unit = a.UnloadPassenger() + BindActorTriggers(unit) + actors[#actors + 1] = unit + end + + Utils.Do(actors, function(unit) + a.LoadPassenger(unit) + end) + a.UnloadPassengers() end end)