Переезд impstats и additem..

This commit is contained in:
2023-04-16 02:54:34 +03:00
parent 3dc4cf7284
commit 2bc67ce543
127 changed files with 584 additions and 612 deletions
+47 -298
View File
@@ -4,6 +4,7 @@ use Core\Config;
use Core\ConversionHelper;
use Core\Database;
use Core\Db;
use User\ItemsModel;
class User
{
@@ -911,6 +912,9 @@ class User
return $e;
}
/** Singletone.
* @return User
*/
public static function start(): User
{
if (!isset(self::$flag_one)) {
@@ -931,188 +935,6 @@ class User
return $r;
}
public function bsfinish($id, $bu, $di)
{
if ($bu) {
/* в этом бою проверяем юзеров */
$i = 0;
while ($i < count($bu[$i])) {
if ($bu[$i]['lose'] > 0 || $bu[$i]['nich']) {
mysql_query(
'UPDATE `users` SET `lose` = "' . $bu[$i]['lose'] . '", `nick` = "' . $bu[$i]['nich'] . '" WHERE `id` = "' . $bu[$i]['id'] . '" LIMIT 1'
);
mysql_query(
'UPDATE `bs_turnirs` SET `users_finish` = `users_finish` + 1 WHERE `id` = "' . $id['id'] . '" LIMIT 1'
);
/* удаляем юзера */
if ($bu['inBot'] == 0) {
$pls1 = mysql_fetch_array(
mysql_query(
'SELECT `id`, `bsid`, `money`, `finish`, `time`, `inBot`, `uid` FROM `bs_zv` WHERE `bsid` = "' . $id['id'] . '" AND `finish` = 0 AND `time` = "' . $id['time_start'] . '" AND `inBot` = "' . $bu[$i]['id'] . '" LIMIT 1'
)
);
if (isset($pls1['id'])) {
mysql_query('DELETE FROM `users` WHERE `id` = "' . $bu[$i]['id'] . '" LIMIT 1');
mysql_query('DELETE FROM `stats` WHERE `id` = "' . $bu[$i]['id'] . '" LIMIT 1');
//выкидываем предметы на землю
$spi = mysql_query(
'SELECT `id`,`item_id` FROM `items_users` WHERE `uid` = "' . $bu[$i]['id'] . '" LIMIT 500'
);
$ins = '';
while ($pli = mysql_fetch_array($spi)) {
$ins .= '("' . $di['dn_id'] . '","' . $pli['item_id'] . '","' . time(
) . '","' . $di['x'] . '","' . $di['y'] . '"),';
}
$ins = rtrim($ins, ',');
mysql_query(
'INSERT INTO `dungeon_items` (`dn`,`item_id`,`time`,`x`,`y`) VALUES ' . $ins . ''
);
mysql_query('DELETE FROM `items_users` WHERE `uid` = "' . $pls1['inBot'] . '" LIMIT 1');
mysql_query('DELETE FROM `eff_users` WHERE `uid` = "' . $pls1['inBot'] . '" LIMIT 1');
mysql_query(
'UPDATE `bs_zv` SET `finish` = "' . time(
) . '" WHERE `id` = "' . $pls1['id'] . '" LIMIT 1'
);
mysql_query('UPDATE `users` SET `inUser` = 0 WHERE `id` = "' . $pls1['uid'] . '" LIMIT 1');
}
}
$id['users_finish']++;
}
$i++;
}
}
if ($id['users'] - $id['users_finish'] >= 2) {
return;
}
$win = [];
$sp = mysql_query(
'SELECT `id`,`bsid`,`money`,`finish`,`time`,`inBot`,`uid` FROM `bs_zv` WHERE `bsid` = "' . $id['id'] . '" AND `finish` = "0" AND `time` = "' . $id['time_start'] . '" ORDER BY `money` DESC LIMIT 100'
);
while ($pl = mysql_fetch_array($sp)) {
$ur = mysql_fetch_array(
mysql_query(
'SELECT `id`,`login`,`room`,`name`,`sex`,`inUser`,`twink`,`lose`,`nich`,`win` FROM `users` WHERE `id` = "' . $pl['uid'] . '" LIMIT 1'
)
);
$ub = mysql_fetch_array(
mysql_query(
'SELECT `id`,`login`,`room`,`name`,`sex`,`inUser`,`twink`,`lose`,`nich`,`win` FROM `users` WHERE `id` = "' . $ur['inUser'] . '" LIMIT 1'
)
);
if (isset($ur['id']) && isset($ub['id']) && $ub['lose'] <= 0 && $ub['nich'] <= 0) {
$win = $ub;
$winr = $ur;
}
}
$chat = new Chat();
$cmsg = new ChatMessage();
/* завершаем БС */
if (isset($win['id']) && $win['lose'] == 0 && $win['nich'] == 0 && $win['id'] > 0) {
//есть победитель
$bsep = 0;
if ($winr['level'] < 6) {
$bsep = 2500;
} elseif ($winr['level'] < 7) {
$bsep = 5000;
} elseif ($winr['level'] < 8) {
$bsep = 15000;
} elseif ($winr['level'] < 9) {
$bsep = 25000;
} else {
$bsep = 50000;
}
/* Выдаем приз */
$mn = (round($id['money'] / 100 * 85));
mysql_query(
'UPDATE `users` SET `money` = `money` + "' . $mn . '" WHERE `id` = "' . $winr['id'] . '" LIMIT 1'
);
mysql_query(
'UPDATE `stats` SET `exp` = `exp` + "' . $bsep . '" WHERE `id` = "' . $winr['id'] . '" LIMIT 1'
);
/* чат */
$cmsg->setTo($winr['login']);
$cmsg->setText(
"Поздравляем! Вы победили в турнире &quot;Башня Смерти&quot;! Получено опыта: $bsep, деньги: $mn кр."
);
$cmsg->setType(6);
$chat->sendMsg($cmsg);
$cmsg->setTo('');
$cmsg->setIsAlert(true);
$cmsg->setText(
"Завершился турнир &quot;Башня Смерти&quot;, победитель турнира: <strong>{$winr['login']}</strong>! Поздравляем!"
);
$cmsg->setType(5);
$chat->sendMsg($cmsg);
$this->addDelo(
1, $uid,
'&quot;<span style="color: #C65F00; ">WinTournament.' . $this->info['city'] . '</span>&quot; (Башня Смерти): Получено &quot;<strong>' . $mn . '</strong> кр.&quot;',
time(), $this->info['city'], 'WinTournament.' . $this->info['city'] . '', 0, 0
);
} else {
/* чат */
$cmsg->setIsAlert(true);
$cmsg->setType(5);
$cmsg->setText('Завершился турнир «Башня Смерти», победитель турнира: отсутствует.');
}
$sp = mysql_query(
'SELECT `id`,`bsid`,`money`,`finish`,`time`,`inBot`,`uid` FROM `bs_zv` WHERE `bsid` = "' . $id['id'] . '" AND `time` = "' . $id['time_start'] . '" ORDER BY `money` DESC LIMIT 100'
);
while ($pl = mysql_fetch_array($sp)) {
$ur = mysql_fetch_array(
mysql_query(
'SELECT `id`,`login`,`room`,`name`,`sex`,`inUser`,`lose`,`nich`,`win` FROM `users` WHERE `id` = "' . $pl['uid'] . '" LIMIT 1'
)
);
$ub = mysql_fetch_array(
mysql_query(
'SELECT `id`,`login`,`room`,`name`,`sex`,`inUser`,`lose`,`nich`,`win` FROM `users` WHERE `id` = "' . $ur['inUser'] . '" LIMIT 1'
)
);
if (isset($ub['id'])) {
//del
mysql_query('DELETE FROM `users` WHERE `id` = "' . $ub['id'] . '" LIMIT 1');
mysql_query('DELETE FROM `stats` WHERE `id` = "' . $ub['id'] . '" LIMIT 1');
mysql_query('DELETE FROM `items_users` WHERE `uid` = "' . $ub['id'] . '" LIMIT 500');
mysql_query('DELETE FROM `eff_users` WHERE `uid` = "' . $ub['id'] . '" LIMIT 500');
//upd
mysql_query(
'UPDATE `bs_zv` SET `finish` = "' . time() . '" WHERE `id` = "' . $pl['id'] . '" LIMIT 1'
);
mysql_query('UPDATE `users` SET `inUser` = 0 WHERE `id` = "' . $pl['uid'] . '" LIMIT 1');
}
}
}
//вес предметов у юзера
public function ves($u): array
{
$r = ['now' => 0, 'max' => 0];
if ($u == null) {
//текущий персонаж
$r['now'] = mysql_fetch_array(
mysql_query(
'SELECT SUM(`im`.`massa`) FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON `iu`.`item_id` = `im`.`id` WHERE `iu`.`uid` = "' . $this->info['id'] . '" AND (`iu`.`delete` = "0" OR (`iu`.`delete` = "1000" AND `iu`.`inGroup` > 0)) AND `iu`.`inShop` = "0" AND `iu`.`inOdet` = "0"'
)
);
$r['now'] = 0 + $r['now'][0];
$r['max'] = 40 + ($this->stats['os7'] * 10) + $this->stats['s4'] + $this->stats['maxves'] + $this->stats['s1'] * 4;
$r['items'] = mysql_fetch_array(
mysql_query(
'SELECT COUNT(`im`.`id`) FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON `iu`.`item_id` = `im`.`id` WHERE `iu`.`uid` = "' . $this->info['id'] . '" AND `iu`.`delete` = "0" AND `iu`.`inShop` = "0" AND `iu`.`inOdet` = "0"'
)
);
$r['items'] = $r['items'][0];
}
return $r;
}
//Переплавка вещей \ рун
public function plavka($id, $type): string
{
@@ -1626,75 +1448,20 @@ FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON (`im`.`id` = `iu`.`
return $r;
}
/** Для совместимости. Поиск по файлам $this->additem выдаёт сотни отсылок с видимо подключаемымим файлами
* в которых невозможно отследить зависимость и сделать полноценную замену.
* @param $id
* @param $uid
* @param $md
* @param $dn
* @param $mxiznos
* @param $nosudba
* @param $plavka
* @return int|mixed|string
*/
public function addItem($id, $uid, $md = null, $dn = null, $mxiznos = null, $nosudba = null, $plavka = null)
{
$rt = -1;
$i = Db::getRow('select * from items_main where id = ?', [$id]);
if (isset($i['id'])) {
$d = Db::getRow('select id, items_id, data from items_main_data where items_id = ?', [$i['id']]);
//новая дата
$data = $d['data'];
if ($i['ts'] > 0 && $nosudba == null) {
$ui = Db::getValue('select login from users where id = ?', [$uid]);
$data .= '|sudba=' . $ui;
}
if ($md != null) {
$data .= $md;
$data = ConversionHelper::dataStringToArray($data); // Если в функции имеются две одинаковых константы SROK?
$data = $this->impStats($data);
}
//предмет с настройками из подземелья
if ($dn != null && $dn['dn_delete'] > 0) {
$i['dn_delete'] = 1;
}
if ($mxiznos > 0) {
$i['iznosMAXi'] = $mxiznos;
}
if ($this->info['dnow'] > 0) {
$room = $this->room['city'];
} else {
$room = $this->info['city'];
}
$args = [
$i['overTypei'],
$i['id'],
$uid,
$data,
$i['iznosMAXi'],
$i['geni'],
$i['magic_inci'],
$room,
$i['dn_delete'] ?? 0,
];
Db::sql(
'insert into items_users (overType, item_id, uid, data, iznosMAX, geniration, magic_inc, maidin, lastUPD, time_create, dn_delete) values (?,?,?,?,?,?,?,?,unix_timestamp(),unix_timestamp(),?)',
$args
);
$rt = Db::lastInsertId() ?? 0;
if ($rt !== 0) {
Db::sql('update items_users set dn_delete = 1 where id = ? and data like ?', [$rt, '%dn_delete=%']);
if ($uid == $this->info['id']) {
$this->stack($rt);
}
$ads = '';
if ($plavka != null) {
$ads = 'Расплавлен предмет : [' . $plavka . ']';
}
//Записываем в личное дело что предмет получен
$this->addDelo(
1,
$uid,
'&quot;AddItems.' . $this->info['city'] . '&quot;: Получен предмет &quot;<strong>' . $i['name'] . '</strong>&quot; (x1) [#' . $i['iid'] . ']. ' . $ads . '',
time(),
$this->info['city'],
'AddItems.' . $this->info['city'] . '',
0,
0
);
}
}
return $rt;
return ItemsModel::addItem($id, $uid, $md, $dn, $mxiznos, $nosudba, $plavka);
}
public function getNum($v)
@@ -2683,7 +2450,7 @@ FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON (`im`.`id` = `iu`.`
$statss['m5'] = ceil($statss['m5'] * (1 + 0.1 * ($round)));
$statss['za'] = ceil($statss['za'] * (1 + 0.1 * ($round)));
$statss['zm'] = ceil($statss['zm'] * (1 + 0.1 * ($round)));
$clon['stats'] = $this->impStats($statss);
$clon['stats'] = ConversionHelper::arrayToDataString($statss);
unset($statss);
}
if ($luser && $clon['level'] < 8) {
@@ -2696,7 +2463,7 @@ FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON (`im`.`id` = `iu`.`
$statss['m5'] = ceil($statss['m5'] * 0.75);
$statss['za'] = ceil($statss['za'] * 0.25);
$clon['stats'] = $this->impStats($statss);
$clon['stats'] = ConversionHelper::arrayToDataString($statss);
unset($statss);
}
$uid = mysql_insert_id();
@@ -2807,7 +2574,7 @@ FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON (`im`.`id` = `iu`.`
$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'] = $this->impStats($statss);
$bot['stats'] = ConversionHelper::arrayToDataString($statss);
unset($statss);
}
$ins2 = mysql_query(
@@ -3650,8 +3417,8 @@ FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON (`im`.`id` = `iu`.`
}
}
$data = $this->impStats($data);
$c_itm_data = $this->impStats($c_itm_data_a);
$data = ConversionHelper::arrayToDataString($data);
$c_itm_data = ConversionHelper::arrayToDataString($c_itm_data_a);
$data .= '|' . $c_itm_data;
}
@@ -4982,7 +4749,7 @@ FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON (`im`.`id` = `iu`.`
}
}
//сохраняем данные
$st = $this->impStats($st);
$st = ConversionHelper::arrayToDataString($st);
$upd = mysql_query(
'UPDATE `stats` SET `wipe`="0",`stats`="' . $st . '",`ability`="' . $n1 . '",`skills`="' . $n2 . '",`sskills`="' . $n3 . '",`nskills`="' . $n4 . '" WHERE `id` = "' . $this->info['id'] . '" LIMIT 1'
);
@@ -5045,7 +4812,7 @@ FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON (`im`.`id` = `iu`.`
$po['mf_stats'] -= 1;
$po['add_' . $_GET['mf']] += 1;
$po = $this->impStats($po);
$po = ConversionHelper::arrayToDataString($po);
mysql_query(
'UPDATE `items_users` SET `data` = "' . $po . '" WHERE `id` = "' . $itm['id'] . '" LIMIT 1'
);
@@ -5056,7 +4823,7 @@ FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON (`im`.`id` = `iu`.`
$po['mf_mod'] -= 1;
$po['add_' . $_GET['mf']] += 1;
$po = $this->impStats($po);
$po = ConversionHelper::arrayToDataString($po);
mysql_query(
'UPDATE `items_users` SET `data` = "' . $po . '" WHERE `id` = "' . $itm['id'] . '" LIMIT 1'
);
@@ -5075,7 +4842,7 @@ FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON (`im`.`id` = `iu`.`
$po['add_mib' . $s] += 1;
}
$po = $this->impStats($po);
$po = ConversionHelper::arrayToDataString($po);
mysql_query(
'UPDATE `items_users` SET `data` = "' . $po . '" WHERE `id` = "' . $itm['id'] . '" LIMIT 1'
);
@@ -5104,7 +4871,7 @@ FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON (`im`.`id` = `iu`.`
$po['add_s' . $s] += 1;
}
}
$po = $this->impStats($po);
$po = ConversionHelper::arrayToDataString($po);
mysql_query('UPDATE `items_users` SET `data` = "' . $po . '" WHERE `id` = "' . $itm['id'] . '" LIMIT 1');
}
@@ -5189,7 +4956,7 @@ FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON (`im`.`id` = `iu`.`
}
}
}
$po = $this->impStats($po);
$po = ConversionHelper::arrayToDataString($po);
mysql_query(
'UPDATE `items_users` SET `data` = "' . $po . '",`so` = "' . $itm['so'] . '" WHERE `id` = "' . $itm['id'] . '" LIMIT 1'
);
@@ -5311,7 +5078,7 @@ FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON (`im`.`id` = `iu`.`
}
}
$po = $this->impStats($po);
$po = ConversionHelper::arrayToDataString($po);
mysql_query('UPDATE `items_users` SET `data` = "' . $po . '" WHERE `id` = "' . $itm['id'] . '" LIMIT 1');
unset($mx1, $mx2, $mx3, $po);
@@ -5493,7 +5260,7 @@ FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON (`im`.`id` = `iu`.`
$i++;
}
$data = $this->impStats($data);
$data = ConversionHelper::arrayToDataString($data);
mysql_query(
'UPDATE `items_users` SET `delete` = "' . time(
) . '" WHERE `id` = "' . $rune['id'] . '" AND `uid` = "' . $this->info['id'] . '" LIMIT 1'
@@ -5593,7 +5360,7 @@ FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON (`im`.`id` = `iu`.`
//
$data = $this->impStats($data);
$data = ConversionHelper::arrayToDataString($data);
unset($srune, $irun, $nrune, $ntrune, $addrune, $addrunes);
$tid = mysql_query(
'UPDATE `items_users` SET `delete` = "' . time(
@@ -5668,7 +5435,7 @@ FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON (`im`.`id` = `iu`.`
$imposed['sudba'] = 1;
$data = array_merge($data, $imposed);
$data = $this->impStats($data);
$data = ConversionHelper::arrayToDataString($data);
mysql_query(
'UPDATE `items_users` SET `delete` = "' . time(
@@ -5810,7 +5577,7 @@ FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON (`im`.`id` = `iu`.`
if (!isset($this->is[$rnda]) && isset($imposed)) {
$data = array_merge($data, $imposed);
$data = $this->impStats($data);
$data = ConversionHelper::arrayToDataString($data);
mysql_query(
'UPDATE `items_users` SET `delete` = "' . time(
@@ -5862,7 +5629,7 @@ FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON (`im`.`id` = `iu`.`
} else {
unset($data['spell_st_val_hp']);
}
$data = $this->impStats($data);
$data = ConversionHelper::arrayToDataString($data);
$this->is['mab1'] = 'Броня головы';
$this->is['mab2'] = 'Броня корпуса';
@@ -5944,7 +5711,7 @@ FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON (`im`.`id` = `iu`.`
unset($data['sleep_moroz']);
}
$data = $this->impStats($data);
$data = ConversionHelper::arrayToDataString($data);
mysql_query(
'UPDATE `items_users` SET `delete` = "' . time(
@@ -6012,7 +5779,7 @@ FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON (`im`.`id` = `iu`.`
time(), $this->info['city'], 'System.remont.upatack', 0, 0
);
$data = $this->impStats($data);
$data = ConversionHelper::arrayToDataString($data);
mysql_query(
'UPDATE `items_users` SET `delete` = "' . time(
@@ -6065,7 +5832,7 @@ FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON (`im`.`id` = `iu`.`
time(), $this->info['city'], 'System.remont.upatack', 0, 0
);
$this->error = 'Заточка &quot;' . $id['name'] . '&quot; прошла успешно! Колка:' . $data['tya1'] . ' Руб:' . $data['tya2'] . ' Дробь:' . $data['tya3'] . ' Реж:' . $data['tya4'] . ' ';
$data = $this->impStats($data);
$data = ConversionHelper::arrayToDataString($data);
mysql_query(
'UPDATE `items_users` SET `delete` = "' . time(
) . '" WHERE `id` = "' . $rune['id'] . '" AND `uid` = "' . $this->info['id'] . '" LIMIT 1'
@@ -6124,7 +5891,7 @@ FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON (`im`.`id` = `iu`.`
$data['open'] = 1;
$data = $this->impStats($data);
$data = ConversionHelper::arrayToDataString($data);
mysql_query(
'UPDATE `items_users` SET `delete` = "' . time(
@@ -6159,7 +5926,7 @@ FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON (`im`.`id` = `iu`.`
$add['item_inbox'] = $id['id'];
$add['open'] = 1;
$add['nosale'] = 1;
$add = $this->impStats($add);
$add = ConversionHelper::arrayToDataString($add);
//
mysql_query(
'UPDATE `items_users` SET `inGroup` = 0,`data` = "' . $add . '" WHERE `id` = "' . $rune['id'] . '" LIMIT 1'
@@ -7030,7 +6797,7 @@ FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON (`im`.`id` = `iu`.`
$pl['inOdet'] = 0;
$pl['uid'] = $plpo['id'];
unset($po['toclan1'], $po['toclan']);
$pl['data'] = $this->impStats($po);
$pl['data'] = ConversionHelper::arrayToDataString($po);
mysql_query(
'UPDATE `items_users` SET `data` = "' . mysql_real_escape_string(
$pl['data']
@@ -7734,10 +7501,10 @@ FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON (`im`.`id` = `iu`.`
while ($pl = mysql_fetch_array($sp)) {
$pl['data'] = ConversionHelper::dataStringToArray($pl['data']);
unset($pl['data']['frompisher']);
$pl['data'] = $this->impStats($pl['data']);
$pl['data'] = ConversionHelper::arrayToDataString($pl['data']);
$itm['data'] = ConversionHelper::dataStringToArray($itm['data']);
unset($itm['data']['frompisher']);
$itm['data'] = $this->impStats($itm['data']);
$itm['data'] = ConversionHelper::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']) {
$upd = mysql_query(
@@ -7891,7 +7658,7 @@ LIMIT 1'
}
if (isset($po['sudba']) && $po['sudba'] == 1) {
$po['sudba'] = $u['login'];
$itm['data'] = $this->impStats($po);
$itm['data'] = ConversionHelper::arrayToDataString($po);
mysql_query(
'UPDATE `items_users` SET `data` = "' . $itm['data'] . '" WHERE `id` = "' . $itm['iduid'] . '" AND `uid` = "' . $u['id'] . '" LIMIT 1'
);
@@ -7899,7 +7666,7 @@ LIMIT 1'
if (isset($po['zazuby']) && !isset($po['srok']) && ($itm['type'] == 29 || $itm['type'] == 30 || $itm['type'] == 36 || $itm['type'] == 49 || $itm['type'] == 46 || $itm['type'] == 34)) {
//Предметы за зубы со сроком годности
$po['srok'] = 86400 * 7;
$itm['data'] = $this->impStats($po);
$itm['data'] = ConversionHelper::arrayToDataString($po);
mysql_query(
'UPDATE `items_users` SET `data` = "' . $itm['data'] . '" WHERE `id` = "' . $itm['iduid'] . '" AND `uid` = "' . $u['id'] . '" LIMIT 1'
);
@@ -9120,24 +8887,6 @@ LIMIT 1'
return $upd ? 1 : 0;
}
public function impStats($m): string
{
$i = 0;
if (array_keys($m)) {
$k = array_keys($m);
} else {
$k = 0;
}
$d = '';
while ($i <= count($k)) {
if ($k[$i] != '') {
$d .= $k[$i] . '=' . $m[$k[$i]] . '|';
}
$i++;
}
return rtrim($d, '|');
}
public function odetItem(int $id, int $uid)
{
if ($uid != 0) {
@@ -9197,7 +8946,7 @@ LIMIT 1'
$notr++;
} elseif ($tr['sudba'] == '0') {
$tr['sudba'] = $this->info['login'];
$itm['data'] = $this->impStats($tr);
$itm['data'] = ConversionHelper::arrayToDataString($tr);
$msb = ',`data`="' . $itm['data'] . '"';
}
}
@@ -11468,7 +11217,7 @@ LIMIT 1'
$tst = ConversionHelper::dataStringToArray($this->info['stats']);
$tst['s4'] += $lvl['vinos'];
$tst['s7'] += $lvl['duh'];
$this->info['stats'] = $this->impStats($tst);
$this->info['stats'] = ConversionHelper::arrayToDataString($tst);
$this->info['level'] = $lvl['nextLevel'];
$this->stats['levels'] = $lvln;
@@ -11709,7 +11458,7 @@ LIMIT 1'
$r = 'Не удалось';
} elseif (!isset($po['toclan'])) {
$po['toclan'] = $user['clan'] . '#' . $user['id'];
$item_['data'] = $this->impStats($po);
$item_['data'] = ConversionHelper::arrayToDataString($po);
if (mysql_query(
'UPDATE `items_users` SET `lastUPD` = "' . time(
) . '", `uid` = "-21' . $user['clan'] . '", `data` = "' . $item_['data'] . '" WHERE `id` = "' . $id . '" LIMIT 1'
@@ -11842,7 +11591,7 @@ LIMIT 1'
}
}
unset($po['toclan']);
$pl['data'] = $this->impStats($po);
$pl['data'] = ConversionHelper::arrayToDataString($po);
$col = $this->itemsX(((int)$pl['id']));
$it_n = mysql_fetch_array(
mysql_query('SELECT `name` FROM `items_main` WHERE `id` = "' . $pl['item_id'] . '"')