/// <summary> /// 设置碰吃杠牌动作数据 /// </summary> /// <param name="handStyle"></param> /// <param name="isMoveHand"></param> /// <param name="moveHandDist"></param> /// <param name="pcgPaiType"></param> /// <param name="mjfaceValues"></param> /// <param name="paiLayoutIdx"></param> /// <param name="targetSeatIdx"></param> /// <param name="targetMjIdx"></param> /// <param name="actionCombineNum"></param> /// <param name="opCmdNode"></param> public void SetPengChiGangPaiData(PlayerType handStyle, bool isMoveHand, float moveHandDist, PengChiGangPaiType pcgPaiType, MahjongFaceValue[] mjfaceValues, int paiLayoutIdx, int targetSeatIdx, Vector3Int targetMjIdx, EffectFengRainEtcType fengRainEtcEffect, ActionCombineNum actionCombineNum, LinkedListNode <MahjongMachineCmd> opCmdNode = null) { this.handStyle = handStyle; pcgPaiIsMoveHand = isMoveHand; pcgPaiMoveHandDist = moveHandDist; this.pcgPaiType = pcgPaiType; this.pcgPaiMjfaceValues = mjfaceValues; this.pcgPaiLayoutIdx = paiLayoutIdx; this.pcgPaiTargetSeatIdx = targetSeatIdx; this.pcgPaiTargetMjIdx = targetMjIdx; this.fengRainEtcEffect = fengRainEtcEffect; this.actionCombineNum = actionCombineNum; this.opCmdNode = opCmdNode; }
/// <summary> /// 碰吃杠牌 /// </summary> /// <param name="seatIdx"></param> /// <param name="handStyle"></param> /// <param name="isMoveHand"></param> /// <param name="moveHandDist"></param> /// <param name="faceValues"></param> /// <param name="actionCombineNum"></param> public void PengChiGangPai( int seatIdx, PlayerType handStyle, bool isMoveHand, float moveHandDist, MahjongFaceValue[] faceValues, PengChiGangPaiType pcgType, int targetSeatIdx, Vector3Int targetMjIdx, EffectFengRainEtcType fengRainEtcEffect, ActionCombineNum actionCombineNum, LinkedListNode <MahjongMachineCmd> opCmdNode = null) { StopSelectPaiActionState(seatIdx); if (playerStateData[seatIdx].playerHandActionState != HandActionState.ACTION_END) { RemoveHandActionOpCmd(seatIdx, opCmdNode); return; } int idx = 0; if (pcgType == PengChiGangPaiType.PENG) { idx = Random.Range(0, 3); } else { idx = Random.Range(0, 4); } playerStateData[seatIdx].SetPengChiGangPaiData( handStyle, isMoveHand, moveHandDist, pcgType, faceValues, idx, targetSeatIdx, targetMjIdx, fengRainEtcEffect, actionCombineNum, opCmdNode); playerStateData[seatIdx].SetPlayerState(HandActionState.PENG_CHI_GANG_PAI_START, Time.time, -1); }