2018-01-28 18:40:49 +02:00
< ? php
session_start ();
if ( ! isset ( $_SESSION [ 'uid' ])) { header ( " Location: index.php " ); }
include ( " config.php " );
include ( " functions.php " );
if ( $user [ 'battle' ] != 0 ) { header ( 'Location: fbattle.php' ); die (); }
mysql_query ( " LOCK TABLES `bots` WRITE, `battle` WRITE, `logs` WRITE, `users` WRITE, `inventory` WRITE, `zayavka` WRITE, `effects` WRITE, `online` WRITE, 'versus' WRITE " );
if (( $_GET [ 'do' ] == " clear " ) && (( $user [ 'align' ] > 1.4 && $user [ 'align' ] < 2 ) || $user [ 'admin' ] == 1 )) {
mysql_query ( " UPDATE `zayavka` SET `coment` = '<em>Вырезано цензурой!</em>' WHERE `id` = ' " . mysql_real_escape_string ( $_GET [ 'zid' ]) . " ' LIMIT 1 " );
}
if ( $_GET [ 'del' ] && $user [ 'admin' ] == 1 ) { //удаление заявки на бой.
$zay = mysql_fetch_array ( mysql_query ( 'SELECT `id` FROM `zayavka` WHERE `id` = "' . mysql_real_escape_string (( int ) $_GET [ 'zid' ]) . '" LIMIT 1' ));
if ( isset ( $zay [ 'id' ])) {
mysql_query ( " UPDATE `users` SET `zayavka` = 0 WHERE `zayavka` = { $zay [ 'id' ] } " );
mysql_query ( " DELETE FROM `zayavka` WHERE `id` = { $zay [ 'id' ] } LIMIT 1 " );
} else {
echo 'Заявка не найдена ...' ;
}
}
if ( isset ( $_REQUEST [ 'view' ])) {
$_SESSION [ 'view' ] = $_REQUEST [ 'view' ];
}
class zayavka {
var $mysql ;
function zayavka () {
global $mysql ;
$this -> mysql = $mysql ;
}
function fteam ( $team ) {
$team = explode ( " ; " , $team );
unset ( $team [ count ( $team ) - 1 ]);
return $team ;
}
function getlist ( $razdel = 1 , $level = null , $id = null ) {
$fict = mysql_query ( " SELECT * FROM `zayavka` WHERE " . (( $level != null ) ? " ((`t1min` <= ' { $level } ' OR `t1min` = '99') AND (`t1max` >= ' { $level } ' OR `t1max` = '99') " . (( $razdel == 4 ) ? " AND (`t2min` <= ' { $level } ' OR `t2min` = '99') AND (`t2max` >= ' { $level } ' OR `t2max` = '99') " : " " ) . " ) AND " : " " ) . " `level` = { $razdel } " . (( $id != null ) ? " AND `id` = { $id } " : " " ) . " ORDER BY `podan` DESC " );
while ( $row = mysql_fetch_array ( $fict )) {
if (( $row [ 'start' ] + 300 ) < time ()) {
if ( mysql_query ( " DELETE FROM `zayavka` WHERE `id` = ' { $row [ 'id' ] } ' LIMIT 1 " )) {
$team1 = $this -> fteam ( $row [ 'team1' ]);
foreach ( $team1 as $k => $v ) {
mysql_query ( " UPDATE `users` SET `zayavka` = '0' WHERE `id` = { $v } " );
}
$team2 = $this -> fteam ( $row [ 'team2' ]);
foreach ( $z [ $zay ][ 'team2' ] as $k => $v ) {
mysql_query ( " UPDATE `users` SET `zayavka` = '0' WHERE `id` = { $v } " );
}
}
}
$zay [ $row [ 'id' ]] = array ( " team1 " => $this -> fteam ( $row [ 'team1' ]), " team2 " => $this -> fteam ( $row [ 'team2' ]), " coment " => $row [ 'coment' ], " type " => $row [ 'type' ], " timeout " => $row [ 'timeout' ], " start " => $row [ 'start' ], " t1min " => $row [ 't1min' ], " t1max " => $row [ 't1max' ], " t2min " => $row [ 't2min' ], " t2max " => $row [ 't2max' ], " t1c " => $row [ 't1c' ], " t2c " => $row [ 't2c' ], " podan " => $row [ 'podan' ], " id " => $row [ 'id' ], " level " => $row [ 'level' ], " blood " => $row [ 'blood' ], " bots " => $row [ 'bots' ]);
}
return $zay ;
}
function addteam ( $team = 1 , $id , $zay , $r ) {
global $user ;
$owntravma = mysql_fetch_array ( mysql_query ( " SELECT `id`, `type` FROM `effects` WHERE `owner` = " . $id . " AND (`type` = 12 OR `type` = 13) " ));
$z = $this -> getlist ( $r , null , $zay );
if ( $owntravma ) {
switch ( $owntravma [ 'type' ]) {
case ( $owntravma [ 'type' ] == 12 && ( $z [ $zay ][ 'type' ] != 4 && $z [ $zay ][ 'type' ] != 5 )) : return " У Вас средняя травма, поединки с оружием слишком тяжелы для Вас... " ; break ;
case 13 : return " У Вас тяжелая травма, Вы не сможете драться... " ; break ;
}
}
if ( $user [ 'zayavka' ] != 0 ) { return " Вы находитесь в заявке " ; }
if ( $user [ 'hp' ] < $user [ 'maxhp' ] * 0.33 ) {
return " Вы слишком ослаблены для боя, восстановитесь. " ;
}
if ( ! $z ) {
return " Эта заявка не может быть принята Вами. " ;
}
if ( $this -> ustatus ( $id ) != 0 ) {
return " Эта заявка не может быть принята Вами. " ;
}
if ( $z [ $zay ][ 'type' ] == 3 || $z [ $zay ][ 'type' ] == 5 ) {
} else {
if ( $team == 1 ) { $teamz = 2 ; } else { $teamz = 1 ; }
foreach ( $z [ $zay ][ 'team' . $teamz ] as $v ) {
$toper = mysql_fetch_array ( mysql_query ( " SELECT `klan`, `align` FROM `users` WHERE `id` = ' { $v } ' LIMIT 1 " ));
if ( $toper [ 'klan' ] > 0 ) {
if (( int ) $user [ 'klan' ] == ( int ) $toper [ 'klan' ]) {
return " Чтите честь Ваших сокланов. " ;
}
}
if (( int ) $user [ 'align' ] == 1 ) {
if (( int ) $toper [ 'align' ] == 1 ) {
return " Чтите честь Паладинов. " ;
}
}
if ( $user [ 'align' ] == 6 ) {
if ( $toper [ 'align' ] == 6 ) {
return " Не предавайте свет. " ;
}
}
if ( $user [ 'align' ] == 3 ) {
if ( $toper [ 'align' ] == 3 ) {
return " Не предавайте тьму. " ;
}
}
}
}
if ( $z [ $zay ][ 't' . $team . 'min' ] == 99 ) {
$toper = $z [ $zay ][ 'team' . $team ][ 0 ];
$toper = mysql_fetch_array ( mysql_query ( " SELECT `id`, `login`, `align`, `klan`, `level` FROM `users` WHERE `id` = ' { $toper } ' LIMIT 1 " ));
if ( $toper [ 'klan' ] != '' ) {
if ( $user [ 'klan' ] != $toper [ 'klan' ]) {
return " Эта заявка не может быть принята Вами. " ;
}
}
} else {
if ( $user [ 'level' ] > 0 &&! ( $z [ $zay ][ 't' . $team . 'min' ] <= $user [ 'level' ] && $z [ $zay ][ 't' . $team . 'max' ] >= $user [ 'level' ])) {
return " Эта заявка не может быть принята Вами. - " . $z [ $zay ][ 't' . $team . 'min' ];
}
}
if ( count ( $z [ $zay ][ 'team' . $team ]) >= $z [ $zay ][ 't' . $team . 'c' ] ) { return " Группа уже набрана. " ; }
$z [ $zay ][ 'team' . $team ][] = '' ;
if ( mysql_query ( " UPDATE `users`, `zayavka` SET `users`.`zayavka` = { $zay } , `zayavka`.`team { $team } ` = ' " . implode ( " ; " , $z [ $zay ][ 'team' . $team ]) . " " . $id . " ;' WHERE `users`.`id` = { $id } AND `users`.`zayavka` = 0 AND `zayavka`.`id` = { $zay } " )) {
return " Вы приняли заявку на бой. " ;
}
}
function delteam ( $team = 2 , $id , $zay , $r ) {
$z = $this -> getlist ( $r , null , $zay );
if ( $z [ $zay ][ 'level' ] > 3 || $z [ $zay ][ 'level' ] == null ) {
return " Ай-ай-ай! " ;
}
foreach ( $z [ $zay ][ 'team' . $team ] as $v ) {
if ( $v != $id ) {
$teams [] = $v ;
}
}
if ( mysql_query ( " UPDATE `users`, `zayavka` SET `users`.`zayavka` = '0', `zayavka`.`team { $team } ` = ' { $teams } ' WHERE `users`.`id` = { $id } AND `zayavka`.`id` = { $zay } ; " )) {
return " Вы отозвали запрос " ;
}
}
function addzayavka ( $start , $timeout = 3 , $t1c , $t2c , $type , $t1min , $t2min , $t1max , $t2max , $coment , $creator , $level = 1 , $stavka , $blood = 0 ) {
global $user ;
if (( int ) $level < 1 || ( int ) $level > 5 ) return " Ошибка... " ;
if ( $level == 1 && ( $type != 1 && $type != 4 )) { $type = 1 ; }
if ( $level == 2 && ( $type != 1 && $type != 4 && $type != 6 )) { $type = 1 ; }
if ( $level == 4 && ( $type != 2 && $type != 4 )) { $type = 2 ; }
if ( $level == 5 && ( $type != 3 && $type != 5 )) { $type = 3 ; }
if ( ! in_array ( $start , [ 3 , 5 , 10 , 15 , 30 , 45 , 60 ])) { $start = 10 ;}
if ( ! in_array ( $timeout , [ 3 , 4 , 5 , 7 , 10 ])) { $timeout = 3 ;}
if ( $this -> ustatus ( $creator ) != 0 ) { exit (); }
$owntravma = mysql_fetch_array ( mysql_query ( " SELECT `type`, `id`, `sila`, `lovk`, `inta` FROM `effects` WHERE `owner` = " . $creator . " AND (`type` = 12 OR `type` = 13) " ));
if ( $owntravma ) {
switch ( $owntravma [ 'type' ]) {
case ( $owntravma [ 'type' ] == 12 && ( $type != 4 && $type != 5 )) : return " У Вас средняя травма, поединки с оружием слишком тяжелы для Вас... " ; break ;
case 13 : return " У Вас тяжелая травма, Вы не сможети драться... " ; break ;
}
}
if ( ! $user [ 'klan' ] && $t1min == 99 ) { return " Вы не состоите в клане. " ;}
if ( $user [ 'hp' ] < $user [ 'maxhp' ] * 0.33 ) { return " Вы слишком ослаблены для боя, восстановитесь. " ;}
if ( $type == 3 ){
$fp = fopen ( " tmp/chat.txt " , " a " ); //открытие
flock ( $fp , LOCK_EX ); //БЛОКИРОВКА ФАЙЛА
fputs ( $fp , " \r \n :[ " . time () . " ]:[!sys2all!!]:[<font color=red> Внимание! Подана заявка на хаотический поединок ( " . $t1min . " - " . $t1max . " ) начнется через " . $start . " минут.</font>]:[1] \r \n " ); //работа с файлом
fflush ( $fp ); //ОЧИЩЕНИЕ ФАЙЛОВОГО БУФЕРА И ЗАПИСЬ В ФАЙЛ
flock ( $fp , LOCK_UN ); //СНЯТИЕ БЛОКИРОВКИ
fclose ( $fp ); //закрытие
}
$start = time () + $start * 60 ;
$stavka = round ( $stavka , 2 );
mysql_query ( " INSERT INTO `zayavka`
(`start`, `timeout`, `t1c`, `t2c`, `type`, `level`, `coment`, `team1`, `stavka`, `t1min`, `t2min`, `t1max`, `t2max`,`podan`,`blood`) values
( { $start } , { $timeout } , { $t1c } , { $t2c } , { $type } , { $level } ,' { $coment } ',' { $creator } ;',' { $stavka } ', { $t1min } , { $t2min } , { $t1max } , { $t2max } , ' " . date ( " H:i " ) . " ', ' { $blood } '); " );
mysql_query ( " UPDATE `users` SET `zayavka` = " . mysql_insert_id () . " WHERE `id` = { $creator } LIMIT 1 " );
}
function delzayavka ( $id , $zay , $r , $f = 1 ) {
$z = $this -> getlist ( $r , null , $zay );
if ( $f != 1 ) {
if ( $z [ $zay ][ 'level' ] > 3 ) { return 'Ай-ай-ай!' ;}
}
if ( mysql_query ( " DELETE FROM `zayavka` WHERE `id` = { $zay } AND (`team1` LIKE ' { $id } ;%' OR `team2` LIKE ' { $id } ;%') LIMIT 1 " )) {
if ( count ( $z [ $zay ][ 'team1' ]) > 0 ) {
foreach ( $z [ $zay ][ 'team1' ] as $k => $v ) {
mysql_query ( " UPDATE `users` SET `zayavka` = 0 WHERE `id` = { $v } " );
}
}
if ( count ( $z [ $zay ][ 'team2' ]) > 0 ) {
foreach ( $z [ $zay ][ 'team2' ] as $k => $v ) {
mysql_query ( " UPDATE `users` SET `zayavka` = 0 WHERE `id` = { $v } " );
}
}
return 'Вы отозвали заявку.' ;
}
}
function showfiz ( $row ) {
global $user ;
$rr = " <input type= \" radio \" " . (( in_array ( $user [ 'id' ], $row [ 'team1' ]) || in_array ( $user [ 'id' ], $row [ 'team2' ]) || $row [ 'team2' ]) ? " disabled " : " " ) . " name= \" gocombat \" value= \" { $row [ 'id' ] } \" /><font class=date> { $row [ 'podan' ] } </font> " ;
foreach ( $row [ 'team1' ] as $k => $v ) {
$rr .= nick3 ( $v );
}
if ( $row [ 'team2' ]) {
$rr .= " <i>против</i> " ;
foreach ( $row [ 'team2' ] as $k => $v ) {
$rr .= nick3 ( $v );
}
}
$rr .= " тип боя: " ;
if ( $row [ 'type' ] == 4 ) {
$rr .= " <img src= \" i/fighttype4.gif \" width= \" 20 \" height= \" 20 \" title= \" Кулачный бой \" /> " ;
} elseif ( $row [ 'type' ] == 6 ) {
$rr .= " <img src= \" i/fighttype6.gif \" width= \" 20 \" height= \" 20 \" title= \" Кровавый бой \" /> " ;
} elseif ( $row [ 'type' ] == 1 ) {
$rr .= " <img src= \" i/fighttype1.gif \" width= \" 20 \" height= \" 20 \" title= \" Физический бой \" /> " ;
}
$rr .= " (таймаут { $row [ 'timeout' ] } мин.) <br /> " ;
return $rr ;
}
function showgroup ( $row ) {
if ( $row [ 't1min' ] == 99 ) {
$range1 = " <i>клан</i> " ;
} else {
$range1 = " { $row [ 't1min' ] } - { $row [ 't1max' ] } " ;
}
if ( $row [ 't2min' ] == 99 ) {
$range2 = " <i>клан</i> " ;
} else {
$range2 = " { $row [ 't2min' ] } - { $row [ 't2max' ] } " ;
}
$rr = " <input type= \" radio \" " . (( in_array ( $user [ 'id' ], $row [ 'team1' ]) || in_array ( $user [ 'id' ], $row [ 'team2' ])) ? " disabled " : " " ) . " name= \" gocombat \" value= \" { $row [ 'id' ] } \" ><font class=date> { $row [ 'podan' ] } </font> <b> { $row [ 't1c' ] } </b>( { $range1 } ) ( " ;
foreach ( $row [ 'team1' ] as $k => $v ) {
if ( $k != 0 ) { $rr .= " , " ; }
$rr .= nick3 ( $v );
}
$rr .= " ) <i>против</i> <b> { $row [ 't2c' ] } </b>( { $range2 } )( " ;
foreach ( $row [ 'team2' ] as $k => $v ) {
if ( $k != 0 ) { $rr .= " , " ; }
$rr .= nick3 ( $v );
}
if ( count ( $row [ 'team2' ]) == 0 ) { $rr .= " <i>группа не набрана</i> " ; }
if ( $row [ 'blood' ] && $row [ 'type' ] == 5 ) {
$rr .= " <img src= \" i/fighttype6.gif \" width= \" 20 \" height= \" 20 \" /> " ;
}
$ali = mysql_fetch_array ( mysql_query ( " SELECT `align` FROM `users` WHERE `id` = ' { $user [ 'id' ] } ' LIMIT 1 " ));
$rr .= " ) тип боя: " ;
if ( $row [ 'blood' ] && $row [ 'type' ] == 4 ) {
$rr .= " <img src= \" i/fighttype4.gif \" width= \" 20 \" height= \" 20 \" title= \" кулачный бой \" /><img src= \" i/fighttype6.gif \" width= \" 20 \" height= \" 20 \" title= \" Кровавый поединок \" /> " ;
} elseif ( $row [ 'blood' ] && $row [ 'type' ] == 2 ) {
$rr .= " <img src= \" i/fighttype6.gif \" width= \" 20 \" height= \" 20 \" title= \" Кровавый поединок \" /> " ;
} elseif ( $row [ 'type' ] == 2 ) {
$rr .= " <img src= \" i/fighttype2.gif \" width= \" 20 \" height= \" 20 \" title= \" групповой бой \" /> " ;
} elseif ( $row [ 'type' ] == 4 ) {
$rr .= " <img src= \" i/fighttype4.gif \" width= \" 20 \" height= \" 20 \" title= \" кулачный групповой бой \" /> " ;
}
$rr .= " (таймаут { $row [ 'timeout' ] } мин.) <span style='color: gray;'><i>бой начнется через " . round (( $row [ 'start' ] - time ()) / 60 , 1 ) . " мин. " . (( $row [ 'coment' ]) ? " ( " . $row [ 'coment' ] . " ) " : " " ) . " </i></span> " ;
if (( $ali [ 'align' ] > 1.4 && $ali [ 'align' ] < 2 ) || ( $ali [ 'align' ] > 2 && $ali [ 'align' ] < 3 )) {
$rr .= " <a href='?zid= { $row [ 'id' ] } &do=clear'><img src='i/clear.gif'></a><br /> " ;
} else {
$rr .= " <br /> " ;
}
return $rr ;
}
function showhaos ( $row ) {
global $user ;
$rs = '' ;
$rr = " <input type= \" radio \" " . (( in_array ( $user [ 'id' ], $row [ 'team1' ]) || in_array ( $user [ 'id' ], $row [ 'team2' ])) ? " disabled " : " " ) . " name= \" gocombat \" value= \" { $row [ 'id' ] } \" /><font class= \" date \" > { $row [ 'podan' ] } </font> ( " ;
if ( $row [ 'bots' ] == '7' ) {
$rr .= nick3 ( 10962 ); $rr .= " , " ;
$rr .= nick3 ( 10964 ); $rr .= " , " ;
$rr .= nick3 ( 10965 ); $rr .= " , " ;
} elseif ( $row [ 'bots' ] == '8' ) {
$rr .= nick3 ( 10124 ); $rr .= " , " ;
$rr .= nick3 ( 10125 ); $rr .= " , " ;
$rr .= nick3 ( 10126 ); $rr .= " , " ;
} elseif ( $row [ 'bots' ] == '13' ) {
$rr .= nick3 ( 10124 ); $rr .= " , " ;
$rr .= nick3 ( 10125 ); $rr .= " , " ;
$rr .= nick3 ( 10126 ); $rr .= " , " ;
}
foreach ( $row [ 'team1' ] as $k => $v ) {
if ( $k != 0 ) {
$rr .= " , " ;
}
$rr .= nick3 ( $v );
}
if ( count ( $row [ 'team1' ]) == 0 && $row [ 'bots' ] == 0 ) { $rr .= " <i>группа не набрана</i> " ; }
$rr .= " ) ( { $row [ 't1min' ] } - { $row [ 't1max' ] } ) тип боя: " ;
if ( $row [ 'blood' ] && $row [ 'type' ] == 5 ) {
$rr .= " <img src= \" i/fighttype5.gif \" style= \" width: 20px; height: 20px; \" title= \" Кулачный бой \" /><img src= \" i/fighttype6.gif \" style= \" width: 20px; height: 20px; \" title= \" Кровавый поединок \" /> " ;
} elseif ( $row [ 'blood' ] && $row [ 'type' ] == 3 ) {
$rr .= " <img src= \" i/fighttype6.gif \" style= \" width: 20px; height: 20px; \" title= \" Кровавый поединок \" /> " ;
} elseif ( $row [ 'type' ] == 3 ) {
$rr .= " <img src= \" i/fighttype3.gif \" style= \" width: 20px; height: 20px; \" title= \" Групповой бой \" /> " ;
} elseif ( $row [ 'type' ] == 5 ) {
$rr .= " <img src= \" i/fighttype5.gif \" style= \" width: 20px; height: 20px; \" title= \" Кулачный групповой бой \" /> " ;
}
$rr .= " (таймаут { $row [ 'timeout' ] } мин.) <span style='color: gray;'><i >бой начнется через " . round (( $row [ 'start' ] - time ()) / 60 , 1 ) . " мин. " . (( $row [ 'coment' ]) ? " ( " . $row [ 'coment' ] . " ) " : " " ) . " </i></span> " ;
if ( $user [ 'align' ] == '2.99' ) {
$rsr = ' <a href=\'?level=haos&zid=' . $row [ 'id' ] . '&del=true\'>Удалить заявку</a>' ;
} else {
$rsr = '' ;
}
if (( $user [ 'align' ] > 1.4 && $user [ 'align' ] < 2 ) || ( $user [ 'align' ] > 2 && $user [ 'align' ] < 3 )) {
$rr .= " <a href='?zid= { $row [ 'id' ] } &do=clear'><img src='i/clear.gif'></a> $rsr <br /> " ;
} else {
$rr .= " <br /> " ;
}
return $rr ;
}
function ustatus ( $id ) {
$fict = mysql_fetch_array ( mysql_query ( " SELECT * FROM `zayavka`, `users` WHERE `users`.`id` = ' " . $id . " ' AND `zayavka`.`id` = `users`.`zayavka` LIMIT 1 " ));
$t1 = $this -> fteam ( $fict [ 'team1' ]);
$t2 = $this -> fteam ( $fict [ 'team2' ]);
if ( in_array ( $id , $t1 )) {
return 1 ;
} elseif ( in_array ( $id , $t2 )) {
return 2 ;
} else {
return 0 ;
}
}
function battlestart ( $id , $zay , $r ) {
global $user ;
$z = $this -> getlist ( $r , null , $zay );
if ( $id == 'CHAOS' ) { $id = $z [ $zay ][ 'team1' ][ 0 ]; }
$this -> delzayavka ( $id , $zay , $r );
$z = $z [ $zay ];
$count_users = count ( $z [ 'team1' ]);
$bot = 0 ;
if ( $z [ 'bots' ] > 0 && $count_users > 0 ) {
$bots_raw = array ( 7 => array ( 10962 , 10964 , 10965 ), 8 => array ( 10124 , 10125 , 10126 ), 13 => array ( 10124 , 10125 , 10126 ));
$i = 0 ;
while ( $i <= count ( $bots_raw [ $z [ 'bots' ]])) {
$bot_id = $bots_raw [ $z [ 'bots' ]][ $i ];
$bot = createbot ( $bot_id , '' );
$z [ 'team1' ][] = $bot [ 'id' ];
$i ++ ;
$count_users ++ ;
}
}
if ( $z [ 'type' ] == 4 || $z [ 'type' ] == 5 ) {
foreach ( $z [ 'team1' ] as $k => $v ) {
undressall ( $v );
}
foreach ( $z [ 'team2' ] as $k => $v ) {
undressall ( $v );
}
}
if ( $z [ 'level' ] == 2 ) {
$btfl = fopen ( '' . $z [ 'team1' ][ 0 ] . '.btl' , 'a' );
fwrite ( $btfl , '{[=' . $z [ 'team2' ][ 0 ] . '=]}' );
fclose ( $btfl );
$btfl = fopen ( '' . $z [ 'team2' ][ 0 ] . '.btl' , 'a' );
fwrite ( $btfl , '{[=' . $z [ 'team1' ][ 0 ] . '=]}' );
fclose ( $btfl );
}
if ( $z [ 'type' ] == 3 || $z [ 'type' ] == 5 ) {
if ( $count_users < 4 ) {
mysql_query ( " UPDATE `users` SET `zayavka` = 0 WHERE `zayavka` = ' " . $zay . " ' " );
foreach ( $z [ 'team1' ] as $k => $v ) {
if ( $v < _BOTSEPARATOR_ ) {
addchp ( '<font color=red>Внимание!</font> Ваш бой не может начаться по причине <b>Группа не набрана</b>.' , '{[]}' . nick7 ( $v ) . '{[]}' );
die ( 'Bitch' );
}
}
mysql_query ( " UPDATE `variables` SET `value` = ' { $count_users } }' WHERE `var` = 'haos_match' LIMIT 1 " );
mysql_query ( " DELETE FROM `zayavka` WHERE `id` = ' " . $zay . " ' LIMIT 1 " );
header ( " Location: zayavka.php " );
}
$all = count ( $z [ 'team1' ]) - 1 ;
$power1 = 0 ; $power2 = 0 ;
for ( $i = 0 ; $i <= $all ; $i ++ ) {
if ( $z [ 'team1' ][ $i ] < _BOTSEPARATOR_ ) {
$gamer = mysql_fetch_array ( mysql_query ( " SELECT (`level`*50)+`sila`+`lovk`+`inta`+`vinos`+`intel`+`stats`+IFNULL((SELECT SUM(`cost`) FROM `inventory` WHERE `owner` = `users`.`id` AND `dressed` = 1), 0) FROM `users` WHERE `id` = ' " . $z [ 'team1' ][ $i ] . " ' LIMIT 1 " ));
} else {
$bt = mysql_fetch_array ( mysql_query ( 'SELECT `id`, `prototype` FROM `bots` WHERE `id` = "' . $z [ 'team1' ][ $i ] . '"' ));
$gamer = mysql_fetch_array ( mysql_query ( " SELECT (`level`*50)+`sila`+`lovk`+`inta`+`vinos`+`intel`+`stats`+IFNULL((SELECT SUM(`cost`) FROM `inventory` WHERE `owner` = `users`.`id` AND `dressed` = 1), 0) FROM `users` WHERE `id` = ' " . $bt [ 'prototype' ] . " ' LIMIT 1 " ));
}
$cost [] = array ( $z [ 'team1' ][ $i ], $gamer [ 0 ]);
}
$z [ 'team1' ] = null ;
$z [ 'team2' ] = null ;
$flag = true ;
while ( $flag ) {
$flag = false ;
for ( $ii = 0 ; $ii <= $all - 1 ; $ii ++ ) {
if ( $cost [ $ii ][ 1 ] < $cost [ $ii + 1 ][ 1 ]) {
$ctr = $cost [ $ii + 1 ];
$cost [ $ii + 1 ] = $cost [ $ii ];
$cost [ $ii ] = $ctr ;
$flag = true ;
}
}
}
while ( count ( $cost ) > 0 ) {
if ( $power1 <= $power2 ) {
$tmp = array_shift ( $cost );
$power1 += $tmp [ 1 ];
$z [ 'team1' ][] = $tmp [ 0 ];
} else {
$tmp = array_shift ( $cost );
$power2 += $tmp [ 1 ];
$z [ 'team2' ][] = $tmp [ 0 ];
}
}
}
$teams = array ();
foreach ( $z [ 'team1' ] as $k => $v ) {
foreach ( $z [ 'team2' ] as $kk => $vv ) {
$teams [ $v ][ $vv ] = array ( 0 , 0 , time ());
}
}
foreach ( $z [ 'team2' ] as $k => $v ) {
foreach ( $z [ 'team1' ] as $kk => $vv ) {
$teams [ $v ][ $vv ] = array ( 0 , 0 , time ());
}
}
if ( count ( $z [ 'team2' ]) == 0 ) {
mysql_query ( " UPDATE `users` SET `zayavka` = 0 WHERE `zayavka` = ' " . $zay . " ' " );
foreach ( $z [ 'team1' ] as $k => $v ) {
addchp ( '<font color=red>Внимание!</font> Ваш бой не может начаться по причине "Группа не набрана".' , '{[]}' . nick7 ( $v ) . '{[]}' );
}
mysql_query ( " DELETE FROM `zayavka` WHERE `id` = ' " . $zay . " ' LIMIT 1 " );
header ( " Location: zayavka.php " );
die ();
}
if ( $z [ 'timeout' ] == 3 || $z [ 'timeout' ] == 4 || $z [ 'timeout' ] == 5 || $z [ 'timeout' ] == 7 || $z [ 'timeout' ] == 10 ) {
} else {
$z [ 'timeout' ] = 3 ;
}
if ( count ( $teams ) > 1 ) {
if ( $z [ 'type' ] == 1 || $z [ 'type' ] == 4 ) {
$rs = ', `fiz`' ; $rss = ', 1' ;
} else {
$rs = '' ; $rss = '' ;
}
mysql_query ( " INSERT INTO `battle` (`coment`, `teams`, `timeout`, `type`, `status`, `t1`, `t2`, `to1`, `to2`, `blood` $rs , `bots`) VALUES (' { $z [ 'coment' ] } ', ' " . serialize ( $teams ) . " ', ' { $z [ 'timeout' ] } ', ' { $z [ 'type' ] } ', '0', ' " . implode ( " ; " , $z [ 'team1' ]) . " ', ' " . implode ( " ; " , $z [ 'team2' ]) . " ', ' " . time () . " ', ' " . time () . " ', ' " . $z [ 'blood' ] . " ' $rss , ' " . $z [ 'bots' ] . " ') " );
$id = mysql_insert_id ();
$rr = " <b> " ;
foreach ( $z [ 'team1' ] as $k => $v ) {
if ( $k != 0 ) { $rr .= " , " ; }
$rr .= nick3 ( $v );
addchp ( '<font color=red>Внимание!</font> Ваш бой начался!<br />\'; top.frames[\'main\'].location=\'fbattle.php\'; var z = \' ' , '{[]}' . nick7 ( $v ) . '{[]}' );
}
$rr .= " </b> и <b> " ;
foreach ( $z [ 'team2' ] as $k => $v ) {
if ( $k != 0 ) { $rr .= " , " ; }
$rr .= nick3 ( $v );
addchp ( '<font color=red>Внимание!</font> Ваш бой начался!<br />\'; top.frames[\'main\'].location=\'fbattle.php\'; var z = \' ' , '{[]}' . nick7 ( $v ) . '{[]}' );
}
$rr .= " </b> " ;
addlog ( $id , " Часы показывали <span class=date> " . date ( " Y.m.d H.i " ) . " </span>, когда " . $rr . " бросили вызов друг другу.<BR> " );
foreach ( $z [ 'team1' ] as $k => $v ) {
if ( $v < _BOTSEPARATOR_ ) {
mysql_query ( " UPDATE `users` SET `battle` = { $id } , `zayavka` = 0 WHERE `id` = { $v } " );
} else {
mysql_query ( " UPDATE `bots` SET `battle` = { $id } WHERE `id` = { $v } " );
}
}
foreach ( $z [ 'team2' ] as $k => $v ) {
if ( $v < _BOTSEPARATOR_ ) {
mysql_query ( " UPDATE `users` SET `battle` = { $id } , `zayavka` = 0 WHERE `id` = { $v } " );
} else {
mysql_query ( " UPDATE `bots` SET `battle` = { $id } WHERE `id` = { $v } " );
}
}
if ( $bot ) {
mysql_query ( " UPDATE `bots` SET `battle` = ' $id ' WHERE `id` = ' $bot[id] ' " );
}
}
if ( $user [ 'zayavka' ] == $zay ) {
die ( " <script>location.href='fbattle.php';</script> " );
}
}
}
$zay = new zayavka ;
header ( " Cache-Control: no-cache " );
if ( $_POST [ 'open' ]) {
$f = fopen ( " /tmp/zayavka/ " . $user [ 'id' ] . " .txt " , " w+ " );
fputs ( $f , time ());
fclose ( $f );
}
?>
<HTML>
<HEAD>
<link rel=stylesheet type="text/css" href="css/main.css">
<meta content="text/html; charset=utf-8" http-equiv=Content-type>
<META Http-Equiv=Cache-Control Content=no-cache>
<meta http-equiv=PRAGMA content=NO-CACHE>
<META Http-Equiv=Expires Content=0>
<style>
.m {background: #99CCCC;text-align: center;}
.s {background: #BBDDDD;text-align: center;}
</style>
<script>
function refreshPeriodic()
{
<?if ($_REQUEST['logs'] == null) {?>location.href='zayavka.php?level=<?=$_REQUEST['level']?>&tklogs=<?=$_REQUEST['tklogs']?>&logs=<?=$_REQUEST['logs']?>';//reload();
<?}?>
timerID=setTimeout("refreshPeriodic()",30000);
}
timerID=setTimeout("refreshPeriodic()",30000);
</script>
</HEAD>
<body leftmargin=5 topmargin=5 marginwidth=5 marginheight=5 bgcolor=e2e0e0 onload="top.setHP(<?=$user['hp']?>,<?=$user['maxhp']?>,<?if (!$user['battle']){echo"100";}else{echo"0";}?>);">
<TABLE width=100% cellspacing=1 cellpadding=1>
<FORM METHOD=POST ACTION=zayavka.php name=F1>
<TR>
<TD colspan=5>
<? if ($_REQUEST['level']) { echo nick($user); } ?>
</TD>
<TD colspan=4 align=right>
<INPUT TYPE=button value="Подсказка" style="background-color:#A9AFC0" onclick="window.open('help/combats.html', 'help', 'height=300,width=500,location=no,menubar=no,status=no,toolbar=no,scrollbars=yes')">
<INPUT TYPE=button value="Вернуться" onclick="location.href='main.php?top=0.467837356797105';">
</TD>
</TR>
<TR>
<TD class=m width=40> <B><?php if($user['room'] != 101) echo 'Бои:'; else echo 'Разделы:';?></B></TD>
<TD class=<?=($_REQUEST['level']=='begin')?"s":"m"?>><?php if($user['room'] != 101) echo ("<A HREF=\"zayavka.php?level=begin&0.467837356797105\">Новичков</A></TD>"); else echo 'Зал Славы Тьмы</TD>'?>
<TD class=<?=($_REQUEST['level']=='fiz')?"s":"m"?>><?php if($user['room'] != 101) echo ("<A HREF=\"zayavka.php?level=fiz&0.467837356797105\">Физические</A></TD>"); else echo 'Зал Славы Света</TD>'?>
<TD class=<?=($_REQUEST['level']=='dgv')?"s":"m"?>><?php if($user['room'] != 101) echo ("<A HREF=\"zayavka.php?level=dgv&0.467837356797105\">Договорные</A></TD>"); else echo 'Квесты</TD>'?>
<TD class=<?=($_REQUEST['level']=='group')?"s":"m"?>><A HREF="zayavka.php?level=group&0.467837356797105">
<?php if($user['room'] != 101) {echo ("Групповые");} else {echo("<font color=red><b>Тьма vs Свет</b></font>");};?>
</A></TD>
<TD class=<?=($_REQUEST['level']=='haos')?"s":"m"?>><?php if($user['room'] != 101) echo ("<A HREF=\"zayavka.php?level=haos&0.467837356797105\">Хаотичные</A></TD>"); else echo 'В разработке</TD>'?>
<TD class=<?=($_REQUEST['tklogs']=='1')?"s":"m"?>><A HREF="zayavka.php?tklogs=1&0.467837356797105">Текущие</A></TD>
<TD class=<?=($_REQUEST['logs']!=null)?"s":"m"?>><A HREF="zayavka.php?logs=<?=date("d.m.y")?>&0.467837356797105">Завершенные</A></TD>
</TR>
</TABLE>
<TABLE width=100% cellspacing=0 cellpadding=0><TR><TD valign=top>
<?
if($user['room'] != 1 && $user['room'] != 2 && $user['room'] != 3 && $user['room'] != 4 &&
$user['room'] != 5 && $user['room'] != 6 && $user['room'] != 7 && $user['room'] != 9 &&
$user['room'] != 10 && $user['room'] != 15 && $user['room'] != 16 && $user['room'] != 19 &&
$user['room'] != 8 && $user['room'] != 101 && !$_REQUEST['tklogs'] && !$_REQUEST['logs']) {
echo "<BR><BR><BR><CENTER><B>В этой комнате невозможно подавать заявки</b></CENTER>";
die();
}
if(!$_REQUEST['level'] && !$_REQUEST['tklogs'] && !$_REQUEST['logs']) {
echo "<BR><BR><BR><CENTER><B>Выберите раздел</b></CENTER>";
}
if ($_REQUEST['level'] == 'begin') {
if($user['level']>0) {die("<BR><BR><BR><CENTER><B>Вы уже выросли из ползунков ;)</b></CENTER>");}
echo "<font color=red><b>";
if($_POST['open']) {
echo $zay->addzayavka (0,$_POST['timeout'], 1, 1, $_POST['k'], $user['level'], 1, $user['level'], 21, '', $user['id'], 1, 0);
die("<script>document.location='zayavka.php?level=begin';</script>");
}
if($_POST['back']) {
unlink("/tmp/zayavka/".$user['id'].".txt");
echo $zay->delzayavka ($user['id'], $user['zayavka'], 1,0);
}
if($_POST['back2']) {
$z = $zay->getlist(1,null,$user['zayavka']);
addchp ('<font color=red>Внимание!</font> '.nick7($user['id']).' отозвал заявку. ','{[]}'.nick7 ($z[$user['zayavka']]['team1'][0]).'{[]}');
echo $zay->delteam (2,$user['id'], $user['zayavka'], 1);
}
if($_POST['cansel']) {
$z = $zay->getlist(1,null,$user['zayavka']);
echo $zay->delteam (2,$z[$user['zayavka']]['team2'][0], $user['zayavka'], 1);
addchp ('<font color=red>Внимание!</font> '.nick3($user['id']).' отказался от поединка. ','{[]}'.nick7 ($z[$user['zayavka']]['team2'][0]).'{[]}');
}
if($_POST['confirm2']) {
$z = $zay->getlist(1,null,$_REQUEST['gocombat']);
addchp ('<font color=red>Внимание!</font> '.nick3($user['id']).' принял заявку, нужно принять вызов или отказать. ','{[]}'.nick7 ($z[$_REQUEST['gocombat']]['team1'][0]).'{[]}');
echo $zay->addteam (2,$user['id'], $_REQUEST['gocombat'], 1);
die("<script>document.location='zayavka.php?level=begin';</script>");
}
if($_POST['gofi']) {
$zay->battlestart( $user['id'], $user['zayavka'], 1 );
}
echo "</b></font>";
echo '<table cellspacing=0 cellpadding=0><tr><td>';
$z = $zay->getlist(1,null,$user['zayavka']);
if( $zay->ustatus($user['id'])==0 ) {
//if ($z[$user['zayavka']]['level'] == 1)
{
echo '<FIELDSET><LEGEND><B>Подать заявку на бой</B> </LEGEND>Таймаут <SELECT NAME=timeout><OPTION value=3>3 мин.<OPTION value=4>4 мин.<OPTION value=5>5 мин.<OPTION value=7>7 мин.<OPTION value=10 selected>10 мин.</SELECT> Тип боя <SELECT NAME=k><OPTION value=1>с оружием<OPTION value=4>кулачный</SELECT><INPUT TYPE=submit name=open value="Подать заявку"> </FIELDSET>';
};
}
if( $zay->ustatus($user['id'])==1 ) {
if(count($z[$user['zayavka']]['team2'])>0){
echo "<B><font color=red>Внимание! ".nick3($z[$user['zayavka']]['team2'][0])." принял заявку на бой, нужно отказать или принять вызов.</font></b> <input type=submit value='Битва!' name=gofi> <input type=submit value='Отказать' name=cansel>";
}
else {
if ($z[$user['zayavka']]['level'] == 1)
echo "Заявка на бой подана, ожидаем противника. <input type=submit name=back value='Отозвать заявку'>";
$Path="/tmp/zayavka/".$user['id'].".txt";
$f = fopen($Path, "r");
$timeFigth = fread($f, filesize($Path));
fclose($f);
if($user['level'] == 0) {
if($_GET['trainstart']==1 && $user['hp'] > $user['maxhp']*0.33 && $user['level'] <= 7) {
unlink("/tmp/zayavka/".$user['id'].".txt");
$zay->delzayavka ($user['id'], $user['zayavka'], 1,0);
mysql_query("INSERT INTO `bots` (`name`,`prototype`,`battle`,`hp`) values ('".$user['login']." (Клон 1)','".$user['id']."','','".$user['maxhp']."');");
$bot = mysql_insert_id();
$teams = array();
$teams[$user['id']][$bot] = array(0,0,time());
$teams[$bot][$user['id']] = array(0,0,time());
mysql_query("INSERT INTO `battle`
(
`id`,`coment`,`teams`,`timeout`,`type`,`status`,`t1`,`t2`,`to1`,`to2`, `clone`
)
VALUES
(
NULL,'','".serialize($teams)."','3','1','0','".$user['id']."','".$bot."','".time()."','".time()."', 1
)");
$id = mysql_insert_id();
mysql_query("INSERT INTO `logs` (`id`,`log`) VALUES('{$id}','Часы показывали <span class=date>".date("Y.m.d H.i")."</span>, когда ".$rr." бросили вызов друг другу. <BR>');");
mysql_query("UPDATE `bots` SET `battle` = {$id} WHERE `id` = {$bot} LIMIT 1;");
$rr = "<b>".nick3($user['id'])."</b> и <b>".nick3($bot)."</b>";
addlog($id,"Часы показывали <span class=date>".date("Y.m.d H.i")."</span>, когда ".$rr." бросили вызов друг другу. <BR>");
mysql_query("UPDATE users SET `battle` ={$id},`zayavka`=0 WHERE `id`= {$user['id']};");
die("<script>location.href='fbattle.php';</script>");
///=======================================================================================
} else {
echo $user['level'];
}
if($user['level'] == 0) {echo " или <input type=button onclick=\"location.href='zayavka.php?level=begin&trainstart=1';\" value=\"Начать тренировочный бой\">";}
}
}
}
if( $zay->ustatus($user['id'])==2 ) {
if ($z[$user['zayavka']]['level'] == 1)
echo "Ожидаем подтверждения боя. <input type=submit name=back2 value='Отозвать заявку'>";
}
echo '</td></tr></table></TD><TD align=right valign=top rowspan=2><INPUT TYPE=submit name=tmp value="Обновить">';
echo '<tr><td><INPUT TYPE=hidden name=level value=begin><INPUT TYPE=submit value="Принять вызов" NAME=confirm2><BR>';
if ($z = $zay->getlist(1))
foreach ($z as $k=>$v) {
echo $zay->showfiz( $v );
}
echo '<INPUT TYPE=submit value="Принять вызов" NAME=confirm2></TD></TR></TABLE>';
}
if ($_REQUEST['level'] == 'fiz') {
if($user['level']==0) {die("<BR><BR><BR><CENTER><B>Физические бои доступны с 1 уровня.</b></CENTER>");}
echo "<font color=red><b>";
if($_POST['open']) {
if($_POST['k']==6) {
$blood = 1;
} else {
$blood = 0;
}
echo $zay->addzayavka(0,$_POST['timeout'], 1, 1, $_POST['k'], $user['level'], 1, $user['level'], 21, '', $user['id'], 2, 0,$blood);
die("<script>document.location='zayavka.php?level=fiz';</script>");
}
if($_POST['back']) {
unlink("/tmp/zayavka/".$user['id'].".txt");
echo $zay->delzayavka($user['id'], $user['zayavka'], 2,0);
}
if($_POST['back2']) {
$z = $zay->getlist(2,null,$user['zayavka']);
addchp ('<font color=red>Внимание!</font> '.nick3($user['id']).' отозвал заявку.','{[]}'.nick7 ($z[$user['zayavka']]['team1'][0]).'{[]}');
echo $zay->delteam (2,$user['id'], $user['zayavka'], 2);
}
if($_POST['cansel']) {
$z = $zay->getlist(2,null,$user['zayavka']);
echo $zay->delteam (2,$z[$user['zayavka']]['team2'][0], $user['zayavka'], 2);
addchp ('<font color=red>Внимание!</font> '.nick3($user['id']).' отказался от поединка.','{[]}'.nick7 ($z[$user['zayavka']]['team2'][0]).'{[]}');
}
if($_POST['confirm2'] && !$user['zayavka']) {
$z = $zay->getlist(2,null,$_REQUEST['gocombat']);
$toper = $z[$_REQUEST['gocombat']]['team1'][0];
$toper = mysql_fetch_array(mysql_query("SELECT `klan` FROM `users` WHERE `id`='{$toper}' LIMIT 1;"));
if($user['klan'] != $toper['klan'] || $user['klan']==''){
addchp ('<font color=red>Внимание!</font> '.nick3($user['id']).' принял заявку, нужно принять вызов или отказать. ','{[]}'.nick7 ($z[$_REQUEST['gocombat']]['team1'][0]).'{[]}');
}
echo $zay->addteam (2,$user['id'], $_REQUEST['gocombat'], 2);
echo "</b></font><BR>Ожидаем подтверждения боя. <input type=submit name=back2 value='Отозвать заявку'>";
}
if($_POST['gofi']) {
$zay->battlestart( $user['id'], $user['zayavka'], 2 );
}
echo "</b></font>";
echo '<table cellspacing=0 cellpadding=0><tr><td>';
if( $zay->ustatus($user['id'])==0 ) {
echo '<FIELDSET><LEGEND><B>Подать заявку на бой</B> </LEGEND>Таймаут <SELECT NAME=timeout><OPTION value=3>3 мин.<OPTION value=4>4 мин.<OPTION value=5>5 мин.<OPTION value=7>7 мин.<OPTION value=10 selected>10 мин.</SELECT> Тип боя <SELECT NAME=k><OPTION value=1>с оружием<OPTION value=4>кулачный<OPTION value=6>кровавый</SELECT><INPUT TYPE=submit name=open value="Подать заявку"> </FIELDSET>';
}
$z = $zay->getlist(2,null,$user['zayavka']);
if( $zay->ustatus($user['id'])==1 ) {
if(count($z[$user['zayavka']]['team2'])>0){
echo "<B><font color=red>Внимание! ".nick3($z[$user['zayavka']]['team2'][0])." принял заявку на бой, нужно отказать или принять вызов.</font></b> <input type=submit value='Битва!' name=gofi> <input type=submit value='Отказать' name=cansel>";
}
else {
if ($z[$user['zayavka']]['level'] == 2) {
echo "Заявка на бой подана, ожидаем противника. <input type=submit name=back value='Отозвать заявку'>";
$Path="/tmp/zayavka/".$user['id'].".txt";
$f=fopen($Path,"r");
$timeFigth=fread($f, filesize($Path));
fclose($f);
if($timeFigth < time() && ($user['level'] <= 14)) {
if($_GET['trainstart'] == 1 && $user['hp'] > $user['maxhp']*0.33 && ($user['level'] <= 7 || $user['align'] == 2.99)) {
unlink("/tmp/zayavka/".$user['id'].".txt");
$zay->delzayavka ($user['id'], $user['zayavka'], 2,0);
mysql_query("INSERT INTO `bots` (`name`, `prototype`, `battle`, `hp`) values ('".$user['login']." (Клон 1)','".$user['id']."','','".$user['maxhp']."');");
$bot = mysql_insert_id();
$teams = array();
$teams[$user['id']][$bot] = array(0, 0, time());
$teams[$bot][$user['id']] = array(0, 0, time());
mysql_query("INSERT INTO `battle`
(`teams`,`timeout`,`type`,`status`,`t1`,`t2`,`to1`,`to2`, `clone`
)
VALUES
('".serialize($teams)."','3','1','0','".$user['id']."','".$bot."','".time()."','".time()."', 1
)");
$id = mysql_insert_id();
mysql_query("UPDATE `bots` SET `battle` = {$id} WHERE `id` = {$bot} LIMIT 1");
$rr = "<b>".nick3($user['id'])."</b> и <b>".nick3($bot)."</b>";
addlog($id,"Часы показывали <span class=date>".date("Y.m.d H.i")."</span>, когда ".$rr." бросили вызов друг другу. <BR>");
mysql_query("UPDATE users SET `battle` ={$id},`zayavka`=0 WHERE `id`= {$user['id']};");
die("<script>location.href='fbattle.php';</script>");
}
$Path="/tmp/zayavka/".$user['id'].".txt";
$f=fopen($Path,"r");
$timeFigth=fread($f, filesize($Path));
fclose($f);
if($user['level'] < 7 || $user['align'] == 2.99) {
echo " или <input type=button onclick=\"location.href='zayavka.php?level=fiz&trainstart=1';\" value=\"Начать тренировочный бой\">";
}
}
}
}
}
if( $zay->ustatus($user['id'])==2 ) {
if ($z[$user['zayavka']]['level'] == 2)
echo "Ожидаем подтверждения боя. <input type=submit name=back2 value='Отозвать заявку'>";
}
echo '</td></tr></table></TD><TD align=right valign=top rowspan=2><INPUT TYPE=submit name=tmp value="Обновить"><BR><FIELDSET style="width:150px;"><LEGEND>Показывать заявки</LEGEND><table cellspacing=0 cellpadding=0 ><tr><td width=1%><input type=radio name=view value="'.$user['level'].'" '.(($_SESSION['view'] != null)?"checked":"").'></td><td>моего уровня</td></tr><tr><td><input type=radio name=view value="" '.(($_SESSION['view'] == null)?"checked":"").'></td><td>все</td></tr></table></FIELDSET>';
echo '<tr><td><INPUT TYPE=hidden name=level value=fiz><INPUT TYPE=submit value="Принять вызов" NAME=confirm2><BR>';
if ($z = $zay->getlist(2,$_SESSION['view']))
foreach ($z as $k=>$v) {
echo $zay->showfiz( $v );
}
echo '<INPUT TYPE=submit value="Принять вызов" NAME=confirm2></TD></TR></TABLE>';
}
if ($_REQUEST['level'] == 'group') {
if($user['level']<2) {die("<BR><BR><BR><CENTER><B>Групповые бои доступны с 2 уровня.</b></CENTER>");}
if($_POST['open1'] && !$user['zayavka'])
{
// room 101 - противостояние сил
echo '<TABLE><TR><TD>
<H3>Подать заявку на групповой бой</H3>
Начало боя через <SELECT NAME=startime>
<option value=600>10 минут
<option value=900 selected>15 минут
<option value=1800>30 минут
<option value=2700>45 минут
<option value=3600>1 час
</SELECT>
Таймаут <SELECT NAME=timeout><OPTION value=3>3 мин.<OPTION value=4>4 мин.<OPTION value=5 selected>5 мин.<OPTION value=7>7 мин.<OPTION value=10>10 мин.</SELECT>
<BR><BR>
Ваша команда <INPUT TYPE=text NAME=nlogin1 size=3 maxlength=2> бойцов<BR>';
if($user['room']!=101)
echo'Уровни союзников <SELECT NAME=levellogin1>
<option value=0>любой
<option value=1>только моего и ниже
<option value=2>только ниже моего уровня
<option value=3>только моего уровня
<option value=4>не старше меня более чем на уровень
<option value=5>не младше меня более чем на уровень
<option value=6>мой уровень +/- 1
<option value=99>мой клан
</SELECT>';
else echo'<INPUT TYPE=hidden value=0 NAME=levellogin1>';
echo'<BR><BR>
Противники <INPUT TYPE=text NAME=nlogin2 size=3 maxlength=2> бойцов<BR>';
if($user['room']!=101)
echo'Уровни противников <SELECT NAME=levellogin2>
<option value=0>любой
<option value=1>только моего и ниже
<option value=2>только ниже моего уровня
<option value=3>только моего уровня
<option value=4>не старше меня более чем на уровень
<option value=5>не младше меня более чем на уровень
<option value=6>мой уровень +/- 1
<option value=99>только клан
</SELECT>';
else echo'<INPUT TYPE=hidden value=0 NAME=levellogin1>';
echo'<BR>';
if($user['room']!=101)
echo'<INPUT TYPE=checkbox NAME=k> Кулачный бой<BR>
<INPUT TYPE=checkbox NAME=travma> Бой без правил (<font class=dsc>проигравшая сторона получает инвалидность</font>)<BR>';
if($user['room']==101)
echo'<BR><BR>
Деньги <INPUT TYPE=text NAME=nmoney size=8 maxlength=8> кр.<BR>
Опыт <INPUT TYPE=text NAME=nexp size=8 maxlength=8> единиц<BR>';
echo'Комментарий к бою <INPUT TYPE=text NAME=cmt maxlength=40 size=40>
</TD></TR>
<TR><TD align=center>
<INPUT TYPE=submit value="Начнем месилово! :)" name=open>
</TD></TR>
</TABLE>
</TD><TD align=right valign=top>
<INPUT TYPE=submit value="Вернуться">
</TD></TR></TABLE><INPUT TYPE=hidden name=level value=group>';
die();
}
if($_POST['goconfirm'] && !$user['zayavka']) {
echo '<TABLE width=100%><TR><TD>';
$z = $zay->getlist(4,null,$_POST['gocombat']);
echo "<B>Ожидаем начала группового боя...</B><BR>Бой начнется через: ".round(($z[$_POST['gocombat']]['start']-time())/60,1)." мин.";
echo '</TD><TD align=right><INPUT TYPE=submit value="Вернуться"></TD></TR></TABLE><H3>На чьей стороне будете сражаться?</H3>
<TABLE align=center cellspacing=4 cellpadding=1><TR><TD bgcolor=99CCCC><B>Группа 1:</B><BR>
Максимальное кол-во: '.$z[$_POST['gocombat']]['t1c'].'<BR>
Ограничения по уровню: '.($z[$_POST['gocombat']]['t1min']==99?'клан':$z[$_POST['gocombat']]['t1min']." - ".$z[$_POST['gocombat']]['t1max']).'
</TD><TD bgcolor=99CCCC><B>Группа 2:</B><BR>
Максимальное кол-во: '.$z[$_POST['gocombat']]['t2c'].'<BR>
Ограничения по уровню: '.($z[$_POST['gocombat']]['t2min']==99?'клан':$z[$_POST['gocombat']]['t2min']." - ".$z[$_POST['gocombat']]['t2max']).'
</TD></TR><TR>
<TD align=center>';
foreach( $z[$_POST['gocombat']]['team1'] as $k=>$v ) {
if ($k!=0) $rr.="<BR>";
echo nick3($v);
}
echo '</TD><TD align=center>';
foreach( $z[$_POST['gocombat']]['team2'] as $k=>$v ) {
if ($k!=0) $rr.="<BR>";
echo nick3($v);
}
echo '</TD></TR><TR>';
$vs_test=mysql_fetch_array(mysql_query("SELECT * FROM zayavka where id='{$z[$_POST['gocombat']]['id']}' limit 1 "));
if($user['room'] != 101)
{if ($vs_test['versus']==0)
{
$raid_t=mysql_fetch_array(mysql_query("SELECT * FROM variables WHERE var='raid_on_status' limit 1;"));
if($z[$_POST['gocombat']]['team1'][0]!=1000 && $z[$_POST['gocombat']]['team1'][0]!=1001)
echo '<TD align=center><INPUT TYPE=submit name=confirm1 value="Я за этих!"></TD>';
else echo'<TD align=center>Силы Хаоса</TD>';
}
else echo '<TD align=center>Войдите в комнату "Противостояние", чтобы принять эту заявку!</TD>';}
else
{
if(($user['align']==6)||($user['align']==2.1)||($user['align']==2.99)||(($user['align']>7)&&($user['align']<8))||($user['align']==2))
{echo '<TD align=center><INPUT TYPE=submit name=confirm1 value="Я за Свет!"></TD>';};
if(($user['align']==2.1)||($user['align']==6))
{echo '<TD align=center></TD>';};
};
if($user['room'] != 101) {
if ($vs_test['versus']==0) {echo '<TD align=center><INPUT TYPE=submit name=confirm2 value="Я за этих!"></TD>';}
else echo '<TD align=center></TD>';
} else {
if(($user['align']==2.2)||($user['align']==3)) {echo '<TD align=center></TD>';};
if(($user['align']==3)||($user['align']==2.2)||($user['align']==2.99)||(($user['align']>7)&&($user['align']<8))||($user['align']==2)) {
echo '<TD align=center><INPUT TYPE=submit name=confirm2 value="Я за Тьму!"></TD>';
};
};
echo '</TR></TABLE><INPUT TYPE=hidden name=gocombat value="'.$_POST['gocombat'].'"><INPUT TYPE=hidden name=level value=group>';
die();
}
echo "<font color=red><b>";
if(($_POST['confirm1']) && $_POST['gocombat'] && !$user['zayavka']) {echo $zay->addteam (1,$user['id'], $_REQUEST['gocombat'], 4);}
if(($_POST['confirm2']) && $_POST['gocombat'] && !$user['zayavka']) {echo $zay->addteam (2,$user['id'], $_REQUEST['gocombat'], 4);}
if($_POST['open'] && !$user['zayavka']) {
//print_r($_REQUEST);
switch($_POST['levellogin1']) {
case 0 : //любой
$min1 = 2;
$max1 = 21;
break;
case 1 : //только моего и ниже
$min1 = 2;
$max1 = $user['level'];
break;
case 2 : //только ниже моего уровня
$min1 = 2;
$max1 = $user['level']-1;
break;
case 3 : //только моего уровня
$min1 = $user['level'];
$max1 = $user['level'];
break;
case 4 : //не старше меня более чем на уровень
$min1 = $user['level'];
$max1 = $user['level']+1;
break;
case 5 : //не младше меня более чем на уровень
$min1 = $user['level']-1;
$max1 = $user['level'];
break;
case 6 : //мой уровень +/- 1
$min1 = (int)$user['level']-1;
$max1 = (int)$user['level']+1;
break;
case 99 : // кланы
$min1 = 99;
$max1 = 99;
break;
}
switch($_POST['levellogin2']) {
case 0 : //любой
$min1 = 2;
$max1 = 21;
break;
case 1 : //только моего и ниже
$min1 = 2;
$max1 = $user['level'];
break;
case 2 : //только ниже моего уровня
$min1 = 2;
$max1 = $user['level']-1;
break;
case 3 : //только моего уровня
$min1 = $user['level'];
$max1 = $user['level'];
break;
case 4 : //не старше меня более чем на уровень
$min1 = $user['level'];
$max1 = $user['level']+1;
break;
case 5 : //не младше меня более чем на уровень
$min1 = $user['level']-1;
$max1 = $user['level'];
break;
case 6 : //мой уровень +/- 1
$min1 = (int)$user['level']-1;
$max1 = (int)$user['level']+1;
break;
case 99 : // кланы
$min1 = 99;
$max1 = 99;
break;
}
if($_POST['k']) {
$_POST['k'] = 4;
} else {
$_POST['k'] = 2;
}
if($_POST['travma']) {
$blood = 1;
} else {
$blood = 0;
}
if ($_POST['nlogin1'] == 1 && $_POST['nlogin2'] == 1)
{
echo "Не надо превращать групповой бой в физический поединок";
}
else {
echo $zay->addzayavka ($_POST['startime']/60,$_POST['timeout'], $_POST['nlogin1'], $_POST['nlogin2'], $_POST['k'], $min1, $min2, $max1, $max2, $_POST['cmt'], $user['id'], 4, 0, $blood);
}
}
/////////////////////////////////
echo "</font></b><INPUT TYPE=hidden name=level value=group>";
echo '<table cellspacing=0 cellpadding=0><tr><td>';
if( $zay->ustatus($user['id'])==0 )
if(($user['room']==101) && ($user['align'] != 2.2) && ($user['align'] != 2.1))
{
echo "<BR><CENTER><B>Свет и Тьма не снизойдут к вашей просьбе начать новый бой</b></CENTER>";
}
else
{
echo '<INPUT TYPE=hidden name=level value=group><INPUT TYPE=submit value="Подать новую заявку" name=open1>';
}
if( $zay->ustatus($user['id'])!=0) {
$z = $zay->getlist(4,null,$user['zayavka']);
if ($z[$user['zayavka']]['level'] == 4) {
echo "<B>Ожидаем начала группового боя...</B><BR>Бой начнется через: ".round(($z[$user['zayavka']]['start']-time())/60,1)." мин.";
}
}
echo '</td></tr></table></TD><TD align=right valign=top rowspan=2><INPUT TYPE=submit name=tmp value="Обновить"><BR><FIELDSET style="width:150px;"><LEGEND>Показывать заявки</LEGEND><table cellspacing=0 cellpadding=0 ><tr><td width=1%><input type=radio name=view value="'.$user['level'].'" '.(($_SESSION['view'] != null)?"checked":"").'></td><td>моего уровня</td></tr><tr><td><input type=radio name=view value="" '.(($_SESSION['view'] == null)?"checked":"").'></td><td>все</td></tr></table></FIELDSET>';
echo '<tr><td width=85%>';
echo '<BR><INPUT TYPE=submit value="Принять участие" NAME=goconfirm><BR>';
if ($z = $zay->getlist(4,$_SESSION['view']))
foreach ($z as $k=>$v)
{
$ok=0;
if ($user['room'] == 101)
{
$vs_test=mysql_fetch_array(mysql_query("SELECT * FROM zayavka where id='{$z[$k]['id']}' limit 1 "));
if ($vs_test['versus']==1) $ok=1;
else $ok=0;
}
else $ok=0;
if(($ok==0 && $user['room']!=101)||($ok==1 && $user['room']==101))
{
if ((($z[$k]['start']-time()) < 0) || (($z[$k]['t1c'] == count($z[$k]['team1'])) && ($z[$k]['t2c'] == count($z[$k]['team2']))))
{
$zay->battlestart("CHAOS", $k, 4);
}
echo $zay->showgroup( $v );
}
}
echo '<INPUT TYPE=submit value="Принять участие" NAME=goconfirm></td></tr></table>';
}
if ($_REQUEST['level'] == 'haos') {
if($user['level']<2) {die("<BR><BR><BR><CENTER><B>Хаотичные бои доступны с 2 уровня.</b></CENTER>");}
if($_POST['open'] && !$user['zayavka']) {
switch($_POST['levellogin1']) {
case 0 :
$min1 = 1;
$max1 = 21;
break;
case 3 :
$min1 = $user['level'];
$max1 = $user['level'];
break;
case 6 :
$min1 = (int)$user['level']-1;
$max1 = (int)$user['level']+1;
break;
}
//$_POST['k'] = 3;
$blood = 0;
if($_POST['travma']) {$blood = 1;}
echo $zay->addzayavka($_POST['startime2']/60,$_POST['timeout'], 99, 99, $_POST['k'], $min1, $min1, $max1, $max1, $_POST['cmt'], $user['id'], 5, 0, $blood);
}
if($_POST['confirm2']) {echo "<span class='redalert'>".$zay->addteam (1,$user['id'], $_REQUEST['gocombat'], 5)."</span>";}
echo '<table cellspacing=0 cellpadding=0><tr><td>';
if( $zay->ustatus($user['id'])==0 ) {
echo 'Хаотичный бой - разновидность группового, где группы формируются автоматически. Бой не начнется, если собралось меньше 4-х человек. <DIV id="dv2" style="display:"><A href="#" onclick="dv1.style.display=\'\'; dv2.style.display=\'none\'; return false">Подать заявку на хаотичный бой</A></DIV><DIV id="dv1" style="display: none"><FIELDSET><LEGEND><B>Подать заявку на хаотичный бой</B> </LEGEND>Начало боя через <SELECT NAME=startime2><option value=180>3 минуты</option><option value=300 selected>5 минут</option><option value=600>10 минут</option><option value=900>15 минут</option><option value=1800>30 минут</option><option value=2700>45 минут</option><option value=3600>1 час</option></SELECT> Таймаут <SELECT NAME=timeout><OPTION value=3 SELECTED>3 мин.<OPTION value=5>5 мин.<OPTION value=10>10 мин.</SELECT><BR>Уровни бойцов <SELECT NAME=levellogin1><option value=0>любой<option value=3>только моего уровня<option value=6 selected>мой уровень +/- 1</SELECT><BR><BR>Тип боя <SELECT NAME=k><OPTION value=3>с оружием<OPTION value=5>кулачный</SELECT><BR><INPUT TYPE=checkbox NAME=travma> Бой без правил (<font class=dsc>проигравшая сторона получает инвалидность</font>)<BR><INPUT TYPE=submit name=open value="Подать заявку"> <BR>Комментарий к бою <INPUT TYPE=text NAME=cmt maxlength=40 size=40></FIELDSET><BR></DIV>';
}
if( $zay->ustatus($user['id'])!=0) {
$z = $zay->getlist(5,null,$user['zayavka']);
if ($z[$user['zayavka']]['level'] == 5)
echo "<B>Ожидаем начала группового боя...</B><BR>Бой начнется через: ".round(($z[$user['zayavka']]['start']-time())/60,1)." мин.";
}
echo '</td></tr></table></TD><TD align=right valign=top rowspan=2><INPUT TYPE=submit name=tmp value="Обновить"><BR><FIELDSET style="width:150px;"><LEGEND>Показывать заявки</LEGEND><table cellspacing=0 cellpadding=0 ><tr><td width=1%><input type=radio name=view value="'.$user['level'].'" '.(($_SESSION['view'] != null)?"checked":"").'></td><td>моего уровня</td></tr><tr><td><input type=radio name=view value="" '.(($_SESSION['view'] == null)?"checked":"").'></td><td>все</td></tr></table></FIELDSET>';
echo '<tr><td width=85%><INPUT TYPE=hidden name=level value=haos><INPUT TYPE=submit value="Принять участие" NAME=confirm2><BR>';
if ($z = $zay->getlist(5,$_SESSION['view']))
foreach ($z as $k=>$v) {
if (($z[$k]['start']-time()) < 0) {
$zay->battlestart("CHAOS", $k, 5);
}
echo $zay->showhaos( $v );
}
echo '<INPUT TYPE=submit value="Принять участие" NAME=confirm2></TD></TR></TABLE>';
//print_r($_POST);
}
if($_REQUEST['tklogs'] != null) {
$t1 = floor(time()-900);
$data = mysql_query("SELECT * FROM `battle` WHERE `win` = '3' AND `to1` > '".$t1."' AND `to2` > '".$t1."' ORDER by `id` ASC");
while($row = @mysql_fetch_array($data)) {
echo "<span class=date>{$row['date']}</span>";
$z = explode(";", $row['t1']);
foreach($z as $k => $v) {
if($k > 0) { echo ","; }
2018-03-03 23:34:13 +02:00
nick::id($v)->full();
2018-01-28 18:40:49 +02:00
}
echo " против ";
$z = explode(";",$row['t2']);
foreach($z as $k=>$v) {
if($k > 0) { echo ","; }
2018-03-03 23:34:13 +02:00
nick::id($v)->full();
2018-01-28 18:40:49 +02:00
}
echo "<img src='i/fighttype{$row['type']}.gif'> <a href='logs.php?log={$row['id']}' target=_blank>»»</a><br />";
}
}
if($_REQUEST['logs'] != null) {
echo '<TABLE width=100% cellspacing=0 cellpadding=0><TR>
<TD valign=top> <A HREF="zayavka.php?logs='.
date("d.m.y",mktime(0, 0, 0, substr($_REQUEST['logs'],3,2), substr($_REQUEST['logs'],0,2)-1, "20".substr($_REQUEST['logs'],6,2)))
.'&filter='.(($_REQUEST['filter'])?$_REQUEST['filter']:$user['login']).'">« Предыдущий день</A></TD>
<TD valign=top align=center><H3>Записи о завершенных боях за '.(($_REQUEST['logs']!=1)?"{$_REQUEST['logs']}":"".date("d.m.y")).'</H3></TD>
<TD valign=top align=right><A HREF="zayavka.php?logs='.
date("d.m.y",mktime(0, 0, 0, substr($_REQUEST['logs'],3,2), substr($_REQUEST['logs'],0,2)+1, "20".substr($_REQUEST['logs'],6,2)))
.'&filter='.(($_REQUEST['filter'])?$_REQUEST['filter']:$user['login']).'">Следующий день »</A> </TD>
</TR><TR><TD colspan=3 align=center>Показать только бои персонажа: <INPUT TYPE=text NAME=filter value="'.(($_REQUEST['filter'])?$_REQUEST['filter']:$user['login']).'"> за <INPUT TYPE=text NAME=logs size=12 value="'.(($_REQUEST['logs']!=1)?"{$_REQUEST['logs']}":"".date("d.m.y")).'"> <INPUT TYPE=submit value="фильтр!"></TD>
</TR></TABLE>';
$u = mysql_fetch_array(mysql_query("SELECT `id` FROM `users` WHERE `login` = '".(($_REQUEST['filter'])?"{$_REQUEST['filter']}":"{$user['login']}")."' LIMIT 1"));
$data = mysql_query("SELECT * FROM `battle` WHERE ((`t1` LIKE '%;{$u[0]};%' OR `t1` LIKE '{$u[0]}' OR `t1` LIKE '{$u[0]};%' OR `t1` LIKE '%;{$u[0]}') OR (`t2` LIKE '%;{$u[0]};%' OR `t2` LIKE '{$u[0]}' OR `t2` LIKE '{$u[0]};%' OR `t2` LIKE '%;{$u[0]}')) AND `date` LIKE '".(($_REQUEST['logs']!=1)?"20".substr($_REQUEST['logs'],6,2)."-".substr($_REQUEST['logs'],3,2)."-".substr($_REQUEST['logs'],0,2):"".date("Y-m-d"))." %' ORDER by `id` DESC");
while ($row = @mysql_fetch_array($data)) {
echo "<span class=date>{$row['date']}</span>";
echo ' ' . $row['t1hist'];
if ($row['win'] == 1) {
echo '<img src=i/flag.gif>';
}
echo " против ";
echo $row['t2hist'];
if ($row['win'] == 2) {
echo '<img src=i/flag.gif>';
}
if ($row['type'] == 10) {
$rr = "<IMG SRC=\"i/fighttype6.gif\" WIDTH=20 HEIGHT=20 ALT=\"Кровавый поединок\"> ";
} elseif ($row['blood'] && ($row['type'] == 5 OR $row['type'] == 4)) {
$rr = "<IMG SRC=\"i/fighttype5.gif\" WIDTH=20 HEIGHT=20 ALT=\"кулачный бой\"><IMG SRC=\"i/fighttype6.gif\" WIDTH=20 HEIGHT=20 ALT=\"Кровавый поединок\"> ";
} elseif ($row['blood'] && ($row['type'] == 2 OR $row['type'] == 3 OR $row['type'] == 6)) {
$rr = "<IMG SRC=\"i/fighttype6.gif\" WIDTH=20 HEIGHT=20 ALT=\"Кровавый поединок\"> ";
} elseif ($row['type'] == 5 OR $row['type'] == 4) {
$rr = "<IMG SRC=\"i/fighttype4.gif\" WIDTH=20 HEIGHT=20 ALT=\"кулачный бой\"> ";
} elseif ($row['type'] == 3 OR $row['type'] == 2) {
$rr = "<IMG SRC=\"i/fighttype3.gif\" WIDTH=20 HEIGHT=20 ALT=\"групповой бой\"> ";
} elseif ($row['type'] == 1) {
$rr = "<IMG SRC=\"i/fighttype1.gif\" WIDTH=20 HEIGHT=20 ALT=\"физический бой\"> ";
}
echo $rr;
echo " <a href='logs.php?log={$row['id']}' target=_blank>»»</a><BR>";
$i++;
}
if($i==0) {
echo '<CENTER><BR><BR><B>В этот день не было боев, или же, летописец опять потерял свитки...</B><BR><BR><BR></CENTER>';
}
echo '<HR><BR>';
}
mysql_query("UNLOCK TABLES");
?>
</form>
</body>
</html>