<?
define('_CONSTANT_', 1);

require_once '../../../core/start.php';

checkAuth();

head('Задание | Зарождение', 'Задание | Зарождение');

require_once '../../../class/fight/Attack.php';
$Attack = new Attack();

if (!empty($user['task_id']) && $user['task_id'] != 1) 
{
    errorNoExit('Вы не можете взять это задание так как уже выполняете другое.', '/game/');
} 
else 
{
    if ($user['history'] != 0) 
    {
        error('Вам не доступно это задание', '/game/index.php');
    } 
    else 
    {
        if (empty($user['task_start'])) 
        {
            ?> 
            <div class="wrap">
                Приветствую тебя, <?=$Filter->output($user['login'])?>. Меня зовут Фин. Ты уже наверное слышал что в Алероте сейчас не спокойно. Множество наемников уже сражается в подземельях и на их окресностях. Нам постоянно требуются люди 
                для очистки окресностей. В общем тебе надо убить 3 волка. Как сделаешь приходи за наградой.
            </div> 
            <a href="?take" class="link-touch">Взять задание</a>
            <?php

            if (isset($_GET['take'])) 
            {
                DB::$dbs->query("UPDATE ". USERS ." SET `task_start` = ?, `task_id` = ? WHERE `id` = ? LIMIT 1", [1, 1, $user['id']]);

                for ($i = 0; $i < 3; ++$i) 
                {
                    DB::$dbs->query("INSERT INTO ". TASK_NPC ."(`task_id`, `user_id`, `dead`, `health`, `max_health`, `strike`, `defend`) VALUES (?, ?, ?, ?, ?, ?, ?)", [1, $user['id'], 0, 100, 100, 10, 10]);
                }

                header("Location: ?");
                exit();
            }
        } 
        else 
        {
            $countWolf = DB::$dbs->querySingle("SELECT COUNT(`id`) FROM ". TASK_NPC ." WHERE `task_id` = ? and `user_id` = ? and `dead` = ?", [1, $user['id'], 0]);

            if ($countWolf == 3) 
            {
                $outText = 'Вы вышли на опушку. К вам приближается 3 волка. В бой!';
            } 
            else if ($countWolf == 2) 
            {
                $outText = 'Вы с размаху отрубили волку голову!';
            } 
            else if ($countWolf == 1) 
            {
                $outText = 'Остался последний!';
            } 
            else 
            {
                $outText = 'Уф... Это был последний...';
            }

            $enemy = DB::$dbs->queryFetch("SELECT * FROM ". TASK_NPC ." WHERE `task_id` = ? and `user_id` = ? and `dead` = ?", [1, $user['id'], 0]);

            if (empty($enemy)) 
            {
                # Reward;
                if ($user['task_start'] == 1) 
                {
                    DB::$dbs->query("UPDATE ". USERS ." SET `task_start` = ?, `task_id` = ?, `money` = ?, `exp` = ?, `history` = ? WHERE `id` = ?", [0, 0, ($user['money'] + 5), ($user['exp'] + 10), 1, $user['id']]);
                    $journal = 'Вы прошли задание "Зарождение". В награду вы получили '. ico('gold.png') .'5, '. ico('exp.png') .'10. Теперь вам доступна новая глава.';
                    $User->addUserJournal($journal, $user['id']);
                    $Attack->clearLog($user['id']);
                    DB::$dbs->query("DELETE FROM ". TASK_NPC ." WHERE `task_id` = ? and `user_id` = ?", [1, $user['id']]);
                    success($journal, '/game/');
                }
                ?> 
                    Все противники убиты
                <?php
            } 
            else 
            {
                $User->checkHealth('Вы были убиты во время боя!');

                if (isset($_GET['attack']) && $enemy['dead'] == 0) 
                {
                    $myAttack = $Attack->attackDefend($Attack->attacked($user['strike']), $Attack->defend($enemy['defend']));

                    if ($user['max_attack'] < $myAttack) 
                    {
                        DB::$dbs->query("UPDATE " . USERS . " SET `max_attack` = ? WHERE `id` = ?", [$myAttack, $user['id']]);
                    }

                    $npcAttack = $Attack->attackDefend($Attack->attacked($enemy['strike']), $Attack->defend($user['defend']));

                    if ($myAttack > $enemy['health']) 
                    {
                        $myAttack = $enemy['health'];
                    } 
                    
                    if ($npcAttack > $user['health']) 
                    {
                        $npcAttack = $user['health'];
                    }

                    if ($myAttack == $enemy['health']) 
                    {
                        DB::$dbs->query("UPDATE ". TASK_NPC ." SET `dead` = ? WHERE `id` = ?", [1, $enemy['id']]);
                        DB::$dbs->query("UPDATE " . USERS . " SET `health` = ? WHERE `id` = ?", [($user['health'] - $npcAttack), $user['id']]); 
                        $Attack->addLog($user['id'], 3, 'Вы убили волка');
                        $Attack->addLog($user['id'], 3, '<span style="color: red;">Перед смертью волк успел укусить вас на '. $npcAttack .'</span>');
                    } 
                    else 
                    {
                        DB::$dbs->query("UPDATE ". TASK_NPC ." SET `health` = ? WHERE `id` = ?", [($enemy['health'] - $myAttack), $enemy['id']]);
                        DB::$dbs->query("UPDATE " . USERS . " SET `health` = ? WHERE `id` = ?", [($user['health'] - $npcAttack), $user['id']]);
                        $Attack->addLog($user['id'], 3, 'Вы ударили волка на '. $myAttack);
                        $Attack->addLog($user['id'], 3, '<span style="color: red;">Волк укусил вас на '. $npcAttack .'</span>');
                    }
                    header("Location: ?");
                }

                $npcHealth = round($enemy['health'] / $enemy['max_health'] * 100,2);
                ?> 
                <div class="content"><?=$outText?></div>
                <div style="text-align: center;"><img src="/img/NPC/wolf.png" alt="[npc-img]" width="70px" height="70px"></div><br/>
                <?=ico('strike.png'), $enemy['strike'], ico('defend.png'), $enemy['defend'], ico('health.png'), $enemy['health']?>/<?=$enemy['max_health']?><br/>
                <div class="npcHealth"><div class="npcHealthLine" style="width: <?=$npcHealth?>%;"></div></div>
                <a href="<?=HOME?>/modules/task/1/index.php?attack" class="link-touch"><?=ico('attack.png')?> Атаковать</a>
                <?php
                $Attack->skillPanel();
                $Attack->readLog($user['id'], 3);
                ?> 
                <div class="head">Противники</div>
                <div class="link-touch">Волк <span class="count">x<?=$countWolf?></span></div>
                <?php
            }
        }
    }
}

require_once '../../../core/foot.php';