public List <SelectionPouvoirViewModel> GetSelectedPowers(ChangeLevelViewModel changeLevelViewModel) { List <SelectionPouvoirViewModel> pouvoirs = new List <SelectionPouvoirViewModel>(); foreach (Power pouvoir in KTContext.Db.Powers.Where(p => p.SpecialistId == SpecialistId).Include(p => p.Previews).OrderBy(p => p.Id)) { SelectionPouvoirViewModel selection = new SelectionPouvoirViewModel(changeLevelViewModel); selection.IsSelected = MemberPowers.Any(p => p.PowerId == pouvoir.Id); selection.Pouvoir = pouvoir; pouvoirs.Add(selection); } if (SpecialistId != null) { foreach (SelectionPouvoirViewModel pvm in pouvoirs) { pvm.Parent = pouvoirs.FirstOrDefault(p => p.Pouvoir.Id == pvm.Pouvoir.PreviewsId); pvm.Childrens = pouvoirs.Where(p => p.Pouvoir.PreviewsId == pvm.Pouvoir.Id).ToList(); pvm.Brothers = pouvoirs.Where(p => p.Pouvoir.PreviewsId == pvm.Pouvoir.PreviewsId && p.Pouvoir.Id != pvm.Pouvoir.Id).ToList(); } var first = pouvoirs.Where(p => p.Pouvoir.Previews == null).First(); first.IsSelected = true; first.IsVisible = false; } return(pouvoirs); }
public bool Identical(Member member) { return(member.MemberWeapons.Select(a => a.WeaponId).SequenceEqual(MemberWeapons.Select(a => a.WeaponId)) && member.MemberPowers.Select(a => a.PowerId).SequenceEqual(MemberPowers.Select(a => a.PowerId)) && member.ModelProfile.Id == ModelProfile.Id && member.Level == Level && member.Specialist == Specialist); }