function hit($attack, $defend, $hit1, $hit2, $hit3, $block1, $battle_id, $is_human) { mysql_query("UPDATE battles SET lasthit='" . time() . "' WHERE id={$battle_id}"); $sql_ = mysql_query("SELECT * FROM hit_temp WHERE attack='" . $attack . "' AND defend='" . $defend . "' and battle_id=" . $battle_id); if (mysql_num_rows($sql_) == 0) { mysql_query("INSERT INTO hit_temp(attack,defend,def_hit1,def_hit2,def_hit3,def_block1,time,battle_id,is_human) VALUES('" . $defend . "','" . $attack . "','" . $hit1 . "','" . $hit2 . "','" . $hit3 . "','" . $block1 . "','" . time() . "','" . $battle_id . "','" . $is_human . "')"); mysql_query("UPDATE users SET battle_opponent='' WHERE login='******'"); } else { $SHD = mysql_fetch_array($sql_); $zones = 1; $zones1 = 1; $blockzone = false; $blockzone1 = false; $weapons = array('axe', 'fail', 'knife', 'sword', 'spear', 'shot', 'staff', 'kostyl'); $shields = array('shield', 'spear'); if ($is_human == 0) { $ATTACK_QUERY = mysql_query("SELECT users.id,hand_r_type, hand_l_type,(SELECT count(*) FROM inv WHERE inv.owner=users.login and inv.name='Кольцо Атаки' and wear=1) as item_name FROM users WHERE users.login='******'"); $ATTACK_DATA = mysql_fetch_array($ATTACK_QUERY); if (in_array($ATTACK_DATA["hand_r_type"], $weapons) && in_array($ATTACK_DATA["hand_l_type"], $weapons)) { $zones++; } if ($ATTACK_DATA["item_name"] > 0) { $zones++; $ring_attack = 1; } if (in_array($ATTACK_DATA["hand_l_type"], $shields)) { $blockzone = true; } } else { if ($is_human == 1) { $SQL_1 = mysql_query("SELECT * FROM bot_temp WHERE battle_id='" . $battle_id . "' and bot_name='" . $attack . "' limit 1"); $BOTD1 = mysql_fetch_array($SQL_1); if ($BOTD1["two_hands"] == 1) { $zones++; } if ($BOTD1["shield_hands"] == 1) { $blockzone = true; } } } //------------------------------------------------------------------------------------------------- if ($SHD["is_human"] == 0) { $DEFEND_QUERY = mysql_query("SELECT users.id, hand_r_type,hand_l_type,hp,(SELECT count(*) FROM inv WHERE inv.owner=users.login and inv.name='Кольцо Атаки' and wear=1) as item_name FROM users WHERE users.login='******'"); $DEFEND_DATA = mysql_fetch_array($DEFEND_QUERY); if (in_array($DEFEND_DATA["hand_r_type"], $weapons) && in_array($DEFEND_DATA["hand_l_type"], $weapons)) { $zones1++; } if ($DEFEND_DATA["item_name"] > 0) { $zones1++; $ring_defend = 1; } if (in_array($DEFEND_DATA["hand_l_type"], $shields)) { $blockzone1 = true; } } else { if ($SHD["is_human"] == 1) { $SQL = mysql_query("SELECT * FROM bot_temp WHERE battle_id='" . $battle_id . "' and bot_name='" . $defend . "' limit 1"); $BOTD = mysql_fetch_array($SQL); $DEFEND_DATA["hp"] = $BOTD["hp"]; if ($BOTD["two_hands"] == 1) { $zones1++; } if ($BOTD["shield_hands"] == 1) { $blockzone1 = true; } } } //------------------------------------------------------------------------------------------------- $def_hit1 = $SHD["def_hit1"]; $def_hit2 = $SHD["def_hit2"]; $def_hit3 = $SHD["def_hit3"]; $def_block1 = $SHD["def_block1"]; $def_blocked = isblocked($hit1, $def_block1, $blockzone1); $att_blocked = isblocked($def_hit1, $block1, $blockzone); $def_blocked2 = isblocked($hit2, $def_block1, $blockzone1); $att_blocked2 = isblocked($def_hit2, $block1, $blockzone); $def_blocked3 = isblocked($hit3, $def_block1, $blockzone1); $att_blocked3 = isblocked($def_hit3, $block1, $blockzone); //------------------------------------------------------------- if ($DEFEND_DATA["hp"] > 0) { mysql_query("UPDATE person_on SET pr_wait_for=pr_wait_for-1 WHERE pr_wait_for>0 and battle_id=" . $battle_id . " and id_person=" . $ATTACK_DATA["id"]); mysql_query("UPDATE person_on SET pr_wait_for=pr_wait_for-1 WHERE pr_wait_for>0 and battle_id=" . $battle_id . " and id_person=" . $DEFEND_DATA["id"]); mysql_Query("UPDATE teams SET op_ch=op_ch+1 WHERE player='" . $attack . "' and op_ch<=0;"); mysql_Query("UPDATE teams SET op_ch=op_ch+1 WHERE player='" . $defend . "' and op_ch<=0;"); if ($zones == 1 && $hit1) { hit_dis($attack, $defend, $is_human . $SHD["is_human"], $def_blocked, $hit1, 0, $def_block1, $blockzone1, $battle_id); } else { if ($zones == 2 && $hit1 && $hit2) { hit_dis($attack, $defend, $is_human . $SHD["is_human"], $def_blocked, $hit1, 0, $def_block1, $blockzone1, $battle_id); if ($ring_attack) { hit_dis($attack, $defend, $is_human . $SHD["is_human"], $def_blocked2, $hit2, 0, $def_block1, $blockzone1, $battle_id); } else { hit_dis($attack, $defend, $is_human . $SHD["is_human"], $def_blocked2, $hit2, 1, $def_block1, $blockzone1, $battle_id); } } else { if ($zones == 3 && $hit1 && $hit2 && $hit3) { hit_dis($attack, $defend, $is_human . $SHD["is_human"], $def_blocked, $hit1, 0, $def_block1, $blockzone1, $battle_id); hit_dis($attack, $defend, $is_human . $SHD["is_human"], $def_blocked2, $hit2, 1, $def_block1, $blockzone1, $battle_id); hit_dis($attack, $defend, $is_human . $SHD["is_human"], $def_blocked3, $hit3, 0, $def_block1, $blockzone1, $battle_id); } } } if ($zones1 == 1 && $def_hit1) { hit_dis($defend, $attack, $SHD["is_human"] . $is_human, $att_blocked, $def_hit1, 0, $block1, $blockzone, $battle_id); } else { if ($zones1 == 2 && $def_hit1 && $def_hit2) { hit_dis($defend, $attack, $SHD["is_human"] . $is_human, $att_blocked, $def_hit1, 0, $block1, $blockzone, $battle_id); if ($ring_defend) { hit_dis($defend, $attack, $SHD["is_human"] . $is_human, $att_blocked2, $def_hit2, 0, $block1, $blockzone, $battle_id); } else { hit_dis($defend, $attack, $SHD["is_human"] . $is_human, $att_blocked2, $def_hit2, 1, $block1, $blockzone, $battle_id); } } else { if ($zones1 == 3 && $def_hit1 && $def_hit2 && $def_hit3) { hit_dis($defend, $attack, $SHD["is_human"] . $is_human, $att_blocked, $def_hit1, 0, $block1, $blockzone, $battle_id); hit_dis($defend, $attack, $SHD["is_human"] . $is_human, $att_blocked2, $def_hit2, 1, $block1, $blockzone, $battle_id); hit_dis($defend, $attack, $SHD["is_human"] . $is_human, $att_blocked3, $def_hit3, 0, $block1, $blockzone, $battle_id); } } } include_once "inc/battle/comment.php"; $phrase = get_comment(); $phrase = $phrase . "<hr>"; battle_log($battle_id, $phrase); } mysql_query("DELETE FROM hit_temp WHERE attack='" . $attack . "' AND defend='" . $defend . "'"); mysql_query("UPDATE users SET battle_opponent='' WHERE login='******'"); } }
} setHP($login, $new_hp, $db['hp_all']); $db["hp"] = $new_hp; $phrase_priem = "<span class=date>{$date}</span> <span class={$span}>{$login}</span> понял что его спасение это прием <b>Выжить.<font color=green>+{$hp_add}</font></b> [" . $new_hp . "/" . $db['hp_all'] . "]<br> "; battle_log($bid, $phrase_priem); mysql_query("UPDATE person_on SET pr_active=1,pr_wait_for=" . (int) $is_pr["wait"] . " WHERE id_person='" . $db["id"] . "' and pr_name='" . $priem . "' and '" . $bid . "'"); mysql_query("UPDATE battle_units SET hit=0,krit=0,uvarot=0,block=0,parry=0,hp=hp-" . (int) $is_pr["hp"] . ",counter=counter-" . (int) $is_pr["all_hit"] . " WHERE player='" . $login . "' and battle_id='" . $bid . "'"); } } else { if ($priem == "auto_hit") { if ($db['hp'] > 0 && $opponent) { $is_bot = mysql_num_rows(mysql_query("SELECT * FROM bot_temp WHERE battle_id='" . $bid . "' and bot_name='" . $opponent . "' limit 1")); if ($is_bot > 0) { hit_dis($login, $opponent, "01", 0, rand(1, 5), 0, 0, 0, $bid); } else { hit_dis($login, $opponent, "00", 0, rand(1, 5), 0, 0, 0, $bid); } $opponent = getNextEnemy($login, $enemy_team, $creator, $bid); $phrase_priem = "<span class=date>{$date}</span> <span class={$span}>{$login}</span> понял что его спасение это прием <b>Подлый удар</b>.<br> "; battle_log($bid, $phrase_priem); mysql_query("UPDATE person_on SET pr_active=1,pr_wait_for=" . (int) $is_pr["wait"] . " WHERE id_person='" . $db["id"] . "' and pr_name='" . $priem . "' and battle_id='" . $bid . "'"); mysql_query("UPDATE battle_units SET hit=hit-" . (int) $is_pr["hit"] . ",krit=krit-" . (int) $is_pr["krit"] . ",uvarot=uvarot-" . (int) $is_pr["uvarot"] . ",block=block-" . (int) $is_pr["block"] . ",hp=hp-" . (int) $is_pr["hp"] . ",counter=counter-" . (int) $is_pr["all_hit"] . " WHERE player='" . $login . "' and battle_id='" . $bid . "'"); } } else { if ($priem == "hitshock") { if ($db['hp'] > 0) { $select_target = htmlspecialchars(addslashes($_POST["target"])); $q = mysql_query("SELECT * FROM users WHERE login='******' and battle=" . $bid . " and battle_team=" . $enemy_team . " and hp>0"); $res = mysql_fetch_array($q); if ($res) { mysql_query("UPDATE person_on SET pr_wait_for=pr_wait_for+2 WHERE id_person='" . $res["id"] . "' and battle_id='" . $bid . "' and pr_active=1");
if ($team == 1) { $span = "p2"; } else { $span = "p1"; } if ($zones == 1) { hit_dis($login, $auto_hit['attack'], "00", 0, $auto_hit['def_hit1'], 0, 0, $auto_hit['def_block1'], $bid); } else { if ($zones == 2) { hit_dis($login, $auto_hit['attack'], "00", 0, $auto_hit['def_hit1'], 0, 0, $auto_hit['def_block1'], $bid); hit_dis($login, $auto_hit['attack'], "00", 0, $auto_hit['def_hit2'], 1, 0, $auto_hit['def_block1'], $bid); } else { if ($zones == 3) { hit_dis($login, $auto_hit['attack'], "00", 0, $auto_hit['def_hit1'], 0, 0, $auto_hit['def_block1'], $bid); hit_dis($login, $auto_hit['attack'], "00", 0, $auto_hit['def_hit2'], 1, 0, $auto_hit['def_block1'], $bid); hit_dis($login, $auto_hit['attack'], "00", 0, $auto_hit['def_hit3'], 0, 0, $auto_hit['def_block1'], $bid); } } } mysql_query("DELETE FROM hit_temp WHERE defend='" . $login . "' and attack='" . $auto_hit['attack'] . "'"); mysql_query("UPDATE battles SET lasthit='" . time() . "' WHERE id={$battle_id}"); $phrase = "<span class=date >{$date}</span> <b class='{$span}'>" . $auto_hit['attack'] . "</b> пропустил свой ход.<br><hr>"; battle_log($bid, $phrase); } } } mysql_free_result($auto); ########################################################################### if ($opponent != "") { if (empty($_GET['act']) || $_GET['act'] == "hit") { if (!$_SESSION["random_hit"]) {