'групповые',5=>'хаотичные'),$z2n = array(4=>'группового',5=>'хаотичного'); public function test() { global $code,$c,$u; //Проверяем хаотичные и групповые бои в этом городе $sp = mysql_query('SELECT * FROM `zayvki` AS `z` WHERE `z`.`city` = "'.$u->info['city'].'" AND `z`.`btl_id` = "0" AND `z`.`cancel` = "0" AND `z`.`start` = "0" AND (`z`.`razdel` = 4 OR `z`.`razdel` = 5) ORDER BY `z`.`id` DESC LIMIT 11'); while($pl = mysql_fetch_array($sp)) { $uz = mysql_query('SELECT `u`.`sex`,`u`.`id`,`u`.`login`,`u`.`align`,`u`.`clan`,`u`.`admin`,`u`.`city`,`u`.`room`,`u`.`online`,`u`.`level`,`u`.`battle`,`u`.`money`,`st`.* FROM `stats` AS `st` LEFT JOIN `users` AS `u` ON (`st`.`id` = `u`.`id`) WHERE `st`.`zv`="'.$pl['id'].'"'); $tm1 = array(); $tm2 = array(); $i = array(); $toChat = ''; $toWhere = ''; while($t = mysql_fetch_array($uz)) { if(!isset(${'tm'.$t['team']})){ ${'tm'.$t['team']} = array(); } if(!isset($i[$t['team']])){ $i[$t['team']] = 0; } ${'tm'.$t['team']}[$i[$t['team']]] = $t; $toChat .= ''.$t['login'].','; $toWhere .= 'OR `id` = "'.$t['id'].'" '; $i[$t['team']]++; } if($pl['time_start'] < time()-$pl['time'] || ($pl['razdel']==4 && $i[1]>=$pl['tm1max'] && $i[2]>=$pl['tm2max'])) { $toChat = rtrim($toChat,','); $toWhere = ltrim($toWhere,'OR '); if($pl['razdel']==4) { //группы if(!isset($i[1]) || !isset($i[2])) { //группа не набрана $this->cancelGroup($pl,$toChat); }else{ //Начинаем поединок $this->startBattle($pl['id'],$toChat.'|-|'.$toWhere); } }elseif($pl['razdel']==5) { //хаоты if($i[1]+$i[2]<4) { //группа не набрана $this->cancelGroup($pl,$toChat); }else{ //Начинаем поединок $this->startBattle($pl['id'],$toChat.'|-|'.$toWhere); } } } } } public function userInfo() { global $u,$c; $r = ''; if($u->stats['mpAll']>0) { $pm = $u->stats['mpNow']/$u->stats['mpAll']*100; } $ph = $u->stats['hpNow']/$u->stats['hpAll']*100; $dp = ''; if($u->stats['mpAll']<=0) { $dp = 'margin-top:13px;'; } $r .= '
  '.$u->microLogin($u->info['id'],1).'  
'.floor($u->stats['hpNow']).'/'.$u->stats['hpAll'].'
'; if($u->stats['mpAll']>0) { $r .= '
'.floor($u->stats['mpNow']).'/'.$u->stats['mpAll'].'
'; } $r .= '
'; unset($stt,$ph,$pm); return $r; } public function cancelGroup($zv,$uids) { $upd = mysql_query('UPDATE `stats` SET `zv` = "0" WHERE `zv` = "'.$zv['id'].'"'); if($upd) { $upd = mysql_query('UPDATE `zayvki` SET `cancel` = "'.time().'" WHERE `id` = "'.$zv['id'].'"'); if($upd) { $text = ' Не удалось начать поединок по причине: Группа не набрана.'; mysql_query("INSERT INTO `chat` (`city`,`room`,`login`,`to`,`text`,`time`,`type`,`toChat`) VALUES ('".$zv['city']."','','','".$uids."','".$text."','".time()."','11','0')"); } } } public function add() { global $u,$c,$code; if(isset($_GET['r'])) { $r = round(intval($_GET['r'])); if($r>=1 && $r<=5) { $az = 1; if($r==1 && $u->info['level']>0){ $az = 0; $this->error = 'Вы уже выросли из ползунков ;)'; } if(($r==2 || $r==3) && $u->info['level']<1){ $az = 0; $this->error = 'Вы еще не выросли из ползунков ;)'; } if(($r==4 || $r==5) && $u->info['level']<2){ $az = 0; $this->error = 'В '.$this->z1n[$r].' бои только с второго уровня.'; } if(!isset($_POST['stavkakredit'])){ $_POST['stavkakredit'] = 0; } $money = (int)($_POST['stavkakredit']*100); $money = round(($money/100),2); if($u->info['hpNow']<$u->stats['hpAll']/100*30 && ($r>=1 || $r<=3)) { $this->error = 'Вы еще слишком ослаблены чтобы начать новый бой'; $az = 0; }elseif($r==3 && $money>0 && $u->info['level']<4) { $this->error = 'Бои на деньги проводятся с 4-го уровня'; $az = 0; }elseif($r==3 && $money<0.5 && $money>0) { $this->error = 'Минимальная ставка 0.50 кр.'; $az = 0; }elseif($r==3 && $money>30) { $this->error = 'Максимальная ставка 30.00 кр.'; $az = 0; }elseif($r==3 && $money>$u->info['money']) { $this->error = 'У Вас недостаточно денег, чтобы подать заявку'; $az = 0; } if($u->info['zv']>0){ $az = 0; $this->error = 'Вы уже находите в заявке.'; } if($az==1) { $nz = array(); $nz['city'] = $u->info['city']; $nz['creator'] = $u->info['id']; $nz['type'] = 0; if($_POST['k']==1){ $nz['type'] = 1; } $_POST['timeout'] = round(intval(mysql_real_escape_string($_POST['timeout']))); if($_POST['timeout']==1 || $_POST['timeout']==2 || $_POST['timeout']==3 || $_POST['timeout']==4 || $_POST['timeout']==5) { $nz['timeout'] = $_POST['timeout']*60; }else{ $nz['timeout'] = 3*60; } if($r==3) { if($_POST['onlyfor']!='') { $nz['withUser'] = mysql_real_escape_string($_POST['onlyfor']); } } $nz['razdel'] = $r; $nz['time_start'] = 0; $nz['min_lvl_1'] = 0; $nz['min_lvl_2'] = 0; $nz['max_lvl_1'] = 21; $nz['max_lvl_2'] = 21; $nz['tm1max'] = 0; $nz['tm2max'] = 0; $nz['travmaChance'] = 0; $nz['invise'] = 0; $nz['money'] = 0; $nz['comment'] = ''; $nz['tm1'] = 0; $nz['tm2'] = 0; $gad = 1; if($r==3) { $nz['money'] = $money; } if($r==5 && $u->info['level']>1) { //хаотичный бой if($_POST['startime2']) { $nz['time_start'] = (int)$_POST['startime2']; $nz['comment'] = $_POST['cmt']; $nz['comment'] = str_replace('"','"',$nz['comment']); if($nz['time_start']!=300 && $nz['time_start']!=600 && $nz['time_start']!=900 && $nz['time_start']!=1200 && $nz['time_start']!=1800) { $nz['time_start'] = 600; } if(isset($_POST['mut_hidden'])) { $nz['invise'] = 1; } $nz['timeout'] = (int)$_POST['timeout']; if($nz['timeout']!=1 && $nz['timeout']!=2 && $nz['timeout']!=3 && $nz['timeout']!=4 && $nz['timeout']!=5) { $nz['timeout'] = 3; } //Генерируем уровни союзника $lvl = (int)$_POST['levellogin1']; if($lvl == 0) { $nz['min_lvl_1'] = 2; $nz['max_lvl_1'] = 21; }elseif($lvl == 3) { $nz['min_lvl_1'] = $u->info['level']; $nz['max_lvl_1'] = $u->info['level']; }elseif($lvl == 6) { $nz['min_lvl_1'] = $u->info['level']-1; $nz['max_lvl_1'] = $u->info['level']+1; }else{ $nz['min_lvl_1'] = 2; $nz['max_lvl_1'] = 2; } if((int)$_POST['k']==1) { //кулачный бой $nz['type'] = 1; } $nz['timeout'] = $nz['timeout']*60; $nz['tm1'] = 100*$u->info['level']+10*$u->info['upLevel']+$u->info['exp']+$u->stats['reting']; }else{ $gad = 0; $this->error = 'Что-то не так...
'; } }elseif($r==4 && $u->info['level']>1) { //групповой бой //'Array ( [startime] => 300 [timeout] => 1 [nlogin1] => 11 [levellogin1] => 0 [nlogin2] => 11 [levellogin2] => 0 [k] => 1 [travma] => on [mut_clever] => on [cmt] => тест [open] => Начнем месилово! :) )'; //здесь заносим и проверяем данные на гурпповой бой if($_POST['startime']) { $nz['time_start'] = (int)$_POST['startime']; $nz['comment'] = $_POST['cmt']; $nz['comment'] = str_replace('"','"',$nz['comment']); if($nz['time_start']!=300 && $nz['time_start']!=600 && $nz['time_start']!=900 && $nz['time_start']!=1200 && $nz['time_start']!=1800) { $nz['time_start'] = 600; } $nz['timeout'] = (int)$_POST['timeout']; if($nz['timeout']!=1 && $nz['timeout']!=2 && $nz['timeout']!=3 && $nz['timeout']!=4 && $nz['timeout']!=5) { $nz['timeout'] = 3; } $nz['timeout'] = $nz['timeout']*60; $nz['tm1max'] = (int)$_POST['nlogin1']; if($nz['tm1max']<1 || $nz['tm1max']>99) { $this->error .= 'Неверное кол-во союзников
'; $gad = 0; } $nz['tm2max'] = (int)$_POST['nlogin2']; if($nz['tm2max']<1 || $nz['tm2max']>99) { $this->error .= 'Неверное кол-во противников
'; $gad = 0; } if($nz['tm1max']+$nz['tm2max']<3) { $this->error .= 'Заявки 1 на 1 подаются в разделе физические или договорные бои
'; $gad = 0; } //Генерируем уровни союзника $lvl = (int)$_POST['levellogin1']; if($lvl == 0) { $nz['min_lvl_1'] = 2; $nz['max_lvl_1'] = 21; }elseif($lvl == 1) { $nz['min_lvl_1'] = 2; $nz['max_lvl_1'] = $u->info['level']; }elseif($lvl == 2) { $nz['min_lvl_1'] = 2; $nz['max_lvl_1'] = $u->info['level']-1; }elseif($lvl == 3) { $nz['min_lvl_1'] = $u->info['level']; $nz['max_lvl_1'] = $u->info['level']; }elseif($lvl == 4) { $nz['min_lvl_1'] = $u->info['level']; $nz['max_lvl_1'] = $u->info['level']+1; }elseif($lvl == 5) { $nz['min_lvl_1'] = $u->info['level']-1; $nz['max_lvl_1'] = $u->info['level']; }elseif($lvl == 6) { $nz['min_lvl_1'] = $u->info['level']-1; $nz['max_lvl_1'] = $u->info['level']+1; }elseif($lvl == 6){ $nz['min_lvl_1'] = 99; }else{ $this->error = 'Что-то не так...
'; $gad = 0; } //Генерируем уровни противника $lvl = (int)$_POST['levellogin2']; if($lvl == 0) { $nz['min_lvl_2'] = 2; $nz['max_lvl_2'] = 21; }elseif($lvl == 1) { $nz['min_lvl_2'] = 2; $nz['max_lvl_2'] = $u->info['level']; }elseif($lvl == 2) { $nz['min_lvl_2'] = 2; $nz['max_lvl_2'] = $u->info['level']-1; }elseif($lvl == 3) { $nz['min_lvl_2'] = $u->info['level']; $nz['max_lvl_2'] = $u->info['level']; }elseif($lvl == 4) { $nz['min_lvl_2'] = $u->info['level']; $nz['max_lvl_2'] = $u->info['level']+1; }elseif($lvl == 5) { $nz['min_lvl_2'] = $u->info['level']-1; $nz['max_lvl_2'] = $u->info['level']; }elseif($lvl == 6) { $nz['min_lvl_2'] = $u->info['level']-1; $nz['max_lvl_2'] = $u->info['level']+1; }elseif($lvl == 6){ $nz['min_lvl_2'] = 99; }else{ $this->error = 'Что-то не так...
'; $gad = 0; } if($nz['min_lvl_1']<2){ $nz['min_lvl_1'] = 2; } if($nz['max_lvl_1']>21){ $nz['max_lvl_1'] = 21; } if($nz['min_lvl_2']<2){ $nz['min_lvl_2'] = 2; } if($nz['max_lvl_2']>21){ $nz['max_lvl_2'] = 21; } if((int)$_POST['k']==1) { //кулачный бой $nz['type'] = 1; } }else{ $gad = 0; $this->error = 'Что-то не так...
'; } } if($gad==1) { if(!isset($nz['withUser'])){ $nz['withUser'] = ''; } $bt1 = (int)$_POST['bot1']; $bt2 = (int)$_POST['bot2']; if($bt1>99){ $bt1 = 99; } if($bt2>99){ $bt2 = 99; } if($bt1<0){ $bt1 = 0; } if($bt2<0){ $bt2 = 0; } $ins = mysql_query('INSERT INTO `zayvki` (`bot1`,`bot2`,`time`,`city`,`creator`,`type`,`time_start`,`timeout`,`min_lvl_1`,`min_lvl_2`,`max_lvl_1`,`max_lvl_2`,`tm1max`,`tm2max`,`travmaChance`,`invise`,`razdel`,`comment`,`money`,`withUser`,`tm1`,`tm2`) VALUES ( "'.((int)$bt1).'", "'.((int)$bt2).'", "'.time().'", "'.$nz['city'].'", "'.$nz['creator'].'", "'.$nz['type'].'", "'.$nz['time_start'].'", "'.mysql_real_escape_string($nz['timeout']).'", "'.mysql_real_escape_string($nz['min_lvl_1']).'", "'.mysql_real_escape_string($nz['min_lvl_2']).'", "'.mysql_real_escape_string($nz['max_lvl_1']).'", "'.mysql_real_escape_string($nz['max_lvl_2']).'", "'.mysql_real_escape_string($nz['tm1max']).'", "'.mysql_real_escape_string($nz['tm2max']).'", "'.$nz['travmaChance'].'", "'.$nz['invise'].'", "'.$nz['razdel'].'", "'.mysql_real_escape_string($nz['comment']).'", "'.mysql_real_escape_string($nz['money']).'", "'.$nz['withUser'].'","'.$nz['tm1'].'","'.$nz['tm2'].'")'); $zid = mysql_insert_id(); if($ins) { mysql_query('UPDATE `stats` SET `zv`="'.$zid.'",`team`="1" WHERE `id`="'.$u->info['id'].'" LIMIT 1'); $u->info['zv'] = $zid; $this->error = 'Заявка на бой подана'; }else{ $this->error = 'Вы не смогли подать заявку...'; } } } } } } //тренеровочный бой public function addBot() { global $u,$c,$code; if($u->info['level']>3 && $u->info['admin']==0 && $u->info['id']!=1011840) { $bot = false; }else{ $bot = $u->addNewbot($id['id'],NULL,$u->info['id']); } if($bot==false) { $this->error = 'Бои с монстрами, нежитью, клонами и прочими вурдалаками проводятся только для персонажей младше 4 уровня...
Со стороны посматривает Общий Враг, ему явно что-то не понравилось...
'; }elseif($u->info['hpNow']<$u->stats['hpAll']/100*30 && ($r>=1 || $r<=3)) { $this->error = 'Вы еще слишком ослаблены чтобы начать новый бой'; $az = 0; }elseif($bot==false) { echo '
Cannot start battle (no prototype "ND0Clone")
'; }else{ //создаем поединок с ботом $expB = 25; $btl = array('players'=>'','timeout'=>60,'type'=>0,'invis'=>0,'noinc'=>0,'travmChance'=>0,'typeBattle'=>0,'addExp'=>$expB,'money'=>0); $ins = mysql_query('INSERT INTO `battle` (`city`,`time_start`,`players`,`timeout`,`type`,`invis`,`noinc`,`travmChance`,`typeBattle`,`addExp`,`money`) VALUES ( "'.$u->info['city'].'", "'.time().'", "'.$btl['players'].'", "'.$btl['timeout'].'", "'.$btl['type'].'", "'.$btl['invis'].'", "'.$btl['noinc'].'", "'.$btl['travmChance'].'", "'.$btl['typeBattle'].'", "'.$btl['addExp'].'", "'.$btl['money'].'")'); if($ins) { $btl_id = mysql_insert_id(); //обновляем данные о поединке $upd2 = mysql_query('UPDATE `users` SET `battle`="'.$btl_id.'" WHERE `id` = "'.$u->info['id'].'" OR `id` = "'.$bot.'" LIMIT 2'); mysql_query('UPDATE `stats` SET `team`="1" WHERE `id` = "'.$u->info['id'].'" LIMIT 1'); mysql_query('UPDATE `stats` SET `team`="2" WHERE `id` = "'.$bot.'" LIMIT 1'); //Если бой кулачный, то снимаем вещи if($btl['type']==1) { mysql_query('UPDATE `items_users` SET `inOdet`="0" WHERE `uid` = "'.$u->info['id'].'" AND `inOdet`!=0'); mysql_query('UPDATE `items_users` SET `inOdet`="0" WHERE `uid` = "'.$bot.'" AND `inOdet`!=0'); } //обновляем заявку, что бой начался $u->info['battle'] = $btl_id; //Отправляем сообщение в чат всем бойцам mysql_query("INSERT INTO `chat` (`city`,`room`,`to`,`time`,`type`,`toChat`,`sound`) VALUES ('".$u->info['city']."','".$u->info['room']."','".$u->info['login']."','".time()."','11','0','117')"); die(''); }else{ $this->error = 'Cannot start battle (no prototype "ABD0Clone")'; } } } //Изломы public function startIzlom($id2,$lvl) { global $u,$c,$code; $lvl = (int)$lvl; $bots = array(1=>'Снеговик Меченосец'); $id = mysql_fetch_array(mysql_query('SELECT * FROM `test_bot` WHERE `login` = "'.$bots[$id2].' ['.$lvl.']" AND `active` = "1" LIMIT 1')); $bot = $u->addNewbot($id['id'],NULL); if(isset($id['id']) && $bot!=false) { //создаем поединок с ботом $expB = -$bot['expB']; $btl = array('players'=>'','timeout'=>60,'type'=>9,'invis'=>0,'noinc'=>0,'travmChance'=>0,'typeBattle'=>0,'addExp'=>$expB,'money'=>0,'izlom'=>(int)$id2,'izlomLvl'=>(int)$lvl); $ins = mysql_query('INSERT INTO `battle` (`city`,`time_start`,`players`,`timeout`,`type`,`invis`,`noinc`,`travmChance`,`typeBattle`,`addExp`,`money`,`izlom`,`izlomLvl`) VALUES ( "'.$u->info['city'].'", "'.time().'", "'.$btl['players'].'", "'.$btl['timeout'].'", "'.$btl['type'].'", "'.$btl['invis'].'", "'.$btl['noinc'].'", "'.$btl['travmChance'].'", "'.$btl['typeBattle'].'", "'.$btl['addExp'].'", "'.$btl['money'].'","'.$btl['izlom'].'","'.$btl['izlomLvl'].'")'); if($ins) { $btl_id = mysql_insert_id(); //обновляем данные о поединке $upd2 = mysql_query('UPDATE `users` SET `battle`="'.$btl_id.'" WHERE `id` = "'.$u->info['id'].'" OR `id` = "'.$bot['id'].'" LIMIT 2'); mysql_query('UPDATE `stats` SET `team`="1" WHERE `id` = "'.$u->info['id'].'" LIMIT 1'); mysql_query('UPDATE `stats` SET `team`="2" WHERE `id` = "'.$bot['id'].'" LIMIT 1'); //Если бой кулачный, то снимаем вещи if($btl['type']==1) { mysql_query('UPDATE `items_users` SET `inOdet`="0" WHERE `uid` = "'.$u->info['id'].'" AND `inOdet`!=0'); mysql_query('UPDATE `items_users` SET `inOdet`="0" WHERE `uid` = "'.$bot['id'].'" AND `inOdet`!=0'); } //обновляем заявку, что бой начался $u->info['battle'] = $btl_id; //Отправляем сообщение в чат всем бойцам mysql_query("INSERT INTO `chat` (`city`,`room`,`to`,`time`,`type`,`toChat`,`sound`) VALUES ('".$u->info['city']."','".$u->info['room']."','".$u->info['login']."','".time()."','11','0','117')"); die(''); }else{ $this->error = 'Cannot start battle (no prototype "ABD0'.$id['id'].'")'; } }else{ echo '
Cannot start battle (no prototype "ND0IZ'.$lvl.'")
'; } } public function startBattle($id,$vars = NULL) { global $c,$code,$u; mysql_query('START TRANSACTION'); $z = mysql_fetch_array(mysql_query('SELECT * FROM `zayvki` WHERE `id`="'.$id.'" AND `start` = "0" AND `cancel` = "0" AND (`time` > "'.(time()-60*60*2).'" OR `razdel` > 3) LIMIT 1')); if(isset($z['id'])) { $vars = explode('|-|',$vars); if($z['razdel']>=4 && $zv['razdel']<=5) { //начало группового или хаотичного боя $btl_id = 0; $btl = array('players'=>'','timeout'=>$z['timeout'],'type'=>$z['type'],'invis'=>0,'noinc'=>0,'travmChance'=>0,'typeBattle'=>0,'addExp'=>0,'money'=>0); $ins = mysql_query('INSERT INTO `battle` (`city`,`time_start`,`players`,`timeout`,`type`,`invis`,`noinc`,`travmChance`,`typeBattle`,`addExp`,`money`) VALUES ( "'.$u->info['city'].'", "'.time().'", "'.mysql_real_escape_string($btl['players']).'", "'.mysql_real_escape_string($btl['timeout']).'", "'.mysql_real_escape_string($btl['type']).'", "'.mysql_real_escape_string($btl['invis']).'", "'.mysql_real_escape_string($btl['noinc']).'", "'.mysql_real_escape_string($btl['travmChance']).'", "'.mysql_real_escape_string($btl['typeBattle']).'", "'.mysql_real_escape_string($btl['addExp']).'", "'.mysql_real_escape_string($btl['money'],2).'")'); $btl_id = mysql_insert_id(); if($btl_id>0) { //обновляем данные о поединке $upd1 = mysql_query('UPDATE `stats` SET `zv`="0" WHERE `zv` = "'.$z['id'].'"'); $upd2 = mysql_query('UPDATE `users` SET `battle`="'.$btl_id.'" WHERE '.$vars[1].''); //Если бой кулачный, то снимаем вещи if($z['type']==1) { //mysql_query('UPDATE `items_users` SET `inOdet`="0" WHERE `uid` = "'.$u->info['id'].'" AND `inOdet`!=0'); } //обновляем заявку, что бой начался $upd = mysql_query('UPDATE `zayvki` SET `start` = "'.time().'",`btl_id` = "'.$btl_id.'" WHERE `id` = "'.$z['id'].'" LIMIT 1'); $u->info['battle'] = $btl_id; //Отправляем сообщение в чат всем бойцам mysql_query("INSERT INTO `chat` (`city`,`room`,`to`,`time`,`type`,`toChat`,`sound`) VALUES ('".$u->info['city']."','-1','".$vars[0]."','".time()."','11','0','117')"); die(''); } }elseif($z['razdel']>=1 && $z['razdel']<=3) { //начало PvP if($u->info['team']==1 && $u->info['zv']==$z['id']) { $zu = mysql_fetch_array(mysql_query('SELECT * FROM `stats` WHERE `zv`="'.$z['id'].'" AND `team` = "2" LIMIT 1')); if(isset($zu['id'])) { $uz = mysql_fetch_array(mysql_query('SELECT `login`,`money` FROM `users` WHERE `id`="'.$zu['id'].'" LIMIT 1')); //создаем поединок $btl_id = 0; if($uz['money']<$z['money'] || $u->info['money']<$z['money']) { $z['money'] = 0; } $btl = array('players'=>'','timeout'=>$z['timeout'],'type'=>$z['type'],'invis'=>0,'noinc'=>0,'travmChance'=>0,'typeBattle'=>0,'addExp'=>0,'money'=>round($z['money'],2)); $ins = mysql_query('INSERT INTO `battle` (`city`,`time_start`,`players`,`timeout`,`type`,`invis`,`noinc`,`travmChance`,`typeBattle`,`addExp`,`money`) VALUES ( "'.$u->info['city'].'", "'.time().'", "'.mysql_real_escape_string($btl['players']).'", "'.mysql_real_escape_string($btl['timeout']).'", "'.mysql_real_escape_string($btl['type']).'", "'.mysql_real_escape_string($btl['invis']).'", "'.mysql_real_escape_string($btl['noinc']).'", "'.mysql_real_escape_string($btl['travmChance']).'", "'.mysql_real_escape_string($btl['typeBattle']).'", "'.mysql_real_escape_string($btl['addExp']).'", "'.mysql_real_escape_string($btl['money']).'")'); $btl_id = mysql_insert_id(); if($ins) { //обновляем данные о поединке $upd1 = mysql_query('UPDATE `stats` SET `zv`="0" WHERE `zv` = "'.$z['id'].'" LIMIT 2'); $upd2 = mysql_query('UPDATE `users` SET `battle`="'.$btl_id.'" WHERE `id` = "'.$u->info['id'].'" OR `id` = "'.$zu['id'].'" LIMIT 2'); //Если бой кулачный, то снимаем вещи if($z['type']==1) { mysql_query('UPDATE `items_users` SET `inOdet`="0" WHERE `uid` = "'.$u->info['id'].'" AND `inOdet`!=0'); mysql_query('UPDATE `items_users` SET `inOdet`="0" WHERE `uid` = "'.$zu['id'].'" AND `inOdet`!=0'); } //обновляем заявку, что бой начался $upd = mysql_query('UPDATE `zayvki` SET `start` = "'.time().'",`btl_id` = "'.$btl_id.'" WHERE `id` = "'.$z['id'].'" LIMIT 1'); $u->info['battle'] = $btl_id; //Отправляем сообщение в чат всем бойцам mysql_query("INSERT INTO `chat` (`city`,`room`,`to`,`time`,`type`,`toChat`,`sound`) VALUES ('".$u->info['city']."','".$u->info['room']."','".$uz['login']."','".time()."','11','0','117')"); die(''); }else{ $this->error = 'Ошибка создания битвы.'; } }else{ $this->error = 'Вы не можете начать поединок, вашу заявку никто не принял.'; } }else{ $this->error = 'Вы не можете начать поединок.'; } } } mysql_query('COMMIT'); } public function cancelzv() { global $u,$c,$code,$zi; if(isset($_GET['cancelzv'],$zi['id']) && $zi['razdel']>=1 && $zi['razdel']<=3) { $enemy = mysql_fetch_array(mysql_query('SELECT `u`.*,`st`.* FROM `stats` AS `st` LEFT JOIN `users` AS `u` ON (`st`.`id` = `u`.`id`) WHERE `st`.`zv`="'.$zi['id'].'" AND `st`.`team` = "2" LIMIT 1')); if(isset($enemy['id'])) { if($zi['razdel']>=1 && $zi['razdel']<=3) { if($u->info['team']==1) { //выкидываем из заявки + пишем сообщение в чат $upd = mysql_query('UPDATE `stats` SET `zv` = "0",`team`="0" WHERE `id` = "'.$enemy['id'].'" LIMIT 1'); if($upd) { $this->error = 'Вы отказали '.$enemy['login'].' в поединке'; //отправляем сообщение в чат $sa = ''; if($u->info['sex']==2) { $sa = 'а'; } $text = ' [login:'.$u->info['login'].'] отказал'.$sa.' вам в поединке.'; mysql_query("INSERT INTO `chat` (`city`,`room`,`login`,`to`,`text`,`time`,`type`,`toChat`) VALUES ('".$enemy['city']."','".$enemy['room']."','','".$enemy['login']."','".$text."','".time()."','10','0')"); } }elseif($u->info['id']==$enemy['id'] && $zi['start']==0) { //выкидываем из заявки + пишем сообщение в чат $upd = mysql_query('UPDATE `stats` SET `zv` = "0",`team`="0" WHERE `id` = "'.$enemy['id'].'" LIMIT 1'); if($upd) { $uz = mysql_fetch_array(mysql_query('SELECT `u`.`sex`,`u`.`login`,`u`.`city`,`u`.`room`,`u`.`id`,`st`.`zv`,`st`.`team` FROM `stats` AS `st` LEFT JOIN `users` AS `u` ON (`st`.`id` = `u`.`id`) WHERE `st`.`zv`="'.$zi['id'].'" AND `st`.`team` = "1" LIMIT 1')); if(isset($uz['id'])) { $this->error = 'Вы отозвали свой запрос на бой.'; //отправляем сообщение в чат $sa = ''; if($u->info['sex']==2) { $sa = 'а'; } $text = ' [login:'.$u->info['login'].'] отозвал'.$sa.' свой запрос на бой.'; mysql_query("INSERT INTO `chat` (`city`,`room`,`login`,`to`,`text`,`time`,`type`,`toChat`) VALUES ('".$uz['city']."','".$uz['room']."','','".$uz['login']."','".$text."','".time()."','10','0')"); } $u->info['zv'] = 0; $u->info['team'] = 0; } } } }else{ if($zi['razdel']>=1 && $zi['razdel']<=3 && $u->info['team']==1) { //удаляем заявку на бой $upd = mysql_query('UPDATE `zayvki` SET `cancel` = "'.time().'" WHERE `id` = "'.$zi['id'].'" LIMIT 1'); if($upd) { mysql_query('UPDATE `stats` SET `zv` = "0" WHERE `id` = "'.$u->info['id'].'" LIMIT 1'); $this->error = 'Вы отозвали свою заявку'; $zi = false; $u->info['zv'] = 0; } } } } } public function see() { global $u,$c,$code,$zi,$cron; if(isset($_GET['r']) && ((!isset($_GET['new_group']) && !isset($_POST['groupClick'])) || isset($zi['id'])) ) { $r = round(intval($_GET['r'])); if($r>=1 && $r<=5) { $this->zv_see = 1; if($u->room['FR']==0) { echo '


