items['add'] as $stat) {
+
+ foreach (array_keys($bonusstatnames) as $stat) {
if (empty($st[$stat]) || empty($u->is[$stat])) {
continue;
}
if ($st[$stat] > 0) {
$st[$stat] = '+' . $st[$stat];
}
- if (in_array($u->is[$stat], [
- 'Защита от урона',
- 'Сила',
- 'Мастерство владения оружием',
- 'Мастерство владения магией огня',
- 'Уровень жизни (HP)',
- 'Мф. критического удара (%)',
- 'Мф. мощности магии огня',
- 'Регенерация здоровья (%)',
- 'Мф. мощности урона',
- ])) {
- echo '
';
- }
- echo '• ' . $u->is[$stat] . ': ' . $st[$stat] . '
';
+
+ echo '• ' . $bonusstatnames[$stat] . ': ' . $st[$stat] . '
';
}
?>
diff --git a/items_info.php b/items_info.php
index 9d0292f4..3ebc3f8c 100644
--- a/items_info.php
+++ b/items_info.php
@@ -122,7 +122,131 @@ $items = [
'sv' => ['pza', 'pza1', 'pza2', 'pza3', 'pza4', 'notravma', 'min_zonb', 'min_zona', 'nokrit', 'pog', 'min_use_mp', 'za1proc', 'za2proc', 'za3proc', 'za4proc', 'zaproc', 'zmproc', 'zm1proc', 'zm2proc', 'zm3proc', 'zm4proc', 'shopSale', 's1', 's2', 's3', 's4', 's5', 's6', 's7', 's8', 's9', 's10', 'aall', 'a1', 'a2', 'a3', 'a4', 'a5', 'a6', 'a7', 'm2all', 'mall', 'mg1', 'mg2', 'mg3', 'mg4', 'mg5', 'mg6', 'mg7', 'hpAll', 'mpAll', 'm1', 'm2', 'm3', 'm4', 'm5', 'm6', 'm7', 'm8', 'm9', 'm14', 'm15', 'm16', 'm17', 'm18', 'm19', 'm20', 'm21', 'pa1', 'pa2', 'pa3', 'pa4', 'pm1', 'pm2', 'pm3', 'pm4', 'pm5', 'pm6', 'pm7', 'min_use_mp', 'za', 'za1', 'za2', 'za3', 'za4', 'zma', 'zm', 'zm1', 'zm2', 'zm3', 'zm4', 'zm5', 'zm6', 'zm7', 'mib1', 'mab1', 'mib2', 'mab2', 'mib3', 'mab3', 'mib4', 'mab4', 'speedhp', 'speedmp', 'm10', 'm11', 'zona', 'zonb', 'maxves', 'minAtack', 'maxAtack', 'free_stats', 'tya1', 'tya2', 'tya3', 'tya4', 'tym1', 'tym2', 'tym3', 'tym4', 'tym5', 'tym6', 'tym7'],
];
-$is = ['oza' => 'Защита от урона', 'oza1' => 'Защита от колющего урона', 'oza2' => 'Защита от рубящего урона', 'oza3' => 'Защита от дробящего урона', 'oza4' => 'Защита от режущего урона', 'hpAll' => 'Уровень жизни (HP)', 'mpAll' => 'Уровень маны', 'sex' => 'Пол', 'lvl' => 'Уровень', 's1' => 'Сила', 's2' => 'Ловкость', 's3' => 'Интуиция', 's4' => 'Выносливость', 's5' => 'Интелект', 's6' => 'Мудрость', 's7' => 'Духовность', 's8' => 'Воля', 's9' => 'Свобода духа', 's10' => 'Божественность', 'm1' => 'Мф. критического удара (%)', 'm2' => 'Мф. против критического удара (%)', 'm3' => 'Мф. мощности критического удара (%)', 'm4' => 'Мф. увертывания (%)', 'm5' => 'Мф. против увертывания (%)', 'm6' => 'Мф. контрудара (%)', 'm7' => 'Мф. парирования (%)', 'm8' => 'Мф. блока щитом (%)', 'm9' => 'Мф. пробоя брони (%)', 'm14' => 'Мф. абс. критического удара (%)', 'm15' => 'Мф. абс. увертывания (%)', 'm16' => 'Мф. абс. парирования (%)', 'm17' => 'Мф. абс. контрудара (%)', 'm18' => 'Мф. абс. блока щитом (%)', 'm19' => 'Мф. абс. магический промах (%)', 'm20' => 'Мф. удача (%)', 'm21' => 'Мф. абс. попадания (%)', 'a1' => 'Мастерство владения ножами, кинжалами', 'a2' => 'Мастерство владения топорами, секирами', 'a3' => 'Мастерство владения дубинами, молотами', 'a4' => 'Мастерство владения мечами', 'a5' => 'Мастерство владения магическими посохами', 'a6' => 'Мастерство владения луками', 'a7' => 'Мастерство владения арбалетами', 'aall' => 'Мастерство владения оружием', 'mall' => 'Мастерство владения магией стихий', 'm2all' => 'Мастерство владения магией', 'mg1' => 'Мастерство владения магией огня', 'mg2' => 'Мастерство владения магией воздуха', 'mg3' => 'Мастерство владения магией воды', 'mg4' => 'Мастерство владения магией земли', 'mg5' => 'Мастерство владения магией Света', 'mg6' => 'Мастерство владения магией Тьмы', 'mg7' => 'Мастерство владения серой магией', 'tj' => 'Тяжелая броня', 'lh' => 'Легкая броня', 'minAtack' => 'Минимальный урон', 'maxAtack' => 'Максимальный урон', 'm10' => 'Мф. мощности урона', 'm11' => 'Мф. мощности магии стихий', 'm11a' => 'Мф. мощности магии', 'pa1' => 'Мф. мощности колющего урона', 'pa2' => 'Мф. мощности рубящего урона', 'pa3' => 'Мф. мощности дробящий урона', 'pa4' => 'Мф. мощности режущий урона', 'pm1' => 'Мф. мощности магии огня', 'pm2' => 'Мф. мощности магии воздуха', 'pm3' => 'Мф. мощности магии воды', 'pm4' => 'Мф. мощности магии земли', 'pm5' => 'Мф. мощности магии Света', 'pm6' => 'Мф. мощности магии Тьмы', 'pm7' => 'Мф. мощности серой магии', 'za' => 'Защита от урона', 'zm' => 'Защита от магии стихий', 'zma' => 'Защита от магии', 'za1' => 'Защита от колющего урона', 'za2' => 'Защита от рубящего урона', 'za3' => 'Защита от дробящий урона', 'za4' => 'Защита от режущий урона', 'zm1' => 'Защита от магии огня', 'zm2' => 'Защита от магии воздуха', 'zm3' => 'Защита от магии воды', 'zm4' => 'Защита от магии земли', 'zm5' => 'Защита от магии Света', 'zm6' => 'Защита от магии Тьмы', 'zm7' => 'Защита от серой магии', 'pza' => 'Понижение защиты от урона', 'pzm' => 'Понижение защиты от магии', 'pza1' => 'Понижение защиты от колющего урона', 'min_heal_proc' => 'Эффект лечения (%)', 'silver' => 'Премиум', 'notravma' => 'Защита от травм', 'yron_min' => 'Минимальный урон', 'yron_max' => 'Максимальный урон', 'pza2' => 'Понижение защиты от рубящего урона', 'pza3' => 'Понижение защиты от дробящего урона', 'pza4' => 'Понижение защиты от режущего урона', 'pzm1' => 'Понижение защиты от магии огня', 'pzm2' => 'Понижение защиты от магии воздуха', 'pzm3' => 'Понижение защиты от магии воды', 'pzm4' => 'Понижение защиты от магии земли', 'pzm5' => 'Понижение защиты от магии Света', 'pzm6' => 'Понижение защиты от магии Тьмы', 'pzm7' => 'Понижение защиты от серой магии', 'speedhp' => 'Регенерация здоровья (НР)', 'speedmp' => 'Регенерация маны (МР)', 'tya1' => 'Колющие атаки', 'tya2' => 'Рубящие атаки', 'tya3' => 'Дробящие атаки', 'tya4' => 'Режущие атаки', 'tym1' => 'Огненные атаки', 'tym2' => 'Электрические атаки', 'tym3' => 'Ледяные атаки', 'tym4' => 'Земляные атаки', 'tym5' => 'Атаки Света', 'tym6' => 'Атаки Тьмы', 'tym7' => 'Серые атаки', 'min_use_mp' => 'Уменьшает расход маны', 'pog' => 'Поглощение урона', 'maxves' => 'Увеличивает рюкзак', 'zona' => 'Дополнительная зона атаки', 'zaproc' => 'Блокировка физического Урона(%)', 'zmproc' => 'Блокировка магического Урона (%)', 'speed_dungeon' => 'Скорость перемещения по пещерам', 'free_stats' => 'Свободных распределений', 'antm3' => 'Мф. против мощности крит. удара'];
+$is = ['oza' => 'Защита от урона',
+ 'oza1' => 'Защита от колющего урона',
+ 'oza2' => 'Защита от рубящего урона',
+ 'oza3' => 'Защита от дробящего урона',
+ 'oza4' => 'Защита от режущего урона',
+ 'hpAll' => 'Уровень жизни (HP)',
+ 'mpAll' => 'Уровень маны',
+ 'sex' => 'Пол',
+ 'lvl' => 'Уровень',
+ 's1' => 'Сила',
+ 's2' => 'Ловкость',
+ 's3' => 'Интуиция',
+ 's4' => 'Выносливость',
+ 's5' => 'Интелект',
+ 's6' => 'Мудрость',
+ 's7' => 'Духовность',
+ 's8' => 'Воля',
+ 's9' => 'Свобода духа',
+ 's10' => 'Божественность',
+ 'm1' => 'Мф. критического удара (%)',
+ 'm2' => 'Мф. против критического удара (%)',
+ 'm3' => 'Мф. мощности критического удара (%)',
+ 'm4' => 'Мф. увертывания (%)',
+ 'm5' => 'Мф. против увертывания (%)',
+ 'm6' => 'Мф. контрудара (%)',
+ 'm7' => 'Мф. парирования (%)',
+ 'm8' => 'Мф. блока щитом (%)',
+ 'm9' => 'Мф. пробоя брони (%)',
+ 'm14' => 'Мф. абс. критического удара (%)',
+ 'm15' => 'Мф. абс. увертывания (%)',
+ 'm16' => 'Мф. абс. парирования (%)',
+ 'm17' => 'Мф. абс. контрудара (%)',
+ 'm18' => 'Мф. абс. блока щитом (%)',
+ 'm19' => 'Мф. абс. магический промах (%)',
+ 'm20' => 'Мф. удача (%)',
+ 'm21' => 'Мф. абс. попадания (%)',
+ 'a1' => 'Мастерство владения ножами, кинжалами',
+ 'a2' => 'Мастерство владения топорами, секирами',
+ 'a3' => 'Мастерство владения дубинами, молотами',
+ 'a4' => 'Мастерство владения мечами',
+ 'a5' => 'Мастерство владения магическими посохами',
+ 'a6' => 'Мастерство владения луками',
+ 'a7' => 'Мастерство владения арбалетами',
+ 'aall' => 'Мастерство владения оружием',
+ 'mall' => 'Мастерство владения магией стихий',
+ 'm2all' => 'Мастерство владения магией',
+ 'mg1' => 'Мастерство владения магией огня',
+ 'mg2' => 'Мастерство владения магией воздуха',
+ 'mg3' => 'Мастерство владения магией воды',
+ 'mg4' => 'Мастерство владения магией земли',
+ 'mg5' => 'Мастерство владения магией Света',
+ 'mg6' => 'Мастерство владения магией Тьмы',
+ 'mg7' => 'Мастерство владения серой магией',
+ 'tj' => 'Тяжелая броня',
+ 'lh' => 'Легкая броня',
+ 'minAtack' => 'Минимальный урон',
+ 'maxAtack' => 'Максимальный урон',
+ 'm10' => 'Мф. мощности урона',
+ 'm11' => 'Мф. мощности магии стихий',
+ 'm11a' => 'Мф. мощности магии',
+ 'pa1' => 'Мф. мощности колющего урона',
+ 'pa2' => 'Мф. мощности рубящего урона',
+ 'pa3' => 'Мф. мощности дробящий урона',
+ 'pa4' => 'Мф. мощности режущий урона',
+ 'pm1' => 'Мф. мощности магии огня',
+ 'pm2' => 'Мф. мощности магии воздуха',
+ 'pm3' => 'Мф. мощности магии воды',
+ 'pm4' => 'Мф. мощности магии земли',
+ 'pm5' => 'Мф. мощности магии Света',
+ 'pm6' => 'Мф. мощности магии Тьмы',
+ 'pm7' => 'Мф. мощности серой магии',
+ 'zm' => 'Защита от магии стихий',
+ 'zma' => 'Защита от магии',
+ 'za' => 'Защита от урона',
+ 'za1' => 'Защита от колющего урона',
+ 'za2' => 'Защита от рубящего урона',
+ 'za3' => 'Защита от дробящий урона',
+ 'za4' => 'Защита от режущий урона',
+ 'zm1' => 'Защита от магии огня',
+ 'zm2' => 'Защита от магии воздуха',
+ 'zm3' => 'Защита от магии воды',
+ 'zm4' => 'Защита от магии земли',
+ 'zm5' => 'Защита от магии Света',
+ 'zm6' => 'Защита от магии Тьмы',
+ 'zm7' => 'Защита от серой магии',
+ 'pza' => 'Понижение защиты от урона',
+ 'pzm' => 'Понижение защиты от магии',
+ 'pza1' => 'Понижение защиты от колющего урона',
+ 'min_heal_proc' => 'Эффект лечения (%)',
+ 'silver' => 'Премиум',
+ 'notravma' => 'Защита от травм',
+ 'yron_min' => 'Минимальный урон',
+ 'yron_max' => 'Максимальный урон',
+ 'pza2' => 'Понижение защиты от рубящего урона',
+ 'pza3' => 'Понижение защиты от дробящего урона',
+ 'pza4' => 'Понижение защиты от режущего урона',
+ 'pzm1' => 'Понижение защиты от магии огня',
+ 'pzm2' => 'Понижение защиты от магии воздуха',
+ 'pzm3' => 'Понижение защиты от магии воды',
+ 'pzm4' => 'Понижение защиты от магии земли',
+ 'pzm5' => 'Понижение защиты от магии Света',
+ 'pzm6' => 'Понижение защиты от магии Тьмы',
+ 'pzm7' => 'Понижение защиты от серой магии',
+ 'speedhp' => 'Регенерация здоровья (НР)',
+ 'speedmp' => 'Регенерация маны (МР)',
+ 'tya1' => 'Колющие атаки',
+ 'tya2' => 'Рубящие атаки',
+ 'tya3' => 'Дробящие атаки',
+ 'tya4' => 'Режущие атаки',
+ 'tym1' => 'Огненные атаки',
+ 'tym2' => 'Электрические атаки',
+ 'tym3' => 'Ледяные атаки',
+ 'tym4' => 'Земляные атаки',
+ 'tym5' => 'Атаки Света',
+ 'tym6' => 'Атаки Тьмы',
+ 'tym7' => 'Серые атаки',
+ 'min_use_mp' => 'Уменьшает расход маны',
+ 'pog' => 'Поглощение урона',
+ 'maxves' => 'Увеличивает рюкзак',
+ 'zona' => 'Дополнительная зона атаки',
+ 'zaproc' => 'Блокировка физического Урона(%)',
+ 'zmproc' => 'Блокировка магического Урона (%)',
+ 'speed_dungeon' => 'Скорость перемещения по пещерам',
+ 'free_stats' => 'Свободных распределений',
+ 'antm3' => 'Мф. против мощности крит. удара'];
if (empty($rz[$rt[$itm['type']]][0]) || !file_exists(
Config::get('img') . '/i/encicl/pict_' . $rz[$rt[$itm['type']]][0] . '.jpg'
diff --git a/js/btl_mini.js b/js/btl_mini.js
index ecb66a8e..b2c7b5f8 100644
--- a/js/btl_mini.js
+++ b/js/btl_mini.js
@@ -314,6 +314,7 @@ function sleep(time) {
}
+// Действите при выставлении хода и нажатии на Вперёд!
async function atack() {
if (top.slcbrc[3] == 1) autobattle();
diff --git a/main.php b/main.php
index a8b9500d..7dd72dd0 100644
--- a/main.php
+++ b/main.php
@@ -490,11 +490,7 @@ if (isset($_GET['security']) && !isset($u->tfer['id']) && $trololo == 1) {
) ||
(
isset($_GET['zayvka']) &&
- (
- $_GET['r'] == 6 ||
- $_GET['r'] == 7 ||
- !isset($_GET['r'])
- ) &&
+ (!isset($_GET['r']) || $_GET['r'] == 6 || $_GET['r'] == 7) &&
$u->info['battle'] > 0
) &&
!isset($u->tfer['id'])
diff --git a/modules_data/_animal.php b/modules_data/_animal.php
index 308d2474..16fc138c 100644
--- a/modules_data/_animal.php
+++ b/modules_data/_animal.php
@@ -43,7 +43,11 @@ if (!isset($an['id'])) {
if ($n == 1) {
- mysql_query('UPDATE `users_animal` SET `name` = "' . mysql_real_escape_string($nl) . '",`renameArrayKeys` = "1" WHERE `uid` = "' . $u->info['id'] . '" AND `id` = "' . $an['id'] . '" AND `delete` = "0" LIMIT 1');
+ mysql_query(
+ 'UPDATE `users_animal` SET `name` = "' . mysql_real_escape_string(
+ $nl
+ ) . '",`renameArrayKeys` = "1" WHERE `uid` = "' . $u->info['id'] . '" AND `id` = "' . $an['id'] . '" AND `delete` = "0" LIMIT 1'
+ );
$an['renameArrayKeys'] = 1;
echo '
Вы успешно переименовали питомца в "' . $nl . '"';
} else {
@@ -91,7 +95,13 @@ if (!isset($an['id'])) {
}
if (isset($_GET['obj_corm'])) {
- $corm = mysql_fetch_array(mysql_query('SELECT `iu`.*,`im`.* FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON `iu`.`item_id` = `im`.`id` WHERE `im`.`type` = "49" AND `iu`.`delete` = "0" AND `iu`.`inShop` = "0" AND `iu`.`inOdet` = "0" AND `iu`.`inTransfer` = "0" AND `iu`.`id` = "' . mysql_real_escape_string($_GET['obj_corm']) . '" LIMIT 1'));
+ $corm = mysql_fetch_array(
+ mysql_query(
+ 'SELECT `iu`.*,`im`.* FROM `items_users` AS `iu` LEFT JOIN `items_main` AS `im` ON `iu`.`item_id` = `im`.`id` WHERE `im`.`type` = "49" AND `iu`.`delete` = "0" AND `iu`.`inShop` = "0" AND `iu`.`inOdet` = "0" AND `iu`.`inTransfer` = "0" AND `iu`.`id` = "' . mysql_real_escape_string(
+ $_GET['obj_corm']
+ ) . '" LIMIT 1'
+ )
+ );
if (isset($corm['id'])) {
//кормушка зверя
$see1 = 1;
@@ -185,20 +195,21 @@ if (!isset($an['id'])) {
items['add'])) {
- if (isset($anl['add_' . $u->items['add'][$i]])) {
- if ($u->items['add'][$i] == 'mib1') {
- $ba .= '• Броня головы: +' . $anl['add_' . $u->items['add'][$i]] . '
';
- } elseif ($u->items['add'][$i] == 'mib2') {
- $ba .= '• Броня корпуса: +' . $anl['add_' . $u->items['add'][$i]] . '
';
- } elseif ($u->items['add'][$i] == 'mib3') {
- $ba .= '• Броня пояса: +' . $anl['add_' . $u->items['add'][$i]] . '
';
- } elseif ($u->items['add'][$i] == 'mib4') {
- $ba .= '• Броня ног: +' . $anl['add_' . $u->items['add'][$i]] . '
';
- } elseif ($u->items['add'][$i] == 'mab1' || $u->items['add'][$i] == 'mab2' || $u->items['add'][$i] == 'mab3' || $u->items['add'][$i] == 'mab4') {
+ $statnames = new \Model\Constant\Stat();
+ $statnames->getBonus();
+ while ($i < count($statnames->sysBonusNames)) {
+ if (isset($anl['add_' . $statnames->sysBonusNames[$i]])) {
+ if ($statnames->sysBonusNames[$i] == 'mib1') {
+ $ba .= '• Броня головы: +' . $anl['add_' . $statnames->sysBonusNames[$i]] . '
';
+ } elseif ($statnames->sysBonusNames[$i] == 'mib2') {
+ $ba .= '• Броня корпуса: +' . $anl['add_' . $statnames->sysBonusNames[$i]] . '
';
+ } elseif ($statnames->sysBonusNames[$i] == 'mib3') {
+ $ba .= '• Броня пояса: +' . $anl['add_' . $statnames->sysBonusNames[$i]] . '
';
+ } elseif ($statnames->sysBonusNames[$i] == 'mib4') {
+ $ba .= '• Броня ног: +' . $anl['add_' . $statnames->sysBonusNames[$i]] . '
';
} else {
- $ba .= '• ' . $u->is[$u->items['add'][$i]] . ': +' . $anl['add_' . $u->items['add'][$i]] . '
';
+ $ba .= '• ' . $statnames->bonusNames[$statnames->sysBonusNames[$i]] . ': +' . $anl['add_' . $statnames->sysBonusNames[$i]] . '
';
}
}
$i++;
diff --git a/modules_data/_obraz.php b/modules_data/_obraz.php
index 0122f028..f95fc7c0 100644
--- a/modules_data/_obraz.php
+++ b/modules_data/_obraz.php
@@ -1,16 +1,91 @@
- var elem = document.getElementById('se-pre-con');
- elem.parentNode.removeChild(elem);
-
- ";
+
+use Core\Config;
+use Core\Db;
+use Helper\Conversion;
+use Model\Constant\Stat;
+
if (!defined('GAME')) {
die();
}
+/** @var User $u */
+
+$shadows = Db::getRows(
+ "select * from obraz where
+ sex = ? and
+ level <= ? and
+ (login = '' or login = ?) and
+ (uid = 0 or uid = ?) and
+ (align = '0' or align = ?) and
+ (clan = 0 or clan = ?) order by level, img",
+ [$u->info['sex'], $u->info['level'], $u->info['login'], $u->info['id'], $u->info['align'], $u->info['clan']]
+);
+
+$statnames = new Stat();
+$statnames->getRequirement();
+$code = PassGen::intCode();
+$imgsrc = Config::img();
+$str2 = '';
+foreach ($shadows as $shadow) {
+ $tr = true;
+ $str = '';
+ $data = Conversion::dataStringToArray($shadow['tr']);
+
+ if ($shadow['level'] > 0) {
+ $str .= "\r• Уровень персонажа: {$shadow['level']}";
+ }
+
+ if (!empty($shadow['itm'])) {
+ $needItems = [];
+ foreach (explode(',', $shadow['itm']) as $itemId) {
+ if ($itemId < 1) {
+ continue;
+ }
+ $item = Db::getRow('select item_id as id, name from items_users left join items_main on item_id = items_main.id where item_id = ? and inodet > 0 and inshop = 0 and uid = ?', [$itemId, $u->info['id']]);
+ if (!$item['id']) {
+ $tr = false;
+ }
+ $needItems[] = "«{$item['name']}»";
+ }
+ if (!empty($needItems)) {
+ $str .= "\r• Предметы: " . implode(', ', $needItems);
+ }
+ }
+
+ foreach ($statnames->sysRequirementNames as $srn) {
+ if (!isset($data['tr_' . $srn])) {
+ continue;
+ }
+
+ $str .= "\r• $statnames->requirementNames[$srn]: " . $data['tr_' . $srn];
+
+ if ($data['tr_' . $srn] <= $u->stats[$srn]) {
+ continue;
+ }
+
+ $tr = false;
+ }
+
+ if ((!empty($shadow['tr']) || !empty($shadow['itm'])) && !$tr) {
+ continue;
+ }
+ if (!empty($str)) {
+ $str = "Требуется минимальное:$str";
+ }
+
+ $str2 .= <<
+

+
+HTML;
+}
?>
+
-