Файл: attack.php
Строк: 461
<?php
include 'core/sys.php';
include 'core/func_war.php';
include 'core/func_smiles.php';
include 'core/func_time.php';
head('Сражение');
reg();
$m_otvl = rand(1,7);
$stranica ='';
if(!empty($_GET['page'])){
$stranica = '&page='.$_GET['page'];
}
if(isset($_GET['monstr']) and !empty($_GET['monstr']) and isset($_GET['room']) and !empty($_GET['room'])){
$id = int($_GET['monstr']);
$room = int($_GET['room']);
$test_monster = mysql_fetch_assoc(mysql_query("SELECT * FROM `monster` WHERE `id`='".$id."' and `room_id`='".$room."'"));
if(!$test_monster){
echo '<div id="error">Монстр/комната не существуют</div>';
foot();
exit;
}
$name_monster =mysql_fetch_assoc(mysql_query("SELECT * FROM `monster_name` WHERE `id`='".$test_monster['monster_id']."' LIMIT 1"));
$room_name = mysql_fetch_assoc(mysql_query("SELECT * FROM `room` WHERE `id`= '".$room."' LIMIT 1"));
if($test_monster['dead']==1){
echo '<div class="text"><a id="link_button" href="war.php?id='.$room.$stranica.'">'.$room_name['name'].'</a></div>';
echo '<div class="row"><b>'.$name_monster ['name'].'</b> мертв!</div>';
foot();
exit;
}
echo '<div class="text"><a id="link_button" href="war.php?id='.$room.$stranica.'">'.$room_name['name'].'</a></div>';
echo '<div class="name">Монстр: <b>'.$name_monster ['name'].'</b><br>
</div>';
////Тут короче проверка на несколько окон
if($id != $user['mob_id'] and $user['mob_time']+6>time()){
$time_next_m = $user['mob_time']+6-time();
echo '<div id="error">Следующее нападение через: <b>'.Sec2Time($time_next_m).'</b><br><a href="attack.php?monstr='.$id.'&room='.$room.'&page='.$_GET['page'].'">В атаку!</a></div>';
foot();
exit;
}
mysql_query("UPDATE `users` SET `mob_id`='".$id."',`mob_time`='".time()."' WHERE `id`='".$user['id']."'");
//////
/* Прибавляем скилы */
$def_skill = 0;
$str_skill = 0;
if($user['skill_time']+120>time()){
$skill_time_ost = $user['skill_time']+120 - time();
if(!empty($user['skill_bers'])){
$skill_aur = mysql_fetch_assoc(mysql_query("SELECT * FROM `skils_user` WHERE `id`='".$user['skill_bers']."' LIMIT 1"));
echo '<div id="ok">+<b>'.$skill_aur['str'].'</b> силы '.Sec2Time($skill_time_ost).'</div>';
$str_skill = $skill_aur['str'];
}elseif(!empty($user['skill_snaip'])){
$skill_aur = mysql_fetch_assoc(mysql_query("SELECT * FROM `skils_user` WHERE `id`='".$user['skill_snaip']."' LIMIT 1"));
echo '<div id="ok">+<b>'.$skill_aur['str'].'</b> силы '.Sec2Time($skill_time_ost).'</div>';
$str_skill = $skill_aur['str'];
}elseif(!empty($user['skill_soprotiv'])){
$skill_aur = mysql_fetch_assoc(mysql_query("SELECT * FROM `skils_user` WHERE `id`='".$user['skill_soprotiv']."' LIMIT 1"));
echo '<div id="ok">+<b>'.$skill_aur['def'].'</b> защиты '.Sec2Time($skill_time_ost).'</div>';
$def_skill = $skill_aur['def'];
}
}
/* Cкладываем предметы */
require_once 'inc/user_item.php';
$arm = 0;
$arm = $arm+$armor1['defense']+$helmet1['defense']+$shoes1['defense']+$gloves1['defense']+$def_skill;
$defense = $user['defense']+$arm;
/* Считаем оружие */
$weap = mysql_fetch_assoc(mysql_query("SELECT * FROM `inventory` WHERE `id`='".$user['weapon']."' LIMIT 1"));
/* КРепоксть пушки*/
if($user['weapon']>0){
$krepost = mysql_fetch_assoc(mysql_query("SELECT `krepost` FROM `inventory_user` WHERE `invent_id`='".$user['weapon']."' AND `user_id`='".$user['id']."'"));
if($krepost['krepost']==0){ ##Если крепкость == 0 то и атака оружия такая же
$weapon1['strength'] = 0;
echo '<div id="error">Ваше оружие сломалось.Чтобы починить его зайдите в <a href="shtab.php">Штаб</a></div>';
}elseif($krepost['krepost']<76){
$weapon1['strength'] = round($weapon1['strength']/3);
echo '<div id="error">Ваше оружие барахлит.Его атака уменьшилась на 25%. Чтобы починить его зайдите в <a href="shtab.php">Штаб</a></div>';
}elseif($krepost['krepost']<51){
$weapon1['strength'] = round($weapon1['strength']/2);
echo '<div id="error">Ваше оружие барахлит.Его атака уменьшилась на 50%. Чтобы починить его зайдите в <a href="shtab.php">Штаб</a></div>';
}elseif($krepost['krepost']<26){
$weapon1['strength'] = round($weapon1['strength']/4);
echo '<div id="error">Ваше оружие барахлит.Его атака уменьшилась на 75%. Чтобы починить его зайдите в <a href="shtab.php">Штаб</a></div>';
}
}
/*--------*/
$weapon = $user['strength']+$weapon1['strength']+$str_skill;
/*--- Питомец ----*/
if($user['pet_id']>0){
$pet = mysql_fetch_assoc(mysql_query("SELECT `name`,`str` FROM `pets` WHERE `id`='".$user['pet_id']."' LIMIT 1"));
$pet_str = $pet['str']*$user['pet_lvl'];
$pet_ur = rand(uron($pet_str),rand_uron($pet_str ));
$pet_att = array('нанес урон ','ударил на ');
shuffle($pet_att);
$rand_pet = 1;
if($user['pet_lvl']==1){
$rand_pet = rand(1,3);
}elseif($user['pet_lvl']==2){
$rand_pet = rand(1,2);
}
if($rand_pet==1){
if($m_otvl>1){
echo '<div id="ok">Ваш питомец <b>'.$pet['name'].'</b> '.$pet_att[0].' <b>'.$pet_ur .'</b></div>';
$weapon+=$pet_ur;
}
}else{
echo '<div id="error">Ваш питомец <b>'.$pet['name'].'</b> испугался и не стал бить :(</div>';
}
}
/* КРИТ УРОН*/
$crit_us = round($user['level']/3.75);
$crit_rand = rand(1,100);
if($user['clan_critical']>=time()){
$clan = mysql_fetch_assoc(mysql_query("SELECT `level` FROM `clan` WHERE `id`='".$user['clan']."' LIMIT 1"));
$crit_us +=round($clan['level']/1.85);
}
if($crit_rand <=$crit_us){
echo '<div id="error" class="font_75">Критический урон</div>';
$weapon=round($weapon*1.5);
}
/* Скилы*/
if(isset($_GET['skill']) and !empty($_GET['skill'])){
include 'inc/use_skill.php';
}
/* Пули */
$test_puli = mysql_result(mysql_query("SELECT MAX(puli_id) FROM `puli_user` WHERE `user_id`='".$user['id']."' AND `kol`>0"),0);
if($test_puli !=NULL){
mysql_query("UPDATE `puli_user` SET `kol`=`kol`-1 WHERE `user_id`='".$user['id']."' AND `puli_id`='".$test_puli."'");
$puli = mysql_fetch_assoc(mysql_query("SELECT * FROM `puli` WHERE `id`='".$test_puli."'"));
$weapon+=round($weapon*$perc_uron/100);
}
/*Клановое Единство */
if($user['clan'] >0){
$clan = mysql_fetch_assoc(mysql_query("SELECT * FROM `clan` WHERE `id`='".$user['clan']."' LIMIT 1"));
if($clan['str_add']>0){
$weapon+= $weapon*$clan['str_add']/100;
echo '<div class="row">Единство клана дает вам '.$clan['str_add'].'% к атаке</div>';
}
}
#########
/*Штраф за уровень*/
if($test_monster['level']+5 < $user['level']){
$weapon = 1;
echo '<div id="error">Штраф атаки</div>';
}
/* ----- */
$monster_attack = rand(uron($test_monster ['strength']),rand_uron($test_monster ['strength']));
$my_attack = rand(uron($weapon),rand_uron($weapon ));
$block = rand(1,3);
/*ДНК Оборотня*/
$time_dnk = date("H",time());
$arr_dnk_t = array(0,1,2,3,4,5,6,7,8);
if($user['dnk_oboroten']>0 and in_array($time_dnk,$arr_dnk_t)){
$dnk_ob = round($my_attack/5);
$my_attack+=$dnk_ob;
echo '<div class="row"><img src="img/other/dnk_oboroten.png"> ДНК Оборотня прибавляет к урону <b>'.$dnk_ob.'</b> к атаке<br></div>';
}
$test_dead = $test_monster['health']-$my_attack;
if($block==1){
if($monster_attack >= $user['health']){
$lekar='';
if($user['money'] > 200){
mysql_query("UPDATE `users` SET `money`=`money`-100 WHERE `id`='".$user['id']."'");
$lekar = 'За лечение он взял с Вас золото <img src="img/money/money.png" alt=""> 100<br>';
}
echo '<div class="row">Вы были на грани смерти, но лекарь отпоил Вас.<br> '.$lekar.'Через некоторое время вы сможете опять продолжать свой путь...</div>';
mysql_query("UPDATE `users` SET
`health`=0,
`health_resp`=".time()."
WHERE `id`='".$user['id']."'");
foot();
exit;
}
if($my_attack < $test_monster['health']){
echo '<div class="row"><b>'.$name_monster ['name'].'</b> ударил Вас и отнял <span style="color: #d65858;font-weight: bold;">'.$monster_attack.'</span>!</div>';
mysql_query("UPDATE `users` SET
`health`=`health`-".$monster_attack.",
`health_resp`=".time()."
WHERE `id`='".$user['id']."'");
}
}else{
if(uron_po_def($monster_attack,$defense )>$user['health']){
$lekar='';
if($user['money'] > 200){
mysql_query("UPDATE `users` SET `money`=`money`-100 WHERE `id`='".$user['id']."'");
$lekar = 'За лечение он взял с Вас золото <img src="img/money/money.png" alt=""> 100<br>';
}
echo '<div class="row">Вы были на грани смерти, но лекарь отпоил Вас.<br> '.$lekar.'Через некоторое время вы сможете опять продолжать свой путь...</div>';
mysql_query("UPDATE `users` SET
`health`=0,
`health_resp`=".time()."
WHERE `id`='".$user['id']."'");
foot();
exit;
}
if($my_attack < $test_monster['health']){
echo '<div class="row">Вы отразили часть урона.
<b>'.$name_monster ['name'].'</b> ударил Вас и отнял <span style="color: #d65858;font-weight: bold;">'.uron_po_def($monster_attack,$defense ).'</span>!</div>';
mysql_query("UPDATE `users` SET
`health`=`health`-".uron_po_def($monster_attack,$defense ).",
`health_resp`=".time()."
WHERE `id`='".$user['id']."'");
}
}
if($m_otvl == 1){
echo '<div class="row"><b>'.$name_monster ['name'].'</b> отвлек Вас. Вы промазали!</div>';
}else{
if($test_dead <= 0 or $test_monster['health'] <=0 or $my_attack >= $test_monster['health']){
/* Пандора */
$item_pandora= rand(1,3);
$rand_pandora = rand(1,18); ### 7.5 % выпадения пандоры
if($user['level']>10){
$rand_pandora = rand(1,30);
}elseif($user['level']>20){
$rand_pandora = rand(1,45);
}elseif($user['level']>30){
$rand_pandora = rand(1,60);
}
if($rand_pandora==1){
$pandora = mysql_fetch_assoc(mysql_query("SELECT * FROM `pandora` WHERE `user_id`='".$user['id']."' LIMIT 1"));
if(!$pandora){
mysql_query("INSERT INTO `pandora` SET `user_id`='".$user['id']."',`item`='".$item_pandora."'");
}else{
mysql_query("UPDATE `pandora` SET `item`='".$item_pandora."' WHERE `user_id`='".$user['id']."'");
}
echo '<div class="row"><img src="img/other/pandora.png" alt=""> Вы нашли ящик Пандоры.Желаете открыть?<br><a href="pandora.php?yes&room='.$room.'">Да, пожалуй</a><br>
<a href="pandora.php?no&room='.$room.'">Нет, спасибо</a><br></div>';
}
/* Конец пандоры*/
if($user['level']==45){
$test_monster['oput'] =0;
}
$rand_krepost = rand(1,10);
if($rand_krepost == 1 AND $user['weapon'] >0 AND $krepost['krepost']>0){
echo '<div id="error">Крепкость вашего оружия уменьшилась на 1!</div>';
mysql_query("UPDATE `inventory_user` SET `krepost`=`krepost`-1 WHERE `user_id`='".$user['id']."' AND `invent_id`='".$user['weapon']."'");
}
/*Клан */
if($user['clan']>0){
$clan = mysql_fetch_assoc(mysql_query("SELECT * FROM `clan` WHERE `id`='".$user['clan']."' LIMIT 1"));
if($clan['oput_add']>0){
$test_monster['oput']+=round($test_monster['oput']*$clan['oput_add']/100);
}
if($clan['capital']>0){
$test_monster['money']+=round($test_monster['money']*$clan['capital']/100);
}
$oput_clan = round($test_monster['oput']/5);
mysql_query("UPDATE `clan` SET `clan_oput`=`clan_oput`+".$oput_clan." WHERE `id`='".$user['clan']."'");
mysql_query("UPDATE `users` SET `clan_oput`=`clan_oput`+".$oput_clan." WHERE `id`='".$user['id']."'");
echo '<div class="row">Клан +<img src="img/stat/oput.png"> '.$oput_clan.'</div>';
}
/* Если новенький На 2 часа опыт + 50 %*/
if($user['reg_time']+(60*60*2) > time()){
$oput_ych = round($test_monster['oput']*50/100);
$test_monster['oput'] = $test_monster['oput']+$oput_ych;
}
/*Опыт зависит от время нахождения в игре*/
if($user['in_game']>3600){ #1 час
$test_monster['oput']+=round($test_monster['oput']/100*6);
}elseif($user['in_game']>10800){ #3 часа
$test_monster['oput']+=round($test_monster['oput']/100*8);
}elseif($user['in_game']>36000){ #10 часов
$test_monster['oput']+=round($test_monster['oput']/100*12);
}elseif($user['in_game']>54000){ #15 часов
$test_monster['oput']+=round($test_monster['oput']/100*15);
}elseif($user['in_game']>86400){ #24 часов
$test_monster['oput']+=round($test_monster['oput']/100*21);
}
#####################################
/* Ивент снег */
if($set['ivent_sneg']>0){
$rand_sneg = rand(2,5);
if($rand_sneg==2){
$rand_sneg2 = rand(2,5);
mysql_query("UPDATE `users` SET `sneg`=`sneg`+".$rand_sneg2." WHERE `id`='".$user['id']."'");
echo '<div class="row">+ '.$rand_sneg2.' <img src="img/ivent/sneg.png"> снежинки</div>';
}
}
#######################################
echo '<div class="row"><b>'.$name_monster ['name'].'</b> повержен!<br>
Награда: <img src="img/stat/oput.png"> '.$test_monster['oput'].' и <img src="img/money/money.png"> '.$test_monster['money'].'</div>';
mysql_query("UPDATE `monster` SET
`health`=0,
`dead`=1,
`dead_time`=".time()." WHERE `id`='".$test_monster['id']."'");
mysql_query("UPDATE `users` SET
`oput`=`oput`+".$test_monster['oput'].",
`money`=`money`+".$test_monster['money'].",
`monster_kill`=`monster_kill`+1
WHERE `id`='".$user['id']."'");
/* Дроп */
$rand_drop = rand(1,45);
if($test_monster['level'] < $user['level']){
$rand_drop = rand(1,55);
}
if($rand_drop == 1){
$drop = mysql_fetch_assoc(mysql_query("SELECT `img`,`id`,`cat_id` FROM `inventory` WHERE `id`='".$name_monster['drop']."' LIMIT 1"));
$test_drop = mysql_query("SELECT * FROM `inventory_user` WHERE `user_id`='".$user['id']."' AND `invent_id`='".$drop['id']."' LIMIT 1");
echo '<div class="row">Удача улыбнулась Вам и вы нашли предмет <img src="'.$drop['img'].'" alt=""></div>';
if(mysql_num_rows($test_drop)!=0){
mysql_query("UPDATE `inventory_user` SET
`kol`=`kol`+1 WHERE `user_id`='".$user['id']."' AND `invent_id`='".$drop['id']."'");
}else{
mysql_query("INSERT INTO `inventory_user` SET
`user_id`='".$user['id']."',
`invent_id`='".$drop['id']."',
`cat_id`='".$drop['cat_id']."',
`kol`='1'");
}
}
/* Если новенький */
if($user['new_user']==1){
mysql_query("UPDATE `users` SET `new_user`=0 WHERE `id`='".$user['id']."'");
echo '<div class="row"><img src="img/other/npc/Shero.gif" alt=""> <b>Шеро</b><br>Отлично! Продолжай в том же духе. Возможно ты тот самый избранный, который спасет нас.</div>';
}
foot();
exit;
}else{
/* ДНК Вампира */
if($user['aura_vamp']>0){
$aura_vamp = round($my_attack*20/100);
echo '<div class="row"><img src="img/other/aura_vamp.png" alt=""> <b>ДНК Вампира</b> восстанавливает <b>'.$aura_vamp.'</b> HP</div>';
if($user['health']+$aura_vamp>=$user['max_health']){
mysql_query("UPDATE `users` SET `health`=`max_health` WHERE `id`='".$user['id']."'");
}else{
mysql_query("UPDATE `users` SET `health`=`health`+".$aura_vamp." WHERE `id`='".$user['id']."'");
}
}
mysql_query("UPDATE `monster` SET `health`=`health`-".$my_attack." WHERE `id`='".$test_monster['id']."'");
echo '<div class="row"><b>Вы</b> ударили и отняли <b>'.$my_attack.'</b>!</div>';
}
}
#### Вычесляем здоровье
if($m_otvl !=1){
$test_monster['health']-= $my_attack;
$minus_my = '- '.$my_attack;
}else{
$minus_my='промах';
}
if($block !=1){
$user['health']-=uron_po_def($monster_attack,$defense );
$minus_monster = '- '.uron_po_def($monster_attack,$defense );
}else{
$user['health']-=$monster_attack;
$minus_monster = '- '.$monster_attack;
}
if($user['aura_vamp']>0){
$user['health']+=$aura_vamp;
}
### Проценты здоровья
$perc_m_health =round($test_monster['health']/$test_monster['max_health']*100);
$perc_us_health = round($user['health']/$user['max_health']*100);
####
echo '<div class="name">Здоровье монстра: <font color="#FF6738">'.$test_monster['health'].'</font>/<font color="#FF6738">'.$test_monster['max_health'].'</font> <span id="right" style="color: #c12b01;font-weight: bold;">'.$minus_my.'</span>
<div class="health_attack"><div class="health_attack2" style="width: '.$perc_m_health.'%;"></div></div>
Мое здоровье: <font color="#FF6738">'.$user['health'].'</font>/<font color="#FF6738">'.$user['max_health'].'</font> <span id="right" style="color: #c12b01;font-weight: bold;">'.$minus_monster.'</span>
<div class="health_attack"><div class="health_attack2" style="width: '.$perc_us_health.'%;"></div></div>
</div>';
echo '<div class="row"><a id="link_button" href="attack.php?monstr='.$id.'&room='.$room.$stranica.'">Ударить</a>';
echo '<a id="link_button" href="inventory.php?monstr='.$id.'&room='.$room.'">Инвентарь</a>';
if($user['clan']>0){
echo '<a id="link_button" href="clan.php?clan='.$user['clan'].'">Клан</a>';
}
echo '<br>';
if($user['level'] >=5){
$skill_q = mysql_query("SELECT * FROM `skils_user` WHERE `user_id`='".$user['id']."'");
$skills_ur = array(1,3,4,6,7,9,10,12,13,15);
$skills_hp = array(2,5);
$skills_str = array(8,11);
while($row_skill = mysql_fetch_assoc($skill_q)){
if(in_array($row_skill['skil_id'],$skills_ur)){
$skill_delaet = 'атк:'.$row_skill['uron'];
}elseif(in_array($row_skill['skil_id'],$skills_hp)){
$skill_delaet = 'HP:+'.$row_skill['hp'];
}elseif(in_array($row_skill['skil_id'],$skills_str)){
$skill_delaet = 'сил:+'.$row_skill['str'];
}elseif($row_skill['skil_id']==14){
$skill_delaet = 'защ:+'.$row_skill['def'];
}
echo '<a href="attack.php?monstr='.$id.'&room='.$room.'&skill='.$row_skill['skil_id'].$stranica.'">
<img src="img/skill/'.$row_skill['skil_id'].'.png" alt=""></a> <small>[MP:'.$row_skill['mana'].'|'.$skill_delaet.']</small> ';
}
}
if($user['chat_on']==1){
$sql_chat = mysql_query("SELECT * FROM `chat` ORDER BY `time` DESC LIMIT 6");
echo '</div><div class="name">Чат</div><div class="row"><form action="chat.php?add&monstr='.$id.'&room='.$room.$stranica .'" method="post">
<textarea name="text"></textarea><br>
<input type="submit" value="Отправить"></form>
</div><div class="row">';
while($chat = mysql_fetch_assoc($sql_chat)){
$ank = mysql_fetch_assoc(mysql_query("SELECT `login`,`id`,`admins`,`level` FROM `users` WHERE `id`='".$chat['user_id']."' LIMIT 1"));
$nick = '<a href="pers.php?ank='.$ank['id'].'">'.$ank['login'].'</a>';
if($ank['admins']>0){
$nick = '<a href="pers.php?ank='.$ank['id'].'"><span style="color: #0f7b8c; font-weight: bold;text-shadow: 1px 0 8px #0f7b8c;">'.$ank['login'].'</span></a>';
}
echo '<small>'.$nick.'('.$ank['level'].') ['.clock($chat['time']).'] '.smile($chat['text']).'</small><br>';
}
echo '</div>';
}
echo '</div>';
}else{
echo '<div id="error">Монстр/комната не выбраны</div>';
}
foot();
?>