Много рефактора

This commit is contained in:
Ivor Barhansky 2023-12-17 04:32:09 +02:00
parent e5b3c47228
commit 253eafca3b
4 changed files with 1016 additions and 1097 deletions

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,180 @@
<?php
namespace Battle;
use Battle;
use Core\Db;
class Log
{
public static function add(array $data): void
{
if (
empty($data['text']) ||
empty($data['battle']) ||
empty($data['id_hod']) ||
!isset($data['vars']) ||
!isset($data['type'])
) {
return;
}
if (empty($data['type'])) {
$data['type'] = 0;
}
Db::sql(
"insert into battle_logs (time, battle, id_hod, text, vars, type, zona1, zona2, zonb1, zonb2)
values (unix_timestamp(),?,?,?,?,?,'','','','')",
[
$data['battle'],
$data['id_hod'],
$data['text'],
$data['vars'],
$data['type'],
]
);
}
public static function addComment(Battle $battle): void
{
$comments = [
'А танцуешь ты лучше.',
'А мы что, в прятки тут играем?',
'А вы разве пингвинов никогда не видели?',
'А, ведь когда-то, вы были красивыми… А теперь? Ну и рожи! Жуть!',
'А потом еще труп пинать будут.',
'А я вчера ночью за соседями подглядывал. Они точно так же кувыркались',
'А ведь вы живых людей дубасите...',
'А вот я вчера в зоопарке был...',
'А вы в стройбате не служили?',
'А вы видели, чтобы так на улице делали!?',
'А вы знали что ёжики размножаются в интернете?',
'А жить-то, как хочется:',
'А из-за чего вы собственно дерётесь?',
'А чего ржёте, вы ещё остальных не видели',
'А что произойдёт если ты испугаешся до полусмерти дважды?!',
'Больше так не делай. Ты же не садист?',
'Без комментариев...',
'Больно ведь!',
'Быстро ты за монитор спрятался!',
'Все хотят попасть в рай, но никто не хочет умирать!',
'Вчера с такой девчонкой познакомился.',
'Всего 5 минут знакомы, а дерутся, словно супруги с 20-ти летним стажем...',
'Все. Я так больше не могу.',
'В конце концов, кто-то победит?',
'Вы чего, с дерева упали?',
'Возятся как сонные мухи... давайте я вам лучше анекдот расскажу: ...',
'Вот видишь, как полезно чистить зубы на ночь?',
'Вот вы все руками махаете, а за вами уже очередь',
'Вот попадёте вы в плен и вас там будут долго бить. Но вы ничего не расскажете... и не потому, что вы такой стойкий, просто вы ничего не знаете',
'Вы бы лучше пошли потренировались!',
'Вы все еще разминаетесь? Позовите, когда кости в муку друг другу разминать будете.',
'Вы же бойцы! Имейте совесть!',
'Гаси недоумка!',
'Да, если бы я смог это остановить, то получил бы нобелевскую премию `За мир` ',
'Да куда они бьют?!',
'Давайте быстрее! За вами уже очередь образовалась.',
'Давайте обойдемся сегодня таймаутом. А? А то мне уже кошмары скоро будут сниться.',
'Дерутся как девчонки!',
'Дети, посмотрите налево... Ой!.. Нет, туда лучше не смотреть.',
'Если так будет продолжаться, то скоро мы заснем!',
'Если бы у меня было кресло-качалка, я бы в нём качался...',
'Если вы что-то сказать хотите, то лучше молчите :)',
'Жестокость не порок.',
'Жизнь вне нашего клуба - это пустая трата кислорода!!!',
'Жми! Дави! Кусай! Царапай!',
'За такие бои надо в хаос отправлять!',
'Знаете откуда в комиссионном магазине столько вещей? Это я после ваших гулянок собираю и сдаю туда. Иногда вместе с частями тела, застрявшими в них.',
'Здесь люди так близки друг к другу. Просто иначе ударить нельзя.',
'И пролитая кровь еще пульсирует...',
'Инвалидов развелось...',
'Какой бой!!!',
'Кто!? Кто здесь?!',
'Кто вас этому научил?',
'Кузнечик, блин...',
'Куплю импортный проигрыватель грампластинок.',
'Лошадью ходи!',
'Лучше враг, чем друг - враг.',
'Ладно, вы тут пока друг друга за волосы таскайте, а я пойду, пообедаю.',
'Мне ваш балет уже надоел!',
'Может, начнется-таки настоящий бой???',
'Мысли лезут в голову изнутри, а удары снаружи.',
'Ну и где ваши коронные удары? Где живописные падения я спрашиваю!',
'Ну, нельзя же так наотмашь лупить!',
'Надо раньше было думать, теперь смертельно поздно...',
'На такое зрелище билеты продавать можно. Народ ухохочется!',
'Нет! Не надо драки! А... ладно деритесь, все равно не умеете.',
'Нет, ну должен быть повод, должен же быть повод?',
'Нет, я отказываюсь это комментировать!',
'Не таких обламывали!',
'Ну выпили вы рюмку, ну две... ну литр, ну два... так зачем же после этого драку затевать?!',
'Ну и кто за этот погром платить будет?',
'Ну и оскал у вас. Из вашей улыбки кастеты делать можно.',
'Ну, что же ты..? Не печалься. Выше голову, так по ней удобней попасть.',
'Ничего... Блок тоже удар.',
'Обернись!!!.... Поздно...',
'Ого! Научите меня так не делать.',
'Осторожно! Сделаешь дырочку, уже не запломбируешь!',
'Оно вам надо???',
'Обычное дело...там что-то отклеилось.',
'Ой, и заболтался я с вами...',
'Он же не промахнётся если ты не отойдёшь!',
'По-моему, кому-то светит инвалидность.',
'Подкинь ему грабли, на которые он еще не наступал.',
'Прав был кот Леопольд, давайте жить дружно?',
'При ударе в живот нарушается кислотно-щелочной баланс.',
'Проверь, не торчит ли у тебя нож из живота.',
'Перестаньте мне орать!',
'Подкинь ему грабли, на которые он еще не наступал.',
'Прыгают тут как блохи... Все, я пошел за дихлофосом!',
'Разбудите меня когда эта порнография закончится...',
'Ребенок сильнее ударил бы!',
'Славно вмазал!',
'Славно они веселятся',
'Смотрю вот на вас, и слезы наворачиваются.',
'Сначала учатся ходить, а потом только в драку лезут.',
'Так они друг другу что-нибудь сломают.',
'Так ты ему все кости переломаешь!',
'У меня в подъезде точно так же соседа отмудохали',
'Убогих развелось...',
'Ух ты, какой прыткий!',
'Фашист!! Надо ж, так по больному месту врезать...',
'Хватит бить его об угол моей кабинки! Мне же потом ее чинить.',
'Хулиганы, прекратите немедленно!',
'Хочешь, подскажу, куда он ударит?',
'Хорошо, что у меня ловкости больше чем у вас всех, а то б вы и меня в инвалидную коляску посадили бы.',
'Хороший бой!',
'Хороший удар!',
'Хиляк-разрядник!',
'Что ты его за волосы схватил?! Отпусти немедленно!',
'Щас я вас настигну, вот тогда мы и похохочем',
'Это была какая-то неизвестная мне техника...',
'Это же противник, а не глина! Хватит мяться!',
'Это не бой, это издевательское избиение.',
'Это поубавит спеси',
'Это и был твой план `Б` ?',
'Это была какая-то неизвестная мне техника...',
'Я же предупреждал, - будет больно.',
'Я не страдаю безумием. Я наслаждаюсь им каждую минуту :)',
'Я красивый, я сильный, я умный, я добрый. А вот вы? Вы себя-то видели?!',
'Я тоже умею драться, но не буду...',
'(тревожно озираясь) я вам по секрету скажу... за вами наблюдают!',
'<вырезано цензурой> после боя я этих <вырезано цензурой> обоих в <вырезано цензурой> и <вырезано цензурой>',
'<вырезано цензурой> каратисты фиговы',
];
$randomcomment = $comments[array_rand($comments)];
$text = "{tm1} <i>Комментатор: $randomcomment</i>";
self::add(
[
'battle' => $battle->info['id'],
'id_hod' => $battle->hodID,
'text' => "{tm1} <i>Комментатор: $randomcomment</i>",
'vars' => 'time1=' . time(),
'type' => 1,
]
);
}
}

