<?php
include 'sql.php';
include 'func_user.php';
#error_repoting(0);
function head($title){
include '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).'">&larr;</a> ';
    else echo '&larr;';
    echo ' | ';
    if ($total > $page + $num)
    echo ' <a href="'.$href.'page='.($page + $num).'">&rarr;</a>';
    else echo '&rarr;';
    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';
}

?>