2018-01-28 16:40:49 +00:00
< ? php // #!/usr/bin/php
// демон, запускающий волны
$names = array ( " Слуга х а о с а " , " Котельщик " , " Надсмотрищик " , " Кожекрылый " , " Валькирия " , " Грешная Душа " , " Падший Ангел " , " Падший Ангел " , " Дьявол " );
$bots = array ( 79 , 80 , 81 , 82 , 83 , 84 , 85 , 86 , 87 );
$shema = array ( " 79 " => 4 ,
" 80 " => 4 ,
" 81 " => 2 ,
" 82 " => 2 ,
" 83 " => 2 ,
" 84 " => 1 ,
" 85 " => 1 ,
" 86 " => 1 ,
" 87 " => 1 ,
);
// подключаем конфиг
// include "../connect.php";
// подключаем функции
// include "../functions.php";
// циклим демона
// while(1) {
// итерация
// есть ли конект с базой
$test = mysql_fetch_array ( mysql_query ( " SELECT 1; " ));
if ( $test [ 1 ] != 1 ) {
// include "../connect.php";
}
// выбираем все походы
$pohs = mysql_query ( " SELECT `owner`,`volna`,`id` FROM `hellround_pohod` WHERE `end` = 0; " );
while ( $poh = mysql_fetch_array ( $pohs )) {
// проверяем на живность
$u = mysql_fetch_array ( mysql_query ( " SELECT `hp` FROM `users` WHERE `id` = ' " . $poh [ 'owner' ] . " ' LIMIT 1; " ));
if ( $u [ 'hp' ] <= 0 ) {
// удаляем ресурсы
mysql_query ( " DELETE FROM `inventory` WHERE `owner` = ' " . $poh [ 'owner' ] . " ' AND `bs` = 1; " );
mysql_query ( " UPDATE `hellround_pohod` SET `end` = 1, `date_out` = NOW( ) WHERE `id` = " . $poh [ 'id' ] . " AND `end` = 0; " );
2018-03-04 00:09:58 +00:00
addchp ( '<font color=red>Внимание!</font> Вы погибли в противостоянии х а о с у ...<BR>\'; top.frames[\'main\'].location=\'main.php\'; var z = \' ' , '{[]}' . nick :: id ( $poh [ 'owner' ]) -> short () . '{[]}' );
2018-01-28 16:40:49 +00:00
echo " USER: " . $poh [ 'owner' ] . " live trip. \n " ;
} else
{
// забираем последний бой, может пора запускать волну?
$last_a = mysql_fetch_array ( mysql_query ( " SELECT `id` FROM `battle` WHERE `t1` = ' " . $poh [ 'owner' ] . " ' AND `win` = 3 ORDER by `id` DESC LIMIT 1; " ));
$last_b = mysql_fetch_array ( mysql_query ( " SELECT `to1` FROM `battle` WHERE `t1` = ' " . $poh [ 'owner' ] . " ' AND `win` <> 3 ORDER by `id` DESC LIMIT 1; " ));
$last_b = $last_b [ 0 ];
$last_a = $last_a [ 0 ];
// echo $last_a." ".$last_b." ".$poh['owner']."\n";
// проверяем, запускаем ботов
if (( time () - $last_b ) >= 60 && $last_a == 0 ) {
// если прошло больше минуты, стартуем волну
$nextvolna = $poh [ 'volna' ] + 1 ;
$bot [ 1 ] = $shema [ $bots [ 0 ]] * $nextvolna ;
$bot [ 2 ] = $shema [ $bots [ 1 ]] * $nextvolna ;
$bot [ 3 ] = $shema [ $bots [ 2 ]] * $nextvolna ;
if ( $nextvolna >= 10 ) {
$bot [ 4 ] = $shema [ $bots [ 3 ]] * $nextvolna ;
$bot [ 5 ] = $shema [ $bots [ 4 ]] * $nextvolna ;
$bot [ 6 ] = $shema [ $bots [ 5 ]] * $nextvolna ;
}
if ( $nextvolna >= 25 ) {
$bot [ 7 ] = $shema [ $bots [ 6 ]] * $nextvolna ;
$bot [ 8 ] = $shema [ $bots [ 7 ]] * $nextvolna ;
$bot [ 9 ] = $shema [ $bots [ 8 ]] * $nextvolna ;
}
// делаем массив с айдишниками ботов
for ( $n = 1 ; $n <= 9 ; $n ++ ) {
for ( $i = 1 ; $i <= ( int ) $bot [ $n ]; $i ++ ){
$botz = mysql_fetch_array ( mysql_query ( " SELECT `maxhp`,`id` FROM `users` WHERE `id` = ' " . $bots [ $n - 1 ] . " ' LIMIT 1; " ));
mysql_query ( " INSERT INTO `bots` (`name`,`prototype`,`battle`,`hp`) values (' " . $names [ $n ] . " (проекция " . ( $i ) . " )',' " . $bots [ $n - 1 ] . " ','',' " . $botz [ 'maxhp' ] . " '); " );
$botz = mysql_insert_id ();
$enemys [] = $botz ;
}
}
// array of teams
$teams = array ();
foreach ( $enemys as $v ) {
$teams [ $poh [ 'owner' ]][ $v ] = array ( 0 , 0 , time ());
$teams [ $v ][ $poh [ 'owner' ]] = array ( 0 , 0 , time ());
}
// запись о битве
mysql_query ( " INSERT INTO `battle`
(
`id` , `coment` , `teams` , `timeout` , `type` , `status` , `t1` , `t2` , `to1` , `to2`
)
VALUES
(
NULL , '' , '".serialize($teams)."' , '3' , '1' , '0' , '".$poh[' owner ']."' , '".implode(";",$enemys)."' , '".time()."' , '".time()."'
) " );
$id = mysql_insert_id ();
// апдейтим бота
foreach ( $enemys as $v ) {
mysql_query ( " UPDATE `bots` SET `battle` = " . $id . " WHERE `id` = " . $v . " LIMIT 1; " );
}
// создаем лог
//$rr = "<b>".nick3($user['id'])."</b> и <b>".nick3($bot)."</b>";
//mysql_query("INSERT INTO `logs` (`id`,`log`) VALUES('{$id}','Часы показывали <span class=date>".date("Y.m.d H.i")."</span>, когда ".$rr." бросили вызов друг другу. <BR>');");
2018-03-03 22:54:41 +00:00
addlog ( $id , " Часы показывали <span class=date> " . date ( " Y.m.d H.i " ) . " </span>, когда <b> " . nick :: id ( $poh [ 'owner' ]) -> full ( 1 ) . " </b> вышел на битву с Адом... <BR> " );
2018-01-28 16:40:49 +00:00
chown ( " backup/logs/battle " . $id . " .txt " , " www-data " );
chgrp ( " backup/logs/battle " . $id . " .txt " , " www-data " );
mysql_query ( " UPDATE users SET `battle` = " . $id . " ,`zayavka`=0 WHERE `id`= " . $poh [ 'owner' ] . " ; " );
2018-03-04 00:09:58 +00:00
addchp ( '<font color=red>Внимание!</font> Новое пришествие...<BR>\'; top.frames[\'main\'].location=\'fbattle.php\'; var z = \' ' , '{[]}' . nick :: id ( $poh [ 'owner' ]) -> short () . '{[]}' );
2018-01-28 16:40:49 +00:00
mysql_query ( " UPDATE `hellround_pohod` SET `volna`=`volna`+1 WHERE `id` = " . $poh [ 'id' ] . " LIMIT 1; " );
echo " USER: " . $poh [ 'owner' ] . " New wave. \n " ;
}
}
// задержка
sleep ( 5 );
}
// }
?>