示例#1
0
 public MenuColorSwapper(Config.Menu menuConfig, MenuLightsManager menuLightsManager, MainFlowCoordinator mainFlowCoordinator, CampaignFlowCoordinator campaignFlowCoordinator,
                         SoloFreePlayFlowCoordinator soloFreePlayFlowCoordinator, PartyFreePlayFlowCoordinator partyFreePlayFlowCoordinator, CenterStageScreenController centerStageScreenController)
 {
     _menuConfig                   = menuConfig;
     _menuLightsManager            = menuLightsManager;
     _mainFlowCoordinator          = mainFlowCoordinator;
     _campaignFlowCoordinator      = campaignFlowCoordinator;
     _centerStageScreenController  = centerStageScreenController;
     _soloFreePlayFlowCoordinator  = soloFreePlayFlowCoordinator;
     _partyFreePlayFlowCoordinator = partyFreePlayFlowCoordinator;
 }
示例#2
0
        /// <summary>
        /// Ajoute les routes du menu contextuel de maniere dynamique
        /// (à partir du fichier de conf recuperer via la méthode SetConfiguration())
        /// </summary>
        private void SetMenu()
        {
            //remise a jour du menu dans le cas d'une reactualisation
            contextMenuStrip.Items.Clear();

            Log.Debug("Config dynamique du menu");
            //recupere le menu de l'application
            Config.Menu menu = Config.items.menu;
            int         indexItem = 0, indexSubMenu = 0;

            //Création des sous menus Sinon on fait des sous-menu
            // Pour chaque item du menuItem on lui assigne son url
            foreach (Config.SubMenu subMenu in menu.subMenu)
            {
                ToolStripMenuItem itemMenu = new ToolStripMenuItem();
                itemMenu.Text = subMenu.libelle;
                itemMenu.Tag  = indexSubMenu++;
                itemMenu.DropDownItemClicked += new System.Windows.Forms.ToolStripItemClickedEventHandler(this.toolStripDropDownItem_DropDownItemClicked);
                foreach (Config.Item item in subMenu.items)
                {
                    Console.WriteLine("nom de l'item " + item.libelle);
                    ToolStripItem it = new ToolStripMenuItem();
                    it.Text = item.libelle;
                    it.Tag  = indexItem++;
                    // Blocage de l'item dans le cas ou il n'y a pas d'element
                    if (item.parametres == "" && item.programme == "" && item.url == "")
                    {
                        it.Enabled = false;
                    }

                    // Ajout des items dans le menu
                    if (menu.subMenu.Count == 1)
                    {
                        contextMenuStrip.Items.Add(it);
                    }

                    // Ajout des items dans le sous-menu
                    else
                    {
                        contextMenuStrip.Items.Add(itemMenu);
                        itemMenu.DropDownItems.Add(it);
                    }
                }
            }
        }
示例#3
0
        public void UpdateColors(Config.Menu menuConfig)
        {
            var defaultColor = CachedColor(Color);

            defaultMenuLights = CreateMenuLights(defaultColor);
            if (menuConfig.ColorPairs.TryGetValue("PlayersPlaceFeet", out Config.ColorPair playersFeetColorPair))
            {
                feetSprite.color = playersFeetColorPair.Enabled ? playersFeetColorPair.Color : defaultColor.color;
            }
            if (menuConfig.ColorPairs.TryGetValue("Freeplay", out Config.ColorPair freeplay))
            {
                if (freeplay.Enabled)
                {
                    var lights = CreateMenuLights(freeplay.Color);
                    _soloFreePlayFlowCoordinator.SetField("_defaultLightsPreset", lights);
                    _partyFreePlayFlowCoordinator.SetField("_defaultLightsPreset", lights);
                }
                else
                {
                    _soloFreePlayFlowCoordinator.SetField("_defaultLightsPreset", defaultMenuLights);
                    _partyFreePlayFlowCoordinator.SetField("_defaultLightsPreset", defaultMenuLights);
                }
            }
            if (menuConfig.ColorPairs.TryGetValue("Results", out Config.ColorPair results))
            {
                if (results.Enabled)
                {
                    var lights = CreateMenuLights(results.Color);
                    _soloFreePlayFlowCoordinator.SetField("_resultsClearedLightsPreset", lights);
                    _partyFreePlayFlowCoordinator.SetField("_resultsClearedLightsPreset", lights);
                }
                else
                {
                    _soloFreePlayFlowCoordinator.SetField("_resultsClearedLightsPreset", defaultMenuLights);
                    _partyFreePlayFlowCoordinator.SetField("_resultsClearedLightsPreset", defaultMenuLights);
                }
            }
            if (menuConfig.ColorPairs.TryGetValue("Campaigns", out Config.ColorPair campaigns))
            {
                if (campaigns.Enabled)
                {
                    var lights = CreateMenuLights(campaigns.Color);
                    _campaignFlowCoordinator.SetField("_defaultLightsPreset", lights);
                }
                else
                {
                    _campaignFlowCoordinator.SetField("_defaultLightsPreset", defaultMenuLights);
                }
            }
            _centerStageScreenController.SetField("_defaultMenuLightsPreset", defaultMenuLights);
            if (menuConfig.ColorPairs.TryGetValue("Multiplayer", out Config.ColorPair multiplayer))
            {
                if (multiplayer.Enabled)
                {
                    var lights = CreateMenuLights(multiplayer.Color);
                    _centerStageScreenController.SetField("_lobbyLightsPreset", lights);
                }
            }
            if (menuConfig.ColorPairs.TryGetValue("MultiplayerCountdown", out Config.ColorPair multiplayerCountdown))
            {
                if (multiplayerCountdown.Enabled)
                {
                    var lights = CreateMenuLights(multiplayerCountdown.Color);
                    _centerStageScreenController.SetField("_countdownMenuLightsPreset", lights);
                }
            }
            _mainFlowCoordinator.SetField("_defaultLightsPreset", defaultMenuLights);
        }
示例#4
0
 public SignColorSwapper(Config.Menu config, MenuEnvironmentManager menuEnvironmentManager)
 {
     _config = config;
     _menuEnvironmentManager = menuEnvironmentManager;
     _flickeringNeonSign     = menuEnvironmentManager.transform.GetComponentInChildren <FlickeringNeonSign>();
 }