private static void OnServerMessageActionAllowed(Player player, MsgAllowAction msg) { //throw new NotImplementedException(); if (msg.ActionChairID == player.ChairId) { // my actions player.MyWnd.OnAllowedActions(msg); } }
public void OnAllowedActions(MsgAllowAction msg) { HideAllActionButtons(); CurrentAllowPlayerAction = msg; CurrentAllowPlayerReAction = null; var actions = msg.AllowedActions; if ((actions & (int)ActionType.EnumActionTypeDiscard) != 0) { BtnAction5.Visibility = Visibility.Visible; BtnAction5.Content = "出牌"; BtnAction5.Tag = (int)ActionType.EnumActionTypeDiscard; if (MyOwner.CheckBoxAutoAction.IsChecked == false && IsAutoX) { //var handTips = msg.tipsForAction; //// 自动打牌 //if ((actions & (int)ActionType.enumActionType_FirstReadyHand) != 0) //{ // if (!IsBandker) // { // // 绝对不听牌 // OnNonBankerTakeActionFirstHand(0); // } // else // { // OnTakeActionDiscardTile(handTips[0].targetTile, 0); // } //} //else if ((actions & (int)ActionType.enumActionType_DISCARD) != 0) //{ // OnTakeActionDiscardTile(handTips[0].targetTile); //} int specialCardID = -1; if (CurrentAllowPlayerAction.TimeoutInSeconds > 255) { specialCardID = (int)CardID.R3H; } //var current = AgariIndex.SearchLongestDiscardCardHand(TilesHandList, specialCardID); //if (current == null) //{ // MessageBox.Show("auto discard: BIG BIG WORLD"); // throw new System.Exception("Huge bug, darling"); //} //OnTakeActionDiscardTile(current.cards); HideAllActionButtons(); } } }