Вход Регистрация
Файл: _gladiators2_/gladiators2/gladiators/gladiators/system/modules/mod_battle.php
Строк: 63
<?

if( $battle->winner && $myself->battle_id==$battle->id )
{
 
$result_battle = "";

 if(
$battle->type=="bot")
 {
  
$r = str_replace(";","",$battle->side2);
  @
mysql_query("delete from temp where id='".$r."'");
 }

 
$result_battle .= "<center><span style='color:darkred;font-weight:bold'>Бой закончен!</span><br>";

 
preg_match_all("/^".$_SESSION["id"]."=([0-9]+)/",$battle->hp,$myhp);

 if(!
$myhp[0][0])
  
preg_match_all("/;".$_SESSION["id"]."=([0-9]+)/",$battle->hp,$myhp);

 
$myhp = explode("=",$myhp[0][0]);
 
$myhp = round($myhp[1]);

 
$all_level = 0;

 if(
$battle->type=="bot")
  
$sr_level = $myself->level;
 else
 {
  
$row_opp = explode(";",$battle->$opp_side);

  for(
$i=0;$i<=count($row_opp)-2;$i++)
  {
   if(!
$i)
    
$q = " id='".$row_opp[$i]."'";
   else
    
$q .= " or id='".$row_opp[$i]."'";
  }

  
$result_us = @mysql_query("select level from users where ".$q);
  
$num_us = @mysql_num_rows($result_us);

  for(
$i=1;$i<=$num_us;$i++)
  {
   
$row_us = @mysql_fetch_array($result_us);
   
$all_level += $row_us[level];
  } 

  
$sr_level = round($all_level/$num_us);
 }

 
// Количество выдаваемого опыта в зависимости от типа боя
     
 
if($sr_level < 10)
 {
     
$battle_w = $battle->battle_w;
     
    if( 
$battle->battle_w=="arm" ) {

        
$res_arm = mysql_query("select count(*) from bag where owner='".$_SESSION["id"]."' and dressed='y'");
        
$row_arm = mysql_fetch_array($res_arm);

        if( !
$row_arm )
            
$battle_w = "fisticuffs";
      }
  
      
$res_exp = @mysql_query("select ".$battle_w." from exptable where level='".$sr_level."'");
     
$row_exp = @mysql_fetch_array($res_exp);
  
      
$exp = $row_exp[$battle_w];

      if(
$sr_level < 5)
           
$gold = 1;
      else
           
$gold = 2;
 }
 else
 {
  
$battle_w = $battle->battle_w;

  if( 
$battle->battle_w=="arm" ) {

    
$res_arm = mysql_query("select count(*) from bag where owner='".$_SESSION["id"]."' and dressed='y'");
    
$row_arm = mysql_fetch_array($res_arm);

    if( !
$row_arm )
        
$battle_w = "fisticuffs";
  }
  
$res_exp = @mysql_query("select ".$battle_w." from exptable where level='".$sr_level."'");
  
$row_exp = @mysql_fetch_array($res_exp);

  if(
$sr_level < 20)
   
$k = 1;
  elseif(
$sr_level < 30)
   
$k = 2;      
  elseif(
$sr_level < 40)
   
$k = 3;
  else
   
$k = 4;

  
$gold = ($myhp * $k) / 100;

  
$exp = round($row_exp[$battle_w] * $myhp);

 }
    
 if(
$battle->type=="bot" && $sr_level < 10)
 {
  
$exp = round($exp/2);
  
$gold = 0;
 }
 elseif(
$battle->type=="bot" && $sr_level < 20) 
 {
  
$exp = round($exp/4);
  
$gold = 0;
 }

 if(
$battle->winner==$myside)
  
$sec_query = ",victory=victory+1 ";
 elseif(
$battle->winner=="noone")
 {
  
$gold = 0;
  
$exp = round($exp / 2);
  
$sec_query = ",noone=noone+1 ";
 }
 else
 {
  
$exp = 0;
  
$gold = 0;
  
$sec_query = ",lose=lose+1 ";
 }

 if(
$myself->bonus_exp)
    
$exp += round(($exp*$myself->bonus_exp)/100);

 if( 
$exp )
 {
  
$plus_ups=0;

  
$result_exptable = @mysql_query("select * from exptable where id > $myself->num_up and exp<=$myself->exp+".$exp);
  
$num_exptable = @mysql_num_rows($result_exptable);

  for(
$i=1;$i<=$num_exptable;$i++)
  {
   
$row_exptable = @mysql_fetch_array($result_exptable);

   
$new_level = $row_exptable["level"];
   
$plus_ups += $row_exptable["ups"];
   
$num_up = $row_exptable["id"];
  }

  if(!
$new_level)
   
$new_level = $myself->level;

  if(!
$num_up)
   
$num_up = $myself->num_up;

  
$sec_query .= ",level='".$new_level."'";
  
$sec_query .= ",money=money+".$gold."";
  
$sec_query .= ",ups=ups+".$plus_ups."";
  
$sec_query .= ",exp=exp+".$exp."";
  
$sec_query .= ",num_up='".$num_up."'";

  if( 
$myself->level!=$new_level && $new_level%2=="" )
    
$sec_query .= ",spec_free=spec_free+1";
 }

 @
mysql_query("update users set battle_id='0'".$sec_query." where id='".$myself->id."'");

 
$result_battle .= "<br>Всего вами нанесено: <b>".$myhp."</b> HP. <br>";

 if(
$myself->bonus_exp)
    
$result_battle .= "Бонус прокачки: +".$myself->bonus_exp."% опыта.<br>";

 
$result_battle .= "Получено опыта: ".$exp."<br>";
 
$result_battle .= "Получено золота: ".ToFloat($gold,2)."<br><br>";

 
$result_battle .= "<input type=image src='".$config["img_server"]."/b_back.gif' value='вернуться' onclick='location.href="battle.php"'></center>";
}
?>
Онлайн: 1
Реклама