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; } }
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); }