//显示已经出的牌 d.show_sea = function () { if(d.status==3){ return; }if (Desk.roomtype[19]) { return ; } if(Utl.getIsInfinite() == 1 && d.person_info[C_Player.seat] && d.person_info[C_Player.seat].new_one==1) { return; } var arr_s0 = [1023, 1050, 1077, 1104]; //2人模式 var persons = [4, 4, 3, 2]; var person = persons[d.roomtype[6]] || 4; if (person == 2) { arr_s0 = [1023, 1077, 1077, 1077]; } d.put_card++; d.p_card=d.put_card; var arr_s = []; for (var i = 0; i < 4; i++) { arr_s[i] = arr_s0[d.pos[i]]; set_group(207 + i, 37, 0, 0, 0); } for (var j = 0; j < 4; j++) { var l = d.sea[j].length var n = ifast_div((l + 1) / 9); var ii = 0; if (l > 21) { ii = (n - 1) * 9; } for (var i = ii; i < l; i++) { if (d.sea[j][i] && d.put_card==d.p_card) { set_self(arr_s[j] + i - ii, 37, 1, 0, 0); d.wos=1; set_self(arr_s[j] + i - ii, 43, d.sea[j][i], 0, 0); //d.show_ponit_out(); //d.put_card==d.p_card; } if(d.sea[j][i] == undefined){ set_self(arr_s[j] + i - ii, 37, 0, 0, 0); } } } if (d.last_operate[0] == 0) { d.show_ponit_out(); d.wos=0; } d.show_sea_hua(); } //显示已经出的花牌 d.show_sea_hua = function () { return; var arr_s0 = [1820, 1828, 1836, 1844]; var arr_s = []; set_group(243, 37, 0, 0, 0); for (var i = 0; i < 4; i++) { arr_s[i] = arr_s0[d.pos[i]]; } for (var j = 0; j < 4; j++) { for (var i = 0; i < d.sea_hua[j].length; i++) { if (d.sea_hua[j][i]) { set_self(arr_s[j] + i, 37, 1, 0, 0); set_self(arr_s[j] + i, 43, d.sea_hua[j][i], 0, 0); } else { set_self(arr_s[j] + i, 37, 0, 0, 0); } } } } //牌池中最后1个花牌精灵的id d.get_sea_hua_lastid = function (seat) { var arr = [0, 0];//455,425/849,455/806,249/380,213 起始精灵:1023 1050 1077 1104 var start_spids = [1820, 1828, 1836, 1844]; var start_spid = start_spids[d.pos[seat]]; var l = d.sea_hua[seat].length; lastid = start_spid + l - 1;//首个空出的精灵 return lastid; } //牌池中最后1个精灵的id d.get_sea_lastid = function (seat) { var arr = [0, 0];//455,425/849,455/806,249/380,213 起始精灵:1023 1050 1077 1104 var start_spids = [1023, 1050, 1077, 1104]; //2人模式 var persons = [4, 4, 3, 2]; var person = persons[d.roomtype[6]] || 4; if (person == 2) { start_spids = [1023, 1077, 1077, 1077]; } var start_spid = start_spids[d.pos[seat]]; var l = d.sea[seat].length; var l_y = 0; var l_x = 0; l_y = parseInt(l / 9); l_x = l - l_y * 9; lastid = start_spid + l_y * 9 + l_x - 1;//首个空出的精灵 for (var i = 0; i < 27; i++) { if (get_self(start_spid + 26 - i, 37)) { lastid = start_spid + 26 - i; break; } } return lastid; } //得到牌池首个空出的位置坐标 d.get_sea_freexy = function (seat, off) { var arr = [0, 0];//455,425/849,455/806,249/380,213 起始精灵:1023 1050 1077 1104 var start_posxys = [[get_self(1023, 18, 0, 0, 0), get_self(1023, 19, 0, 0, 0)], [get_self(1050, 18, 0, 0, 0), get_self(1050, 19, 0, 0, 0)], [get_self(1077, 18, 0, 0, 0), get_self(1077, 19, 0, 0, 0)], [get_self(1104, 18, 0, 0, 0), get_self(1104, 19, 0, 0, 0)]]; var start_spids = [1023, 1050, 1077, 1104]; var start_posxy = start_posxys[d.pos[seat]]; var start_spid = start_spids[d.pos[seat]]; var l = d.sea[seat].length + off; var l_y = 0; var l_x = 0; var y = start_posxy[1]; var x = start_posxy[0]; l_y = parseInt(l / 9); l_x = l - l_y * 9 - 2; if (get_self(start_spid, 44, 0, 0, 0) == 207) { y = start_posxy[1] - l_y * 51; x = start_posxy[0] + l_x * 47; } else if (get_self(start_spid, 44, 0, 0, 0) == 208) { y = start_posxy[1] - l_x * 41; x = start_posxy[0] - l_y * 55; } else if (get_self(start_spid, 44, 0, 0, 0) == 209) { y = start_posxy[1] + l_y * 51; x = start_posxy[0] - l_x * 47; } else if (get_self(start_spid, 44, 0, 0, 0) == 210) { y = start_posxy[1] + l_x * 41; x = start_posxy[0] + l_y * 55; } //arr[2]=start_spid+l_y*9+l_x;//首个空出的精灵 arr[2] = 1353; arr[0] = x; arr[1] = y; var lastid = d.get_sea_lastid(seat); var x1 = get_self(lastid, 18, 0, 0, 0); var y1 = get_self(lastid, 19, 0, 0, 0); if (arr[0] != x1) { arr[0] = x1; } if (arr[1] != y1) { arr[1] = y1; } d.act_put[0] = arr[0];//出牌 0spid,1目标x,2目标y d.act_put[1] = arr[1]; return arr; } //得到其他3家随机手牌 d.get_rand_3handcard = function (seat, n) { n = n || 1; //var id_start=[936,954,972,990]; var id_start = [936, 954, 972, 990]; var l = d.hand[seat][0].length; var ran_pos = ifast_random(l); var throw_card_id = []; throw_card_id[0] = id_start[d.pos[seat]] + ran_pos; for (var i = 1; i < n; i++) { var ran_pos1 = ran_pos + i; if (ran_pos1 > l - 1) { ran_pos1 = ran_pos - (ran_pos1 - (l - 1)); } throw_card_id[i] = id_start[d.pos[seat]] + ran_pos1; } return throw_card_id; } d.get_song_downjing = function (downjing) { var song_downjing = []; if (downjing[0] < 30) { song_downjing[0] = [downjing[0] % 10, downjing[1] % 10]; song_downjing[1] = [parseInt("1" + downjing[0] % 10), parseInt("1" + downjing[1] % 10)]; song_downjing[2] = [parseInt("2" + downjing[0] % 10), parseInt("2" + downjing[1] % 10)]; } else if (downjing[0] > 30 && downjing[0] < 40) { song_downjing[0] = [31, 32]; song_downjing[1] = [32, 33]; song_downjing[2] = [33, 34]; song_downjing[3] = [34, 31]; } else if (downjing[0] > 40) { song_downjing[0] = [41, 42]; song_downjing[1] = [42, 43]; song_downjing[2] = [43, 41]; } return song_downjing; }