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

$params readcache('element_mission_user_'.$user['lost_id']);
if (!
$params) { header('Location: /mission'); exit; } // Если нет данных боя, переадрес в миссии

require_once './element_function/element_function_mission.php';
require_once 
'./element_function/element_function_battle.php';
$status_game status_game($params['user_params']['life'], $params['bot_params']['life'], $params['user_params']['avto_battle']);

    
$journal readcache('element_mission_journal'.$user['lost_id']);
    if (!
is_array($journal)) $journal = array();
    
$count_journal count($journal);

    
$avto_battle = (isset($_GET['avto_battle'])) ? true false;
    
// Бой руками!
if ($status_game == AND !$avto_battle) {
    
$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;
    
    
//abilities_race_zemla($time, $time_refresh)
    
if ($params['bot_params']['time']) {
        
$time_bot explode(' '$params['bot_params']['time']);
        
$time_fre explode(' 'microtime());
        
$time_udar_bot ceil(($time_fre[1] + $time_fre[0]) - ($time_bot[1] + $time_bot[0]));
    } else 
$time_udar_bot 5;
    
$rand_udar_s rand(3,4);
    
    
// Удары бота по мне
    
if ($time_udar_bot $rand_udar_s) {
        
$other_count_udat = (int)($time_udar_bot $rand_udar_s);
        
        
$bot_uron 0;
        for(
$i 0$i $other_count_udat$i++) {
            
            
$uron GenerationUron($params['bot_params']['strlen'], $params['bot_params']['time'], 00$abil_zeml['add_procent'], GenerationProtection($user['lost_params_protection']));
            
            
$params['user_params']['hp'] = $params['user_params']['hp'] - $uron;
            
array_unshift($journal'<span class="small red"><img src="/images/icons/arena.gif"> '.$params['bot_params']['name'].' ударил '.ikonka_user($user['lost_race'], 'online').' '.$user['lost_login'].' на <span class="bold">'.$uron.'</span> урон</span>');
            if (
count($journal) > 15) unset($journal[15]);
            
            if (
$params['user_params']['hp'] <= 0) {
                
array_unshift($journal'<span class="small red"><img src="/images/icons/arena.gif"> '.$params['bot_params']['name'].' убил '.ikonka_user($user['lost_race'], 'online').' '.$user['lost_login'].'</span>');
                
array_unshift($journal'<span class="lngreen bold">Бой закончен</span>');
                if (
count($journal) > 15) unset($journal[15]);
                    
                    
$crst handler_cristalls(1$user_blessing['nagrada']);    
                    
$params['missions']['cristalls'] = $crst;    
                    
                    
update_money_exp($user1$crst00);
                    
                
$params['user_params']['life'] = 1;    
                
writecache('element_mission_user_'.$user['lost_id'],$params);
                
writecache('element_mission_journal'.$user['lost_id'], $journal);
                
writecache('element_users_battle'.$user['lost_id'], '');
                
$status_game 2;
                break;
            }
            
            
$bot_uron $bot_uron $uron;
        }
    
$params['bot_params']['time'] = microtime();
    
writecache('element_mission_user_'.$user['lost_id'],$params);
    
writecache('element_mission_journal'.$user['lost_id'], $journal);
    } else {
        
$bot_uron 0;
        
$abil_zeml abilities_race_zemlya(0$abilities_zeml[2], $abilities_zeml[1], $abilities_zeml[3], $abilities_zeml[4], 0);
    }
if (
$status_game != 2) {
    
    
// Мой удар по боту
    
if ($go == 'attaka') {

    
// Активация Огненной силы
    
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)(($params['bot_params']['other_hp'] / 100) * $abil_vosd['add_hp']);
            
$my_ras_hp $params['user_params']['other_hp'] - $params['user_params']['hp'];
            if (
$add_hp $my_ras_hp$add_hp $my_ras_hp;
            
$params['bot_params']['hp'] = $params['bot_params']['hp'] - $add_hp;
            
$params['user_params']['hp'] = $params['user_params']['hp'] + $add_hp;
            
array_unshift($journal'<span class="small admin">'.ikonka_user($user['lost_race'], 'online').' '.$user['lost_login'].' забрал у '.$params['bot_params']['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>');
    }
    
    
// quality_item_name($quality)
    
        
$user_uron GenerationUron($user['lost_params_strlen'], $params['user_params']['time'], $abil_ogon['add_procent'], $abil_voda['add_procent'], 040);

        
$params['bot_params']['hp'] = $params['bot_params']['hp'] - $user_uron;
        
$params['user_params']['time'] = microtime();
        
array_unshift($journal'<span class="small yellow1">'.ikonka_user($user['lost_race'], 'online').' '.$user['lost_login'].' ударил '.$params['bot_params']['name'].' на <span class="bold">'.$user_uron.'</span> урон '.(($abil_voda['add_procent'] > 0) ? 'крит' '').'</span>');
        
        if (
$params['bot_params']['hp'] <= 0) {
        require_once 
'./element_function/element_function_item.php';
            
$params['bot_params']['life'] = 1;
            
array_unshift($journal'<span class="small yellow1">'.ikonka_user($user['lost_race'], 'online').' '.$user['lost_login'].' убил '.$params['bot_params']['name'].'</span>');
            
array_unshift($journal'<span class="lngreen bold">Бой закончен</span>');
            if (
count($journal) > 15) unset($journal[15]);
            
$status_game 2;
            
writecache('element_users_battle'.$user['lost_id'], '');
            
            
$shoot_item users_shoot_item($user['lost_id']);
            
$create_item create_item($user['lost_id'], $shoot_itemRandEquipMission($params['missions']['equip']), falsefalsefalsefalsefalsefalsefalsefalse);
            
$params['missions']['equipment'] = $create_item;
            
            if (
$params['missions']['end_count'] > $params['missions']['my_count']) $count_c $params['missions']['my_count'] + 1; else $count_c $params['missions']['my_count'];
            if (
$count_c $params['missions']['other_count']) $params['missions'] = $params['other_count'];
            
$params['missions']['my_count'] = $count_c;
            
$location $params['missions']['location'];
            
mysql_query("UPDATE `element_mission_user` SET `lost_location$location` = '$count_c' WHERE `lost_user` = '$user[lost_id]' LIMIT 1");
                    
            
$user_quests user_quests($user['lost_id']);
            
$count_quests quests_id_count('missions_10');
                if (
$user_quests['missions_10'] < $count_quests) {
                    
$user_quests['missions_10'] = $user_quests['missions_10'] + 1;
                    if (
$user_quests['missions_10'] == $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']);
                }
            
                
$expooint handler_expoint($params['missions']['expoint'], $user['lost_add_user_exp'], $user['lost_add_town_exp']);
                
$params['missions']['expoint'] = $expooint['user'];
                
                
update_money_exp($user$expooint$params['missions']['cristalls'], 0$params['missions']['gold']);
                
$lost_exp explode(' '$user['lost_exp']);
            
        }
        
        
writecache('element_mission_user_'.$user['lost_id'],$params);
        
writecache('element_mission_journal'.$user['lost_id'], $journal);
    } else {
        
$user_uron 0;
        
$abit_ogon abilities_race_ogon(0$abilities_ogon[2], $abilities_ogon[1], $abilities_ogon[3], $abilities_ogon[4], 0);
        
$abit_voda abilities_race_voda(0$abilities_voda[1], $abilities_voda[2], $abilities_voda[3], 0);
    }

if (
$status_game != 2) {    
$title 'Битва стихий';
require_once 
'./element_include/element_head.php';
echo 
'<body><div class="p5">';
    
    
    
$my_user = array('user_race' => $user['lost_race'], 'user_hp' => $params['user_params']['hp'], 
                     
'user_other_hp' => $params['user_params']['other_hp'], 'user_name' => $user['lost_login'],
                     
'user_uron' => $bot_uron'user_add_hp' => $add_hp);
                
    
$no_user = array('user_race' => 0'user_hp' => $params['bot_params']['hp'], 
                     
'user_other_hp' => $params['bot_params']['other_hp'], 'user_name' => $params['bot_params']['name'],
                     
'user_uron' => $user_uron'user_add_hp' => 0);    
    
    
EchoTableUsersBattle($my_user$no_user);
    
EchoAbiliteBattle($abil_ogon$abil_voda$abil_vosd$abil_zemlfalse'w19''35'0'/mission/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>';
}
echo 
'<div class="mb5 cntr small"><a class="button w50" href="/mission/battle?avto_battle">Автобой</a><br/><a class="button mt5 w50" href="/">Сбежать с боя</a></div>';
require_once 
'./element_include/element_foot_user_battle_true.php';
exit;
}
}
}

// Автобой!
if ($status_game == OR $status_game == AND $avto_battle) {
    require_once 
'./element_function/element_function_battle.php'
    
$close 0;
    if (!
$avto_battle$params['user_params']['hp'] = ceil($params['user_params']['hp'] * 0.75);
    
$lost_protection ceil($user['lost_params_protection'] * 0.75);
    
    do {
        
$bot_uron GenerationUron($params['bot_params']['strlen'], false1000GenerationProtection($user['lost_params_protection']));    
        
$user_uron GenerationUron($user['lost_params_strlen'], false0000);    
            
        
//$user_protection = Protection(50, element_settings_game('lost_max_protection'));
        //$user_uron = GenerateUron($user['lost_params_strlen'],$params['user_params']['time'],$user_protection);
        //$user_uron = ceil($user_uron * 0.75);

        
$params['user_params']['hp'] = $params['user_params']['hp'] - $bot_uron;
        
array_unshift($journal'<span class="small red"><img src="/images/icons/arena.gif"> '.$params['bot_params']['name'].' ударил '.ikonka_user($user['lost_race'], 'online').' '.$user['lost_login'].' на <span class="bold">'.$bot_uron.'</span> урон</span>');
        
        
$params['bot_params']['hp'] = $params['bot_params']['hp'] - $user_uron;    
        
array_unshift($journal'<span class="small yellow1">'.ikonka_user($user['lost_race'], 'online').' '.$user['lost_login'].' ударил '.$params['bot_params']['name'].' на <span class="bold">'.$user_uron.'</span> урон</span>');
        
        if (
$params['user_params']['hp'] <= 0) {
            
$params['user_params']['life'] = 1;    
            
array_unshift($journal'<span class="small red"><img src="/images/icons/arena.gif"> '.$params['bot_params']['name'].' убил '.ikonka_user($user['lost_race'], 'online').' '.$user['lost_login'].'</span>');
            
array_unshift($journal'<span class="lngreen bold">Бой закончен</span>');
            
$crst handler_cristalls(1$user_blessing['nagrada']);    
            
$params['missions']['cristalls'] = $crst;        
                
            
update_money_exp($user1$crst00);
                    
            
writecache('element_mission_user_'.$user['lost_id'],$params);
            
writecache('element_mission_journal'.$user['lost_id'], $journal);
            
writecache('element_users_battle'.$user['lost_id'], '');
            
$status_game 2;
            
$close 1;
            break;
        }
        
        if (
$params['bot_params']['hp'] <= 0) {
        require_once 
'./element_function/element_function_item.php';
            
$params['bot_params']['life'] = 1;
            
array_unshift($journal'<span class="small yellow1">'.ikonka_user($user['lost_race'], 'online').' '.$user['lost_login'].' убил '.$params['bot_params']['name'].'</span>');
            
array_unshift($journal'<span class="lngreen bold">Бой закончен</span>');
            if (
count($journal) > 15) unset($journal[15]);
            
$status_game 2;
            
            
$shoot_item users_shoot_item($user['lost_id']);
            
$create_item create_item($user['lost_id'], $shoot_itemchanse_mission(), falsefalsefalsefalsefalsefalsefalsefalse);
            
$params['missions']['equipment'] = $create_item;
            
            if (
$params['missions']['end_count'] > $params['missions']['my_count']) $count_c $params['missions']['my_count'] + 1; else $count_c $params['missions']['my_count'];
            if (
$count_c $params['missions']['other_count']) $params['missions'] = $params['other_count'];
            
$params['missions']['my_count'] = $count_c;
            
$location $params['missions']['location'];
            
mysql_query("UPDATE `element_mission_user` SET `lost_location$location` = '$count_c' WHERE `lost_user` = '$user[lost_id]' LIMIT 1");
                    
            
$expooint handler_expoint($params['missions']['expoint'], $user['lost_add_user_exp'], $user['lost_add_town_exp']);
            
$params['missions']['expoint'] = $expooint['user'];        
                    
            
$user_quests user_quests($user['lost_id']);
            
$count_quests quests_id_count('missions_10');
                if (
$user_quests['missions_10'] < $count_quests) {
                    
$user_quests['missions_10'] = $user_quests['missions_10'] + 1;
                    if (
$user_quests['missions_10'] == $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']);
                }
            
            
            
update_money_exp($user$expooint$params['missions']['cristalls'], 0$params['missions']['gold']);

                
writecache('element_users_battle'.$user['lost_id'], '');
                
writecache('element_mission_user_'.$user['lost_id'],$params);
                
writecache('element_mission_journal'.$user['lost_id'], $journal);
                
                
$lost_exp explode(' '$user['lost_exp']);
                
$status_game 2;
                
$close 1;
                break;
        }
        
//echo '<span class="lngreen">'.$params['user_params']['hp'].'/ '.$user_uron.'</span><br/>';
        //echo '<span class="ccc">'.$params['bot_params']['hp'].'/ '.$bot_uron.'</span><br/>';
    
} while($close == 0);

}

// Результат боя!
if ($status_game == 2) {
if (
$params['bot_params']['life'] == 0$pobeda 0; else $pobeda 1;
$title 'Результат боя';
require_once 
'./element_include/element_head.php';
require_once 
'./element_include/element_header_user_true.php';
echo 
'<div class="nfl p5 mb5 cntr small mlra">';

if (
$pobeda == 1) {
echo 
'<div class="medium bold"><span class="lngreen">Вы выиграли</span></div>';
echo 
'<div class="cntr p5 small yellow1">Награда: ';
echo (
$params['missions']['gold'] > 0) ? '<img src="/images/icons/gold.png">'.$params['missions']['gold'].' золота, ' '';
echo 
'<img src="/images/icons/cristall.png">'.$params['missions']['cristalls'].' кристаллов, ';
echo 
'<img width="13" height="12" src="/images/icons/experience.png">'.$params['missions']['expoint'].' опыта';
echo 
'</div>';
    
    
// Найденная вещь
    
if ($params['missions']['equipment'] > 0) {
        require_once 
'./element_function/element_function_item.php';
        
$item_id cache_item($params['missions']['equipment']);
        
$genaration_params item_generation_params($item_id['lost_strlen'], $item_id['lost_heatpoints'], $item_id['lost_protection'], $item_id['lost_comparison']);
        
$quality quality_item_name($item_id['lost_quality']);
            
        echo 
'<div class="mlra"><table class="mlra"><td><img width="50" height="50" src="'.$item_id['lost_avatar'].'"></td>';
        echo 
'<td class="small left" valign="top">';
        echo 
'<span class="ml5 small yellow1">'.$quality['image'].' <a href="/item?id='.$item_id['lost_id'].'">'.$item_id['lost_name'].'</a></span><br/>';
        echo 
'<span class="ml5 small lngreen">'.name_item_mesto($item_id['lost_mesto']).'</span>';
        echo 
'</td></table></div>';
    }


}

if (
$pobeda == 0) {
echo 
'<div class="medium bold"><span class="red">Вы проиграли</span></div>';
echo 
'<div class="cntr p5 small yellow1">Награда: ';
echo 
'<img src="/images/icons/cristall.png">'.$params['missions']['cristalls'].' кристалл, ';
echo 
'<img width="13" height="12" src="/images/icons/experience.png">1 опыта';
echo 
'</div>';
}

echo 
'<div><a class="button w50" href="/mission/location?id='.$params['missions']['location'].'&mission='.$params['missions']['mission'].'&go=start&z='.$params['missions']['end_count'].'">'.(($params['missions']['my_count'] < $params['missions']['end_count']) ? 'Ещё раз' 'Повторить').'</a>';
echo 
'<br/><a class="button mt5 w50" href="/mission/location?id='.$params['missions']['location'].'">К списку миссий</a></div>';


echo 
'</div>';

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_true.php';
}


?>
Онлайн: 1
Реклама