void OnDestroy() { model.SkillSpecialized -= OnSkillSpecialized; model.SkillSpecializationSaved -= OnSkillSpecializationSaved; model = null; hovered = null; }
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; }
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; }
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(); }