Вход Регистрация
Файл: index.php
Строк: 504
<?php
/* Обновление игры под PHP 8.4 / PDO и усиление безопасности: by Метриум (Стэлп) */
$_SESSION['arena'] = 0;
include 
'./system/common.php';  
include 
'./system/functions.php';
include 
'./system/user.php';
require_once 
'./system/starter.php';
       
$title 'Возрождение титанов';
include 
'./system/h.php';  

///NewsП
if(isset($_SESSION['news'])){
$carlll _string($_SESSION['news']);
echo 
$carlll;

unset(
$_SESSION['news']);
}

if(
is_array($user) && !empty($user['id'])) {


if(
$mail 0) {
?>

<div class="menuList">
<li class="center"><a href="/mail/"><img src="/images/icon/mail.png" alt=""><span class="green">Новая почта</span> +<?=$mail;?></a></li>
</div>
<div class="dot-line"></div>

<?php

}    
if(
$user['save'] == 1){
if(!empty(
$_SESSION['just_saved'])){ unset($_SESSION['just_saved']); $offer=game_bonus_offer_ensure((int)$user['id']); echo '<div class="save-success-ref center"><b>Персонаж успешно сохранен!</b><br>Ник: '.htmlspecialchars((string)$user['login'],ENT_QUOTES,'UTF-8').'<br>Награда: <img src="/images/icon/gold.png" alt=""> 100 золота<br><a href="/bonus-kit/">Доступна акция Бонусный комплект</a></div><div class="mini-line"></div>'; }

/* Приветствие первого входа за день — by Метриум (Стэлп) */
$dailyWelcomeCookie 'bt_daily_welcome';
$dailyWelcomeValue = (int)$user['id'] . ':' date('Y-m-d');
$showDailyWelcome = !isset($_COOKIE[$dailyWelcomeCookie]) || !hash_equals($dailyWelcomeValue, (string)$_COOKIE[$dailyWelcomeCookie]);
if (
$showDailyWelcome) {
    
$expires strtotime('tomorrow 00:10:00');
    
setcookie($dailyWelcomeCookie$dailyWelcomeValue, [
        
'expires' => $expires,
        
'path' => '/',
        
'secure' => (!empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] !== 'off'),
        
'httponly' => true,
        
'samesite' => 'Lax',
    ]);
    
$dailyPromos game_active_promos(3);
    
?>
    <div class="daily-welcome-ref">
      <div class="daily-welcome-ref__text">Добро пожаловать в мир титанов!<br>Приятной игры! <span aria-hidden="true">🙂</span></div>
      <?php foreach ($dailyPromos as $promo): ?>
        <a class="daily-welcome-ref__promo" href="<?=htmlspecialchars($promo['url'], ENT_QUOTES'UTF-8')?>"><?=htmlspecialchars($promo['name'] . ($promo['discount'] > ' '.$promo['discount'].'%' ''), ENT_QUOTES'UTF-8')?></a>
      <?php endforeach; ?>
      <div class="daily-welcome-ref__image"><img src="/images/town/hd/main.jpg" alt="Мир титанов"></div>
    </div>
    <div class="mini-line"></div>
    <?php
}
$activePromos=game_active_promos(8);
if(
$activePromos){ ?>
<div class="block_light center"><b class="yellow">Акции и события</b></div>
<?php foreach($activePromos as $promo): ?>
<div class="menuList"><li><a href="<?=security_html($promo['url'])?>"><img src="/images/icon/arrow.png" alt=""> <?=security_html($promo['name'])?><?php if((int)$promo['discount']>0): ?> <span class="green">-<?=$promo['discount']?>%</span><?php endif; ?> <span class="grey">(<span data-live-until="<?=$promo['until']?>" data-live-format="short"><?=_time(max(0,(int)$promo['until']-time()))?></span>)</span></a></li></div>
<?php endforeach; ?><div class="mini-line"></div>
<?php }
if(
$user['level']>=1){

$latestNews db_fetch_one("SELECT `id`,`name` FROM `forum_topic` WHERE `sub`=1 ORDER BY `id` DESC LIMIT 1");
if(
$latestNews && ($_SERVER['REQUEST_METHOD']??'GET')==='POST' && in_array((string)($_POST['home_news_action']??''),['hide','open'],true)){
    
security_require_csrf();
    
db_execute('UPDATE `users` SET `nread`=:n WHERE `id`=:u',['n'=>(int)$latestNews['id'],'u'=>(int)$user['id']]);
    if((string)
$_POST['home_news_action']==='open'){ header('Location: /forum/topic/'.(int)$latestNews['id'].'/'); exit; }
    
header('Location: /'); exit;
}
if(
$latestNews && (int)$latestNews['id']>(int)($user['nread']??0)){
?>
<div class="block_light center">
<span class="dgreen">Новая тема в новостях!</span>
<div class="separ"></div>
<img src="/images/icon/forum_2.png" alt=""> <b><?=security_html((string)$latestNews['name'])?></b> <img src="/images/icon/forum_2.png" alt="">
<div class="mb10"></div>
<form method="post" action="/" class="inline-form"><?=security_csrf_field()?><input type="hidden" name="home_news_action" value="open"><button class="btn" type="submit">Посмотреть новость</button></form><br>
<form method="post" action="/" class="inline-form"><?=security_csrf_field()?><input type="hidden" name="home_news_action" value="hide"><button class="link-button" type="submit">Скрыть</button></form>
</div>
<div class="mini-line"></div>
<?php
}
  
// Долина бессмертных v50.3: единый автоматизированный таймер события.
  
$undying function_exists('game_v51_current_undying') ? game_v51_current_undying() : null;
  if (
$undying && $undying['state']==='waiting' && (int)$undying['start_at'] > time()) {
      
$undyingTimestamp=(int)$undying['start_at'];
      
$undyingTime=$undyingTimestamp-time();
      if(
$undyingTime<=1800){
          echo 
'<div class="block_zero center" id="undying-home-card">';
          echo 
'<img src="/images/logo/enter.gif" alt="" style="width:100%">';
          echo 
'Долина бессмертных через: <b>'._time(max(0,$undyingTimestamp-time())).'</b><br>';
          echo 
'<a class="btn" href="/undying/"><span class="end"><span class="label">Перейти</span></span></a>';
          echo 
'</div>';
      }
  }
?>

<div class="mini-line"></div>

<div class="menuList">


<?php
 
if($user['access'] != 0) echo '<li><center><a href="/adm/"><img src="/images/icon/arena.png" alt="">Админка </a></center></a></li>';
  
?>


<?php

echo'</td> 
<tr> 
</tr> 
</table>'

$boss_user db_query("SELECT * FROM `boss_user` WHERE `id_user` = '".$user['id']."'"); 
$boss_user db_fetch_array($boss_user) ?: ['last' => 0'id_boss' => 0];
echo 
'<li><a href="/dungeon/">
<table  width="85%" cellpadding="2" cellspacing="1">
<img src="images/dungeon.png" class="example_beauty" style="width:5%;border-radius:0px">
<font color="#CCCCCC">Подземелье</font></font> '

if(
$boss_user['last'] > time())echo'<font color="#CCCCCC">( '._time($boss_user['last']-time()).')</font>'
if(
$boss_user['last'] < time())echo'   <font color="lime"> (Открыто)</font>'
echo
'</td> 
<tr> 
</tr> 
</table> 
</a></li>'
;
?>
<div class="mini-line">
<?php
echo'</td> 
<tr> 
</tr> 
</table>'

$date time(); 

$be db_fetch_array(db_query("SELECT * FROM `users` WHERE `id` = '".(int)$user['id']."' LIMIT 1")) ?: $user
$k_point=intval((time()-$be['hunt_last_update'])/(60*60*1)); 
if(
$k_point>=1){ 
$hunt_battles=$user['hunt_battles']+5*$k_point
if(
$user['hunt_battles']>=15){$hunt_battles=15;} 
db_query("UPDATE `users` SET `hunt_battles` = '".$hunt_battles."', `hunt_last_update` = '".$date."' WHERE `id` = '".(int)$user['id']."' LIMIT 1"); 


echo 
'<a href="/hunting" class="wrapper _shop"><table  width="85%" cellpadding="2" cellspacing="1">
<img src="images/hunt.png" class="example_beauty" style="width:5%;border-radius:0px">
<font color="#CCCCCC">Охота</font>'
;
if(
$user['hunt_battles'] > 0){
echo
'<font color="lime"> Доступно боев: '.$user['hunt_battles'].'</font>';
}
if(
$user['hunt_battles'] == 0){
echo 
'<font color="#CCCCCC"> Все бои истрачены</font>';} 
echo
'</td> 
<tr> 
</tr> 
</table> 
</a></li>'
;
?>
<div class="mini-line">

<?php 
if(is_array($clan) && (int)($clan['time_boss'] ?? 0) >= time()){ 
?> 
<center></cnter><li><a href="/portal"><img class='icon' src='/images/icon/icon.png'>Ваш клан открыл портал</a></li></center>
<div class="mini-line">
<?php ?>

<li><a href="/arena?attack=true"><img src="/images/icon/arena.png" alt="">Арена <?=($user['mp'] > 49 '<font color='#30c030'>(+)</font>':'')?></a></li>
<?php
if($user['level'] > 1){
?>
<li><a href="/duel/"><img src="/images/icon/league.png" alt="">Дуэли <?=($user['duel_fights'] > '<font color='#30c030'>(+)</font>':'')?></a></li>

<?php
}
$gameBadges=$GLOBALS['game_badges'] ?? (function_exists('game_activity_badges')?game_activity_badges($user,$clan??null,$clan_memb??null):[]);
?>
<li><a href="/cave/"><img src="/images/icon/cave.png" alt="">Пещера <?=game_badge_plus((int)($gameBadges['cave']??0))?></a></li>
<li><a href='/sage/'><img src="/images/icon/quest.png" alt=""> Хижина мудреца <?=game_badge_plus((int)($gameBadges['quests']??0))?></a></li>
<?php $undying function_exists('game_v51_current_undying') ? game_v51_current_undying() : null$altars function_exists('game_v51_current_altars') ? game_v51_current_altars() : null?>
<li><a href="/undying/"><img src="/images/icon/bar.png" alt="">Долина бессмертных <?=game_badge_plus((int)($gameBadges['undying']??0))?> <?php if($undying):?><span class="grey">(<?=htmlspecialchars($undying['state']==='running'?'идёт бой':_time(max(0,(int)$undying['start_at']-time())),ENT_QUOTES,'UTF-8')?>)</span><?php endif;?></a></li>
<?php if(!empty($clan_memb)):?><li><a href="/altars/"><img src="/images/icon/clanwar.png" alt="">Древние алтари <?=game_badge_plus((int)($gameBadges['altars']??0))?> <?php if($altars):?><span class="grey">(<?=htmlspecialchars($altars['state']==='running'?'идёт бой':_time(max(0,(int)$altars['start_at']-time())),ENT_QUOTES,'UTF-8')?>)</span><?php endif;?></a></li><?php endif;?>
<li><a href="/fights/"><img src="/images/icon/arena.png" alt="">Сражения</a></li>
<li><a href="/coliseum/"><img src="/images/icon/coliseum.png" alt="">Колизей</a></li>
<?php 
// by Метриум (Стэлп)
$camp=db_fetch_assoc(db_query("SELECT * FROM `campaign` WHERE `id_user`='".$user['id']."' LIMIT 1"));
if(
$camp && (int)($camp['limit'] ?? 0)<=time() AND (string)($camp['status'] ?? '')==='4'){
db_query("UPDATE `campaign` SET `status`='0', `udar`='9', `kol`='3' WHERE `id_user`='".$user['id']."' LIMIT 1");
}
if(
$camp){
if(
$camp['kol'] > 0){
$metka='<span class="green"><font color='#30c030'>(+)</font></span>';
}else{
$metka='';
}
}else{
$metka=FALSE;
}
?>
<li><a href="/campaign/"><img src="/images/icon/farm.png" alt="">Поход <?=$metka?></a></li>
</div>

<div class="mini-line"></div>

<div class="menuList">
<li><a class="dgreen" href="/payment/"><img src="/images/icon/gold.png" alt="">Получить золото <span class="green"><font color='#30c030'><img src="/images/job/new.gif" alt=""></font></span></a></li>
<li><a class="dgreen" href="/exchange"><img src="/images/icon/gold.png" alt="">Обменник <span class="green"><font color='#30c030'></font></span></a></li>
<li><a href="/shop/"><img src="/images/icon/equip.png" alt="">Магазин снаряжения</a></li>
<li><a href="/smith/"><img src="/images/icon/smith.png" alt="">Кузница<br>
<span class="white small">Руны, заточка, бонус</span></a></li>
<li><a href="/lab/"><img src="/images/icon/lab.png" alt="">Лаборатория<br>
<span class="white small">Усиления, эликсиры, камень и трава</span></a></li>
<li><a href="/rinok/"><img src="/images/icon/equip.png" alt="">Центр города</a></li>
<li><a href="/rating/"><img src="/images/icon/equip.png" alt="">Рейтинг</a></li>
</div>

<?php
}
}
if(
$user['save'] == 0){
  
/* Старый дубль обучения на главной удалён. Единый наставник выводится через system/tutorial.php. by Метриум (Стэлп) */
}else{
?>
<?php
if($user['level'] < 2){
?>
<?php
if($user['level'] > 1){
?>
<div class='block_zero center'><img src='/images/clantournament.jpg' width='100%' alt=''/><div class='mb5'></div>Побеждай в Дуэлях!</div><div class='mini-line'></div><div class='menuList'><li><a class='grey'><img src='/images/icon/arena.png' alt=''/>Арена</a></li><li><a href='/duel/'><img src='/images/icon/league.png' alt=''/>Дуэли<span class='green'> (+)</span></a></li><li><a class='grey'><img src='/images/icon/cave.png' alt=''/>Пещера</a></li><li><a class='grey'><img src='/images/icon/quest.png' alt=''/>Хижина мудреца</a></li><li><a class='grey'><img src='/images/icon/arena.png' alt=''/>Сражения</a></li><li><a class='grey'><img src='/images/icon/farm.png' alt=''/>Поход</a></li></div><div class='mini-line'></div><div class='menuList'><li><a class='grey'><img src='/images/icon/gold.png' alt=''/>Получить золото</a></li><li><a class='grey'><img src='/images/icon/equip.png' alt=''/>Магазин снаряжения</a></li><li><a class='grey'><img src='/images/icon/smith.png' alt=''/>Кузница</a></li><li><a class='grey'><img src='/images/icon/lab.png' alt=''/>Лаборатория</a></li><li><a href="/clanr"><a class='grey'><img src='/images/icon/lab.png' alt=''/>Рейтинг Арены Клана</a></li></div>
<?php
}
?>
<?php
}
}
?>
<?php
if(isSet($_GET['exit'])) {
security_auth_logout();
header('location: /');
}
}else{

$login _string($_POST['login'] ?? '');
$login strToLower($login);
$password _string($_POST['password'] ?? '');

if(
$login && $password) { 
$user db_fetch_one('SELECT * FROM `users` WHERE LOWER(`login`) = :login LIMIT 1', ['login'=>$login]);
if(
$user && security_password_verify($password, (string)$user['password'])) {
    if (!
str_starts_with((string)$user['password'], '$2') && !str_starts_with((string)$user['password'], '$argon2')) {
        
db_execute('UPDATE `users` SET `password` = :p WHERE `id` = :id', ['p'=>security_password_hash($password), 'id'=>$user['id']]);
    }
    
security_auth_login((int)$user['id']); 
 
header('location: /'); 
$_SESSION['news'] = ' '

}



$ref _string(_num($_GET['ref'] ?? 0));
starter_set_ref((int)$ref);
?> 

<div class="center"><br><img src='/images/clantournament.jpg' width='100%' alt=''/></div>
<div class="block_zero center">
<h1>Сражайся вместе с нами</h1>
<span class="medium">
Впервые на мобильниках. Игра, о которой ходят легенды
<br>
Теперь к легенде можешь прикоснуться и ты!
</span>
<div class="mb10"></div>
<h1 class="yellow">В игре уже <?=n_f(db_result(db_query('SELECT COUNT(*) FROM `users`'),0))?> игроков!</h1>










<?php

$extra_unic 
security_flow_token('start');


?>

</div>
<div class="mini-line" style="margin-top:5px;"></div>
<div class="block_zero center" style="padding-top:15px;"><div class="bigBtn"><a class="btn" href="/file?unic_code=<?=htmlspecialchars($extra_unic);?>&ref=<?=htmlspecialchars((string)$ref,ENT_QUOTES,'UTF-8')?>"><span class="end"><span class="label"><span class="green">Начать свой путь</span></span></span></a></div></div>
<div class="separ"></div>













<?php
if(isset($_GET['sign_in'])){

?>
<div class="block_zero center" style="padding-bottom:8px;">
<form action="/" method="post">
<div style="margin-bottom:10px;">Имя персонажа:<br>
<input class="text medium-text" name="login" value="" type="text">
<br>Пароль:<br>
<input class="text medium-text" name="password" type="password">
<br>
<span class="btn"><span class="end"><input class="label" value="Войти" type="submit"></span></span>
</div>
<td valign="center" width="50%"><a href="/pass"style="text-decoration:none"><div class="input_submit" style="border-radius:8px;margin:2px">Забыли пароль?</span></span></a>
</form>
</div>

<?php
}else{
?>
<div class="block_zero center" style="padding:12px;"><a class="btn" href="/?sign_in"><span class="end"><span class="label">Войти</span></span></a></div>
<?php
}
?>

<div class="mini-line"></div>
<div class="block_zero">
<div class="center"><img src="/images/icon/2hit.png" alt=""> <span class="bold">Об игре</span> <img src="/images/icon/2hit.png" alt=""></div>
<ul>
«Битва за трон» — тёмная королевская RPG для мобильных устройств и компьютеров
<br>
Сражения, приключения, общение, любовь - всё это, неотъемлемая часть нашего мира
</ul>
</div>

<?php
}  
include 
'./system/f.php';
?>
Онлайн: 2
Реклама