diff --git a/functions.php b/functions.php
index 257e75c..ffcf59a 100644
--- a/functions.php
+++ b/functions.php
@@ -1204,7 +1204,7 @@ function showinf_pers($id, $pas = 0, $battle = 0, $me = 0, $main = false) //FIXM
} elseif ($user['klan']) {
$clann = db::c()->query('SELECT `name`, `glava` FROM `clans` WHERE `id` = ?i', $user['klan'])->fetch_assoc();
if ($clann['glava'] == $user['id']) $r .= "👑 ";
- $r .= $clann['name'] ." - ". $user['status'] . "
";
+ $r .= $clann['name'] . " - " . $user['status'] . "
";
}
if ($user['admin'] == 1) $r .= "Администратор
";
@@ -1848,7 +1848,7 @@ function showitem($row, $type, $returned = false, $infOnly = false)
if (!empty($magic['name']) AND $row['type'] != 50)
$returnHTML .= "
Наложены заклятия:" . $magic['name'];
if (!empty($row['text']))
- $returnHTML .= "
" .$row['text']. "";
+ $returnHTML .= "
" . $row['text'] . "";
if (!empty($incmagic['max']))
$returnHTML .= "
Встроено заклятие " . $incmagic['cur'] . " шт.";
@@ -2867,15 +2867,40 @@ function addToDelo($message, $user_id = 0, $type = 1)
* Апаем стат или мастерство на единицу.
* @param $name - техническое имя параметра, как в базе.
* @param null $param - выбор что повышать.
- * @return bool
+ * @return void
* @throws \Krugozor\Database\Mysql\Exception
*/
function addOnePoint($name, $param = null)
{
- $allowed_stats = ['sila','lovk','inta','vinos','intel','mudra'];
- $allowed_mastery = ['noj','mec','dubina','topor','mfire','mwater','mair','mearth','mlight','mgray','mdark'];
- if ($param == 'stat' AND in_array($name, $allowed_stats) OR $param == 'mastery' AND in_array($name, $allowed_mastery)) {
+ $allowed_stats = ['sila', 'lovk', 'inta', 'vinos', 'intel', 'mudra'];
+ $allowed_mastery = ['noj', 'mec', 'dubina', 'topor', 'mfire', 'mwater', 'mair', 'mearth', 'mlight', 'mgray', 'mdark'];
+ $naming = [
+ 'sila' => 'Сила',
+ 'lovk' => 'Ловкость',
+ 'inta' => 'Интуиция',
+ 'vinos' => 'Выносливость',
+ 'intel' => 'Интеллект',
+ 'mudra' => 'Мудрость',
+ 'noj' => 'Владение кинжалами',
+ 'mec' => 'Владение мечами',
+ 'dubina' => 'Владение дубинами',
+ 'topor' => 'Владение топорами',
+ 'mfire' => 'Магия огня',
+ 'mwater' => 'Магия воды',
+ 'mair' => 'Магия воздуха',
+ 'mearth' => 'Магия земли',
+ 'mlight' => 'Магия света',
+ 'mgray' => 'Магия серости',
+ 'mdark' => 'Магия тьмы'
+ ];
+ if ($param == 'stat' AND in_array($name, $allowed_stats)) {
db::c()->query('UPDATE `users` SET ?f = ?f + 1, `stats` = `stats` - 1 WHERE `id` = ?i', $name, $name, $_SESSION['uid']);
- return true;
- } else return false;
+ echo "Параметр {$naming[$name]} увеличен на 1 ед.";
+ } elseif ($param == 'mastery' AND in_array($name, $allowed_mastery)) {
+ $mastery_level = db::c()->query('SELECT ?f FROM `users` WHERE `id` = ?i', $name, $_SESSION['uid'])->fetch_assoc();
+ if ($mastery_level[$name] < 10) {
+ db::c()->query('UPDATE `users` SET ?f = ?f + 1, `stats` = `stats` - 1 WHERE `id` = ?i', $name, $name, $_SESSION['uid']);
+ echo "Параметр {$naming[$name]} увеличен на 1 ед.";
+ } else echo "Ошибка: параметр достиг максимального значения!";
+ } else return null;
}
\ No newline at end of file
diff --git a/main.php b/main.php
index f87706d..cf17b5f 100644
--- a/main.php
+++ b/main.php
@@ -1537,66 +1537,16 @@ if (input::get('setch')) {
header("Cache-Control: no-cache");
if (input::get('edit')) {
- function ups($type, $stat, $statName)
- {
- global $user;
- if ($user[$type] > 0 && $user['sid'] == $_GET['s4i']) {
- if ($user[$type] >= (int)$_POST['stat'] && (int)$_POST['stat'] > 0) {
- $user[$stat] += (int)$_POST['stat'];
- $user[$type] -= (int)$_POST['stat'];
- db::c()->query('UPDATE `users` SET ?f = ?i, ?f = ?i WHERE `id` = ?i', $stat, $user[$stat], $type, $user[$type], $user['id']);
- err('Параметр ' . $statName . ' увеличен на ' . (int)$_POST['stat'] . ' ед.');
- } else err('Ошибка в количестве.');
- }
- }
-
if (input::get('ups')) {
switch (input::get('ups')) {
case 11 :
- #ups('stats', 'sila', 'Сила');
-// if ($user['stats'] > 0 && $user['sid'] == $_GET['s4i']) {
-// if ($user['stats'] >= (int)$_POST['stat'] && ((int)$_POST['stat'] > 0)) {
-// $user['sila'] += (int)$_POST['stat'];
-// $user['stats'] -= (int)$_POST['stat'];
-// mysql_query("UPDATE `users` SET `sila` = '" . $user['sila'] . "', `stats` = '" . $user['stats'] . "' WHERE `id` = '{$user['id']}' LIMIT 1");
-// echo "Параметр Сила увеличен на " . (int)$_POST['stat'] . " ед.";
-// } elseif ((int)$_POST['stat'] <= 0) {
-// echo "Не верное количество";
-// } else {
-// echo "Недостаточно статов";
-// }
-// }
- if (addOnePoint('sila','stat')) err('Параметр Сила увеличен');
+ addOnePoint('sila','stat');
break;
case 12 :
- ups('stats', 'lovk', 'Ловкость');
-// if ($user['stats'] > 0 && $user['sid'] == $_GET['s4i']) {
-// if ($user['stats'] >= (int)$_POST['stat'] && ((int)$_POST['stat'] > 0)) {
-// $user['lovk'] += (int)$_POST['stat'];
-// $user['stats'] -= (int)$_POST['stat'];
-// mysql_query("UPDATE `users` SET `lovk` = '" . $user['lovk'] . "', `stats` = '" . $user['stats'] . "' WHERE `id` = '{$user['id']}' LIMIT 1");
-// echo "Параметр Ловкость увеличен на " . (int)$_POST['stat'] . " ед.";
-// } elseif ((int)$_POST['stat'] <= 0) {
-// echo "Не верное количество";
-// } else {
-// echo "Недостаточно статов";
-// }
-// }
+ addOnePoint('lovk','stat');
break;
-
case 13 :
- if ($user['stats'] > 0 && $user['sid'] == $_GET['s4i']) {
- if ($user['stats'] >= (int)$_POST['stat'] && ((int)$_POST['stat'] > 0)) {
- $user['inta'] += (int)$_POST['stat'];
- $user['stats'] -= (int)$_POST['stat'];
- mysql_query("UPDATE `users` SET `inta` = '" . $user['inta'] . "', `stats` = '" . $user['stats'] . "' WHERE `id` = '{$user['id']}' LIMIT 1");
- echo "Параметр Интуиция увеличен на " . (int)$_POST['stat'] . " ед.";
- } elseif ((int)$_POST['stat'] <= 0) {
- echo "Не верное количество";
- } else {
- echo "Недостаточно статов";
- }
- }
+ addOnePoint('inta','stat');
break;
case 14 :