Переезд impstats и additem..
This commit is contained in:
+47
-298
@@ -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(
|
||||
"Поздравляем! Вы победили в турнире "Башня Смерти"! Получено опыта: $bsep, деньги: $mn кр."
|
||||
);
|
||||
$cmsg->setType(6);
|
||||
$chat->sendMsg($cmsg);
|
||||
|
||||
$cmsg->setTo('');
|
||||
$cmsg->setIsAlert(true);
|
||||
$cmsg->setText(
|
||||
"Завершился турнир "Башня Смерти", победитель турнира: <strong>{$winr['login']}</strong>! Поздравляем!"
|
||||
);
|
||||
$cmsg->setType(5);
|
||||
$chat->sendMsg($cmsg);
|
||||
|
||||
$this->addDelo(
|
||||
1, $uid,
|
||||
'"<span style="color: #C65F00; ">WinTournament.' . $this->info['city'] . '</span>" (Башня Смерти): Получено "<strong>' . $mn . '</strong> кр."',
|
||||
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,
|
||||
'"AddItems.' . $this->info['city'] . '": Получен предмет "<strong>' . $i['name'] . '</strong>" (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 = 'Заточка "' . $id['name'] . '" прошла успешно! Колка:' . $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'] . '"')
|
||||
|
||||
Reference in New Issue
Block a user