LittleResultItem_21201.js 9.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236
  1. cc.Class({
  2. extends: cc.BaseClass,
  3. properties: {
  4. m_EndScore:cc.Label,
  5. m_GangScore:cc.Label,
  6. // m_BirdCount:cc.Label,
  7. m_Piao:cc.Label,
  8. m_Double:cc.Node,
  9. m_CardCtrl:cc.Node,
  10. m_LittleResultBanker:cc.Node,
  11. m_Rule:cc.Label,
  12. m_Hu:cc.Node,
  13. m_DianPao:cc.Node,
  14. m_ZiMo:cc.Node,
  15. m_LiuJu:cc.Node,
  16. m_HandControlPrefab:cc.Prefab,
  17. m_Font:[cc.Font],
  18. m_diamond:cc.Node,
  19. },
  20. // LIFE-CYCLE CALLBACKS:
  21. // onLoad () {},
  22. ctor:function(){
  23. },
  24. start:function () {
  25. },
  26. onLoad(){
  27. this.m_LittleResultBanker.active = false;
  28. this.m_DianPao.active = false;
  29. this.m_EndScore.string = "";
  30. this.m_diamond.active = false;
  31. var node = cc.instantiate(this.m_HandControlPrefab);
  32. node.setPosition(cc.v2(0,0));
  33. this.m_CardCtrl.addChild(node);
  34. this.m_UserCard = node.getComponent('CardControl');
  35. this.m_WeaveCtrl = node.getComponent('WeaveControl');
  36. this.m_WeaveCtrl.Init(GameDef.HAND_BOTTOM);
  37. this.m_UserCard.SetPositively(false);
  38. },
  39. AddCountString:function(count){
  40. if (count == 0) {
  41. count = 1;
  42. }
  43. return 'x'+count;
  44. },
  45. // GetHuRightString:function(rules,EndInfo,wChair){
  46. // var str ='';
  47. // if (rules & GameDef.CHR_MENQiNG ) str+=' 門清';
  48. // if (rules & GameDef.CHR_PENG_PENG ) str+=' 碰碰胡';
  49. // if (rules & GameDef.CHR_QI_DUI ) str+=' 八對';
  50. // if (rules & GameDef.CHR_BAXIANGUOHAI ) str+=' 八仙過海';
  51. // if (rules & GameDef.CHR_GANG_KAI ) str+=' 杠上開花';
  52. // if (rules & GameDef.CHR_KUN_SI_SE ) str+=' 混一色';
  53. // if (rules & GameDef.CHR_QING_YI_SE ) str+=' 清一色';
  54. // if (rules & GameDef.CHR_QUAN_QIU_PAO ) str+=' 全求';
  55. // if (rules & GameDef.CHR_DI_TING ) str+=' 地聼';
  56. // if (rules & GameDef.CHR_TIAN_TING ) str+=' 天聼';
  57. // if (rules & GameDef.CHR_SHAN_YUAN ) str+=' 三元';
  58. // if (rules & GameDef.CHR_SHAN_YUAN_XIAO ) str+=' 小三元';
  59. // if (rules & GameDef.CHR_XIAO_SI_XI ) str+=' 小四喜';
  60. // if (rules & GameDef.CHR_HAI_DI ) str+=' 海底撈';
  61. // if (rules & GameDef.CHR_GANG_PAO ) str+=' 杠后炮';
  62. // if (rules & GameDef.CHR_QI_QIANG_YI ) str+=' 7抢1';
  63. // if (rules & GameDef.CHR_QIANG_GANG ) str+=' 搶杠胡';
  64. // if (rules & GameDef.CHR_DUN_TING ) str+=' 獨聼';
  65. // if (rules & GameDef.CHR_ZI_SI_SE ) str+=' 字一色';
  66. // if (rules & GameDef.CHR_SHAN_KAN ) str+=' 三暗坎';
  67. // if (rules & GameDef.CHR_SI_KAN ) str+=' 四暗坎';
  68. // if (rules & GameDef.CHR_WU_KAN ) str+=' 五暗坎';
  69. // if (rules & GameDef.CHR_HUA_GANG ) str+=' 花杠';
  70. // if (rules & GameDef.CHR_PING_HU ) str+=' 平胡';
  71. // if (rules & GameDef.CHR_ZI_MO ) str+=' 自摸';
  72. // if (rules & GameDef.CHR_CHI_HU ) str+=' 放炮';
  73. // if (rules & GameDef.CHR_MEN_FENG ) str+=' 門風';
  74. // return str;
  75. // },
  76. InitPre:function(){
  77. this.node.active = false;
  78. },
  79. SetPreInfo:function(ParaArr) {
  80. this.node.active = true;
  81. this.SetEndInfo(ParaArr[0],ParaArr[1],ParaArr[2],ParaArr[3]);
  82. },
  83. SetEndInfo:function(wChair, EndInfo, bBanker, Rule) {
  84. this.ResetControl();
  85. this.m_dwUserID = EndInfo.dwUserID[wChair];
  86. this.node.getComponent('UserCtrl').SetUserByID( this.m_dwUserID);
  87. this.node.getComponent('UserCtrl').SetShowFullName(false, 5);
  88. console.log(EndInfo,"1122333")
  89. this.m_Double.active = EndInfo.cbDouble[wChair] > 1;
  90. //文字
  91. if(EndInfo.dwChiHuKind[wChair] == GameDef.WIK_CHI_HU)
  92. {
  93. if(EndInfo.dwChiHuRight[wChair] & GameDef.CHR_ZI_MO)
  94. {
  95. this.m_Hu.active = false;
  96. this.m_ZiMo.active = true;
  97. }
  98. else
  99. {
  100. this.m_Hu.active = true;
  101. this.m_ZiMo.active = false;
  102. }
  103. }
  104. else
  105. {
  106. this.m_Hu.active = false;
  107. this.m_ZiMo.active = false;
  108. }
  109. this.m_DianPao.active = (EndInfo.dwChiHuRight[wChair] & GameDef.CHR_CHI_HU);
  110. if( EndInfo.cbWinner == 255)
  111. {
  112. this.m_LiuJu.active = true;
  113. this.m_DianPao.active = false;
  114. this.m_Hu.active = false;
  115. this.m_ZiMo.active = false;
  116. }
  117. else
  118. {
  119. this.m_LiuJu.active = false;
  120. }
  121. var hrS = EndInfo.cbWinner == 255 ? GameDef.GetHuRightString(0) : GameDef.GetHuRightString(EndInfo.dwChiHuRight[wChair],EndInfo.dwChiHuKind[wChair]); //this.GetHuRightString(EndInfo.dwChiHuRight[wChair],EndInfo,wChair)
  122. //胡法
  123. this.m_Rule.string = hrS;
  124. console.log("規則:",hrS)
  125. //总分
  126. var Score = /* EndInfo.lGameScore[wChair] + EndInfo.lGangScore[wChair];// + */EndInfo.lGangScore[wChair];
  127. console.log("Score:",Score);
  128. if (Score > 0) {
  129. this.m_EndScore.string =""+ Score;//"+" + Score2Str(Score);
  130. // this.m_EndScore.node.color = cc.color(0, 151,64);
  131. // this.m_EndScore.font = this.m_Font[0];
  132. } else {
  133. this.m_EndScore.string = ""+Score;//Score2Str(Score);
  134. // this.m_EndScore.node.color = cc.color(225,75,43);
  135. //this.m_EndScore.font = this.m_Font[1];
  136. }
  137. //杠分
  138. // var GangScore = EndInfo.lGangScore[wChair];
  139. // if(GangScore > 0)
  140. // {
  141. // this.m_GangScore.string = '+' + Score2Str(GangScore);
  142. // this.m_GangScore.font = this.m_Font[0];
  143. // }
  144. // else
  145. // {
  146. // this.m_GangScore.string = Score2Str(GangScore);
  147. // this.m_GangScore.font = this.m_Font[1];
  148. // }
  149. //鸟
  150. // if(EndInfo.dwChiHuKind[wChair] == GameDef.WIK_CHI_HU)
  151. // {
  152. // this.m_BirdCount.string = EndInfo.wBirdCount;
  153. // this.m_BirdCount.font = this.m_Font[0];
  154. // }
  155. // else
  156. // {
  157. // this.m_BirdCount.string = 0;
  158. // this.m_BirdCount.font = this.m_Font[0];
  159. // }
  160. //飘
  161. var fen = EndInfo.lGameScore[wChair];
  162. if (fen > 0) {
  163. this.m_Piao.string = ""+fen;//"+" + Score2Str(Score);
  164. //this.m_Piao.font = this.m_Font[0];
  165. } else {
  166. this.m_Piao.string =""+ fen;//Score2Str(Score);
  167. //this.m_Piao.font = this.m_Font[1];
  168. }
  169. if(bBanker){
  170. this.m_LittleResultBanker.active = true;
  171. }else{
  172. this.m_LittleResultBanker.active = false;
  173. }
  174. var cbCardData = EndInfo.cbCardData[wChair];
  175. var wCardCount = EndInfo.cbCardCount[wChair];
  176. this.m_UserCard.SetMagicIndex(EndInfo.cbMagicIndex);
  177. if((wCardCount+1)%3==0) {
  178. var tmpCardData = new Array();
  179. for (var j = 0; j < wCardCount; j++) {
  180. tmpCardData[j] = cbCardData[j];
  181. }
  182. var cbRemoveCard = new Array();
  183. if( EndInfo.cbProvideCard != 0){
  184. cbRemoveCard[0] = EndInfo.cbProvideCard;
  185. }
  186. else{
  187. cbRemoveCard[0] = tmpCardData[wCardCount-1];
  188. }
  189. if (EndInfo.cbLastCardData[wChair]) {
  190. cbRemoveCard[0] = EndInfo.cbLastCardData[wChair];
  191. }
  192. if(GameDef.g_GameLogic.RemoveCard4(tmpCardData,wCardCount,cbRemoveCard,1)){
  193. this.m_UserCard.SetCardData(tmpCardData,wCardCount-1, false, true);
  194. this.m_UserCard.SetCurrentCard(cbRemoveCard[0], false, true);
  195. }
  196. }else{
  197. this.m_UserCard.SetCardData(cbCardData,wCardCount, false, true);
  198. }
  199. for(var j=0;j<EndInfo.cbWeaveCount[wChair];++j){
  200. var cbCenterCard = EndInfo.weaveItem[wChair][j].cbCenterCard;
  201. var wWeaveKind=EndInfo.weaveItem[wChair][j].wWeaveKind;
  202. var cbCardData = EndInfo.weaveItem[wChair][j].cbCardData;
  203. var cbWeaveCardCount=EndInfo.weaveItem[wChair][j].cbCardCount;
  204. var cbPublicCard=EndInfo.weaveItem[wChair][j].cbPublicCard;
  205. this.m_WeaveCtrl.SetWeaveData(j,cbCardData,cbWeaveCardCount,cbPublicCard);
  206. this.m_WeaveCtrl.SetWeaveState(j,EndInfo.weaveItem[wChair][j], true);
  207. if( !cbPublicCard && cbWeaveCardCount == 4){
  208. this.m_WeaveCtrl.SetWeaveState(j,GameDef.GAME_THREE_BACK_SELF);
  209. }
  210. }
  211. this.m_diamond.active = false;
  212. if (GameDef.m_dwGameRuleArr[3] > 0) {
  213. this.m_diamond.active = true;
  214. }
  215. },
  216. ResetControl:function(wChair,EndInfo){
  217. this.m_WeaveCtrl.ResetData();
  218. this.m_UserCard.SetPositively(false);
  219. },
  220. // update (dt) {},
  221. });