<?php

$token=uniqid();

// Установки
// Путь
$_path='./system';
// Заголовок
$_title = 'Король Бессмертных';
// Период времени, через который будет обновляться мероприятие
// 24 часа 3600 * 2
$_event_period_time=3600 * 2;
// Время проведения мероприятия
// 10 минут
$_event_time=60 * 30;
// Задержка в ударах
$_event_attack_delay=0;
// 
$_event_dragon_parameters=array(
	// Strength
	200000,
	// Agility
	350,
	// Protected
	350,
	// Vitality
	350
);
// Награда за убийство дракона (золото и опыт)
$_event_dragon_die_trophy=1000;
$_event_dragon_die_exp=300;

// Получение параметров дракона
list($dragon_str,$dragon_agi,$dragon_def,$dragon_vit)=$_event_dragon_parameters;


// Вызов необходимых файлов
// Общие настройки
include $_path  . '/common.php';
// Функции
include $_path  . '/functions.php';
// Пользователь
include $_path  . '/user.php';

// Требование авторизациии
if( ! is_array($user)) {
	header(sprintf(
		'location:%s',
		'/'
	));
	exit;
}

// Установка заголовка
$title	=&$_title;
// Вывод на экран HTML содержимого
include $_path  . '/h.php';


// Тело
// Устанавливаем содержимое (тело) документа как строку
$body='<div class="main" style="word-wrap:break-word;"><span style="text-shadow:none;"></span>';

