diff --git a/AI.php b/AI.php
index 72bc19a7..7ed3bbc6 100644
--- a/AI.php
+++ b/AI.php
@@ -37,7 +37,7 @@ if (isset($_GET['m1'])) {
$po = mysql_fetch_array(
mysql_query('SELECT * FROM `items_main_data` WHERE `items_id` = "' . $pl['id'] . '" LIMIT 1')
);
- $po = $u->lookStats($po['data']);
+ $po = ConversionHelper::dataStringToArray($po['data']);
if (!isset($po['add_minAtack']) && isset($po['sv_minAtack'])) {
$po['add_minAtack'] = $po['sv_minAtack'];
diff --git a/_incl_data/class/Battle.php b/_incl_data/class/Battle.php
index 503bda16..34d9452b 100644
--- a/_incl_data/class/Battle.php
+++ b/_incl_data/class/Battle.php
@@ -1,6 +1,7 @@
items['add'];
$x = 0;
- $ed = $u->lookStats($eff[$i]['data']);
+ $ed = ConversionHelper::dataStringToArray($eff[$i]['data']);
while ($x < count($ti)) {
$n = $ti[$x];
if (isset($ed['add_' . $n], $u->is[$n]) && $n != 'pog') {
@@ -1018,7 +1019,7 @@ class Battle
}
//генерируем предметы
$ttl = '' . $itm[$i]['name'] . '';
- $td = $u->lookStats($itm[$i]['data']);
+ $td = ConversionHelper::dataStringToArray($itm[$i]['data']);
$lvar = '';
if ($td['add_hpAll'] > 0) {
$td['add_hpAll'] = '+' . $td['add_hpAll'];
@@ -4246,7 +4247,7 @@ class Battle
while ($i < count($this->stats[$this->uids[$uid1]]['items'])) {
$itm = $this->stats[$this->uids[$uid1]]['items'][$i];
if (isset($itm['id'])) {
- $e = $u->lookStats($itm['data']);
+ $e = ConversionHelper::dataStringToArray($itm['data']);
if (isset($e['bm_a1'])) {
if ($end > 0) {
if (file_exists('../../_incl_data/class/priems/' . $e['bm_a1'] . '.end.php')) {
@@ -4279,7 +4280,7 @@ class Battle
'add_pog2=' . $j['y'],
'add_pog2=$', $this->stats[$this->uids[$uid]]['effects'][$j['id'] - 1]['data']
);
- $dt3 = $u->lookStats($this->stats[$this->uids[$uid]]['effects'][$j['id'] - 1]['data']);
+ $dt3 = ConversionHelper::dataStringToArray($this->stats[$this->uids[$uid]]['effects'][$j['id'] - 1]['data']);
if (isset($dt3['add_pog2mp'])) {
$priem->minMana($uid, round(round($yr2 / 100 * (100 - $dt3['add_pog2p'])) * $dt3['add_pog2mp']));
}
@@ -4289,7 +4290,7 @@ class Battle
}
unset($dt3);
if ($j['y'] < 0 || ($this->stats[$this->uids[$uid]]['mpNow'] <= 0 && $dt3['add_pog2mp'] > 0)) {
- $dt2 = $u->lookStats($this->stats[$this->uids[$uid]]['effects'][$j['id'] - 1]['data']);
+ $dt2 = ConversionHelper::dataStringToArray($this->stats[$this->uids[$uid]]['effects'][$j['id'] - 1]['data']);
if (isset($dt2['endPog']) && $dt2['endPog'] == 1) {
//удаляем прием
$this->stats[$this->uids[$uid]]['effects'][$j['id'] - 1]['priem'] = mysql_fetch_array(
@@ -4349,7 +4350,7 @@ class Battle
'add_pog2=' . $j['y'],
'add_pog2=$', $this->stats[$this->uids[$uid]]['effects'][$j['id'] - 1]['data']
);
- $dt3 = $u->lookStats($this->stats[$this->uids[$uid]]['effects'][$j['id'] - 1]['data']);
+ $dt3 = ConversionHelper::dataStringToArray($this->stats[$this->uids[$uid]]['effects'][$j['id'] - 1]['data']);
$dt30 = 0;
$dt30 = floor($j['y'] / $yr2 * 100);
if ($dt30 < $dt3['add_pog2p']) {
@@ -4387,7 +4388,7 @@ class Battle
$yr2 = round($yr2 / 100 * (100 - $dt3['add_pog2p']));
}
if ($j['y'] < 0 || ($this->stats[$this->uids[$uid]]['mpNow'] <= 0 && $dt3['add_pog2mp'] > 0)) {
- $dt2 = $u->lookStats($this->stats[$this->uids[$uid]]['effects'][$j['id'] - 1]['data']);
+ $dt2 = ConversionHelper::dataStringToArray($this->stats[$this->uids[$uid]]['effects'][$j['id'] - 1]['data']);
if (isset($dt2['endPog']) && $dt2['endPog'] == 1) {
//удаляем прием
//Добавляем в лог
@@ -4676,7 +4677,7 @@ class Battle
$witm01 = 0;
$witm_type01 = 0;
$witm01 = $this->stats[$this->uids[$u1]]['items'][$this->stats[$this->uids[$u1]]['wp' . $wp01 . 'id']];
- $witm_data01 = $u->lookStats($witm01['data']);
+ $witm_data01 = ConversionHelper::dataStringToArray($witm01['data']);
if ($at[$a]['atack'][$j][2] == $v) {
$tyv = $this->mfs(
2, [
@@ -4782,7 +4783,7 @@ class Battle
$witm01 = 0;
$witm_type01 = 0;
$witm01 = $this->stats[$this->uids[$u1]]['items'][$this->stats[$this->uids[$u1]]['wp' . $wp01 . 'id']];
- $witm_data01 = $u->lookStats($witm01['data']);
+ $witm_data01 = ConversionHelper::dataStringToArray($witm01['data']);
if ($this->mfs(
1, [
'u1' => $u1,
@@ -5721,7 +5722,7 @@ class Battle
$ii = 0;
while ($ii < count($s['items'])) {
if (isset($s['items'][$ii]) && $s['items'][$ii]['inOdet'] == $zi[$i]) {
- $po = $u->lookStats($s['items'][$ii]['data']);
+ $po = ConversionHelper::dataStringToArray($s['items'][$ii]['data']);
$x = 0;
while ($x < count($t)) {
$n = $t[$x];
@@ -5778,7 +5779,7 @@ class Battle
if ($wp > 0) {
$witm = $this->stats[$this->uids[$uid1]]['items'][$this->stats[$this->uids[$uid1]]['wp' . $wp . 'id']];
- $witm_data = $u->lookStats($witm['data']);
+ $witm_data = ConversionHelper::dataStringToArray($witm['data']);
$witm_type = $this->weaponTx($witm);
}
if ($witm_type == 0 || $witm_type == 12) {
@@ -8133,7 +8134,7 @@ class Battle
$i++;
}
}
- $itm = $u->lookStats($item['data']);
+ $itm = ConversionHelper::dataStringToArray($item['data']);
$t[0]['z'] = 0;
$t[0]['t'] = 0;
//колящий урон
@@ -8213,7 +8214,7 @@ class Battle
$tp = 0;
$tp20 = 0;
if (isset($item['id'])) {
- $itm = $this->lookStats($item['data']);
+ $itm = \Core\ConversionHelper::dataStringToArray($item['data']);
//начинаем расчет урона
$min = $itm['sv_yron_min'] + $itm['yron_min'] + $st['minAtack'];
$max = $itm['sv_yron_max'] + $itm['yron_max'] + $st['maxAtack'];
@@ -8274,7 +8275,7 @@ class Battle
$min = 0;
$max = 0;
if (isset($item['id'])) {
- $itm = $this->lookStats($item['data']);
+ $itm = \Core\ConversionHelper::dataStringToArray($item['data']);
//начинаем расчет урона
$min = $itm['sv_yron_min'] + $itm['yron_min'] + $st['minAtack'];
$max = $itm['sv_yron_max'] + $itm['yron_max'] + $st['maxAtack'];
@@ -8368,7 +8369,7 @@ class Battle
*/
];
- $witmdata = $this->lookStats($witm['data']);
+ $witmdata = \Core\ConversionHelper::dataStringToArray($witm['data']);
//Расчет типа урона
@@ -8606,21 +8607,6 @@ class Battle
$this->stats[$this->uids[$pl['uid']]] = $u->getStats($pl['uid'], 0, 0, false, false, true);
}
- //Разбираем массив со статами
- public function lookStats($m): array
- {
- $ist = [];
- $di = explode('|', $m);
- $i = 0;
- $de = false;
- while ($i < count($di)) {
- $de = explode('=', $di[$i]);
- $ist[$de[0]] = $de[1];
- $i++;
- }
- return $ist;
- }
-
//Расчет мф. (новая)
public function form_mf($u, $au): float
{
@@ -9349,7 +9335,7 @@ class Battle
}
}
//
- $anl = $u->lookStats($anl);
+ $anl = ConversionHelper::dataStringToArray($anl);
$vLog = 'time1=' . time(
) . '||s1=' . $this->users[$i]['sex'] . '||t1=' . $this->users[$i]['team'] . '||login1=' . $this->users[$i]['login'] . '';
diff --git a/_incl_data/class/BotPriemLogic.php b/_incl_data/class/BotPriemLogic.php
index cd10d177..fdbc105f 100644
--- a/_incl_data/class/BotPriemLogic.php
+++ b/_incl_data/class/BotPriemLogic.php
@@ -1,5 +1,7 @@
lookStats($pl['tr']);
- $d2 = $u->lookStats($pl['date2']);
+ $tr = ConversionHelper::dataStringToArray($pl['tr']);
+ $d2 = ConversionHelper::dataStringToArray($pl['date2']);
$x = 1;
while ($x <= 7) {
diff --git a/_incl_data/class/ComissionShop.php b/_incl_data/class/ComissionShop.php
index f7694896..87f973c6 100644
--- a/_incl_data/class/ComissionShop.php
+++ b/_incl_data/class/ComissionShop.php
@@ -158,9 +158,9 @@ ORDER BY `1price`ASC , inGroupCount DESC'
)
);
if ($steck[0] > 1 && $preview == "preview") {
- $po = $this->lookStats($d['data']);
+ $po = \Core\ConversionHelper::dataStringToArray($d['data']);
} else {
- $po = $this->lookStats($pl['data']);
+ $po = \Core\ConversionHelper::dataStringToArray($pl['data']);
}
if (($pl['type'] >= 18 && $pl['type'] <= 24) || $pl['type'] == 26 || $pl['type'] == 27) {
//Зоны блока +
@@ -452,7 +452,7 @@ ORDER BY `1price`ASC , inGroupCount DESC'
//действие комплекта
$i1c = 0;
$i2c = 0;
- $i1e = $this->lookStats($plc['data']);
+ $i1e = \Core\ConversionHelper::dataStringToArray($plc['data']);
while ($i1c < count($this->items['add'])) {
if (isset($i1e[$this->items['add'][$i1c]])) {
$i3c = $i1e[$this->items['add'][$i1c]];
@@ -488,7 +488,7 @@ ORDER BY `1price`ASC , inGroupCount DESC'
//действие комплекта
$i1c = 0;
$i2c = 0;
- $i1e = $this->lookStats($plc['data']);
+ $i1e = \Core\ConversionHelper::dataStringToArray($plc['data']);
while ($i1c < count($this->items['add'])) {
if (isset($i1e[$this->items['add'][$i1c]])) {
$i3c = $i1e[$this->items['add'][$i1c]];
diff --git a/_incl_data/class/Core/ConversionHelper.php b/_incl_data/class/Core/ConversionHelper.php
new file mode 100644
index 00000000..b8756f72
--- /dev/null
+++ b/_incl_data/class/Core/ConversionHelper.php
@@ -0,0 +1,26 @@
+1, b=>2, c=>3].
+ * @param string $dataString
+ * @return array
+ */
+ public static function dataStringToArray(string $dataString): array
+ {
+ $arr = json_decode(str_replace(['=', '|'], ['":', ',"'], '{"' . $dataString . '}'), true);
+ return $arr ?: [];
+ }
+
+ /** [a=>1, b=>2, c=>3] data ('a=1|b=2|c=3') .
+ * @param array $dataArray
+ * @return string
+ */
+ public static function arrayToDataString(array $dataArray): string
+ {
+ $str = json_encode($dataArray);
+ return $str ? str_replace(['":', ',"', '{"', '}'], ['=', '|'], $str) : '';
+ }
+}
\ No newline at end of file
diff --git a/_incl_data/class/Magic.php b/_incl_data/class/Magic.php
index 763f0a51..592d2cb7 100644
--- a/_incl_data/class/Magic.php
+++ b/_incl_data/class/Magic.php
@@ -1,5 +1,6 @@
unstack($itm['id'], 1);
}
- $st = $u->lookStats($itm['data']);
+ $st = ConversionHelper::dataStringToArray($itm['data']);
if (isset($st['tr_lvl']) && $st['tr_lvl'] > $u->info['level']) {
$u->error = 'Вы слишком малы чтобы использовать данный предмет ';
@@ -95,7 +96,7 @@ class Magic
} elseif (isset($st['usefromfile'])) {
//используем заклятие
- $st = $u->lookStats($itm['data']);
+ $st = ConversionHelper::dataStringToArray($itm['data']);
if (isset($st['zazuby']) && $_GET['login'] != $u->info['login']) {
//unset($st['useOnLogin']);
$_GET['login'] = $u->info['login'];
@@ -318,7 +319,7 @@ class Magic
//---------------
} elseif ($itm['type'] == 29) {
//используем заклятие
- $st = $u->lookStats($itm['data']);
+ $st = ConversionHelper::dataStringToArray($itm['data']);
if (isset($st['zazuby']) && $_GET['login'] != $u->info['login']) {
//unset($st['useOnLogin']);
$_GET['login'] = $u->info['login'];
@@ -664,7 +665,7 @@ class Magic
}
} elseif ($itm['magic_inci'] == 'cureHP') {
//Реген НР,MP
- $po = $u->lookStats($itm['data']);
+ $po = ConversionHelper::dataStringToArray($itm['data']);
if ($u->info['battle'] > 0) {
//используем свиток в поединке
$bu = mysql_fetch_array(
@@ -835,7 +836,7 @@ class Magic
}
} elseif ($itm['magic_inci'] == 'cureMP') {
//Реген НР,MP
- $po = $u->lookStats($itm['data']);
+ $po = ConversionHelper::dataStringToArray($itm['data']);
if ($u->info['battle'] > 0) {
//используем свиток в поединке
$bu = mysql_fetch_array(
diff --git a/_incl_data/class/Quests.php b/_incl_data/class/Quests.php
index 1c4cd2b2..76e3258b 100644
--- a/_incl_data/class/Quests.php
+++ b/_incl_data/class/Quests.php
@@ -1,5 +1,7 @@
deleteItemID($ex2[0], $u->info['id'], $ex2[1]);
+ ItemsModel::deleteItemsById($ex2[0], $ex2[1]);
$i++;
}
}
@@ -909,7 +911,7 @@ class Quests
$ex2 = explode('=', $ex[$i]);
$ex2 = explode('=', $ex[$i]);
$x2 = $u->testAction('`uid` = "' . $u->info['id'] . '" AND `time` > ' . $pl2['time'] . ' AND `vars` = "win_bot_' . $ex2[0] . '" LIMIT ' . $ex2[1], 2);
- $u->deleteItemID($ex2[0], $u->info['id'], $ex2[1]);
+ ItemsModel::deleteItemsById($ex2[0], $ex2[1]);
$i++;
}
}
@@ -921,7 +923,7 @@ class Quests
$ex2 = explode('=', $ex[$i]);
$ex2 = explode('=', $ex[$i]);
$x2 = $u->testAction('`uid` = "' . $u->info['id'] . '" AND `time` > ' . $pl2['time'] . ' AND `vars` = "win_bot_' . $ex2[0] . '" LIMIT ' . $ex2[1], 2);
- $u->deleteItemID($ex2[0], $u->info['id'], $ex2[1]);
+ ItemsModel::deleteItemsById($ex2[0], $ex2[1]);
$i++;
}
}
diff --git a/_incl_data/class/User.php b/_incl_data/class/User.php
index e66a8239..97a2f8b8 100644
--- a/_incl_data/class/User.php
+++ b/_incl_data/class/User.php
@@ -1,6 +1,7 @@
lookStats($itm['data']);
+ $po = ConversionHelper::dataStringToArray($itm['data']);
$proc = $procs[$po['tr_lvl']];
//
if ($itm['type'] >= 28) {
@@ -885,37 +886,6 @@ class User
}
//Удаление определенного типа предметов
- public function deleteItemID(int $id, int $uid, int $coldel)
- {
- $sp = mysql_query(
- 'SELECT * FROM `items_users` WHERE `item_id` = "' . mysql_real_escape_string(
- $id
- ) . '" AND `uid` = "' . mysql_real_escape_string(
- $uid
- ) . '" AND (`delete` = 0 OR `delete` = 1000) ORDER BY `inGroup` DESC LIMIT ' . $coldel
- );
- $delitm = [];
- while ($pl = mysql_fetch_array($sp)) {
- if (count($delitm) < $coldel) {
- $delitm[] = $pl['id'];
- }
- }
- $i = 0;
- while ($i < count($delitm)) {
- mysql_query(
- 'UPDATE `items_users` SET `delete` = "' . time() . '" WHERE `id` = "' . $delitm[$i] . '" LIMIT 1'
- );
- $i++;
- }
- }
-
- public function count_items(int $id, int $uid, int $coldel): int
- {
- return Db::getValue(
- 'select count(*) from items_users where item_id = ? and uid = ? and (`delete` = 0 or `delete` = 1000) limit ?',
- [$id, $uid, $coldel]
- );
- }
public function repobmen($id, $type)
{
@@ -925,7 +895,7 @@ class User
'SELECT `im`.*,`iu`.* FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON (`im`.`id` = `iu`.`item_id`) WHERE `iu`.`uid`="' . $this->info['id'] . '" AND `iu`.`delete`="0" AND `iu`.`inOdet`="0" AND `iu`.`inShop`="0" AND `iu`.`id` = "' . ((int)$id) . '" LIMIT 1;'
)
);
- $po = $this->lookStats($pl['data']);
+ $po = ConversionHelper::dataStringToArray($pl['data']);
if ((!isset($po['frompisher']) || $po['tr_lvl'] < 4) && $pl['type'] != 31) {
$e = 'Не удалось обменять предмет на репутацию.';
} else {
@@ -1161,7 +1131,7 @@ FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON (`im`.`id` = `iu`.`
'SELECT `id`,`items_id`,`data` FROM `items_main_data` WHERE `items_id` = "' . $pl['item_id'] . '" LIMIT 1'
)
);
- $po = $this->lookStats($d['data']);
+ $po = ConversionHelper::dataStringToArray($d['data']);
if ($pl['level'] == 0) {
$pl['level'] = 0 + $po['tr_lvl'];
}
@@ -1230,7 +1200,7 @@ FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON (`im`.`id` = `iu`.`
{
$tp = 0;
if (isset($item['id'])) {
- $itm = $this->lookStats($item['data']);
+ $itm = ConversionHelper::dataStringToArray($item['data']);
//начинаем расчет урона
if (!isset($st['minAtack'])) {
$st['minAtack'] = 0;
@@ -1371,7 +1341,7 @@ FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON (`im`.`id` = `iu`.`
$tp = 0;
$t = 0;
$i = 1;
- $d = $this->lookStats($w1['data']);
+ $d = ConversionHelper::dataStringToArray($w1['data']);
while ($i <= 4) {
if (isset($d['tya' . $i]) && $t < $d['tya' . $i]) {
$t = $d['tya' . $i];
@@ -1410,7 +1380,7 @@ FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON (`im`.`id` = `iu`.`
$tp = 0;
$t = 0;
$i = 1;
- $d = $this->lookStats($w2['data']);
+ $d = ConversionHelper::dataStringToArray($w2['data']);
while ($i <= 4) {
if ($t < $d['tya' . $i]) {
$t = $d['tya' . $i];
@@ -1446,7 +1416,7 @@ FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON (`im`.`id` = `iu`.`
$tp = 0;
$t = 0;
$i = 1;
- $d = $this->lookStats($w1['data']);
+ $d = ConversionHelper::dataStringToArray($w1['data']);
while ($i <= 4) {
if (isset($d['tya' . $i]) && $t < $d['tya' . $i]) {
$t = $d['tya' . $i];
@@ -1479,7 +1449,7 @@ FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON (`im`.`id` = `iu`.`
$tp = 0;
$t = 0;
$i = 1;
- $d = $this->lookStats($w2['data']);
+ $d = ConversionHelper::dataStringToArray($w2['data']);
while ($i <= 4) {
if ($t < $d['tya' . $i]) {
$t = $d['tya' . $i];
@@ -1512,7 +1482,7 @@ FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON (`im`.`id` = `iu`.`
$tp = 0;
$t = 0;
$i = 1;
- $d = $this->lookStats($w1['data']);
+ $d = ConversionHelper::dataStringToArray($w1['data']);
$y = 0;
if (isset($d['sv_' . $v])) {
$y += $d['sv_' . $v];
@@ -1532,7 +1502,7 @@ FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON (`im`.`id` = `iu`.`
$tp = 0;
$t = 0;
$i = 1;
- $d = $this->lookStats($w2['data']);
+ $d = ConversionHelper::dataStringToArray($w2['data']);
$y = @$this->stats[$v] + @$d['sv_' . $v];
if ($y != $ry) {
$r .= ' / ' . $y . '';
@@ -1670,7 +1640,7 @@ FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON (`im`.`id` = `iu`.`
}
if ($md != null) {
$data .= $md;
- $data = $this->lookStats($data); // Если в функции имеются две одинаковых константы SROK?
+ $data = ConversionHelper::dataStringToArray($data); // Если в функции имеются две одинаковых константы SROK?
$data = $this->impStats($data);
}
@@ -2305,7 +2275,7 @@ FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON (`im`.`id` = `iu`.`
//снимаем все вещи
mysql_query('UPDATE `items_users` SET `inOdet` = "0" WHERE `uid` = "' . $this->info['id'] . '"');
//одеваем вещи, если они не удалены
- $cm = $this->lookStats($cmp['val']);
+ $cm = ConversionHelper::dataStringToArray($cmp['val']);
$i = 1;
while ($i <= 250) {
if (isset($cm[$i])) {
@@ -2372,7 +2342,7 @@ FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON (`im`.`id` = `iu`.`
);
$t = $this->items['tr'];
$x = 0;
- $po = $this->lookStats($o['tr']);
+ $po = ConversionHelper::dataStringToArray($o['tr']);
if ($o['itm'] > 0) {
$o['itm'] = explode(',', $o['itm']);
$j = 0;
@@ -2433,7 +2403,7 @@ FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON (`im`.`id` = `iu`.`
);
$t = $this->items['tr'];
$x = 0;
- $po = $this->lookStats($o['tr']);
+ $po = ConversionHelper::dataStringToArray($o['tr']);
if ($o['itm'] > 0) {
$o['itm'] = explode(',', $o['itm']);
$j = 0;
@@ -2696,7 +2666,7 @@ FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON (`im`.`id` = `iu`.`
if ($ins1) {
if ($round > 0) {
//Улучшаем мф. и статы и НР 1 раунд = +10%
- $statss = $this->lookStats($clon['stats']);
+ $statss = ConversionHelper::dataStringToArray($clon['stats']);
//
$statss['s1'] = ceil($statss['s1'] * (1 + 0.1 * ($round)));
$statss['s2'] = ceil($statss['s2'] * (1 + 0.1 * ($round)));
@@ -2718,7 +2688,7 @@ FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON (`im`.`id` = `iu`.`
}
if ($luser && $clon['level'] < 8) {
//Хуже уворот, крит и защита
- $statss = $this->lookStats($clon['stats']);
+ $statss = ConversionHelper::dataStringToArray($clon['stats']);
$statss['m1'] = ceil($statss['m1'] * 0.75);
$statss['m2'] = ceil($statss['m2'] * 0.75);
$statss['m3'] = ceil($statss['m3'] * 0.75);
@@ -2820,7 +2790,7 @@ FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON (`im`.`id` = `iu`.`
$uid = mysql_insert_id();
if ($round > 0) {
//Улучшаем мф. и статы и НР 1 раунд = +20%
- $statss = $this->lookStats($bot['stats']);
+ $statss = ConversionHelper::dataStringToArray($bot['stats']);
//
$statss['s1'] = ceil($statss['s1'] * (1 + 0.20 * ($round)));
$statss['s2'] = ceil($statss['s2'] * (1 + 0.20 * ($round)));
@@ -2973,7 +2943,7 @@ FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON (`im`.`id` = `iu`.`
if (isset($i['tr_reputation']) && $i['tr_reputation'] != '') { // Требуемая репутация для покупки
$need_rep = 0;
- $tr_rep = $this->lookStats($i['tr_reputation']);
+ $tr_rep = ConversionHelper::dataStringToArray($i['tr_reputation']);
foreach ($tr_rep as $row) {
if ($this->rep[$row[0]] >= $row[1]) {
$need_rep++;
@@ -3162,7 +3132,7 @@ FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON (`im`.`id` = `iu`.`
$need_rep = 0;
if (isset($i['tr_reputation']) && $i['tr_reputation'] != '') { // Требуемая репутация для покупки
- $tr_rep = $this->lookStats($i['tr_reputation']);
+ $tr_rep = ConversionHelper::dataStringToArray($i['tr_reputation']);
foreach ($tr_rep as $row) {
if ($this->rep[$row[0]] >= $row[1]) {
$need_rep++;
@@ -3499,7 +3469,7 @@ FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON (`im`.`id` = `iu`.`
if (isset($i['tr_reputation']) && $i['tr_reputation'] != '') { // Требуемая репутация для покупки
$need_rep = 0;
- $tr_rep = $this->lookStats($i['tr_reputation']);
+ $tr_rep = ConversionHelper::dataStringToArray($i['tr_reputation']);
foreach ($tr_rep as $row) {
if ($this->rep[$row[0]] >= $row[1]) {
$need_rep++;
@@ -3569,7 +3539,7 @@ FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON (`im`.`id` = `iu`.`
);
if (isset($itm['data']) && $itm['data'] != '' && $c_itm == 0) {
- $po = $this->lookStats($itm['data']);
+ $po = ConversionHelper::dataStringToArray($itm['data']);
if (isset($po['sudba'])) {
if (isset($po['sudba'])) {
@@ -3658,7 +3628,7 @@ FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON (`im`.`id` = `iu`.`
$j++;
}
if ($c_itm > 0) {
- $data = $this->lookStats($data);
+ $data = ConversionHelper::dataStringToArray($data);
// Чарка
if (isset($c_itm_data_a['spell_st_name']) && isset($c_itm_data_a['spell_st_val']) && $c_itm_data_a['spell_st_name'] != '' && $c_itm_data_a['spell_st_val'] != '') {
$data['add_' . $c_itm_data_a['spell_st_name']] = (int)(isset($data['add_' . $c_itm_data_a['spell_st_name']]) ? (int)$data['add_' . $c_itm_data_a['spell_st_name']] : 0) + (int)$c_itm_data_a['spell_st_val'];
@@ -3671,7 +3641,7 @@ FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON (`im`.`id` = `iu`.`
)
);
$j = 0;
- $data_r = $this->lookStats($ritm['data']);
+ $data_r = ConversionHelper::dataStringToArray($ritm['data']);
while ($j < count($this->items['add'])) {
if (isset($data_r['add_' . $this->items['add'][$j]])) {
$data['add_' . $this->items['add'][$j]] += $data_r['add_' . $this->items['add'][$j]];
@@ -3850,7 +3820,7 @@ FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON (`im`.`id` = `iu`.`
if (isset($i['tr_reputation']) && $i['tr_reputation'] != '') { // Требуемая репутация для покупки
$need_rep = 0;
- $tr_rep = $this->lookStats($i['tr_reputation']);
+ $tr_rep = ConversionHelper::dataStringToArray($i['tr_reputation']);
foreach ($tr_rep as $key => $val) {
if ((int)$this->rep[$key] > (int)$val) {
$need_rep++;
@@ -3884,7 +3854,7 @@ FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON (`im`.`id` = `iu`.`
'SELECT `id`,`items_id`,`data` FROM `items_main_data` WHERE `items_id` = "' . $i['id'] . '" LIMIT 1'
)
);
- $po = $this->lookStats($d['data']);
+ $po = ConversionHelper::dataStringToArray($d['data']);
if ($zuby == 1 && $po['tr_lvl'] > 7) {
$r = 'Данный предмет нельзя приобрести за зубы.';
@@ -4253,7 +4223,7 @@ FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON (`im`.`id` = `iu`.`
'SELECT `id`, `item_id`, `data`, `inGroup`, `uid` FROM `items_users` WHERE `id` = ' . $iid . ' LIMIT 1'
)
);
- $ChSudba = $this->lookStats($ChImtem['data']);
+ $ChSudba = ConversionHelper::dataStringToArray($ChImtem['data']);
if (!isset($ChSudba['sudba']) && $ChSudba['sudba'] == 0 && $ChSudba['sudba'] != 1 && !isset($ChSudba['toclan'])) {
if (isset($ChImtem['inGroup']) and $ChImtem['inGroup'] > 0) {
$col = $this->itemsX($ChImtem['id']);
@@ -4395,7 +4365,7 @@ FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON (`im`.`id` = `iu`.`
'SELECT `id`,`items_id`,`data` FROM `items_main_data` WHERE `items_id` = "' . $pl['id'] . '" LIMIT 1'
)
);
- $po = $this->lookStats($d['data']);
+ $po = ConversionHelper::dataStringToArray($d['data']);
if ($sid == 609) {
$po['icos'] = 'WL';
@@ -4837,7 +4807,7 @@ FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON (`im`.`id` = `iu`.`
//действие комплекта
$i1c = 0;
$i2c = 0;
- $i1e = $this->lookStats($plc['data']);
+ $i1e = ConversionHelper::dataStringToArray($plc['data']);
while ($i1c < count($this->items['add'])) {
if (isset($i1e[$this->items['add'][$i1c]])) {
$i3c = $i1e[$this->items['add'][$i1c]];
@@ -4959,7 +4929,7 @@ FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON (`im`.`id` = `iu`.`
if ($this->info['wipe'] > 0 && $this->info['battle'] == 0) {
//wipe = 1 , значит обнуляем статы и умения
if ($this->info['wipe'] < 4) {
- $st = $this->lookStats($this->info['stats']);
+ $st = ConversionHelper::dataStringToArray($this->info['stats']);
$n1 = $this->info['ability']; //способности
$n2 = $this->info['skills']; //владение магией и оружием
$n3 = $this->info['sskills']; //особенности
@@ -5066,7 +5036,7 @@ FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON (`im`.`id` = `iu`.`
)
);
if (isset($itm['id'])) {
- $po = $this->lookStats($itm['data']);
+ $po = ConversionHelper::dataStringToArray($itm['data']);
//статы
if ($_GET['mf'] == 's1' || $_GET['mf'] == 's2' || $_GET['mf'] == 's3' || $_GET['mf'] == 's5') {
@@ -5125,7 +5095,7 @@ FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON (`im`.`id` = `iu`.`
)
);
if (isset($itm['id']) && ($s == 1 || $s == 2 || $s == 3 || $s == 5)) {
- $po = $this->lookStats($itm['data']);
+ $po = ConversionHelper::dataStringToArray($itm['data']);
if (isset($po['free_stats']) && $po['free_stats'] > 0) {
$s = (int)$s;
if ($s >= 1 || $s <= 3 || $s == 5) {
@@ -5151,7 +5121,7 @@ FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON (`im`.`id` = `iu`.`
)
);
if (isset($itm['id'])) {
- $po = $this->lookStats($itm['data']);
+ $po = ConversionHelper::dataStringToArray($itm['data']);
if ($itm['so'] > 0) {
$s = (int)$s;
if ($tp == 1) {
@@ -5303,14 +5273,14 @@ FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON (`im`.`id` = `iu`.`
return;
}
$s = (int)$s;
- $po = $this->lookStats($itm['data']);
+ $po = ConversionHelper::dataStringToArray($itm['data']);
if (isset($po['sudba']) && $po['sudba'] == '0') {
return;
}
if (isset($po['sm_skill']) && $s > 100) {
$mx2 = 1;
$mx1 = 0;
- $mx3 = $this->lookStats($this->info['stats']);
+ $mx3 = ConversionHelper::dataStringToArray($this->info['stats']);
while ($mx2 <= 7) {
$mx1 += ($mx3['a' . $mx2] + $mx3['mg' . $mx2]) - ($po['add_a' . $mx2] + $po['add_mg' . $mx2]);
$mx2++;
@@ -5330,7 +5300,7 @@ FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON (`im`.`id` = `iu`.`
} elseif (isset($po['sm_abil']) && $s < 11 && $s > 0) {
$mx2 = 1;
$mx1 = 0;
- $mx3 = $this->lookStats($this->info['stats']);
+ $mx3 = ConversionHelper::dataStringToArray($this->info['stats']);
while ($mx2 <= 7) {
$mx1 += $mx3['s' . $mx2] - $po['add_s' . $mx2];
$mx2++;
@@ -5407,7 +5377,7 @@ FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON (`im`.`id` = `iu`.`
while ($pl = mysql_fetch_array($sp)) {
$vibor .= '
-
|
-- + |
+
|
+ + |
getStats($u->info['id'],1); $st2 = $st[1]; $st = $st[0]; $rgd = $u->regen($u->info['id'],$st,1); $us = $u->getInfoPers($u->info['id'],1,$st); if($us!=false){ echo $us[0]; }else{ echo 'information is lost.'; } ?>
-
-
- - - - |
+
- - - + |
+ + + - |