From 3df3f1b4d7ef900bfa76078e28f7840ae44fc0e9 Mon Sep 17 00:00:00 2001
From: Ivor Barhansky <me@lopar.space>
Date: Fri, 9 Feb 2024 20:26:54 +0200
Subject: [PATCH] refactor

---
 _incl_data/class/priem/277.php | 309 +++++++++++++++------------------
 1 file changed, 136 insertions(+), 173 deletions(-)

diff --git a/_incl_data/class/priem/277.php b/_incl_data/class/priem/277.php
index e5b1311c..675c10e5 100644
--- a/_incl_data/class/priem/277.php
+++ b/_incl_data/class/priem/277.php
@@ -1,181 +1,144 @@
 <?php
-if(!defined('GAME')) {
-	die();
+if (!defined('GAME')) {
+    die();
 }
 /*
 	Прием: €ней 10
 	Следующий удар противника по вам нанесет на 25% меньше урона
 */
-$pvr = array();
-if( isset($pr_momental_this)) {
-	$fx_moment = function(  $uid, $enemy, $j_id, $yron, $profil ) {
-		if(!isset($btl->stats[$btl->uids[$uid]]['um_priem'][$j_id])) {
-			global $u, $btl;
-			$prv['color2'] = $btl->mcolor[$btl->mname['вода']];
-			$yron = $yron*0.80;
-			$btl->priemAddLogFast( $uid, 0, "<font color^^^^#".$prv['color2']."> Иней [10]</font>",
-				'{tm1} '.$btl->addlt(1 , 21 , $btl->users[$btl->uids[$uid]]['sex'] , NULL).'',
-			0, time() );
-			if( $yron < 0 ) {
-				$yron = 1;
-			}
-			$btl->stats[$btl->uids[$uid]]['um_priem'][$j_id] = true;
-		}
-		return round($yron);
-	};
-}elseif( isset($pr_tested_this) ) {
-		$fx_priem = function(  $id , $at , $uid, $j_id ) {
-		// -- начало приема
-		global $u, $btl;
-		$prv['color2'] = $btl->mcolor[$btl->mname['вода']];	
-		//
-		//Параметры приема
-		$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, $priem;
-		$prv['color2'] = $btl->mcolor[$btl->mname['вода']];	
-		//
-		//Параметры приема
-		$pvr['used'] = 0;
-		//$prv['j_priem'] = $btl->stats[$btl->uids[$u1]]['u_priem'][$j_id][0];
-		//$prv['priem_th'] = $btl->stats[$btl->uids[$u1]]['effects'][$prv['j_priem']]['id'];
-		//			
-		$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;
-			//
-			$testtum=mysql_fetch_array(mysql_query('SELECT * FROM `eff_users` WHERE `v1` = "priem" AND `v2` = 273 AND `delete` = 0 AND `uid` = "'.$u2.'" LIMIT 1;'));
-			if(!isset($testtum['id']))
-			{
-			while($j < count($at['p'][$a]['atack'])) {
-				if( isset($at['p'][$a]['atack'][$j]['yron']) && (
-				$at['p'][$a]['atack'][$j][1] == 1 ||
-				$at['p'][$a]['atack'][$j][1] == 4 ||
-				$at['p'][$a]['atack'][$j][1] == 5 )) {
-					//if( !isset($at['p'][$a]['priems']['kill'][$uid][$j_id]) ) {
-						//
-						$at['p'][$a]['atack'][$j]['yron']['y'] = round($at['p'][$a]['atack'][$j]['yron']['y']*0.70);
-						$at['p'][$a]['atack'][$j]['yron']['r'] = round($at['p'][$a]['atack'][$j]['yron']['r']*0.70);
-						$at['p'][$a]['atack'][$j]['yron']['k'] = round($at['p'][$a]['atack'][$j]['yron']['k']*0.70);
-						$at['p'][$a]['atack'][$j]['yron']['m_k'] = round($at['p'][$a]['atack'][$j]['yron']['m_k']*0.70);
-						$at['p'][$a]['atack'][$j]['yron']['m_y'] = round($at['p'][$a]['atack'][$j]['yron']['m_y']*0.70);
-						//
-						if( $at['p'][$a]['atack'][$j]['yron']['y'] < 1 ) { $at['p'][$a]['atack'][$j]['yron']['y'] = 1; }
-						if( $at['p'][$a]['atack'][$j]['yron']['r'] >= 0 ) { $at['p'][$a]['atack'][$j]['yron']['r'] = -1; }
-						if( $at['p'][$a]['atack'][$j]['yron']['k'] < 1 ) { $at['p'][$a]['atack'][$j]['yron']['k'] = 1; }
-						if( $at['p'][$a]['atack'][$j]['yron']['m_k'] < 1 ) { $at['p'][$a]['atack'][$j]['yron']['m_k'] = 1; }
-						if( $at['p'][$a]['atack'][$j]['yron']['m_y'] < 1 ) { $at['p'][$a]['atack'][$j]['yron']['m_y'] = 1; }
-						//	
-						
-						//if ($at['p'][$a]['atack'][$j][1] != 5){
-						/*
-						if( $pvr['used'] == 0 ) {
-							$pvr['color'] = '0000FF';
-							$pvr['color2'] = '0000FF';
-							//$pvr['hp'] = round(($at['p'][$a]['atack'][$j]['yron']['y']*0.15));
-							$pvr['hp'] = rand(210,314);
-							//$pvr['hppovar'] = -$pvr['hp'];
-							//Используем проверку на урон приемов
-							//$pvr['hp'] = $btl->testYronPriem( $u2, $u1, 12, $pvr['hp'],5, true );
-							$pvr['hp'] = $btl->testYronPriem( $u2, $u1, 12, $pvr['hp'],-1, true, true, 1 );	
-							if( $pvr['hp'] < 0 ) {
-								$pvr['hp'] = 0;
-							}
-							$pvr['hpNow'] = floor($btl->stats[$btl->uids[$u1]]['hpNow']);
-							$pvr['hpAll'] = $btl->stats[$btl->uids[$u1]]['hpAll'];
-							$pvr['hpNow'] -= $pvr['hp'];
-							if( $pvr['hpNow'] < 0 ) {
-								$pvr['hpNow'] = 0;
-							}
-							$pvr['hpSee'] = '--';
-							if( $pvr['hp'] > 0 ) {
-								$pvr['hpSee'] = '-'.$pvr['hp'];
-							}
-							$btl->priemYronSave($u2,$u1,$pvr['hp'],0);
-										
-							if (mysql_query('UPDATE `stats` SET `hpNow` = "'.$pvr['hpNow'].'" WHERE `id` = "'.$u1.'" AND `hpNow` > 0 LIMIT 1'))
-							{
-							$btl->stats[$btl->uids[$u1]]['hpNow'] = $pvr['hpNow'];
-							$btl->users[$btl->uids[$u1]]['hpNow'] = $pvr['hpNow'];
-							$btl->users[$btl->uids[$u1]]['last_hp'] = -$pvr['hp'];		
-							$btl->a_save_stats[$btl->uids[$u1]];
-							$btl->save_stats[$btl->uids[$u1]];
-							$at['p'][$a]['atack'][$j]['yron']['plog'][] = '$this->priemAddLog( '.$id.', '.$b.', '.$a.', '.$u2.', '.$u1.',
-								"<font color^^^^#'.$pvr['color2'].'> Иней [10]</font>",
-								"{tm1} {u2} получил урон от эффекта &quot;{pr}&quot;. <font Color='.$pvr['color'].'><b '.$btl->maginfoattack($u2,$u1,3).'>'.$pvr['hpSee'].'</b></font> ['.$pvr['hpNow'].'/'.$pvr['hpAll'].']",
-							'.($btl->hodID + 1).' );';
-							}
-						}*/
-						//}
-						//
-						//$priem->addPriem($u1,279,'|add_yzm3=-'.floor($btl->users[$btl->uids[$u2]]['level']*1.25).'',2,77,2,$u2,100,'инейкасание',0,0,1);
-						//$priem->addPriem($u1,278,'|add_yzm3=-'.($btl->users[$btl->uids[$u2]]['level']).'',2,77,2,$u2,100,'инейкасание',0,0,1);
-						$pvr['x5'] = mysql_fetch_array(mysql_query('SELECT `id`,`x` FROM `eff_users` WHERE `uid` = "'.$u1.'" AND `v2` = 25 AND `delete` = 0 LIMIT 1'));
-						if( $pvr['x5']['x'] < 5 ) {
-							$priem->addPriem($u1,25,'|add_zm3=-20',2,77,-1,$u2,100,'цельводы',0,0,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;
-					//}
-				}
-				$j++;
-			}
-			}
-		}
-		// -- конец приема
-		return $at;
-	};
-	unset( $pr_used_this );
-}else{
-	$prv['color2'] = $btl->mcolor[$btl->mname['вода']];
-	//Действие при клике
-	$this->addEffPr($pl,$id);
-	$prv['text'] = '{tm1}'.$btl->addlt(1 , 21 , $btl->users[$btl->uids[$u->info['id']]]['sex'] , NULL).'.';
-	$btl->priemAddLog( $id, 1, 2, $u->info['id'], $u->info['id'],
-		'<font color^^^^#'.$prv['color2'].'> Иней [10]</font>',
-		$prv['text'],
-		($btl->hodID + 1)
-	);
+$pvr = [];
+if (isset($pr_momental_this)) {
+    $fx_moment = function ($uid, $enemy, $j_id, $yron, $profil) {
+        if (!isset($btl->stats[$btl->uids[$uid]]['um_priem'][$j_id])) {
+            global $u, $btl;
+            $prv['color2'] = $btl->mcolor[$btl->mname['вода']];
+            $yron = $yron * 0.80;
+            $btl->priemAddLogFast(
+                $uid, 0, "<font color^^^^#" . $prv['color2'] . "> Иней [10]</font>",
+                '{tm1} ' . $btl->addlt(1, 21, $btl->users[$btl->uids[$uid]]['sex'], null) . '',
+                0, time()
+            );
+            if ($yron < 0) {
+                $yron = 1;
+            }
+            $btl->stats[$btl->uids[$uid]]['um_priem'][$j_id] = true;
+        }
+        return round($yron);
+    };
+} elseif (isset($pr_tested_this)) {
+    $fx_priem = function ($id, $at, $uid, $j_id) {
+        // -- начало приема
+        global $u, $btl;
+        $prv['color2'] = $btl->mcolor[$btl->mname['вода']];
+        //
+        //Параметры приема
+        $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])) {
+            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 $btl, $priem;
+        $prv['color2'] = $btl->mcolor[$btl->mname['вода']];
+        //
+        //Параметры приема
+        $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;
+            //
+            $testtum = mysql_fetch_array(mysql_query('SELECT * FROM `eff_users` WHERE `v1` = "priem" AND `v2` = 273 AND `delete` = 0 AND `uid` = "' . $u2 . '" LIMIT 1;'));
+            if (!isset($testtum['id'])) {
+                while ($j < count($at['p'][$a]['atack'])) {
+                    if (isset($at['p'][$a]['atack'][$j]['yron']) && (
+                            $at['p'][$a]['atack'][$j][1] == 1 ||
+                            $at['p'][$a]['atack'][$j][1] == 4 ||
+                            $at['p'][$a]['atack'][$j][1] == 5)) {
+
+                        $at['p'][$a]['atack'][$j]['yron']['y'] = round($at['p'][$a]['atack'][$j]['yron']['y'] * 0.70);
+                        $at['p'][$a]['atack'][$j]['yron']['r'] = round($at['p'][$a]['atack'][$j]['yron']['r'] * 0.70);
+                        $at['p'][$a]['atack'][$j]['yron']['k'] = round($at['p'][$a]['atack'][$j]['yron']['k'] * 0.70);
+                        $at['p'][$a]['atack'][$j]['yron']['m_k'] = round($at['p'][$a]['atack'][$j]['yron']['m_k'] * 0.70);
+                        $at['p'][$a]['atack'][$j]['yron']['m_y'] = round($at['p'][$a]['atack'][$j]['yron']['m_y'] * 0.70);
+
+                        if ($at['p'][$a]['atack'][$j]['yron']['y'] < 1) {
+                            $at['p'][$a]['atack'][$j]['yron']['y'] = 1;
+                        }
+                        if ($at['p'][$a]['atack'][$j]['yron']['r'] >= 0) {
+                            $at['p'][$a]['atack'][$j]['yron']['r'] = -1;
+                        }
+                        if ($at['p'][$a]['atack'][$j]['yron']['k'] < 1) {
+                            $at['p'][$a]['atack'][$j]['yron']['k'] = 1;
+                        }
+                        if ($at['p'][$a]['atack'][$j]['yron']['m_k'] < 1) {
+                            $at['p'][$a]['atack'][$j]['yron']['m_k'] = 1;
+                        }
+                        if ($at['p'][$a]['atack'][$j]['yron']['m_y'] < 1) {
+                            $at['p'][$a]['atack'][$j]['yron']['m_y'] = 1;
+                        }
+
+                        $pvr['x5'] = mysql_fetch_array(mysql_query('SELECT `id`,`x` FROM `eff_users` WHERE `uid` = "' . $u1 . '" AND `v2` = 25 AND `delete` = 0 LIMIT 1'));
+                        if ($pvr['x5']['x'] < 5) {
+                            $priem->addPriem($u1, 25, '|add_zm3=-20', 2, 77, -1, $u2, 100, 'цельводы', 0, 0, 1);
+                        }
+
+                        $at['p'][$a]['atack'][$j]['yron']['used'][] = [$j_id, $uid, $pvr['used']];
+                        $at['p'][$a]['atack'][$j]['yron']['kill'][] = [$j_id, $uid, $pvr['kill']];
+
+                        $at['p'][$a]['priems']['kill'][$uid][$j_id] = true;
+                    }
+                    $j++;
+                }
+            }
+        }
+        // -- конец приема
+        return $at;
+    };
+    unset($pr_used_this);
+} else {
+    $prv['color2'] = $btl->mcolor[$btl->mname['вода']];
+    //Действие при клике
+    $this->addEffPr($pl, $id);
+    $prv['text'] = '{tm1}' . $btl->addlt(1, 21, $btl->users[$btl->uids[$u->info['id']]]['sex'], null) . '.';
+    $btl->priemAddLog(
+        $id, 1, 2, $u->info['id'], $u->info['id'],
+        '<font color^^^^#' . $prv['color2'] . '> Иней [10]</font>',
+        $prv['text'],
+        ($btl->hodID + 1)
+    );
 }
 unset($pvr);
-?>
\ No newline at end of file