Apply desat effect on ingame menu too
This commit is contained in:
@@ -13,6 +13,7 @@ using OpenRA.Widgets;
|
||||
using System.Drawing;
|
||||
using System.Collections.Generic;
|
||||
using System;
|
||||
using OpenRA.Mods.RA;
|
||||
|
||||
namespace OpenRA.Mods.Cnc.Widgets
|
||||
{
|
||||
@@ -88,6 +89,8 @@ namespace OpenRA.Mods.Cnc.Widgets
|
||||
[ObjectCreator.Param] Action onExit)
|
||||
{
|
||||
menu = widget.GetWidget("INGAME_MENU");
|
||||
world.WorldActor.Trait<DesaturatedPaletteEffect>().Active = true;
|
||||
|
||||
var onQuit = (Action)(() =>
|
||||
{
|
||||
Game.DisconnectOnly();
|
||||
@@ -109,6 +112,7 @@ namespace OpenRA.Mods.Cnc.Widgets
|
||||
menu.GetWidget<CncMenuButtonWidget>("RESUME_BUTTON").OnClick = () =>
|
||||
{
|
||||
Widget.RootWidget.RemoveChild(menu);
|
||||
world.WorldActor.Trait<DesaturatedPaletteEffect>().Active = false;
|
||||
onExit();
|
||||
};
|
||||
}
|
||||
|
||||
@@ -17,6 +17,7 @@ using System;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using OpenRA.GameRules;
|
||||
using OpenRA.Mods.RA;
|
||||
|
||||
namespace OpenRA.Mods.Cnc.Widgets
|
||||
{
|
||||
@@ -32,8 +33,11 @@ namespace OpenRA.Mods.Cnc.Widgets
|
||||
MenuType Menu = MenuType.Main;
|
||||
|
||||
[ObjectCreator.UseCtor]
|
||||
public CncMenuLogic([ObjectCreator.Param] Widget widget)
|
||||
public CncMenuLogic([ObjectCreator.Param] Widget widget,
|
||||
[ObjectCreator.Param] World world)
|
||||
{
|
||||
world.WorldActor.Trait<DesaturatedPaletteEffect>().Active = true;
|
||||
|
||||
// Root level menu
|
||||
var mainMenu = widget.GetWidget("MAIN_MENU");
|
||||
mainMenu.IsVisible = () => Menu == MenuType.Main;
|
||||
@@ -105,7 +109,8 @@ namespace OpenRA.Mods.Cnc.Widgets
|
||||
void RemoveShellmapUI()
|
||||
{
|
||||
Widget.CloseWindow();
|
||||
Widget.RootWidget.RemoveChild(Widget.RootWidget.GetWidget("MENU_BACKGROUND"));
|
||||
var root = Widget.RootWidget.GetWidget("MENU_BACKGROUND");
|
||||
root.Parent.RemoveChild(root);
|
||||
}
|
||||
|
||||
void OpenLobbyPanel(MenuType menu)
|
||||
|
||||
@@ -19,9 +19,12 @@ namespace OpenRA.Mods.RA
|
||||
|
||||
public class DesaturatedPaletteEffect : IPaletteModifier
|
||||
{
|
||||
// Doing this every frame is stupid
|
||||
public bool Active;
|
||||
|
||||
// TODO: Doing this every frame is stupid
|
||||
public void AdjustPalette(Dictionary<string,Palette> palettes)
|
||||
{
|
||||
if (!Active) return;
|
||||
var excludePalettes = new List<string>(){"cursor", "chrome", "colorpicker", "shroud", "fog"};
|
||||
foreach (var pal in palettes)
|
||||
{
|
||||
|
||||
@@ -1013,7 +1013,6 @@ Rules:
|
||||
-MPStartLocations:
|
||||
-CrateSpawner:
|
||||
CncShellmapScript:
|
||||
DesaturatedPaletteEffect:
|
||||
LoadWidgetAtGameStart:
|
||||
Widget:MENU_BACKGROUND
|
||||
LST:
|
||||
|
||||
@@ -46,6 +46,7 @@ Player:
|
||||
World:
|
||||
LoadWidgetAtGameStart:
|
||||
Widget: INGAME_ROOT
|
||||
DesaturatedPaletteEffect:
|
||||
ScreenShaker:
|
||||
NukePaletteEffect:
|
||||
CncWaterPaletteRotation:
|
||||
|
||||
Reference in New Issue
Block a user