function finalize300(&$pa, $data) { if (eval(__MAGIC__)) { return $___RET_VALUE; } if ($data == '') { $x = 0; } else { $x = base64_decode_number($data); } $ox = $x; $x += \skillbase\skill_getvalue(300, 'cnt', $pa); $x = min($x, (1 << 30) - 1); if ($ox < 32767 && $x >= 32767) { \cardbase\get_qiegao(200, $pa); } if ($ox < 142857 && $x >= 142857) { \cardbase\get_qiegao(300, $pa); } if ($ox < 999983 && $x >= 999983) { \cardbase\get_qiegao(500, $pa); \cardbase\get_card(86, $pa); } return base64_encode_number($x, 5); }
function finalize302(&$pa, $data) { if (eval(__MAGIC__)) { return $___RET_VALUE; } if ($data == '') { $x = 0; } else { $x = base64_decode_number($data); } $ox = $x; $x += \skillbase\skill_getvalue(302, 'cnt', $pa); $x = min($x, (1 << 30) - 1); if ($ox < 1 && $x >= 1) { \cardbase\get_qiegao(50, $pa); } if ($ox < 5 && $x >= 5) { \cardbase\get_qiegao(300, $pa); } if ($ox < 30 && $x >= 30) { \cardbase\get_qiegao(1000, $pa); \cardbase\get_card(66, $pa); } return base64_encode_number($x, 5); }
function finalize313(&$pa, $data) { if (eval(__MAGIC__)) { return $___RET_VALUE; } if ($data == '') { $x = 0; } else { $x = base64_decode_number($data); } $ox = $x; $x = $pa['money']; $x = max($x, $ox); if ($ox < 30000 && $x >= 30000) { \cardbase\get_qiegao(300, $pa); } if ($ox < 60000 && $x >= 60000) { \cardbase\get_qiegao(800, $pa); } if ($ox < 100000 && $x >= 100000) { \cardbase\get_qiegao(2400, $pa); \cardbase\get_card(89, $pa); } return base64_encode_number($x, 5); }
function finalize323(&$pa, $data) { if (eval(__MAGIC__)) { return $___RET_VALUE; } if ($data == '') { $x = 0; } else { $x = base64_decode_number($data); } $ox = $x; $x = \skillbase\skill_getvalue(323, 'cnt', $pa); if ($x == 0) { $x = $ox; } if ($ox != 0) { $x = min($x, $ox); } eval(import_module('cardbase')); $arr = $cardindex['S']; $c = count($arr) - 1; $cr = $arr[rand(0, $c)]; if ($x != 0 && $x <= 2700 && ($ox > 2700 || $ox == 0)) { \cardbase\get_qiegao(666, $pa); \cardbase\get_card($cr, $pa); } return base64_encode_number($x, 5); }
function finalize310(&$pa, $data) { if (eval(__MAGIC__)) { return $___RET_VALUE; } if ($data == '') { $x = 0; } else { $x = base64_decode_number($data); } $ox = $x; $x += \skillbase\skill_getvalue(310, 'cnt', $pa); $x = min($x, (1 << 30) - 1); if ($ox < 100 && $x >= 100) { \cardbase\get_qiegao(100, $pa); } eval(import_module('cardbase')); $arr = $cardindex['A']; $c = count($arr) - 1; $cr = $arr[rand(0, $c)]; if ($ox < 2500 && $x >= 2500) { \cardbase\get_qiegao(400, $pa); \cardbase\get_card($cr, $pa); } $cr = $arr[rand(0, $c)]; if ($ox < 10000 && $x >= 10000) { \cardbase\get_qiegao(1500, $pa); \cardbase\get_card($cr, $pa); } return base64_encode_number($x, 5); }
function finalize300(&$pa, $data) { if (eval(__MAGIC__)) { return $___RET_VALUE; } if ($data == '') { $x = 0; } else { $x = base64_decode_number($data); } $x += \skillbase\skill_getvalue(300, 'cnt', $pa); $x = min($x, (1 << 30) - 1); return base64_encode_number($x, 5); }
function finalize324(&$pa, $data) { if (eval(__MAGIC__)) { return $___RET_VALUE; } if ($data == '') { $x = 0; } else { $x = base64_decode_number($data); } $ox = $x; $x = $pa['lvl']; $x = max($x, $ox); if ($ox < 21 && $x >= 21) { \cardbase\get_qiegao(140, $pa); } return base64_encode_number($x, 5); }
function finalize321(&$pa, $data) { if (eval(__MAGIC__)) { return $___RET_VALUE; } if ($data == '') { $x = 0; } else { $x = base64_decode_number($data); } $ox = $x; $x += \skillbase\skill_getvalue(321, 'cnt', $pa); $x = min($x, (1 << 30) - 1); if ($ox < 2 && $x >= 2) { \cardbase\get_qiegao(110, $pa); } return base64_encode_number($x, 5); }
function finalize326(&$pa, $data) { if (eval(__MAGIC__)) { return $___RET_VALUE; } $flag = 0; foreach (array(301, 305, 306, 307) as $sk) { if (\skillbase\skill_query($sk, $pa) && (int) \skillbase\skill_getvalue($sk, 'cnt', $pa) == 1) { $flag = 1; } } if (!$flag) { return $data; } $c = (int) $pa['card']; for ($i = 0; $i < strlen($data); $i += 3) { $x = base64_decode_number(substr($data, $i, 3)); if ($x == $c) { return $data; } } $data .= base64_encode_number($c, 3); $o = ceil(strlen($data) / 3); if ($o == 10) { \cardbase\get_qiegao(888, $pa); } if ($o == 25) { \cardbase\get_card(81, $pa); \cardbase\get_qiegao(1200, $pa); } if ($o == 50) { \cardbase\get_qiegao(1600, $pa); } if ($o == 75) { \cardbase\get_qiegao(2000, $pa); } if ($o == 100) { \cardbase\get_qiegao(2500, $pa); } return $data; }
function finalize325(&$pa, $data) { if (eval(__MAGIC__)) { return $___RET_VALUE; } if ($data == '') { $x = 0; } else { $x = base64_decode_number($data); } $z = (int) \skillbase\skill_getvalue(325, 'cnt', $pa); $ox = $x; $x = $ox + $z; if ($ox < 1 && $x >= 1) { \cardbase\get_qiegao(233, $pa); } if ($ox < 100 && $x >= 100) { \cardbase\get_qiegao(2333, $pa); \cardbase\get_card(119, $pa); } return base64_encode_number($x, 5); }
function finalize308(&$pa, $data) { if (eval(__MAGIC__)) { return $___RET_VALUE; } if ($data == '') { $x = 0; } else { $x = base64_decode_number($data); } $ox = $x; $x = \skillbase\skill_getvalue(308, 'cnt', $pa); if ($x == 0) { $x = $ox; } if ($ox != 0) { $x = min($x, $ox); } if ($x != 0 && $x <= 300 && ($ox > 300 || $ox == 0)) { \cardbase\get_qiegao(666, $pa); } return base64_encode_number($x, 5); }
function elorating_update() { if (eval(__MAGIC__)) { return $___RET_VALUE; } eval(import_module('sys')); if ($room_prefix[0] == 's' && in_array($gametype, array(10, 11, 12, 13, 14))) { $tlist = array(); $result = $db->query("SELECT name,hp,state,teamID,killnum FROM {$tablepre}players WHERE type = 0"); while ($data = $db->fetch_array($result)) { $result2 = $db->query("SELECT elo_rating,elo_volatility,elo_playedtimes,elo_history FROM {$gtablepre}users WHERE username = '******'name']}'"); if (!$db->num_rows($result2)) { continue; } $z = $db->fetch_array($result2); $data['rating'] = $z['elo_rating']; $data['vol'] = $z['elo_volatility']; $data['timesPlayed'] = $z['elo_playedtimes']; $data['elo_history'] = $z['elo_history']; if ($data['state'] == 5) { $data['winner'] = 1; if ($data['hp'] > 0) { $data['alive'] = 1; } else { $data['alive'] = 0; } } else { $data['winner'] = 0; $data['alive'] = 0; } array_push($tlist, $data); } elorating_calculate_update($tlist); foreach ($tlist as $data) { //游戏历史描述 //1字符:游戏区域前缀 //4字符:游戏局号 //1字符:游戏类型 //1字符:结果 //3字符:rating(-131072后为真实值,虽然理论上rating不会有负数……) if ($room_prefix == '') { $xr = ' '; } else { $xr = $room_prefix[0]; } $eh = $data['elo_history'] . $xr . base64_encode_number($gamenum, 4) . base64_encode_number($gametype, 1) . base64_encode_number($data['winner'] ? 1 : 0, 1) . base64_encode_number($data['rating'] + 131072, 3); //考虑了一下还是不拼成一个大query了,毕竟有个text…… 爆了mysql最大query长度限制就囧了 $db->query("UPDATE {$gtablepre}users SET elo_rating='{$data['rating']}', elo_volatility='{$data['vol']}', elo_playedtimes='{$data['timesPlayed']}', elo_history='{$eh}' WHERE username = '******'name']}'"); } } }