Файл: core/sys.php
Строк: 184
<?php
include 'sql.php';
include 'func_user.php';
#error_repoting(0);
function head($title){
include './core/head.php';
/* Записываем где пользователь */
if($user['id']>0){
mysql_query("UPDATE `users` SET `where`='".$title."' WHERE `id`='".$user['id']."'");
}
}
session_start();
/* Настройки системы */
$q = mysql_query("SELECT * FROM `set`");
while($arr=mysql_fetch_assoc($q)) $set[$arr['id']]=$arr['value'];
/* Проверяем бан, если да дропаем куки*/
if($user['ban']==1)
{
head('Бан');
echo '<div id="error">Ваш персонаж был заблокирован!<br>
Причина: <b>'.$user['ban_why'].'</b>
</div>';
include 'foot.php';
exit;
}
/* Функция отфильтровки чисел */
function int($int)
{
    return abs(intval($int));
}
/* Функция защиты от нежелательных действий */
function protect($text)
{
    $text=str_replace('%','-%-',$text);
    return trim(mysql_real_escape_string(htmlspecialchars($text, ENT_QUOTES, 'utf-8')));
}
/* Проверка GET данных */
foreach ($_GET as $check_url)
{
    if (is_array($check_url) and !preg_match('#^(?:[a-z0-9_-/]+|.+(?!/))*$#i', $check_url))
    {
        session_start();
        $_SESSION['note'] = 'ERROR 403. Недопустимый запрос!';
        header ("Location: ../index.php");
        exit;
    }
}
unset($check_url);
/* Время */
function clock($time)
{
global $user;
$timep= date("j M Y год H:i:s", $time);
$time_p[0]=date("j n Y", $time);
$time_p[1]=date("H:i:s", $time);
if ($time_p[0]==date("j n Y", time()))$timep='Сегодня  '.$time_p['1'];
if ($time_p[0]==date("j n Y", time()-86400))$timep='Вчера  '.$time_p['1'];
if ($time_p[0]==date("j n Y", time()-172800))$timep='Позавчера  '.$time_p['1'];
if ($time_p[0]==date("j n Y", time()-259200))$timep='3 дня назад  '.$time_p['1'];
if ($time_p[0]==date("j n Y", time()-604800))$timep='Неделю назад  '.$time_p['1'];
if ($time_p[0]==date("j n Y", time()-1209600))$timep='2 недели назад  '.$time_p['1'];
$months_eng = array('Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec');
$months_rus = array('Января','Февраля','Марта','Апреля','Мая','Июня','Июля','Августа','Сентября','Октября','Ноября','Декабря');
$timep = str_replace($months_eng,$months_rus,$timep);
return $timep;
}
/* Функция постраничной навигации */
$page = isset($_GET['page']) ? int($_GET['page']) : 0; $i=0;
if($user['str'] != 0){
$set['str'] = $user['str'];
}
while($i<$page+$set['str'] or $i==0) $i = $i+100;
if($page+$set['str']>100) $pagefile = $page-$i+100;
else $pagefile = $page;
function pages($page, $total, $href, $num)
{
    echo '<div class="text">';
    if ($page) echo '<a href="'.$href.'page='.($page-$num).'">←</a> ';
    else echo '←';
    echo ' | ';
    if ($total > $page + $num)
    echo ' <a href="'.$href.'page='.($page + $num).'">→</a>';
    else echo '→';
    if($total>0)
    {
    echo '<br/>Страницы:';
    $minus = $page-($num*3);
    $plus = $page+($num*4);
    if($minus<$total && $minus>0) echo ' <a href="'.$href.'page=0">1</a> ... ';
    for($i=$minus; $i<$plus;)
    {
        if($i<$total && $i>=0)
        {
            $ii = floor(1+$i/$num);
            if ($page==$i) echo ' <b>'.$ii.'</b>';
            else echo ' <a id="l3" href="'.$href.'page='.$i.'">'.$ii.'</a>';
        }
        $i=$i+$num;
    }
    if($plus<$total)
    {
        $whole = ceil($total/$num);
        echo ' ... <a id="l3" href="'.$href.'page='.($whole*$num-$num).'">'.$whole.'</a>';
    }
      if(isset($_GET['end'])){
         $whole = ceil($total/$num);
    header('Location: '.$href.'&page='.($whole*$num-$num).'');
    }
}
echo '</div>';
}
/* Функция только для  НЕ зарегистрированных пользователей */
function unreg()
{
    global $user;
    if($user)
    {
        header("Location: ../index.php");
    }
}
/* Функция только для зарегистрированных пользователей */
function reg()
{
    global $user;
     if(empty($user['login']) and empty($user['password']))
     {
        
          header("Location: ../sign.php");
            exit;
     }
}
/* Функция для определения уровня пользователя */
function only_admin($level)
{
    global $user;
     if (!isset($user) or $user['admins'] < $level)
    {
          header("Location: ../index.php");exit;
    }
}
/* Функция безопасного шифрования в MD5 */
function md5_sault($text)
{
    return md5(md5('Game').md5(md5($text)));
}
if($user['id']>0){
    /*Время в игре*/
    mysql_query("UPDATE `users` SET `in_game`=`in_game`+1 WHERE `id`='".$user['id']."'");
    /* HP/MP RESP */
    $health_one = rand(5,10);// 5,10 hp один раз
        /* Проверяем на вирусы */
        if($user['virus']>0){
        $vir = mysql_fetch_assoc(mysql_query("SELECT `virus`,`id` FROM `inventory` WHERE `id`='".$user['virus']."'"));
        $health_one = $health_one - $vir['virus'];
        }
        /*---*/
    $mp_one = rand(5,10);// 5,10 MP один раз
        
        if($user['amulet']>0){
        $amulet = mysql_fetch_assoc(mysql_query("SELECT * FROM `inventory` WHERE `id`='".$user['amulet']."'"));
        $health_one = $health_one+$amulet['hp'];
        $mp_one = $mp_one+$amulet['mp'];
        }
        if($user['dnk_roso']>0){
        $health_one = $health_one*4;
        $mp_one = $mp_one*4;
        }
    $t_health = 15;//15 секунд +5,10 hp
    $hp = floor((time()-$user['health_resp'])/$t_health);
    $heal = $health_one*$hp;
    $count_heal = $user['health']+$heal;
    if($user['health'] < $user['max_health'] and $hp > 0 and $user['health_resp'] > 0){
    if($count_heal>$user['max_health']){
    ###echo $count_heal;
    mysql_query("UPDATE `users` SET 
    `health`=".$user['max_health'].",
    `health_resp`='0'
    WHERE `id`='".$user['id']."'");
    }else{
    mysql_query("UPDATE `users` SET 
    `health`=`health`+".$heal.",
    `health_resp`=".time()."
    WHERE `id`='".$user['id']."'");
    }
    }
    /* MP */
    $mp = floor((time()-$user['mana_resp'])/$t_health);
    $mana = $mp_one*$mp;
    $count_mana = $user['mana']+$mana;
    if($user['mana'] < $user['max_mana'] and $hp > 0 and $user['mana_resp'] > 0){
    if($count_mana>$user['max_mana']){
    mysql_query("UPDATE `users` SET 
    `mana`=".$user['max_mana'].",
    `mana_resp`='0'
    WHERE `id`='".$user['id']."'");
    }else{
    mysql_query("UPDATE `users` SET 
    `mana`=`mana`+".$mana.",
    `mana_resp`=".time()."
    WHERE `id`='".$user['id']."'");
    }
    }
    
    
    /* Записываем уровень если опыт выше*/
$level = mysql_fetch_assoc(mysql_query("SELECT * FROM `level` WHERE `oput2`>='".$user['oput']."' ORDER BY `id` LIMIT 1"));
if($user['level'] < $level['id']){
    /*Определем "дозатор" для перса*/
    if($user['pers']==0){
    $hp_level = 15;
    $mp_level = 17;
    }elseif($user['pers']==1){
    $hp_level = 16;
    $mp_level = 17;
    }elseif($user['pers']==2){
    $hp_level = 16;
    $mp_level = 12;
    }elseif($user['pers']==3){
    $hp_level = 18;
    $mp_level = 14;
    }elseif($user['pers']==4){
    $hp_level = 17;
    $mp_level = 15;
    }
mysql_query("UPDATE `users` SET 
`level`=`level`+1,
`max_health`=`max_health`+".$hp_level.",
`health_resp`=".time().",
`max_mana`=`max_mana`+".$mp_level.",
`mana_resp`=".time().",
`journal`=`journal`+1,
`train`=`train`+1,
`skil_up`=`skil_up`+1
 WHERE `id`='".$user['id']."'");
 mysql_query("UPDATE `users` SET
 `health`=`max_health`,
 `mana`=`max_mana` WHERE `id`='".$user['id']."'");
mysql_query("INSERT INTO `journal` SET
`user_id`='".$user['id']."',
`text`='Поздравляем с получением нового уровня! <a href="train.php">Прокачка навыков</a>',
`time`='".time()."'");
}
    /* Показываем новые оповещения */
    if($user['journal']>0){
    echo '<div class="name" style="text-align: center;"><a href="journal.php">Новых оповещений:</a><font color="orange">'.$user['journal'].'</font></div>';
    
    }
    
     /* Добавляем новый скил */
$skill_level = array(5,15,25);
    if(in_array($user['level'],$skill_level)){
    $add_skill = mysql_fetch_assoc(mysql_query("SELECT * FROM `skils` WHERE `pers_id`='".$user['pers']."' AND `level_need`='".$user['level']."'"));
    $s_skill_user = mysql_query("SELECT * FROM `skils_user` WHERE `user_id`='".$user['id']."' AND `skil_id`='".$add_skill['id']."'");
        if(mysql_num_rows($s_skill_user) == 0){
        mysql_query("INSERT INTO `journal` SET
        `user_id`='".$user['id']."',
        `text`='Вы изучили новый скил <img src="img/skill/".$add_skill['id'].".png"> <b>".$add_skill['skil']."</b>',
        `time`='".time()."'");
        mysql_query("INSERT INTO `skils_user` SET
        `user_id`='".$user['id']."',
        `skil_id`='".$add_skill['id']."',
        `mana`='".$add_skill['mana']."',
        `uron`='".$add_skill['uron']."',
        `hp`='".$add_skill['hp']."',
        `str`='".$add_skill['str']."',
        `def`='".$add_skill['def']."'
        ");
        mysql_query("UPDATE `users` SET `journal`=`jpurnal`+1 WHERE `id`='".$user['id']."'");
        }
    
    }
    
/*Почта */
if($user['new_mess']>0){
echo '<div class="name"><img src="img/other/mail.png" alt=""> Новая почта: <a href="mail.php"><span style="color: #88b775; font-weight: bold;">+ '.$user['new_mess'].'</span></a></div>';
}
/* Лаборатории */
$test_lab = mysql_result(mysql_query("SELECT COUNT(id) FROM `lab_user` WHERE `user_id`='".$user['id']."' AND `time_dohod` < '".time()."' "),0);
if($test_lab > 0){
echo '<div class="name">Ваши рабочие в лабораториях попросили зайти к ним</div>';
}
/* Алуко */
    if($_SERVER['PHP_SELF']!='/index.php' AND $_SERVER['PHP_SELF']!='/aluko.php'){
    $aluko = mysql_fetch_assoc(mysql_query("SELECT * FROM `aluko` ORDER BY `id` LIMIT 1"));
    if($aluko['health']>0){
    echo '<div class="row"><img src="img/aluko/1.png"> Люди: - На помощь!На нас опять напал Алуко!<br>
    <a href="aluko.php">Помочь</a></div>';
    }
    }
 /*  -----  */
}
/* Функция отображения низа */
function foot(){
include 'foot.php';
}
?>