// Поиск ближайшего мероприятия
$query=mysql_query('SELECT * FROM `dragonEvent` ORDER BY `id` DESC LIMIT 1');
// Если ближайшее мероприятие найдено
if(mysql_num_rows($query)!=0){
	
	// Мероприятие
	$event	=mysql_fetch_assoc($query);
	
	// Пользователь
	$query	=mysql_query('SELECT * FROM `dragonEventMemb` WHERE (`user_id`="' . $user['id'] . '") ORDER BY `id` DESC LIMIT 1');
	$memb	=mysql_num_rows($query)!=0?mysql_fetch_assoc($query) : null;
	
	
	// Если битва еще не началась, а время вышло
	if($event['start']==0 and $event['time']<=time()){
		mysql_query('UPDATE `dragonEvent` SET `start`="1",`time`="' . (time()+$_event_time) . '" WHERE (`id`="' . $event['id'] . '")');
		header(sprintf(
			'location:%s?%s',
			'/king.php',
			$token
		));
		exit;
	}

	
	// Если битва уже идет, а время вышло
	if($event['start']==1 and $event['end']==0 and $event['time']<=time()){
		mysql_query('UPDATE `dragonEvent` SET `end`="1" WHERE (`id`="' . $event['id'] . '")');
		header(sprintf(
			'location:%s?%s',
			'/king.php',
			$token
		));
		exit;
	}
	
	if($event['start']==1 and $event['end']==0 and $event['dragon']==0){
		mysql_query('UPDATE `dragonEvent` SET `end`="1" WHERE (`id`="' . $event['id'] . '")');
		header(sprintf(
			'location:%s?%s',
			'/king.php',
			$token
		));
		exit;
	}

	
	// Если мероприятие началось
	// Пользователь принимает участие в мероприятии
	if($event['start']==1 and $event['end']==0 and  ! is_null($memb) and $memb['event_id']==$event['id']){

		$body.='<li style="text-align:center;"><span style="float:right;">Время до конца битвы :' . _time($event['time']-time()) . '</span><b style="color:#f0c060;"><center>     Битва с Королем Бессмертных </center></b><span style="float:left;"></span></li>';
		$body.='<li style="text-align:center;">';
		$body.='<img src="/images/king.png" alt=""  width="260"/><br>';
		
		if($event['dragon']==0){
			mysql_query('UPDATE `dragonEvent` SET `end`="1" WHERE (`id`="' . $event['id'] . '")');
			header(sprintf(
				'location:%s?%s',
				'/king.php',
				$token
			));
			exit;
		}
		
		
		if($event['dragon']!=0){
				
				
				
				$_GET['attack'] = isset ($_GET['attack']) ? intval ($_GET['attack']) : 0;
				if ($_GET['attack']==1) {
				
				
					if((time()-$memb['lastAttack'])<$_event_attack_delay){
						header(sprintf(
							'location:%s?%s',
							'/king.php',
							$token
						));
						exit;
					}
					
					$dmg = 0;
					$ability_1 = 0;
					$ability_2 = 0;
					$ability_3 = 0;
					$ability_4 = 0;
																
					if ($user['ability_1']!=0) {
						$ability_1_b = 20 + ($user['ability_1']*5) - 5;
						$ability_1_c = 5 	+ ($user['ability_1']*3) - 3;
					
					
					if (mt_rand(0, 100) <= $ability_1_c)
						$ability_1 = 1;
																		
					}
																		
					if ($user['ability_2']!=0) {
						$ability_2_b = 20 + ($user['ability_2']*5) - 5;
						$ability_2_c = 5 	+ ($user['ability_2']*3) - 3;

						if (mt_rand(0, 100) <= $ability_2_c)
							$ability_2 = 1;
																		
					}

					if ($user['ability_3']!=0) {
						$ability_2_b   = 5 + ($user['ability_3']*3) - 3;
						$ability_2_c   = 5 + ($user['ability_3']*2) - 2;
						$ability_2_c_c = 20+ ($user['ability_3']*5) - 5;

						if (mt_rand(0, 100) <= $ability_3_c)
							$ability_3 = 1;
					}
																		
					if ($user['ability_4']!=0) {
						$ability_2_b = 20 + ($user['ability_4']*2) - 2;
						$ability_2_c = 5 	+ ($user['ability_4']*5) - 5;
						
						if (mt_rand(0, 100) <= $ability_4_c)
							$ability_4 = 1;
																		
					}
					
					$dmg += ceil (rand(($user['str']/6), ($user['str']/4)));
																		
					if ($ability_1==1) {
						$dmg += ceil (($dmg / 100) * $ability_1_b);
					}
					
					$dmg -= ceil (rand(($dragon_def/12), ($dragon_def/7)));        
					
					if ($dmg < 0)
						$dmg = 0;

						
						
					$crit = $ability_1==1?((rand (1,2)*($user['agi']/100)+$ability_3_c_c)-(rand (1,2)*($dragon_agi/100))):((rand (1,2)*($user['agi']/100))-(rand (1,2)*($dragon_agi/100)));
																		
					if (mt_rand(0, 100) <= $crit) {   
						$dmg *= 2;

						if($ability_3 == 1) {							 
							$dmg += ceil (($dmg/100)*$ability_3_b);								
						}    
					}

					$dodge = ((rand (1,2)*($dragon_agi/100))-(rand (1,2)*($user['agi']/100)));
														
					if(mt_rand(0, 100) <= $dodge)
						$dmg = 0;
					
					if ($dmg>=$event['dragon']) {
						
						$dmg = $event['dragon'];
						
					}
					
					mysql_query ('UPDATE `dragonEvent` SET `dragon`=`dragon`-' . $dmg . ' WHERE (`id`="' . $event['id'] . '")');
					mysql_query ('UPDATE `dragonEventMemb` SET `lastAttack`="' . time () . '" WHERE (`id`="' . $memb['id'] . '")');
					
					$body.='<div style="text-align:center;">';
					
					$logString='';
					
					if ($dmg==0) {
						$logString='<img src=\"/images/icon/race/' . $user['r'] . '.png\" alt=\"\"/> ' . $user['login'] . ' попытался нанести урон королю.';
						$body.='Вы промахнулись';
					}
					else {
						$logString='<img src=\"/images/icon/race/' . $user['r'] . '.png\" alt=\"\"/> ' . $user['login'] . ' нанес ' . $dmg . ' урона.';
						$body.='Вы нанесли <b>' . $dmg . '</b> урона';
					}
					

					if ($dmg>=$event['dragon']) {
						$logString='<img src=\"/images/icon/race/' . $user['r'] . '.png\" alt=\"\"/> ' . $user['login'] . ' убил короля!';
						mysql_query('UPDATE `dragonEventMemb` SET `dragon`="1" WHERE (`id`="' . $memb['id'] . '")');
						mysql_query('UPDATE `users` SET `g`=`g`+' . $_event_dragon_die_trophy . ' WHERE (`id`="' . $user['id'] . '")');
						mysql_query('UPDATE `users` SET `exp`=`exp`+' . $_event_dragon_die_exp . ' WHERE (`id`="' . $user['id'] . '")');
					}
					
					
					//
					if($ability_1==1)
						$logString.='<br/><img src=\"/images/icon/race/' . $user['r'] . '.png\" alt=\"\"/> ' . $user['login'] . ' применил <img src=\"/images/icon/quality/' . $user['ability_1_quality'] . '.png\" alt=\"\"/> Ярость титана';
					
					if($ability_2==1)
						$logString.='<br/><img src=\"/images/icon/race/' . $user['r'] . '.png\" alt=\"\"/> ' . $user['login'] . ' применил <img src=\"/images/icon/quality/' . $user['ability_2_quality'] . '.png\" alt=\"\"/> Крепкая броня';
					
					if($ability_3==1)
						$logString.='<br/><img src=\"/images/icon/race/' . $user['r'] . '.png\" alt=\"\"/> ' . $user['login'] . ' применил <img src=\"/images/icon/quality/' . $user['ability_3_quality'] . '.png\" alt=\"\"/> Вихрь критов';
					
					if($ability_4==1)
						$logString.='<br/><img src=\"/images/icon/race/' . $user['r'] . '.png\" alt=\"\"/> ' . $user['login'] . ' применил <img src=\"/images/icon/quality/' . $user['ability_4_quality'] . '.png\" alt=\"\"/> Защитная стойка';
					
						
					mysql_query ('INSERT INTO `dragonEventLog` (`event_id`,`text`) VALUES ("' . $event['id'] . '","' . $logString . '")');
					
					
					
					if ($ability_1!=0 || $ability_2!=0 || $ability_3!=0 | $ability_4!=0) {
						$body.='<div class="separator"></div>';

						if($ability_1==1) {
							$body.='<img src="/images/ability/1.' . $user['ability_1_quality'] . '.png" style="width:25px;height:25px;" alt=""/> ';
						}
						if($ability_2==1) {
							$body.='<img src="/images/ability/2.' . $user['ability_2_quality'] . '.png" style="width:25px;height:25px;" alt=""/> ';
						}
						if($ability_3==1) {
							$body.='<img src="/images/ability/3.' . $user['ability_3_quality'] . '.png" style="width:25px;height:25px;" alt=""/> ';
						}
						if($ability_4==1) {
							$body.='<img src="/images/ability/4.' . $user['ability_4_quality'] . '.png" style="width:25px;height:25px;" alt=""/> ';
						}
					}
					$body.='</div>';

				}

			$body.='<b>Король Бессмертных</b>';
			$body.='<img src="/images/icon/health.png" alt=""/> ' . $event['dragon'] . '<br/>';
			
		}
		else{
			$body.='<div style="border-left:2px solid #606060;border-right:2px solid #606060;">';
			$body.='<span style="color:#909090;">Король бессмертных повержен!</span><br/>';
			$body.='<span style="color:#c03030;">Уровень кровожадности: ' . $event['blood'] . '%</span><br/>';
			$body.='<span style="color:#909090;font-size:10px;">Чем больше уровень кровожадности, тем больше становится вами наносимый урон противнику.</span>';
			$body.='</div>';
		}
		
		// Если пользователь мертв
		if($memb['hp']==0){
			$body.='<div style="border-left:2px solid #606060;border-right:2px solid #606060;">';
			$body.='<span style="color:#909090;">Вы убиты.</span>';
			$body.='<a class="btn" href="/king" /><span class="end"><span class="button">Обновить</span></span></a>';
			$body.='</div>';
		}
		// Если пользователь еще жив
		else{
			if($event['dragon']!=0){
			
				if((time()-$memb['lastAttack'])<$_event_attack_delay){
					$body.='До удара ' . ($_event_attack_delay-(time()-$memb['lastAttack'])) . ' сек..<br/>';
					$body.='<a class="btn" href="/king.php?' . $token . '" /><span class="end"><span class="button">Обновить</span></span></a>';

				}
				else{
					$body.='<a class="btn" href="/king.php?attack=1" /><span class="end"><span class="button">Атаковать</span></span></a>';
				}
				
			}
			else{
				
				$_GET['target'] = isset($_GET['target']) ? (is_numeric ($_GET['target']) ? $_GET['target'] : 0) : 0;
				if ($_GET['target']==1){
					$query=mysql_query('SELECT * FROM `dragonEventMemb` WHERE (`event_id`="' . $event['id'] . '") AND (`id`!="' . $memb['id'] . '")');
					if(mysql_num_rows($query)!=0){
						$opponent=mysql_fetch_assoc($query);
						mysql_query('UPDATE `dragonEventMemb` SET `opponent`="' . $opponent['id'] . '" WHERE (`id`="' . $memb['id'] . '")');					
					}
					header (sprintf(
						'location:%s?%s',
						'/king.php',
						$token
					));
					exit;
				}
				
				$body.='<a class="btn" href="/king.php?attack=1" /><span class="end"><span class="button">Атаковать</span></span></a>';
				
			}		
		}
		

		$body.='</li>';
		
		// Log
		$query=mysql_query('SELECT * FROM `dragonEventLog` WHERE (`event_id`="' . $event['id'] . '") ORDER BY `id` DESC LIMIT 10');		
		if(mysql_num_rows($query)!=0){
			while($log=mysql_fetch_assoc($query)){
				$body.=$log['text'] . '<br/>';
			}
		}

		
	}
	// Если битва еще не началась
	else{
		
		
		$body.='<div class="main" style="word-wrap:break-word;">
		<span style="text-shadow:none;"></span>
		';
		
		if($event['start']==1 and $event['end']==1){
			
			
			$query	=mysql_query('SELECT `users`.* FROM `dragonEventMemb` LEFT JOIN `users` ON `users`.`id`=`dragonEventMemb`.`user_id` WHERE (`dragonEventMemb`.`event_id`="' . $event['id'] . '") AND (`dragonEventMemb`.`dragon`="1")');
			if(mysql_num_rows($query)!=0){
				$winner	=mysql_fetch_assoc($query);
				
				$body.='

				<h3 style="color:#30f030;">Победитель Короля Бессмертных!</h3>';
				$body.='<img src="/images/king.png" alt=""  width="260"/><br>';
				$body.='<img src="/images/icon/race/' . $winner['r'] . '.png" alt=""/> <a href="/user/' . $winner['id'] . '">' . $winner['login'] . '</a><br/>';
				$body.='<span style="color:#909090;font-size:12px;">Награда: <img src="/images/icon/gold.png" alt=""/> ' . $_event_dragon_die_trophy . ' золота <img src="/images/icon/exp.png" alt=""/> ' . $_event_dragon_die_exp . ' опыта</span><br/>';
			
			}
			
			// 
			
			$body.='Следующая битва через ' . _time(($event['time']+$_event_period_time)-time());
			
			if(($event['time']+$_event_period_time)<=time()){
				mysql_query('INSERT INTO `dragonEvent` (`dragon`,`time`) VALUES ("' . ceil($dragon_vit * 100) . '","' . (time()+$_event_period_time) . '")');
				header(sprintf(
					'location:%s?%s',
					'/king.php',
					$token
				));
			}
			
		}
		else{
		
			
			// Если пользователь принимает участие в битве
			if( ! is_null($memb) and $memb['event_id']==$event['id'])
			{
				
				$body.='

<div class="center">
<div class="block_zero">
<img src="/images/town/hd/king.jpg" width="100%" alt=""/></div>
<div class="dot-line"></div>
<div class="block_zero">
<span class="blue">Бой где каждый сам за себя</span></div>
<div class="mini-line"></div>
<div class="block_zero">
<img src="/images/icon/race/0.png" alt=""/>
<img src="/images/icon/race/1.png" alt=""/> Титаны: 
<b>' . mysql_result(mysql_query('SELECT COUNT(*) FROM `dragonEventMemb` WHERE (`event_id`="' . $event['id'] . '")'),0) . '</b><br/>Битва начнется через: 
<span id="time_5693000">' . _time($event['time']-time()) . ' </span><br/></div>
<div class="dot-line"></div>
<div class="block_zero">
<a class="btn" href="/king.php?' . $token . '" />
<span class="end"><span class="label">
<img src="/images/icon/hit.png" alt=""/> Обновить</span></span></a></div></div>
<div class="mini-line"></div>
<table border="0" cellpadding="0" cellspacing="0" align="center"><tr>
<td colspan="2" style="padding:0px 0px 5px 18px;" align="center">
<span class="blue">У тебя:</span></td></tr><tr align="center">
<td style="border-right:1px solid #3e3d36;padding:0px 10px;">
<img src="/images/icon/stone.png" alt=""/> Камень<br/><span class="medium grey">0 штук</span></td>
<td style="border-left:1px solid #1f1f1a;padding:0px 0px 0px 10px;"><img src="/images/icon/grass.png" alt=""/> Трава<br/>
<span class="medium grey">0 штук</span></td></tr><tr><td colspan="2" style="padding:10px 0px 0px 18px;" align="center">
<a class="btn" href="/king.php?"><span class="end"><span class="label">В разработке</span></span></a></td>
</tr></table><div class="mini-line"></div><ul class="hint"><li>Убивший короля бессмертных получает 
<img src="/images/icon/quality/4.png" alt=""/> Божественную вещь!</li><li>Последние трое выживших получают по 
<img src="/images/icon/gold.png" alt=""/> 1000 золота</li></ul><div class="mini-line"></div><div class="menuList"><li>
<a href="/fights//"><img src="/images/icon/arrow.png" alt=""/>Вернуться к сражениям</a></li></div>';

				
			}
			// Если пользователь не принимает участие в битве
			else{
				
				// Если мероприятие уже началось
				if($event['start']==1){
					
					$body.='<span style="color:#909090;">Битва в самом разгаре..</span><br/>';
					$body.='<img src="/images/icon/race/0.png" alt=""/> <img src="/images/icon/race/1.png" alt=""/> Титаны: ' . mysql_result(mysql_query('SELECT COUNT(*) FROM `dragonEventMemb` WHERE (`event_id`="' . $event['id'] . '")'),0) . '<br/>';
					$body.='Битва закончится через: ' . _time($event['time']-time()) . '.<br/>';
					$body.='<a class="btn" href="/king.php?' . $token . '" /><span class="end"><span class="button">Обновить</span></span></a>';
					
				}
				// Если мероприятие еще не началось
				else{
					
					$_GET['in']=isset($_GET['in']) ? (is_numeric($_GET['in']) ? $_GET['in'] : 0) : 0;
					if($_GET['in']==1){
						
						mysql_query('INSERT INTO `dragonEventMemb` (`event_id`,`user_id`,`hp`) VALUES ("' . $event['id'] . '","' . $user['id'] . '","' . ($user['vit']*2) . '")');
						header(sprintf(
							'location:%s?%s',
							'/king.php',
							$token
						));
						
					}
					
					$body.='

<div class="center">
<div class="block_zero">
<img src="/images/town/hd/king.jpg" width="100%" alt=""/></div>
<div class="dot-line"></div>
<div class="block_zero">
<span class="blue">Бой где каждый сам за себя</span></div>
<div class="mini-line"></div>
<div class="block_zero">
<img src="/images/icon/race/0.png" alt=""/>
<img src="/images/icon/race/1.png" alt=""/> Титаны: 
<b>' . mysql_result(mysql_query('SELECT COUNT(*) FROM `dragonEventMemb` WHERE (`event_id`="' . $event['id'] . '")'),0) . '</b><br/>Битва начнется через: 
<span id="time_5693000">' . _time($event['time']-time()) . ' </span><br/></div>
<div class="dot-line"></div>
<div class="block_zero">
<a class="btn" href="/king.php?in=1&amp;' . $token . '" />
<span class="end"><span class="label">
<img src="/images/icon/hit.png" alt=""/> Подать заявку</span></span></a></div></div>
<div class="mini-line"></div>
<table border="0" cellpadding="0" cellspacing="0" align="center"><tr>
<td colspan="2" style="padding:0px 0px 5px 18px;" align="center">
<span class="blue">У тебя:</span></td></tr><tr align="center">
<td style="border-right:1px solid #3e3d36;padding:0px 10px;">
<img src="/images/icon/stone.png" alt=""/> Камень<br/><span class="medium grey">0 штук</span></td>
<td style="border-left:1px solid #1f1f1a;padding:0px 0px 0px 10px;"><img src="/images/icon/grass.png" alt=""/> Трава<br/>
<span class="medium grey">0 штук</span></td></tr><tr><td colspan="2" style="padding:10px 0px 0px 18px;" align="center">
<a class="btn" href="/king.php?"><span class="end"><span class="label">В разработке</span></span></a></td>
</tr></table><div class="mini-line"></div><ul class="hint"><li>Убивший короля бессмертных получает 
<img src="/images/icon/quality/4.png" alt=""/> Божественную вещь!</li><li>Последние трое выживших получают по 
<img src="/images/icon/gold.png" alt=""/> 1000 золота</li></ul><div class="mini-line"></div><div class="menuList"><li>
<a href="/fights//"><img src="/images/icon/arrow.png" alt=""/>Вернуться к сражениям</a></li></div>
';
				
					
				}
				
			}
		
		}
	
	}

	$body.='</li>';
	
}
// Если ближайших мероприятий нет
else{
	
	
	mysql_query('INSERT INTO `dragonEvent` (`dragon`,`time`) VALUES ("' . ceil($dragon_vit * 100) . '","' . (time()+$_event_period_time) . '")');
	header(sprintf(
		'location:%s?%s',
		'/king.php',
		$token
	));
	
}



$body.='</ul>';
// Вывод на экран содержимого (тела)
print $body;


// Вывод на экран HTML содержимого
require $_path . '/f.php';


?>