Вход Регистрация
Файл: wenr.online/app/game/dragons_fight.php
Строк: 63
<?php

if (!$user->isAuth()) {
    
redirect('/');
    exit;
}

if(
$user->get()->lvl 7){
    
Notif :: error('Доступно только с 7-го уровня','/game');
    exit;
}

   
$rolls $db->prepare('select * from `bag` where `user` = ? and `type` = ? limit 4');
   
$rolls -> execute([$user->get()->user_id,'rolls']);
   
$rolls $rolls -> fetchAll();

    
$mob $db->prepare('select * from dragons where id = ?');
    
$mob -> execute([Clean :: int($_GET['id'])]);
    
$mob $mob -> fetch(PDO :: FETCH_OBJ);
    
    if(!isset(
$mob->id)){
        
redirect('/dragons');
        exit;
    }
    
    
$mobArray $_SESSION['dragons'];
     
     if(!isset(
$mobArray['mob']) or $mobArray['mob'] != $mob->id){
         
$session = ['mob'  => $mob->id'hp'   =>  $mob->hp];
         
$_SESSION['dragons'] = $session;
         
redirect('/dragons/fight?id='.$mob->id);
         exit;
     }
    
    if(isset(
$_GET['attack'])){
        
        if(
$user->get()->hp 2){
            
Notif :: error('Слишком мало здоровья для нападения','/dragons/fight?id='.$mob->id);
            exit;
        }
        
          
$magic $db->prepare('select * from `bag` where `id` = ? and `user` = ?');
        
$magic -> execute([Clean :: int($_GET['rolls']),$user->get()->user_id]);
        
$magic $magic -> fetch(PDO :: FETCH_OBJ);
        
                
$dop_uron 0;
                
        
$fight_skill $user->get()->one_handed+$user->get()->two_handed+$user->get()->bow+$user->get()->crossbow;
                
        if(
$figth_skill 200)    $dop_uron .= rand(1,$fight_skill);
                
        if(
$magic->mana $user->get()->mana and isset($magic->id)){
            
Notif :: error('Нехватает маны для использования свитка','/dragons/fight?id='.$mob->id);
            exit;
        }
        
        if(isset(
$magic->force)) $dop_uron .= $magic->force;
        
        
        
        
$uron = ['user' => $user->get()->force+$user->get()->dex+$dop_uron
                 
'mob'  =>  $mob->force+$mob->dex];
        
$hp_mob $mobArray['hp']-$uron['user'];
        
$hp_user $user->get()->hp-$uron['mob'];
        if(
$hp_user <= 0$hp_user 0;
        
$udar_mob $db->prepare('update `users` set `hp` = ? where `user_id` = ?');
        
$udar_mob -> execute([$hp_user,$user->get()->user_id]);
        
          if(isset(
$magic->id)){
             
$del_magic $db->prepare('DELETE FROM `bag` WHERE `id` = ?');
             
$del_magic -> execute([$magic->id]);
         }
         
        if(
$hp_user == 0){
            unset(
$_SESSION['mob']);
            
$sql $db->prepare('update `users` set `exp` = ? where `user_id` = ?');
            
$sql -> execute([$user->get()->exp+1,$user->get()->user_id]);
            
Notif :: message($mob->name.' победил. Награда: <img src="/public/assets/images/xp.png"> 1','/dragons/fight?id='.$mob->id);
            exit;
            
        }
        
        if(
$hp_mob 1){
            unset(
$_SESSION['mob']);
            
$sql $db->prepare('update `users` set `exp` = ? where `user_id` = ?');
            
$sql -> execute([$user->get()->exp+$mob->exp,$user->get()->user_id]);
            
$kill $db->prepare('insert into `kills` (`user`,`dragon`) values (?,?)');
            
$kill -> execute([$user->get()->user_id,$mob->id]);
            unset(
$_SESSION['dragons']);
            
Notif :: message('Вы убили дракона «'.$mob->name.'» Награда: <img src="/public/assets/images/xp.png"> '.$mob->exp,'/dragons/fight?id='.$mob->id);
            exit;
        }else{
        
$session = ['mob'  => $mob->id'hp'   =>  $hp_mob];
         
$_SESSION['dragons'] = $session;
         
Notif :: message('Вы нанесли '.$uron['user'].' урона  дракону «'.$mob->name.'»','/dragons/fight?id='.$mob->id);
         exit;
        }
      
    }
    
    
    function 
hp_pr($hp,$max_hp){
        
        return 
intval($hp/$max_hp*100);
    }
    
    
    function 
button_name($hp,$max_hp,$name){
        if(
$hp $max_hp) return 'Добить «'.$name.'»';
        else
        return 
'Атаковать';
    }
     
    
    echo 
$template->render('game.dragons_fight', ['mob'   =>  $mob'hp'   =>  $mobArray['hp'],'rolls'=>$rolls]);
Онлайн: 0
Реклама