Суммирование параметров на предмете.
This commit is contained in:
parent
2d06792e24
commit
5b538838fd
@ -8,6 +8,7 @@
|
||||
class DressedItems
|
||||
{
|
||||
protected $DB;
|
||||
protected $DBSUM;
|
||||
private $dressedItem;
|
||||
|
||||
/**
|
||||
@ -15,36 +16,37 @@ class DressedItems
|
||||
*/
|
||||
public function __construct() {}
|
||||
|
||||
private function getDressedItems()
|
||||
{
|
||||
try {
|
||||
$this->DB = db::c()->query('SELECT * FROM inventory WHERE owner_id = ?i AND dressed_slot > 0', $this->userid);
|
||||
while ($row = $this->DB->fetch_assoc()) {
|
||||
$dressed_item[$row['dressed_slot']] = $row;
|
||||
$this->dressedItem[$row['dressed_slot']] = $row;
|
||||
}
|
||||
} catch (Exception $e) {
|
||||
echo '<div class="debug">getDressedItems: ' . $e . '</div>';
|
||||
}
|
||||
}
|
||||
|
||||
public function getSlots()
|
||||
{
|
||||
return $this->dressedItem;
|
||||
}
|
||||
|
||||
private function runQuery($user_id)
|
||||
private function getDressedItems($user_id)
|
||||
{
|
||||
try {
|
||||
$this->DB = db::c()->query('SELECT * FROM inventory WHERE owner_id = ?i AND dressed_slot > 0', $user_id);
|
||||
} catch (Exception $e) {
|
||||
echo '<div class="debug">getDressedItems: ' . $e . '</div>';
|
||||
echo '<div class="debug">Не прогрузилась таблица inventory (*) для класса DressedItems.</div>';
|
||||
}
|
||||
}
|
||||
public function eeee($user_id)
|
||||
|
||||
private function getBonusesFromDressedItems($user_id)
|
||||
{
|
||||
try {
|
||||
$query = <<<SQL
|
||||
SELECT SUM(add_strength) as sum_strength,
|
||||
SUM(add_dexterity)as sum_dexterity,
|
||||
SUM(add_intuition) as sum_intuition,
|
||||
SUM(add_endurance) as sum_endurance,
|
||||
SUM(add_intelligence) as sum_intelligence,
|
||||
SUM(add_wisdom) as sum_wisdom
|
||||
FROM inventory WHERE owner_id = ?i AND dressed_slot > 0'
|
||||
SQL;
|
||||
$this->DBSUM = db::c()->query($query, $user_id)->fetch_assoc();
|
||||
} catch (Exception $e) {
|
||||
echo '<div class="debug">Не прогрузилась таблица inventory (SUM) для класса DressedItems.</div>';
|
||||
}
|
||||
}
|
||||
|
||||
public function getItemsInSlots($user_id)
|
||||
{
|
||||
if (!$this->DB) {
|
||||
$this->runQuery($user_id);
|
||||
$this->getDressedItems($user_id);
|
||||
}
|
||||
while ($row = $this->DB->fetch_assoc()) {
|
||||
$dressed_item[$row['dressed_slot']] = $row;
|
||||
@ -52,4 +54,12 @@ class DressedItems
|
||||
}
|
||||
}
|
||||
|
||||
public function getBonusesAmount($user_id)
|
||||
{
|
||||
if (!$this->DBSUM) {
|
||||
$this->getBonusesFromDressedItems($user_id);
|
||||
}
|
||||
return $this->DBSUM;
|
||||
}
|
||||
|
||||
}
|
@ -56,37 +56,18 @@ class User
|
||||
private function UserInfoDoll($isBattle = 0, $isMain = 0)
|
||||
{
|
||||
//https://jsfiddle.net/ngx0yvhc
|
||||
// $dressed_items = db::c()->query('SELECT * FROM inventory WHERE owner_id = ?i AND dressed_slot > 0', $this->id);
|
||||
// while ($row = $dressed_items->fetch_assoc()) {
|
||||
// $dressed_item[$row['dressed_slot']] = $row;
|
||||
// }
|
||||
$di = new DressedItems();
|
||||
$di->eeee($this->id);
|
||||
$dressedItems = $di->getItemsInSlots($this->id);
|
||||
|
||||
// for ($i = 1; $i <= 12; $i++) {
|
||||
// echo sprintf('<div class="slot-%s">', $i);
|
||||
// if (isset($dressed_item[$i])) {
|
||||
// if (!$isBattle && $isMain) {
|
||||
// $itemString = '<a href="?edit=1&drop=%s"><img src="/i/sh/%s" class="item-wrap-normal" alt="%s" title="%s"></a>';
|
||||
// echo sprintf($itemString, $i, $dressed_item[$i]['image'], $dressed_item[$i]['name'], $dressed_item[$i]['name']);
|
||||
// } else {
|
||||
// $itemString = '<img src="/i/sh/%s" class="item-wrap-normal tip" alt="%s"><span class="tiptext"><strong>%s</strong></span>';
|
||||
// echo sprintf($itemString, $dressed_item[$i]['image'], $dressed_item[$i]['name'], $dressed_item[$i]['name']);
|
||||
// }
|
||||
// } else {
|
||||
// echo sprintf('<img src="/i/sh/noitem.png" class="item-wrap-normal" title="Пустой слот [%s]" alt="Пустой слот [%s]">', $i, $i);
|
||||
// }
|
||||
// echo sprintf('</div><!-- slot-%s -->', $i);
|
||||
// }
|
||||
for ($i = 1; $i <= 12; $i++) {
|
||||
echo sprintf('<div class="slot-%s">', $i);
|
||||
if (isset($di->eeee($this->id)[$i])) {
|
||||
if (!$isBattle && $isMain) {
|
||||
$itemString = '<a href="?edit=1&drop=%s"><img src="/i/sh/%s" class="item-wrap-normal" alt="%s" title="%s"></a>';
|
||||
echo sprintf($itemString, $i, $di->eeee($this->id)[$i]['image'], $di->eeee($this->id)[$i]['name'], $di->eeee($this->id)[$i]['name']);
|
||||
echo sprintf($itemString, $i, $dressedItems[$i]['image'], $dressedItems[$i]['name'], $dressedItems[$i]['name']);
|
||||
} else {
|
||||
$itemString = '<img src="/i/sh/%s" class="item-wrap-normal tip" alt="%s"><span class="tiptext"><strong>%s</strong></span>';
|
||||
echo sprintf($itemString, $di->eeee($this->id)[$i]['image'], $di->eeee($this->id)[$i]['name'], $di->eeee($this->id)[$i]['name']);
|
||||
echo sprintf($itemString, $dressedItems[$i]['image'], $dressedItems[$i]['name'], $dressedItems[$i]['name']);
|
||||
}
|
||||
} else {
|
||||
echo sprintf('<img src="/i/sh/noitem.png" class="item-wrap-normal" title="Пустой слот [%s]" alt="Пустой слот [%s]">', $i, $i);
|
||||
|
Loading…
Reference in New Issue
Block a user