Подать заявку можно только в комнатах бойцовского клуба
'; $this->zv_see = 0; }elseif($r==1 && $u->info['level']>0) { echo '


Вы уже выросли из ползунков ;)
'; $this->zv_see = 0; }elseif($r>1 && $r<6 && $u->info['level']<1) { echo '


Вы еще не выросли из ползунков ;)
'; $this->zv_see = 0; }elseif($r>3 && $r<6 && $u->info['level']<2) { echo '


В '.$this->z1n[$r].' бои только с второго уровня.
'; $this->zv_see = 0; }elseif($r==1 && $u->info['level']>0) { echo '


Вы уже выросли из ползунков ;)
'; $this->zv_see = 0; }elseif($u->info['zv']>0 && $u->info['battle']==0) { if($zi['razdel']==1 || $zi['razdel']==2 || $zi['razdel']==3) { echo '
'; if($u->info['team']==1) { $uz = mysql_fetch_array(mysql_query('SELECT `u`.`sex`,`u`.`id`,`u`.`login`,`u`.`align`,`u`.`clan`,`u`.`admin`,`u`.`city`,`u`.`room`,`u`.`online`,`u`.`level`,`u`.`battle`,`u`.`money`,`st`.* FROM `stats` AS `st` LEFT JOIN `users` AS `u` ON (`st`.`id` = `u`.`id`) WHERE `st`.`zv`="'.$zi['id'].'" AND `st`.`team`="2" LIMIT 1')); if(!isset($uz['id'])) { //если никто не принял echo '
Вы уже подали заявку на бой
'; }else{ //если кто-то принял $sa = ''; if($uz['sex']==2) { $sa = 'а'; } echo 'Вашу заявку принял'.$sa.' '.$ca.' '.$u->microLogin($uz['id'],1).' Хотите подтвердить бой? '; } }else{ $uz = mysql_fetch_array(mysql_query('SELECT `u`.`id`,`u`.`login`,`u`.`align`,`u`.`clan`,`u`.`admin`,`u`.`city`,`u`.`room`,`u`.`online`,`u`.`level`,`u`.`battle`,`u`.`money`,`st`.* FROM `stats` AS `st` LEFT JOIN `users` AS `u` ON (`st`.`id` = `u`.`id`) WHERE `st`.`zv`="'.$zi['id'].'" AND `st`.`team`="1" LIMIT 1')); if(isset($uz['id'])) { echo 'Ожидаем подтверждения боя от '.$u->microLogin($uz['id'],1).' '; }else{ //удаляем заявку } } echo '
'; }else{ $tm_start = floor(($zi['time']+$zi['time_start']-time())/6)/10; $tm_start = $this->rzv($tm_start); echo '
Ожидаем начала '.$this->z2n[$zi['razdel']].' боя'; $sv0 = mysql_fetch_array(mysql_query('SELECT COUNT(*) FROM `stats` WHERE `zv` = "'.$zi['id'].'" LIMIT 100')); if($sv0[0] <= 1) { if(isset($_GET['cancelzvnow'])) { echo ' Заявка на бой отменена'; $u->info['zv'] = 0; mysql_query('UPDATE `stats` SET `zv` = "0",`team` = "0" WHERE `id` = "'.$u->info['id'].'" LIMIT 1'); }else{ echo ' Отменить'; } } unset($sv0); echo '
Ваш бой начнется через '.$tm_start.' мин.'; } }elseif($r==1 || $r==2 || $r==3) { //новички,физические,договорные $zi = array(1=>'Если вы не достигли первого уровня, то для вас это единственный способ для проведения битв.',2=>'Здесь вы можете найти себе достойного противника для сражения.',3=>'Если вы предварительно с кем-то договорились о поединке, то лучше здесь подать заявку.'); $dv = ''; if($r==3) { $dv = '
Логин противника
Бой на деньги, ставка  '; }else{ $dv = ''; if($u->info['level']<4 || $u->info['admin']>0 || $u->info['id']==1011840) { $dv .= ' '; } } echo '
'.$zi[$r].'
Подать заявку на бой Таймаут Тип боя '.$dv.'
'; }elseif($r==4) { //групповые echo ' '; }elseif($r==5) { //хаотичные echo 'Хаотичный бой - разновидность группового, где группы формируются автоматически. Бой не начнется, если собралось меньше 4-х человек.
Подать заявку на хаотичный бой
'; } }elseif($r==6) { //текущие echo 'Текущие бои...'; }elseif($r==7) { //завершенные $btl = ''; $dt = time(); $slogin = $u->info['login']; $see = '
 « Предыдущий день

