Exemplo n.º 1
0
 void OnDestroy()
 {
     model.SkillSpecialized         -= OnSkillSpecialized;
     model.SkillSpecializationSaved -= OnSkillSpecializationSaved;
     model   = null;
     hovered = null;
 }
Exemplo n.º 2
0
        public SkillSpecializationField(Model.SkillSpecializer specializer_, Model.MetricUpgrade upgrade_, bool editable_)
        {
            Debug.Assert(specializer_ != null);
            Debug.Assert(upgrade_ != null);

            specializer   = specializer_;
            metricUpgrade = upgrade_;
            editable      = editable_;

            specializer.SkillSpecialized += OnLevelChanged;
        }
Exemplo n.º 3
0
        public SkillSpecializer(Model.SkillSpecializer specializer_, Model.SkillUpgrade skillUpgrade_, bool editable_, Model.HoveredSkill hovered_)
        {
            Debug.Assert(specializer_ != null);
            Debug.Assert(skillUpgrade_ != null);

            specializer    = specializer_;
            skillUpgrade   = skillUpgrade_;
            editable       = editable_;
            hovered        = hovered_;
            scale          = new Model.Json();
            scale["scale"] = 1.0f;
        }
Exemplo n.º 4
0
        IEnumerator Start()
        {
            Debug.Assert(nodeTextualDetails != null);
            Debug.Assert(specializer != null);
            Debug.Assert(backButton != null);
            Debug.Assert(championHeadline != null);
            Debug.Assert(applyButton != null);
            Debug.Assert(SelectedSkill != null);

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

            if (this == null)
            {
                yield break;
            }

            //model
            var constellationModel = App.Content.ConstellationList[App.Content.GameSettings.Json["constellation"]];
            List <Data.Skill.Skill> filteredSkillList = new List <Data.Skill.Skill>();

            foreach (var node in constellationModel.AbilityNodeList)
            {
                filteredSkillList.Add(node.Skill);
            }
            foreach (var node in constellationModel.KitNodeList)
            {
                filteredSkillList.Add(node.Skill);
            }
            foreach (var skill in App.Content.Account.ActiveChampion.ClassPreset.SelectedClassList)
            {
                filteredSkillList.Add(skill);
            }
            hovered.Skill = SelectedSkill;
            var skillUpgrade = App.Content.Account.ActiveChampion.Upgrades[SelectedSkill];

            model = new Model.SkillSpecializer(App.Content.Account.ActiveChampion, skillUpgrade);
            model.SkillSpecialized         += OnSkillSpecialized;
            model.SkillSpecializationSaved += OnSkillSpecializationSaved;
            applyButton.clickEvent         += () => { model.Apply(); };

            //view
            backButton.onClick.AddListener(() => { App.Scene.Load("SpecializeOverview"); });
            nodeTextualDetails.SetContext(new ViewModel.NodeTextualDetailsSpecialize(model));
            specializer.SetContext(
                new ViewModel.SkillSpecializer(
                    model,
                    skillUpgrade,
                    true,
                    hovered));
            yield return(championHeadline.Start());

            OnSkillSpecialized();
        }
        public NodeTextualDetailsSpecialize(Model.SkillSpecializer specializer_)
        {
            Debug.Assert(specializer_ != null);

            specializer = specializer_;
            specializer.SkillSpecialized += OnHoveredChanged;

            //Map.Add(Data.Skill.Metric.ECategory.Misc, Misc);
            //Map.Add(Data.Skill.Metric.ECategory.Desc, Desc);
            //Map.Add(Data.Skill.Metric.ECategory.Modifier, Modifier);
            //Map.Add(Data.Skill.Metric.ECategory.Projectile, Projectile);
            //Map.Add(Data.Skill.Metric.ECategory.Charge, Charge);
            //Map.Add(Data.Skill.Metric.ECategory.Stack, Stack);
            //Map.Add(Data.Skill.Metric.ECategory.Unit, Unit);
            //Map.Add(Data.Skill.Metric.ECategory.Kit, Kit);

            OnHoveredChanged();
        }