diff --git a/OpenRA.Mods.Common/OpenRA.Mods.Common.csproj b/OpenRA.Mods.Common/OpenRA.Mods.Common.csproj index 24746d4412..a95faa52bd 100644 --- a/OpenRA.Mods.Common/OpenRA.Mods.Common.csproj +++ b/OpenRA.Mods.Common/OpenRA.Mods.Common.csproj @@ -586,7 +586,6 @@ - diff --git a/OpenRA.Mods.Common/Widgets/Logic/Ingame/GameInfoLogic.cs b/OpenRA.Mods.Common/Widgets/Logic/Ingame/GameInfoLogic.cs index 48901b8595..08eae9e622 100644 --- a/OpenRA.Mods.Common/Widgets/Logic/Ingame/GameInfoLogic.cs +++ b/OpenRA.Mods.Common/Widgets/Logic/Ingame/GameInfoLogic.cs @@ -10,6 +10,7 @@ using System; using System.Linq; +using OpenRA.Mods.Common.Scripting; using OpenRA.Traits; using OpenRA.Widgets; @@ -28,8 +29,12 @@ namespace OpenRA.Mods.Common.Widgets.Logic widget.IsVisible = () => activePanel != IngameInfoPanel.AutoSelect; // Objectives/Stats tab + var scriptContext = world.WorldActor.TraitOrDefault(); + var hasError = scriptContext != null && scriptContext.FatalErrorOccurred; var iop = world.WorldActor.TraitsImplementing().FirstOrDefault(); - if (lp != null && iop != null && iop.PanelName != null) + var hasObjectives = hasError || (lp != null && iop != null && iop.PanelName != null); + + if (hasObjectives) { numTabs++; var objectivesTabButton = widget.Get(string.Concat("BUTTON", numTabs.ToString())); @@ -38,10 +43,11 @@ namespace OpenRA.Mods.Common.Widgets.Logic objectivesTabButton.OnClick = () => activePanel = IngameInfoPanel.Objectives; objectivesTabButton.IsHighlighted = () => activePanel == IngameInfoPanel.Objectives; + var panel = hasError ? "SCRIPT_ERROR_PANEL" : iop.PanelName; var objectivesPanel = widget.Get("OBJECTIVES_PANEL"); objectivesPanel.IsVisible = () => activePanel == IngameInfoPanel.Objectives; - Game.LoadWidget(world, iop.PanelName, objectivesPanel, new WidgetArgs()); + Game.LoadWidget(world, panel, objectivesPanel, new WidgetArgs()); if (activePanel == IngameInfoPanel.AutoSelect) activePanel = IngameInfoPanel.Objectives; @@ -73,6 +79,7 @@ namespace OpenRA.Mods.Common.Widgets.Logic var debugTabButton = widget.Get(string.Concat("BUTTON", numTabs.ToString())); debugTabButton.Text = "Debug"; debugTabButton.IsVisible = () => lp != null && world.LobbyInfo.GlobalSettings.AllowCheats && numTabs > 1; + debugTabButton.IsDisabled = () => world.IsGameOver; debugTabButton.OnClick = () => activePanel = IngameInfoPanel.Debug; debugTabButton.IsHighlighted = () => activePanel == IngameInfoPanel.Debug; diff --git a/OpenRA.Mods.Common/Widgets/Logic/Ingame/IngameMenuLogic.cs b/OpenRA.Mods.Common/Widgets/Logic/Ingame/IngameMenuLogic.cs index e1bf0c83dd..678af1bf57 100644 --- a/OpenRA.Mods.Common/Widgets/Logic/Ingame/IngameMenuLogic.cs +++ b/OpenRA.Mods.Common/Widgets/Logic/Ingame/IngameMenuLogic.cs @@ -24,7 +24,7 @@ namespace OpenRA.Mods.Common.Widgets.Logic [ObjectCreator.UseCtor] public IngameMenuLogic(Widget widget, World world, Action onExit, WorldRenderer worldRenderer, IngameInfoPanel activePanel) { - var resumeDisabled = false; + var leaving = false; menu = widget.Get("INGAME_MENU"); var mpe = world.WorldActor.TraitOrDefault(); if (mpe != null) @@ -41,7 +41,7 @@ namespace OpenRA.Mods.Common.Widgets.Logic if (world.Type == WorldType.Regular) Sound.PlayNotification(world.Map.Rules, null, "Speech", "Leave", world.LocalPlayer == null ? null : world.LocalPlayer.Faction.InternalName); - resumeDisabled = true; + leaving = true; var iop = world.WorldActor.TraitsImplementing().FirstOrDefault(); var exitDelay = iop != null ? iop.ExitDelay : 0; @@ -71,8 +71,18 @@ namespace OpenRA.Mods.Common.Widgets.Logic var abortMissionButton = menu.Get("ABORT_MISSION"); abortMissionButton.IsVisible = () => world.Type == WorldType.Regular; + abortMissionButton.IsDisabled = () => leaving; + if (world.IsGameOver) + abortMissionButton.GetText = () => "Leave"; + abortMissionButton.OnClick = () => { + if (world.IsGameOver) + { + onQuit(); + return; + } + hideMenu = true; ConfirmationDialogs.PromptConfirmAction("Abort Mission", "Leave this game and return to the menu?", onQuit, showMenu); }; @@ -116,7 +126,9 @@ namespace OpenRA.Mods.Common.Widgets.Logic }); }; - menu.Get("MUSIC").OnClick = () => + var musicButton = menu.Get("MUSIC"); + musicButton.IsDisabled = () => leaving; + musicButton.OnClick = () => { hideMenu = true; Ui.OpenWindow("MUSIC_PANEL", new WidgetArgs() @@ -127,6 +139,7 @@ namespace OpenRA.Mods.Common.Widgets.Logic }; var settingsButton = widget.Get("SETTINGS"); + settingsButton.IsDisabled = () => leaving; settingsButton.OnClick = () => { hideMenu = true; @@ -139,7 +152,10 @@ namespace OpenRA.Mods.Common.Widgets.Logic }; var resumeButton = menu.Get("RESUME"); - resumeButton.IsDisabled = () => resumeDisabled; + resumeButton.IsDisabled = () => leaving; + if (world.IsGameOver) + resumeButton.GetText = () => "Return to map"; + resumeButton.OnClick = closeMenu; var panelRoot = widget.GetOrNull("PANEL_ROOT"); diff --git a/OpenRA.Mods.Common/Widgets/Logic/Ingame/LeaveMapLogic.cs b/OpenRA.Mods.Common/Widgets/Logic/Ingame/LeaveMapLogic.cs deleted file mode 100644 index 0b82032240..0000000000 --- a/OpenRA.Mods.Common/Widgets/Logic/Ingame/LeaveMapLogic.cs +++ /dev/null @@ -1,158 +0,0 @@ -#region Copyright & License Information -/* - * Copyright 2007-2015 The OpenRA Developers (see AUTHORS) - * This file is part of OpenRA, which is free software. It is made - * available to you under the terms of the GNU General Public License - * as published by the Free Software Foundation. For more information, - * see COPYING. - */ -#endregion - -using System; -using System.Drawing; -using System.Linq; -using OpenRA.Mods.Common.Scripting; -using OpenRA.Mods.Common.Traits; -using OpenRA.Network; -using OpenRA.Traits; -using OpenRA.Widgets; - -namespace OpenRA.Mods.Common.Widgets -{ - class LeaveMapLogic - { - readonly OrderManager orderManager; - - enum Tab { Objectives, Chat } - Tab currentTab; - - bool newChatMessage; - - [ObjectCreator.UseCtor] - public LeaveMapLogic(Widget widget, World world, OrderManager orderManager) - { - this.orderManager = orderManager; - - var mpe = world.WorldActor.TraitOrDefault(); - if (mpe != null) - mpe.Fade(mpe.Info.MenuEffect); - - widget.Get("VERSION_LABEL").Text = Game.ModData.Manifest.Mod.Version; - - var showStats = false; - - var scriptContext = world.WorldActor.TraitOrDefault(); - var iop = world.WorldActor.TraitsImplementing().FirstOrDefault(); - var isMultiplayer = !world.LobbyInfo.IsSinglePlayer && !world.IsReplay; - var hasError = scriptContext != null && scriptContext.FatalErrorOccurred; - var hasObjectives = hasError || (iop != null && iop.PanelName != null && world.LocalPlayer != null); - var showTabs = hasObjectives && isMultiplayer; - currentTab = hasObjectives ? Tab.Objectives : Tab.Chat; - - var panelName = hasObjectives || isMultiplayer ? "LEAVE_MAP_FULL" : "LEAVE_MAP_SIMPLE"; - var dialog = widget.Get(panelName); - dialog.IsVisible = () => !showStats; - widget.IsVisible = () => Ui.CurrentWindow() == null; - - if (hasObjectives || isMultiplayer) - { - var titleText = dialog.Get("GAME_ENDED_LABEL"); - var titleTextNoTabs = dialog.GetOrNull("GAME_ENDED_LABEL_NO_TABS"); - titleText.IsVisible = () => showTabs || (!showTabs && titleTextNoTabs == null); - if (titleTextNoTabs != null) - titleTextNoTabs.IsVisible = () => !showTabs; - - var bg = dialog.Get("LEAVE_MAP_BG"); - var bgNoTabs = dialog.GetOrNull("LEAVE_MAP_BG_NO_TABS"); - bg.IsVisible = () => showTabs || (!showTabs && bgNoTabs == null); - if (bgNoTabs != null) - bgNoTabs.IsVisible = () => !showTabs; - - var objButton = dialog.Get("OBJECTIVES_BUTTON"); - objButton.IsVisible = () => showTabs; - objButton.OnClick = () => currentTab = Tab.Objectives; - objButton.IsHighlighted = () => currentTab == Tab.Objectives; - - var chatButton = dialog.Get("CHAT_BUTTON"); - chatButton.IsVisible = () => showTabs; - chatButton.OnClick = () => - { - currentTab = Tab.Chat; - newChatMessage = false; - }; - chatButton.IsHighlighted = () => currentTab == Tab.Chat || (newChatMessage && Game.LocalTick % 50 < 25); - - Game.BeforeGameStart += UnregisterChatNotification; - orderManager.AddChatLine += NotifyNewChatMessage; - } - - var statsButton = dialog.Get("STATS_BUTTON"); - statsButton.IsVisible = () => !world.Map.Visibility.HasFlag(MapVisibility.MissionSelector) || world.IsReplay; - statsButton.OnClick = () => - { - showStats = true; - Game.LoadWidget(world, "INGAME_OBSERVERSTATS_BG", Ui.Root, new WidgetArgs() - { - { "onExit", () => showStats = false } - }); - }; - - var leaveButton = dialog.Get("LEAVE_BUTTON"); - leaveButton.OnClick = () => - { - leaveButton.Disabled = true; - - if (world.Type == WorldType.Regular) - Sound.PlayNotification(world.Map.Rules, null, "Speech", "Leave", - world.LocalPlayer == null ? null : world.LocalPlayer.Faction.InternalName); - - var exitDelay = iop != null ? iop.ExitDelay : 0; - if (mpe != null) - { - Game.RunAfterDelay(exitDelay, () => mpe.Fade(MenuPaletteEffect.EffectType.Black)); - exitDelay += 40 * mpe.Info.FadeLength; - } - - Game.RunAfterDelay(exitDelay, () => - { - Game.Disconnect(); - Ui.ResetAll(); - Game.LoadShellMap(); - }); - }; - - if (hasObjectives) - { - var panel = hasError ? "SCRIPT_ERROR_PANEL" : iop.PanelName; - var objectivesContainer = dialog.Get("OBJECTIVES_PANEL"); - Game.LoadWidget(world, panel, objectivesContainer, new WidgetArgs()); - objectivesContainer.IsVisible = () => currentTab == Tab.Objectives; - - string video = null; - if (world.LocalPlayer.WinState != WinState.Undefined) - video = world.LocalPlayer.WinState == WinState.Won ? world.Map.Videos.GameWon : world.Map.Videos.GameLost; - - if (!string.IsNullOrEmpty(video)) - Media.PlayFMVFullscreen(world, video, () => { }); - } - - if (isMultiplayer) - { - var chatContainer = dialog.Get("DIALOG_CHAT_PANEL"); - chatContainer.IsVisible = () => currentTab == Tab.Chat; - } - } - - void NotifyNewChatMessage(Color c, string s1, string s2) - { - if (currentTab != Tab.Chat) - newChatMessage = true; - } - - void UnregisterChatNotification() - { - orderManager.AddChatLine -= NotifyNewChatMessage; - Game.BeforeGameStart -= UnregisterChatNotification; - } - } -} \ No newline at end of file diff --git a/OpenRA.Mods.Common/Widgets/Logic/Ingame/LoadIngamePlayerOrObserverUILogic.cs b/OpenRA.Mods.Common/Widgets/Logic/Ingame/LoadIngamePlayerOrObserverUILogic.cs index 0120bf2fbb..9ba207a1dd 100644 --- a/OpenRA.Mods.Common/Widgets/Logic/Ingame/LoadIngamePlayerOrObserverUILogic.cs +++ b/OpenRA.Mods.Common/Widgets/Logic/Ingame/LoadIngamePlayerOrObserverUILogic.cs @@ -8,6 +8,7 @@ */ #endregion +using OpenRA.Mods.Common.Scripting; using OpenRA.Widgets; namespace OpenRA.Mods.Common.Widgets.Logic @@ -46,9 +47,21 @@ namespace OpenRA.Mods.Common.Widgets.Logic world.GameOver += () => { - worldRoot.RemoveChildren(); + Ui.CloseWindow(); menuRoot.RemoveChildren(); - Game.LoadWidget(world, "LEAVE_MAP_WIDGET", menuRoot, new WidgetArgs()); + + if (world.LocalPlayer != null) + { + var scriptContext = world.WorldActor.TraitOrDefault(); + var video = world.LocalPlayer.WinState == WinState.Won ? world.Map.Videos.GameWon : world.Map.Videos.GameLost; + + if (!string.IsNullOrEmpty(video) && !(scriptContext != null && scriptContext.FatalErrorOccurred)) + Media.PlayFMVFullscreen(world, video, () => { }); + } + + var optionsButton = playerRoot.GetOrNull("OPTIONS_BUTTON"); + if (optionsButton != null) + optionsButton.OnClick(); }; } } diff --git a/OpenRA.Mods.Common/Widgets/Logic/Ingame/MenuButtonsChromeLogic.cs b/OpenRA.Mods.Common/Widgets/Logic/Ingame/MenuButtonsChromeLogic.cs index 0e4c082a11..adafc9e957 100644 --- a/OpenRA.Mods.Common/Widgets/Logic/Ingame/MenuButtonsChromeLogic.cs +++ b/OpenRA.Mods.Common/Widgets/Logic/Ingame/MenuButtonsChromeLogic.cs @@ -33,9 +33,6 @@ namespace OpenRA.Mods.Common.Widgets.Logic worldRoot = Ui.Root.Get("WORLD_ROOT"); menuRoot = Ui.Root.Get("MENU_ROOT"); - Action removeCurrentWidget = () => menuRoot.RemoveChild(currentWidget); - world.GameOver += removeCurrentWidget; - // System buttons var options = widget.GetOrNull("OPTIONS_BUTTON"); if (options != null) diff --git a/mods/cnc/chrome/ingame-info.yaml b/mods/cnc/chrome/ingame-info.yaml index 7b0a99f610..24299c750f 100644 --- a/mods/cnc/chrome/ingame-info.yaml +++ b/mods/cnc/chrome/ingame-info.yaml @@ -50,6 +50,7 @@ Container@GAME_INFO_PANEL: Width: PARENT_RIGHT Height: PARENT_BOTTOM Container@OBJECTIVES_PANEL: + Width: PARENT_RIGHT Container@DEBUG_PANEL: Width: PARENT_RIGHT Height: PARENT_BOTTOM diff --git a/mods/cnc/chrome/ingame-leavemap.yaml b/mods/cnc/chrome/ingame-leavemap.yaml deleted file mode 100644 index 6acdc1e86a..0000000000 --- a/mods/cnc/chrome/ingame-leavemap.yaml +++ /dev/null @@ -1,167 +0,0 @@ -Container@LEAVE_MAP_WIDGET: - Logic: LeaveMapLogic - Children: - Image@EVA: - X: WINDOW_RIGHT-128-43 - Y: 43 - Width: 128 - Height: 64 - ImageCollection: logos - ImageName: eva - Label@VERSION_LABEL: - X: WINDOW_RIGHT-128-43 - Y: 115 - Width: 128 - Align: Center - Contrast: true - Background@BORDER: - Width: WINDOW_RIGHT - Height: WINDOW_BOTTOM - Background: shellmapborder - Container@LEAVE_MAP_SIMPLE: - X: (WINDOW_RIGHT - WIDTH) / 2 - Y: (WINDOW_BOTTOM - HEIGHT) / 2 - Width: 370 - Height: 125 - Visible: False - Children: - Background@LEAVE_MAP_SIMPLE_BG: - Width: PARENT_RIGHT - Height: PARENT_BOTTOM - 35 - Background: panel-black - Children: - Label@GAME_ENDED_LABEL: - X: 0 - Y: 0 - 25 - Width: PARENT_RIGHT - Font: BigBold - Align: Center - Text: The game has ended - Contrast: True - Label@BLURB: - X: 15 - Y: (PARENT_BOTTOM - HEIGHT) / 2 - Width: PARENT_RIGHT - 30 - Text: Press 'Leave' to return to the main menu. - Align: Center - Button@LEAVE_BUTTON: - X: 0 - Y: PARENT_BOTTOM - 1 - Width: 140 - Height: 35 - Font: Bold - Text: Leave - Button@STATS_BUTTON: - X: PARENT_RIGHT - WIDTH - Y: PARENT_BOTTOM - 1 - Width: 140 - Height: 35 - Font: Bold - Text: Statistics - Container@LEAVE_MAP_FULL: - X: (WINDOW_RIGHT - WIDTH) / 2 - Y: (WINDOW_BOTTOM - HEIGHT) / 2 - Width: 512 - Height: 410 - Visible: False - Children: - Background@LEAVE_MAP_BG: - Width: PARENT_RIGHT - Height: PARENT_BOTTOM - 35 - Background: panel-black - Label@GAME_ENDED_LABEL: - X: 0 - Y: 0 - 60 - Width: PARENT_RIGHT - Font: BigBold - Align: Center - Text: The game has ended - Contrast: True - Label@GAME_ENDED_LABEL_NO_TABS: - X: 0 - Y: 0 - 25 - Width: PARENT_RIGHT - Font: BigBold - Align: Center - Text: The game has ended - Contrast: True - Container@TAB_CONTAINER: - Width: 290 - Children: - Button@OBJECTIVES_BUTTON: - Y: 1 - HEIGHT - Width: 140 - Height: 35 - Font: Bold - Text: Objectives - Button@CHAT_BUTTON: - X: 150 - Y: 1 - HEIGHT - Width: 140 - Height: 35 - Font: Bold - Text: Chat - Button@LEAVE_BUTTON: - X: 0 - Y: PARENT_BOTTOM - 36 - Width: 140 - Height: 35 - Font: Bold - Text: Leave - Button@STATS_BUTTON: - X: 150 - Y: PARENT_BOTTOM - 36 - Width: 140 - Height: 35 - Font: Bold - Text: Statistics - Container@OBJECTIVES_PANEL: - Width: PARENT_RIGHT - Height: 365 - Container@DIALOG_CHAT_PANEL: - X: 15 - Y: 15 - Width: PARENT_RIGHT - 30 - Height: 365 - Logic: IngameChatLogic - Visible: False - Children: - Container@CHAT_CHROME: - Width: PARENT_RIGHT - Height: PARENT_BOTTOM - Children: - Button@CHAT_MODE: - Y: PARENT_BOTTOM - HEIGHT - 20 - Width: 50 - Height: 25 - Text: Team - Font: Bold - TextField@CHAT_TEXTFIELD: - X: 55 - Y: PARENT_BOTTOM - HEIGHT - 20 - Width: 427 - Height: 25 - ScrollPanel@CHAT_SCROLLPANEL: - Y: PARENT_BOTTOM - HEIGHT - 50 - Width: 482 - Height: 315 - ItemSpacing: 4 - Align: Bottom - Children: - Container@CHAT_TEMPLATE: - X: 2 - Width: PARENT_RIGHT-27 - Height: 16 - Children: - Label@NAME: - X: 3 - Width: 50 - Height: 15 - VAlign: Top - Label@TEXT: - X: 12 - Width: PARENT_RIGHT - 17 - Height: 15 - WordWrap: true - VAlign: Top - diff --git a/mods/cnc/mod.yaml b/mods/cnc/mod.yaml index 73818b0bcd..49cc307058 100644 --- a/mods/cnc/mod.yaml +++ b/mods/cnc/mod.yaml @@ -111,7 +111,6 @@ ChromeLayout: ./mods/cnc/chrome/ingame-infoscripterror.yaml ./mods/cnc/chrome/ingame-infoobjectives.yaml ./mods/cnc/chrome/ingame-infostats.yaml - ./mods/cnc/chrome/ingame-leavemap.yaml ./mods/cnc/chrome/ingame-observerstats.yaml ./mods/cnc/chrome/music.yaml ./mods/cnc/chrome/settings.yaml diff --git a/mods/d2k/chrome/ingame-leavemap.yaml b/mods/d2k/chrome/ingame-leavemap.yaml deleted file mode 100644 index 12f9d286c1..0000000000 --- a/mods/d2k/chrome/ingame-leavemap.yaml +++ /dev/null @@ -1,168 +0,0 @@ -Container@LEAVE_MAP_WIDGET: - Logic: LeaveMapLogic - Children: - Background@BORDER: - X: 0 - 15 - Y: 0 - 15 - Width: WINDOW_RIGHT + 30 - Height: WINDOW_BOTTOM + 30 - Background: mainmenu-border - Label@VERSION_LABEL: - X: WINDOW_RIGHT - 10 - Y: WINDOW_BOTTOM - 20 - Align: Right - Font: Regular - Contrast: True - Container@LEAVE_MAP_SIMPLE: - X: (WINDOW_RIGHT - WIDTH) / 2 - Y: (WINDOW_BOTTOM - HEIGHT) / 2 - Width: 370 - Height: 175 - Visible: False - Children: - Background@LEAVE_MAP_SIMPLE_BG: - Width: PARENT_RIGHT - Height: PARENT_BOTTOM - Children: - Label@GAME_ENDED_LABEL: - Y: 20 - Width: PARENT_RIGHT - Height: 25 - Font: Bold - Align: Center - Text: The game has ended - Label@BLURB: - X: 15 - Y: 50 - Width: PARENT_RIGHT - 30 - Height: 65 - Text: Press 'Leave' to return to the main menu. - Align: Center - Button@STATS_BUTTON: - X: 20 - Y: PARENT_BOTTOM - 45 - Width: 140 - Height: 25 - Font: Bold - Text: Statistics - Button@LEAVE_BUTTON: - X: PARENT_RIGHT - WIDTH - 20 - Y: PARENT_BOTTOM - 45 - Width: 140 - Height: 25 - Font: Bold - Text: Leave - Container@LEAVE_MAP_FULL: - X: (WINDOW_RIGHT - WIDTH) / 2 - Y: (WINDOW_BOTTOM - HEIGHT) / 2 - Width: 522 - Height: 495 - Visible: False - Children: - Background@LEAVE_MAP_BG: - Width: PARENT_RIGHT - Height: PARENT_BOTTOM - Visible: False - Background@LEAVE_MAP_BG_NO_TABS: - Y: 25 - Width: PARENT_RIGHT - Height: PARENT_BOTTOM - 25 - Visible: False - Label@GAME_ENDED_LABEL: - X: 20 - Y: 20 - Width: PARENT_RIGHT - 40 - Height: 25 - Font: Bold - Align: Center - Text: The game has ended - Label@GAME_ENDED_LABEL_NO_TABS: - X: 20 - Y: 45 - Width: PARENT_RIGHT - 40 - Height: 25 - Font: Bold - Align: Center - Text: The game has ended - Container@TAB_CONTAINER: - X: (PARENT_RIGHT - WIDTH) / 2 - Width: 240 - Height: 25 - Children: - Button@OBJECTIVES_BUTTON: - X: 0 - Y: 50 - Width: 120 - Height: 25 - Font: Bold - Text: Objectives - Button@CHAT_BUTTON: - X: 120 - Y: 50 - Width: 120 - Height: 25 - Font: Bold - Text: Chat - Button@STATS_BUTTON: - X: PARENT_RIGHT - 2 * (WIDTH + 20) - Y: PARENT_BOTTOM - 45 - Width: 120 - Height: 25 - Font: Bold - Text: Statistics - Button@LEAVE_BUTTON: - X: PARENT_RIGHT - WIDTH - 20 - Y: PARENT_BOTTOM - 45 - Width: 120 - Height: 25 - Font: Bold - Text: Leave - Container@OBJECTIVES_PANEL: - Y: 65 - Width: PARENT_RIGHT - Container@DIALOG_CHAT_PANEL: - X: 20 - Y: 65 - Width: PARENT_RIGHT - 40 - Height: 370 - Logic: IngameChatLogic - Visible: False - Children: - Container@CHAT_CHROME: - Width: PARENT_RIGHT - Height: PARENT_BOTTOM - Children: - Button@CHAT_MODE: - Y: PARENT_BOTTOM - HEIGHT - Width: 50 - Height: 25 - Text: Team - Font: Bold - TextField@CHAT_TEXTFIELD: - X: 55 - Y: PARENT_BOTTOM - HEIGHT - Width: 427 - Height: 25 - ScrollPanel@CHAT_SCROLLPANEL: - Y: PARENT_BOTTOM - HEIGHT - 30 - Width: 482 - Height: 315 - ItemSpacing: 4 - Align: Bottom - Children: - Container@CHAT_TEMPLATE: - X: 2 - Width: PARENT_RIGHT-27 - Height: 16 - Children: - Label@NAME: - X: 3 - Width: 50 - Height: 15 - VAlign: Top - Label@TEXT: - X: 12 - Width: PARENT_RIGHT - 17 - Height: 15 - WordWrap: true - VAlign: Top diff --git a/mods/d2k/mod.yaml b/mods/d2k/mod.yaml index c4d81a1297..554bbdff1a 100644 --- a/mods/d2k/mod.yaml +++ b/mods/d2k/mod.yaml @@ -81,7 +81,6 @@ ChromeLayout: ./mods/d2k/chrome/ingame-player.yaml ./mods/ra/chrome/ingame-perf.yaml ./mods/ra/chrome/ingame-debug.yaml - ./mods/d2k/chrome/ingame-leavemap.yaml ./mods/d2k/chrome/mainmenu.yaml ./mods/ra/chrome/settings.yaml ./mods/ra/chrome/credits.yaml diff --git a/mods/ra/chrome/ingame-info.yaml b/mods/ra/chrome/ingame-info.yaml index 6aad3f056d..ffe21675d0 100644 --- a/mods/ra/chrome/ingame-info.yaml +++ b/mods/ra/chrome/ingame-info.yaml @@ -58,6 +58,7 @@ Container@GAME_INFO_PANEL: Height: PARENT_BOTTOM Container@OBJECTIVES_PANEL: Y: 65 + Width: PARENT_RIGHT Container@DEBUG_PANEL: Y: 65 Width: PARENT_RIGHT diff --git a/mods/ra/chrome/ingame-leavemap.yaml b/mods/ra/chrome/ingame-leavemap.yaml deleted file mode 100644 index 74776c26de..0000000000 --- a/mods/ra/chrome/ingame-leavemap.yaml +++ /dev/null @@ -1,175 +0,0 @@ -Container@LEAVE_MAP_WIDGET: - Logic: LeaveMapLogic - Children: - Background@BORDER: - X: 0 - 15 - Y: 0 - 15 - Width: WINDOW_RIGHT + 30 - Height: WINDOW_BOTTOM + 30 - Background: mainmenu-border - Image@LOGO: - X: WINDOW_RIGHT - 296 - Y: 30 - ImageCollection: logos - ImageName: logo - Label@VERSION_LABEL: - X: WINDOW_RIGHT - 296 - Y: 296 - 20 - Width: 296 - 20 - Height: 25 - Align: Center - Font: Regular - Contrast: True - Container@LEAVE_MAP_SIMPLE: - X: (WINDOW_RIGHT - WIDTH) / 2 - Y: (WINDOW_BOTTOM - HEIGHT) / 2 - Width: 370 - Height: 175 - Visible: False - Children: - Background@LEAVE_MAP_SIMPLE_BG: - Width: PARENT_RIGHT - Height: PARENT_BOTTOM - Children: - Label@GAME_ENDED_LABEL: - Y: 20 - Width: PARENT_RIGHT - Height: 25 - Font: Bold - Align: Center - Text: The game has ended - Label@BLURB: - X: 15 - Y: 50 - Width: PARENT_RIGHT - 30 - Height: 65 - Text: Press 'Leave' to return to the main menu. - Align: Center - Button@STATS_BUTTON: - X: 20 - Y: PARENT_BOTTOM - 45 - Width: 140 - Height: 25 - Font: Bold - Text: Statistics - Button@LEAVE_BUTTON: - X: PARENT_RIGHT - WIDTH - 20 - Y: PARENT_BOTTOM - 45 - Width: 140 - Height: 25 - Font: Bold - Text: Leave - Container@LEAVE_MAP_FULL: - X: (WINDOW_RIGHT - WIDTH) / 2 - Y: (WINDOW_BOTTOM - HEIGHT) / 2 - Width: 522 - Height: 510 - Visible: False - Children: - Background@LEAVE_MAP_BG: - Width: PARENT_RIGHT - Height: PARENT_BOTTOM - Visible: False - Background@LEAVE_MAP_BG_NO_TABS: - Y: 25 - Width: PARENT_RIGHT - Height: PARENT_BOTTOM - 25 - Visible: False - Label@GAME_ENDED_LABEL: - X: 20 - Y: 20 - Width: PARENT_RIGHT - 40 - Height: 25 - Font: Bold - Align: Center - Text: The game has ended - Label@GAME_ENDED_LABEL_NO_TABS: - X: 20 - Y: 45 - Width: PARENT_RIGHT - 40 - Height: 25 - Font: Bold - Align: Center - Text: The game has ended - Container@TAB_CONTAINER: - X: (PARENT_RIGHT - WIDTH) / 2 - Width: 240 - Height: 25 - Children: - Button@OBJECTIVES_BUTTON: - X: 0 - Y: 50 - Width: 120 - Height: 25 - Font: Bold - Text: Objectives - Button@CHAT_BUTTON: - X: 120 - Y: 50 - Width: 120 - Height: 25 - Font: Bold - Text: Chat - Button@STATS_BUTTON: - X: PARENT_RIGHT - 2 * (WIDTH + 20) - Y: PARENT_BOTTOM - 45 - Width: 120 - Height: 25 - Font: Bold - Text: Statistics - Button@LEAVE_BUTTON: - X: PARENT_RIGHT - WIDTH - 20 - Y: PARENT_BOTTOM - 45 - Width: 120 - Height: 25 - Font: Bold - Text: Leave - Container@OBJECTIVES_PANEL: - Y: 65 - Width: PARENT_RIGHT - Container@DIALOG_CHAT_PANEL: - X: 20 - Y: 65 - Width: PARENT_RIGHT - 40 - Height: 370 - Logic: IngameChatLogic - Visible: False - Children: - Container@CHAT_CHROME: - Width: PARENT_RIGHT - Height: PARENT_BOTTOM - Children: - Button@CHAT_MODE: - Y: PARENT_BOTTOM - HEIGHT - Width: 50 - Height: 25 - Text: Team - Font: Bold - TextField@CHAT_TEXTFIELD: - X: 55 - Y: PARENT_BOTTOM - HEIGHT - Width: 427 - Height: 25 - ScrollPanel@CHAT_SCROLLPANEL: - Y: PARENT_BOTTOM - HEIGHT - 30 - Width: 482 - Height: 315 - ItemSpacing: 4 - Align: Bottom - Children: - Container@CHAT_TEMPLATE: - X: 2 - Width: PARENT_RIGHT-27 - Height: 16 - Children: - Label@NAME: - X: 3 - Width: 50 - Height: 15 - VAlign: Top - Label@TEXT: - X: 12 - Width: PARENT_RIGHT - 17 - Height: 15 - WordWrap: true - VAlign: Top diff --git a/mods/ra/mod.yaml b/mods/ra/mod.yaml index 4b09a8d6df..5b47ef8fd0 100644 --- a/mods/ra/mod.yaml +++ b/mods/ra/mod.yaml @@ -87,7 +87,6 @@ ChromeLayout: ./mods/ra/chrome/ingame-infobriefing.yaml ./mods/ra/chrome/ingame-infoobjectives.yaml ./mods/ra/chrome/ingame-infostats.yaml - ./mods/ra/chrome/ingame-leavemap.yaml ./mods/ra/chrome/ingame-menu.yaml ./mods/ra/chrome/ingame-observer.yaml ./mods/ra/chrome/ingame-observerstats.yaml diff --git a/mods/ts/mod.yaml b/mods/ts/mod.yaml index 152bed8c70..9ae2ee8785 100644 --- a/mods/ts/mod.yaml +++ b/mods/ts/mod.yaml @@ -148,7 +148,6 @@ ChromeLayout: ./mods/ts/chrome/ingame-player.yaml ./mods/ra/chrome/ingame-perf.yaml ./mods/ra/chrome/ingame-debug.yaml - ./mods/ra/chrome/ingame-leavemap.yaml ./mods/ra/chrome/mainmenu.yaml ./mods/ra/chrome/settings.yaml ./mods/ra/chrome/credits.yaml