Записи о завершенных боях за '.date('d.m.Y',$dt).'

Следующий день » 
Показать только бои персонажа: за
'; if($btl=='') { $see .= '


В этот день не было боев, или же, летописец опять потерял свитки...




'; }else{ $see .= $btl; } echo $see; }else{ if((!isset($_GET['new_group']) && !isset($_POST['groupClick'])) || isset($zi['id'])) { echo '

Выберите раздел
'; } } }else{ if((!isset($_GET['new_group']) && !isset($_POST['groupClick'])) || isset($zi['id'])) { echo '

Выберите раздел
'; } } } public function rzv($v) { $v = explode('.',$v); if(!isset($v[1])) { $v = $v[0].'.0'; }else{ $v = $v[0].'.'.$v[1]; } return $v; } public function rzInfo($id) { global $u; $r = ''; $w = mysql_num_rows(mysql_query('SELECT * FROM `zayvki` WHERE `time` > '.(time()-7200).' AND `city` = "'.$u->info['city'].'" AND `cancel` = "0" AND `start` = "0" AND `razdel` = "'.$id.'" AND (`min_lvl_1` <= '.$u->info['level'].' OR `min_lvl_2` <= '.$u->info['level'].') AND (`max_lvl_1` >= '.$u->info['level'].' OR `max_lvl_2` >= '.$u->info['level'].')')); if($w>0) { $r = ' ('.$w.')'; } return $r; } public function testzvu($id,$tm,$bt) { $r = 0; if($bt==0) { $r = mysql_num_rows(mysql_query('SELECT `id` FROM `stats` WHERE `zv` = "'.$id.'" AND `team` = "'.$tm.'"')); }else{ $r = mysql_num_rows(mysql_query('SELECT `id` FROM `stats` WHERE `zv` = "'.$id.'" AND `team` = "'.$tm.'" AND `bot` = "2"')); } return $r; } public function seeZv() { global $u,$c,$code,$zi; if(isset($_GET['r']) && $this->zv_see==1) { $r = round(intval($_GET['r'])); if($r>=1 && $r<=5) { //Список заявок $i = 0; $cl = mysql_query('SELECT * FROM `zayvki` WHERE `razdel` = "'.mysql_real_escape_string($r).'" AND `start` = "0" AND `cancel` = "0" AND `time` > "'.(time()-60*60*2).'" AND `city` = "'.$u->info['city'].'" ORDER BY `id` DESC'); $zvb = ''; if($r==4 || $r==5) { /*echo '
Показывать заявки  
 

