diff --git a/mods/ra/maps/survival01/map.yaml b/mods/ra/maps/survival01/map.yaml index aad84f5e78..de9d7e1d10 100644 --- a/mods/ra/maps/survival01/map.yaml +++ b/mods/ra/maps/survival01/map.yaml @@ -1252,6 +1252,10 @@ Rules: powerproxy.paratroopers: ParatroopersPower: DropItems: E1,E1,E1,E2,E2 + powerproxy.allied: + Inherits: powerproxy.paratroopers + ParatroopersPower: + DropItems: ARTY,ARTY,ARTY CAMERA.sam: Inherits: CAMERA RevealsShroud: @@ -1261,12 +1265,6 @@ Rules: RevealsShroud: Range: 1000 ARTY: - Parachutable: - KilledOnImpassableTerrain: false - WithParachute: - UpgradeTypes: parachute - UpgradeMinEnabledLevel: 1 - Image: parach UpgradeManager: BodyOrientation: AFLD.mission: diff --git a/mods/ra/maps/survival01/survival01.lua b/mods/ra/maps/survival01/survival01.lua index c962fd7291..e4229fcf47 100644 --- a/mods/ra/maps/survival01/survival01.lua +++ b/mods/ra/maps/survival01/survival01.lua @@ -28,7 +28,6 @@ else --Difficulty == "Hard" LongBowReinforcements = { "heli" } end -AlliedArtilleryParadrops = { "arty", "arty", "arty" } AlliedAirReinforcementsWaypoints = { { AirReinforcementsEntry1.Location, AirReinforcementsEntry2.Location }, @@ -279,21 +278,20 @@ TimerExpired = function() end end -DropAlliedArtillery = function(table) - local plane = Actor.Create("badr", true, { Owner = allies, Location = table[1] }) - Utils.Do(AlliedArtilleryParadrops, function(type) - local unit = Actor.Create(type, false, { Owner = allies }) - plane.LoadPassenger(unit) - end) - plane.Paradrop(table[2]) +DropAlliedArtillery = function(facing, dropzone) + local proxy = Actor.Create("powerproxy.allied", true, { Owner = allies }) + proxy.SendParatroopers(dropzone, false, facing) + proxy.Destroy() end SendLongBowReinforcements = function() Media.PlaySpeechNotification(allies, "AlliedReinforcementsArrived") Reinforcements.Reinforce(allies, LongBowReinforcements, AlliedAirReinforcementsWaypoints[1]) Reinforcements.Reinforce(allies, LongBowReinforcements, AlliedAirReinforcementsWaypoints[2]) + if ParadropArtillery then - DropAlliedArtillery({ Utils.Random(AlliedAirReinforcementsWaypoints)[1], Alliesbase.Location }) + local facing = Utils.RandomInteger(Facing.NorthWest, Facing.SouthWest) + DropAlliedArtillery(facing, Alliesbase.CenterPosition) end end