private void CheckSelfAddCardFunc(List <Int64> list, List <Int64> RevealCardList, Int64 mopai) { Int64 cardID = 0; int num = 3; int canGangCard = CardRules.CheckBySelfAddCardIsCanGang(list, mopai, laizi, GetLaizipi(laizi)); if (canGangCard != 0) { num++; cardID = canGangCard; } if (CardRules.PopEnable(RevealCardList, mopai, GetLaizipi(laizi)) == 3)//检测回头笑的情况 { num++; cardID = mopai; } if (CardRules.IsHupai(list, laizi, mopai, gameRule)) { num += 2;; } if (num != 3) { EventDispatcher.GetInstance().UIFrameWorkEventManager.TriggerEvent <Int64, Int64>(EventId.SelfCanPengOrGang, num, cardID);//自己摸牌判断是否可以用杠 } }
/// <summary> /// 别人出牌后,检测自己是否可以碰或者点杠 /// </summary> public int CheckOtherPlayCard(Int64 cardID, Int64 laizipi) { int temp = 0; int flag = 0;; PlayerData data; data = _infoList[(Int32)selfOrderIndex - 1]; if (CardRules.PopEnable(data.HandCardList, cardID, laizipi) == 2) { flag = 2; } else if (CardRules.PopEnable(data.HandCardList, cardID, laizipi) == 3) { flag = 3; if (cardID == laizipi) { flag = 4; } // EventDispatcher.GetInstance().UIFrameWorkEventManager.TriggerEvent<Int64, Int64>(EventId.SelfCanPengOrGang, 3, cardID); } if (CardRules.IsHupai(data.HandCardList, laizi, cardID, gameRule)) { // temp = 5; if (flag == 2) { flag = 7; } else if (flag == 3) { flag = 8; } else if (flag == 0) { flag = 9; } } // CheckSelfAddCard(cardID, laizi, laizipi); // CheckSelfByAddCard(); return(flag); }