/// <summary> /// 返回卡编是否具有添加到点燃区域的权限 /// </summary> /// <param name="number">卡编</param> /// <returns>true|false</returns> private bool CheckAreaIg(string number) { var name = CardUtils.GetName(number); // 根据卡编获取卡片在点燃区的枚举类型 var igType = CardUtils.GetIgType(number); // 判断卡片是否超出自身添加数量以及点燃区总数量 var canAdd = (_deckVm.IgModels.AsParallel().Count(deckEntity => name.Equals(deckEntity.CName)) < CardUtils.GetMaxCount(number)) && (_deckVm.IgModels.Count < 20); switch (igType) { case Enums.IgType.Life: canAdd = canAdd && (_deckVm.IgModels.AsParallel().Count(deckEntity => CardUtils.IsLife(deckEntity.NumberEx)) < 4); break; case Enums.IgType.Void: canAdd = canAdd && (_deckVm.IgModels.AsParallel().Count(deckEntity => CardUtils.IsVoid(deckEntity.NumberEx)) < 4); break; case Enums.IgType.Normal: break; } return(canAdd); }
/// <summary> /// 返回卡编是否具有添加到非点燃区域的权限 /// </summary> /// <param name="number">卡编</param> /// <returns>true|false</returns> private bool CheckAreaUg(string number) { var name = CardUtils.GetName(number); return((_deckVm.UgModels.AsParallel().Count(deckEntity => name.Equals(deckEntity.CName)) < CardUtils.GetMaxCount(number)) && (_deckVm.UgModels.Count < 30)); }
private bool CheckCard(int id) { var name = CardUtils.GetName(id); var canAdd = !CardUtils.IsToekn(id) && (DeckList.Count < 40) && (DeckList.AsParallel().Count(deckModel => name.Equals(deckModel.Name)) < 3); return(canAdd); }