stats['hpAll'] / 100 * 15) / 6);
$hpadd_pr_color = 'green';
$trduh = 1;
$btl->users[$btl->uids[$ue['id']]]['tactic7'] -= round((1.5 / 6), 2);
if ($btl->users[$btl->uids[$ue['id']]]['tactic7'] < 0) {
$btl->users[$btl->uids[$ue['id']]]['tactic7'] = 0;
}
mysql_query('UPDATE `stats` SET `tactic7` = "' . $btl->users[$btl->uids[$ue['id']]]['tactic7'] . '" WHERE `id` = "' . $ue['id'] . '" LIMIT 1');
}
if ($hpadd > 0) {
$pl['name'] = $pr['name'];
}
/*ПРИЕМЫ КАЖДЫЙ ХОД*/
} elseif ($pl['id'] == 231) {
//Глухая защита
$re = $this->addPriem($u->info['id'], $pl['id'], -1, 0, 77, 6, $u->info['id'], 1, 'глухаязащита', 0, 1);
} elseif ($pl['id'] == 3) {
//прием собрать зубы
$hpadd = rand(2, 5);
$trduh = 1;
} elseif ($pl['id'] == 5) {
//прием утереть пот
$hpadd = $u->info['level'] * 2;
} elseif ($pl['id'] == 6) {
//прием воля к победе
$hpadd = round($u->info['level'] * 5 + 7);
if ($btl->stats[$btl->uids[$u->info['id']]]['hpNow'] < ($btl->stats[$btl->uids[$u->info['id']]]['hpAll'] * 0.33)) {
$hpadd += ceil($hpadd * 0.25);
}
} elseif ($pl['priem']['id'] == 189) {
//Ошеломить
$imun = mysql_fetch_array(mysql_query('SELECT * FROM `eff_users` WHERE `uid` = "' . $u2['id'] . '" and `v2`="191" and `delete`="0" LIMIT 1'));
//echo $u2['id'];
if ($imun) {
$cup = true;
$vLog = 'time1=' . time() . '||s1=' . $u1['sex'] . '||t1=' . $u1['team'] . '||login1=' . $u1['login'] . '||s2=' . $this->users[$this->uids[$u2['id']]]['sex'] . '||t2=' . $this->users[$this->uids[$u2['id']]]['team'] . '||login2=' . $this->users[$this->uids[$u2['id']]]['login'] . '';
$mas1 = ['time' => time(), 'battle' => $this->info['id'], 'id_hod' => $this->hodID, 'text' => '', 'vars' => $vLog, 'zona1' => '', 'zonb1' => '', 'zona2' => '', 'zonb2' => '', 'type' => '1'];
$mas1['text'] = '{tm1} {u1} {1x16x0} прием "' . $pl['name'] . '", но у {u2} иммунитет к ошеломлению.';
} elseif ($this->stats[$this->uids[$u2['id']]]['hpNow'] >= 1) {
//ошеломить
$re = $priem->addPriem($u2['id'], 230, 'add_m10=-100|add_m11=-100', 0, 77, 2, $u1['id'], 2, 'ошеломить');
$re = $priem->addPriem($u2['id'], 191, '', 0, 77, 6, $u1['id'], 5, 'иммунитеткошеломить');
if ($re == false) {
echo '[Er::Ошеломить[xX]]';
}
$sx = '';
if ($u1['sex'] == 1) {
$sx = 'а';
}
$vLog = 'time1=' . time() . '||s1=' . $u1['sex'] . '||t1=' . $u1['team'] . '||login1=' . $u1['login'] . '||s2=' . $this->users[$this->uids[$u2['id']]]['sex'] . '||t2=' . $this->users[$this->uids[$u2['id']]]['team'] . '||login2=' . $this->users[$this->uids[$u2['id']]]['login'] . '';
$mas1 = ['time' => time(), 'battle' => $this->info['id'], 'id_hod' => $this->hodID, 'text' => '', 'vars' => $vLog, 'zona1' => '', 'zonb1' => '', 'zona2' => '', 'zonb2' => '', 'type' => '1'];
$mas1['text'] = '{tm1} {u1} {1x16x0} прием "' . $pl['name'] . '" и ошеломил' . $sx . ' {u2} на два хода.';
$pz = $this->users[$this->uids[$u2['id']]]['priems_z'];
$p_id = $this->users[$this->uids[$u2['id']]]['priems'];
$pz = explode('|', $pz);
$p_id = explode('|', $p_id);
$i = 0;
while ($i <= 30) {
if ($p_id[$i] >= 195 and $p_id[$i] <= 198) {
$pz[$i] = $pz[$i];
} else {
$pz[$i] += 2;
}
$i++;
}
$pz = implode('|', $pz);
$this->users[$this->uids[$u2['id']]]['priems_z'] = $pz;
unset($pz);
mysql_query('UPDATE `stats` SET `priems_z` = "' . $this->users[$this->uids[$u2['id']]]['priems_z'] . '" WHERE `id` = "' . $u2['id'] . '" LIMIT 1');
//$this->add_log($mas1);
$pz[(int)$id] = 1;
}
} elseif ($pl['priem']['id'] == 235) {
//Шокирующий удар
$imun = mysql_fetch_array(mysql_query('SELECT * FROM `eff_users` WHERE `uid` = "' . $u2['id'] . '" and `v2`="191" and `delete`="0" LIMIT 1'));
//echo $u2['id'];
if ($imun) {
$cup = true;
$vLog = 'time1=' . time() . '||s1=' . $u1['sex'] . '||t1=' . $u1['team'] . '||login1=' . $u1['login'] . '||s2=' . $this->users[$this->uids[$u2['id']]]['sex'] . '||t2=' . $this->users[$this->uids[$u2['id']]]['team'] . '||login2=' . $this->users[$this->uids[$u2['id']]]['login'] . '';
$mas1 = ['time' => time(), 'battle' => $this->info['id'], 'id_hod' => $this->hodID, 'text' => '', 'vars' => $vLog, 'zona1' => '', 'zonb1' => '', 'zona2' => '', 'zonb2' => '', 'type' => '1'];
$mas1['text'] = '{tm1} {u1} {1x16x0} прием "' . $pl['name'] . '", но у {u2} иммунитет к ошеломлению.';
} elseif ($this->stats[$this->uids[$u2['id']]]['hpNow'] >= 1) {
//ошеломить
$re = $priem->addPriem($u2['id'], 236, 'add_notactic=1', 0, 77, 2, $u1['id'], 2, 'шокирующийудар');
$re = $priem->addPriem($u2['id'], 191, '', 0, 77, 6, $u1['id'], 5, 'иммунитеткошеломить');
if ($re == false) {
echo '[Er::ШокирующийУдар[xX]]';
}
$sx = '';
if ($u1['sex'] == 1) {
$sx = 'а';
}
$vLog = 'time1=' . time() . '||s1=' . $u1['sex'] . '||t1=' . $u1['team'] . '||login1=' . $u1['login'] . '||s2=' . $this->users[$this->uids[$u2['id']]]['sex'] . '||t2=' . $this->users[$this->uids[$u2['id']]]['team'] . '||login2=' . $this->users[$this->uids[$u2['id']]]['login'] . '';
$mas1 = ['time' => time(), 'battle' => $this->info['id'], 'id_hod' => $this->hodID, 'text' => '', 'vars' => $vLog, 'zona1' => '', 'zonb1' => '', 'zona2' => '', 'zonb2' => '', 'type' => '1'];
$mas1['text'] = '{tm1} {u1} {1x16x0} прием "' . $pl['name'] . '" и ошеломил' . $sx . ' {u2} на два хода.';
$pz = $this->users[$this->uids[$u2['id']]]['priems_z'];
$p_id = $this->users[$this->uids[$u2['id']]]['priems'];
$pz = explode('|', $pz);
$p_id = explode('|', $p_id);
$i = 0;
while ($i <= 30) {
if ($p_id[$i] >= 195 and $p_id[$i] <= 198) {
$pz[$i] = $pz[$i];
} else {
$pz[$i] += 2;
}
$i++;
}
$pz = implode('|', $pz);
$this->users[$this->uids[$u2['id']]]['priems_z'] = $pz;
unset($pz);
mysql_query('UPDATE `stats` SET `priems_z` = "' . $this->users[$this->uids[$u2['id']]]['priems_z'] . '" WHERE `id` = "' . $u2['id'] . '" LIMIT 1');
//$this->add_log($mas1);
$pz[(int)$id] = 1;
}
} elseif ($pl['priem']['id'] == 237) {
//Разведка боем
$imun = mysql_fetch_array(mysql_query('SELECT `id` FROM `eff_users` WHERE `uid` = "' . $u2['id'] . '" and `v2`="237" and `delete`="0" LIMIT 1'));
if (isset($imun['id'])) {
mysql_query('UPDATE `eff_users` SET `delete` = "' . time() . '" WHERE `id` = "' . $imun['id'] . '" LIMIT 1');
}
//Разведка боем
$re = $priem->addPriem($u2['id'], 238, 'add_notactic=1', 0, 77, 4, $u1['id'], 5, 'разведкабоем');
if ($re == false) {
echo '[Er::РазведкаБоем[xX]]';
}
$sx = '';
if ($u1['sex'] == 1) {
$sx = 'а';
}
$vLog = 'time1=' . time() . '||s1=' . $u1['sex'] . '||t1=' . $u1['team'] . '||login1=' . $u1['login'] . '||s2=' . $this->users[$this->uids[$u2['id']]]['sex'] . '||t2=' . $this->users[$this->uids[$u2['id']]]['team'] . '||login2=' . $this->users[$this->uids[$u2['id']]]['login'] . '';
$mas1 = ['time' => time(), 'battle' => $this->info['id'], 'id_hod' => $this->hodID, 'text' => '', 'vars' => $vLog, 'zona1' => '', 'zonb1' => '', 'zona2' => '', 'zonb2' => '', 'type' => '1'];
$mas1['text'] = '{tm1} {u1} {1x16x0} прием "' . $pl['name'] . '" и раскрыл' . $sx . ' тактику {u2} на пять ходов.';
} elseif ($pl['priem']['id'] == 239) {
//Поступь смерти
$pl['data_re'] = Helper\Conversion::dataStringToArray($pl['data']);
if ($pl['data_re']['step'] < 10) {
$pl['data_re']['add_maxAtack'] += $this->users[$this->uids[$pl['uid']]]['level'];
$pl['data_re']['step']++;
}
$pl['data'] = 'add_maxAtack=' . $pl['data_re']['add_maxAtack'] . '|step=' . $pl['data_re']['step'] . '';
$pl['hod'] = 2;
$this->rehodeff[$pl['id']] = $pl['hod'];
mysql_query('UPDATE `eff_users` SET `hod` = "' . $pl['hod'] . '",`data` = "' . $pl['data'] . '" WHERE `id` = "' . $pl['id'] . '" LIMIT 1');
unset($pl['data_re']);
} elseif ($pl['priem']['id'] == 240) {
//Хлебнуть Крови
$pl['data_re'] = Helper\Conversion::dataStringToArray($pl['data']);
if (isset($pl['data_re']['step']) || $pl['data_re']['step'] == 0) {
//Добавляем силу
if ($this->users[$this->uids[$u2['id']]]['level'] == 7) {
$pl['data_re']['add_s1'] = 10;
} elseif ($this->users[$this->uids[$u2['id']]]['level'] == 8) {
$pl['data_re']['add_s1'] = 13;
} elseif ($this->users[$this->uids[$u2['id']]]['level'] >= 9) {
$pl['data_re']['add_s1'] = 14;
}
}
$pl['data_re']['step']++;
if ($pl['data_re']['add_s1'] > 0) {
$pl['data'] = 'add_s1=' . $pl['data_re']['add_s1'] . '|atck_krit_to_atck=1|step=' . $pl['data_re']['step'] . '';
} else {
$pl['data'] = 'atck_krit_to_atck=1|step=' . $pl['data_re']['step'];
}
if ($pl['hod'] == -1) {
$pl['hod'] = 4;
$this->rehodeff[$pl['id']] = $pl['hod'];
//Хиляемся
$hpadd_pl = $yrn * 0.679;
$pl['data_re']['step']++;
} elseif ($pl['data_re']['step'] == 2 || $pl['data_re']['step'] == 3) {
//Хиляемся еще 2 хода от любых ударов
$hpadd_pl = $yrn * 0.573;
$pl['data_re']['step']++;
} else {
//$hpadd_pl = $yrn;
}
if ($hpadd_pl > 0) {
if ($this->users[$this->uids[$u2['id']]]['level'] <= 8) {
if ($hpadd_pl > 107) {
$hpadd_pl = 107;
}
} elseif ($this->users[$this->uids[$u2['id']]]['level'] == 9) {
if ($hpadd_pl > 128) {
$hpadd_pl = 128;
}
} elseif ($this->users[$this->uids[$u2['id']]]['level'] >= 10) {
if ($hpadd_pl > 154) {
$hpadd_pl = 154;
}
}
$plname = $pl['name'];
$hid = $u1['id'];
}
$this->pr_reset['data'][$pl['id']] = $pl['data'];
mysql_query('UPDATE `eff_users` SET `hod` = "' . $pl['hod'] . '",`data` = "' . $pl['data'] . '" WHERE `id` = "' . $pl['id'] . '" LIMIT 1');
unset($pl['data_re']);
} elseif ($pl['id'] == 192) {
$i = 0;
$add_where = '';
while ($i < count($btl->users)) {
if ($btl->users[$i]['team'] == $btl->users[$btl->uids[$u->info['id']]]['team']) {
$add_where .= ' AND `user_use`!="' . $btl->users[$i]['id'] . '"';
}
$i++;
}
//Ограничиваем конкретными приемами
/*
приёмом "Очиститься кровью" можно снять: пожирающее пламя, переохлаждение, ядовитое облако, кристаллизация, отравление, цель огня, цель воды, цель воздуха и цель земли.
*/
$add_where .= ' AND (`name` LIKE "Цель Воды%" OR `name` LIKE "Цель Огня%" OR `name` LIKE "Цель Воздуха%" OR `name` LIKE "Цель Земли%"
OR `name` LIKE "Пожирающее Пламя%" OR `name` LIKE "Переохлаждение%" OR `name` LIKE "Ядовитое Облако%" OR `name` LIKE "Кристаллизация%" OR `name` LIKE "%Отравление%" OR `name` LIKE "Искалечить%" OR `name` LIKE "Пришпилить%" ) ';
$dell = mysql_fetch_array(mysql_query('SELECT * FROM `eff_users` WHERE `user_use`!= "" and `delete`="0" and `uid`="' . $u->info['id'] . '" and `v1`="priem" ' . $add_where . ' LIMIT 1'));
if ($dell) {
$dell['priem']['id'] = $dell['id'];
if ($dell['x'] == 1) {
$btl->delPriem($dell, $u->info, 99);
} else {
$i = 0;
$e = explode('|', $dell['data']);
while ($i < count($e)) {
$f = explode('=', $e[$i]);
$stack = $f[1] / $dell['x'];//вычисляем влятельность заряда на х-ки
$f[1] -= $stack;// отнимаем заряд
$e[$i] = implode('=', $f);
$i++;
}
$dell['data'] = implode('|', $e);
$dell['x']--;
mysql_query('UPDATE `eff_users` SET `data` = "' . $dell['data'] . '", `x`="' . $dell['x'] . '" WHERE `id` = "' . $dell['id'] . '"');
$vLog = 'time1=' . time() . '||s1=' . $u->info['sex'] . '||t1=' . $u->info['team'] . '||login1=' . $u->info['login'] . '';
$mas1 = ['time' => time(), 'battle' => $btl->i->id, 'id_hod' => $btl->hodID, 'text' => '', 'vars' => $vLog, 'zona1' => '', 'zonb1' => '', 'zona2' => '', 'zonb2' => '', 'type' => '1'];
$mas1['text'] = '{u1} Ослабил эфект "' . $dell['name'] . '" с помощью Очиститься Кровью .';
$btl->add_log($mas1);
}
}
}
if (isset($hpadd)) {
if ($u->stats['hpNow'] + $hpadd > $u->stats['hpAll']) {
$hpadd = $u->stats['hpAll'] - $u->stats['hpNow'];
}
if ($trduh == 1) {
if ($btl->users[$btl->uids[$u->info['id']]]['tactic7'] <= 0) {
$hpadd = 0;
}
}
if (isset($btl->stats[$btl->uids[$u->info['id']]]['min_heal_proc'])) {
if ($btl->stats[$btl->uids[$u->info['id']]]['min_heal_proc'] > 100) {
$btl->stats[$btl->uids[$u->info['id']]]['min_heal_proc'] = 100;
}
$hpadd = round($hpadd / 100 * (100 + $btl->stats[$btl->uids[$u->info['id']]]['min_heal_proc']));
}
$u->info['hpNow'] += $hpadd;
$u->stats['hpNow'] += $hpadd;
$btl->users[$btl->uids[$u->info['id']]]['hpNow'] += $hpadd;
$btl->stats[$btl->uids[$u->info['id']]]['hpNow'] += $hpadd;
$upd = mysql_query('UPDATE `stats` SET `hpNow` = ' . $u->info['hpNow'] . ' WHERE `id` = "' . $u->info['id'] . '" LIMIT 1');
if ($upd) {
$vLog = 'time1=' . time() . '||s1=' . $u->info['sex'] . '||t1=' . $u->info['team'] . '||login1=' . $u->info['login'] . '';
$mas1 = ['time' => time(), 'battle' => $btl->i->id, 'id_hod' => $btl->hodID, 'text' => '', 'vars' => $vLog, 'zona1' => '', 'zonb1' => '', 'zona2' => '', 'zonb2' => '', 'type' => '1'];
if ($hpadd > 0) {
$hpadd = '+' . ceil($hpadd);
} else {
$hpadd = '--';
}
$mas1['text'] = '{tm1} {u1} {1x16x0} прием "' . $pl['name'] . '" и {1x17x0} здоровье. ' . $hpadd . ' [' . ceil($u->info['hpNow']) . '/' . $btl->stats[$btl->uids[$u->info['id']]]['hpAll'] . ']';
$btl->add_log($mas1);
$pz[(int)$id] = 1;
} else {
echo 'Can`t update table `user`';
}
unset($hpadd, $mas1, $trduh);
} elseif (isset($hpadd_pr)) {
if ($btl->stats[$btl->uids[$ue['id']]]['hpNow'] + $hpadd_pr > $btl->stats[$btl->uids[$ue['id']]]['hpAll']) {
$hpadd_pr = $btl->stats[$btl->uids[$ue['id']]]['hpAll'] - $btl->stats[$btl->uids[$ue['id']]]['hpNow'];
}
if ($trduh == 1) {
if ($btl->users[$btl->uids[$ue['id']]]['tactic7'] <= 0) {
$hpadd_pr = 0;
}
}
if (isset($btl->stats[$btl->uids[$ue['id']]]['min_heal_proc'])) {
if ($btl->stats[$btl->uids[$ue['id']]]['min_heal_proc'] > 100) {
$btl->stats[$btl->uids[$ue['id']]]['min_heal_proc'] = 100;
}
$hpadd_pr = round($hpadd_pr / 100 * (100 + $btl->stats[$btl->uids[$ue['id']]]['min_heal_proc']));
}
if ($u->info['id'] == $btl->users[$btl->uids[$ue['id']]]['id']) {
$u->info['hpNow'] += $hpadd;
$u->stats['hpNow'] += $hpadd;
}
$btl->users[$btl->uids[$ue['id']]]['hpNow'] += $hpadd_pr;
$btl->stats[$btl->uids[$ue['id']]]['hpNow'] += $hpadd_pr;
$upd = mysql_query('UPDATE `stats` SET `hpNow` = ' . $btl->stats[$btl->uids[$ue['id']]]['hpNow'] . ' WHERE `id` = "' . $btl->users[$btl->uids[$ue['id']]]['id'] . '" LIMIT 1');
if ($upd) {
$vLog = 'time1=' . time() . '||s1=' . $btl->users[$btl->uids[$ue['id']]]['sex'] . '||t1=' . $btl->users[$btl->uids[$ue['id']]]['team'] . '||login1=' . $btl->users[$btl->uids[$ue['id']]]['login'] . '';
$mas1 = ['time' => time(), 'battle' => $btl->i->id, 'id_hod' => $btl->hodID, 'text' => '', 'vars' => $vLog, 'zona1' => '', 'zonb1' => '', 'zona2' => '', 'zonb2' => '', 'type' => '1'];
if ($hpadd_pr > 0) {
$hpadd_pr = '+' . ceil($hpadd_pr);
} else {
$hpadd_pr = '--';
}
if ($hpadd_pr_color == '') {
$hpaa_pr_color = '#006699';
}
$mas1['text'] = '{tm1} {u1} {1x16x0} прием "' . $pr['name'] . '" и {1x17x0} здоровье. ' . $hpadd_pr . ' [' . ceil($btl->stats[$btl->uids[$ue['id']]]['hpNow']) . '/' . $btl->stats[$btl->uids[$ue['id']]]['hpAll'] . ']';
$btl->add_log($mas1);
$pz[(int)$id] = 1;
} else {
echo 'Can`t update table `user`';
}
unset($hpadd_pr, $mas1, $trduh);
} elseif (isset($hpadd_pl)) {
if ($this->stats[$this->uids[$hid]]['hpNow'] + $hpadd_pl > $this->stats[$this->uids[$hid]]['hpAll']) {
$hpadd_pr = $this->stats[$this->uids[$hid]]['hpAll'] - $this->stats[$this->uids[$hid]]['hpNow'];
}
if ($trduh == 1) {
if ($this->users[$this->uids[$hid]]['tactic7'] <= 0) {
$hpadd_pl = 0;
}
}
if (isset($this->stats[$this->uids[$hid]]['min_heal_proc'])) {
if ($this->stats[$this->uids[$hid]]['min_heal_proc'] > 100) {
$this->stats[$this->uids[$hid]]['min_heal_proc'] = 100;
}
$hpadd_pl = round($hpadd_pl / 100 * (100 + $this->stats[$this->uids[$hid]]['min_heal_proc']));
}
if ($u->info['id'] == $this->users[$this->uids[$hid]]['id']) {
$u->info['hpNow'] += $hpadd_pl;
$u->stats['hpNow'] += $hpadd_pl;
}
$this->users[$this->uids[$hid]]['hpNow'] += $hpadd_pl;
$this->stats[$this->uids[$hid]]['hpNow'] += $hpadd_pl;
$upd = mysql_query('UPDATE `stats` SET `hpNow` = ' . $this->stats[$this->uids[$hid]]['hpNow'] . ' WHERE `id` = "' . $this->users[$this->uids[$hid]]['id'] . '" LIMIT 1');
if ($upd) {
$vLog = 'time1=' . time() . '||s1=' . $this->users[$this->uids[$hid]]['sex'] . '||t1=' . $this->users[$this->uids[$hid]]['team'] . '||login1=' . $this->users[$this->uids[$hid]]['login'] . '';
$mas1 = ['time' => time(), 'battle' => $this->info['id'], 'id_hod' => ($this->hodID + 1), 'text' => '', 'vars' => $vLog, 'zona1' => '', 'zonb1' => '', 'zona2' => '', 'zonb2' => '', 'type' => '1'];
if ($hpadd_pl > 0) {
$hpadd_pl = '+' . ceil($hpadd_pl);
} else {
$hpadd_pl = '--';
}
if ($hpadd_pr_color == '') {
$hpaa_pr_color = '#006699';
}
$mas1['text'] = '{tm1} {u1} {1x16x0} прием "' . $plname . '" и {1x17x0} здоровье. ' . $hpadd_pl . ' [' . ceil($this->stats[$this->uids[$hid]]['hpNow']) . '/' . $this->stats[$this->uids[$hid]]['hpAll'] . ']';
$this->add_log($mas1);
$pz[(int)$id] = 1;
} else {
echo 'Can`t update table `user`';
}
unset($hpadd_pl, $mas1, $trduh);
}
?>