Ejemplo n.º 1
0
        private async void GenerateTalentListAsync(List <ITalent> list)
        {
            if (list == null || list.Count == 0)
            {
                return;
            }
            if (Game.Settings.OrderTalentAlphabetic)
            {
                list = list.OrderBy(x => x.ToString()).ToList();
            }
            else
            {
                list = list.OrderBy(x => x.OrginalPosition).ToList();
            }

            DiceChanger helper = viewModel.DiceChanger;

            talentList = new List <TalentViewModel>();
            var obList = new ObservableCollection <TalentViewModel>();

            //Dieser Code ist verbesserbar, aktuell nur funktional wenn die liste nur einen typen enthält
            if (typeof(AbstractTalentFighting).IsAssignableFrom(list[0].GetType()))
            {
                viewModel.Header.ATVisibility        = true;
                viewModel.Header.PABLVisibility      = true;
                viewModel.Header.ProbeTextVisibility = false;

                if (typeof(TalentRange).IsAssignableFrom(list[0].GetType()))
                {
                    viewModel.Header.PABLVisibility = false;
                }
            }
            if (typeof(AbstractTalentGeneral).IsAssignableFrom(list[0].GetType()))
            {
                viewModel.Header.ATVisibility        = false;
                viewModel.Header.PABLVisibility      = false;
                viewModel.Header.ProbeTextVisibility = true;
            }

            foreach (var item in list)
            {
                var innerItem = new TalentViewModel(helper)
                {
                    Talent = item
                };
                talentList.Add(innerItem);
                obList.Add(innerItem);
            }

            await Windows.ApplicationModel.Core.CoreApplication.MainView.CoreWindow.Dispatcher.RunAsync(CoreDispatcherPriority.Normal, () =>
            {
                viewModel.TalentList = obList;
                viewModel.IsLoading  = false;
            });
        }
Ejemplo n.º 2
0
        public List <Talent> GetTalentsBasedOnAttributeName(string attribute)
        {
            //Uncomment line below when talents are located in DB
            //List<Talent> TalentsBasedOnAttribute = _context.Talents.Where(t => t.TalentIsBasedOn == attribute).ToList();
            var           TalentsBasedOnAttribute = new TalentViewModel();
            List <Talent> TalentsData             = TalentsBasedOnAttribute.TalentData;
            List <Talent> AttributeTalentsData    = TalentsData.Where(t => t.TalentIsBasedOn == attribute).ToList();

            //Manage ArgumentNullExceptions
            return(TalentsData);
        }
Ejemplo n.º 3
0
 public void SetTalent(TalentViewModel model)
 {
     this.Talent = model;
 }