function gamestate_prepare_game() { if (eval(__MAGIC__)) { return $___RET_VALUE; } eval(import_module('sys')); $gamenum++; \sys\reset_game(); \sys\prepare_new_game(); \sys\rs_game(1 + 2 + 4 + 8 + 16 + 32); }
function gamestate_prepare_game() { if (eval(__MAGIC__)) { return $___RET_VALUE; } eval(import_module('sys')); $gamenum++; $gamestate = 10; $hdamage = 0; $hplayer = ''; $noisemode = ''; \sys\reset_game(); \sys\rs_game(1 + 2 + 4 + 8 + 16 + 32); }
function add_once_area($atime) { if (eval(__MAGIC__)) { return $___RET_VALUE; } eval(import_module('sys', 'map')); if ($gamestate > 10 && $now > $atime) { $plsnum = sizeof($plsinfo) - 1; $areanum += $areaadd; for ($x = 0; $x <= $areanum; $x++) { if ($x > $plsnum) { continue; } add_new_killarea($arealist[$x]); } if ($areanum >= $plsnum) { $areaaddlist = array_slice($arealist, $areanum - $areaadd + 1); $areanum = $plsnum; } else { if ($hack > 0) { $hack--; } $areaaddlist = array_slice($arealist, $areanum - $areaadd + 1, $areaadd); movehtm(); } addnews($atime, 'addarea', $areaaddlist, $weather); systemputchat($atime, 'areaadd', $areaaddlist); if ($areanum >= $plsnum) { \sys\gameover($atime, 'end1'); return; } if ($alivenum == 1 && $gamestate >= 30) { \sys\gameover($atime); return; } elseif ($alivenum <= 0 && $gamestate >= 30) { \sys\gameover($atime, 'end1'); return $atime; } else { \sys\rs_game(16 + 32); //$areatime += $areahour*3600; //addarea($areatime); return; } } else { return; } }
function check_addarea_gameover($atime) { if (eval(__MAGIC__)) { return $___RET_VALUE; } eval(import_module('sys', 'map')); $plsnum = sizeof($plsinfo) - 1; if ($areanum >= $plsnum) { \sys\gameover($atime, 'end1'); return; } if ($alivenum == 1 && $gamestate >= 30) { \sys\gameover($atime); return; } elseif ($alivenum <= 0 && $gamestate >= 30) { \sys\gameover($atime, 'end1'); } else { \sys\rs_game(16 + 32); } }
function check_addarea_gameover($atime) { if (eval(__MAGIC__)) { return $___RET_VALUE; } eval(import_module('sys', 'map')); if ($gametype == 15) { if ($alivenum <= 0) { \sys\gameover($atime, 'end1'); return; } if ($areanum >= $areaadd) { //限时1禁 $result = $db->query("SELECT * FROM {$tablepre}players WHERE hp>0 AND type=0"); $wdata = $db->fetch_array($result); $winner = $wdata['name']; \sys\gameover($atime, 'end8', $winner); return; } \sys\rs_game(16 + 32); return; } $chprocess($atime); }
function check_addarea_gameover($atime) { if (eval(__MAGIC__)) { return $___RET_VALUE; } eval(import_module('sys', 'map')); if ($gametype == 1) { if ($alivenum <= 0) { \sys\gameover($atime, 'end1'); //理论不会这样,防BUG return; } if ($areanum >= $areaadd * 2) { //限时2禁 $result = $db->query("SELECT * FROM {$tablepre}players WHERE type=0 ORDER BY pid DESC"); $ml = -1; $winner = ''; $wl = array(); while ($pt = $db->fetch_array($result)) { $pa = \player\fetch_playerdata_by_pid($pt['pid']); $cl = (int) \skillbase\skill_getvalue(424, 'lvl', $pa); $wl[$pa['name']] = $cl; if ($cl > $ml) { $ml = $cl; $winner = $pa['name']; } } arsort($wl); $rk = 0; foreach ($wl as $kk => $v) { $rk++; $k = \player\fetch_playerdata($kk); if ($v >= 5) { \cardbase\get_qiegao(150, $k); } if ($v >= 10) { \cardbase\get_qiegao(300, $k); } if ($v >= 20) { \cardbase\get_qiegao(600, $k); } if ($v >= 30) { \cardbase\get_card(94, $k); \cardbase\get_qiegao(500, $k); } if ($rk == 1) { \cardbase\get_card(96, $k); \cardbase\get_card(95, $k); } if ($rk <= 2) { \cardbase\get_card(95, $k); } if ($rk <= 3) { \cardbase\get_qiegao(500, $k); addnews(0, 'g1announce', $rk, $kk, $v); } } \sys\gameover($atime, 'end8', $winner); return; } \sys\rs_game(16 + 32); return; } $chprocess($atime); }
function check_addarea_gameover($atime) { if (eval(__MAGIC__)) { return $___RET_VALUE; } eval(import_module('sys', 'map')); if ($gametype == 1) { if ($alivenum <= 0) { \sys\gameover($atime, 'end1'); //理论不会这样,防BUG return; } if ($areanum >= $areaadd * 2) { //限时2禁 $result = $db->query("SELECT * FROM {$tablepre}players WHERE type=0 ORDER BY pid DESC"); $ml = -1; $winner = ''; $wl = array(); $wc = 0; while ($pt = $db->fetch_array($result)) { $pa = \player\fetch_playerdata_by_pid($pt['pid']); $cl = (int) \skillbase\skill_getvalue(424, 'lvl', $pa); //$wl[$pa['name']]=$cl; if ($cl > $ml) { $ml = $cl; $winner = $pa['name']; } $wc++; $wl[$wc]['n'] = $pa['name']; $wl[$wc]['p'] = $pa['pid']; $wl[$wc]['c'] = $cl; } //arsort($wl); for ($i = 1; $i < $wc; $i++) { for ($j = $i + 1; $j <= $wc; $j++) { if ($wl[$i]['c'] < $wl[$j]['c'] || $wl[$i]['c'] == $wl[$j]['c'] && $wl[$i]['p'] < $wl[$j]['p']) { $tt = $wl[$i]; $wl[$i] = $wl[$j]; $wl[$j] = $tt; } } } $rk = 0; $max_announce_num = 3; //进行状况展示人数 $bestlist = array(); //进行状况中展示的前X名列表 //foreach ($wl as $kk=>$v){ for ($rk = 1; $rk <= $wc; $rk++) { //$rk++; $kk = $wl[$rk]['n']; $v = $wl[$rk]['c']; $k = \player\fetch_playerdata($kk); if ($v >= 5) { \cardbase\get_qiegao(150, $k); } if ($v >= 10) { \cardbase\get_qiegao(300, $k); } if ($v >= 20) { \cardbase\get_qiegao(600, $k); } if ($v >= 30) { \cardbase\get_card(94, $k); \cardbase\get_qiegao(500, $k); } if ($rk == 1) { \cardbase\get_card(96, $k); \cardbase\get_card(95, $k); } if ($rk <= 2) { \cardbase\get_card(95, $k); } if ($rk <= $max_announce_num) { \cardbase\get_qiegao(500, $k); $bestlist[$rk] = array(0 => $kk, 1 => $v); } } for ($i = $max_announce_num; $i >= 1; $i--) { if (isset($bestlist[$i])) { addnews(0, 'g1announce', $i, $bestlist[$i][0], $bestlist[$i][1]); } } \sys\gameover($atime, 'end8', $winner); return; } \sys\rs_game(16 + 32); return; } $chprocess($atime); }