Новый класс UserStats для параметров персонажа. Перенос некоторых проверок в геттеры. Удаление неиспользуемых сеттеров.
This commit is contained in:
@@ -6,6 +6,7 @@ use Battles\InventoryItem;
|
||||
use Battles\Template;
|
||||
use Battles\Travel;
|
||||
use Battles\UserInfo;
|
||||
use Battles\UserStats;
|
||||
|
||||
ob_start("ob_gzhandler");
|
||||
session_start();
|
||||
@@ -35,6 +36,7 @@ $setShadow = $_POST['setshadow'] ?? null;
|
||||
$edit = $_GET['edit'] ?? null;
|
||||
// Подготавливаем отображение инфы и предметов.
|
||||
$userInfo = new UserInfo($user->getId());
|
||||
$userStats = new UserStats($user->getId());
|
||||
$getItemsBonuses = new DressedItems($_SESSION['uid']);
|
||||
$data = \Battles\Database\DBPDO::INIT()->ofetchAll('SELECT * FROM inventory WHERE owner_id = ? AND dressed_slot = 0 AND on_sale = 0', $user->getId());
|
||||
$iteminfo = [];
|
||||
@@ -173,7 +175,7 @@ if ($goto) {
|
||||
$eff = db::c()->query('SELECT 1 FROM `users_effects` WHERE `owner_id` = ?i AND (`type` = 14 OR `type` = 13)', $user->getId());
|
||||
//(масса: <?= $getItemsBonuses->getItemsWeight() . '/' . $user->strength * 4
|
||||
|
||||
if ($d['sum_weight'] > $user->getStrength() * 4 && $goto) {
|
||||
if ($d['sum_weight'] > $userStats->getStrength() * 4 && $goto) {
|
||||
err('У вас переполнен рюкзак, вы не можете передвигаться...');
|
||||
$imove = false;
|
||||
}
|
||||
@@ -199,60 +201,11 @@ if (isset($_GET['use'])) {
|
||||
usemagic($_GET['use'], $_POST['target']);
|
||||
}
|
||||
|
||||
function setShadow($image)
|
||||
{
|
||||
global $user;
|
||||
$shadows = [
|
||||
'm01', 'm02', 'm03', 'm04', 'm05', 'm06', 'm07', 'm08', 'm09', 'm10',
|
||||
'f01', 'f02', 'f03', 'f04', 'f05', 'f06', 'f07', 'f08', 'f09', 'f10',
|
||||
'person',
|
||||
];
|
||||
if (in_array($image, $shadows)) {
|
||||
$i = $image . '.png';
|
||||
db::c()->query('UPDATE `users` SET `shadow` = "?s" WHERE `id` = ?i', $i, $user->getId());
|
||||
} else {
|
||||
err('Ошибка!');
|
||||
}
|
||||
if ($obraz) {
|
||||
$user->setShadow($obraz);
|
||||
$user->saveShadow();
|
||||
}
|
||||
|
||||
if ($obraz && ($user->getShadow() == 'g0.gif' || $user->getShadow() == 'man0.gif')) {
|
||||
setShadow($obraz);
|
||||
}
|
||||
|
||||
if ($del == 1 && $effectId > 0) {
|
||||
$pl = db::c()->query('SELECT type FROM users_effects WHERE owner_id = ?i AND effect_id = ?i', $user->getId(), $effectId)->fetch_assoc();
|
||||
if (isset($pl['type'])) {
|
||||
echo del_efs($effectId, $pl['type']);
|
||||
} else {
|
||||
echo "<span class='error'>Эффект не найден!</span>";
|
||||
}
|
||||
}
|
||||
|
||||
if ($brons && $ids) {
|
||||
try {
|
||||
$cur = db::c()->query('SELECT free_bron, bron1, bron2, bron3, bron4 FROM inventory WHERE owner = ?i AND id = ?i', $user->getId(), $ids)->fetch_assoc();
|
||||
} catch (\Krugozor\Database\Mysql\Exception $e) {
|
||||
echo "<div style='background-color: #ffaaaa;'>Ошибка: " . $e->getMessage() . "<br> В файле: " . $e->getFile() . " (" . $e->getLine() . ")</div>";
|
||||
}
|
||||
if ($cur['free_bron'] > 0 && $cur[$brons] > 0) {
|
||||
db::c()->query('UPDATE inventory SET free_bron = free_bron - 1, ?f = ?f +1 WHERE owner_id = ?i AND item_id = ?i', $brons, $brons, $user->getId(), $ids);
|
||||
echo "<span class='success'>Параметр брони увеличен!</span>";
|
||||
}
|
||||
}
|
||||
if ($stats && $ids) {
|
||||
$cur = db::c()->query('SELECT free_stat, gsila, glovk, ginta, gintel FROM inventory WHERE owner_id = ?i AND item_id = ?i', $user->getId(), $ids);
|
||||
if ($cur['free_stat'] > 0 && $cur[$stats] > 0) {
|
||||
db::c()->query('UPDATE inventory SET free_stat = free_stat - 1, ?f = ?f +1 WHERE owner_id = ?i AND item_id = ?i', $stats, $stats, $user->getId(), $ids);
|
||||
echo "<span class='success'>Параметр увеличен!</span>";
|
||||
}
|
||||
}
|
||||
if ($mfs && $ids) {
|
||||
$cur = db::c()->query('SELECT free_mf, mfkrit, mfuvorot, mfakrit, mfauvorot FROM inventory WHERE owner_id = ?i AND item_id = ?i', $user->getId(), $ids);
|
||||
if (isset($cur['id']) && $cur['free_mf'] > 0 && $cur[$mfs] > 0) {
|
||||
db::c()->query('UPDATE inventory SET free_mf = free_mf - 1, ?f = ?f +1 WHERE owner_id = ?i AND item_id = ?i', $mfs, $mfs, $user->getId(), $ids);
|
||||
echo "<span class='success'>Параметр увеличен!</span>";
|
||||
}
|
||||
}
|
||||
if ($setShadow) {
|
||||
Template::header('Образ персонажа');
|
||||
?>
|
||||
@@ -388,39 +341,39 @@ Template::header('Игра');
|
||||
<!--Параметры-->
|
||||
<div>
|
||||
<div class="container">
|
||||
Сила: <?= ($user->getFreeStatPoints() ? $user->getStat('strength', 1) . '(' . strval($user->getStrength() + $getItemsBonuses->getStrengthBonus()) . ')' : $user->getStrength() + $getItemsBonuses->getStrengthBonus()) ?>
|
||||
Сила: <?= ($userStats->getFreeStatPoints() ? $userStats->getStat('strength', 1) . '(' . strval($userStats->getStrength() + $getItemsBonuses->getStrengthBonus()) . ')' : $userStats->getStrength() + $getItemsBonuses->getStrengthBonus()) ?>
|
||||
<br>
|
||||
Ловкость: <?= ($user->getFreeStatPoints() ? $user->getStat('dexterity', 1) . '(' . strval($user->getDexterity() + $getItemsBonuses->getDexterityBonus()) . ')' : $user->getDexterity() + $getItemsBonuses->getDexterityBonus()) ?>
|
||||
Ловкость: <?= ($userStats->getFreeStatPoints() ? $userStats->getStat('dexterity', 1) . '(' . strval($userStats->getDexterity() + $getItemsBonuses->getDexterityBonus()) . ')' : $userStats->getDexterity() + $getItemsBonuses->getDexterityBonus()) ?>
|
||||
<br>
|
||||
Интуиция: <?= ($user->getFreeStatPoints() ? $user->getStat('intuition', 1) . '(' . strval($user->getIntuition() + $getItemsBonuses->getIntuitionBonus()) . ')' : $user->getIntuition() + $getItemsBonuses->getIntuitionBonus()) ?>
|
||||
Интуиция: <?= ($userStats->getFreeStatPoints() ? $userStats->getStat('intuition', 1) . '(' . strval($userStats->getIntuition() + $getItemsBonuses->getIntuitionBonus()) . ')' : $userStats->getIntuition() + $getItemsBonuses->getIntuitionBonus()) ?>
|
||||
<br>
|
||||
Выносливость: <?= ($user->getFreeStatPoints() ? $user->getStat('endurance', 1) . '(' . strval($user->getEndurance() + $getItemsBonuses->getEnduranceBonus()) . ')' : $user->getEndurance() + $getItemsBonuses->getEnduranceBonus()) ?>
|
||||
Выносливость: <?= ($userStats->getFreeStatPoints() ? $userStats->getStat('endurance', 1) . '(' . strval($userStats->getEndurance() + $getItemsBonuses->getEnduranceBonus()) . ')' : $userStats->getEndurance() + $getItemsBonuses->getEnduranceBonus()) ?>
|
||||
<br>
|
||||
Интеллект: <?= ($user->getFreeStatPoints() ? $user->getStat('intelligence', 1) . '(' . strval($user->getIntelligence() + $getItemsBonuses->getIntelliganceBonus()) . ')' : $user->getIntelligence() + $getItemsBonuses->getIntelliganceBonus()) ?>
|
||||
Интеллект: <?= ($userStats->getFreeStatPoints() ? $userStats->getStat('intelligence', 1) . '(' . strval($userStats->getIntelligence() + $getItemsBonuses->getIntelliganceBonus()) . ')' : $userStats->getIntelligence() + $getItemsBonuses->getIntelliganceBonus()) ?>
|
||||
<br>
|
||||
Мудрость: <?= ($user->getFreeStatPoints() ? $user->getStat('wisdom', 1) . '(' . strval($user->getWisdom() + $getItemsBonuses->getWisdomBonus()) . ')' : $user->getWisdom() + $getItemsBonuses->getWisdomBonus()) ?>
|
||||
Мудрость: <?= ($userStats->getFreeStatPoints() ? $userStats->getStat('wisdom', 1) . '(' . strval($userStats->getWisdom() + $getItemsBonuses->getWisdomBonus()) . ')' : $userStats->getWisdom() + $getItemsBonuses->getWisdomBonus()) ?>
|
||||
<br>
|
||||
<?php if ($user->getFreeStatPoints()): ?>
|
||||
<?php if ($userStats->getFreeStatPoints()): ?>
|
||||
<small style="color: darkgreen;">Возможных
|
||||
увеличений: <?= $user->getFreeStatPoints() ?></small><br>
|
||||
увеличений: <?= $userStats->getFreeStatPoints() ?></small><br>
|
||||
<?php endif; ?>
|
||||
<br>
|
||||
Здоровье: <?= $user->getHealth() ?><br>
|
||||
Пыль: <?= $user->getMana() ?><br>
|
||||
Здоровье: <?= $userStats->getHealth() ?><br>
|
||||
Пыль: <?= $userStats->getMana() ?><br>
|
||||
Уворот: <?= $getItemsBonuses->getEvasionBonus() ?><br>
|
||||
Точность: <?= $getItemsBonuses->getAccuracyBonus() ?><br>
|
||||
Шанс крита: <?= $getItemsBonuses->getCriticalsBonus() ?><br>
|
||||
Урон: <?= $user->getMinDamage() + $getItemsBonuses->getMinPhysDamage() ?>
|
||||
- <?= $user->getMaxDamage() + $getItemsBonuses->getMaxPhysDamage() ?> <br>
|
||||
Урон: <?= $userStats->getMinDamage() + $getItemsBonuses->getMinPhysDamage() ?>
|
||||
- <?= $userStats->getMaxDamage() + $getItemsBonuses->getMaxPhysDamage() ?> <br>
|
||||
<br>
|
||||
Защита от огня: ?? <br>
|
||||
Защита от воды: ?? <br>
|
||||
Защита от вохдуха: ?? <br>
|
||||
Защита от земли: ?? <br>
|
||||
Защита от яда: ?? <br>
|
||||
Броня головы: <?= $user->getHeadArmor() ?> <br>
|
||||
Броня корпуса: <?= $user->getChestArmor() ?> <br>
|
||||
Броня ног: <?= $user->getLegArmor() ?> <br>
|
||||
Броня головы: <?= $userStats->getHeadArmor() ?> <br>
|
||||
Броня корпуса: <?= $userStats->getChestArmor() ?> <br>
|
||||
Броня ног: <?= $userStats->getLegArmor() ?> <br>
|
||||
</div>
|
||||
</div>
|
||||
</td>
|
||||
@@ -445,7 +398,7 @@ Template::header('Игра');
|
||||
<div> <!--рюкзак-->
|
||||
<table BORDER=0 WIDTH=100% CELLSPACING="1" CELLPADDING="2" BGCOLOR="#A5A5A5">
|
||||
<caption>Рюкзак
|
||||
(масса: <?= '?? /' . $user->getStrength() * 4 ?>)
|
||||
(масса: <?= '?? /' . $userStats->getStrength() * 4 ?>)
|
||||
</caption>
|
||||
<?php
|
||||
foreach ($iteminfo as $ii) {
|
||||
|
||||
Reference in New Issue
Block a user