⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 chkmake.c

📁 我搜集到的一个java常用类库的源代码
💻 C
📖 第 1 页 / 共 3 页
字号:
    while(pool[sit].out_card[i][j])    {      if(pool[sit].out_card[i][j]==card)        exist++;      j++;    }  }  return(exist);}exist_3(sit,card,comb)char sit;char card;int comb;{  int i,set,exist=0;  set=0;  while(card_comb[comb].info[set][0])  {    if(card_comb[comb].info[set][0]==2 && card_comb[comb].info[set][1]==card)      exist++;    set++;  }  for(i=0;i<pool[sit].out_card_index;i++)  {    if(pool[sit].out_card[i][1]==card && pool[sit].out_card[i][2]==card &&       pool[sit].out_card[i][3]==card)      exist++;  }  return(exist);}exist_straight(sit,card,comb)char sit;char card;int comb;{  int i,set,exist=0;  set=0;  while(card_comb[comb].info[set][0])  {    if(card_comb[comb].info[set][0]==1 && card_comb[comb].info[set][1]==card)      exist++;    set++;  }  set=0;  for(i=0;i<pool[sit].out_card_index;i++)  {    if(pool[sit].out_card[i][0]==7 && pool[sit].out_card[i][2]==card)      exist++;    if(pool[sit].out_card[i][0]==8 && pool[sit].out_card[i][1]==card)      exist++;    if(pool[sit].out_card[i][0]==9 && pool[sit].out_card[i][1]==card)      exist++;  }  return(exist);}check_tai(sit,comb,make_card)char sit;char comb;char make_card;{  int i;  for(i=0;i<100;i++)    card_comb[comb].tai_score[i]=0;  check_tai0(sit,comb);  check_tai1(sit,comb);  check_tai2(sit,comb);  check_tai3(sit,comb);  check_tai4(sit,comb);  check_tai5(sit,comb);  check_tai6(sit,comb);  check_tai7(sit,comb);  check_tai8(sit,comb);  check_tai9(sit,comb);  check_tai10(sit,comb);  check_tai11(sit,comb);  check_tai12(sit,comb);  check_tai13(sit,comb);  check_tai14(sit,comb);  check_tai15(sit,comb);  check_tai16(sit,comb);  check_tai21(sit,comb);  check_tai22(sit,comb);  check_tai23(sit,comb);  check_tai24(sit,comb,make_card);  check_tai25(sit,comb);  check_tai26(sit,comb);  check_tai27(sit,comb);  check_tai30(sit,comb);  check_tai31(sit,comb);  check_tai32(sit,comb);  check_tai33(sit,comb);  check_tai34(sit,comb);  check_tai35(sit,comb);  check_tai36(sit,comb);  check_tai37(sit,comb);  check_tai39(sit,comb);  check_tai40(sit,comb);  check_tai41(sit,comb);  check_tai42(sit,comb);  check_tai43(sit,comb);  check_tai44(sit,comb);  check_tai45(sit,comb,make_card);  check_tai46(sit,comb);  check_tai47(sit,comb);  check_tai48(sit,comb);  check_tai49(sit,comb);  check_tai50(sit,comb);  check_tai51(sit,comb);  check_tai52(sit,comb);}/* 庄家 */check_tai0(sit,comb)char sit;char comb;{  if(info.dealer==sit)    card_comb[comb].tai_score[0]=tai[0].score;}/* 门清 */check_tai1(sit,comb)char sit;char comb;{  if(pool[sit].num==16)    card_comb[comb].tai_score[1]=tai[1].score;}/* 自摸 */check_tai2(sit,comb)char sit;char comb;{  if(sit==card_owner)    card_comb[comb].tai_score[2]=tai[2].score;  }/* 断么九 */check_tai3(sit,comb)char sit;char comb;{  if(!exist_card(sit,1) && !exist_card(sit,9) && !exist_card(sit,11) &&     !exist_card(sit,19) && !exist_card(sit,21) && !exist_card(sit,29) &&     !exist_card(sit,31) && !exist_card(sit,32) && !exist_card(sit,33) &&     !exist_card(sit,34) && !exist_card(sit,41) && !exist_card(sit,42) &&     !exist_card(sit,43))    card_comb[comb].tai_score[3]=tai[3].score;}/* 双龙抱 */check_tai4(sit,comb)char sit;int comb;{  int i;  int straight[30],double_straight_num=0;  if(pool[sit].num!=16)   /* 必须门清 */    return;  for(i=0;i<30;i++)    straight[i]=0;  for(i=0;i<card_comb[comb].set_count;i++)  {    if(card_comb[comb].info[i][0]==1)      straight[card_comb[comb].info[i][1]]++;  }  for(i=0;i<pool[sit].out_card_index;i++)  {    if(pool[sit].out_card[i][0]==7)      straight[pool[sit].out_card[i][2]]++;    if(pool[sit].out_card[i][0]==8)      straight[pool[sit].out_card[i][1]]++;    if(pool[sit].out_card[i][0]==9)      straight[pool[sit].out_card[i][1]]++;  }  for(i=0;i<30;i++)  {    if(straight[i]>=2)      double_straight_num++;  }  if(double_straight_num==1)    card_comb[comb].tai_score[4]=tai[4].score;  if(double_straight_num>=2)    card_comb[comb].tai_score[28]=tai[28].score;}/* 杠上开花 */check_tai5(sit,comb)char sit;char comb;{  if(in_kang)    card_comb[comb].tai_score[5]=tai[5].score;}/* 海底摸月 */check_tai6(sit,comb)char sit;char comb;{  if((144-card_point)==16 && sit==card_owner)    card_comb[comb].tai_score[6]=tai[6].score;}/* 河底捞鱼 */check_tai7(sit,comb)char sit;char comb;{  if((144-card_point)==16 && sit!=card_owner)    card_comb[comb].tai_score[7]=tai[7].score;}/* 抢杠 */check_tai8(sit,comb)char sit;char comb;{}/* 东风 */check_tai9(sit,comb)char sit;char comb;{  if(exist_card(sit,31)>=3)  {    if(info.wind==1)      card_comb[comb].tai_score[9]+=tai[9].score;    if(pool[sit].door_wind==1)      card_comb[comb].tai_score[9]+=tai[9].score;  }  if(card_comb[comb].tai_score[9]==tai[9].score*2)  {    card_comb[comb].tai_score[17]=tai[17].score;    card_comb[comb].tai_score[9]=0;  }}/* 南风 */check_tai10(sit,comb)char sit;char comb;{  if(exist_card(sit,32)>=3)  {    if(info.wind==2)      card_comb[comb].tai_score[10]+=tai[10].score;    if(pool[sit].door_wind==2)      card_comb[comb].tai_score[10]+=tai[10].score;  }  if(card_comb[comb].tai_score[10]==tai[10].score*2)  {    card_comb[comb].tai_score[18]=tai[18].score;    card_comb[comb].tai_score[10]=0;  }}/* 西风 */check_tai11(sit,comb)char sit;char comb;{  if(exist_card(sit,33)>=3)  {    if(info.wind==3)      card_comb[comb].tai_score[11]+=tai[11].score;    if(pool[sit].door_wind==3)      card_comb[comb].tai_score[11]+=tai[11].score;  }  if(card_comb[comb].tai_score[11]==tai[11].score*2)  {    card_comb[comb].tai_score[19]=tai[19].score;    card_comb[comb].tai_score[11]=0;  }}/* 北风 */check_tai12(sit,comb)char sit;char comb;{  if(exist_card(sit,34)>=3)  {    if(info.wind==4)      card_comb[comb].tai_score[12]+=tai[12].score;    if(pool[sit].door_wind==4)      card_comb[comb].tai_score[12]+=tai[12].score;  }  if(card_comb[comb].tai_score[12]==tai[12].score*2)  {    card_comb[20].tai_score[20]=tai[20].score;    card_comb[comb].tai_score[12]=0;  }}/* 红中 */check_tai13(sit,comb)char sit;char comb;{  if(exist_card(sit,41)>=3)    card_comb[comb].tai_score[13]=tai[13].score;}/* 白板 */check_tai14(sit,comb)char sit;char comb;{  if(exist_card(sit,42)>=3)    card_comb[comb].tai_score[14]=tai[14].score;}/* 青发 */check_tai15(sit,comb)char sit;char comb;{  if(exist_card(sit,43)>=3)    card_comb[comb].tai_score[15]=tai[15].score;}/* 花牌 */check_tai16(sit,comb)char sit;char comb;{  if(pool[sit].flower[pool[sit].door_wind-1])    card_comb[comb].tai_score[16]+=tai[16].score;  if(pool[sit].flower[pool[sit].door_wind+3])    card_comb[comb].tai_score[16]+=tai[16].score;}/* 东风东 */check_tai17(sit,comb)char sit;char comb;{}/* 西风西 */check_tai18(sit,comb)char sit;char comb;{}/* 南风南 */check_tai19(sit,comb)char sit;char comb;{}/* 北风北 */check_tai20(sit,comb)char sit;char comb;{}/* 春夏秋冬 */check_tai21(sit,comb)char sit;char comb;{  if(pool[sit].flower[0] && pool[sit].flower[1] && pool[sit].flower[2] &&     pool[sit].flower[3])  {    card_comb[comb].tai_score[21]=tai[21].score;    card_comb[comb].tai_score[16]-=tai[16].score;  }}/* 梅兰菊竹 */check_tai22(sit,comb)char sit;char comb;{  if(pool[sit].flower[4] && pool[sit].flower[5] && pool[sit].flower[6] &&     pool[sit].flower[7])  {    card_comb[comb].tai_score[22]=tai[22].score;    card_comb[comb].tai_score[16]-=tai[16].score;  }}/* 全求人 */check_tai23(sit,comb)char sit;char comb;{  if(pool[sit].num==1 && sit!=card_owner)    card_comb[comb].tai_score[23]=tai[23].score;}/* 平胡 */check_tai24(sit,comb,make_card)char sit;char comb;char make_card;{  int i,j;  /* 花牌 */  for(i=0;i<8;i++)    if(pool[sit].flower[i])      goto fail24;  /* 顺子 */  for(i=0;i<card_comb[comb].set_count;i++)  {    if(card_comb[comb].info[i][0]==2)      goto fail24;    if(card_comb[comb].info[i][0]==10)    {      if(card_comb[comb].info[i][1]==make_card)        goto fail24;      if(card_comb[comb].info[i][1]>30)        goto fail24;    }  }  /* 门清 *//*  if(pool[sit].out_card_index==0)    goto fail24;*/  /* 自摸 */  if(turn==card_owner)    goto fail24;  /* 顺子 */  for(i=0;i<pool[sit].out_card_index;i++)  {    if(pool[sit].out_card[i][1]==pool[sit].out_card[i][2])      goto fail24;  }  /* 两面听牌 */  if(make_card%10<=6)    if(check_make(sit,make_card+3,0))      goto finish24;  if(make_card%10>=4)    if(check_make(sit,make_card-3,0))      goto finish24;  goto fail24;  finish24:;  check_make(sit,make_card,0);   /* Reset pool_buf[] */  card_comb[comb].tai_score[24]=tai[24].score;  fail24:;}/* 混带么 */check_tai25(sit,comb)char sit;char comb;{  int i,exist19=0;  for(i=0;i<card_comb[comb].set_count;i++)  {    if(card_comb[comb].info[i][1]<30)    {      exist19=1;      if(card_comb[comb].info[i][1]%10==1 || card_comb[comb].info[i][1]%10==9 ||         card_comb[comb].info[i][2]%10==1 || card_comb[comb].info[i][2]%10==9 ||         card_comb[comb].info[i][3]%10==1 || card_comb[comb].info[i][3]%10==9)        continue;      else        goto fail25;    }  }  for(i=0;i<pool[sit].out_card_index;i++)  {    if(pool[sit].out_card[i][1]<30)    {      if(pool[sit].out_card[i][1]%10==1 || pool[sit].out_card[i][1]%10==9 ||         pool[sit].out_card[i][2]%10==1 || pool[sit].out_card[i][2]%10==9 ||         pool[sit].out_card[i][3]%10==1 || pool[sit].out_card[i][3]%10==9)        continue;      else        goto fail25;    }  }  if(exist19)  {    card_comb[comb].tai_score[25]=tai[25].score;    if(pool[sit].num!=16)      card_comb[comb].tai_score[25]-=1;  }  fail25:;}/* 三色同顺 */check_tai26(sit,comb)char sit;char comb;{  int i,num;  for(i=0;i<card_comb[comb].set_count;i++)  {    if(card_comb[comb].info[i][0]==1)    {      num=card_comb[comb].info[i][1]%10;      if(exist_straight(sit,num,comb) && exist_straight(sit,num+10,comb) &&         exist_straight(sit,num+20,comb))      {        card_comb[comb].tai_score[26]=tai[26].score;        goto finish26;      }    }  }  for(i=0;i<pool[sit].out_card_index;i++)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -