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 MainControlBaseUI = MainControlPanel.MainControlBaseUI; --MainControlBaseUI.Ingame_TeamPanel_BP:SetVisibility(ESlateVisibility.Visible); MainControlBaseUI.Image_IngameLogo:SetVisibility(ESlateVisibility.Collapsed) --- 局内游戏Logo MainControlBaseUI.Image_0:SetVisibility(ESlateVisibility.Collapsed) --- 指南针指针 MainControlBaseUI.NavigatorPanel:SetVisibility(ESlateVisibility.Collapsed) --- 指南针界面 MainControlBaseUI.SurviveInfoPanel:SetVisibility(ESlateVisibility.Collapsed) --- 存活人数 --- MainControlBaseUI.CanvasPanel_BackpackPanel:SetVisibility(ESlateVisibility.Collapsed) --- 背包按钮 --- MainControlBaseUI.CanvasPanel_HelmetArmor:SetVisibility(ESlateVisibility.Collapsed) --- 头盔、护甲按钮 MainControlBaseUI.CanvasPanelSurviveKill:SetVisibility(ESlateVisibility.Collapsed) --- 剩余人数、淘汰数 MainControlBaseUI.SignalReceivingAreaTIPS_UIBP:SetVisibility(ESlateVisibility.Collapsed) --- 信号区提示 MainControlBaseUI.CircleChasingProgress:SetVisibility(ESlateVisibility.Collapsed) --- 刷圈进度 -- MainControlBaseUI.IsNeedTeamPanel = true --- 不显示队友面板 -- MainControlBaseUI.CanvasPanel_BackpackPanel:AddAdvancedCollapsedCount(1) --- 背包按钮 -- MainControlBaseUI.Ingame_TeamPanelNew_BP -- MainControlBaseUI.Ingame_TeamPanel_BP:SetVisibility(ESlateVisibility.Visible); --- 显示队友血量等信息 MainControlBaseUI.ChangeSight_UIBP.CanvasPanel_Sight:SetVisibility(ESlateVisibility.Visible); local ShootingPanel = UGCWidgetManagerSystem.GetShootingUIPanel() if ShootingPanel then -- ShootingPanel.SwitchWeaponSlot_Mode2_C_0:SetVisibility(ESlateVisibility.Collapsed) --- 右武器栏 else UGCLogSystem.LogError("[WidgetConfig_HideDefaultUI] ShootingPanel is nil") end --- 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, Guide = 10006, Top = 10007, Toppest = 10008, Notice = 10009, } WidgetConfig.EUIType = { Default = 0, WaitingTime = 1, --- 等待时间 Ranking = 2, --- 排行榜单 Settlement = 3, --- 结算界面 InsufficientNumberOfPeople = 4, --- 人数不足 InvincibleTime = 5, --- 无敌时间 DamageAnim = 6, --- 给予伤害后的动画 KillInfo = 7, --- 击杀信息 Guide = 8, --- 玩法说明 FightPanel = 9, --- 战斗界面 HookTrace = 10, --- 抓钩准星 Winner = 11, --- 胜利方 Shop = 12, --- 武器购买 Key = 13, --- 追踪的钥匙 KeyMapSetting = 14, --- 键位设置 RoundReady = 15, --- 回合准备时间 KeyMapSettingBG = 16, --- 键位设置的背景,为的是可以看到其他键位 } 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.Top, 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.Guide, 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.HookTrace] = { Widget = UGCGameSystem.GetUGCResourcesFullPath('Asset/UI/Hook/WB_HookTraceMove.WB_HookTraceMove_C'), Layer = WidgetConfig.EUILayerGroup.Low, ShowOnce = false, }, [WidgetConfig.EUIType.Winner] = { Widget = UGCGameSystem.GetUGCResourcesFullPath('Asset/UI/StatusUI/Round/WB_RoundFinish.WB_RoundFinish_C'), Layer = WidgetConfig.EUILayerGroup.MainUI, ShowOnce = false, }, [WidgetConfig.EUIType.Shop] = { Widget = UGCGameSystem.GetUGCResourcesFullPath('Asset/UI/Shop/W_WeaponShop.W_WeaponShop_C'), Layer = WidgetConfig.EUILayerGroup.High, ShowOnce = false, }, [WidgetConfig.EUIType.Key] = { Widget = UGCGameSystem.GetUGCResourcesFullPath('Asset/Blueprint/SceneKey/WB_TraceTarget.WB_TraceTarget_C'), Layer = WidgetConfig.EUILayerGroup.MainUI, ShowOnce = false, }, [WidgetConfig.EUIType.KeyMapSetting] = { Widget = UGCGameSystem.GetUGCResourcesFullPath('Asset/UI/StatusUI/FightPanel/KeyMapSetting/WB_KeyMapSetting.WB_KeyMapSetting_C'), Layer = WidgetConfig.EUILayerGroup.Top, ShowOnce = false, }, [WidgetConfig.EUIType.RoundReady] = { Widget = UGCGameSystem.GetUGCResourcesFullPath('Asset/UI/StatusUI/Round/WB_RoundReady.WB_RoundReady_C'), Layer = WidgetConfig.EUILayerGroup.Top, ShowOnce = false, }, [WidgetConfig.EUIType.KeyMapSettingBG] = { Widget = UGCGameSystem.GetUGCResourcesFullPath('Asset/UI/StatusUI/FightPanel/KeyMapSetting/WB_KeyMapSettingBG.WB_KeyMapSettingBG_C'), Layer = WidgetConfig.EUILayerGroup.Negative, 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