-- ***************************************************************************** -- ** SAMS ** -- ********************************************************* SamsArray = {} compteur = 0 mainRadioMenuForSamsBlue = MENU_COALITION:New( coalition.side.BLUE , "SAMs" ) mainRadioMenuForSamsRed = MENU_COALITION:New( coalition.side.RED , "SAMs" ) for index, samconfig in ipairs(SamsConfig) do if samconfig.enable == true then compteur = compteur + 1 env.info('creation Sam site : '.. samconfig.name..'...') SamsArray[compteur] = { customconfig = samconfig, RangeRootMenu = {}, SubRangeMenus = {}, } if (samconfig.benefit_coalition == coalition.side.BLUE) then SamsArray[compteur].RangeRootMenu = MENU_COALITION:New( coalition.side.BLUE, samconfig.name , mainRadioMenuForSamsBlue) local radioMenuForRange = SamsArray[compteur].RangeRootMenu for indexsubRange, subRangeConfig in ipairs(samconfig.subRange) do SamsArray[compteur].SubRangeMenus[indexsubRange] = MENU_COALITION:New(samconfig.benefit_coalition, subRangeConfig.name, radioMenuForRange) local radioMenuSubRange = SamsArray[compteur].SubRangeMenus[indexsubRange] if (subRangeConfig.subsubRange ~= nil) then for index, subsubRangeConfig in ipairs(subRangeConfig.subsubRange) do local radioMenuSubSubRange = MENU_COALITION:New(samconfig.benefit_coalition, subsubRangeConfig.name, radioMenuSubRange) AddSubRangeRadioMenus(radioMenuSubSubRange, samconfig, subsubRangeConfig) end else AddSubRangeRadioMenus(radioMenuSubRange, samconfig, subRangeConfig) end end AddWholeRangeCoalitionCommandMenus(radioMenuForRange, samconfig) else local radioMenuForRange = MENU_COALITION:New( coalition.side.RED, samconfig.name , mainRadioMenuForSamsRed) for index, subRangeConfig in ipairs(samconfig.subRange) do local radioMenuSubRange = MENU_COALITION:New(samconfig.benefit_coalition, subRangeConfig.name, radioMenuForRange) if (subRangeConfig.subsubRange ~= nil) then for index, subsubRangeConfig in ipairs(subRangeConfig.subsubRange) do local radioMenuSubSubRange = MENU_COALITION:New(samconfig.benefit_coalition, subsubRangeConfig.name, radioMenuSubRange) AddSubRangeRadioMenus(radioMenuSubSubRange, samconfig, subsubRangeConfig) end else AddSubRangeRadioMenus(radioMenuSubRange, samconfig, subRangeConfig) end end AddWholeRangeCoalitionCommandMenus(radioMenuForRange, samconfig) end end end if compteur == 0 then mainRadioMenuForSamsBlue:Remove() mainRadioMenuForSamsRed:Remove() end