Файл: war.php
Строк: 163
<?php
require_once ('system/func.php');
auth(); // Закроем от гостей
if($_GET['id']){
$id = num($_GET['id']);
# Находим башню в базе #
$batle = mysql_query("SELECT * FROM `bashna` WHERE `id` = '$id' ORDER BY `id` LIMIT 1");
$batle = mysql_fetch_array($batle);
if(!$batle){
header('Location: /war/');
exit();
}
$myLog = mysql_query("SELECT * FROM `bashna_log` WHERE `id_user` = '$myID' AND `tipe` = 'user' ORDER BY `id` DESC LIMIT 1");
$myLog = mysql_fetch_array($myLog);
$quest_1 = mysql_fetch_assoc(mysql_query("SELECT * FROM `quest` WHERE `id` = '3'"));
$q_1 = mysql_fetch_assoc(mysql_query("SELECT * FROM `quest_user` WHERE `id_quest` = '$quest_1[id]' AND `id_user` = '$myID'"));
$quest_2 = mysql_fetch_assoc(mysql_query("SELECT * FROM `quest` WHERE `id` = '8'"));
$q_2 = mysql_fetch_assoc(mysql_query("SELECT * FROM `quest_user` WHERE `id_quest` = '$quest_2[id]' AND `id_user` = '$myID'"));
if($batle['health'] > $batle['max_health'])$batle['health'] = $batle['max_health'];
if($batle['health'] < 0)$batle['health'] = 0;
# Ремонт #
if(isset($_GET['remont']) and $user['side'] == $batle['side']){
if($batle['health'] == $batle['max_health']){
$_SESSION['msg'] = "Локация ещё в порядке";
header('Location: ?');
exit();
}
if($user['kamen'] < 1){
$_SESSION['msg'] = "У вас не хватает ".ico('icons','kamen.png')." ".(1-$user['kamen'])." камня";
header("Location: ?");
exit();
}
if($user['trava'] < 1){
$_SESSION['msg'] = "У вас не хватает ".ico('icons','trava.png')." ".(1-$user['trava'])." травы";
header("Location: ?");
exit();
}
$rand = rand(1,2);
mysql_query("update `bashna` set `health` = '".($batle['health']+$rand*ceil($user['max_health']*10/100))."' where (`id` = '".$batle['id']."')");
mysql_query("update `users` set `kamen` = '".($user['kamen']-1)."', `trava` = '".($user['trava']-1)."' where (`id` = '".$myID."')");
mysql_query("INSERT INTO `bashna_log` SET `id_user` = '$myID', `tipe` = 'remont', `uron` = '".$rand*ceil($user['max_health']*10/100)."', `id_bashna` = '$batle[id]'");
if($q_2['last'] < time())mysql_query("update `quest_user` set `koll` = `koll`+'".($rand*ceil($user['max_health']*10/100))."' where (`id` = '".$q_2['id']."')");
$_SESSION['msg'] = 'Ремонт прошёл успешно';
header("Location: ?");
exit();
}
# Атака #
if(isset($_GET['attack']) and $user['side'] != $batle['side'] and $batle['last'] < time()){
if(isset($myLog) and $myLog['time'] > time()){
header('Location: ?');
exit();
}
$_hp = ceil($user['max_health']*10/100);
if($user['health'] < $_hp){
$_SESSION['msg'] = "Для нападения необходимо минимум ".ico('icons','health.png')." 10% жизни!<br><a href='/rinok?koldun&url=/fights/$batle[id]/?$random' class='btn2' data-ajax>Восстановить ".ico('icons','gold.png')." 15</a>";
header('Location: ?');
exit();
}
if(mt_rand(0,100) < $user['krit']){
$krit = true;
}
if($krit)$_str *= 2;
# Статы башни #
$batle_str = ceil($user['str']*75/100);
$batle_def = ceil($user['def']*70/100);
# Урон #
$_str_opp = rand(round($batle_str/6), round($batle_str/4));
$_def_opp = rand(round($batle_def/12), round($batle_def/7));
$_str_opp = $_str_opp - $_def;
if($_str_opp < 0)$_str_opp = 0;
$_str = $_str - $_def_opp;
if($_str < 0)$_str = 0;
if($q_1['last'] < time())mysql_query("update `quest_user` set `koll` = `koll`+'$_str' where (`id` = '".$q_1['id']."')");
mysql_query("INSERT INTO `bashna_log` SET `id_user` = '$myID', `tipe` = 'bashna', `uron` = '".$_str_opp."', `id_bashna` = '$batle[id]'");
mysql_query("INSERT INTO `bashna_log` SET `id_user` = '$myID', `tipe` = 'user', `uron` = '".$_str."', `krit` = '".($krit == true ? 1 : 0)."', `time` = '".(time()+15)."', `id_bashna` = '$batle[id]'");
mysql_query("update `bashna` set `health` = '".($batle['health']-$_str)."' where (`id` = '".$batle['id']."')");
if($_str >= $batle['health']){
mysql_query("update `bashna` set `side` = '".$user['side']."', `health` = '".$batle['max_health']."', `last` = '".(time()+60*30)."' where (`id` = '".$batle['id']."')");
mysql_query("update `users` set `gold` = '".($user['gold']+$batle['gold'])."' where (`id` = '".$myID."')");
mysql_query("DELETE FROM `bashna_log` WHERE `id_bashna` = '$batle[id]'");
mysql_query("INSERT INTO `bashna_log` SET `id_user` = '$myID', `tipe` = 'zahvat', `id_bashna` = '$batle[id]'");
$_SESSION['msg'] = "<font color='green'><b>Вы захватили $title</b></font>";
}
$exp = exp_koll(ceil($_str*50/100));
if($effect_2['on'] == 1)$exp = $exp+ceil($exp*25/100);
mysql_query("update `users` set `health` = '".($user['health']-$_str_opp)."', `exp` = '".($user['exp']+$exp)."' where (`id` = '".$myID."')");
if($user[id_clan] > 0){
mysql_query("UPDATE `users` SET `clan_exp` = '".($user['clan_exp']+clan_exp_koll($exp))."', `clan_exp_24` = '".($user['clan_exp_24']+clan_exp_koll($exp))."' WHERE `id` = '".$myID."' LIMIT 1");
mysql_query("UPDATE `clans` SET `exp` = `exp` + '".clan_exp_koll($exp)."' WHERE `id` = '".$user['id_clan']."' LIMIT 1");
}
$_SESSION['itog'] = "Добыто ".ico('icons','exp.png')." $exp опыта";
header("Location: ?");
exit();
}
# Страничка башни #
$title = $batle['name'];
require_once ('system/header.php');
echo "<div class='block'>";
$progress = round($batle['health']/$batle['max_health']*100,1);
if($progress > 100)$progress = 100;
echo "<span style='float:right'>".ico('icons','health.png')." ".$progress."%</span>";
echo "".ico('icons',$batle['side'].'.png')." $batle[name]";
echo "<br>";
if(isset($_SESSION['itog'])){
echo "<div class='center'><font color='lime'>$_SESSION[itog]</font></div>";
unset($_SESSION['itog']);
}
echo "<div class='stat_bar'><div class='progress' style='width: ".$progress."%;'></div></div>";
if($user['side'] != $batle['side']){
echo '<div class="center">';
if($batle['last'] < time()){
echo "<a href='?attack' class='btn2'>Атаковать ";
if($myLog['time'] > time())echo "[<span id='time_".($myLog['time']-time())."000'>".tl($myLog['time']-time())."</span>]";
echo "</a>";
}else{
echo '<span class="grey">Локацию можно атаковать через: <span id="time_'.($batle['last']-time()).'000">'.tl($batle['last']-time()).'</span></span><br><a href="?'.$random.'" class="btn2">Обновить</a>';
}
echo '</div>';
}else{
echo "<center><a href='?remont' class= ".$user[oformlenie]." data-ajax>Ремонтировать за ".ico('icons','kamen.png')." 1 ".ico('icons','trava.png')." 1</center></a>";
}
echo "</div>";
echo "<div class='block'>";
require_once ('bashni_log.php');
echo "</div>";
echo "<a href='/war/'class= ".$user[oformlenie]." data-ajax >".ico('icons','arrow.png')." Вернуться назад</a>";
require_once ('system/footer.php');
}else{
$title = 'Битва за власть';
require_once ('system/header.php');
$q = mysql_query("SELECT * FROM `bashna` ORDER BY `id` ASC");
$koll = mysql_num_rows(mysql_query("SELECT * FROM `bashna`"));
$good = mysql_num_rows(mysql_query("SELECT * FROM `bashna` WHERE `side` = 'good'"));
$evil = mysql_num_rows(mysql_query("SELECT * FROM `bashna` WHERE `side` = 'evil'"));
if($user['side'] == 'good'){
$my = $good;
}else{
$my = $evil;
}
$domination = round($my/$koll*100);
if($evil/$koll < $good/$koll){
$domin = "$domination% лидирует ".ico('icons','good.png')."Добро";
}elseif($good/$koll < $evil/$koll){
$domin = "$domination% лидирует ".ico('icons','evil.png')."Зло";
}else{
$domin = "50% Ничья";
}
echo "<div class='block2'>";
echo '<div class="block center"><img src="/images/basnia.png" style="border-radius:8px;width:100%"></div>';
echo "<li class='original'><p class='center'>Баланс сил: $domin</p></li>";
while($post = mysql_fetch_assoc($q)) {
if($post['side'] == 'good')$side = 'good.png';
else $side = 'evil.png';
echo "<li><a href='/war/$post[id]/'>".ico('icons',$side)."$post[name] ";
if($post['health'] > $post['max_health'])$post['health'] = $post['max_health'];
if($post['health'] < 0)$post['health'] = 0;
echo "<br><font color='white'>".ico('icons','health.png')."$post[health]/$post[max_health]</font>";
echo "<br>Сокровище ".ico('icons','gold.png')."<span class='money'>$post[gold] золота</span>";
echo "</a></li>";
}
echo "</div>";
require_once ('system/footer.php');
}
?>