';*/ } while($pl = mysql_fetch_array($cl)) { if($pl['razdel']==5) { //Заявки хаотичного боя $tm = ''; $tmStart = floor(($pl['time']+$pl['time_start']-time())/6)/10; $tmStart = $this->rzv($tmStart); $users = mysql_query('SELECT `u`.`id`,`u`.`login`,`u`.`level`,`u`.`align`,`u`.`clan`,`u`.`admin`,`st`.`team` FROM `users` AS `u` LEFT JOIN `stats` AS `st` ON `u`.`id` = `st`.`id` WHERE `st`.`zv` = "'.$pl['id'].'"'); while($s = mysql_fetch_array($users)) { $tm .= $u->microLogin($uz['id'],1).', '; } $rad = ''; $tm = rtrim($tm,', '); if(!isset($zi['id'])) { $rad = ' '; } $n1tv = ''; if($pl['invise']==1) { //невидимый бой $tm = 'невидимый'; $n1tv = ' '; } $zvb .= ''.$rad.''.date('H:i',$pl['time']).' ('.$tm.') ('.$pl['min_lvl_1'].'-'.$pl['max_lvl_1'].') '.$n1tv.' Бой начнется через '.$tmStart.' мин., таймаут '.($pl['timeout']/60).' мин.
'; }elseif($pl['razdel']==4) { //Заявки группового боя $tm1 = ''; $tm2 = ''; $tmStart = floor(($pl['time']+$pl['time_start']-time())/6)/10; $tmStart = $this->rzv($tmStart); //Персонаж в заявке, подключаем ему противника //Ищем апонента для групповых $rndo = rand(0,1000); if($rndo < 250) { $apo = array(); if(rand(0,100)<51) { $apo['team'] = 1; }else{ $apo['team'] = 2; } if($this->testzvu($pl['id'],$apo['team'],0) < $pl['tm'.$apo['team'].'max'] && $this->testzvu($pl['id'],$apo['team'],1) < $pl['bot'.$apo['team']]) { $spj = mysql_fetch_array(mysql_query('SELECT `u`.*,`st`.* FROM `users` AS `u` LEFT JOIN `stats` AS `st` ON (`u`.`id` = `st`.`id`) WHERE (`u`.`level` >= '.$pl['min_lvl_'.$apo['team']].' AND `u`.`level` <= '.$pl['max_lvl_'.$apo['team']].') AND `st`.`bot` = "2" AND `u`.`battle` = "0" AND `st`.`zv` = "0" LIMIT 1')); if(isset($spj['id'])) { mysql_query('UPDATE `stats` SET `hpNow` = "3000",`mpNow` = "3000",`zv` = "'.$pl['id'].'",`team` = "'.$apo['team'].'" WHERE `id` = "'.$spj['id'].'" LIMIT 1'); } } } //генерируем команды $users = mysql_query('SELECT `u`.`id`,`u`.`login`,`u`.`level`,`u`.`align`,`u`.`clan`,`u`.`admin`,`st`.`team` FROM `users` AS `u` LEFT JOIN `stats` AS `st` ON `u`.`id` = `st`.`id` WHERE `st`.`zv` = "'.$pl['id'].'"'); while($s = mysql_fetch_array($users)) { ${'tm'.$s['team']} .= $u->microLogin($s['id'],1).', '; } if($tm1=='') { $tm1 = 'группа пока не набрана'; }else{ $tm1 = rtrim($tm1,', '); } if($tm2=='') { $tm2 = 'группа пока не набрана'; }else{ $tm2 = rtrim($tm2,', '); } $rad = ''; if(!isset($zi['id'])) { $rad = ' '; } $zvb .= ''.$rad.''.date('H:i',$pl['time']).' '.$pl['tm1max'].' ('.$pl['min_lvl_1'].'-'.$pl['max_lvl_1'].') на '.$pl['tm2max'].' ('.$pl['min_lvl_2'].'-'.$pl['max_lvl_2'].') ('.$tm1.') против ('.$tm2.') Бой начнется через '.$tmStart.' мин., таймаут '.($pl['timeout']/60).' мин.
'; }elseif($pl['razdel']>=1 && $pl['razdel']<=3) { $uz = mysql_fetch_array(mysql_query('SELECT `u`.`banned`,`u`.`id`,`u`.`login`,`u`.`align`,`u`.`clan`,`u`.`admin`,`u`.`city`,`u`.`room`,`u`.`online`,`u`.`level`,`u`.`battle`,`u`.`money`,`st`.* FROM `stats` AS `st` LEFT JOIN `users` AS `u` ON (`st`.`id` = `u`.`id`) WHERE `st`.`zv`="'.$pl['id'].'" AND `st`.`team`="1" LIMIT 1')); if(isset($uz['id'])) { $uze = mysql_fetch_array(mysql_query('SELECT `u`.*,`st`.* FROM `stats` AS `st` LEFT JOIN `users` AS `u` ON (`st`.`id` = `u`.`id`) WHERE `st`.`zv`="'.$pl['id'].'" AND `st`.`team` = "2" LIMIT 1')); $d1 = ''; if($uz['id']==$u->info['id'] || $uze['id']==$u->info['id']) { $d1 = 'disabled="disabled"'; } if(!isset($uze['id']) || $u->info['zv']==$pl['id']) { $enm = ''; if(isset($uze['id'])) { $enm = ' против '.$u->microLogin($uze['id'],1).''; } if($uz['banned']>0) { $pl['id'] = 0; $d1 = 'disabled="disabled"'; $zvb .= ''; } $dp1 = ''; if($pl['money']>0) { $dp1 = ' Бой на деньги, ставка: '.$u->round2($pl['money']).' кр.'; } $zvb .= ' '.date('H:i',$pl['time']).' '.$u->microLogin($uz['id'],1).' '.$enm.' тип боя: (таймаут '.round($pl['timeout']/60).' мин.'.$dp1.')
'; if($uz['banned']>0){ $zvb .= '
'; } } } } $i++; } if($i==0) { //заявок нет }else{ if(!isset($zi['id'])) { echo '

