Вход Регистрация
Файл: element_labirint_battle.php
Строк: 365
<?php
require_once './element_options/element_options.php';
if (!
$user) { header('Location: /'); exit; }

    
$battle readcache('element_labirint_duh_user'.$user['lost_id']);         // Кэш с данными боя
    
if (!$battle) { header('Location: /labirint'); exit; }                    // Если нет кэша переадр. в лабиринт
    
require_once './element_function/element_function_battle.php';
    
    
$journal readcache('element_labirint_journal'.$user['lost_id']);
    if (!
is_array($journal)) $journal = array();
    
$count_journal count($journal);
        
        
$my_uron 0;
        
$bot_uron 0;
        
        
$abil_ogon AbilitiesOgon($user['lost_abilities_ogon'], $user['lost_race'], false$user['lost_id']);
        
$abil_voda AbilitiesVoda($user['lost_abilities_voda'], $user['lost_race'], false$user['lost_id']);
        
$abil_zeml AbilitiesZemlya($user['lost_abilities_zemlya'], $user['lost_race'], false$user['lost_id']);
        
$abil_vosd AbilitiesVozdyh($user['lost_abilities_vozduh'], $user['lost_race'], false$user['lost_id']);
        
$add_hp 0;
        
        
$time_bot explode(' '$battle['duh']['time_udar']);
        
$time_fre explode(' 'microtime());
        
$time_udar_bot ceil(($time_fre[1] + $time_fre[0]) - ($time_bot[1] + $time_bot[0]));
        
