WidgetConfig = WidgetConfig or {} --- 默认UI的隐藏 function WidgetConfig.HideDefaultUI() --- 隐藏平底锅切换扔出模式 --- ShootingUI.Customize_ThrowPlus:SetAdvancedCollapsed(true) --- local MainControlPanel = UGCWidgetManagerSystem.GetMainControlUI() local MainControlPanel = GameBusinessManager.GetWidgetFromName(ingame, "MainControlPanelTochButton_C") if MainControlPanel ~= nil then local MainControlBaseUITemp = MainControlPanel.MainControlBaseUI; MainControlBaseUITemp.Image_IngameLogo:SetVisibility(ESlateVisibility.Collapsed) --- 局内游戏Logo MainControlBaseUITemp.Image_0:SetVisibility(ESlateVisibility.Collapsed) --- 指南针指针 MainControlBaseUITemp.NavigatorPanel:SetVisibility(ESlateVisibility.Collapsed) --- 指南针界面 MainControlBaseUITemp.SurviveInfoPanel:SetVisibility(ESlateVisibility.Collapsed) --- 存活人数 --- MainControlBaseUITemp.CanvasPanel_BackpackPanel:SetVisibility(ESlateVisibility.Collapsed) --- 背包按钮 --- MainControlBaseUITemp.CanvasPanel_HelmetArmor:SetVisibility(ESlateVisibility.Collapsed) --- 头盔、护甲按钮 MainControlBaseUITemp.CanvasPanelSurviveKill:SetVisibility(ESlateVisibility.Collapsed) --- 剩余人数、淘汰数 MainControlBaseUITemp.SignalReceivingAreaTIPS_UIBP:SetVisibility(ESlateVisibility.Collapsed) --- 信号区提示 MainControlBaseUITemp.CircleChasingProgress:SetVisibility(ESlateVisibility.Collapsed) --- 刷圈进度 MainControlBaseUITemp.IsNeedTeamPanel = false --- 不显示队友面板 MainControlBaseUITemp.CanvasPanel_BackpackPanel:AddAdvancedCollapsedCount(1) --- 背包按钮 local ShootingPanel = UGCWidgetManagerSystem.GetShootingUIPanel() if ShootingPanel then ShootingPanel.SwitchWeaponSlot_Mode2_C_0:SetVisibility(ESlateVisibility.Collapsed) --- 右武器栏 else UGCLogSystem.LogError("[WidgetConfig_HideDefaultUI] ShootingPanel is nil") end --- MainControlBaseUITemp.ShootingUIPanel.SwitchWeaponSlot_Mode2:SetVisibility(ESlateVisibility.Collapsed) --- 右武器栏 --- MultiLayer_RightWeaponSlot --- 折叠二号武器槽位 --- MainControlBaseUITemp.ShootingUIPanel.SwitchWeaponSlot_Mode2.Image_Selected:SetVisibility(ESlateVisibility.Collapsed) --- MainControlBaseUITemp.ShootingUIPanel.SwitchWeaponSlot_Mode2.GridPanel_FireMode:SetVisibility(ESlateVisibility.Collapsed) --- MainControlBaseUITemp.ShootingUIPanel.SwitchWeaponSlot_Mode2.MultiLayer_Pistol:SetVisibility(ESlateVisibility.Collapsed) --- local ShootingUIPanel = MainControlPanel.ShootingUIPanel --- ShootingUIPanel:SetVisibility(ESlateVisibility.Collapsed) ---不显示战斗界面 end --- UGCWidgetManagerSystem.LoadLobbyChatFrameUI() --- 加载大厅聊天框UI end WidgetConfig.EUILayerGroup = { Negative = -1, Least = 0, Bottom = 1, Low = 2, Low_Add1 = 3, MainUI = 10003, Medium = 10004, High = 10005, Top = 10006, Toppest = 10007, Notice = 10008, } WidgetConfig.EUIType = { Default = 0, WaitingTime = 1, --- 等待时间 Ranking = 2, --- 排行榜单 Settlement = 3, --- 结算界面 InsufficientNumberOfPeople = 4, --- 人数不足 InvincibleTime = 5, --- 无敌时间 DamageAnim = 6, --- 给予伤害后的动画 KillInfo = 7, --- 击杀信息 Guide = 8, --- 玩法说明 FightPanel = 9, --- 战斗界面 SceneItemGuide = 10, --- 机关导航 } WidgetConfig.Configs = { [WidgetConfig.EUIType.WaitingTime] = { Widget = UGCGameSystem.GetUGCResourcesFullPath('Asset/UI/StatusUI/GamePreparation/W_GamePreparation.W_GamePreparation_C'), Layer = WidgetConfig.EUILayerGroup.Top, ShowOnce = false, }, [WidgetConfig.EUIType.Ranking] = { Widget = UGCGameSystem.GetUGCResourcesFullPath('Asset/UI/Rank/WB_TeamRank.WB_TeamRank_C'), Layer = WidgetConfig.EUILayerGroup.Low_Add1, ShowOnce = false, }, [WidgetConfig.EUIType.Settlement] = { Widget = UGCGameSystem.GetUGCResourcesFullPath('Asset/UI/Settlement/WB_TeamSettlement.WB_TeamSettlement_C'), Layer = WidgetConfig.EUILayerGroup.MainUI, ShowOnce = false, }, [WidgetConfig.EUIType.InsufficientNumberOfPeople] = { Widget = UGCGameSystem.GetUGCResourcesFullPath('Asset/UI/StatusUI/WB_GameUnableToStart.WB_GameUnableToStart_C'), Layer = WidgetConfig.EUILayerGroup.Top, ShowOnce = false, }, [WidgetConfig.EUIType.InvincibleTime] = { Widget = UGCGameSystem.GetUGCResourcesFullPath('Asset/UI/W_InvincibleTime.W_InvincibleTime_C'), Layer = WidgetConfig.EUILayerGroup.Low, ShowOnce = false, }, [WidgetConfig.EUIType.DamageAnim] = { Widget = UGCGameSystem.GetUGCResourcesFullPath('Asset/UI/W_DamageAnim.W_DamageAnim_C'), Layer = WidgetConfig.EUILayerGroup.Low, ShowOnce = false, }, [WidgetConfig.EUIType.Guide] = { Widget = UGCGameSystem.GetUGCResourcesFullPath('Asset/UI/Guide/WB_Guide.WB_Guide_C'), Layer = WidgetConfig.EUILayerGroup.High, ShowOnce = false, }, [WidgetConfig.EUIType.FightPanel] = { Widget = UGCGameSystem.GetUGCResourcesFullPath('Asset/UI/StatusUI/FightPanel/WB_FightPanel.WB_FightPanel_C'), Layer = WidgetConfig.EUILayerGroup.Low, ShowOnce = false, }, [WidgetConfig.EUIType.SceneItemGuide] = { Widget = UGCGameSystem.GetUGCResourcesFullPath('Asset/UI/Guide/WB_SceneItemGuide_2.WB_SceneItemGuide_2_C'), Layer = WidgetConfig.EUILayerGroup.Medium, ShowOnce = false, }, } function WidgetConfig.GetWidgetPathFromUIType(UIType) if not WidgetConfig.CheckUIType(UIType) then return end return WidgetConfig.Configs[UIType].Widget end function WidgetConfig.GetWidgetLayer(UIType) if not WidgetConfig.CheckUIType(UIType) then return end return WidgetConfig.Configs[UIType].Layer end function WidgetConfig.GetWidgetShowOnce(UIType) if not WidgetConfig.CheckUIType(UIType) then return end return WidgetConfig.Configs[UIType].ShowOnce end function WidgetConfig.CheckUIType(UIType) return (WidgetConfig.Configs[UIType] ~= nil) end function WidgetConfig.GetAllWidgetTypeFromLayer(Layer) local Res = {} for UIType, _ in pairs(WidgetConfig.Configs) do if WidgetConfig.GetWidgetLayer(UIType) == Layer then Res[#Res + 1] = UIType end end return Res end