コード例 #1
0
ファイル: GameLogic.cpp プロジェクト: 275958081/netfox
//吃胡分析
BYTE CGameLogic::AnalyseChiHuCard(BYTE cbCardIndex[MAX_INDEX], tagWeaveItem WeaveItem[], BYTE cbWeaveCount, BYTE cbCurrentCard, WORD wChiHuRight, tagChiHuResult & ChiHuResult,BYTE cbGoldCard[],BYTE cbGoldCount,bool &bGoldCardEye)
{
	//变量定义
	WORD wChiHuKind=CHK_NULL;
	static CAnalyseItemArray AnalyseItemArray;

	//设置变量
	AnalyseItemArray.RemoveAll();
	ZeroMemory(&ChiHuResult,sizeof(ChiHuResult));
	bGoldCardEye = false;

	//构造麻将
	BYTE cbCardIndexTemp[MAX_INDEX];
	CopyMemory(cbCardIndexTemp,cbCardIndex,sizeof(cbCardIndexTemp));

	//插入麻将
	if (cbCurrentCard!=0) cbCardIndexTemp[SwitchToCardIndex(cbCurrentCard)]++;	

	//金牌数目
	BYTE bGetCount=0;
	bGetCount = GetGoldCardCount(cbCardIndexTemp,WeaveItem,cbWeaveCount,cbGoldCard,cbGoldCount);


	//特殊牌型
	//天游牌型
	if(bGetCount==3)wChiHuKind|=CHK_SKY_SWIM;
	//单游牌型
	if(wChiHuRight==CHR_SINGLE_SWIM)wChiHuKind|=CHK_SINGLE_SWIM;
	//双游牌型
	else if(wChiHuRight==CHR_DOUBLE_SWIM)wChiHuKind|=CHK_DOUBLE_SWIM;
	//三游牌型
	else if(wChiHuRight==CHR_THREE_SWIM)wChiHuKind|=CHK_THREE_SWIM;

	
	/*if(bGetCount==1)
		wChiHuRight|=CHR_SINGLE_SWIM;//游金权位
	else if(bGetCount==2)
		wChiHuRight|=CHR_DOUBLE_SWIM;//双游权位
	else if(bGetCount>2)
		wChiHuRight|=CHR_THREE_SWIM;//三游权位*/

	//分析麻将
	AnalyseCard(cbCardIndexTemp,WeaveItem,cbWeaveCount,AnalyseItemArray);

	//胡牌分析
	if (AnalyseItemArray.GetCount()>0)
	{
		//眼牌需求
		bool bNeedSymbol=((wChiHuRight&0xFF00)==0);

		//牌型分析
		for (INT_PTR i=0;i<AnalyseItemArray.GetCount();i++)
		{
			//变量定义
			bool bLianCard=false,bPengCard=false;
			tagAnalyseItem * pAnalyseItem=&AnalyseItemArray[i];

			//牌眼类型
			BYTE cbEyeValue=pAnalyseItem->cbCardEye&MASK_VALUE;

			//牌型分析
			for (BYTE j=0;j<CountArray(pAnalyseItem->cbWeaveKind);j++)
			{
				BYTE cbWeaveKind=pAnalyseItem->cbWeaveKind[j];				
				bPengCard=((cbWeaveKind&(WIK_GANG|WIK_PENG))!=0)?true:bPengCard;
				bLianCard=((cbWeaveKind&(WIK_LEFT|WIK_CENTER|WIK_RIGHT))!=0)?true:bLianCard;
				
			}


			//牌眼分析
			for(BYTE i=0;i<cbGoldCount;i++)
			{
				if(pAnalyseItem->cbCardEye==cbGoldCard[i])
				{
					bGoldCardEye=true;
					break;
				}
			}

			//牌型判断
			ASSERT((bLianCard==true)||(bPengCard==true));
			
			if (bLianCard==true) wChiHuKind|=CHK_PING_HU;
			else if ((bLianCard==false)&&(bPengCard==true)) wChiHuKind|=CHK_PING_HU;	
			
			//碰碰牌型
			//if ((bLianCard==false)&&(bPengCard==true)) wChiHuKind|=CHK_PENG_PENG;		

			
		
		}
		
	}	

	//结果判断
	if (wChiHuKind!=CHK_NULL)
	{
		//设置结果
		ChiHuResult.wChiHuKind=wChiHuKind;
		ChiHuResult.wChiHuRight=wChiHuRight;

		return WIK_CHI_HU;
	}


	return WIK_NULL;
}
コード例 #2
0
ファイル: GameLogic.cpp プロジェクト: vsanth/kkj
//吃胡分析
BYTE CGameLogic::AnalyseChiHuCard(const BYTE cbCardIndex[MAX_INDEX], const tagWeaveItem WeaveItem[], BYTE cbWeaveCount, BYTE cbCurrentCard, CChiHuRight &ChiHuRight)
{

	//变量定义
	BYTE cbChiHuKind=WIK_NULL;
	CAnalyseItemArray AnalyseItemArray;

	//设置变量
	AnalyseItemArray.RemoveAll();
	ChiHuRight.SetEmpty();

	//构造扑克
	BYTE cbCardIndexTemp[MAX_INDEX];
	CopyMemory(cbCardIndexTemp,cbCardIndex,sizeof(cbCardIndexTemp));


	//构造扑克
	BYTE cbCardIndexTemp2[MAX_INDEX];
	ZeroMemory(cbCardIndexTemp2,sizeof(cbCardIndexTemp2));
	m_cbGenCount = 0;
	BYTE cbFanShu = 0;
	CChiHuRight tmpChiHuRight;
	

	//cbCurrentCard一定不为0			!!!!!!!!!
	ASSERT( cbCurrentCard != 0 );
	if( cbCurrentCard == 0 ) return WIK_NULL;

	/*
	//	特殊番型
	*/

	//七小对牌
	if( IsQiXiaoDui(cbCardIndex,WeaveItem,cbWeaveCount,cbCurrentCard) ) 
	{
		ChiHuRight |= CHR_QI_XIAO_DUI;
	}

	if( !ChiHuRight.IsEmpty() )
		cbChiHuKind = WIK_CHI_HU;

	//插入扑克
	if (cbCurrentCard!=0)
		cbCardIndexTemp[SwitchToCardIndex(cbCurrentCard)]++;

	//必须缺一门
	if( IsHuaZhu(cbCardIndexTemp,WeaveItem,cbWeaveCount) )
	{
		return WIK_NULL;
	}



	//胡牌分析
 if((ChiHuRight&CHR_QI_XIAO_DUI).IsEmpty())
 {
		//分析扑克
	AnalyseCard(cbCardIndexTemp,WeaveItem,cbWeaveCount,AnalyseItemArray);
	if (AnalyseItemArray.GetCount()>0)
	{
		cbChiHuKind = WIK_CHI_HU;
	
		//牌型分析
		for (INT_PTR i=0;i<AnalyseItemArray.GetCount();i++)
		{
			//变量定义
			tagAnalyseItem * pAnalyseItem=&AnalyseItemArray[i];


			ZeroMemory(cbCardIndexTemp2,sizeof(cbCardIndexTemp2));
			cbCardIndexTemp2[SwitchToCardIndex(pAnalyseItem->cbCardEye)] = 2;
			BYTE cbTmpFanShu = 0;
			tmpChiHuRight.SetEmpty();
			for (BYTE k =0;k<4;k++)
			{

				if (pAnalyseItem->cbWeaveKind[k] == WIK_LEFT)
				{
					BYTE cbTmpIndex =  SwitchToCardIndex(pAnalyseItem->cbCenterCard[k]);
					for (BYTE t = 0;t < 3;t ++)
					{
						cbCardIndexTemp2[cbTmpIndex]++;
						cbTmpIndex++;
					}
					
				}else if (pAnalyseItem->cbWeaveKind[k] == WIK_PENG || pAnalyseItem->cbWeaveKind[k] == WIK_TIE_PAI)
				{
					BYTE cbTmpIndex =  SwitchToCardIndex(pAnalyseItem->cbCenterCard[k]);
					for (BYTE t = 0;t < 3;t ++)
					{
						cbCardIndexTemp2[cbTmpIndex]++; 
					}
				}else if (pAnalyseItem->cbWeaveKind[k] == WIK_GANG)
				{
					BYTE cbTmpIndex =  SwitchToCardIndex(pAnalyseItem->cbCenterCard[k]);
					for (BYTE t = 0;t < 4;t ++)
					{
						cbCardIndexTemp2[cbTmpIndex]++; 
					}

				}

			}


	//  分析根
		BYTE tmpCount = 0;
		for (BYTE k = 0;k<MAX_INDEX;k++)
		{
			// 分析碰贴牌,在手上牌中查找是否有根
			if (cbCardIndexTemp2[k] == 4)
			{
				tmpCount++;
				cbTmpFanShu++;
			}
	
		}
	
		// 判断是否有3个牌精
		if (HaveThreePaiJin(cbCardIndexTemp2,WeaveItem,cbWeaveCount))
		{
			tmpChiHuRight |= CHR_WITH_THREE_PAI_JIN;
			cbTmpFanShu = (cbTmpFanShu == 0)?2:(cbTmpFanShu+=1);
			
		}


			/*
			//	判断番型
			*/
			//碰碰和
			if( IsPengPeng(pAnalyseItem) ) 
			{
				tmpChiHuRight |= CHR_DA_DUI_ZI;
				cbTmpFanShu+=3;
			}



			if(cbTmpFanShu>cbFanShu)
			{
				cbFanShu = cbTmpFanShu;
				DWORD wRightData =0;
				tmpChiHuRight.GetRightData(&wRightData, MAX_RIGHT_COUNT);
				ChiHuRight.SetRightData(&wRightData, MAX_RIGHT_COUNT);
				m_cbGenCount = tmpCount;

			}
	
#if 0

			//带幺
			if( IsDaiYao(pAnalyseItem) )
				ChiHuRight |= CHR_DAI_YAO;
			//将对
			if( IsJiangDui(pAnalyseItem) )
				ChiHuRight |= CHR_JIANG_DUI;
#endif 
		}
	}
 }
	


	if(!(ChiHuRight&CHR_QI_XIAO_DUI).IsEmpty())
	{
		BYTE cbTingYongCardCount = cbCardIndexTemp[m_cbMagicIndex];
		BYTE cbOneCount = 0,cbThreeCount = 0;

		ChiHuRight &=~CHR_DA_DUI_ZI;
		for(BYTE k = 0;k<MAX_INDEX-7;k++)
		{

			if( k == m_cbMagicIndex ) continue;

			if(cbCardIndexTemp[k] == 4)
			{
				m_cbGenCount++;
			}

			BYTE cbCardCount=cbCardIndexTemp[k];
			if(cbCardCount == 1)
			{
				cbOneCount++; 
			}else if(cbCardCount == 3)
			{
				cbThreeCount++; 
			}


		}


		switch (cbTingYongCardCount)
		{
		case 1:
			if (cbThreeCount == 1)
				m_cbGenCount++;
			break;
		case 2:
			if (cbThreeCount == 2 && cbOneCount == 0)
				m_cbGenCount+=2;
			else if (cbThreeCount == 1 && cbOneCount == 1)
				m_cbGenCount++;

			break;
		case 3:
			if (cbThreeCount == 1 && cbOneCount == 0)
				m_cbGenCount+=2;
			else if (cbThreeCount == 3 && cbOneCount == 0)
				m_cbGenCount+=cbThreeCount;
			else if ( cbThreeCount == 2 && cbOneCount == 1)
				m_cbGenCount+=cbThreeCount;
			else if (cbThreeCount == 1 && cbOneCount == 2)
				m_cbGenCount+=cbThreeCount;

			break;
		case 4:
			if (cbThreeCount == 2 && cbOneCount == 0)
 				m_cbGenCount+=3;
			else if (cbThreeCount == 1 && cbOneCount == 1)
				m_cbGenCount+=2;
			else if ( cbThreeCount == 2 && cbOneCount == 2)
				m_cbGenCount+=cbThreeCount;
			else if (cbThreeCount == 1 && cbOneCount == 3)
				m_cbGenCount+=cbThreeCount;

			break;
		default:
			break;
		}

	}
	

	if( cbChiHuKind == WIK_CHI_HU )
	{
		//清一色牌
		if( IsQingYiSe(cbCardIndex,WeaveItem,cbWeaveCount,cbCurrentCard) )
		{
			ChiHuRight |= CHR_QING_YI_SE;
		}

		if (!HaveMagicCard(cbCardIndex,WeaveItem,cbWeaveCount) && IsMagicCard(cbCurrentCard)==false) // 缺听用
		{
			ChiHuRight |= CHR_WITHOUT_TING_YONG;

		}

		if (IsDaDanDiao(cbCardIndex,cbWeaveCount)) // 大单吊
  	    {
			ChiHuRight |= CHR_DA_DAN_DIAO;
		}



		switch(m_cbGenCount)
		{
			case 1:
				ChiHuRight|= CHR_GENG_COUNT_ONE;
				break;
			case 2:
				ChiHuRight|= CHR_GENG_COUNT_TWO;
				break;
			case 3:
				ChiHuRight|= CHR_GENG_COUNT_THREE;
				break;
			case 4:
				ChiHuRight|= CHR_GENG_COUNT_FOUR;
				break;
						
		}

		//素番
		if( cbChiHuKind == WIK_CHI_HU && ChiHuRight.IsEmpty() )
			ChiHuRight |= CHR_SHU_FAN;

	}

	return cbChiHuKind;
}
コード例 #3
0
ファイル: GameLogic.cpp プロジェクト: Michael-Z/qipai-game
//吃胡分析
BYTE CGameLogic::AnalyseChiHuCard(const BYTE cbCardIndex[MAX_INDEX], const tagWeaveItem WeaveItem[], BYTE cbWeaveCount, BYTE cbCurrentCard, CChiHuRight &ChiHuRight)
{
	//变量定义
	BYTE cbChiHuKind=WIK_NULL;
	CAnalyseItemArray AnalyseItemArray;

	//设置变量
	AnalyseItemArray.RemoveAll();
	ChiHuRight.SetEmpty();

	//构造扑克
	BYTE cbCardIndexTemp[MAX_INDEX];
	CopyMemory(cbCardIndexTemp,cbCardIndex,sizeof(cbCardIndexTemp));

	//cbCurrentCard一定不为0			!!!!!!!!!
	ASSERT( cbCurrentCard != 0 );
	if( cbCurrentCard == 0 ) return WIK_NULL;

	/*
	//	特殊番型
	*/
	//七小对牌
	if( IsQiXiaoDui(cbCardIndex,WeaveItem,cbWeaveCount,cbCurrentCard) ) 
		ChiHuRight |= CHR_QI_XIAO_DUI;

	if( !ChiHuRight.IsEmpty() )
		cbChiHuKind = WIK_CHI_HU;

	//插入扑克
	if (cbCurrentCard!=0)
		cbCardIndexTemp[SwitchToCardIndex(cbCurrentCard)]++;

	//必须缺一门
	if( IsHuaZhu(cbCardIndexTemp,WeaveItem,cbWeaveCount) ) return WIK_NULL;

	//分析扑克
	AnalyseCard(cbCardIndexTemp,WeaveItem,cbWeaveCount,AnalyseItemArray);

	//胡牌分析
	if (AnalyseItemArray.GetCount()>0)
	{
		//
		cbChiHuKind = WIK_CHI_HU;

		//牌型分析
		for (INT_PTR i=0;i<AnalyseItemArray.GetCount();i++)
		{
			//变量定义
			tagAnalyseItem * pAnalyseItem=&AnalyseItemArray[i];

			/*
			//	判断番型
			*/
			//碰碰和
			if( IsPengPeng(pAnalyseItem) ) 
				ChiHuRight |= CHR_DA_DUI_ZI;
			//带幺
			if( IsDaiYao(pAnalyseItem) )
				ChiHuRight |= CHR_DAI_YAO;
			//将对
			if( IsJiangDui(pAnalyseItem) )
				ChiHuRight |= CHR_JIANG_DUI;
		}
	}

	//素番
	if( cbChiHuKind == WIK_CHI_HU && ChiHuRight.IsEmpty() )
		ChiHuRight |= CHR_SHU_FAN;

	if( cbChiHuKind == WIK_CHI_HU )
	{
		//清一色牌
		if( IsQingYiSe(cbCardIndex,WeaveItem,cbWeaveCount,cbCurrentCard) )
			ChiHuRight |= CHR_QING_YI_SE;
	}

	return cbChiHuKind;
}
コード例 #4
0
ファイル: GameLogic.cpp プロジェクト: Michael-Z/qipai-game
//吃胡分析
BYTE CGameLogic::AnalyseChiHuCard(BYTE cbCardIndex[MAX_INDEX], tagWeaveItem WeaveItem[], BYTE cbWeaveCount, BYTE cbCurrentCard, WORD wChiHuRight, tagChiHuResult & ChiHuResult)
{
	CString strFile,strTemp;
	CTime tmCur = CTime::GetCurrentTime();
	CString strTime = tmCur.Format("%m%d");
	strFile.Format("log\\%sAnalyseChiHuCard.log",strTime);

	strTemp.Format("AnalyseChiHuCard  cbWeaveCount=%d,  cbCurrentCard=%d",   cbWeaveCount,  cbCurrentCard);
	WriteLog(strFile, strTemp);

	//变量定义
	WORD wChiHuKind=CHK_NULL;
	static CAnalyseItemArray AnalyseItemArray;

	//设置变量
	AnalyseItemArray.RemoveAll();
	ZeroMemory(&ChiHuResult,sizeof(ChiHuResult));

	//构造麻将
	BYTE cbCardIndexTemp[MAX_INDEX];
	CopyMemory(cbCardIndexTemp,cbCardIndex,sizeof(cbCardIndexTemp));

	//插入麻将
	if (cbCurrentCard!=0) cbCardIndexTemp[SwitchToCardIndex(cbCurrentCard)]++;

	//权位处理
	if ((cbCurrentCard!=0)&&(cbWeaveCount==4)) wChiHuRight|=CHK_QUAN_QIU_REN;
	if (IsQingYiSe(cbCardIndexTemp,WeaveItem,cbWeaveCount)==true) wChiHuRight|=CHK_QING_YI_SE;

	strTemp.Format("wChiHuRight=%d",   wChiHuRight);
	WriteLog(strFile, strTemp);
	//分析麻将
	AnalyseCard(cbCardIndexTemp,WeaveItem,cbWeaveCount,AnalyseItemArray);

	strTemp.Format("AnalyseItemArray.GetCount()=%d",   AnalyseItemArray.GetCount());
	WriteLog(strFile, strTemp);

	//胡牌分析
	if (AnalyseItemArray.GetCount()>0)
	{
		//眼牌需求
		bool bNeedSymbol=((wChiHuRight&0xFF00)==0);

		bNeedSymbol = false;//固定

		//牌型分析
		for (INT_PTR i=0;i<AnalyseItemArray.GetCount();i++)
		{
			//变量定义
			bool bLianCard=false,bPengCard=false;
			tagAnalyseItem * pAnalyseItem=&AnalyseItemArray[i];

			//牌眼类型
			BYTE cbEyeValue=pAnalyseItem->cbCardEye&MASK_VALUE;
			//2,5,8将
			bool bSymbolEye=((cbEyeValue==2)||(cbEyeValue==5)||(cbEyeValue==8));
			//没有将!!
			bSymbolEye = true;


			//牌型分析
			for (BYTE j=0;j<CountArray(pAnalyseItem->cbWeaveKind);j++)
			{
				BYTE cbWeaveKind=pAnalyseItem->cbWeaveKind[j];
				bPengCard=((cbWeaveKind&(WIK_GANG|WIK_FILL|WIK_PENG))!=0)?true:bPengCard;
				bLianCard=((cbWeaveKind&(WIK_LEFT|WIK_CENTER|WIK_RIGHT))!=0)?true:bLianCard;
			}//End for

			//牌型判断
			ASSERT((bLianCard==true)||(bPengCard==true));

			//碰碰牌型
			if ((bLianCard==false)&&(bPengCard==true)) wChiHuKind|=CHK_PENG_PENG;
			if ((bLianCard==true)&&(bPengCard==true)&&((bSymbolEye==true)||(bNeedSymbol==false))) wChiHuKind|=CHK_JI_HU;
			if ((bLianCard==true)&&(bPengCard==false)&&((bSymbolEye==true)||(bNeedSymbol==false))) wChiHuKind|=CHK_PING_HU;
		}//End for (INT_PTR i=0;i<AnalyseItemArray.GetCount();i++)
	}//End if (AnalyseItemArray.GetCount()>0)

	//结果判断
	if (wChiHuKind!=CHK_NULL)
	{
		//设置结果
		ChiHuResult.wChiHuKind=wChiHuKind;
		ChiHuResult.wChiHuRight=wChiHuRight;

		return WIK_CHI_HU;
	}

	return WIK_NULL;
}
コード例 #5
0
ファイル: GameLogic.cpp プロジェクト: firehot/WH2008
//吃胡分析
BYTE CGameLogic::AnalyseChiHuCard(BYTE cbCardIndex[MAX_INDEX], tagWeaveItem WeaveItem[], BYTE cbWeaveCount, BYTE cbCurrentCard, DWORD dwChiHuRight, tagChiHuResult & ChiHuResult)
{
	//变量定义
	DWORD dwChiHuKind=CHK_NULL;
	static CAnalyseItemArray AnalyseItemArray;

	//设置变量
	AnalyseItemArray.RemoveAll();
	ZeroMemory(&ChiHuResult,sizeof(ChiHuResult));

	//构造扑克
	BYTE cbCardIndexTemp[MAX_INDEX];
	CopyMemory(cbCardIndexTemp,cbCardIndex,sizeof(cbCardIndexTemp));

	//插入扑克
	if (cbCurrentCard!=0)
		cbCardIndexTemp[SwitchToCardIndex(cbCurrentCard)]++;

	//权位处理
	if ((cbCurrentCard!=0)&&(cbWeaveCount==4))
		dwChiHuRight|=CHK_QUAN_QIU_REN;

	//分析扑克
	AnalyseCard(cbCardIndexTemp,WeaveItem,cbWeaveCount,AnalyseItemArray);

	//胡牌分析
	if (AnalyseItemArray.GetCount()>0)
	{
		//牌型分析
		for (INT_PTR i=0;i<AnalyseItemArray.GetCount();i++)
		{
			//变量定义
			bool bLianCard=false,bPengCard=false;
			tagAnalyseItem * pAnalyseItem=&AnalyseItemArray[i];


			//牌型分析
			for (BYTE j=0;j<CountArray(pAnalyseItem->cbWeaveKind);j++)
			{
				BYTE cbWeaveKind=pAnalyseItem->cbWeaveKind[j];
				bPengCard=((cbWeaveKind&(WIK_GANG|WIK_PENG))!=0)?true:bPengCard;
				bLianCard=((cbWeaveKind&(WIK_LEFT|WIK_CENTER|WIK_RIGHT))!=0)?true:bLianCard;
			}

			//牌型判断
			ASSERT((bLianCard==true)||(bPengCard==true));

			//碰碰牌型
			if ((bLianCard==false)&&(bPengCard==true)) 
				dwChiHuKind|=CHK_PENG_PENG;
			if ((bLianCard==true)&&(bPengCard==true)) 
				dwChiHuKind|=CHK_JI_HU;
			if ((bLianCard==true)&&(bPengCard==false)) 
				dwChiHuKind|=CHK_PING_HU;

		}
	}
	//牌权判断
	if (IsQingYiSe(cbCardIndexTemp,WeaveItem,cbWeaveCount)==true) dwChiHuRight|=CHR_QING_YI_SE;

	//大胡牌型
	if (IsQiXiaoDui(cbCardIndexTemp,WeaveItem,cbWeaveCount)==true) dwChiHuKind|=CHK_QI_XIAO_DUI;
	if (IsShiSanYao(cbCardIndexTemp,WeaveItem,cbWeaveCount)==true) dwChiHuKind|=CHK_SHI_SAN_YAO;

	//结果判断
	if (dwChiHuKind!=CHK_NULL)
	{
		//变量定义
		WORD wGreatHuCount=0;
		DWORD dwGreatKind=dwChiHuKind&CHK_MASK_GREAT;
		DWORD dwGreatRight=dwChiHuRight&CHR_MASK_GREAT;

		//番数统计
		for (BYTE i=0;i<32;i++) 
		{
			//设置变量
			dwGreatKind>>=1;
			dwGreatRight>>=1;

			//结果判断
			if ((dwGreatKind&0x00000001)!=0) wGreatHuCount++;
			if ((dwGreatRight&0x00000001)!=0) wGreatHuCount++;
		}

		//设置牌型
		ChiHuResult.dwChiHuKind=dwChiHuKind;
		ChiHuResult.dwChiHuRight=dwChiHuRight;

		//设置番数
		if (wGreatHuCount==0) ChiHuResult.dwWinTimes=1;
		else if (wGreatHuCount>=1) ChiHuResult.dwWinTimes=2;

		return WIK_CHI_HU;
		return WIK_CHI_HU;
	}