Example #1
0
        IEnumerator Start()
        {
            Debug.Assert(backButton != null);

            yield return(StartCoroutine(App.Content.Account.Load()));

            //return if object died while waiting for answer
            if (this == null)
            {
                yield break;
            }

            if (Model == null)
            {
                Model = new Model.ConstellationPreset(
                    null,
                    new Model.PresetLimits(App.Content.GameSettings.NumAbilities, App.Content.GameSettings.NumClasses, App.Content.GameSettings.NumKits));
            }

            champion = App.Content.Account.ActiveChampion;
            List <Data.Skill.Skill> filteredSkillList = new List <Data.Skill.Skill>();

            foreach (var node in Model.Constellation.AbilityNodeList)
            {
                filteredSkillList.Add(node.Skill);
            }
            foreach (var node in Model.Constellation.KitNodeList)
            {
                filteredSkillList.Add(node.Skill);
            }
            if (champion != null)
            {
                foreach (var skill in champion.ClassPreset.SelectedClassList)
                {
                    filteredSkillList.Add(skill);
                }
            }
            else
            {
                foreach (var node in Model.Constellation.ClassNodeList)
                {
                    filteredSkillList.Add(node.Skill);
                }
            }

            backButton.onClick.AddListener(BackClicked);
            nodeTextualDetails.SetContext(new ViewModel.NodeTextualDetails(hovered));
            constellation.SetContext(new ViewModel.NodeMapConstellation(Model.Constellation, Model, filteredSkillList, hovered));
            presetColumn.SetContext(new ViewModel.PresetColumn(Model, hovered, ViewModel.PresetColumn.Mode.Edit));

            if (champion != null)
            {
                champion.PresetSaved += OnPresetSaved;
            }
        }
Example #2
0
        IEnumerator Start()
        {
            Debug.Assert(canvas != null);
            Debug.Assert(nodeTextualDetails != null);
            Debug.Assert(horizontalLayout != null);
            Debug.Assert(presetColumnPrefab != null);
            Debug.Assert(backButton != null);

            canvas.gameObject.SetActive(false);

            yield return(StartCoroutine(App.Content.Account.Load()));

            //return if object died while waiting for answer
            if (this == null)
            {
                yield break;
            }

            nodeTextualDetails.SetContext(new ViewModel.NodeTextualDetails(hovered));
            backButton.onClick.AddListener(BackClicked);

            //setup existing preset columns
            foreach (var preset in App.Content.Account.ActiveChampion.PresetList)
            {
                GameObject gob = Instantiate(presetColumnPrefab);
                gob.transform.SetParent(horizontalLayout.transform, false);
                View.PresetColumn viewPresetColumn = gob.GetComponent <View.PresetColumn>();

                viewPresetColumn.SetContext(new ViewModel.PresetColumn(
                                                preset,
                                                hovered,
                                                ViewModel.PresetColumn.Mode.Display));
            }

            //add empty column to add presets.
            {
                GameObject gob = Instantiate(presetColumnPrefab);
                gob.transform.SetParent(horizontalLayout.transform, false);
                View.PresetColumn viewPresetColumn = gob.GetComponent <View.PresetColumn>();

                viewPresetColumn.SetContext(new ViewModel.PresetColumn(
                                                null,
                                                hovered,
                                                ViewModel.PresetColumn.Mode.Addition));
            }

            ArrangeUI();

            //App.Content.Account.ActiveChampion.PresetAdded += OnPresetAdded;
            App.Content.Account.ActiveChampion.PresetRemoved += OnPresetRemoved;

            canvas.gameObject.SetActive(true);
        }