diff --git a/Moose Development/Moose/Core/Menu.lua b/Moose Development/Moose/Core/Menu.lua index 44c15b08d..aacb018a6 100644 --- a/Moose Development/Moose/Core/Menu.lua +++ b/Moose Development/Moose/Core/Menu.lua @@ -105,6 +105,7 @@ function MENU_INDEX:PrepareCoalition( CoalitionSide ) self.Coalition[CoalitionSide] = self.Coalition[CoalitionSide] or {} self.Coalition[CoalitionSide].Menus = self.Coalition[CoalitionSide].Menus or {} end + --- -- @param Wrapper.Group#GROUP Group function MENU_INDEX:PrepareGroup( Group ) @@ -118,9 +119,11 @@ end function MENU_INDEX:HasMissionMenu( Path ) return self.MenuMission.Menus[Path] end + function MENU_INDEX:SetMissionMenu( Path, Menu ) self.MenuMission.Menus[Path] = Menu end + function MENU_INDEX:ClearMissionMenu( Path ) self.MenuMission.Menus[Path] = nil end @@ -128,9 +131,11 @@ end function MENU_INDEX:HasCoalitionMenu( Coalition, Path ) return self.Coalition[Coalition].Menus[Path] end + function MENU_INDEX:SetCoalitionMenu( Coalition, Path, Menu ) self.Coalition[Coalition].Menus[Path] = Menu end + function MENU_INDEX:ClearCoalitionMenu( Coalition, Path ) self.Coalition[Coalition].Menus[Path] = nil end @@ -138,19 +143,24 @@ end function MENU_INDEX:HasGroupMenu( Group, Path ) if Group and Group:IsAlive() then local MenuGroupName = Group:GetName() - return self.Group[MenuGroupName].Menus[Path] + if self.Group[MenuGroupName] and self.Group[MenuGroupName].Menus and self.Group[MenuGroupName].Menus[Path] then + return self.Group[MenuGroupName].Menus[Path] + end end return nil end + function MENU_INDEX:SetGroupMenu( Group, Path, Menu ) local MenuGroupName = Group:GetName() - Group:F({MenuGroupName=MenuGroupName,Path=Path}) + --Group:F({MenuGroupName=MenuGroupName,Path=Path}) self.Group[MenuGroupName].Menus[Path] = Menu end + function MENU_INDEX:ClearGroupMenu( Group, Path ) local MenuGroupName = Group:GetName() self.Group[MenuGroupName].Menus[Path] = nil end + function MENU_INDEX:Refresh( Group ) for MenuID, Menu in pairs( self.MenuMission.Menus ) do Menu:Refresh() diff --git a/Moose Development/Moose/Ops/CTLD.lua b/Moose Development/Moose/Ops/CTLD.lua index 56a33010d..3ebcd67a2 100644 --- a/Moose Development/Moose/Ops/CTLD.lua +++ b/Moose Development/Moose/Ops/CTLD.lua @@ -4094,7 +4094,12 @@ function CTLD:_RefreshF10Menus() --local nohookswitch = not (isHook and self.enableChinookGCLoading) local nohookswitch = true -- top menu + if _group.CTLDTopmenu then + _group.CTLDTopmenu:Remove() + _group.CTLDTopmenu = nil + end local topmenu = MENU_GROUP:New(_group,"CTLD",nil) + _group.CTLDTopmenu = topmenu local toptroops = nil local topcrates = nil if cantroops then @@ -5701,8 +5706,8 @@ end if self.keeploadtable and TimeStamp ~= nil then self:T2("Inserting: "..cargo.CargoType) - local cargotype = cargo.CargoType - table.insert(self.LoadedGroupsTable,{Group=self.DroppedTroops[self.TroopCounter], TimeStamp=TimeStamp, CargoType=cargotype}) + local cargotype = type + table.insert(self.LoadedGroupsTable,{Group=self.DroppedTroops[self.TroopCounter], TimeStamp=TimeStamp, CargoType=cargotype, CargoName=name}) end if self.eventoninject then @@ -5849,8 +5854,8 @@ end if self.keeploadtable and TimeStamp ~= nil then self:T2("Inserting: "..cargo.CargoType) - local cargotype = cargo.CargoType - table.insert(self.LoadedGroupsTable,{Group=self.DroppedTroops[self.TroopCounter], TimeStamp=TimeStamp, CargoType=cargotype}) + local cargotype = type + table.insert(self.LoadedGroupsTable,{Group=self.DroppedTroops[self.TroopCounter], TimeStamp=TimeStamp, CargoType=cargotype, CargoName=name}) end if self.eventoninject then