C++ 棋牌转换

//麻将数据
BYTE const CGameLogic::m_cbCardDataArray[MAX_REPERTORY]=
{
0x01,0x02,0x03,0x04,0x05,0x06,0x07,0x08,0x09, //万子
0x01,0x02,0x03,0x04,0x05,0x06,0x07,0x08,0x09, //万子
0x01,0x02,0x03,0x04,0x05,0x06,0x07,0x08,0x09, //万子
0x01,0x02,0x03,0x04,0x05,0x06,0x07,0x08,0x09, //万子
0x11,0x12,0x13,0x14,0x15,0x16,0x17,0x18,0x19, //索子
0x11,0x12,0x13,0x14,0x15,0x16,0x17,0x18,0x19, //索子
0x11,0x12,0x13,0x14,0x15,0x16,0x17,0x18,0x19, //索子
0x11,0x12,0x13,0x14,0x15,0x16,0x17,0x18,0x19, //索子
0x21,0x22,0x23,0x24,0x25,0x26,0x27,0x28,0x29, //同子
0x21,0x22,0x23,0x24,0x25,0x26,0x27,0x28,0x29, //同子
0x21,0x22,0x23,0x24,0x25,0x26,0x27,0x28,0x29, //同子
0x21,0x22,0x23,0x24,0x25,0x26,0x27,0x28,0x29, //同子
0x31,0x32,0x33,0x34,0x35,0x36,0x37, //字
0x31,0x32,0x33,0x34,0x35,0x36,0x37,
0x31,0x32,0x33,0x34,0x35,0x36,0x37,
0x31,0x32,0x33,0x34,0x35,0x36,0x37,

};


//麻将转换

BYTE CGameLogic::SwitchToCardIndex(BYTE cbCardData[], BYTE cbCardCount, BYTE cbCardIndex[MAX_INDEX])
{
//设置变量
ZeroMemory(cbCardIndex,sizeof(BYTE)*MAX_INDEX);


//转换麻将
for (BYTE i=0;i<cbCardCount;i++)
{
ASSERT(IsValidCard(cbCardData[i]));
cbCardIndex[SwitchToCardIndex(cbCardData[i])]++;
}


return cbCardCount;
}

//麻将转换
BYTE CGameLogic::SwitchToCardIndex(BYTE cbCardData)
{
ASSERT(IsValidCard(cbCardData));
return ((cbCardData&MASK_COLOR)>>4)*9+(cbCardData&MASK_VALUE)-1;  //把棋牌转换为对应的0~33
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值