129 lines
4.2 KiB
PHP
129 lines
4.2 KiB
PHP
<?php
|
||
if(!defined('GAME')) {
|
||
die();
|
||
}
|
||
/*
|
||
Прием: Второе дыхание
|
||
Парирование 1-го удара + 15 х (лвл противника)
|
||
*/
|
||
$pvr = array();
|
||
if( isset($pr_tested_this) ) {
|
||
$fx_priem = function( $id , $at , $uid, $j_id ) {
|
||
// -- начало приема
|
||
global $u, $btl;
|
||
//
|
||
//Параметры приема
|
||
$pvr['used'] = 0;
|
||
//
|
||
$uid1 = $btl->atacks[$id]['uid1'];
|
||
$uid2 = $btl->atacks[$id]['uid2'];
|
||
if( $uid == $uid2 ) {
|
||
$a = 1;
|
||
$b = 2;
|
||
$u1 = ${'uid1'};
|
||
$u2 = ${'uid2'};
|
||
}elseif( $uid == $uid1 ) {
|
||
$a = 2;
|
||
$b = 1;
|
||
$u1 = ${'uid2'};
|
||
$u2 = ${'uid1'};
|
||
}
|
||
if( isset($at['p'][$a]['priems']['kill'][$uid][$j_id]) ) {
|
||
mysql_query('UPDATE `eff_users` SET `delete` = "'.time().'" WHERE `id` = "'.$btl->stats[$btl->uids[$uid]]['u_priem'][$j_id][3].'" AND `uid` = "'.$uid.'" LIMIT 1');
|
||
unset($btl->stats[$btl->uids[$uid]]['u_priem'][$j_id]);
|
||
}
|
||
//
|
||
// -- конец приема
|
||
return $at;
|
||
};
|
||
unset( $pr_used_this );
|
||
}elseif( isset($pr_used_this) ) {
|
||
$fx_priem = function( $id , $at , $uid, $j_id ) {
|
||
// -- начало приема
|
||
global $u, $btl;
|
||
//
|
||
//Параметры приема
|
||
$pvr['used'] = 0;
|
||
//
|
||
$uid1 = $btl->atacks[$id]['uid1'];
|
||
$uid2 = $btl->atacks[$id]['uid2'];
|
||
if( $uid == $uid2 ) {
|
||
$a = 1;
|
||
$b = 2;
|
||
$u1 = ${'uid1'};
|
||
$u2 = ${'uid2'};
|
||
}elseif( $uid == $uid1 ) {
|
||
$a = 2;
|
||
$b = 1;
|
||
$u1 = ${'uid2'};
|
||
$u2 = ${'uid1'};
|
||
}
|
||
if( $a > 0 ) {
|
||
$j = 0; $k = 0; $wp = 3;
|
||
while($j < count($at['p'][$a]['atack'])) {
|
||
if( !isset($at['p'][$a]['atack'][$j]['priem_used']) && (
|
||
$at['p'][$a]['atack'][$j][1] > 0 )) {
|
||
if( $pvr['used'] == 0 && !isset($at['p'][$a]['priems']['kill'][$uid][$j_id]) ) {
|
||
//
|
||
//Уворот от удара выставляем
|
||
unset($at['p'][$a]['atack'][$j]['yron']);
|
||
$at['p'][$a]['atack'][$j][1] = 6;
|
||
$at['p'][$a]['atack'][$j]['notactic5'] = true;
|
||
//
|
||
//Хиляемся
|
||
$pvr['hp'] = 15*$btl->users[$btl->uids[$u1]]['level'];
|
||
$pvr['hpSee'] = '--';
|
||
$pvr['hpNow'] = floor($btl->stats[$btl->uids[$u2]]['hpNow']);
|
||
$pvr['hpAll'] = $btl->stats[$btl->uids[$u2]]['hpAll'];
|
||
$pvr['hp'] = $btl->hphe( $u1 , $pvr['hp'] , true );
|
||
$pvr['hpTr'] = $pvr['hpAll'] - $pvr['hpNow'];
|
||
if( $pvr['hpTr'] > 0 ) {
|
||
//Требуется хилл
|
||
if( $pvr['hpTr'] < $pvr['hp'] ) {
|
||
$pvr['hp'] = $pvr['hpTr'];
|
||
}
|
||
$pvr['hpSee'] = '+'.$pvr['hp'];
|
||
$pvr['hpNow'] += $pvr['hp'];
|
||
}
|
||
|
||
if( $pvr['hpNow'] > $pvr['hpAll'] ) {
|
||
$pvr['hpNow'] = $pvr['hpAll'];
|
||
}elseif( $pvr['hpNow'] < 0 ) {
|
||
$pvr['hpNow'] = 0;
|
||
}
|
||
//
|
||
$btl->users[$btl->uids[$u2]]['last_hp'] = $pvr['hp'];
|
||
//
|
||
$btl->stats[$btl->uids[$u2]]['hpNow'] = $pvr['hpNow'];
|
||
//
|
||
mysql_query('UPDATE `stats` SET `last_hp` = "'.$btl->users[$btl->uids[$u2]]['last_hp'].'",`hpNow` = "'.$btl->stats[$btl->uids[$u2]]['hpNow'].'" WHERE `id` = "'.$u2.'" LIMIT 1');
|
||
//
|
||
$at['p'][$a]['atack'][$j]['yron']['plog'][] = '$this->deleffm(49,'.(0+$uid).','.$btl->stats[$btl->uids[$uid]]['u_priem'][$j_id][3].');
|
||
$this->priemAddLog( '.$id.', '.$b.', '.$a.', '.$u2.', '.$u1.',
|
||
"Второе дыхание",
|
||
"{tm1} '.$btl->addlt($b , 17 , $btl->users[$btl->uids[$u2]]['sex'] , NULL).' <font Color=#006699><b>'.$pvr['hpSee'].'</b></font> ['.$pvr['hpNow'].'/'.$pvr['hpAll'].']",
|
||
'.($btl->hodID + 1).' );';
|
||
//
|
||
$at['p'][$a]['atack'][$j]['yron']['used'][] = array($j_id,$uid,$pvr['used']);
|
||
$at['p'][$a]['atack'][$j]['yron']['kill'][] = array($j_id,$uid,$pvr['kill']);
|
||
//
|
||
$at['p'][$a]['priems']['kill'][$uid][$j_id] = true;
|
||
$at['p'][$a]['atack'][$j]['priem_used'] = $id;
|
||
//
|
||
mysql_query('UPDATE `eff_users` SET `delete` = "'.time().'" WHERE `id` = "'.$btl->stats[$btl->uids[$uid]]['u_priem'][$j_id][3].'" AND `uid` = "'.$uid.'" LIMIT 1');
|
||
unset($btl->stats[$btl->uids[$uid]]['u_priem'][$j_id]);
|
||
}
|
||
}
|
||
$j++;
|
||
}
|
||
}
|
||
// -- конец приема
|
||
return $at;
|
||
};
|
||
unset( $pr_used_this );
|
||
}else{
|
||
//Действие при клике
|
||
$this->addEffPr($pl,$id);
|
||
}
|
||
unset($pvr);
|
||
?>
|