• 大小: 0.01M
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2021-06-15
  • 语言: 其他
  • 标签: 其他  

资源简介

mahjong.zip

资源截图

代码片段和文件信息

#include “CMJ.h“ 
//构造 
CMJ::CMJ()
{
m_9LBD = false;
m_13Y = false;
m_4AK = false;
m_AKNum = 0;
m_MKNum = 0;
}

//析构 
CMJ::~CMJ()
{

}
//初始化 
void CMJ::Init()
{
m_9LBD = false;
m_13Y = false;
m_4AK = false;
m_AKNum = 0;
m_MKNum = 0;
}
//加入新牌并排序 
bool  CMJ::AddPai(int p_Type int p_Value)
{
int iSize = m_MyPAIVec[p_Type].size();
bool t_Find = false;
vector<  int >::iterator Iter;
for (Iter = m_MyPAIVec[p_Type].begin(); Iter != m_MyPAIVec[p_Type].end(); Iter++)
{
if ((*Iter)>p_Value)
{
m_MyPAIVec[p_Type].insert(Iter p_Value);
t_Find = true;
break;
}

}

if (t_Find == false)
{
m_MyPAIVec[p_Type].push_back(p_Value);
}
m_LastPAI.m_Type = p_Type;
m_LastPAI.m_Value = p_Value;

return true;
}

//取得对应的牌在牌墙的索引 
int CMJ::GetPaiIndex(int p_Type int p_Value)
{
int count = 0;
for (UINT i = 0; i < 6; i++)
{
vector<  int >::iterator Iter;
for (Iter = m_MyPAIVec[i].begin(); Iter != m_MyPAIVec[i].end(); Iter++)
{
if (p_Type == i && (*Iter) == p_Value)
{
return count;
}
count++;
}
}
return -1;
}
//打牌 
bool    CMJ::DelPai(int PaiIndex)
{
int count = 0;
for (UINT i = 0; i < 6; i++)
{
vector<  int >::iterator Iter;
for (Iter = m_MyPAIVec[i].begin(); Iter != m_MyPAIVec[i].end(); Iter++)
{
if (count == PaiIndex)
{
m_MyPAIVec[i].erase(Iter);
return true;
}
count++;
}
}
return false;
}
//删除牌 
bool    CMJ::DelPai(int p_Type int p_Value)
{
vector<  int >::iterator Iter;
for (Iter = m_MyPAIVec[p_Type].begin(); Iter != m_MyPAIVec[p_Type].end(); Iter++)
{
if ((*Iter) == p_Value)
{
m_MyPAIVec[p_Type].erase(Iter);
return true;
}
}
return false;
}
//清空牌 
void    CMJ::CleanUp()
{
for (UINT i = 0; i < 6; i++)
{
m_MyPAIVec[i].clear();
m_ChiPAIVec[i].clear();
m_PengPAIVec[i].clear();
m_GangPAIVec[i].clear();
}
}
//取得胡牌信息 
stGoodInfo      *CMJ::GetInfo()
{
return &m_GoodInfo;
}

//对所有的牌进行函数调用 
void    CMJ::PrintAllPai()
{
cout << “ “;
for (UINT i = 0; i < 13; i++)
{
cout << i << “  - “;
}
cout << endl;
int icount = 0;
//箭牌 
if (m_MyPAIVec[0].empty() == false)
{
vector<  int >::iterator Iter;
for (Iter = m_MyPAIVec[0].begin(); Iter != m_MyPAIVec[0].end(); Iter++)
{
switch (*Iter)
{
case 1:
cout << “[ 中]“;
break;
case 2:
cout << “[ 发]“;
break;
case 3:
cout << “[ 白]“;
break;

}
icount++;
}

}
cout << endl;
for (UINT i = 0; i < icount; i++)
{
cout << “     “;
}
//风牌 
if (m_MyPAIVec[1].empty() == false)
{
vector<  int >::iterator Iter;
for (Iter = m_MyPAIVec[1].begin(); Iter != m_MyPAIVec[1].end(); Iter++)
{
switch (*Iter)
{
case 1:
cout << “[ 东]“;
break;
case 2:
cout << “[ 南]“;
break;
case 3:
cout << “[ 西]“;
break;
case 4:
cout << “[ 北]“;
break;
}

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     文件        8060  2017-12-14 09:50  CMJ.h
     文件        1974  2017-12-14 15:01  CMJManage.cpp
     文件         739  2017-12-14 09:44  CMJManage.h
     文件       12507  2017-12-14 10:03  lala.cpp
     文件       91004  2017-12-18 14:58  CMJ.cpp

评论

共有 条评论