Функция повышения статов и её тест. Отладка 3.
This commit is contained in:
parent
786efe2412
commit
957c9c03cd
@ -1204,7 +1204,7 @@ function showinf_pers($id, $pas = 0, $battle = 0, $me = 0, $main = false) //FIXM
|
|||||||
} elseif ($user['klan']) {
|
} elseif ($user['klan']) {
|
||||||
$clann = db::c()->query('SELECT `name`, `glava` FROM `clans` WHERE `id` = ?i', $user['klan'])->fetch_assoc();
|
$clann = db::c()->query('SELECT `name`, `glava` FROM `clans` WHERE `id` = ?i', $user['klan'])->fetch_assoc();
|
||||||
if ($clann['glava'] == $user['id']) $r .= "<sup>👑</sup> ";
|
if ($clann['glava'] == $user['id']) $r .= "<sup>👑</sup> ";
|
||||||
$r .= $clann['name'] ." - ". $user['status'] . "<br>";
|
$r .= $clann['name'] . " - " . $user['status'] . "<br>";
|
||||||
}
|
}
|
||||||
if ($user['admin'] == 1) $r .= "<b>Администратор</b><br>";
|
if ($user['admin'] == 1) $r .= "<b>Администратор</b><br>";
|
||||||
|
|
||||||
@ -1848,7 +1848,7 @@ function showitem($row, $type, $returned = false, $infOnly = false)
|
|||||||
if (!empty($magic['name']) AND $row['type'] != 50)
|
if (!empty($magic['name']) AND $row['type'] != 50)
|
||||||
$returnHTML .= "<br><span style='color: maroon;'>Наложены заклятия:</span>" . $magic['name'];
|
$returnHTML .= "<br><span style='color: maroon;'>Наложены заклятия:</span>" . $magic['name'];
|
||||||
if (!empty($row['text']))
|
if (!empty($row['text']))
|
||||||
$returnHTML .= "<br><em style='font-size:11px; color:chocolate;'>" .$row['text']. "</em>";
|
$returnHTML .= "<br><em style='font-size:11px; color:chocolate;'>" . $row['text'] . "</em>";
|
||||||
if (!empty($incmagic['max']))
|
if (!empty($incmagic['max']))
|
||||||
$returnHTML .= "<br>Встроено заклятие <img src=i/magic" . $incmagic['img'] . "> " . $incmagic['cur'] . " шт.";
|
$returnHTML .= "<br>Встроено заклятие <img src=i/magic" . $incmagic['img'] . "> " . $incmagic['cur'] . " шт.";
|
||||||
|
|
||||||
@ -2867,15 +2867,40 @@ function addToDelo($message, $user_id = 0, $type = 1)
|
|||||||
* Апаем стат или мастерство на единицу.
|
* Апаем стат или мастерство на единицу.
|
||||||
* @param $name - техническое имя параметра, как в базе.
|
* @param $name - техническое имя параметра, как в базе.
|
||||||
* @param null $param - выбор что повышать.
|
* @param null $param - выбор что повышать.
|
||||||
* @return bool
|
* @return void
|
||||||
* @throws \Krugozor\Database\Mysql\Exception
|
* @throws \Krugozor\Database\Mysql\Exception
|
||||||
*/
|
*/
|
||||||
function addOnePoint($name, $param = null)
|
function addOnePoint($name, $param = null)
|
||||||
{
|
{
|
||||||
$allowed_stats = ['sila','lovk','inta','vinos','intel','mudra'];
|
$allowed_stats = ['sila', 'lovk', 'inta', 'vinos', 'intel', 'mudra'];
|
||||||
$allowed_mastery = ['noj','mec','dubina','topor','mfire','mwater','mair','mearth','mlight','mgray','mdark'];
|
$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)) {
|
$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']);
|
db::c()->query('UPDATE `users` SET ?f = ?f + 1, `stats` = `stats` - 1 WHERE `id` = ?i', $name, $name, $_SESSION['uid']);
|
||||||
return true;
|
echo "<span style='color:#00ffaa'>Параметр {$naming[$name]} увеличен на 1 ед.</span>";
|
||||||
} else return false;
|
} 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 "<span style='color:#00ffaa'>Параметр {$naming[$name]} увеличен на 1 ед.</span>";
|
||||||
|
} else echo "<span style='color: maroon;'>Ошибка: параметр достиг максимального значения!</span>";
|
||||||
|
} else return null;
|
||||||
}
|
}
|
56
main.php
56
main.php
@ -1537,66 +1537,16 @@ if (input::get('setch')) {
|
|||||||
header("Cache-Control: no-cache");
|
header("Cache-Control: no-cache");
|
||||||
if (input::get('edit')) {
|
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')) {
|
if (input::get('ups')) {
|
||||||
switch (input::get('ups')) {
|
switch (input::get('ups')) {
|
||||||
case 11 :
|
case 11 :
|
||||||
#ups('stats', 'sila', 'Сила');
|
addOnePoint('sila','stat');
|
||||||
// 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 "<b style=\"color: Red;\">Параметр Сила увеличен на " . (int)$_POST['stat'] . " ед.</b>";
|
|
||||||
// } elseif ((int)$_POST['stat'] <= 0) {
|
|
||||||
// echo "<b style=\"color: Red;\">Не верное количество</b>";
|
|
||||||
// } else {
|
|
||||||
// echo "<b style=\"color: Red;\">Недостаточно статов</b>";
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
if (addOnePoint('sila','stat')) err('Параметр Сила увеличен');
|
|
||||||
break;
|
break;
|
||||||
case 12 :
|
case 12 :
|
||||||
ups('stats', 'lovk', 'Ловкость');
|
addOnePoint('lovk','stat');
|
||||||
// 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 "<b style=\"color: Red;\">Параметр Ловкость увеличен на " . (int)$_POST['stat'] . " ед.</b>";
|
|
||||||
// } elseif ((int)$_POST['stat'] <= 0) {
|
|
||||||
// echo "<b style=\"color: Red;\">Не верное количество</b>";
|
|
||||||
// } else {
|
|
||||||
// echo "<b style=\"color: Red;\">Недостаточно статов</b>";
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 13 :
|
case 13 :
|
||||||
if ($user['stats'] > 0 && $user['sid'] == $_GET['s4i']) {
|
addOnePoint('inta','stat');
|
||||||
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 "<b style=\"color: Red;\">Параметр Интуиция увеличен на " . (int)$_POST['stat'] . " ед.</b>";
|
|
||||||
} elseif ((int)$_POST['stat'] <= 0) {
|
|
||||||
echo "<b style=\"color: Red;\">Не верное количество</b>";
|
|
||||||
} else {
|
|
||||||
echo "<b style=\"color: Red;\">Недостаточно статов</b>";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 14 :
|
case 14 :
|
||||||
|
Loading…
Reference in New Issue
Block a user