Файл: 3/dung.php
Строк: 391
<?php
require_once ('system/func.php');
$title = 'Поход';
require_once ('system/header.php');
auth(); // Закроем от гостей
include("system/dung.php");
if ($id == false) {
$dung = new Dung($user['id']);
$chapterId = ($_GET['chapterId'] AND is_numeric($_GET['chapterId'])) ? (int) ($_GET['chapterId']) : false;
$taskId = ($_GET['taskId'] AND is_numeric($_GET['taskId'])) ? (int) ($_GET['taskId']) : false;
if ($chapterId) {
$chapter = $dung -> chapterId($chapterId);
if (!$chapter OR $chapter['id'] > $user['dungChapter']) {
//juosta($dm['statusas'],$neskaityti_laiskai);
header("Location: dung.php");
exit;
}
$listTasks = $dung -> listTasks($chapterId);
$countTasks = $dung -> countTasks($chapterId);
arsort($listTasks);
//juosta($dm['statusas'],$neskaityti_laiskai);
if ($taskId) {
$task = $dung -> taskId($chapterId, $taskId);
if ($task) {
if ($chapter['id'] < $user['dungChapter'] OR ($taskId - 1) <= $user['dungTask']) {
if ($user['energy'] >= 50) {
mysql_query("UPDATE `users` SET `energy` = `energy`-50 WHERE `id` = ".$user['id']." LIMIT 1");
$dung -> startFight($user, $chapterId, $task);
header("Location: dung.php?id=battle");
exit;
}
else
{
echo "<div class="center juosta2 tr">
Для нападения надо минимум <img src='img/icons/energy.png' alt='*'/> 50 энергии!
<br/>
<table align="center">
<tr>
<td valign="middle">
<img src="img/potion.png" alt="*"/>
</td>
<td valign="middle">
Настойка бодрости
<br/>
<span class="small">100% энергии и жизни</span>
<br/>
<span class="small">Цена: <img src="img/icons/gold.png" alt="*"/> 10</span>
</td>
</tr>
</table>
<a class="btn_red" href="lab.php?id=wiz&potion=1&r=4&chapterId=$chapterId"><span>Восстановить</span></a>
</div>
<div class="razdel5"></div>";
}
}
}
}
foreach($listTasks as $tId => $task) {
if ($chapter['id'] < $user['dungChapter'] OR ($tId - 1) <= $user['dungTask']) {
echo "<div class="b_dung_level">
<a href="dung.php?chapterId=$chapterId&taskId=$tId" class="block">
<div class="shadow"></div>
<span class="unit _white">
<i class="face f".$chapterId."_".$tId.""></i>
</span>
<div class="content">
<span class="name">$tId. ".$task['name']."</span>
<span class="btn _r _gold _corner">
<span>Напасть за <img src="img/icons/energy.png" alt="*"/> 50</span>
</span>
</div>
</a>
</div>
<div class="razdel5"></div>";
}
}
echo "<div class="razdel5"></div>
<div class="center">
<a class="btn_red" href="dung.php"><span>Вернуться</span></a>
</div>";
}
else
{
$listChapters = $dung -> listChapters();
arsort($listChapters);
//juosta($dm['statusas'],$neskaityti_laiskai);
$countGame = (int) ($user['energy'] / 50);
if (isset($_GET['auto'])) {
if ($user['energy'] >= 50 AND $user['gold'] >= 1) {
if ($countGame) {
$dungTask = ($user['dungTask'] == 0) ? $user['dungTask'] + 1 : $user['dungTask'];
$dungChapter = ($user['dungChapter'] > $dung -> countChapters()) ? $dung -> countChapters() : $user['dungChapter'];
$task = $dung -> taskId($dungChapter, $dungTask);
$minusEnergy = $countGame * 50;
$result = array(
'count' => array(
'game' => 0,
'win' => 0,
'lose' => 0
),
'rExp' => 0,
'rSilver' => 0,
'rGold' => 0,
'rChapter' => $user['dungChapter'],
'rTask' => $user['dungTask'] + 1
);
for($cGame = 1; $cGame <= $countGame; $cGame ++) {
$dung -> startFight($user, $dungChapter, $task);
$final = false;
while(!$final) {
$final = $dung -> attack($user);
if ($final) {
$result['win'] = $final['win'];
$result['count']['game'] ++;
$result['rExp'] += $final['rExp'];
$result['rSilver'] += $final['rSilver'];
$result['rGold'] += $final['rGold'];
$result['rChapter'] = $final['rChapter'];
$result['rTask'] = $final['rTask'];
if ($final['win']) {
$result['count']['win'] ++;
}
else
{
$result['count']['lose'] ++;
}
}
}
}
$dung -> updateResult($result);
mysql_query("UPDATE `users` SET `energy` = '".($user['energy'] - $minusEnergy)."', g = g-1 WHERE `id` = ".$user['id']." LIMIT 1");
header("Location: dung.php?id=battle");
exit;
}
}
else
{
echo "<div class="center juosta2 tr">
<span class="bold red">Не хватает <img src="img/icons/gold.png" alt="*"/> 1.</span>
<div class="razdel5"></div>
<a class="btn_red" href="stool.php?id=pay"><span>Купить</span></a>
</div>
<div class="razdel5"></div>";
}
}
echo "<div class="center block2">
<img src="images/other/dungeon.png" alt="*"/>
<br/>
<span class="bold">Сражайся в таинственных подземельях и побеждай врагов!</span>
</div>";
foreach($listChapters as $cId => $chapter) {
if ($cId <= $user['dungChapter']) {
echo "<div class="block">
<a class="chapter _d$cId" href="dung.php?chapterId=$cId">
<span class="_p".$chapter['quality']."">
$cId. ".$chapter['name']."
<p class="small"><small class="type">".$dung -> nameQuality($chapter['quality'])." подземелье</small></p>
</span>
</a>
</div>";
}
}
if ($user['energy'] >= 50 && $countGame > 0) {
echo "<div class="block2">
Ты можешь провести автоматические бои на всю имеющуюся энергию! Бой ведется в последнем открытом подземелье.
<a class="btn2" href="dung.php?auto=1">$countGame боев за ".ico('icons','gold.png')." 1</a>
</div>";
}
}
}
elseif ($id == "battle") {
$dung = new Dung($user['id']);
$fight = $dung -> getFight();
if (!$fight) {
header("Location: dung.php");
exit;
}
if ($fight['type'] == 'fight') {
if (isset($_GET['kamen']) AND $user['kamen'] > 0) {
$dung -> activeAkmuo($user);
}
if (isset($_GET['trava']) AND $user['trava'] > 0) {
$dung -> activeZole($user);
}
if (isset($_GET['attack'])) {
$final = $dung -> attack($user, true);
if ($final) {
header("Location: dung.php?id=battle");
exit;
}
}
if (isset($_GET['autoFight'])) {
$final = false;
while(!$final) {
$final = $dung -> attack($user);
if ($final) {
header("Location: dung.php?id=battle");
exit;
}
}
}
$zenklas = zenklas($user['statusas']);
$myParams = $dung -> getMyParams();
$my_user_add_hp = $myParams['my_user_add_hp'];
$opponent = $dung -> getOpponentParams();
$uUron = $dung -> getUserUron();
$bUron = $dung -> getBotsUron();
$width1 = ceil(($myParams['battle_hp'] / $myParams['other_hp']) * 100);
$width2 = (($bUron) ? (int) (($bUron / $myParams['other_hp']) * 100) : 0);
$width2 = ($width2 > 100) ? 100 : $width2;
if ($width1 + $width2 > 100) {
$width2 = 100 - $width1;
}
$width3 = ceil(($opponent['battle_hp'] / $opponent['other_hp']) * 100);
$width4 = (($uUron) ? (int) (($uUron / $opponent['other_hp']) * 100) : 0);
$width4 = ($width4 > 100) ? 100 : $width4;
//juosta($dm['statusas'],$neskaityti_laiskai);
echo "<div class="left juosta2 tr">
<span class="yellow bold"><img src="img/icons/player.png" alt="*"/> $zenklas".$myParams['name']." <img src="img/icons/health.png" alt="*"/> ".$myParams['battle_hp']."</span><div class="fr bold">".(($my_user_add_hp > 0) ? '<span class="lime">+'.$my_user_add_hp.'</span>' : '')." ".((@$bUron) ? ' <span class="red">-'.$bUron.'</span>' : '')."</div>
<div class="razdel5"></div>
<span class="bl prg-bar border1">
<span class="bl fl prg-blue" style="width: $width1%"> </span>
<span class="bl fl prg-red" style="width: $width2%"> </span>
</span>
<div class="razdel5"></div>
<span class="ml5 yellow bold"><img src="img/icons/dung_bot.png" alt="*"/> Противник <img src="img/icons/health.png" alt="*"/> ".$opponent['battle_hp']."</span><div class="fr bold"> ".((@$uUron) ? ' <span class="red">-'.$uUron.'</span>' : '')."</div>
<div class="razdel5"></div>
<span class="bl prg-bar border1">
<span class="bl fl prg-blue" style="width: $width3%"> </span>
<span class="bl fl prg-red" style="width: $width4%"> </span>
</span>
</div>";
/*if (count($myParams['skills'])) {
echo "<div class="razdel5"></div>
<div class="center juosta2 tr">";
foreach($myParams['skills'] as $sId => $a) {
echo "<img src="img/ability/$sId.".$a.".png" width="25px" height="25px" alt="*"/> ";
}
echo "</div>";
}*/
echo "<div class="razdel5"></div>
<div class="center juosta2 tr">
<table align="center">
<tr>
<td valign="middle">";
if ($myParams['akmuo_time'] > time()) {
echo "<img src="img/stone.png" width="40px" height="40px" alt="*"/>
<br/>
<img src="img/icons/stone_min.png" alt="*"/> ";
if ($user['js2'] == false) {
echo val($myParams['akmuo_time'] - time());
}
else
{
$rand_sk = rand(1000000,9999999);
echo "<span id="setTime$rand_sk"></span><span id="getTime$rand_sk" style="display:none;">".($myParams['akmuo_time'] - time())."</span>";
js_count($myParams['akmuo_time'] - time(),$rand_sk,1);
}
echo " ".$language['val']."";
}
else
{
echo "<a href="dung.php?id=battle&attack&kamen"><img src="img/stone.png" width="40px" height="40px" alt="*"/></a>
<br/>
<img src="img/icons/stone_min.png" alt="*"/> <span class="bold ".($user['kamen'] > 0 ? "lime" : "red")."">Камень (".$user['kamen'].")</span>";
}
echo "</td>
<td valign="middle">";
if ($myParams['zole_time'] > time()) {
echo "<img src="img/grass.png" width="40px" height="40px" alt="*"/>
<br/>
<img src="img/icons/grass_min.png" alt="*"/> ";
if ($user['js2'] == false) {
echo val($myParams['zole_time'] - time());
}
else
{
$rand_sk = rand(1000000,9999999);
echo "<span id="setTime$rand_sk"></span><span id="getTime$rand_sk" style="display:none;">".($myParams['zole_time'] - time())."</span>";
js_count($myParams['zole_time'] - time(),$rand_sk,1);
}
echo " ".$language['val']."";
}
else
{
echo "<a href="dung.php?id=battle&attack&trava"><img src="img/grass.png" width="40px" height="40px" alt="*"/></a>
<br/>
<img src="img/icons/grass_min.png" alt="*"/> <span class="bold ".($user['trava'] > 0 ? "lime" : "red")."">Трава (".$user['trava'].")</span>";
}
echo "</td>
</tr>
</table>
</div>
<div class="razdel5"></div>
<div class="center">
<a class="btn_red" href="dung.php?id=battle&attack"><span>Атаковать</span></a>
<div class="razdel5"></div>
<a class="btn_red" href="dung.php?id=battle&autoFight"><span>Автобой</span></a>
</div>";
}
else if ($fight['type'] == 'result') {
$result = $dung -> getResult();
//juosta($dm['statusas'],$neskaityti_laiskai);
echo "<div class="juosta2 tr center">";
if ($result['win']) {
echo "<span class="bold lime">".$language['pergale']."</span>";
}
else
{
echo "<span class="bold red">".$language['pralaimejimas']."</span>";
}
echo "<div class="razdel5"></div>";
if (@$result['count']) {
echo "<div class="left">
".$language['pravestos'].": <span class="lime">".$result['count']['game']."</span> ".$language['kovos']."
<br/>
".$language['pergaliu'].": <span class="lime">".$result['count']['win']."</span>
<br/>
".$language['pralaimejimu'].": <span class="red">".$result['count']['lose']."</span>
</div>
<div class="razdel5"></div>";
}
echo "".((@$result['newChapter'] === TRUE) ? "<span class="bold lime">".$language['tu_atidarei_nauja_lokacija']."</span><br/>" : "")."
<span class="lime">".$language['atlygis'].":</span>
<br/>
".(($result['rGold'] > 0) ? "<img src="img/icons/gold.png" alt="*"/> ".$result['rGold'].", " : "")."
<img src="img/icons/silver.png" alt="*"/> ".n_f($result['rSilver'])." ".$language['ir']." <img src="img/icons/exp.png" alt="*"/> ".n_f($result['rExp']).".
</div>
<div class="razdel5"></div>
<div class="center">
<a class="btn_red" href="dung.php?chapterId=".(($user['dungChapter'] > $dung -> countChapters()) ? ($user['dungChapter'] - 1) : $user['dungChapter']).""><span>".$language['i_lokacija']."</span></a>
</div>";
}
if (!@$result['count']) {
$journal = $dung -> getJournal();
echo "<div class="razdel5"></div>
<div class="juosta2 tr">";
$dung -> d_journal($journal);
echo "</div>";
}
}
else
{
header("Location: index.php");
}
require_once ('system/footer.php');
?>