battles/magic/battack.php

197 lines
9.9 KiB
PHP
Raw Normal View History

2018-01-28 16:40:49 +00:00
<?php
$us = mysql_fetch_array(mysql_query("SELECT *,(select `id` from `online` WHERE `real_time` >= ".(time()-60)." AND `id` = users.`id`) as `online` FROM `users` WHERE `login` = '{$_POST['target']}' LIMIT 1;"));
$owntravma = mysql_fetch_array(mysql_query("SELECT * FROM `effects` WHERE `owner` = ".$us['id']." AND (type=13 OR ND type=12 OR type=14);"));
$magic = mysql_fetch_array(mysql_query("SELECT `chanse` FROM `magic` WHERE `id` = '24' ;"));
$raid_t=mysql_fetch_array(mysql_query("SELECT * FROM variables WHERE var='raid_on_status' limit 1;"));
$hm=mysql_fetch_array(mysql_query("SELECT `value` FROM `variables` WHERE `var` = 'haos_match' LIMIT 1;"));
$hm=unserialize($hm['value']);
$us_b=mysql_fetch_array(mysql_query("SELECT `type`,`open` FROM `battle` WHERE `id`='{$us['battle']}';"));
$forb_battle=array();
if($raid_t['value']>0)
$forb_battle[]=$raid_t['value'];
foreach($hm as $lv=>$num)
if($num>0)
$forb_battle[]=$num;
if ($user['intel'] >= 10) {
$int=$magic['chanse'] + ($user['intel'] - 10)*3;
if ($int>98){$int=99;}
}
else {$int=0;}
if ($user['battle'] > 0) {
echo "Не в бою...";
}
elseif (!$us['online']) {
echo "Персонаж не в игре!";
} elseif ($us_b['type']==3 || $us_b['type']==5) {
echo "Запрещено входить в хаотический бой!";
} elseif ($us['battle']>0 && $us_b['open']==0) {
echo "Бой закрыт для вмешательства!";
} elseif ($us['align']==2.99) {
echo "Не атакуйте Администратора!";
} elseif ($user['zayavka'] > 0) {
echo "Вы ожидаете поединка...";
} elseif ($owntravma['id'] && !$us['battle']) {
echo "Персонаж тяжело травмирован...";
} elseif ($user['klan'] != '' && ($user['klan'] == $us['klan'])) {
echo "Чтите честь ваших сокланов.";
} elseif ($user['align'] >1 && $user['align'] <2 && $us['align'] >1 && $us['align'] <2) {
echo "Чтите честь братьев.";
} elseif ($user['room'] != $us['room']) {
echo "Персонаж в другой комнате!";
} elseif ($us['room'] == 31 || $us['room'] == 46 || $us['room'] == 47 || $us['room'] == 48 || $us['room'] == 49 ||$us['room'] == 600 || $us['room'] == 601 || $us['room'] == 45 || $us['room'] == 602 || $us['room'] == 43 || $us['room'] ==45) {
echo "Нападения в этой локации запрещены!";
} elseif ($us['align'] == 2.9) {
echo "Нападения на Ангела строго запрещено!";
} elseif ($us['align'] == 8.11) {
echo "Нападение на Гвардейца Света запрещено!";
} elseif ($us['align'] == 8.21) {
echo "Нападение на Гвардейца Тьмы запрещено!";
} elseif ($us['align'] == 8.31) {
echo "Нападение на Гвардейца Нейтралитета запрещено!";
} elseif ($us['align'] >1 && $us['align'] <2) {
echo "Нападение на Паладинов запрещено!";
} elseif ($us['align'] == 4.99) {
echo "Нападение на Комментатора запрещено!";
} elseif ($us['level'] < 1) {
echo "Новички находятся под защитой Мироздателя!";
} elseif ($us['hp'] < $us['maxhp']*0.33 && !$us['battle']) {
echo "Жертва слишком слаба!";
} elseif ($user['hp'] < $user['maxhp']*0.33) {
echo "Вы слишком ослаблены для нападения!";
} elseif ($us['hp'] < 1 && $us['battle']) {
echo "Вы не можете напасть на погибшего!";
} elseif (in_array($us['battle'],$forb_battle)) {
echo "Вы не можете вступать в бой за силы Хаоса!!";
} elseif (($us['room']==101)&&($us['battle']=0)) {
echo "Не вам начинать сражение Тьмы и Света!";
} elseif (($us['room']==101)&&($us['battle']>0) && ($user['align']!=2.1 && $user['align']!=2.2 && $user['align']!=6 && $user['align']!=3 && $user['align']!=2)) {
echo "Вы не можете вступить в противостояние Тьмы и Света!";
} elseif ((($us['room']==101)&&($us['battle']>0))&&(((($user['align']==3)||($user['align']==2.2)) && ($us['align']!=6 && $us['align']!=2.1)) || ((($user['align']==6)||($user['align']==2.1)) && ($us['align']!=3 && $us['align']!=2.2)))) {
echo "Не атакуйте своих союзников!";
} elseif (rand(1,100) < $int) {
if ($user['sex'] == 1) {$action="напал";} else {$action="напала";}
if ($user['align'] > '2' && $user['align'] < '3') {
$angel="Ангел";
} elseif ($user['align'] > '1' && $user['align'] < '2') {
$angel="Персонаж";
}
$jert = mysql_fetch_array(mysql_query("SELECT * FROM `users` WHERE `login` = '{$_POST['target']}' LIMIT 1;"));
if($jert['id']!=$user['id']) {
addch("<img src=i/magic/attackb.gif> <B>{$user['login']}</B>, применив магию нападения, внезапно ".$action." на &quot;{$_POST['target']}&quot;");
addchp ('<font color=red>Внимание!</font> На вас '.$action.' <B>'.$user['login'].'</B>.<BR>\'; top.frames[\'main\'].location=\'fbattle.php\'; var z = \' ','{[]}'.nick::id($jert['id'])->short().'{[]}');
2018-01-28 16:40:49 +00:00
//destructitem($row['id']);
$bet=1;
//арх
if($jert['id'] > _BOTSEPARATOR_) {
$arha = mysql_fetch_array(mysql_query ('SELECT * FROM `bots` WHERE `prototype` = '.$jert['id'].' LIMIT 1;'));
$jert['battle'] = $arha['battle'];
$jert['id'] = $arha['id'];
$bot=1;
}
if($jert['battle'] > 0) {
//вмешиваемся
$bd = mysql_fetch_array(mysql_query ('SELECT * FROM `battle` WHERE `id` = '.$jert['battle'].' LIMIT 1;'));
$battle = unserialize($bd['teams']);
$ak = array_keys($battle[$jert['id']]);
$battle[$user['id']] = $battle[$ak[0]];
foreach($battle[$user['id']] as $k => $v) {
$battle[$user['id']][$k] =array(0,0,time());
$battle[$k][$user['id']] = array(0,0,time());
}
$t1 = explode(";",$bd['t1']);
// проставляем кто-где
if (in_array ($jert['id'],$t1)) {
$ttt = 2;
} else {
$ttt = 1;
}
addch ("<b>".nick::id($user['id'])->short()."</b> вмешался в <a href=logs.php?log=".$id." target=_blank>поединок »»</a>. ",$user['room']);
2018-01-28 16:40:49 +00:00
//mysql_query('UPDATE `logs` SET `log` = CONCAT(`log`,\'<span class=date>'.date("H:i").'</span> '.nick::id($user['id'])->short().' вмешался в поединок!<BR>\') WHERE `id` = '.$jert['battle'].'');
2018-01-28 16:40:49 +00:00
addlog($jert['battle'],'<span class=date>'.date("H:i").'</span> '.nick::id($user['id'])->short().' вмешался в поединок!<BR>');
2018-01-28 16:40:49 +00:00
mysql_query('UPDATE `battle` SET `teams` = \''.serialize($battle).'\', `t'.$ttt.'`=CONCAT(`t'.$ttt.'`,\';'.$user['id'].'\') WHERE `id` = '.$jert['battle'].' ;');
mysql_query("UPDATE users SET `battle` =".$jert['battle'].",`zayavka`=0 WHERE `id`= ".$user['id']);
header("Location:fbattle.php");
//die("<script>location.href='fbattle.php';</script>");
}
else
{
// начинаем бой
// если чел в заявке, выбиваем его
if($jert['zayavka']) {
$fict1 = mysql_fetch_array(mysql_query("SELECT * FROM `zayavka` WHERE `team1` LIKE '{$jert['id']};%' OR `team1` LIKE '%;{$jert['id']};%' LIMIT 1;"));
$fict2 = mysql_fetch_array(mysql_query("SELECT * FROM `zayavka` WHERE `team2` LIKE '{$jert['id']};%' OR `team2` LIKE '%;{$jert['id']};%' LIMIT 1;"));
if($fict1) { $team=1; }
elseif($fict2) { $team=2; }
mysql_query("UPDATE `users` SET `zayavka` = '' WHERE `id` = {$jert['id']} LIMIT 1;");
$z = mysql_fetch_array(mysql_query("SELECT `team{$team}` FROM `zayavka` WHERE `id`=".$jert['zayavka'].";"));
$teams = str_replace($jert['id'].";","",$z[0]);
mysql_query("UPDATE `zayavka` SET team{$team} = '{$teams}' WHERE id = {$jert['zayavka']};");
}
//arch
if($bot) {
mysql_query("INSERT INTO `bots` (`name`,`prototype`,`battle`,`hp`) values ('Архивариус','83','','".$jert['hp']."');");
$jert['id'] = mysql_insert_id();
}
$teams = array();
$teams[$user['id']][$jert['id']] = array(0,0,time());
$teams[$jert['id']][$user['id']] = array(0,0,time());
$sv = array(3,4,5);
//$tou = array_rand($sv,1);
mysql_query("INSERT INTO `battle`
(
`id`,`coment`,`teams`,`timeout`,`type`,`status`,`t1`,`t2`,`to1`,`to2`,`blood`
)
VALUES
(
NULL,'','".serialize($teams)."','".$sv[rand(0,2)]."','6','0','".$user['id']."','".$jert['id']."','".time()."','".time()."','1'
)");
$id = mysql_insert_id();
// апдейтим врага
if($bot) {
mysql_query("UPDATE `bots` SET `battle` = {$id} WHERE `id` = {$jert['id']} LIMIT 1;");
} else {
mysql_query("UPDATE `users` SET `battle` = {$id} WHERE `id` = {$jert['id']} LIMIT 1;");
}
// создаем лог
$rr = "<b>".nick::id($user['id'])->full(1)."</b> и <b>".nick::id($jert['id'])->full(1)."</b>";
addch ("<a href=logs.php?log=".$id." target=_blank>Бой</a> между <B><b>".nick::id($user['id'])->short()."</b> и <b>".nick::id($jert['id'])->short()."</b> начался. ",$user['room']);
2018-01-28 16:40:49 +00:00
//mysql_query("INSERT INTO `logs` (`id`,`log`) VALUES('{$id}','Часы показывали <span class=date>".date("Y.m.d H.i")."</span>, когда ".$rr." бросили вызов друг другу. <BR>');");
addlog($id,"Часы показывали <span class=date>".date("Y.m.d H.i")."</span>, когда ".$rr." бросили вызов друг другу. <BR>");
mysql_query("UPDATE users SET `battle` ={$id},`zayavka`=0 WHERE `id`= {$user['id']} OR `id` = {$jert['id']}");
header("Location:fbattle.php");
//die("<script>location.href='fbattle.php';</script>");
}
} else {
echo '<font color=red>Мазохист?...</font>';
}
//$bet=1;
} else {
echo "Свиток рассыпался в ваших руках...";
$bet=1;
}