Added TUM.mizCleaner table

This commit is contained in:
Ambroise Garel 2025-07-25 12:20:47 +02:00
parent 205404e8cb
commit cfcb772c17
2 changed files with 56 additions and 0 deletions

View File

@ -87,6 +87,7 @@ do
if not TUM.playerCareer.onStartUp() then return nil end
if not TUM.intermission.onStartUp() then return nil end
if not TUM.airForce.onStartUp() then return nil end
if not TUM.mizCleaner.onStartUp() then return nil end -- Must be called after TUM.settings.onStartUp()
TUM.hasStarted = true

View File

@ -0,0 +1,55 @@
-- ====================================================================================
-- TUM.MIZCLEANER - REMOVED UNWANTED UNIT GROUPS FROM THE MIZ FILE
-- ====================================================================================
-- (local) removeAIWingmen()
-- TUM.mizCleaner.onStartUp()
-- ====================================================================================
TUM.mizCleaner = {}
do
-------------------------------------
-- Removes all AI wingmen units
-------------------------------------
local function removeAIWingmen()
local groups = DCSEx.envMission.getGroups(TUM.settings.getPlayerCoalition())
local aiWingMenToRemove = {}
for _,g in ipairs(groups) do
if g.units then
local isPlayerGroup = false
for _,u in ipairs(g.units) do
if u.skill == "Player" or u.skill == "Client" then
isPlayerGroup = true
end
end
if isPlayerGroup then
for _,u in ipairs(g.units) do
if u.skill ~= "Player" and u.skill ~= "Client" then
table.insert(aiWingMenToRemove, u.unitId)
end
end
end
end
end
if #aiWingMenToRemove > 0 then
for _,id in ipairs(aiWingMenToRemove) do
local u = DCSEx.world.getUnitByID(id)
if u then u:destroy() end
end
TUM.log("Removed "..tostring(#aiWingMenToRemove).." AI wingmen from the mission.\nPlease do not add AI wingmen to the mission, The Universal Mission uses its own wingman system.", TUM.logLevel.WARNING)
end
end
-------------------------------------
-- Called on mission start up
-- @return True if started up properly, false if an error happened
-------------------------------------
function TUM.mizCleaner.onStartUp()
removeAIWingmen()
return true
end
end