View File

@ -643,8 +643,8 @@ class User
);
$this->addAction(
time(), 'frg', '[ ' . $this->info['login'] . ' ] ' . date(
'd.m.Y H:i:s'
) . ' [true] , balance: ' . $sb . ' / ' . $this->info['catch'] . ' / ' . $this->info['frg'] . ' '
'd.m.Y H:i:s'
) . ' [true] , balance: ' . $sb . ' / ' . $this->info['catch'] . ' / ' . $this->info['frg'] . ' '
);
} else {
mysql_query(
@ -655,8 +655,8 @@ class User
if ($sb - 10 > $this->info['catch'] - $this->info['frg']) {
$this->addAction(
time(), 'frgfalse', '[ ' . $this->info['login'] . ' ] ' . date(
'd.m.Y H:i:s'
) . ' [false] , [' . ($sb - ($this->info['catch'] - $this->info['frg'])) . '] , balance: ' . $sb . ' | ' . $this->info['catch'] . ' | ' . $this->info['frg'] . ' '
'd.m.Y H:i:s'
) . ' [false] , [' . ($sb - ($this->info['catch'] - $this->info['frg'])) . '] , balance: ' . $sb . ' | ' . $this->info['catch'] . ' | ' . $this->info['frg'] . ' '
);
}
}
@ -744,7 +744,8 @@ class User
'UPDATE `items_users` SET `use_text` = "' . $itm['use_text'] . '" WHERE `id` = "' . $itm['id'] . '" LIMIT 1'
);
mysql_query(
'INSERT INTO `items_text` (`item_id`,`time`,`login`,`text`,`city`,`x`) VALUES ("' . $itm['id'] . '","' . time() . '","' . $this->info['login'] . '","' . mysql_real_escape_string(
'INSERT INTO `items_text` (`item_id`,`time`,`login`,`text`,`city`,`x`) VALUES ("' . $itm['id'] . '","' . time(
) . '","' . $this->info['login'] . '","' . mysql_real_escape_string(
htmlspecialchars($txt, null)
) . '","' . $this->info['city'] . '","' . $sx . '")'
);
@ -790,7 +791,8 @@ class User
$this->error = 'Персонаж уже проводит сделку';
} else {
$ins = mysql_query(
'INSERT INTO `transfers` (`uid1`,`uid2`,`city`,`room`,`time`,`text`,`start1`) VALUES ("' . $this->info['id'] . '","' . $t['id'] . '","' . $this->info['city'] . '","' . $this->info['room'] . '","' . time() . '","' . mysql_real_escape_string(
'INSERT INTO `transfers` (`uid1`,`uid2`,`city`,`room`,`time`,`text`,`start1`) VALUES ("' . $this->info['id'] . '","' . $t['id'] . '","' . $this->info['city'] . '","' . $this->info['room'] . '","' . time(
) . '","' . mysql_real_escape_string(
htmlspecialchars($_POST['textarea'], null)
) . '","' . time() . '")'
);
@ -1971,7 +1973,7 @@ class User
return $plid;
}
public function addNewbot($id, $botDate, $clon, $logins_bot = null, $luser = null, $round = null)
public function addNewbot($id, $botDate = null, $clon = null, $logins_bot = null, $luser = null, $round = null): array|int
{
if ($clon != null) {
$r = 0;
@ -2022,7 +2024,7 @@ class User
unset($statss);
}
$uid = Db::lastInsertId();
$uid = (int)Db::lastInsertId();
//копируем статы
Db::sql('insert into stats (clone, id, stats, hpNow, upLevel, bot, priems) values (?,?,?,1000000,?,1,?)', [$clon['id'], $uid, $clon['stats'], $clon['upLevel'], $clon['priems']]);
@ -2049,71 +2051,67 @@ class User
if (!isset($bot['id'])) {
return [];
}
if (isset($logins_bot[$bot['login']])) {
$logins_bot[$bot['login']]++;
$bot['login'] = $bot['login'] . ' (' . $logins_bot[$bot['login']] . ')';
} else {
if (isset($logins_bot[$bot['login']])) {
$logins_bot[$bot['login']]++;
$bot['login'] = $bot['login'] . ' (' . $logins_bot[$bot['login']] . ')';
} else {
$logins_bot[$bot['login']] = 1;
}
Db::sql(
"insert into users (align, login, level, pass, city, cityreg, name, sex, hobby, timereg, obraz, bot_id)
$logins_bot[$bot['login']] = 1;
}
Db::sql(
"insert into users (align, login, level, pass, city, cityreg, name, sex, hobby, timereg, obraz, bot_id)
select align, ?, level, uuid(), 'Неведомые земли', 'Неведомые земли', name, sex, hobby, replace(time_reg, 100, unix_timestamp()), obraz, id
from test_bot where id = ?",
[$bot['login'], $id]
);
[$bot['login'], $id]
);
$uid = Db::lastInsertId();
$uid = Db::lastInsertId();
if ($round > 0) { //Улучшаем мф. и статы и НР 1 раунд = +20%
$statss = Conversion::dataStringToArray($bot['stats']);
if ($round > 0) { //Улучшаем мф. и статы и НР 1 раунд = +20%
$statss = Conversion::dataStringToArray($bot['stats']);
$statss['s1'] = ceil($statss['s1'] * (1 + 0.20 * ($round)));
$statss['s2'] = ceil($statss['s2'] * (1 + 0.20 * ($round)));
$statss['s3'] = ceil($statss['s3'] * (1 + 0.20 * ($round)));
$statss['s4'] = ceil($statss['s4'] * (1 + 0.20 * ($round)));
$statss['s1'] = ceil($statss['s1'] * (1 + 0.20 * ($round)));
$statss['s2'] = ceil($statss['s2'] * (1 + 0.20 * ($round)));
$statss['s3'] = ceil($statss['s3'] * (1 + 0.20 * ($round)));
$statss['s4'] = ceil($statss['s4'] * (1 + 0.20 * ($round)));
$statss['hpAll'] = ceil($statss['hpAll'] * (1 + 0.20 * ($round)));
$statss['mpAll'] = ceil($statss['mpAll'] * (1 + 0.20 * ($round)));
$statss['hpAll'] = ceil($statss['hpAll'] * (1 + 0.20 * ($round)));
$statss['mpAll'] = ceil($statss['mpAll'] * (1 + 0.20 * ($round)));
$statss['m1'] = ceil($statss['m1'] * (1 + 0.20 * ($round)));
$statss['m2'] = ceil($statss['m2'] * (1 + 0.20 * ($round)));
$statss['m3'] = ceil($statss['m3'] * (1 + 0.20 * ($round)));
$statss['m4'] = ceil($statss['m4'] * (1 + 0.20 * ($round)));
$statss['m5'] = ceil($statss['m5'] * (1 + 0.20 * ($round)));
$statss['za'] = ceil($statss['za'] * (1 + 0.20 * ($round)));
$statss['zm'] = ceil($statss['zm'] * (1 + 0.20 * ($round)));
$bot['stats'] = Conversion::arrayToDataString($statss);
unset($statss);
}
Db::sql('insert into stats (id, stats, hpNow, upLevel, bot) values (?,?,1000000,?,1)', [$uid, $bot['stats'], $bot['upLevel']]);
$bot['id'] = $uid;
$bot['logins_bot'] = $logins_bot;
//Выдаем предметы
$iu = explode(',', $bot['itemsUse']);
$i = 0;
$w3b = 0;
foreach ($iu as $item) {
$iditem = ItemsModel::addItem($item, $bot['id']);
$inslot = Db::getValue('select inslot from items_main where id = ?', [$item]) ?? 2000;
if ($inslot === 3) {
if ($w3b === 1) {
$inslot = 14;
} else {
$w3b = 1;
}
}
Db::sql('update items_users set inOdet = ? where id = ?', [$inslot, $iditem]);
}
return $bot;
$statss['m1'] = ceil($statss['m1'] * (1 + 0.20 * ($round)));
$statss['m2'] = ceil($statss['m2'] * (1 + 0.20 * ($round)));
$statss['m3'] = ceil($statss['m3'] * (1 + 0.20 * ($round)));
$statss['m4'] = ceil($statss['m4'] * (1 + 0.20 * ($round)));
$statss['m5'] = ceil($statss['m5'] * (1 + 0.20 * ($round)));
$statss['za'] = ceil($statss['za'] * (1 + 0.20 * ($round)));
$statss['zm'] = ceil($statss['zm'] * (1 + 0.20 * ($round)));
$bot['stats'] = Conversion::arrayToDataString($statss);
unset($statss);
}
Db::sql('insert into stats (id, stats, hpNow, upLevel, bot) values (?,?,1000000,?,1)', [$uid, $bot['stats'], $bot['upLevel']]);
$bot['id'] = $uid;
$bot['logins_bot'] = $logins_bot;
//Выдаем предметы
$iu = explode(',', $bot['itemsUse']);
$i = 0;
$w3b = 0;
foreach ($iu as $item) {
$iditem = ItemsModel::addItem($item, $bot['id']);
$inslot = Db::getValue('select inslot from items_main where id = ?', [$item]) ?? 2000;
if ($inslot === 3) {
if ($w3b === 1) {
$inslot = 14;
} else {
$w3b = 1;
}
}
Db::sql('update items_users set inOdet = ? where id = ?', [$inslot, $iditem]);
}
return $bot;
}
}
@ -2344,8 +2342,10 @@ class User
{
//fixme какая-то дичь тут.
$item = Db::getRow('select uid, item_id, inGroup, inShop from items_users where id = ?', [$id]);
return Db::getValue('select count(id) from items_users where inShop = ? and item_id = ? and uid = ? and inGroup = ?',
[$item['inShop'], $item['item_id'], $item['uid'], $item['ingroup']]);
return Db::getValue(
'select count(id) from items_users where inShop = ? and item_id = ? and uid = ? and inGroup = ?',
[$item['inShop'], $item['item_id'], $item['uid'], $item['ingroup']]
);
}
public function obj_takeItem($id): void
@ -3605,7 +3605,8 @@ class User
if ($po['sudba'] == '0') {
$is2 .= ' <img title="Этот предмет будет связан общей судьбой с первым, кто наденет его. Никто другой не сможет его использовать." src="' . Config::img() . '/i/destiny0.gif">';
} elseif ($po['sudba'] == '1') {
$is2 .= ' <img title="Этот предмет будет связан общей судьбой с первым, кто возьмет предмет. Никто другой не сможет его использовать." src="' . Config::img() . '/i/destiny0.gif">';
$is2 .= ' <img title="Этот предмет будет связан общей судьбой с первым, кто возьмет предмет. Никто другой не сможет его использовать." src="' . Config::img(
) . '/i/destiny0.gif">';
} else {
$is2 .= ' <img title="Этот предмет связан общей судьбой с ' . $po['sudba'] . '. Никто другой не сможет его использовать." src="' . Config::img() . '/i/desteny.gif">';
}
@ -3789,7 +3790,8 @@ class User
$tr .= '<br>• Броня ' . $bn[$i] . ': ' . $po['add_mib' . $i] . '-' . $po['add_mab' . $i];
}
if (isset($po['mf_mib']) && $po['mf_mib'] > 0) {
$tr .= ' <a href="main.php?inv=1&otdel=' . $_GET['otdel'] . '&rstv=' . $pl['id'] . '&mf=mib' . $i . '"><img src="' . Config::img() . '/i/up.gif" width="11" height="11"></a>';
$tr .= ' <a href="main.php?inv=1&otdel=' . $_GET['otdel'] . '&rstv=' . $pl['id'] . '&mf=mib' . $i . '"><img src="' . Config::img(
) . '/i/up.gif" width="11" height="11"></a>';
}
}
$i++;
@ -3933,7 +3935,11 @@ class User
if (isset($po['free_stats']) && $po['free_stats'] > 0) {
$is2 .= '<br><strong>Распределение статов:</strong>';
$is2 .= '<div style="margin-left:20px;"><small>Сила: ' . $po['add_s1'] . ' <a href="?inv=1&itmid=' . $pl['id'] . '&otdel=' . ((int)$_GET['otdel']) . '&ufs=1"><img src="' . Config::img() . '/i/plus.gif"></a><br>Ловкость: ' . $po['add_s2'] . ' <a href="?inv=1&itmid=' . $pl['id'] . '&otdel=' . ((int)$_GET['otdel']) . '&ufs=2"><img src="' . Config::img() . '/i/plus.gif"></a><br>Интуиция: ' . $po['add_s3'] . ' <a href="?inv=1&itmid=' . $pl['id'] . '&otdel=' . ((int)$_GET['otdel']) . '&ufs=3"><img src="' . Config::img() . '/i/plus.gif"></a><br>Интеллект: ' . $po['add_s5'] . ' <a href="?inv=1&itmid=' . $pl['id'] . '&otdel=' . ((int)$_GET['otdel']) . '&ufs=5"><img src="' . Config::img() . '/i/plus.gif"></a></small></div>';
$is2 .= '<div style="margin-left:20px;"><small>Сила: ' . $po['add_s1'] . ' <a href="?inv=1&itmid=' . $pl['id'] . '&otdel=' . ((int)$_GET['otdel']) . '&ufs=1"><img src="' . Config::img(
) . '/i/plus.gif"></a><br>Ловкость: ' . $po['add_s2'] . ' <a href="?inv=1&itmid=' . $pl['id'] . '&otdel=' . ((int)$_GET['otdel']) . '&ufs=2"><img src="' . Config::img(
) . '/i/plus.gif"></a><br>Интуиция: ' . $po['add_s3'] . ' <a href="?inv=1&itmid=' . $pl['id'] . '&otdel=' . ((int)$_GET['otdel']) . '&ufs=3"><img src="' . Config::img(
) . '/i/plus.gif"></a><br>Интеллект: ' . $po['add_s5'] . ' <a href="?inv=1&itmid=' . $pl['id'] . '&otdel=' . ((int)$_GET['otdel']) . '&ufs=5"><img src="' . Config::img(
) . '/i/plus.gif"></a></small></div>';
$is2 .= '&bull; Осталось распределений: ' . $po['free_stats'] . '';
}
@ -3985,17 +3991,28 @@ class User
} else {
$is2 .= '<div style="margin-left:20px;"><small>
Мастерство владения мечами: ' . (0 + $po['add_a1']) . ' <a href="?inv=1&itmid=' . $pl['id'] . '&otdel=' . ((int)$_GET['otdel']) . '&ufsms=1"><img src="' . Config::img() . '/i/plus.gif"></a><br>
Мастерство владения дубинами, булавами: ' . (0 + $po['add_a2']) . ' <a href="?inv=1&itmid=' . $pl['id'] . '&otdel=' . ((int)$_GET['otdel']) . '&ufsms=2"><img src="' . Config::img() . '/i/plus.gif"></a><br>
Мастерство владения ножами, кастетами: ' . (0 + $po['add_a3']) . ' <a href="?inv=1&itmid=' . $pl['id'] . '&otdel=' . ((int)$_GET['otdel']) . '&ufsms=3"><img src="' . Config::img() . '/i/plus.gif"></a><br>
Мастерство владения топорами, секирами: ' . (0 + $po['add_a4']) . ' <a href="?inv=1&itmid=' . $pl['id'] . '&otdel=' . ((int)$_GET['otdel']) . '&ufsms=4"><img src="' . Config::img() . '/i/plus.gif"></a><br>
Мастерство владения магическими посохами: ' . (0 + $po['add_a5']) . ' <a href="?inv=1&itmid=' . $pl['id'] . '&otdel=' . ((int)$_GET['otdel']) . '&ufsms=5"><img src="' . Config::img() . '/i/plus.gif"></a><br>
Мастерство владения стихией Огня: ' . (0 + $po['add_mg1']) . ' <a href="?inv=1&itmid=' . $pl['id'] . '&otdel=' . ((int)$_GET['otdel']) . '&ufsms=6"><img src="' . Config::img() . '/i/plus.gif"></a><br>
Мастерство владения стихией Воздуха: ' . (0 + $po['add_mg2']) . ' <a href="?inv=1&itmid=' . $pl['id'] . '&otdel=' . ((int)$_GET['otdel']) . '&ufsms=7"><img src="' . Config::img() . '/i/plus.gif"></a><br>
Мастерство владения стихией Воды: ' . (0 + $po['add_mg3']) . ' <a href="?inv=1&itmid=' . $pl['id'] . '&otdel=' . ((int)$_GET['otdel']) . '&ufsms=8"><img src="' . Config::img() . '/i/plus.gif"></a><br>
Мастерство владения стихией Земли: ' . (0 + $po['add_mg4']) . ' <a href="?inv=1&itmid=' . $pl['id'] . '&otdel=' . ((int)$_GET['otdel']) . '&ufsms=9"><img src="' . Config::img() . '/i/plus.gif"></a><br>
Мастерство владения магией Света: ' . (0 + $po['add_mg5']) . ' <a href="?inv=1&itmid=' . $pl['id'] . '&otdel=' . ((int)$_GET['otdel']) . '&ufsms=10"><img src="' . Config::img() . '/i/plus.gif"></a><br>
Мастерство владения магией Тьмы: ' . (0 + $po['add_mg6']) . ' <a href="?inv=1&itmid=' . $pl['id'] . '&otdel=' . ((int)$_GET['otdel']) . '&ufsms=11"><img src="' . Config::img() . '/i/plus.gif"></a><br>
Мастерство владения серой магией: ' . (0 + $po['add_mg7']) . ' <a href="?inv=1&itmid=' . $pl['id'] . '&otdel=' . ((int)$_GET['otdel']) . '&ufsms=12"><img src="' . Config::img() . '/i/plus.gif"></a><br>
Мастерство владения дубинами, булавами: ' . (0 + $po['add_a2']) . ' <a href="?inv=1&itmid=' . $pl['id'] . '&otdel=' . ((int)$_GET['otdel']) . '&ufsms=2"><img src="' . Config::img(
) . '/i/plus.gif"></a><br>
Мастерство владения ножами, кастетами: ' . (0 + $po['add_a3']) . ' <a href="?inv=1&itmid=' . $pl['id'] . '&otdel=' . ((int)$_GET['otdel']) . '&ufsms=3"><img src="' . Config::img(
) . '/i/plus.gif"></a><br>
Мастерство владения топорами, секирами: ' . (0 + $po['add_a4']) . ' <a href="?inv=1&itmid=' . $pl['id'] . '&otdel=' . ((int)$_GET['otdel']) . '&ufsms=4"><img src="' . Config::img(
) . '/i/plus.gif"></a><br>
Мастерство владения магическими посохами: ' . (0 + $po['add_a5']) . ' <a href="?inv=1&itmid=' . $pl['id'] . '&otdel=' . ((int)$_GET['otdel']) . '&ufsms=5"><img src="' . Config::img(
) . '/i/plus.gif"></a><br>
Мастерство владения стихией Огня: ' . (0 + $po['add_mg1']) . ' <a href="?inv=1&itmid=' . $pl['id'] . '&otdel=' . ((int)$_GET['otdel']) . '&ufsms=6"><img src="' . Config::img(
) . '/i/plus.gif"></a><br>
Мастерство владения стихией Воздуха: ' . (0 + $po['add_mg2']) . ' <a href="?inv=1&itmid=' . $pl['id'] . '&otdel=' . ((int)$_GET['otdel']) . '&ufsms=7"><img src="' . Config::img(
) . '/i/plus.gif"></a><br>
Мастерство владения стихией Воды: ' . (0 + $po['add_mg3']) . ' <a href="?inv=1&itmid=' . $pl['id'] . '&otdel=' . ((int)$_GET['otdel']) . '&ufsms=8"><img src="' . Config::img(
) . '/i/plus.gif"></a><br>
Мастерство владения стихией Земли: ' . (0 + $po['add_mg4']) . ' <a href="?inv=1&itmid=' . $pl['id'] . '&otdel=' . ((int)$_GET['otdel']) . '&ufsms=9"><img src="' . Config::img(
) . '/i/plus.gif"></a><br>
Мастерство владения магией Света: ' . (0 + $po['add_mg5']) . ' <a href="?inv=1&itmid=' . $pl['id'] . '&otdel=' . ((int)$_GET['otdel']) . '&ufsms=10"><img src="' . Config::img(
) . '/i/plus.gif"></a><br>
Мастерство владения магией Тьмы: ' . (0 + $po['add_mg6']) . ' <a href="?inv=1&itmid=' . $pl['id'] . '&otdel=' . ((int)$_GET['otdel']) . '&ufsms=11"><img src="' . Config::img(
) . '/i/plus.gif"></a><br>
Мастерство владения серой магией: ' . (0 + $po['add_mg7']) . ' <a href="?inv=1&itmid=' . $pl['id'] . '&otdel=' . ((int)$_GET['otdel']) . '&ufsms=12"><img src="' . Config::img(
) . '/i/plus.gif"></a><br>
</small></div>';
$is2 .= 'Осталось распределений: ' . $mx1;
}
@ -4146,14 +4163,16 @@ class User
mysql_query('SELECT * FROM `clan` WHERE `id` = "' . $po['toclan1'][0] . '" LIMIT 1')
);
if (isset($clpo['id'])) {
$is2 .= '<div style="color:brown;">Предмет принадлежит клану <img style="vertical-align:bottom" src="' . Config::img() . '/i/clan/' . $clpo['name_mini'] . '.gif" width="24" height"15"> <strong>' . $clpo['name'] . '</strong>';
$is2 .= '<div style="color:brown;">Предмет принадлежит клану <img style="vertical-align:bottom" src="' . Config::img(
) . '/i/clan/' . $clpo['name_mini'] . '.gif" width="24" height"15"> <strong>' . $clpo['name'] . '</strong>';
$plpo = mysql_fetch_array(
mysql_query(
'SELECT `id`,`login`,`cityreg` FROM `users` WHERE `id` = "' . $po['toclan1'][1] . '" LIMIT 1'
)
);
if (isset($plpo['id'])) {
$is2 .= ' <font color=grey>(Дар игрока <strong>' . $plpo['login'] . '</strong><a href="info/' . $plpo['id'] . '" target="_blank"><img src="' . Config::img() . '/i/inf_' . $plpo['cityreg'] . '.gif" width="9"></a>)</font>';
$is2 .= ' <font color=grey>(Дар игрока <strong>' . $plpo['login'] . '</strong><a href="info/' . $plpo['id'] . '" target="_blank"><img src="' . Config::img(
) . '/i/inf_' . $plpo['cityreg'] . '.gif" width="9"></a>)</font>';
if ($plpo['login'] == $this->info['login']) {
if (isset($_GET['backmyitm'])) {
$pl['inOdet'] = 0;
@ -4299,7 +4318,8 @@ class User
) . '" LIMIT 1'
)
);
$is1 .= '<small>Предмет у игрока<br><strong>' . $yui['login'] . '</strong><a href="info/' . $yui['id'] . '" target="_blank"><img width="10" src="' . Config::img() . '/i/inf_' . $yui['cityreg'] . '.gif"></a></small>';
$is1 .= '<small>Предмет у игрока<br><strong>' . $yui['login'] . '</strong><a href="info/' . $yui['id'] . '" target="_blank"><img width="10" src="' . Config::img(
) . '/i/inf_' . $yui['cityreg'] . '.gif"></a></small>';
if ($this->info['tt'][14][0] == 1 || ($this->info['id'] == $us_1)) {
$is1 .= '<br><small style=""><a href="?clan&deposit&ungive_itm=' . $pl['id'] . '">Изъять предмет</a></small>';
}
@ -4647,13 +4667,15 @@ class User
}
if ($pl['magic_inc'] && $pl['type'] == 30) {
//используем эликсир
$pldate = '<table border=\\\'0\\\' width=\\\'100%\\\' cellspacing=\\\'0\\\' cellpadding=\\\'5\\\'><tr><td rowspan=2 width=\\\'80\\\' valign=\\\'middle\\\'><div align=\\\'center\\\'><img src=\\\'' . Config::img() . '/i/items/' . $pl['img'] . '\\\'></div></td><td valign=\\\'middle\\\' align=\\\'left\\\'>&quot;<strong>' . $pl['name'] . '</strong>&quot;<br>Использовать сейчас?</td></tr></table>';
$pldate = '<table border=\\\'0\\\' width=\\\'100%\\\' cellspacing=\\\'0\\\' cellpadding=\\\'5\\\'><tr><td rowspan=2 width=\\\'80\\\' valign=\\\'middle\\\'><div align=\\\'center\\\'><img src=\\\'' . Config::img(
) . '/i/items/' . $pl['img'] . '\\\'></div></td><td valign=\\\'middle\\\' align=\\\'left\\\'>&quot;<strong>' . $pl['name'] . '</strong>&quot;<br>Использовать сейчас?</td></tr></table>';
$useUrl = 'top.useiteminv(\'' . (0 + $pl['id']) . '\',\'' . $pl['img'] . '\',\'' . $pl['img'] . '\',1,\'' . $pldate . '\',\'' . (0 + $_GET['otdel']) . '\');';
} elseif ($pl['magic_inc'] && $pl['type'] == 29) { //используем заклятие
if (isset($po['useOnLogin']) && !isset($po['zazuby'])) { //на персонажа
$useUrl = 'top.useMagic(\'' . $pl['name'] . '\',' . (0 + $pl['id']) . ',\'' . $pl['img'] . '\',1,\'main.php?' . $inv1 . 'otdel=' . ((int)$_GET['otdel']) . '&use_pid=' . $pl['id'] . '&rnd=' . $code . '\');';
} else { //просто использование (на себя, либо без указания предмета\логина)
$pldate = '<table border=\\\'0\\\' width=\\\'100%\\\' cellspacing=\\\'0\\\' cellpadding=\\\'5\\\'><tr><td rowspan=2 width=\\\'80\\\' valign=\\\'middle\\\'><div align=\\\'center\\\'><img src=\\\'' . Config::img() . '/i/items/' . $pl['img'] . '\\\'></div></td><td valign=\\\'middle\\\' align=\\\'left\\\'>&quot;<strong>' . $pl['name'] . '</strong>&quot;<br>Использовать сейчас?</td></tr></table>';
$pldate = '<table border=\\\'0\\\' width=\\\'100%\\\' cellspacing=\\\'0\\\' cellpadding=\\\'5\\\'><tr><td rowspan=2 width=\\\'80\\\' valign=\\\'middle\\\'><div align=\\\'center\\\'><img src=\\\'' . Config::img(
) . '/i/items/' . $pl['img'] . '\\\'></div></td><td valign=\\\'middle\\\' align=\\\'left\\\'>&quot;<strong>' . $pl['name'] . '</strong>&quot;<br>Использовать сейчас?</td></tr></table>';
$useUrl = 'top.useiteminv(\'' . (0 + $pl['id']) . '\',\'' . $pl['img'] . '\',\'' . $pl['img'] . '\',1,\'' . $pldate . '\',\'' . (0 + $_GET['otdel']) . '\',' . (0 + $_GET['otdel']) . ');';
}
//на предмет
@ -4700,7 +4722,8 @@ class User
if ($pl['group'] > 0) {
$is1 .= '<br>';
if ($this->itemsX($pl['id']) < $pl['group_max']) {
$is1 .= '<a href="main.php?inv=1&otdel=' . ((int)$_GET['otdel']) . '&stack=' . $pl['id'] . '&rnd=' . $code . '" title="Собрать"><img src="' . Config::img() . '/i/stack.gif" /></a>';
$is1 .= '<a href="main.php?inv=1&otdel=' . ((int)$_GET['otdel']) . '&stack=' . $pl['id'] . '&rnd=' . $code . '" title="Собрать"><img src="' . Config::img(
) . '/i/stack.gif" /></a>';
}
if ($this->itemsX($pl['id']) > 1) {
$tbl = '<table style="border: 0; width: 100%;" cellspacing="0" cellpadding="5"><tr><td style="text-align: center; width: 70px;" rowspan="2">
@ -4727,7 +4750,8 @@ class User
if ($d[1] == 1) { //можно выкинуть
if (!isset($po['nodelete'])) {
$is1 .= ' <a onClick="top.drop(' . $pl['id'] . ',\'' . $pl['img'] . '\',\'' . $pl['name'] . '\',1,\'<table border=\\\'0\\\' width=\\\'100%\\\' cellspacing=\\\'0\\\' cellpadding=\\\'5\\\'><tr><td rowspan=2><img src=\\\'' . Config::img() . '/i/items/' . $pl['img'] . '\\\'></td><td align=\\\'left\\\'>Предмет <strong>' . $pl['name'] . '</strong> будет утерян, вы уверены ?</td></tr></table>\',\'' . intval(
$is1 .= ' <a onClick="top.drop(' . $pl['id'] . ',\'' . $pl['img'] . '\',\'' . $pl['name'] . '\',1,\'<table border=\\\'0\\\' width=\\\'100%\\\' cellspacing=\\\'0\\\' cellpadding=\\\'5\\\'><tr><td rowspan=2><img src=\\\'' . Config::img(
) . '/i/items/' . $pl['img'] . '\\\'></td><td align=\\\'left\\\'>Предмет <strong>' . $pl['name'] . '</strong> будет утерян, вы уверены ?</td></tr></table>\',\'' . intval(
$_GET['otdel']
) . Config::img() . ' / i / clear . gif"></a>';
}
@ -5015,7 +5039,8 @@ class User
$itm['data'] = Conversion::dataStringToArray($itm['data']);
unset($itm['data']['frompisher']);
$itm['data'] = Conversion::arrayToDataString($itm['data']);
if ($pl['data'] == $itm['data'] && $pl['name'] == $itm['name'] && $itm['iznosMAX'] == $pl['iznosMAX'] && $pl['iznosNOW'] == 0 && ($pl['timeOver'] == 0 || $pl['timeOver'] > time()) && $pl['gift'] == $itm['gift']) {
if ($pl['data'] == $itm['data'] && $pl['name'] == $itm['name'] && $itm['iznosMAX'] == $pl['iznosMAX'] && $pl['iznosNOW'] == 0 && ($pl['timeOver'] == 0 || $pl['timeOver'] > time(
)) && $pl['gift'] == $itm['gift']) {
$upd = mysql_query(
'UPDATE `items_users` SET `lastUPD` = "' . time() . '", `inGroup` = "' . $itm['inGroup'] . '" WHERE `id` = "' . $pl['id'] . '" LIMIT 1'
);
@ -5070,7 +5095,8 @@ class User
$snIt = 0;
//Проверяем одетые вещи и вещи с сроком годности
$itm = Db::getRow("select
$itm = Db::getRow(
"select
items_main.id,
items_users.id as iduid,
data,
@ -5100,7 +5126,8 @@ class User
srok > 0 or
(timeOver !=0 and timeOver < unix_timestamp())
) and uid = ?",
[$u['id']]);
[$u['id']]
);
$t = $this->items['tr'];
@ -5318,8 +5345,10 @@ class User
if ($e['id_eff'] == 2) {
//Проверка
$et = Db::getRow("select id, time from actions where uid = ? and vars like '%read%' and vals = (select id from items_main where name = ? limit 1)",
[$e['uid'], str_replace('Изучение: ', '', $e['name'])]);
$et = Db::getRow(
"select id, time from actions where uid = ? and vars like '%read%' and vals = (select id from items_main where name = ? limit 1)",
[$e['uid'], str_replace('Изучение: ', '', $e['name'])]
);
$et = isset($et['id']) && $et['time'] >= time();
} else {
@ -5348,8 +5377,10 @@ class User
if ($u['battle'] > 0) {
$lastHOD = Db::getValue('select if(type != 6, id_hod + 1, id_hod) as id_hod from battle_logs where battle = ? order by id_hod desc limit 1', [$u['battle']]);
if (!empty($lastHOD)) {
Db::sql("insert into battle_logs (time, battle, id_hod, text, vars, zona1, zonb1, zona2, zonb2, type) values (unix_timestamp(),?,?,?,?,'','','','',6)",
[$u['battle'], $lastHOD, "{tm1}$text у игрока {u1}", "login1={$u['login']}||t1={$u['team']}||time=" . time()]);
Db::sql(
"insert into battle_logs (time, battle, id_hod, text, vars, zona1, zonb1, zona2, zonb2, type) values (unix_timestamp(),?,?,?,?,'','','','',6)",
[$u['battle'], $lastHOD, "{tm1}$text у игрока {u1}", "login1={$u['login']}||t1={$u['team']}||time=" . time()]
);
}
}
}
@ -5359,8 +5390,10 @@ class User
public function info_remont(): string
{
$r = '';
$sp = Db::getRows('select iznosNOW, iznosMAX, name from items_users left join items_main on item_id = items_main.id where uid = ? and inShop = 0 and inOdet between 1 and 18 limit 18',
[$this->info['id']]);
$sp = Db::getRows(
'select iznosNOW, iznosMAX, name from items_users left join items_main on item_id = items_main.id where uid = ? and inShop = 0 and inOdet between 1 and 18 limit 18',
[$this->info['id']]
);
foreach ($sp as $pl) {
if ($pl['iznosNOW'] <= ceil($pl['iznosMAX'] * 0.80)) {
continue;
@ -5604,7 +5637,8 @@ class User
);
$this->error = 'Вам нехорошо...';
} elseif (mysql_query(
'UPDATE `items_users` SET `uid` = "' . $this->info['id'] . '",`lastUPD` = "' . time() . '",`gift` = "' . $itm['gift'] . '",`gtxt1` = "' . $itm['gtxt1'] . '",`gtxt2` = "Предмет из упаковки. Дата запаковки: ' . date(
'UPDATE `items_users` SET `uid` = "' . $this->info['id'] . '",`lastUPD` = "' . time(
) . '",`gift` = "' . $itm['gift'] . '",`gtxt1` = "' . $itm['gtxt1'] . '",`gtxt2` = "Предмет из упаковки. Дата запаковки: ' . date(
'd.m.Y H:i:s', $itmin['time_create']
) . '" WHERE `id` = "' . $itmin['id'] . '" LIMIT 1'
)) {
@ -5635,7 +5669,8 @@ class User
$pid = ItemsModel::addItem($s['id'], $this->info['id']);
if ($pid > 0) {
mysql_query(
'UPDATE `items_users` SET `lastUPD` = "' . time() . '",`gift` = "' . $itm['gift'] . '" WHERE `id` = "' . $pid . '" AND `uid` = "' . $this->info['id'] . '" LIMIT 1'
'UPDATE `items_users` SET `lastUPD` = "' . time(
) . '",`gift` = "' . $itm['gift'] . '" WHERE `id` = "' . $pid . '" AND `uid` = "' . $this->info['id'] . '" LIMIT 1'
);
}
$j++;
@ -5957,14 +5992,16 @@ LIMIT 1'
);
$col = $col[0];
mysql_query(
'UPDATE `items_users` SET `lastUPD`="' . time() . '",`delete`="' . time() . '" WHERE `item_id`="' . $itm['item_id'] . '" AND `inOdet` = 0 AND `delete` < 100000 AND `uid` = "' . $itm['uid'] . '" AND `data` NOT LIKE "%nodelete%"' . $whr
'UPDATE `items_users` SET `lastUPD`="' . time() . '",`delete`="' . time(
) . '" WHERE `item_id`="' . $itm['item_id'] . '" AND `inOdet` = 0 AND `delete` < 100000 AND `uid` = "' . $itm['uid'] . '" AND `data` NOT LIKE "%nodelete%"' . $whr
);
$this->error = 'Предметы "' . $itm['name'] . ' (x' . ($col + 1) . ')" выброшены';
Delo::add(
1,
'System.inventory',
$uid,
'&quot;<span style="color: maroon; ">System.inventory</span>&quot;: Предметы &quot;<strong>' . $itm['name'] . ' (x' . $col . ')</strong>&quot; [itm:' . $itm['id'] . '=' . time() . '] были <strong>выброшены</strong>.',
'&quot;<span style="color: maroon; ">System.inventory</span>&quot;: Предметы &quot;<strong>' . $itm['name'] . ' (x' . $col . ')</strong>&quot; [itm:' . $itm['id'] . '=' . time(
) . '] были <strong>выброшены</strong>.',
);
} else {
$this->error = 'Предмет "' . $itm['name'] . '" выброшен';
@ -6036,7 +6073,8 @@ LIMIT 1'
mysql_query(
'UPDATE `stats` SET `exp` = "12499" WHERE `id` = "' . $this->info['id'] . '" LIMIT 1'
);
echo '<script>chat.sendMsg(["new","' . time() . '","6","","' . $this->info['login'] . '","Для перехода на 6-ой уровень требуется &quot;<strong>Кристалл Вечности [6]</strong>&quot;.","Black","1","1","0"]);</script>';
echo '<script>chat.sendMsg(["new","' . time(
) . '","6","","' . $this->info['login'] . '","Для перехода на 6-ой уровень требуется &quot;<strong>Кристалл Вечности [6]</strong>&quot;.","Black","1","1","0"]);</script>';
} else {
mysql_query(
'UPDATE `items_users` SET `delete` = "' . time() . '" WHERE `id` = "' . $itm['id'] . '" LIMIT 1'
@ -6478,7 +6516,8 @@ LIMIT 1'
$r = '<font color="#FF0000"><strong>Вы успешно изъяли предмет &quot;' . $itm_['name'] . '&quot;</strong></font><br />';
$col = $this->itemsX(((int)$id));
mysql_query(
'INSERT INTO `clan_operations` (`clan`, `time`, `type`, `text`, `val`, `uid`) VALUES ("' . $res['id'] . '", "' . time() . '", "6", "' . $user['login'] . '", "' . $itm_['name'] . ' (x' . $col . ') Ид : [' . $id . '] | У персонажа : [' . $itm_['uid'] . ']", "' . $user['id'] . '")'
'INSERT INTO `clan_operations` (`clan`, `time`, `type`, `text`, `val`, `uid`) VALUES ("' . $res['id'] . '", "' . time(
) . '", "6", "' . $user['login'] . '", "' . $itm_['name'] . ' (x' . $col . ') Ид : [' . $id . '] | У персонажа : [' . $itm_['uid'] . ']", "' . $user['id'] . '")'
);
mysql_query(
'UPDATE `items_users` SET `lastUPD` = "' . time() . '", `uid` = "-21' . $res['id'] . '" ' . $o . ' WHERE `id` = "' . $id . '" LIMIT 1'
@ -6509,7 +6548,8 @@ LIMIT 1'
if ($user['inTurnir'] == 0 && $user['inTurnirnew'] == 0) {
$col = $this->itemsX(((int)$id));
mysql_query(
'INSERT INTO `clan_operations` (`clan`, `time`, `type`, `text`, `val`, `uid`) VALUES ("' . $res['id'] . '", "' . time() . '", "5", "' . $user['login'] . '", "' . $itm_['name'] . ' (x' . $col . ') Ид : [' . $id . '] Хозяин : [' . $cls . ']", "' . $user['id'] . '")'
'INSERT INTO `clan_operations` (`clan`, `time`, `type`, `text`, `val`, `uid`) VALUES ("' . $res['id'] . '", "' . time(
) . '", "5", "' . $user['login'] . '", "' . $itm_['name'] . ' (x' . $col . ') Ид : [' . $id . '] Хозяин : [' . $cls . ']", "' . $user['id'] . '")'
);
mysql_query(
'UPDATE `items_users` SET `lastUPD` = "' . time() . '", `uid` = "' . $user['id'] . '" WHERE `id` = "' . $id . '" LIMIT 1'
@ -6551,7 +6591,8 @@ LIMIT 1'
'UPDATE `items_users` SET `lastUPD` = "' . time() . '", `uid` = "' . $user['id'] . '", `data` = "' . $pl['data'] . '" WHERE `id` = "' . $pl['id'] . '"'
);
mysql_query(
'INSERT INTO `clan_operations` (`clan`, `time`, `type`, `text`, `val`, `uid`) VALUES ("' . $res['id'] . '", "' . time() . '", "' . $type . '", "' . $user['login'] . '", "' . $it_n['name'] . ' (x' . $col . ') Ид : [' . $pl['id'] . ']", "' . $user['id'] . '")'
'INSERT INTO `clan_operations` (`clan`, `time`, `type`, `text`, `val`, `uid`) VALUES ("' . $res['id'] . '", "' . time(
) . '", "' . $type . '", "' . $user['login'] . '", "' . $it_n['name'] . ' (x' . $col . ') Ид : [' . $pl['id'] . ']", "' . $user['id'] . '")'
);
} elseif ($pl['uid'] == $user['id']) {
$col = $this->itemsX(((int)$pl['id']));
@ -6562,7 +6603,8 @@ LIMIT 1'
'UPDATE `items_users` SET `lastUPD` = "' . time() . '", `uid` = "-21' . $user['clan'] . '" WHERE `id` = "' . $pl['id'] . '"'
);
mysql_query(
'INSERT INTO `clan_operations` (`clan`, `time`, `type`, `text`, `val`, `uid`) VALUES ("' . $res['id'] . '", "' . time() . '", "9", "' . $user['login'] . '", "' . $it_n['name'] . ' (x' . $col . ') Ид : [' . $pl['id'] . ']", "' . $user['id'] . '")'
'INSERT INTO `clan_operations` (`clan`, `time`, `type`, `text`, `val`, `uid`) VALUES ("' . $res['id'] . '", "' . time(
) . '", "9", "' . $user['login'] . '", "' . $it_n['name'] . ' (x' . $col . ') Ид : [' . $pl['id'] . ']", "' . $user['id'] . '")'
);
}
}

View File

@ -1,118 +1,114 @@
<?php
if(!defined('GAME')) {
die();
if (!defined('GAME')) {
die();
}
/*
Прием: Вломить
Следующий удар по противнику наносит на 4 ед. больше
Прием: Вломить
Следующий удар по противнику наносит на 4 ед. больше
*/
$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 == $uid1 ) {
$a = 1;
$b = 2;
$u1 = $uid1;
$u2 = $uid2;
}elseif( $uid == $uid2 ) {
$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 == $uid1 ) {
$a = 1;
$b = 2;
$u1 = $uid1;
$u2 = $uid2;
}elseif( $uid == $uid2 ) {
$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]['yron']) && (
$at['p'][$a]['atack'][$j][1] == 1 ||
$at['p'][$a]['atack'][$j][1] == 4 ||
$at['p'][$a]['atack'][$j][1] == 5 )) {
if( $pvr['used'] == 0 && !isset($at['p'][$a]['priems']['kill'][$uid][$j_id]) ) {
//
$pvr['hp'] = 4;
$pvr['hp'] = $btl->testYronPriem( $u1, $u2, 12, $pvr['hp'], -1, true, false, 0 );
$pvr['mg'] = mysql_fetch_array(mysql_query('SELECT * FROM `eff_users` WHERE `uid` = "'.$u2.'" AND `v2` = "249" AND `delete` = 0 LIMIT 1'));
if( $pvr['hp'] <= 1 && isset($pvr['mg'])) {
$pvr['hp'] = 0;
$at['p'][$a]['atack'][$j]['yron']['y'] = 1;
$at['p'][$a]['atack'][$j]['yron']['r'] = -1;
$at['p'][$a]['atack'][$j]['yron']['k'] = 1;
$at['p'][$a]['atack'][$j]['yron']['m_k'] = 1;
$at['p'][$a]['atack'][$j]['yron']['m_y'] = 1;
}
else
//
{
$at['p'][$a]['atack'][$j]['yron']['y'] += $pvr['hp'];
$at['p'][$a]['atack'][$j]['yron']['r'] -= $pvr['hp'];
$at['p'][$a]['atack'][$j]['yron']['k'] += $pvr['hp'];
$at['p'][$a]['atack'][$j]['yron']['m_y'] += $pvr['hp'];
$at['p'][$a]['atack'][$j]['yron']['m_k'] += $pvr['hp'];
}
//$at['p'][$a]['atack'][$j]['yron'] = $btl->testYronPriemAttack( 2 , $u1 , $u2 , $at['p'][$a]['atack'][$j]['yron'] );
//
$at['p'][$a]['atack'][$j]['yron']['plog'][] = '$this->deleffm(2,'.(0+$uid).','.$btl->stats[$btl->uids[$uid]]['u_priem'][$j_id][3].');
$this->priemAddLog( '.$id.', '.$a.', '.$b.', '.$u1.', '.$u2.',
"'.$btl->stats[$btl->uids[$u1]]['effects'][$btl->stats[$btl->uids[$uid]]['u_priem'][$j_id][0]]['name'].'",
"{tm1} '.$btl->addlt($a , 17 , $btl->users[$btl->uids[$u1]]['sex'] , NULL).'",
'.($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;
}
}
$j++;
}
}
// -- конец приема
return $at;
};
unset( $pr_used_this );
}else{
//Действие при клике
$this->addEffPr($pl,$id);
$pvr = [];
if (isset($pr_tested_this)) {
$fx_priem = function ($id, $at, $uid, $j_id) {
// -- начало приема
global $btl;
//Параметры приема
$pvr['used'] = 0;
$uid1 = $btl->atacks[$id]['uid1'];
$uid2 = $btl->atacks[$id]['uid2'];
if ($uid == $uid1) {
$a = 1;
$b = 2;
$u1 = $uid1;
$u2 = $uid2;
} elseif ($uid == $uid2) {
$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 $btl;
//Параметры приема
$pvr['used'] = 0;
$uid1 = $btl->atacks[$id]['uid1'];
$uid2 = $btl->atacks[$id]['uid2'];
if ($uid == $uid1) {
$a = 1;
$b = 2;
$u1 = $uid1;
$u2 = $uid2;
} elseif ($uid == $uid2) {
$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]['yron']) && (
$at['p'][$a]['atack'][$j][1] == 1 ||
$at['p'][$a]['atack'][$j][1] == 4 ||
$at['p'][$a]['atack'][$j][1] == 5)) {
if ($pvr['used'] == 0 && !isset($at['p'][$a]['priems']['kill'][$uid][$j_id])) {
//
$pvr['hp'] = 4;
$pvr['hp'] = $btl->testYronPriem($u1, $u2, 12, $pvr['hp'], -1, true, false, 0);
$pvr['mg'] = mysql_fetch_array(mysql_query('SELECT * FROM `eff_users` WHERE `uid` = "' . $u2 . '" AND `v2` = "249" AND `delete` = 0 LIMIT 1'));
if ($pvr['hp'] <= 1 && isset($pvr['mg'])) {
$pvr['hp'] = 0;
$at['p'][$a]['atack'][$j]['yron']['y'] = 1;
$at['p'][$a]['atack'][$j]['yron']['r'] = -1;
$at['p'][$a]['atack'][$j]['yron']['k'] = 1;
$at['p'][$a]['atack'][$j]['yron']['m_k'] = 1;
$at['p'][$a]['atack'][$j]['yron']['m_y'] = 1;
} else {
$at['p'][$a]['atack'][$j]['yron']['y'] += $pvr['hp'];
$at['p'][$a]['atack'][$j]['yron']['r'] -= $pvr['hp'];
$at['p'][$a]['atack'][$j]['yron']['k'] += $pvr['hp'];
$at['p'][$a]['atack'][$j]['yron']['m_y'] += $pvr['hp'];
$at['p'][$a]['atack'][$j]['yron']['m_k'] += $pvr['hp'];
}
$at['p'][$a]['atack'][$j]['yron']['plog'][] = '$this->deleffm(2,' . (0 + $uid) . ',' . $btl->stats[$btl->uids[$uid]]['u_priem'][$j_id][3] . ');
$this->priemAddLog( ' . $id . ', ' . $a . ', ' . $b . ', ' . $u1 . ', ' . $u2 . ',
"' . $btl->stats[$btl->uids[$u1]]['effects'][$btl->stats[$btl->uids[$uid]]['u_priem'][$j_id][0]]['name'] . '",
"{tm1} ' . $btl->addlt($a, 17, $btl->users[$btl->uids[$u1]]['sex'], null) . '",
' . ($btl->hodID + 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 {
//Действие при клике
$this->addEffPr($pl, $id);
}
unset($pvr);
?>