using System; using System.Collections.Generic; using System.Linq; using GameMessage; namespace GameFix.Poker { /// /// 多副510K /// public class CardStyle510KMultHelper : CardStyleBaseHelper { public override int CardStyle => DataCardConst.CardStyle510KMult; public override int CardCnt { get; } = 0; protected int _mult; protected List V_510K = new List(){DataCardConst.CardValue5, DataCardConst.CardValue10, DataCardConst.CardValueK}; /// /// 几幅起算 /// public CardStyle510KMultHelper(int mult) { CardCnt = mult * 3; _mult = mult; } internal override bool CheckStyleNormal(CardBaseGroup group, out CardStyleInfo cardStyleInfo) { cardStyleInfo = null; if (group.Cards.Count >= CardCnt) { var c510KList = CardFunc.Get510KList(group.Cards, _mult); if (c510KList.Count * 3 == group.Cards.Count) { cardStyleInfo = new CardStyleInfo(CardStyle, 0, c510KList.Count); cardStyleInfo.CustomInt = c510KList.Count; // 510K的个数 return true; } } return false; } internal override List GetAllEatTipGroup(CardBaseGroup group, CardStyleInfo eatStyleInfo) { return GetAllStyleCards(group, false); } internal override List GetAllStyleCards(CardBaseGroup group, bool isSplitCard) { List ret = new List(); var c510KList = CardFunc.Get510KList(group.SelfCards, _mult); if (c510KList.Count > 0) ret.Add(new CardGroupList(c510KList.SelectMany(x=>x))); return ret; } } }