'.$zvb.'
'; }else{ echo $zvb; } } } } } public function go($id) { global $u,$c,$code,$zi,$filter; if(!isset($zi['id'])) { if($u->info['battle']==0) { $z = mysql_fetch_array(mysql_query('SELECT * FROM `zayvki` WHERE `id`="'.mysql_real_escape_string(intval($id)).'" AND `city` = "'.$u->info['city'].'" AND `start` = "0" AND `cancel` = "0" AND `time` > "'.(time()-60*60*2).'" LIMIT 1')); if(isset($z['id'])) { if($z['razdel']>=1 && $z['razdel']<=3) { //новички, физы, договорные $uz1 = mysql_fetch_array(mysql_query('SELECT `u`.`id`,`u`.`login`,`u`.`align`,`u`.`clan`,`u`.`admin`,`u`.`city`,`u`.`room`,`u`.`online`,`u`.`level`,`u`.`battle`,`u`.`money`,`st`.* FROM `stats` AS `st` LEFT JOIN `users` AS `u` ON (`st`.`id` = `u`.`id`) WHERE `st`.`zv`="'.$z['id'].'" AND `st`.`team`="1" LIMIT 1')); if(isset($uz1['id'])) { $uz2 = mysql_fetch_array(mysql_query('SELECT `u`.`id`,`u`.`login`,`u`.`align`,`u`.`clan`,`u`.`admin`,`u`.`city`,`u`.`room`,`u`.`online`,`u`.`level`,`u`.`battle`,`u`.`money`,`st`.* FROM `stats` AS `st` LEFT JOIN `users` AS `u` ON (`st`.`id` = `u`.`id`) WHERE `st`.`zv`="'.$z['id'].'" AND `st`.`team`="2" LIMIT 1')); if($u->info['hpNow']<$u->stats['hpAll']/100*30 && ($z['razdel']>=1 || $z['razdel']<=3)) { $this->error = 'Вы еще слишком ослаблены чтобы начать новый бой'; $az = 0; }elseif($uz1['clan']==$u->info['clan'] && $u->info['clan']!=0) { $this->error = 'Вы не можете сражаться против сокланов'; }elseif($z['money']>0 && $u->info['level']<4) { $this->error = 'Бои на деньги проводятся с 4-го уровня'; }elseif($z['withUser']!='' && $filter->mystr($u->info['login'])!=$filter->mystr($z['withUser']) && $z['razdel']==3) { $this->error = 'Вы не можете принять эту заявку'; }elseif($z['money']>0 && $z['money']>$u->info['money']) { $this->error = 'У Вас недостаточно денег, чтобы принять эту заявку'; }elseif($u->stats['hpNow']stats['hpMax']/100*30)) { $this->error = 'Вы слишком ослаблены, восстановитесь'; }elseif(!isset($uz2['id'])) { $upd = mysql_query('UPDATE `stats` SET `zv` = "'.$z['id'].'",`team` = "2" WHERE `id` = "'.$u->info['id'].'" LIMIT 1'); if($upd) { $ca = ''; if($uz1['clan']!=0) { $pc = mysql_fetch_array(mysql_query('SELECT * FROM `clan` WHERE `id`="'.$uz1['clan'].'" LIMIT 1')); if(isset($pc['id'])) { $pc['img'] = $pc['name_mini'].'.gif'; $ca = ''; } } if($uz1['align']!=0) { $ca = ''.$ca; } $this->error = 'Ожидаем подтверждения боя от '.$ca.' '.$uz1['login'].' ['.$uz1['level'].']'; $sa = ''; if($u->info['sex']==2) { $sa = 'а'; } $text = ' [login:'.$u->info['login'].'] принял'.$sa.' вашу заявку на бой.[reflesh_main_zv_priem:'.$u->info['id'].']'; mysql_query("INSERT INTO `chat` (`city`,`room`,`login`,`to`,`text`,`time`,`type`,`toChat`) VALUES ('".$uz1['city']."','".$uz1['room']."','','".$uz1['login']."','".$text."','".time()."','10','0')"); $zi = $z; $u->info['zv'] = $z['id']; $u->info['team'] = 2; }else{ $this->error = 'Невозможно принять заявку.'; } }else{ $this->error = 'Заявку уже кто-то принял до вас.'; } }else{ $this->error = 'Заявка на бой заблокирована.'; } }elseif($z['razdel']==4 && $u->info['level']>1) { $tm = 0; //групповые if(isset($_GET['tm1'])) { $tm = 1; }elseif(isset($_GET['tm2'])) { $tm = 2; }else{ $this->error = 'Что-то здесь не так'; } if($tm!=0) { $t1 = $tm; $t2 = 1; $tmmax = 0; if($tm==1){ $t2 = 2; } $cl111 = mysql_query('SELECT `u`.`clan`,`st`.`team`,`st`.`id`,`st`.`zv` FROM `stats` AS `st` LEFT JOIN `users` AS `u` ON (`st`.`id` = `u`.`id`) WHERE `st`.`zv` = "'.$z['id'].'" LIMIT 200'); $cln = 0; while($pc111 = mysql_fetch_array($cl111)) { if($pc111['clan']==$u->info['clan'] && $u->info['clan']!=0 && $pc111['team']==$t2) { $cln++; } if($pc111['team']==$t1) { $tmmax++; } } if($cln>0) { $this->error = 'Вы не можете сражаться против сокланов'; }elseif($z['tm'.$t1.'max']>$tmmax) { if($z['min_lvl_'.$t1]>$u->info['level'] || $z['max_lvl_'.$t1]<$u->info['level']) { $this->error = 'Вы не подходите по уровню, за эту команду могут зайти персонажи '.$z['min_lvl_'.$t1].' - '.$z['max_lvl_'.$t1].' уровня'; }elseif($u->stats['hpNow']stats['hpMax']/100*30)) { $this->error = 'Вы слишком ослаблены, восстановитесь'; }else{ $upd = mysql_query('UPDATE `stats` SET `zv` = "'.$z['id'].'",`team` = "'.mysql_real_escape_string((int)$t1).'" WHERE `id` = "'.$u->info['id'].'" LIMIT 1'); if(!$upd) { $this->error = 'Ошибка приема заявки...'; }else{ $this->error = 'Вы приняли групповой бой...'; $zi = $z; $u->info['zv'] = $z['id']; $u->info['team'] = mysql_real_escape_string((int)$t1); } } }else{ $this->error = 'Группа уже набрана ('.($z['tm'.$t1.'max']-$tmmax).')'; } } }elseif($z['razdel']==5 && $u->info['level']>1) { //хаотичные if($z['min_lvl_1']>$u->info['level'] || $z['max_lvl_1']<$u->info['level']) { $this->error = 'Вы не подходите по уровню, за эту команду могут зайти персонажи '.$z['min_lvl_1'].' - '.$z['max_lvl_1'].' уровня'; }elseif($u->stats['hpNow']stats['hpMax']/100*30)) { $this->error = 'Вы слишком ослаблены, восстановитесь'; }else{ $t1 = 1; /* считаем баланс */ if($z['tm1']>$z['tm2']) { $t1 = 2; }elseif($z['tm1']<$z['tm2']) { $t1 = 1; }else{ $t1 = rand(1,2); } if($z['invise']==1) { $nxtID = mysql_fetch_array(mysql_query('SELECT COUNT(*) FROM `stats` WHERE `zv` = "'.$z['id'].'"')); $nxtID = $nxtID[0]; $u->info['login2'] = 'Боец ('.($nxtID+1).')'; }else{ $u->info['login2'] = ''; } $blnc = 100*$u->info['level']+10*$u->info['upLevel']+$u->info['exp']+$u->stats['reting']; $z['tm'.$t1] += $blnc; $upd = mysql_query('UPDATE `stats` SET `zv` = "'.$z['id'].'",`team` = "'.$t1.'" WHERE `id` = "'.$u->info['id'].'" LIMIT 1'); if(!$upd) { $this->error = 'Ошибка приема заявки...'; }else{ mysql_query('UPDATE `users` SET `login2` = "'.$u->info['login2'].'" WHERE `id` = "'.$u->info['id'].'" LIMIT 1'); mysql_query('UPDATE `zayvki` SET `tm1` = "'.$z['tm1'].'", `tm2` = "'.$z['tm2'].'" WHERE `id` = "'.$z['id'].'" LIMIT 1'); $this->error = 'Вы приняли хаотичный бой...'; $zi = $z; $u->info['zv'] = $z['id']; $u->info['team'] = mysql_real_escape_string((int)$t1); } } } }else{ $this->error = 'Заявка на бой не найдена.'; } } }else{ $this->error = 'Вы не можете принять бой. Сначала отзовите свою заявку.'; } } } $zv = new zayvki; $zv->test(); //проверяем заявки ?>