$rand_udar_s 4;
        
        
        if (
$time_udar_bot $rand_udar_s) {
            
$other_count_udat = (int)($time_udar_bot $rand_udar_s);
            
            for(
$i 0$i $other_count_udat$i++) {
                
$uron GenerationUron($battle['duh']['str'], $battle['duh']['time_udar'], 00$abil_zeml['add_procent'], GenerationProtection($user['lost_params_protection']));
                
                
$battle['user']['hp'] = $battle['user']['hp'] - $uron;
                
array_unshift($journal'<span class="small red"><img src="/images/icons/arena.gif"> '.$battle['duh']['name'].' ударил '.ikonka_user($user['lost_race'], 'online').' '.$user['lost_login'].' на <span class="bold">'.$uron.'</span> урон</span>');
            
                
$bot_uron $bot_uron $uron;
                
                    if (
$battle['user']['hp'] <= 0) {
                        require_once 
'./element_function/element_function_labirint.php';
                        
$chanse Element_Chance($battle['other']['etap'], 0);    // База шансов
                        
$labirint explode(':'$user['lost_labirint']);
                        
                        
$labirint[0] = time() + 3600;
                        
$labirint[1] = 0;
                    
                        
$user['lost_labirint'] = implode(':'$labirint);
                        
update_money_exp($user, array('user' => $labirint[6], 'town' => $labirint[8]), $labirint[5], 0$labirint[7]);
                        
                        
$user_quests user_quests($user['lost_id']);
                        
$count_quests quests_id_count('labirint_3');
                            if (
$user_quests['labirint_3'] < $count_quests) {
                                
$user_quests['labirint_3'] = $user_quests['labirint_3'] + 1;
                                if (
$user_quests['labirint_3'] == $count_quests$user_quests['lost_new'] = $user_quests['lost_new'] + 1;
                                
writecache('element_quests_user'.$user['lost_id'], $user_quests);    
                                
quests_list_update($user['lost_id']);
                        }
                        
                        
                        
deletecache('element_labirint_journal'.$user['lost_id']);
                        
deletecache('element_users_battle'.$user['lost_id']);
                        
deletecache('element_labirint_duh_user'.$user['lost_id']);
                        
                        
header('Location: /labirint?go=duh&lose&cristall='.$labirint[5].'&expoint='.$labirint[6].'&gold='.$labirint[7].'&etap='.$labirint[2]);
                        exit; 
                    }
            }
            
$battle['duh']['time_udar'] = microtime();
        } else {
            
$abil_zeml abilities_race_zemlya(0$abilities_zeml[2], $abilities_zeml[1], $abilities_zeml[3], $abilities_zeml[4], 0);
        }    
        
        if (
$go == 'attaka') {
            
$to = (isset($_GET['to'])) ? addslashes(htmlspecialchars($_GET['to'])) : false;
            
            
// Активация Огненной силы
            
if ($id == AND !$abil_ogon['activate']) {
                
$abil_ogon AbilitiesOgon($user['lost_abilities_ogon'], $user['lost_race'], true$user['lost_id']);
                
$image quality_item_name($user['lost_abilities_ogon']);
                
array_unshift($journal'<span class="small admin">'.ikonka_user($user['lost_race'], 'online').' '.$user['lost_login'].' активировал <span class="bold yellow1">'.$image['image'].' огненную силу</span></span>');
            }
            
            
// Активация Водяного крита
            
if ($id == AND !$abil_voda['activate']) {
                
$abil_voda AbilitiesVoda($user['lost_abilities_voda'], $user['lost_race'], true$user['lost_id']);
                
$image quality_item_name($user['lost_abilities_voda']);
                
array_unshift($journal'<span class="small admin">'.ikonka_user($user['lost_race'], 'online').' '.$user['lost_login'].' активировал <span class="bold yellow1">'.$image['image'].' водяной крит</span></span>');
            }
            
            
// Активация Ловушки ветра
            
if ($id == AND !$abil_vosd['active']) {
                
$abil_vosd AbilitiesVozdyh($user['lost_abilities_vozduh'], $user['lost_race'], true$user['lost_id']);
                
$image quality_item_name($user['lost_abilities_vozduh']);
                
array_unshift($journal'<span class="small admin">'.ikonka_user($user['lost_race'], 'online').' '.$user['lost_login'].' активировал <span class="bold yellow1">'.$image['image'].' ловушку ветра</span></span>');
                        
                
// Если шанс сработал, забираем хп
                
if ($abil_vosd['add_hp'] > 0) {
                    
$add_hp = (int)(($battle['user']['other_hp'] / 100) * $abil_vosd['add_hp']);
                    
$my_ras_hp $battle['user']['other_hp'] - $battle['user']['hp'];
                    if (
$add_hp $my_ras_hp$add_hp $my_ras_hp;
                    
$battle['duh']['hp'] = $battle['duh']['hp'] - $add_hp;
                    
$battle['user']['hp'] = $battle['user']['hp'] + $add_hp;
                    
$journal[$user['lost_id']][KeyJournalMassiv($timer)] = '<span class="lngreen">Вы забрали у <span class="bold">'.$cache_user['lost_login'].' '.$add_hp.'</span> здоровья</span>';
                    
$journal[$cache_user['lost_id']][KeyJournalMassiv($timer)] = '<span class="error1"><span class="bold">'.$user['lost_login'].'</span> забрал у Вас <span class="bold">'.$add_hp.'</span> здоровья</span>';
                    
array_unshift($journal'<span class="small admin">'.ikonka_user($user['lost_race'], 'online').' '.$user['lost_login'].' забрал у '.$battle['duh']['name'].' <span class="bold">'.$add_hp.'</span> здоровья</span>');
                }
            }
            
            
// Активация Земляной стойкости
            
if ($id == AND !$abil_zeml['activate']) {
                
$abil_zeml AbilitiesZemlya($user['lost_abilities_zemlya'], $user['lost_race'], true$user['lost_id']);
                
$image quality_item_name($user['lost_abilities_zemlya']);
                
array_unshift($journal'<span class="small admin">'.ikonka_user($user['lost_race'], 'online').' '.$user['lost_login'].' активировал <span class="bold yellow1">'.$image['image'].' земляной щит</span></span>');
            }
            
            
$user_uron GenerationUron($user['lost_params_strlen'], $battle['user']['time_udar'], $abil_ogon['add_procent'], $abil_voda['add_procent'], 0GenerationProtection($battle['duh']['pr']));
            
            
array_unshift($journal'<span class="small yellow1">'.ikonka_user($user['lost_race'], 'online').' '.$user['lost_login'].' ударил '.$battle['duh']['name'].' на <span class="bold">'.$user_uron.'</span> урон '.(($abit_voda[1]) ? 'крит' '').'</span>');
            
$battle['duh']['hp'] = $battle['duh']['hp'] - $user_uron;
            
$battle['user']['time_udar'] = microtime();
            
$my_uron $user_uron;
            
                if (
$battle['duh']['hp'] <= 0) {
                    require_once 
'./element_function/element_function_labirint.php';
                    
$chanse Element_Chance($battle['other']['etap'], 0);    // База шансов
                    
$labirint explode(':'$user['lost_labirint']);
                    
                    
$exp handler_expoint($chanse[3], $user['lost_add_user_exp'], $user['lost_add_town_exp']);
                    
$crst handler_cristalls($chanse[2], $user_blessing['nagrada']);
                
                    
$labirint[2] = $labirint[2] + 1;            // Переходим на +1 этап
                    
$labirint[5] = $labirint[5] + $crst;        // Добавляем кристаллы
                    
$labirint[6] = $labirint[6] + $exp['user'];    // Добавляем личный опыт
                    
$labirint[8] = $labirint[8] + $exp['town'];    // Добавляем городской опыт
                    
$labirint[4] = 0;                            // Забырием духа
                    
                
                
                    
if ($battle['other']['etap'] < 9) {
                        if (
>= rand(1,100)) {
                            
$labirint[7] = $labirint[7] + $chanse[4];
                            
$gold $chanse[4];
                        } else 
$gold 0;
                        
                        
$user['lost_labirint'] = implode(':'$labirint);

                        
writecache('element_users_id_'.$user['lost_id'], $user);
                        
user_list_update($user['lost_id']);
                        
                        
deletecache('element_labirint_journal'.$user['lost_id']);
                        
deletecache('element_users_battle'.$user['lost_id']);
                        
deletecache('element_labirint_duh_user'.$user['lost_id']);
                        
                        
header('Location: /labirint?go=duh&cristall='.$chanse[2].'&expoint='.$exp['user'].'&gold='.$gold.'&etap='.$labirint[2].'');
                        exit;
                    } else {
                        
$labirint[7] = $labirint[7] + $chanse[4];
                        
$labirint[0] = time() + 3600;
                        
$labirint[1] = 0;
                    
                        
$user['lost_labirint'] = implode(':'$labirint);
                        
update_money_exp($user, array('user' => $labirint[6], 'town' => $labirint[8]), $labirint[5], 0$labirint[7]);
                        
                        
$user_quests user_quests($user['lost_id']);
                        
$count_quests quests_id_count('labirint_3');
                            if (
$user_quests['labirint_3'] < $count_quests) {
                                
$user_quests['labirint_3'] = $user_quests['labirint_3'] + 1;
                                if (
$user_quests['labirint_3'] == $count_quests$user_quests['lost_new'] = $user_quests['lost_new'] + 1;
                                
writecache('element_quests_user'.$user['lost_id'], $user_quests);    
                                
quests_list_update($user['lost_id']);
                        }
                        
                        
$user_quests user_quests($user['lost_id']);
                        
$count_quests quests_id_count('labirint_all');
                            if (
$user_quests['labirint_all'] < $count_quests) {
                                
$user_quests['labirint_all'] = $user_quests['labirint_all'] + 1;
                                if (
$user_quests['labirint_all'] == $count_quests$user_quests['lost_new'] = $user_quests['lost_new'] + 1;
                                
writecache('element_quests_user'.$user['lost_id'], $user_quests);    
                                
quests_list_update($user['lost_id']);
                        }
                        
                        
deletecache('element_labirint_journal'.$user['lost_id']);
                        
deletecache('element_users_battle'.$user['lost_id']);
                        
deletecache('element_labirint_duh_user'.$user['lost_id']);
                        
                        
header('Location: /labirint?go=duh&win&cristall='.$labirint[5].'&expoint='.$labirint[6].'&gold='.$labirint[7].'&etap='.$labirint[2]);
                        exit;
                    }
                
                }
            
            
writecache('element_labirint_journal'.$user['lost_id'], $journal);    
            
writecache('element_labirint_duh_user'.$user['lost_id'], $battle);
        } else {
            
writecache('element_labirint_journal'.$user['lost_id'], $journal);    
            
writecache('element_labirint_duh_user'.$user['lost_id'], $battle);
        }
    
    
    
$my_user = array('user_race' => $user['lost_race'], 'user_hp' => $battle['user']['hp'], 
                     
'user_other_hp' => $battle['user']['other_hp'], 'user_name' => $user['lost_login'],
                     
'user_uron' => $bot_uron'user_add_hp' => $add_hp);
                
    
$no_user = array('user_race' => 0'user_hp' => $battle['duh']['hp'], 
                     
'user_other_hp' => $battle['duh']['other_hp'], 'user_name' => $battle['duh']['name'],
                     
'user_uron' => $my_uron'user_add_hp' => 0);
    
    
$title 'Лабирите : Бой';
    require_once 
'./element_include/element_head.php';
    echo 
'<body><div class="p5">';
    
    echo 
'<div class="cntr small yellow1 mb5">';
    echo 
'Этап: '.$battle['other']['etap'].', ';
    echo 
'<img src="/images/icons/clock.gif"> '.date("i:s"mktime(00, (time() - $battle['other']['time'])));
    echo 
'</div>';
    
    
EchoTableUsersBattle($my_user$no_user);
    
EchoAbiliteBattle($abil_ogon$abil_voda$abil_vosd$abil_zemlfalse'w19''35'0'/labirint/battle');
    
    if (
$count_journal 0) {
    echo 
'<div class="nfl p5 mb5 small mlra">';
        foreach (
array_slice($journal010true) as $value) {
            echo 
'<span class="white">'.$value.'<span><br/>';
        }
    echo 
'</div>';
    }
    
    require_once 
'./element_include/element_foot_user_battle_true.php';
?>
Онлайн: 1
Реклама