Ejemplo n.º 1
0
        // F e a t u r e s

        private void LoadBlocks()
        {
            hud.LoadBlock(Path.Combine(Publics.General.MyDataPath, @"Other\HUD Positions.json"));
            base.Invoke(new Action(() =>
            {
                AdvTree1.BeginUpdate();
                AdvTree1.Nodes.Clear();
            }));
            LoadBlock(hud.Block, AdvTree1.Nodes);
            base.Invoke(new Action(() =>
            {
                AdvTree1.ExpandAll();
                AdvTree1.EndUpdate();
            }));
        }
        private void LoadList()
        {
            AdvTree1.BeginUpdate();
            AdvTree1.Nodes.Clear();

            var nVanilla = new Node("Vanilla")
            {
                Expanded = true
            };
            var nCustom = new Node("Custom")
            {
                Expanded = true
            };
            Node nToSelect = null;

            foreach (var behav in romManager.GlobalBehaviorBank.Behaviors)
            {
                var n = GetNode(behav);

                if (behav.Config.IsVanilla)
                {
                    nVanilla.Nodes.Add(n);
                }
                else
                {
                    nCustom.Nodes.Add(n);
                }

                if (behav.Config == Behavior)
                {
                    nToSelect = n;
                }
            }

            if (nCustom.Nodes.Count > 0)
            {
                AdvTree1.Nodes.Add(nCustom);
            }
            AdvTree1.Nodes.Add(nVanilla);

            AdvTree1.EndUpdate();

            if (nToSelect is object)
            {
                AdvTree1.SelectedNode = nToSelect;
                nToSelect.EnsureVisible();
            }
        }
Ejemplo n.º 3
0
        private void LoadList()
        {
            Node nToSelect = null;

            AdvTree1.BeginUpdate();
            AdvTree1.Nodes.Clear();

            // Global Object Bank
            goThourghtBank(romManager.GlobalModelBank, "Global Object Bank", AdvTree1.Nodes);

            // Local Object Banks
            var nlob = new Node("Local Object Bank")
            {
                Expanded = true
            };

            foreach (var lvl in romManager.Levels)
            {
                string levelName = romManager.RomConfig.GetLevelConfig(lvl.LevelID)?.LevelName;
                if (string.IsNullOrEmpty(levelName))
                {
                    levelName = romManager.LevelInfoData.FirstOrDefault(n => n.ID == lvl.LevelID).Name;
                }
                goThourghtBank(lvl.LocalObjectBank, levelName, nlob.Nodes);
            }
            if (nlob.Nodes.Count > 0 || isBankPicker)
            {
                AdvTree1.Nodes.Add(nlob);
            }

            void goThourghtBank(CustomModelBank bank, string bankName, NodeCollection collection)
            {
                var n = new Node(bankName)
                {
                    Tag = bank
                };

                if (!isBankPicker)
                {
                    foreach (var mdl in bank.Models)
                    {
                        var nMdl = GetNode(mdl);
                        n.Nodes.Add(nMdl);
                        if (mdl.Config == Model)
                        {
                            nToSelect = nMdl;
                        }
                    }
                }
                else if (bank == SelectedBank)
                {
                    nToSelect = n;
                }

                if (n.Nodes.Count > 0 || isBankPicker)
                {
                    collection.Add(n);
                }
            }

            AdvTree1.EndUpdate();

            if (nToSelect is object)
            {
                AdvTree1.SelectedNode = nToSelect;
                nToSelect.EnsureVisible();
            }
        }