diff --git a/Moose Development/Moose/Ops/Airboss.lua b/Moose Development/Moose/Ops/Airboss.lua index ac1a451f4..54576db9b 100644 --- a/Moose Development/Moose/Ops/Airboss.lua +++ b/Moose Development/Moose/Ops/Airboss.lua @@ -1664,7 +1664,7 @@ AIRBOSS.MenuF10Root=nil --- Airboss class version. -- @field #string version -AIRBOSS.version="0.9.9.6" +AIRBOSS.version="0.9.9.7" ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -- TODO list @@ -5486,7 +5486,15 @@ function AIRBOSS:_GetNextMarshalFight() -- Check if conditions are right. if stack==1 and flight.holding~=nil and Tmarshal>=TmarshalMin then - return flight + if flight.ai then + -- Return AI flight. + return flight + else + -- Check for human player if they are already commencing. + if flight.step~=AIRBOSS.PatternStep.COMMENCING then + return flight + end + end end end @@ -5663,6 +5671,7 @@ function AIRBOSS:_ClearForLanding(flight) -- Cleared for Case X recovery. if flight.step~=AIRBOSS.PatternStep.COMMENCING then self:_MarshalCallClearedForRecovery(flight.onboard, flight.case) + flight.time=timer.getAbsTime() end -- Set step to commencing. This will trigger the zone check until the player is in the right place. @@ -8771,6 +8780,14 @@ function AIRBOSS:_Commencing(playerData, zonecheck) -- Skip the rest if not in the zone yet. if not inzone then + + -- Friendly reminder. + if timer.getAbsTime()-playerData.time>180 then + self:_MarshalCallClearedForRecovery(playerData.onboard, playerData.case) + playerData.time=timer.getAbsTime() + end + + -- Skip the rest. return end @@ -9136,6 +9153,9 @@ function AIRBOSS:_Break(playerData, part) close=0.5 end if X<0 and Z